chore(packages): drop walker, elephant, waybar and swaync

walker-bin and the nine elephant providers were uninstalled on 2026-09-11;
the lists still carried them, so moonup reported them as missing on every
run and offered to reinstall them. quickshell's launcher and
ClipboardPopout had already taken over the two modes that were in use.

waybar, swaync and the two waybar-niri modules go with them. They were
kept as a reserve bar when quickshell became the default in July; the
reserve is no longer intact anyway, because two of its modules dispatch
through walker as a dmenu.

Not touched: defaults/xdg/{waybar,swaync,walker}/, walker.service, the
waybar helper scripts and the Alt+W toggle. moonarch-waybar-updates has to
stay regardless of its name -- UpdatesIndicator.qml calls it.
This commit is contained in:
nevaforget committed 2026-09-14 09:05:19 +02:00
1 parent 11a26e9548
commit 22c2b92aee
3 files changed
+3 -16

No files matched your search

+3 -2
View File
@@ -105,7 +105,8 @@ quickshell is the **default bar and notification daemon**, spawned by niri as `q
- **Close on focus loss:** an open popout folds up as soon as the focus leaves it. Three signals, all of them needed: (1) the host surface losing the keyboard — `PopoutHost` reads Qt's `Window.active`, since Quickshell's `PanelWindow` exposes no focus state of its own; this is the only signal that catches a focus grab by another *layer surface*. (2) niri focusing an actual window (`Niri.focusedWindowId >= 0`). The `>= 0` matters: niri sets window focus to **none** while the popout holds the keyboard (`Window focus changed: None` on the event stream), so reacting to every change would make each open close itself. (3) The focused workspace changing (`Niri.focusedWorkspaceId`) — workspace ids are unique across outputs, so this covers a monitor switch as well; a workspace switch does not necessarily take the keyboard off the popout, which is why (1) does not subsume it. `PopoutHost.sawFocus` gates the first `Window.active == false`, which arrives in the gap between mapping the surface and the compositor handing focus over.
- **No exception for auth prompts.** A popout action that raises a pkexec or keyring prompt (camera, cpugov, batsaver, VPN) loses the focus to it and therefore closes the popout; the resulting state shows on the next open. That is a deliberate choice for one rule over a special case — the `OnDemand` keyboard focus in `PopoutHost` still exists so such a prompt can become typeable at all.
- **Launcher:** `Launcher.qml` is the first widget in the left cluster (an apps glyph) and owns `LauncherPopout.qml` — an application launcher over `DesktopEntries.applications` (search field + keyboard-navigable icon+name list; ↑/↓ select, Enter/click launch, Esc close; app icons via `Quickshell.iconPath`). It registers under `launcher` (so it is IPC-addressable) and is bound to `Mod+Space` (`qs -c moonarch ipc call popout toggle launcher`, in `config.kdl`) in addition to icon-click. Scope is app-launch (drun) only; `walker` stays installed and keeps the other modes (run-command, calc, files), but has no keybind of its own left — what still calls it is dmenu duty for the Waybar-reserve scripts (`moonarch-sink-switcher`, `moonarch-cpugov`, `moonarch-vpn`), which is why the package cannot be dropped.
- **Launcher:** `Launcher.qml` is the first widget in the left cluster (an apps glyph) and owns `LauncherPopout.qml` — an application launcher over `DesktopEntries.applications` (search field + keyboard-navigable icon+name list; ↑/↓ select, Enter/click launch, Esc close; app icons via `Quickshell.iconPath`). It registers under `launcher` (so it is IPC-addressable) and is bound to `Mod+Space` (`qs -c moonarch ipc call popout toggle launcher`, in `config.kdl`) in addition to icon-click. Scope is app-launch (drun) only.
- **`walker` is gone.** It and the whole `elephant` provider set were uninstalled on 2026-09-11, and `packages/aur.txt` followed on 2026-09-14. The launcher and `ClipboardPopout` had already taken over its two used modes. What did not follow it out: `defaults/xdg/walker/` (config + 20 theme files, still installed by the PKGBUILD and seeded into homes by `moonarch.install`), `defaults/etc/systemd/user/walker.service`, and the three dmenu scripts `moonarch-sink-switcher`, `moonarch-cpugov`, `moonarch-vpn`, which still shell out to `walker` and therefore do nothing. Waybar's `on-click` for the audio and cpugov modules points at the first two, so **those two Waybar modules are dead** while Waybar is the reserve bar. Porting them to `fuzzel`/`wofi` or dropping them is open.
- **Launching goes through `app2unit`, a hard dependency.** `entry.execute()` spawns the app as a child of quickshell, and a child inherits its parent's cgroup — so every launched app lands inside `quickshell.service` and systemd kills it along with the unit whenever the bar restarts. `app2unit` wraps `systemd-run` and hands each app its own transient `app-*.scope`, the same shape niri gives the windows it spawns itself. It is an **external AUR package** (`app2unit`), not a systemd builtin: `Quickshell.execDetached` fails silently on a missing binary, so without it the launcher looks alive and starts nothing, with no trace in the quickshell log. `NetworkPopout.qml` uses it for `nm-connection-editor` for the same reason. NixOS carries it in the system environment, which is why the switch went unnoticed there.
- **`Terminal=true` entries need a second package.** They go through `app2unit-term`, which hardcodes `A2U__TERMINAL_HANDLER=xdg-terminal-exec` and calls `check_terminal_handler()` before launching: a missing binary is `error "Terminal launch requested but 'xdg-terminal-exec' is unavailable!"` + `exit 1`, with no fallback to `$TERMINAL`. So `xdg-terminal-exec` (AUR) is as hard a dependency as `app2unit` itself, for terminal entries only — the failure is partial and therefore easy to miss: GUI apps keep launching while every terminal entry does nothing.
@@ -143,7 +144,7 @@ The video player is `mpv` with [ModernZ](https://github.com/Samillion/ModernZ) a
Diagnostic script that checks the system state against moonarch defaults:
- Packages (official.txt + aur.txt installed? Orphans?)
- System services (NetworkManager, bluetooth, greetd, ufw, power-profiles-daemon, etc.)
- User services (kanshi, wlsunset, stasis, walker, nautilus, cliphist-text, cliphist-image)
- User services (kanshi, wlsunset, stasis, nautilus, cliphist-text, cliphist-image)
- Config files (SHA256 comparison deployed vs. moonarch default)
- Helper scripts + symlinks (moonup, moondoc)
- System config (UFW, pacman/paru repos, default shell)
-12
View File
@@ -21,18 +21,6 @@ kvantum-theme-catppuccin-git
otf-openmoji
# Niri / Wayland Extras
walker-bin
elephant-desktopapplications-bin
elephant-clipboard-bin
elephant-bluetooth-bin
elephant-calc-bin
elephant-runner-bin
elephant-files-bin
elephant-providerlist-bin
elephant-niriactions-bin
elephant-wireplumber-bin
waybar-niri-windows-bin
waybar-niri-workspaces-enhanced-git
wdisplays-persistent-gettext
wl-color-picker
-2
View File
@@ -59,9 +59,7 @@ kanshi
xwayland-satellite
# Desktop Utilities
waybar
quickshell
swaync
cliphist
wl-clipboard
wlsunset