Skip to content

Latest commit

 

History

History
95 lines (76 loc) · 3.58 KB

File metadata and controls

95 lines (76 loc) · 3.58 KB

Rofi — bn-menu & Sidebars

BlackNode uses two rofi interfaces: bn-menu (icon + text hub) and sidebars (icon-only right panels). Both use Material You colours generated by matugen.

Theme Architecture

All themes are modular. No standalone themes exist.

~/.config/rofi/
├── colors.rasi          ← M3 token palette (47 vars)
├── menu.rasi            ← bn-menu theme (440x640, centred, search bar)
├── submenu.rasi         ← bn-menu submenu theme (380px, 6 lines)
├── shared/
│   ├── config.rasi      ← base configuration
│   ├── menu.rasi        ← sidebar bundle (colors + config + sidebar)
│   ├── sidebar.rasi     ← 100px east panel, icon-only, feather font
│   ├── list.rasi        ← centred list dialog, 440px, 28px radius
│   ├── input-dialog.rasi← centred input dialog, 420px, 24px radius
│   └── dialog.rasi      ← generic dialog
└── styles/              ← per-feature themes importing from shared/
    ├── wifi-list.rasi
    ├── bluetooth-list.rasi
    ├── notes-list.rasi
    ├── search-list.rasi
    ├── audio-list.rasi
    ├── notes-input.rasi
    ├── search-input.rasi
    ├── notifications-list.rasi
    └── kb-layout.rasi

Rules:

  • Every -list.rasi imports shared/list.rasi with no width/font/padding/lines overrides.
  • Every -input.rasi imports shared/input-dialog.rasi with no overrides.
  • Sidebars use shared/menu.rasi + -theme-str "listview { lines: N; }". No per-menu .rasi files for main sidebars.
  • Icons in sidebar data: "󰅴 " — icon + single trailing space, no leading space.
  • Icons in bn-menu items: " System" — icon + double space + label.

bn-menu

Trigger: SUPER + SPACE. Opens a centred 440x640 window with 16 items:

Item Script
System system/menu.sh
Audio audio/menu.sh
Display display/menu.sh
Window window/menu.sh
Screenshot screenshot/menu.sh
Processes process/menu.sh
Packages package/menu.sh
Applications apps/menu.sh
Wallpapers wallpaper/menu.sh
Waybar waybar/menu.sh
Reload reload/menu.sh
Services services/menu.sh
Theme theme/menu.sh
About info/menu.sh
Session session/menu.sh
Bluetooth bluetooth/menu.sh

Each opens a submenu using submenu.rasi (centred, 380px, 6 lines).

Sidebars

Icon-only panels, 100px wide, right edge of screen. Triggered by keybinds:

Script Keybind Action
wifi.sh SUPER + A Wi-Fi scan, connect, saved networks
bluetooth.sh SUPER + B Bluetooth power, scan, devices
audio.sh SUPER + SHIFT + A Recently played (album art), audio apps
notes.sh SUPER + SHIFT + N New note, view notes, open folder
search.sh SUPER + SHIFT + F File, web, text, recent search
kb-layout.sh SUPER + SHIFT + K Keyboard layout toggle (us/es)
notifications.sh SUPER + N Notification history, clear, pause
config-hud.sh SUPER + SHIFT + I Live Hyprland overrides

Sub-actions open centred dialogs styled with shared/list.rasi.

Config HUD

scripts/config-hud.sh writes to settings/overrides.lua and calls hyprctl reload. Categories:

  • Animations: on/off
  • Visuals: blur, shadow, dim
  • Layout: gaps in/out, border width
  • Rounding: window corner radius (0–20px)

State is cached in ~/.cache/blacknode/hud-state.

Scripts

All live in ~/.config/rofi/scripts/. They are executable and use #!/usr/bin/env bash.