How it fits together

  • Quickshell draws the top bar and its menus. The modules are listed in config/topbar/modules.jsonc. Each one gets its state from config/topbar/scripts/status <name> (an icon name, a text and a class), and a click opens <Name>Menu.qml under it. Icons are SVGs: Lucide by name, or pack:name from any Iconify set (fetched once). Sizes are in config/topbar/adjust.conf.
  • The menus use ordinary command-line tools such as wpctl, nmcli, bluetoothctl, upower, tailscale, cliphist and dnf. There are no daemons of their own.
  • The theme script (config/hypr/scripts/theme) derives every shade from one colour. It writes a small file for Quickshell, fuzzel and hyprlock, then reloads them.
  • Deck writes its playing state to a small JSON file. The bar, the music menu and the launcher read that file.

From README.md › How it fits together in the Nightdrive repo