aboutsummaryrefslogtreecommitdiffstats
path: root/modules/desktop/waybar/module
diff options
context:
space:
mode:
Diffstat (limited to 'modules/desktop/waybar/module')
-rw-r--r--modules/desktop/waybar/module/default.nix4
-rw-r--r--modules/desktop/waybar/module/window.nix24
-rw-r--r--modules/desktop/waybar/module/workspaces.nix52
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";
};
}