nevaforget 675c8bee45 docs: trim README to registry-only flow, log CI zombie-fix decisions
README now describes the Gitea Arch registry path as the canonical
install/update mechanism — the paru --pkgbuilds fallback is no longer
advertised to users. Adds troubleshooting for missing updates (check
the repo DB directly) and file conflicts.

DECISIONS.md records why the build-and-publish workflow now wipes all
existing versions before upload, and why three packages had to be
re-registered manually.
2026-04-20 14:15:44 +02:00

75 lines
2.2 KiB
Markdown

# Moonarch PKGBUILDs
PKGBUILDs for the Moonarch ecosystem. Published as prebuilt Arch packages
via the Gitea Package Registry at `gitea.moonarch.de`.
## Packages
| Package | Description |
|---------|-------------|
| `moonarch-git` | Desktop environment defaults (Niri, Waybar, Catppuccin Mocha) |
| `moonset-git` | Wayland session power menu |
| `moonlock-git` | Wayland lockscreen with PAM and fingerprint support |
| `moongreet-git` | greetd greeter for Wayland |
| `sweet-cursors-git` | Sweet cursor theme |
## Setup
The Moonarch installer configures `/etc/pacman.conf` with:
```ini
[moonarch]
SigLevel = Required DatabaseOptional
Server = https://gitea.moonarch.de/api/packages/nevaforget/arch/$repo/$arch
```
No extra paru setup required — `pacman` and `paru` both resolve moonarch
packages from the registry.
## Install
```bash
paru -S moonarch-git # pulls in all ecosystem packages as dependencies
```
## Update
```bash
paru -Syu
```
Version bumps land in the registry automatically:
1. Push on `main` of `moonarch`, `moongreet`, `moonlock`, or `moonset`
triggers the per-project `update-pkgver.yaml` — pkgver-bot commits a
fresh `pkgver` to the matching PKGBUILD here.
2. That commit triggers `build-and-publish.yaml` (this repo): the runner
builds every changed PKGBUILD and uploads the artifacts to the Arch
registry. Before each upload all existing versions of the package are
deleted so the repo DB stays clean — see `build-and-publish.yaml` for
the rationale (zombie DB entries after pkgver changes).
`sweet-cursors-git` has no upstream CI; bump its `pkgrel` manually when
a rebuild is needed.
## Troubleshooting
**`paru -Syu` shows no update even though a new version was published**:
check the repo DB has the new version.
```bash
curl -s https://gitea.moonarch.de/api/packages/nevaforget/arch/moonarch/x86_64/moonarch.db \
| tar -tz | grep <pkgname>
```
If only an old version appears there, the `build-and-publish` workflow
did not run cleanly — inspect the latest run under
`gitea.moonarch.de/nevaforget/moonarch-pkgbuilds/actions`.
**File conflict on install** (`foo/bar exists in filesystem`): the file
was placed manually before the package claimed ownership. Once:
```bash
paru -Syu --overwrite=/path/to/conflicting/file
```