• v2.0.7 fe2e90eb09

    DinoX v2.0.7
    All checks were successful
    Build / Validate Manual Selection (push) Has been skipped
    Build / Mirror AppImage Runtimes (push) Has been skipped
    Build / Release Static Preflight (push) Successful in 48s
    Build / Core Build & Test (push) Successful in 19m54s
    Build / Build AppImage (push) Successful in 17m45s
    Build / Build Flatpak (push) Successful in 40m4s
    Stable

    Ghost released this 2026-06-05 13:50:59 +02:00 | 89 commits to master since this release

    DinoX v2.0.7

    This is the cumulative 2.0.x bugfix package release. It includes the fixes and packaging work from v2.0.3 through v2.0.7, so users should use this release instead of the intermediate 2.0.3-2.0.6 package attempts.

    Highlights

    • More reliable account registration and login on XMPP servers with strict SASL/SCRAM behavior.
    • Fixed group-chat join/rejoin paths, including stale join state after leaving and closing a MUC.
    • Fixed repeated packaged startup warnings around libgcrypt secure memory initialization.
    • Reduced noisy timeout warnings for detached or stalled XMPP streams.
    • Hardened package release checks for Debian, AppImage, Flatpak and Windows artifacts.
    • Updated Flatpak package baseline to GNOME Platform 50 while keeping Flathub submission as a separate maintainer-controlled step.
    • Added a clean Windows ZIP for v2.0.7 with checksum and a top-level extraction folder.

    Fixed Since v2.0.3

    • Secure memory startup: Libgcrypt initialization now disables the in-process secure memory pool before marking initialization complete, preventing repeated Oops, secure memory pool already initialized diagnostics in packaged builds.
    • External service discovery: XEP-0215 refreshes now use the account-level throttled warning path for request timeouts, avoiding repeated timeout warnings when STUN/TURN service discovery stalls.
    • Package accessibility startup: Debian and AppImage wrappers keep the GTK accessibility bridge enabled by default and only run the hard AT-SPI repair path when explicitly requested.
    • Account registration and login: Registration and sign-in checks now report connection and no-response failures instead of treating missing streams or missing registration replies as success.
    • SCRAM/SASL compatibility: DinoX no longer guesses channel binding types when servers do not advertise XEP-0440, falls back to the correct bare SCRAM GS2 header, and escapes SCRAM usernames according to the protocol.
    • Group chat joins: MUC joins now finish outstanding join futures on timeout or stream detach, reactivate already joined rooms correctly, and configure newly created rooms only after the join actually completes.
    • UI text validation: User-facing labels, URL preview text, file names, SFS metadata, sticker names, and media-device labels are sanitized before they reach GTK/Pango, preventing invalid UTF-8 runtime warnings.
    • Preferences layout: Removed a conflicting fixed-size request from the preferences dialog that could make libadwaita report impossible minimum and natural sizes.
    • Forgejo package gating: The Core/Deb package job no longer fails on a Flatpak-specific manifest check; that check remains active in the dedicated Flatpak package job and in normal local static release checks.
    • Forgejo release fail-fast: Tag release package jobs now wait for a full static release preflight and a successful Core/Deb package gate before AppImage and Flatpak jobs start.
    • Forgejo Flatpak preflight compatibility: The package runtime matrix now avoids a jq 1.6 reserved-word conflict in Flatpak module option checks, so the Linux package-builder image and local development machines agree on OpenH264 manifest validation.

    Changed Since v2.0.3

    • Flatpak release baseline: Forgejo Flatpak package builds use the GNOME Platform 50 builder image and tightened manifest permissions.
    • Flathub planning: Added an internal submission plan documenting product boundaries, Runtime 50 checks, source-manifest requirements, and manual maintainer review steps before opening a Flathub pull request.
    • Release packaging: v2.0.4, v2.0.5 and v2.0.6 were intermediate packaging/release-gate repair attempts; v2.0.7 is the complete package set users should download.

    Available Assets

    • Windows ZIP: DinoX-2.0.7-Windows-x86_64.zip
    • Debian package: dinox_2.0.7_amd64.deb
    • AppImage: DinoX-2.0.7-x86_64.AppImage
    • Flatpak bundle: dinox-2.0.7-x86_64.flatpak once the Forgejo Flatpak job has uploaded it.
    • Source archive: dinox-2.0.7.tar.gz
    • Every uploaded binary/source asset has a matching .sha256 checksum file.

    Installation

    Windows

    Download DinoX-2.0.7-Windows-x86_64.zip and DinoX-2.0.7-Windows-x86_64.zip.sha256, verify the checksum, extract the ZIP, and start dinox.exe from the extracted DinoX-2.0.7-Windows-x86_64 folder.

    certutil -hashfile DinoX-2.0.7-Windows-x86_64.zip SHA256
    

    Compare the printed hash with DinoX-2.0.7-Windows-x86_64.zip.sha256.

    Debian/Ubuntu

    sha256sum -c dinox_2.0.7_*.deb.sha256
    sudo apt install ./dinox_2.0.7_*.deb
    

    AppImage

    sha256sum -c DinoX-2.0.7-*.AppImage.sha256
    chmod +x DinoX-*.AppImage
    ./DinoX-*.AppImage
    

    Flatpak Bundle

    Use this once dinox-2.0.7-x86_64.flatpak and its .sha256 file are listed in the release assets.

    flatpak install flathub org.gnome.Platform//50
    sha256sum -c dinox-2.0.7-x86_64.flatpak.sha256
    flatpak install --user ./dinox-2.0.7-x86_64.flatpak
    flatpak run im.dinox.dinox
    

    Build from Source

    tar xf dinox-2.0.7.tar.gz
    cd dinox-2.0.7
    ./scripts/ci-build-deps.sh
    meson setup build -Dplugin-mqtt=enabled -Dplugin-rtp=enabled -Dlocation-sharing=enabled -Dplugin-rtp-vaapi=enabled
    ./scripts/build.sh --strict
    ./build/main/dinox
    
    Downloads