Unstoppable Code has a signed pacman repository for Arch Linux. You trust its signing key once, add the repository, and then install and update the app with pacman like any other package.
Before you start
- You need Arch Linux on x86_64, fully updated. Arch is a rolling release, so only a current system is supported. Partial upgrades (
pacman -Sy <package>without-u) are not supported. - You need an account that can run
sudo. - To save your sign-in, you need a keyring that provides the Secret Service, such as GNOME Keyring, KWallet or KeePassXC. See Set up a keyring below.
Arch Linux ARM and distributions based on Arch, such as Manjaro or EndeavourOS, are not supported.
Install the app
1. Update your system
sudo pacman -Syu2. Trust the signing key
The repository and its packages are signed with the Unstoppable Code release signing key, the same key that signs the Unstoppable Code APT repository. The download page shows the same fingerprint:
Signing key fingerprint: EAEE5CCCD96A3DA70419CB615BD91FB78426D5B4
Set the fingerprint, make sure pacman's keyring is initialized (running this again is safe), and download the public key:
FINGERPRINT=EAEE5CCCD96A3DA70419CB615BD91FB78426D5B4
sudo pacman-key --init
curl -fsSLO https://releases.unstoppable.ai/arch/unstoppable-code/stable/signing-key.gpg
gpg --show-keys signing-key.gpg | grep -Ex " +$FINGERPRINT"The last command prints the fingerprint. If it prints nothing, stop: the file you downloaded is not the published key. Otherwise add the key to pacman's keyring and sign it locally, which tells pacman you trust it:
sudo pacman-key --add signing-key.gpg
sudo pacman-key --lsign-key "$FINGERPRINT"
rm signing-key.gpg3. Add the repository
printf '\n[unstoppable-code]\nServer = %s\n' 'https://releases.unstoppable.ai/arch/unstoppable-code/stable/$arch' | sudo tee -a /etc/pacman.confThis adds these two lines to /etc/pacman.conf. You can also add them with an editor. Keep $arch as written; pacman replaces it. Use this stable address: the server's other channels carry unreleased test builds and are not supported.
[unstoppable-code]
Server = https://releases.unstoppable.ai/arch/unstoppable-code/stable/$arch4. Install the keyring and the app
sudo pacman -Syu unstoppable-code-keyring
sudo pacman -S unstoppable-code-desktopThe keyring package adds the repository's keys to pacman. When the signing key changes, a normal update brings the new key, so you never repeat step 2.
Open Unstoppable Code from your app launcher, or run unstoppable-code-desktop.
Update the app
Update the app with the rest of your system:
sudo pacman -SyuWhen a new version is available, the app shows Update available and tells you to run this command. It never updates itself.
Uninstall the app
Remove the repository's keys, the two packages and the repository section:
for key in $(cut -d: -f1 /usr/share/pacman/keyrings/unstoppable-code-trusted); do
sudo pacman-key --delete "$key"
done
sudo pacman -Rns unstoppable-code-desktop unstoppable-code-keyring
sudo sed -i '/^\[unstoppable-code\]$/,/^Server = /d' /etc/pacman.confYour settings, chats and workspaces stay on your computer. To delete them too, remove ~/.unstoppable-code, ~/.unstoppable-code-secure, ~/.config/Unstoppable Code and ~/.config/unstoppable-code-desktop-flags.conf. This deletes the workspaces the app created.
Set up a keyring
The app keeps your sign-in in a keyring and never in plain text. Without one, it cannot save your sign-in.
- GNOME: GNOME Keyring is installed and unlocked when you sign in.
- KDE Plasma: KWallet is installed with Plasma. Keep it enabled in System Settings.
- KeePassXC: turn on Secret Service Integration in its settings, and keep your database unlocked while the app runs.
- Hyprland or Sway: set up GNOME Keyring as below.
On Hyprland or Sway, install GNOME Keyring:
sudo pacman -S gnome-keyring libsecretIt starts when an app first needs it, and asks you to create a keyring and choose its password. On Hyprland, also add this line to ~/.config/hypr/hyprland.conf so the keyring's password prompt can open:
exec-once = dbus-update-activation-environment --systemd --allSway on Arch already does this, as long as your config includes /etc/sway/config.d/*.
To unlock the keyring when you sign in, give it the same password as your account and add these lines to the PAM file of your login program, such as /etc/pam.d/login, /etc/pam.d/greetd or /etc/pam.d/sddm. Put each line after the other lines of its type:
auth optional pam_gnome_keyring.so
session optional pam_gnome_keyring.so auto_startTo check that your keyring works, store, read and remove a test secret. lookup must print the value you typed:
secret-tool store --label='Secret Service test' test unstoppable-code
secret-tool lookup test unstoppable-code
secret-tool clear test unstoppable-codeRun on Wayland
The app runs on Wayland and X11. To pass extra flags, list them one per line in ~/.config/unstoppable-code-desktop-flags.conf. Lines starting with # are ignored. For example, to run natively on Wayland with input method support:
# Run natively on Wayland
--ozone-platform=wayland
--enable-wayland-imeUse --ozone-platform=x11 to run through XWayland instead. Flags that turn off the app's sandbox, such as --no-sandbox, are ignored.
Fix common problems
unknown trust,unknown public keyorinvalid or corrupted package (PGP signature)for unstoppable-code: pacman does not trust the key that signed the repository. Repeat step 2 with the fingerprint on this page, then runsudo pacman -Syu. If the error names an official Arch package instead, runsudo pacman -Sy archlinux-keyring && sudo pacman -Su.invalid or corrupted databaseright after a new version came out: the update was being published. Wait a minute and runsudo pacman -Syuagain. If it keeps failing, runsudo pacman -Syyu.- The app does not start: run
unstoppable-code-desktopin a terminal to see why. If you changed to a kernel that turns off user namespaces, such aslinux-hardened, reinstall the app withsudo pacman -S unstoppable-code-desktop.
The app's log is ~/.config/Unstoppable Code/logs/main.log. Include it when you contact support.