Commit Graph
17 Commits
Author SHA1 Message Date
nevaforget 33d1cf017f fix(theme): install the GTK theme at all, and make it Mocha
Two defects, found while porting moonix's switch back.

Nothing installed a GTK theme. settings.ini named
Colloid-Grey-Dark-Catppuccin and the PKGBUILD symlinked
/usr/share/themes/Colloid-Grey-Dark-Catppuccin/gtk-4.0/ into /etc/xdg, but
no package in either list ships it: colloid-catppuccin-theme-git is a split
package of colloid-icon-theme-git running `install.sh -s catppuccin`, which
installs icons only, and kvantum-theme-catppuccin-git is Qt. A fresh
install got Adwaita and three dangling symlinks. post-install.sh already
had the error branch for this — "GTK4 theme not found … libadwaita apps
will use fallback theme" — firing on every fresh machine.

The package name is what hid it: colloid-catppuccin-theme-git reads like a
GTK theme and is an icon set. aur.txt now says so in a comment, and the
icon entry stays — there is no Mocha icon counterpart and none is needed.

The theme was also never Mocha. Colloid's catppuccin tweak produces Frappé
with a grey accent (base #292c3c, selection #ccd0da); #1e1e2e and #b4befe
appear nowhere in its gtk.css. Kvantum, Zed and the lock screen were all
Mocha, so GTK was the one layer out of step, unnoticed because the two dark
bases sit close together.

catppuccin-gtk-theme-mocha is maintained by Catppuccin itself and ships the
upstream 1.0.3 release zips. No change in shape: their GTK theme is
Colloid, carried as a git submodule and recolored, so widget shapes and
spacing are exactly what they were.

The name will not match moonix, ever. Arch installs the release zips, whose
directories carry the full build name including the +default tweak marker;
nixpkgs builds the same 1.0.3 from source without tweaks and drops the
suffix. moonix therefore keeps rewriting this one value when it deploys
settings.ini — a permanent difference now, not a migration step.
2026-09-12 02:25:00 +02:00
nevaforget 5768f21645 fix(packages): add app2unit to the AUR package list
The quickshell launcher and NetworkPopout start apps through app2unit so
each one gets its own transient systemd scope instead of inheriting
quickshell's cgroup. app2unit is an AUR package and was never listed, so
on Arch the binary is absent and Quickshell.execDetached fails silently:
the launcher opens, filters entries and starts nothing, leaving no trace
in the quickshell log. NixOS carries app2unit in the system environment,
which is why the switch went unnoticed there.

Not a PKGBUILD depends — pacman cannot resolve AUR packages
(moonarch-pkgbuilds/DECISIONS.md, 2026-04-21). moonarch-update reports it
as missing and offers to install it from aur.txt.
2026-09-11 08:47:47 +02:00
nevaforget 16bf1f349d refactor(power): switch the CPU widget backend to power-profiles-daemon
auto-cpufreq switches the scaling governor, but under amd-pstate in
active mode the platform decides from the min/max and EPP registers and
ignores the governor. power-profiles-daemon writes exactly those knobs,
and its polkit policy allows switch-profile for the active session, so
the popout no longer loses focus to a pkexec prompt.

- CpuGovService.qml: powerprofilesctl get/set, no pkexec
- indicator + popout: powersave -> power-saver, Auto (reset) -> balanced
- moonarch-cpugov, moonarch-waybar-cpugov: same switch, the Waybar module
  now reads the profile instead of scaling_governor
- power-profiles-daemon moves from aur.txt to official.txt (it is in extra)
- post-install.sh and moonarch-doctor name it in their service lists
2026-08-25 08:30:18 +02:00
nevaforget 78762d7f40 feat(qt): theme Qt apps with Catppuccin via Kvantum
Qt apps (e.g. VLC) rendered in the default Fusion style — GTK theming
does not cover Qt. Add the Kvantum style engine + Catppuccin Mocha
Lavender theme, wired via QT_STYLE_OVERRIDE, which covers both Qt5 and
Qt6 (QT_QPA_PLATFORMTHEME can select only one plugin at a time).

Also move all GUI-toolkit env vars (QT_*/GDK/SDL/CLUTTER) from zshrc to
niri's environment{} block: niri is systemd-started, so zsh exports
never reached niri-spawned GUI apps (verified via /proc/environ), only
terminal-launched ones — the app launcher included.

- packages: kvantum, kvantum-qt5, qt6ct + kvantum-theme-catppuccin-git (AUR)
- niri config.kdl: environment{} block; zshrc: GUI-toolkit vars removed
- qt6ct.conf (style=kvantum, icon_theme=Colloid), Kvantum/kvantum.kvconfig
  (theme=catppuccin-mocha-lavender, the Lavender accent)
- CLAUDE.md + DECISIONS.md
2026-07-15 15:20:21 +02:00
nevaforget 1f232c201b feat: keep windowed browser video awake via wayland-pipewire-idle-inhibit
stasis ignores browser audio (pactl, browser-excluded), so windowed/muted browser video let the screen sleep. Add wayland-pipewire-idle-inhibit (AUR + user service) holding a Wayland idle-inhibitor while audio plays. Enabled on fresh installs and checked by moonarch-doctor.
2026-06-16 10:46:05 +02:00
nevaforget a4fa48593d feat: add mpv with ModernZ OSC as default video player
- mpv-modernz-git + mpv-thumbfast-git in aur.txt
- /etc/mpv/mpv.conf disables stock OSC + title bar
- /etc/mpv/script-opts/modernz.conf overrides colors to Catppuccin Mocha (lavender accent)
- moonarch-doctor checks deployed mpv configs
2026-04-24 17:32:05 +02:00
nevaforget d6e61b4f0b refactor(install): restore fresh-install flow, drop transform.sh and personas
Long-standing gaps in post-install.sh plus cleanup:

- post-install.sh:18 was `sudo pacman -S paru` on the wrong
  assumption paru had landed in [extra]. Verified: paru/paru-bin
  are AUR-only. Restored the original git-clone + makepkg
  bootstrap, added the rust buildep that archinstall does not
  pull in.
- post-install.sh never installed AUR extras — walker, elephant,
  waypaper, stasis, themes all silently skipped. Now pulls
  packages/aur.txt after moonarch-git.
- packages/official.txt: drop glab, go, npm (unused) and rustup
  (only needed for the paru build, handled imperatively now).
- packages/aur.txt: add walker-bin (was missing entirely).
- transform.sh + legacy update.sh shim removed — transform was
  never used in practice.
- Apollo persona block out of CLAUDE.md, prior DECISIONS entries
  rewritten from Apollo/Ragnar to ClaudeCode.
- README Transform section and scripts/ listing trimmed.
- lib.sh ABOUTME updated — only post-install.sh sources it now.
2026-04-21 09:04:23 +02:00
nevaforget 9c460a561a fix: audit remediation — 6 fixes across quality, performance, security
Q-01: Fix broken upower regex in moonarch-btnote (lookaheads never matched)
Q-02: Fix transform.sh paru repo section name ([moonarch] → [moonarch-pkgbuilds]),
      config path (~/.config → /etc), and partial sync (-Sy → -Syu)
Q-03: Add missing stasis package to aur.txt (idle management broken on fresh install)
S-01: Switch CI git clones from HTTP to HTTPS (MITM risk in Docker network)
S-02: Restrict CI builder sudo to /usr/bin/pacman only
P-01: Refactor moonarch-waybar-gpustat — remove while loop, use jq --arg style
2026-04-07 10:50:57 +02:00
nevaforget 34317ab94e Add OpenMoji emoji font to AUR package list 2026-03-31 12:49:59 +02:00
nevaforget 19aaef5602 docs: fix README, remove gtklock and wlogout remnants
README: fix keybind (wlogout → moonset), remove gtklock from project
structure, correct package counts, remove nonexistent install-themes.sh,
mark update.sh as legacy wrapper.
Remove gtklock packages (5) and wlogout from package lists.
Remove defaults/xdg/gtklock/ config directory.
Remove stale foot/waybar overrides from transform.sh.
2026-03-31 09:36:20 +02:00
nevaforget 4024ad448c Remove packages from aur.txt that are hard deps of moonarch-git
walker-bin, elephant-bin, stasis, colloid-catppuccin-gtk-theme-git,
and waypaper are already pulled in as dependencies of moonarch-git.
Duplicating them in aur.txt caused package conflicts during transform.
2026-03-30 23:09:36 +02:00
nevaforget 2c05c81a73 Replace timeshift with snapper + snap-pac for btrfs snapshots
snap-pac provides automatic pre/post snapshots on pacman transactions
via pacman hook.
2026-03-30 22:59:46 +02:00
nevaforget f37dc00c7f Replace Rofi with Walker as application launcher
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.
2026-03-30 12:06:25 +02:00
nevaforget 6bdc644b0c add kanshi for dynamic output management, fix wdisplays package
- Add kanshi to official package list and spawn at niri startup
- Add empty default kanshi config in defaults/xdg/kanshi/
- Replace wdisplays-git with wdisplays-persistent-gettext in AUR list
2026-03-29 13:46:53 +02:00
nevaforget 77d0e0b5bc i18n: migrate all German text to English
Enforce the repo convention that committed text is English.
Translates ABOUTME headers, code comments, log/error messages,
shell prompts, and documentation across all files.
CLAUDE.md files remain in German per policy.
2026-03-28 14:53:23 +01:00
nevaforget 0a67d59a38 Theming auf Colloid-Catppuccin und UbuntuSans Nerd Font vereinheitlichen
- GTK-Theme von catppuccin-mocha-lavender auf Colloid-Catppuccin umgestellt
- Systemweite GTK4-Symlinks in /etc/xdg/gtk-4.0/ für libadwaita Dark-Mode
- gsettings für Theme, Color-Scheme, Icon-Theme und Font im post-install
- Alle Fonts (Hack, JetBrainsMono, MonarchOS) auf UbuntuSans Nerd Font
- Paketlisten: Colloid-Pakete statt catppuccin-gtk/newaita, ttf-ubuntusans-nerd
2026-03-26 22:17:03 +01:00
nevaforget 2e5ecf57f5 Initial commit: Moonarch reproduzierbares Arch-Linux-Setup
Niri-basierter Wayland-Desktop mit greetd/regreet, Catppuccin Mocha
Theming, Rofi-Menus, Waybar und vollstaendiger Post-Install-Automatisierung.

Archinstall-Config klont das Repo automatisch via custom-commands,
danach genuegt ein einzelner Befehl fuer die komplette Einrichtung.
2026-03-23 17:42:26 +01:00