Files
artcraft/packaging/linux
Dylan M. Taylor 4ecd4b7eea Add manual verified updates and bump ArtCraft to 0.42.1 (#2835)
ArtCraft’s Help menu has news but no application update check, and its
Flatpak cannot invoke the host updater. Add **Help → Check for
Updates…** with background checks, current/available versions, explicit
Update and restart, progress and failure states, and Releases fallback.
Browser users are offered a reload and the desktop releases.

Use the same verified `craft-update` core as the native Craft apps,
pinned to the immutable reviewed commit in
https://github.com/storytold/craft-libs/pull/970. Keep ArtCraft’s
existing `ai.artcraft.app` identity and release naming. Honor launcher
pins, reject active generation tasks before download and again before
replacement, preserve the native window during installation, defer the
helper until accepted exit, and report helper outcomes on startup.
Registered NSIS copies use Releases; they are not overwritten as
portable folders.

Grant the host update interface and read-only launcher choices in the
existing Flatpak manifest. No frontend network-policy expansion. Add a
separate version commit changing the canonical Tauri configuration and
display version to **0.42.1**, with a regression keeping them
synchronized. Once this and the shared-library prerequisite are green
and merged, merge main into the release branch, finish all platform
drafts, verify signed checksums/assets, and publish.

Validation: native all-target cargo check inside GNOME SDK 51; all six
focused Rust updater tests; all ten Help-menu/UI tests; TypeScript
project build; production frontend build; Flatpak permission regression
red before and green after. All six native SDK tests also pass at the
final 0.42.1 version. The existing lockfile needs compatible chrono and
crc32fast updates for the shared updater; other dependency revisions are
preserved.
2026-11-11 21:36:49 -05:00
..

ArtCraft Studio Linux releases

The Linux workflow builds every package before the release job signs and uploads them to the existing artcraft-v<version> draft, retaining Windows and macOS assets. The version comes from crates/desktop/artcraft/tauri.conf.json.

Architecture Outputs Builder
x86_64 AppImage, DEB, RPM, tar.gz, Arch pkg.tar.zst, Flatpak bundle, OCI Ubuntu 22.04 native
aarch64 AppImage, DEB, RPM, tar.gz, Arch pkg.tar.zst, Flatpak bundle, OCI Ubuntu 22.04 ARM native
riscv64 DEB, RPM, tar.gz Ubuntu 24.04 cross compiler

Native AppImages also include zsync delta-update metadata.

Flatpak uses native Ubuntu 24.04 runners and GNOME 51 for GTK3/WebKitGTK 4.1. Its build checks for missing ELF dependencies inside the sandbox, grants --persist=Artcraft so settings and task data survive restarts, and provides a launcher wrapper keeping WebKitGTK's accelerated rendering path enabled. RISC-V packages require Ubuntu 24.04-era libraries; x86_64 and ARM64 use Ubuntu 22.04 as their build baseline. The suite does not publish RISC-V AppImages, Arch packages or Flatpaks.

package.sh <architecture> <rust-target> normalizes Tauri's DEB/RPM/AppImage filenames and extracts the DEB's /usr tree into the suite's bin/ and share/ tarball layout. Shared Craft Arch packaging consumes that tarball, with WebKitGTK, GTK3 and OpenSSL dependencies added. flatpak.sh consumes the same tarball, builds the bundle, and exports the OCI layout.

Release runs import LINUX_SIGNING_KEY for Flatpak commit signatures and OCI publishing. The final shared draft-release action signs RPMs, DEBs, Arch packages, AppImages, tarballs, OCI manifests and checksums. Only a stable version on release or artcraft-release moves the OCI stable architecture tags. Like the macOS and Windows release workflows, Linux release packaging runs on release branches (release, artcraft-release, artcraft-linux) and workflow dispatch rather than on pull requests.

APT, RPM and pacman repositories are generated by artcraft-services from the release assets and checksums. Its release catalog must be updated only after the signed release is published. Installing a DEB manually is separate from publishing that DEB in the website's APT repository.

A successful build proves artifact production and metadata/dependency checks. It does not replace installation and interactive testing on physical RISC-V, ARM64 and x86_64 desktops.