On Linux, Tauri derives the deb/rpm package name from productName with
no way to set them independently. We override productName to
radicle-desktop so the package is named correctly, which would otherwise
also force the launcher entry to read radicle-desktop.
Add a custom .desktop template that hardcodes Name=Radicle while keeping
the package name unchanged.
Make sure docker and podman are up and running as they're necessary for
the arch packaging and artifact building.
This also shows what commands would have been run when a phase fails.
Listing a repo's refs for the peer selector resolves every remote's
signed refs through libgit2, opening a file descriptor per packfile it
reads. Radicle storage is a git monorepo that can hold thousands of
packfiles, so under the low default limit a Finder-launched bundle
exhausts descriptors and objects in the unopened packs spuriously fail
with "missing commit", leaving the peer selector stuck loading.
Raise the limit to 4096 at startup, matching heartwood's binaries.
Force-bundle libjpeg.so.8 (Fedora/RHEL lack the libjpeg8 ABI the bundled
gdk-pixbuf needs) and strip the mismatched bundled glib core so the whole
glib stack resolves from the host. Repackage with mksquashfs, reusing the
AppImage's own runtime, so the step fetches nothing from the network.
The same run can appear under multiple job COBs at a commit, causing an
each_key_duplicate crash. Keep one view per runId, letting a terminal
status override a stale "started" one.
We now have a bridge that publishes GitHub Action workflow runs as
native Radicle JobCobs directly on the repo. They're visible from
Radicle Desktop and radicle.network.
Wire up `crane` and `rust-overlay` to allow the `devShell` to take
advantage of the `rust-toolchain.toml` definitions, and provide Nix
developers with the correct toolchain.
Update to the latest release, `1.9.0`, of the `heartwood` project.
Realistically, this should use `radicle-node` in nixpkgs, but this
will suffice for now.