diff options
| author | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-26 22:28:14 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-26 22:28:14 +0530 |
| commit | b93a73ba98e94cbb971dce6554c7c55bce517c0e (patch) | |
| tree | 1c687bc941183d7badba76f6fdf801fa3cfd9042 /modules/desktop/waybar/module | |
| parent | ae21713f260fc1599c36c0e4cf572d24b0379ef4 (diff) | |
| download | home-manager-config-b93a73ba98e94cbb971dce6554c7c55bce517c0e.tar.gz home-manager-config-b93a73ba98e94cbb971dce6554c7c55bce517c0e.zip | |
feat: replace feh with swayimg, refactor waybar icons and window rewrites
- Replace feh module with swayimg (Wayland-native image viewer with Lua config)
- Extract shared app icons into waybar lib, switch to title-based matching in window module
- Remove gnome-keyring wrapper from ente-auth, drop custom desktop entry
- Clean up bluetui/impala desktop entries (lowercase name, drop --class flag)
- Add PASSWORD_STORE_DIR session variable to gopass
- Switch Chromium to True Amoled Black theme
Diffstat (limited to 'modules/desktop/waybar/module')
| -rw-r--r-- | modules/desktop/waybar/module/default.nix | 4 | ||||
| -rw-r--r-- | modules/desktop/waybar/module/window.nix | 24 | ||||
| -rw-r--r-- | modules/desktop/waybar/module/workspaces.nix | 52 |
3 files changed, 49 insertions, 31 deletions
diff --git a/modules/desktop/waybar/module/default.nix b/modules/desktop/waybar/module/default.nix index 99b8420..133f597 100644 --- a/modules/desktop/waybar/module/default.nix +++ b/modules/desktop/waybar/module/default.nix @@ -3,10 +3,10 @@ ... }@input: let - inherit (import ../lib.nix { inherit lib; }) mkIcon; + inherit (import ../lib.nix { inherit lib; }) mkIcon icons; args = input // { - inherit mkIcon; + inherit mkIcon icons; }; modules = { diff --git a/modules/desktop/waybar/module/window.nix b/modules/desktop/waybar/module/window.nix index 06f0c5b..a6ea1e9 100644 --- a/modules/desktop/waybar/module/window.nix +++ b/modules/desktop/waybar/module/window.nix @@ -1,4 +1,26 @@ -{ ... }: +{ icons, ... }: { expand = true; + format = "{}"; + rewrite = { + "(.*) - Chromium" = "${icons."Chromium"} $1"; + "(.*?)(?: - )?VLC Media Player" = "${icons."VLC"} $1"; + "(.*)heroic(.*)" = "${icons."Heroic"} $1$2"; + "(.*)Steam(.*)" = "${icons."Steam"} $1$2"; + "bruno" = "${icons."Bruno"} Bruno"; + "(.*) - VSCodium" = "${icons."VSCodium"} $1"; + "Virtual Machine Manager" = "${icons."VirtManager"} Virtual Machine Manager"; + "OC \\|(.*)" = "${icons."Opencode"} $1"; + "OpenCode" = "${icons."Opencode"} OpenCode"; + "Ente Auth" = "${icons."EnteAuth"} Ente Auth"; + "Yazi:(.*)" = "${icons."Yazi"} $1"; + "Swayimg:(.*)" = "${icons."Swayimg"} $1"; + "(.*)w3m(.*)" = "${icons."W3M"} $1$2"; + "bluetui" = "${icons."bluetui"} bluetui"; + "impala" = "${icons."impala"} impala"; + "neomutt" = "${icons."neomutt"} NeoMutt"; + "screen-recording" = "${icons."screen-recording"} Screen Recording"; + "system-monitor" = "${icons."system-monitor"} System Monitor"; + "nvim(.*)" = "${icons."neovim"} $1"; + }; } diff --git a/modules/desktop/waybar/module/workspaces.nix b/modules/desktop/waybar/module/workspaces.nix index ccfeaa6..8a3be38 100644 --- a/modules/desktop/waybar/module/workspaces.nix +++ b/modules/desktop/waybar/module/workspaces.nix @@ -1,14 +1,9 @@ { config, lib, - mkIcon, + icons, ... }: -let - mkWindowRewrite = - enable: color: icon: - lib.mkIf enable (mkIcon color icon); -in { format = "{windows} <span rise='-3000' font_size='small'>{id}</span>"; persistent-workspaces = { @@ -27,27 +22,28 @@ in }; window-rewrite-default = ""; window-rewrite = { - "class<chromium-browser>" = mkWindowRewrite config.web.chromium.enable "#4285F4" ""; - "class<kitty>" = mkWindowRewrite config.terminal.kitty.enable "#F5A97F" ""; - "class<vlc>" = mkWindowRewrite config.media.vlc.enable "#FF8800" ""; - "class<feh>" = mkWindowRewrite config.media.feh.enable "#7EC699" ""; - "class<org.pwmt.zathura>" = mkWindowRewrite config.office.zathura.enable "#E06C75" ""; - "class<heroic>" = mkWindowRewrite config.gaming.heroic.enable "#4B93FF" ""; - "class<Steam>" = mkWindowRewrite config.gaming.steam.enable "#1B2838" ""; - "class<bruno>" = mkWindowRewrite config.development.bruno.enable "#F97316" ""; - "class<codium>" = mkWindowRewrite config.development.vscodium.enable "#3993EE" ""; - "class<.virt-manager-wrapped>" = mkWindowRewrite config.development.qemu.enable "#AD8AFF" ""; - "class<opencode>" = mkWindowRewrite config.development.opencode.enable "#98C379" ""; - "class<io.ente.auth>" = mkWindowRewrite config.security.enteauth.enable "#E5C07B" ""; - "class<yazi>" = mkWindowRewrite config.file-management.yazi.enable "#56B6C2" ""; - "class<w3m>" = mkWindowRewrite config.web.w3m.enable "#8BE9FD" ""; - "class<bluetui>" = mkWindowRewrite config.networking.bluetui.enable "#BD93F9" ""; - "class<impala>" = mkWindowRewrite config.networking.impala.enable "#50FA7B" ""; - "class<neomutt>" = mkWindowRewrite config.communication.neomutt.enable "#FFB86C" ""; - "class<rofi>" = mkWindowRewrite config.desktop.rofi.enable "#BD93F9" ""; - "class<aria2-run>" = mkWindowRewrite config.scripts.aria2-run.enable "#8BE9FD" ""; - "class<screen-recording>" = mkWindowRewrite config.scripts.screen-recording.enable "#FF5555" ""; - "class<system-monitor>" = mkWindowRewrite config.scripts.system-monitor.enable "#50FA7B" ""; - "class<neovim>" = mkWindowRewrite config.development.nixvim.enable "#005900" ""; + "class<chromium-browser>" = lib.mkIf config.web.chromium.enable icons."Chromium"; + "class<kitty>" = lib.mkIf config.terminal.kitty.enable icons."Kitty"; + "class<vlc>" = lib.mkIf config.media.vlc.enable icons."VLC"; + "class<org.pwmt.zathura>" = lib.mkIf config.office.zathura.enable icons."Zathura"; + "class<heroic>" = lib.mkIf config.gaming.heroic.enable icons."Heroic"; + "class<Steam>" = lib.mkIf config.gaming.steam.enable icons."Steam"; + "class<bruno>" = lib.mkIf config.development.bruno.enable icons."Bruno"; + "class<codium>" = lib.mkIf config.development.vscodium.enable icons."VSCodium"; + "class<io.ente.auth>" = lib.mkIf config.security.enteauth.enable icons."EnteAuth"; + + "title<Virtual Machine Manager>" = lib.mkIf config.development.qemu.enable icons."VirtManager"; + "title<OC \\| (.*)>" = lib.mkIf config.development.opencode.enable icons."Opencode"; + "title<Swayimg:(.*)>" = lib.mkIf config.media.swayimg.enable icons."Swayimg"; + "title<Yazi:(.*)>" = lib.mkIf config.file-management.yazi.enable icons."Yazi"; + "title<(.*)w3m(.*)>" = lib.mkIf config.web.w3m.enable icons."W3M"; + "title<bluetui>" = lib.mkIf config.networking.bluetui.enable icons."bluetui"; + "title<impala>" = lib.mkIf config.networking.impala.enable icons."impala"; + "title<neomutt>" = lib.mkIf config.communication.neomutt.enable icons."neomutt"; + "title<screen-recording>" = + lib.mkIf config.scripts.screen-recording.enable + icons."screen-recording"; + "title<system-monitor>" = lib.mkIf config.scripts.system-monitor.enable icons."system-monitor"; + "title<nvim(.*)>" = lib.mkIf config.development.nixvim.enable icons."neovim"; }; } |
