From f1015c40c46a88b5208a2770bb1cd773dda0d62b Mon Sep 17 00:00:00 2001 From: Barrett Ruth Date: Sat, 14 Feb 2026 15:43:41 -0500 Subject: [PATCH] feat(fuzze): goodbye rofi; --- config/fuzzel/fuzzel.ini | 12 ++++++------ config/hypr/hyprland.conf | 4 ++-- config/nvim/lua/plugins/git.lua | 2 +- home/modules/theme.nix | 1 - home/modules/ui.nix | 8 -------- scripts/ctl | 4 ++-- scripts/hypr | 8 ++++---- scripts/theme | 9 +++------ 8 files changed, 18 insertions(+), 30 deletions(-) diff --git a/config/fuzzel/fuzzel.ini b/config/fuzzel/fuzzel.ini index 7b7f4c3..3a6385f 100644 --- a/config/fuzzel/fuzzel.ini +++ b/config/fuzzel/fuzzel.ini @@ -1,14 +1,14 @@ include=~/.config/fuzzel/themes/theme.ini [main] -font=SF Pro Display:size=15,Symbols Nerd Font:size=15 -prompt=> -width=45 +font=SF Pro Display:size=12,Symbols Nerd Font:size=12 +prompt="> " +width=50 lines=10 horizontal-pad=24 vertical-pad=20 inner-pad=12 -line-height=28 +line-height=24 letter-spacing=0 icons-enabled=yes icon-theme=hicolor @@ -22,8 +22,8 @@ match-counter=no [border] width=2 -radius=12 -selection-radius=8 +radius=0 +selection-radius=0 [dmenu] mode=text diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf index c7acf01..bdf6521 100644 --- a/config/hypr/hyprland.conf +++ b/config/hypr/hyprland.conf @@ -72,7 +72,7 @@ bindul = , XF86AudioMute, exec, hypr volume toggle bindul = , XF86MonBrightnessUp, exec, hypr brightness up bindul = , XF86MonBrightnessDown, exec, hypr brightness down -bind = ALT, SPACE, exec, rofi -show run +bind = ALT, SPACE, exec, fuzzel bind = ALT, TAB, workspace, previous bind = ALT, A, cyclenext bind = ALT, B, exec, pkill -USR1 waybar || waybar @@ -104,7 +104,7 @@ bind = , XF86Tools, submap, scripts submap = scripts bind = , A, exec, ctl audio out -bind = , C, exec, sh -lc 'cliphist list | rofi -dmenu -p "copy to clipboard" --lines 15 | cliphist decode | wl-copy' +bind = , C, exec, sh -lc 'cliphist list | fuzzel --dmenu --prompt="clip: " --lines=15 | cliphist decode | wl-copy' bind = , K, exec, ctl keyboard toggle bind = , O, exec, ctl ocr bind = , P, exec, hypr pull diff --git a/config/nvim/lua/plugins/git.lua b/config/nvim/lua/plugins/git.lua index ff92d56..9fe5de5 100644 --- a/config/nvim/lua/plugins/git.lua +++ b/config/nvim/lua/plugins/git.lua @@ -82,7 +82,7 @@ return { enabled = true, }, intra = { - enabled = true, + enabled = false, max_lines = 500, }, }, diff --git a/home/modules/theme.nix b/home/modules/theme.nix index df667d8..8e18337 100644 --- a/home/modules/theme.nix +++ b/home/modules/theme.nix @@ -108,7 +108,6 @@ in ${lib.optionalString hostConfig.isLinux '' $DRY_RUN_CMD ln -sf "$cfg/hypr/themes/$theme.conf" "$cfg/hypr/themes/theme.conf" $DRY_RUN_CMD ln -sf "$cfg/waybar/themes/$theme.css" "$cfg/waybar/themes/theme.css" - $DRY_RUN_CMD ln -sf "$cfg/rofi/themes/$theme.rasi" "$cfg/rofi/themes/theme.rasi" $DRY_RUN_CMD ln -sf "$cfg/fuzzel/themes/$theme.ini" "$cfg/fuzzel/themes/theme.ini" ''} $DRY_RUN_CMD ln -sf "$cfg/sioyek/themes/$theme.config" "$cfg/sioyek/themes/theme.config" diff --git a/home/modules/ui.nix b/home/modules/ui.nix index 6956f29..0eb8e92 100644 --- a/home/modules/ui.nix +++ b/home/modules/ui.nix @@ -53,7 +53,6 @@ in nerd-fonts.symbols-only psmisc fuzzel - rofi wl-clipboard cliphist grim @@ -227,13 +226,6 @@ in ''; }; - xdg.configFile."rofi/config.rasi".source = - config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/nix/config/rofi/config.rasi"; - xdg.configFile."rofi/themes/midnight.rasi".source = - config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/nix/config/rofi/themes/midnight.rasi"; - xdg.configFile."rofi/themes/daylight.rasi".source = - config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/nix/config/rofi/themes/daylight.rasi"; - services.dunst = { enable = true; settings = { diff --git a/scripts/ctl b/scripts/ctl index 223f387..46926fc 100755 --- a/scripts/ctl +++ b/scripts/ctl @@ -80,7 +80,7 @@ audio) if [ "$XDG_SESSION_TYPE" = x11 ]; then choice="$(printf "%s\n" "$sinks" | awk -F'\t' '{print $1": "$2}' | dmenu -i -p "select sink:" | cut -d: -f1)" else - choice="$(printf "%s\n" "$sinks" | awk -F'\t' '{print $1": "$2}' | rofi -dmenu -i -p "select sink" | cut -d: -f1)" + choice="$(printf "%s\n" "$sinks" | awk -F'\t' '{print $1": "$2}' | fuzzel --dmenu --prompt="sink: " | cut -d: -f1)" fi [ "$choice" ] && wpctl set-default "$choice" ;; @@ -90,7 +90,7 @@ audio) if [ "$XDG_SESSION_TYPE" = x11 ]; then choice="$(printf "%s\n" "$sources" | awk -F'\t' '{print $1": "$2}' | dmenu -i -p "select source:" | cut -d: -f1)" else - choice="$(printf "%s\n" "$sources" | awk -F'\t' '{print $1": "$2}' | rofi -dmenu -i -p "select source" | cut -d: -f1)" + choice="$(printf "%s\n" "$sources" | awk -F'\t' '{print $1": "$2}' | fuzzel --dmenu --prompt="source: " | cut -d: -f1)" fi [ "$choice" ] && wpctl set-default "$choice" ;; diff --git a/scripts/hypr b/scripts/hypr index 04b15a8..3240735 100755 --- a/scripts/hypr +++ b/scripts/hypr @@ -95,7 +95,7 @@ volume) fi ;; pull) - require hyprctl jq rofi + require hyprctl jq fuzzel APP="$1" case "$APP" in google-chrome | google-chrome-stable) CLASS="google-chrome" ;; @@ -147,7 +147,7 @@ pull) [ -z "$ROFI_LINES" ] && exit 0 - SELECTED=$(echo "$ROFI_LINES" | rofi -dmenu -i -p "pull window") + SELECTED=$(echo "$ROFI_LINES" | fuzzel --dmenu --prompt="pull: ") [ -z "$SELECTED" ] && exit 0 @@ -160,7 +160,7 @@ pull) hyprctl dispatch focuswindow "address:${WIN_ADDR}" ;; spawnfocus) - require hyprctl jq rofi socat + require hyprctl jq fuzzel socat WS="" while [ $# -gt 0 ]; do case "$1" in @@ -222,7 +222,7 @@ spawnfocus) elif [ "$WIN_COUNT" -eq 1 ]; then WIN_ADDR=$(echo "$WIN_ADDRS" | awk -F'\t' '{print $3}') elif [ "$WIN_COUNT" -gt 1 ]; then - SELECTED=$(echo "$WIN_ADDRS" | awk -F'\t' '{print $1 ": " $2 "\t" $3}' | rofi -dmenu -i -p "select window") + SELECTED=$(echo "$WIN_ADDRS" | awk -F'\t' '{print $1 ": " $2 "\t" $3}' | fuzzel --dmenu --prompt="window: ") if [ -z "$SELECTED" ]; then exit 0 diff --git a/scripts/theme b/scripts/theme index cb9743f..1968f0e 100755 --- a/scripts/theme +++ b/scripts/theme @@ -20,8 +20,9 @@ else case "$(uname)" in Linux) if [ "$XDG_SESSION_TYPE" = "wayland" ]; then - require rofi - theme="$(printf "%s\n" "$themes" | rofi -dmenu -p 'theme')" + require fuzzel + count="$(printf "%s\n" "$themes" | wc -l)" + theme="$(printf "%s\n" "$themes" | fuzzel --dmenu --prompt="theme: " --lines="$count")" else require dmenu theme="$(printf "%s\n" "$themes" | dmenu -p 'select theme: ')" @@ -75,10 +76,6 @@ Linux) pkill -USR2 waybar } - rofi_themes="$cfg/rofi/themes" - [ -f "$rofi_themes/$theme.rasi" ] && { - ln -sf "$rofi_themes/$theme.rasi" "$rofi_themes/theme.rasi" - } hypr_themes="$cfg/hypr/themes" [ -f "$hypr_themes/$theme.conf" ] && {