Repository navigation
Release a .deb and an .rpm for x64 and arm64 alongside macOS and Windows (#356) - #362
Merged
Merged
Conversation
…ows (#356) A linux job builds both packages on a native runner per CPU, installs each the way a user would (the .rpm in a Fedora container), and starts it on a virtual screen before handing the files to the release job. The .desktop entry is filed under Office as "Notes" rather than the makers' GNOME;GTK;Utility. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #356. A pushed tag now also puts a
.deband an.rpmfor x64 and arm64 on the draft Release. A Debian, Ubuntu or Fedora user downloads one, installs it withaptordnf, and Pb Notes is in their app launcher.The release workflow
linuxjob builds on a native runner per CPU:ubuntu-24.04for x64 andubuntu-24.04-armfor arm64. Both could cross-build with--arch, as the Windows job does, but Flatpak and Snap (Linux release: Flatpak bundle for x64 and arm64 #358, Linux release: Snap for x64 and arm64 #359) can't, and a native runner can install and start what it built. Both are pinned to 24.04, whose AppArmor limits on sandboxes are the ones Ubuntu users have.pbnotes_<version>_amd64.deb,pbnotes-<version>-1.x86_64.rpm, and their arm64 twins. They are uploaded aspbnotes-linux-x64andpbnotes-linux-arm64, and thereleasejob now waits for both..debwithapt installon the runner..rpmwithdnf installin a Fedora container, as a user who isn't root, since Electron won't run as root without--no-sandbox. The.rpm'schrome-sandboxisn't setuid (the.deb's is), so its sandbox needs unprivileged user namespaces. Fedora allows those; the runner's Ubuntu kernel and Docker's defaults don't, so the job lifts both for the container.app/scripts/smoke-launch.shdoes the starting: it runs the app on Xvfb with a throwawayHOME, and fails if no Pb Notes window shows within 60 seconds or the app exits within 5 seconds of showing it. The AppImage, Flatpak and Snap jobs can call it the same way.The
.desktopentryBoth makers wrote
Categories=GNOME;GTK;Utility;and the app's own name again asGenericName. It is now filed under Office as "Notes", and both packages list the repo as their homepage.README
Install gains a Linux section: which file suits which distribution and processor (with
uname -mto look it up), how to install withapt,dnforzypper, that neither package updates itself yet, and how to uninstall.Nothing to change in the app
index.tsonly runs onwin32.openWriter's boot ID already reads/proc/sys/kernel/random/boot_idon Linux.Testing
releasewas skipped, as it is for a run started by hand..debfrom that run: installed withapt, and the app works.npm run packageand starting the app under Wayland: it ran without crashing..rpmoutside CI.🤖 Generated with Claude Code