-
-
Notifications
You must be signed in to change notification settings - Fork 1
Scripts
All custom scripts. Utility scripts live in scripts/ and are symlinked into ~/.config/wallust/. Waybar scripts live in waybar/scripts/.
10 core scripts for theming and recording.
Rofi-based wallpaper picker with grid thumbnails.
~/.config/wallust/wallpaper-select.sh # Open picker UI
~/.config/wallust/wallpaper-select.sh /path/to/image.jpg # Direct set
~/.config/wallust/wallpaper-select.sh --live # Live picker onlyFeatures:
- Main menu with Static / Live wallpaper options (themed SVG icons)
- Grid display with thumbnails (static) and ffmpeg-generated thumbnails (live)
- Cached theme switching — uses pre-generated palettes when available
- Backup/restore safety on all theme generations
- Restarts waybar after theme change
-
Bound to:
SUPER + SHIFT + W
Applies the generated theme to all running components without killing apps.
~/.config/wallust/reload-theme.shWhat it does:
- Sources color env vars from
wallust/env - Fixes
~expansion inqt6ct/qt6ct.conf - Reloads swaync CSS in-place (
swaync-client --reload-css) - Updates Hyprland border colors live via
hyprctl eval
One-shot pre-cache of all wallpapers.
~/.config/wallust/cache-wallpapers.shGenerates wallust palettes and thumbnails for every static and live wallpaper in the directories.
Event-driven background cache daemon (run by systemd).
systemctl --user status wallust-cache-daemon.service- Watches wallpaper directories with
inotifywait - Debounces rapid file changes
- Pre-generates palettes in background (Nice=19, idle IO)
- 24-hour failure cooldown for problematic images
- File locking for single-instance safety
Toggle fullscreen screen recording.
-
Trigger:
SUPER + R -
Output:
~/Videos/Recordings/Fullscreen/recording_YYYYMMDD_HHMMSS.mp4 - Audio: Desktop audio (default sink monitor)
-
Guard: Atomic
mkdirdebounce +pgrep -x wf-recordercross-type guard - Notifications: Shows start/stop notifications
Toggle region screen recording.
-
Trigger:
SUPER + SHIFT + R -
Selection:
slurp— click and drag to select area -
Output:
~/Videos/Recordings/Region/recording_YYYYMMDD_HHMMSS.mp4 - Audio: Desktop audio only
- Guard: Same as fullscreen script
Waybar module that blinks when recording is active.
- Trigger: Polled by waybar every 10s
-
Mechanism: Checks
pgrep -x wf-recorder - Output: Waybar JSON with text and CSS class
Generates a basic hyprlock.conf from the current wallpaper.
~/.config/wallust/hyprlock-setup.sh- Uses current wallpaper as lock screen background
- Sets JetBrainsMono font for clock/date
Background helper that pushes instant waybar workspace updates on Hyprland workspace events (used by autostart).
Wrapper used by the power menu / wlogout to exit Hyprland cleanly.
17 scripts powering the waybar custom modules:
| Script | Purpose |
|---|---|
brightness.sh |
Current brightness % with 4-tier icon (JSON) |
brightness-adjust.sh |
Adjust brightness up/down (scroll handler) |
launch.sh |
Ensures waybar + swaync are running |
media.sh |
playerctl metadata follower (artist/title/status) |
notification.sh |
Bell icon with DnD/notification count |
power-profile.sh |
Active UPower power profile (D-Bus) |
power-profile-switch.sh |
Cycle to next power profile |
system-power.sh |
Rofi power menu (Lock/Logout/Sleep/Reboot/Shutdown) |
tui-audio.sh |
Opens pulsemixer in floating kitty |
tui-bluetooth.sh |
Opens bluetui in floating kitty |
tui-wifi.sh |
Opens impala in floating kitty |
tui-cpu.sh |
Opens btop in floating kitty |
weather.sh |
Weather from wttr.in (30-min cache) |
workspaces.sh |
Batch workspace display (5 at a time) |
workspace-click.sh |
Focus clicked workspace (pixel offset) |
workspace-next.sh |
Focus next workspace |
workspace-prev.sh |
Focus previous workspace |
Power management menu with themed SVG icons.
~/.config/rofi/scripts/system-power.shOptions: Lock (hyprlock), Logout (hyprlogout), Sleep (systemctl suspend), Reboot (systemctl reboot), Shutdown (systemctl poweroff), Cancel.
-
Bound to:
SUPER + P
Clipboard history manager.
~/.config/rofi/scripts/clipboard.sh # copy mode
~/.config/rofi/scripts/clipboard.sh --delete # delete mode- Lists recent entries from cliphist
- Copy mode (
SUPER + V): copies selected entry to clipboard - Delete mode (
SUPER + SHIFT + V): removes entry - Starts cliphist store daemon if not running
Legacy single-column wallpaper picker (grid theme, awww transitions). Installs to ~/.config/rofi/launchers/type-6/ integration.
-
Debounce mechanism — Atomic
mkdirto prevent double-firing (Hyprland sometimes fires keybinds twice) -
Cross-type guards —
pgrep -x wf-recorderprevents overlapping recording types -
Notifications — All actions send desktop notifications via
notify-send