Walker (GTK4 + Elephant backend) replaces rofi-lbonn-wayland-git as the central launcher and menu framework. Native Walker providers replace 5 custom rofi scripts: - App launcher (desktopapplications provider) - Clipboard (clipboard provider, replaces cliphist frontend) - Bluetooth (bluetooth provider, replaces bluetoothctl script) - Volume/audio (wireplumber provider) - Sink switcher (wireplumber provider) 3 scripts ported to Walker dmenu mode: - moonarch-vpn (nmcli) - moonarch-cpugov (auto-cpufreq) - moonarch-sink-switcher (pactl) Settings menu (moonarch-setmen) removed — apps are findable via Walker app search directly. Walker theme (gtk-inherit) inherits all colors from the active GTK4 theme instead of hardcoding Catppuccin values. Walker and Elephant run as systemd user services for instant startup. Also standardizes GTK theme to Colloid-Grey-Dark-Catppuccin across all config files (was inconsistent between gsettings and file configs). Old rofi configs preserved in legacy/rofi/ for reference.
3.5 KiB
3.5 KiB
Decisions
2026-03-29 – /opt/moonarch stays root-owned, no chown to user
- Who: Dominik, Ragnar
- Why: Multi-user system — chown to UID 1000 locks out other users from moonarch-update
- Tradeoffs: sudo required for git operations in update.sh vs. simpler user-owned repo
- How: Repo stays at /opt/moonarch owned by root:root. update.sh uses
sudo gitfor fetch/pull. All scripts already use sudo for system-level operations, so this is consistent.
2026-03-29 – Add transform.sh for existing Arch+Wayland systems
- Who: Dominik, Ragnar
- Why: Users with existing Arch+Wayland setups should be able to adopt Moonarch without reinstalling
- Tradeoffs: Hard overwrite of all configs (user + system) vs. selective/merge approach — chose hard overwrite for simplicity and consistency
- How: New transform.sh with pre-flight summary, backup, DM conflict resolution, and --dry-run flag. Shared helpers extracted to lib.sh.
2026-03-29 – Package moonarch as moonarch-git PKGBUILD
- Who: Dominik, Ragnar
- Why: System artifacts (XDG configs, helper scripts, zsh config, wallpaper) should be managed by pacman for clean deployment, versioning, rollback, and deinstallation
- Tradeoffs: /etc/xdg/ configs NOT in backup= (moonarch philosophy: system defaults flow through, users override in ~/.config/). /etc/greetd/ and /etc/moongreet/ NOT owned by package (owned by greetd/moongreet-git, overwritten via .install hook). Helper scripts move from /usr/local/bin/ to /usr/bin/ (FHS for package-managed files)
- How: moonarch-git PKGBUILD in moonarch-pkgbuilds repo. sweet-cursors-git as separate package. moonarch-update simplified (no git-sync, pacman handles file deployment). Installer scripts (post-install.sh, transform.sh) remain for orchestration, will be refactored in a follow-up to delegate file deployment to
paru -S moonarch-git
2026-03-30 – Replace Rofi with Walker as application launcher
- Who: Dominik, Ragnar
- Why: Walker is Wayland-native (GTK4 + gtk4-layer-shell), has built-in providers for clipboard, bluetooth, audio (wireplumber), and Niri integration. Reduces custom shell scripts from 8 to 3. Rofi required a Wayland fork (rofi-lbonn-wayland-git) and every applet was a custom bash script.
- Tradeoffs: Walker is newer/less battle-tested than Rofi. Requires separate Elephant daemon with per-provider packages. Dmenu mode lacks Rofi's
-a/-u(active/urgent) and-mesgflags. Settings menu (moonarch-setmen) dropped entirely — apps are findable via Walker's app search. - How: Walker + Elephant as systemd user services. Native providers replace 5 rofi scripts (launcher, clipboard, bluetooth, volume, sink-switcher). 3 scripts ported to walker dmenu (vpn, cpugov, sink-switcher). Walker theme inherits GTK4 system theme colors (gtk-inherit). Old rofi configs preserved in
legacy/rofi/.
2026-03-30 – Standardize GTK theme to Colloid-Grey-Dark-Catppuccin
- Who: Dominik, Ragnar
- Why: gsettings had
Colloid-Dark-Catppuccinwhile config files hadColloid-Catppuccin— inconsistent. Grey accent matches the icon theme (Colloid-Grey-Catppuccin-Dark). Explicit-Darkvariant is more reliable than depending onprefer-darkcolor-scheme setting. - Tradeoffs: Explicit dark locks out light mode toggle — acceptable since Moonarch is dark-only by design.
- How: Updated transform.sh, post-install.sh, gtk-3.0/settings.ini, and gsettings to
Colloid-Grey-Dark-Catppuccin. GTK4 symlinks updated accordingly.