nevaforget 8285bcdf44
All checks were successful
Update PKGBUILD version / update-pkgver (push) Successful in 2s
fix: audit LOW fixes — dead uid, home_dir warn, clippy sweep, debug value (v0.8.5)
- users::User: drop the unused `uid` field and its getuid() assignment.
  The compiler dead_code warning is gone, and the synthetic `u32::MAX`
  sentinel in the panel fallback is obsolete too.
- panel: surface a log::warn! when dirs::home_dir() returns None instead
  of silently falling back to an empty PathBuf that would make avatars
  look for .face in the current working directory.
- Apply three clippy suggestions: two collapsible if-let + && chains in
  users::get_avatar_path_with and config::resolve_background_path_with,
  and a redundant closure in panel::execute_action's spawn_blocking.
- main: require MOONSET_DEBUG=1 to escalate log verbosity — mere
  presence of the var must not dump path info into the journal.
2026-04-24 14:14:11 +02:00

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
No description provided
Readme 845 KiB
Languages
Rust 95%
CSS 3.6%
Shell 1.4%