Add CHANGELOG documenting all changes since 0.1.0 and the initial release. Add DECISIONS.md as an architectural decision log. Update CLAUDE.md to reflect current architecture. Bump to 0.1.1 for the security and correctness fixes in the previous commit.
Moonset
Wayland Session Power Menu for the Moonarch ecosystem.
A fullscreen overlay triggered by keybind with 5 actions: Lock · Logout · Hibernate · Reboot · Shutdown
Features
- Rust + gtk4-rs + gtk4-layer-shell (OVERLAY layer — above Waybar)
- Catppuccin Mocha theme
- Multi-monitor support (wallpaper on secondary monitors)
- Inline confirmation for destructive actions
- Escape or background click to dismiss
- DE/EN localization
- Configurable wallpaper (TOML)
Installation
cargo build --release
install -Dm755 target/release/moonset /usr/bin/moonset
Or via PKGBUILD:
cd pkg && makepkg -si
Usage
# Launch directly
moonset
# Via Niri keybind (in ~/.config/niri/config.kdl)
# binds {
# Mod+Escape { spawn "moonset"; }
# }
Configuration
Config file: ~/.config/moonset/moonset.toml or /etc/moonset/moonset.toml
# Path to background image (optional)
background_path = "/usr/share/moonarch/wallpaper.jpg"
Wallpaper fallback: config → /usr/share/moonarch/wallpaper.jpg → bundled package wallpaper
Development
# Tests
cargo test
# Release build
cargo build --release
Part of the Moonarch ecosystem
- moonarch — Reproducible Arch Linux setup
- moongreet — greetd greeter for Wayland
- moonlock — Wayland lockscreen
- moonset — Session power menu
Description
Languages
Rust
95%
CSS
3.6%
Shell
1.4%