Compare commits
2 Commits
d5c1b8a155
...
0064170430
| Author | SHA1 | Date | |
|---|---|---|---|
| 0064170430 | |||
| 39094ee026 |
@ -39,6 +39,15 @@ Waybar wird über `moonarch-waybar` gestartet (nicht direkt). Der Wrapper merged
|
|||||||
- Benötigt `jq` (in PKGBUILD als Dependency)
|
- Benötigt `jq` (in PKGBUILD als Dependency)
|
||||||
- System-Config muss valides JSON sein (kein JSONC)
|
- System-Config muss valides JSON sein (kein JSONC)
|
||||||
|
|
||||||
|
## mpv + ModernZ OSC
|
||||||
|
|
||||||
|
Videoplayer ist `mpv` mit [ModernZ](https://github.com/Samillion/ModernZ) als OSC, Thumbnails via thumbfast:
|
||||||
|
- `mpv-modernz-git` liefert `modernz.lua` + Font + Default-Config nach `/etc/mpv/`
|
||||||
|
- `mpv-thumbfast-git` liefert `thumbfast.lua` nach `/etc/mpv/scripts/` (wird von ModernZ automatisch erkannt)
|
||||||
|
- `defaults/etc/mpv/mpv.conf` deaktiviert Stock-OSC (`osc=no`) und Titelleiste (`title-bar=no`)
|
||||||
|
- `defaults/etc/mpv/script-opts/modernz.conf` überschreibt die Farben auf Catppuccin Mocha (Lavender als Accent, matcht waybar/swaync)
|
||||||
|
- Deploy via moonarch-git: staging nach `/usr/share/moonarch/mpv/`, `post_install` kopiert nach `/etc/mpv/` (modernz.conf wird dabei gegenüber dem AUR-Default überschrieben — gleiches Pattern wie foot.ini/waybar style.css)
|
||||||
|
|
||||||
## System Health Check (moonarch-doctor / moondoc)
|
## System Health Check (moonarch-doctor / moondoc)
|
||||||
|
|
||||||
Diagnose-Script das den Systemzustand gegen moonarch-Defaults prüft:
|
Diagnose-Script das den Systemzustand gegen moonarch-Defaults prüft:
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
# Decisions
|
# Decisions
|
||||||
|
|
||||||
|
## 2026-04-24 – Stasis: flip `ignore_remote_media` to false for browser video
|
||||||
|
- **Who**: Dominik, ClaudeCode
|
||||||
|
- **Why**: Idle was firing on a second machine even while a video was playing in the browser. Original config carried the comment "browser uses D-Bus inhibit" and set `ignore_remote_media true`, deliberately excluding browser MPRIS on the assumption that Firefox/Chromium would keep the session alive via `org.freedesktop.ScreenSaver.Inhibit`. Verified against browser behavior: both browsers only raise that inhibit during **fullscreen** video playback (Firefox also requires `dom.screenwakelock.enabled`, default off on Linux). Windowed playback — the common case, YouTube in a tab — sends no inhibit, so stasis saw zero inhibitors and zero media players and ran the full idle plan to suspend. Upstream example config lists `r"firefox.*"` in `inhibit_apps` for exactly this reason; Moonarch removed it without a working substitute.
|
||||||
|
- **Tradeoffs**: Three options. (A) Put `firefox`/`chromium` back into `inhibit_apps` — works but inhibits whenever the browser *process* is running, even with zero tabs playing; wrong shape. (B) Tell users to flip `dom.screenwakelock.enabled` per browser — pushes per-user config, fragile across browsers. (C) Let browser MPRIS count as a media player by setting `ignore_remote_media false` — stasis already tracks playback state, so it only inhibits during actual playback. Picked C. Cost: any MPRIS source stasis classifies as "remote" (e.g. a Chromecast bridge) now also inhibits; acceptable — that is usually what a user wants anyway, and the inhibit releases the moment playback stops.
|
||||||
|
- **How**: `defaults/xdg/stasis/stasis.rune` — `ignore_remote_media true` → `false`, comment rewritten to document the fullscreen-only D-Bus behavior. PKGBUILD deploys to `/etc/xdg/stasis/stasis.rune`; existing users still need the 2026-04-22 seed mechanism (or a manual merge) to pick it up in `~/.config/stasis/stasis.rune`.
|
||||||
|
|
||||||
## 2026-04-22 – moonarch-doctor housekeeping: drop stale check, add missing services
|
## 2026-04-22 – moonarch-doctor housekeeping: drop stale check, add missing services
|
||||||
- **Who**: Dominik, ClaudeCode
|
- **Who**: Dominik, ClaudeCode
|
||||||
- **Why**: Noticed while running `moondoc` on a healthy system that it reported `Paru [moonarch-pkgbuilds] repo missing from /etc/paru.conf` — a false failure. The paru PKGBUILD-repo mechanism was retired on 2026-04-20 in favor of the registry-only flow, and the `moonarch-git` install hook strips the legacy paru.conf section on upgrade; the doctor script was not updated in lockstep. Audit of the rest of the script surfaced two related gaps: the user-services loop skipped `walker.service` and `nautilus.service`, even though the PKGBUILD ships both in `/etc/systemd/user/` and enables them via `graphical-session.target.wants` symlinks. A silently missing walker or nautilus would not show up in diagnostics.
|
- **Why**: Noticed while running `moondoc` on a healthy system that it reported `Paru [moonarch-pkgbuilds] repo missing from /etc/paru.conf` — a false failure. The paru PKGBUILD-repo mechanism was retired on 2026-04-20 in favor of the registry-only flow, and the `moonarch-git` install hook strips the legacy paru.conf section on upgrade; the doctor script was not updated in lockstep. Audit of the rest of the script surfaced two related gaps: the user-services loop skipped `walker.service` and `nautilus.service`, even though the PKGBUILD ships both in `/etc/systemd/user/` and enables them via `graphical-session.target.wants` symlinks. A silently missing walker or nautilus would not show up in diagnostics.
|
||||||
|
|||||||
5
defaults/etc/mpv/mpv.conf
Normal file
5
defaults/etc/mpv/mpv.conf
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Disable stock OSC — ModernZ replaces it.
|
||||||
|
osc=no
|
||||||
|
|
||||||
|
# Hide native title bar for a cleaner borderless look (ModernZ draws its own).
|
||||||
|
title-bar=no
|
||||||
32
defaults/etc/mpv/script-opts/modernz.conf
Normal file
32
defaults/etc/mpv/script-opts/modernz.conf
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# ABOUTME: ModernZ OSC overrides for moonarch — Catppuccin Mocha palette.
|
||||||
|
# ABOUTME: Only keys that diverge from upstream defaults; Lua defaults fill the rest.
|
||||||
|
|
||||||
|
# --- Background ---
|
||||||
|
osc_color=#181825
|
||||||
|
thumbnail_box_color=#11111b
|
||||||
|
thumbnail_box_outline=#45475a
|
||||||
|
|
||||||
|
# --- Text ---
|
||||||
|
window_title_color=#cdd6f4
|
||||||
|
window_controls_color=#cdd6f4
|
||||||
|
title_color=#cdd6f4
|
||||||
|
cache_info_color=#a6adc8
|
||||||
|
time_color=#cdd6f4
|
||||||
|
chapter_title_color=#cdd6f4
|
||||||
|
|
||||||
|
# --- Buttons ---
|
||||||
|
side_buttons_color=#cdd6f4
|
||||||
|
middle_buttons_color=#cdd6f4
|
||||||
|
playpause_color=#cdd6f4
|
||||||
|
held_element_color=#6c7086
|
||||||
|
|
||||||
|
# --- Accent (Lavender, matches waybar glow / swaync border) ---
|
||||||
|
seekbarfg_color=#b4befe
|
||||||
|
seekbarbg_color=#45475a
|
||||||
|
seekbar_cache_color=#585b70
|
||||||
|
seek_handle_color=#b4befe
|
||||||
|
seek_handle_border_color=#cba6f7
|
||||||
|
hover_effect_color=#b4befe
|
||||||
|
nibble_color=#b4befe
|
||||||
|
nibble_current_color=#cdd6f4
|
||||||
|
nibbles_style=gap
|
||||||
@ -5,9 +5,11 @@
|
|||||||
@description "Idle management for Moonarch (Niri + moonlock)"
|
@description "Idle management for Moonarch (Niri + moonlock)"
|
||||||
|
|
||||||
default:
|
default:
|
||||||
# Media playback inhibits idle (non-browser only, browser uses D-Bus inhibit)
|
# Media playback inhibits idle. Browsers expose MPRIS during video playback
|
||||||
|
# and only send D-Bus idle-inhibit in fullscreen, so we include remote media
|
||||||
|
# to catch windowed browser videos.
|
||||||
monitor_media true
|
monitor_media true
|
||||||
ignore_remote_media true
|
ignore_remote_media false
|
||||||
|
|
||||||
# App/process inhibit patterns (apps that don't use D-Bus idle-inhibit)
|
# App/process inhibit patterns (apps that don't use D-Bus idle-inhibit)
|
||||||
inhibit_apps [
|
inhibit_apps [
|
||||||
|
|||||||
@ -30,6 +30,10 @@ wl-color-picker
|
|||||||
blueberry
|
blueberry
|
||||||
waterfox-bin
|
waterfox-bin
|
||||||
|
|
||||||
|
# Media
|
||||||
|
mpv-modernz-git
|
||||||
|
mpv-thumbfast-git
|
||||||
|
|
||||||
# System & Tools
|
# System & Tools
|
||||||
auto-cpufreq
|
auto-cpufreq
|
||||||
stasis
|
stasis
|
||||||
|
|||||||
@ -199,6 +199,8 @@ check_config_match "/etc/xdg/swaync/style.css" "$SRC/swaync/style.css"
|
|||||||
check_config_match "/etc/greetd/config.toml" "$SRC/greetd/config.toml"
|
check_config_match "/etc/greetd/config.toml" "$SRC/greetd/config.toml"
|
||||||
check_config_match "/etc/greetd/niri-greeter.kdl" "$SRC/greetd/niri-greeter.kdl"
|
check_config_match "/etc/greetd/niri-greeter.kdl" "$SRC/greetd/niri-greeter.kdl"
|
||||||
check_config_match "/etc/moongreet/moongreet.toml" "$SRC/moongreet/moongreet.toml"
|
check_config_match "/etc/moongreet/moongreet.toml" "$SRC/moongreet/moongreet.toml"
|
||||||
|
check_config_match "/etc/mpv/mpv.conf" "$SRC/mpv/mpv.conf"
|
||||||
|
check_config_match "/etc/mpv/script-opts/modernz.conf" "$SRC/mpv/modernz.conf"
|
||||||
|
|
||||||
if [[ -f /etc/zsh/zshrc.moonarch ]]; then
|
if [[ -f /etc/zsh/zshrc.moonarch ]]; then
|
||||||
pass "/etc/zsh/zshrc.moonarch"
|
pass "/etc/zsh/zshrc.moonarch"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user