How maxpoww/standard-os works
This repository configures a Standard-OS Nix desktop environment, with window-management, shell UI, system services, and notification tooling. The notification workflow is the clearest runtime path in the sampled source: applications send notifications over D-Bus; the daemon captures metadata and the active Hyprland window, stores active notifications, and appends a bounded JSONL history. The tree and plans indicate additional desktop capabilities, but their implementation and wiring were not sampled, so those branches are shown without speculative connections.
Main entry points: notifications.rs Freedesktop interface · main.rs Notification daemon · notifos.rs NotifOS extension · configuration.nix Host configuration
Components 21
System configuration
- Host configuration
configuration.nix - System modules
modules - Home modules
home/modules
Desktop experience
- Hyprland setup
home/modules/hyprland-config.nix - Waybar shell
home/modules/waybar.nix - Rofi launcher
home/modules/rofi.nix - Widgets canvas
home/modules/widgets-canvas.nix
Notifications
- Notification daemon
home/notif-os-daemon/src/main.rs - Freedesktop interface
home/notif-os-daemon/src/notifications.rs - NotifOS extension
home/notif-os-daemon/src/notifos.rs - Active notification store
home/notif-os-daemon/src/store.rs - Notification journal
home/notif-os-daemon/src/journal.rs - Notification menu
home/scripts/notif-menu
Background services
- Brightness service
home/modules/brightness-daemon.nix - Weather service
home/modules/weather-daemon.nix - Pomodoro service
home/modules/pomodoro-daemon.nix - Landscape view
home/modules/landscape-snap.nix
Other components
- Desktop user
- Desktop applications
- Session D-Bus
- Hyprland control
Connections 20
- Host configuration → System modules: configures
- Host configuration → Home modules: configures
- Desktop user → Hyprland setup: uses
- Desktop user → Waybar shell: uses
- Desktop user → Rofi launcher: uses
- Desktop user → Widgets canvas: uses
- Desktop applications → Session D-Bus: sends notifications
- Session D-Bus → Notification daemon: dispatches calls
- Notification daemon → Freedesktop interface: serves interface
- Notification daemon → NotifOS extension: serves interface
- Freedesktop interface → Hyprland control: queries window
- Freedesktop interface → Active notification store: inserts or removes
- Freedesktop interface → Notification journal: appends and prunes
- NotifOS extension → Active notification store: lists or removes
- NotifOS extension → Freedesktop interface: emits signals
- Notification menu → Session D-Bus: reads notification API
- Brightness service → Desktop user: supports controls
- Weather service → Desktop user: provides weather
- Pomodoro service → Desktop user: provides timer
- Landscape view → Desktop user: provides view