Files
thoughtsync/desktop/packaging/arch/README.md
T
bvandeusenandClaude Opus 4.8 98d918dda2
Desktop (Tauri) / Tauri desktop (Linux) (push) Successful in 3m27s
M10 (task 2022, issue 2021): Arch pacman package + commit icon set (native, system libs)
Native-first fix for the AppImage black window: a PKGBUILD that builds from source,
linked against SYSTEM graphics libs, so it renders on the host driver.
- desktop/packaging/arch/{PKGBUILD,thoughtsync.desktop,README.md}: `makepkg -si`
  installs /usr/bin/thoughtsync + .desktop + icon; deps webkit2gtk-4.1/gtk3/...;
  builds the frontend + `cargo build --release` (no tauri-cli). Uses the host
  graphics stack -> avoids EGL_BAD_PARAMETER.
- Commit the icon set (desktop/src-tauri/icons/*.png, un-gitignored) so BOTH
  `cargo build` (pacman) and `cargo tauri build` (deb/appimage) work without a
  generate step; bundle.icon -> the 4 committed PNGs; drop the `cargo tauri icon`
  step from desktop.yml.
- Broaden the WebKit software-render hardening (lib.rs) to ALL Linux (was
  AppImage-scoped) so the native build also renders if system WebKit is finicky.

Can't CI-test the PKGBUILD (Arch-only; CI is Debian) -- operator builds locally.
desktop.yml re-verifies the deb+AppImage build with the committed icons.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FRgehjoz7Yv8LkUfADxACm
2026-07-24 17:02:40 -04:00

32 lines
1.0 KiB
Markdown

# ThoughtSync desktop — Arch package
A native Arch/pacman package, built **from source** so it links against your
**system** libraries (webkit2gtk-4.1 + your GPU driver). This is the robust install
on Arch/CachyOS: it avoids the bundled-AppImage `EGL_BAD_PARAMETER` black-window
problem entirely, and it installs a proper application-menu entry.
## Install
From a clone of the `thoughtsync` repo:
```sh
cd desktop/packaging/arch
makepkg -si
```
`makepkg` will pull the build tools (`rust`, `nodejs`, `npm`) and runtime deps
(`webkit2gtk-4.1`, `gtk3`, …) via pacman, compile the frontend + the Rust binary,
and install:
- `/usr/bin/thoughtsync` — the app
- `/usr/share/applications/thoughtsync.desktop` — the menu entry
- `/usr/share/pixmaps/thoughtsync.png` — the icon
Then launch **ThoughtSync** from your app menu (or run `thoughtsync`).
## Notes
- Builds in-place from the checkout (`makepkg` reads the committed state via git).
- The compile takes a few minutes the first time (Rust release build).
- Uninstall: `sudo pacman -R thoughtsync-desktop`.