moonarch-git: skip wlsunset in global enable loop
Build and publish packages / build-and-publish (push) Successful in 18s
Build and publish packages / build-and-publish (push) Successful in 18s
The blanket WantedBy-symlink loop installed a global-scope link for wlsunset, which meant `systemctl --user disable` (the waybar nightlight toggle's mechanism) could never persist — systemd warned about exactly this scope mismatch on every disable. Filter survived reboots even when the user turned it off. PKGBUILD now skips wlsunset; moonarch.install drops the legacy symlink on upgrade. pkgrel bumped so installed systems pick up the fix.
This commit is contained in:
@@ -1,5 +1,12 @@
|
||||
# Decisions
|
||||
|
||||
## 2026-05-04 – moonarch-git: skip wlsunset in global enable loop
|
||||
|
||||
- **Who**: Dominik, ClaudeCode
|
||||
- **Why**: PKGBUILD's blanket loop over `defaults/etc/systemd/user/*.service` created `/etc/systemd/user/graphical-session.target.wants/wlsunset.service` — a global-scope symlink. The waybar nightlight toggle calls `systemctl --user disable wlsunset`, which only touches user-scope symlinks; the global one persists, so the filter came back on every reboot. Fix coordinates with moonarch repo (post-install.sh and CLAUDE.md updates) — see `moonarch/DECISIONS.md` 2026-05-04 entry.
|
||||
- **Tradeoffs**: A whitelist of services-to-enable (instead of blacklist) would be cleaner long-term, but the project ships exactly one toggle-able user service today; a `skip_enable` array reads more clearly against the existing loop. `pre_upgrade()` cleanup is conservative: removes only the wlsunset wants-symlink, leaves the unit file itself.
|
||||
- **How**: PKGBUILD `package()` — symlink loop now consults `skip_enable=("wlsunset.service")` and skips matching basenames. `moonarch.install` `pre_upgrade()` — deletes pre-existing `/etc/systemd/user/graphical-session.target.wants/wlsunset.service` so installed systems migrate cleanly. `pkgrel` bumped 11 → 12 so existing installs see the fix on next `pacman -Syu`; otherwise the registry would carry a same-versioned package and clients would skip the upgrade.
|
||||
|
||||
## 2026-04-28 – Bump epoch on moongreet-git after upstream version rollback
|
||||
- **Who**: Dominik, ClaudeCode
|
||||
- **Why**: `pacman -Syu` warned that local `moongreet-git 0.10.0.r0.gce9f219-3` is "newer" than the moonarch registry's `0.8.6.r0.gb9b6f50-1`. Cause: `greetd-moongreet` upstream was tagged `v0.9.0` and `v0.10.0` early on, then the tag history continued with `v0.8.4` → `v0.8.5` → `v0.8.6` patches on top — a deliberate downgrade of the version line. `pkgver()` uses `git describe --long --tags`, which now returns `0.8.6.r0.gb9b6f50` at HEAD, but any system that built moongreet before the tag rollback still has the higher-sorting `0.10.0` installed. Without an epoch bump, those systems will never accept the registry's 0.8.x as an upgrade.
|
||||
|
||||
Reference in New Issue
Block a user