diff options
| author | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-26 00:13:26 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-07-26 00:13:26 +0530 |
| commit | 2f64a2097812c1820766909037e724f3415c7576 (patch) | |
| tree | 8dd91e2d68df1530e3db00db82be91135c672e36 /modules/desktop/waybar | |
| parent | 550cadaf45165ccbc3dbe050a45d0d041c2c221d (diff) | |
| download | home-manager-config-2f64a2097812c1820766909037e724f3415c7576.tar.gz home-manager-config-2f64a2097812c1820766909037e724f3415c7576.zip | |
feat: migrate to Wayland-native media tools, drop X11 cruft, polish waybar and hyprland
- Switch ffmpeg/maim/slop → grim/slurp/wf-recorder (X11→Wayland)
- Rewrite screen-recording script for wf-recorder+slurp
- Add window-rewrite icons and style workspace buttons in waybar
- Set --class on kitty desktop entries for correct hyprland window matching
- Remove i3-keybindings script and stale rofi window rules
- Tweak cursor size, border colors, file-explorer dimensions
Diffstat (limited to 'modules/desktop/waybar')
| -rw-r--r-- | modules/desktop/waybar/module/default.nix | 2 | ||||
| -rw-r--r-- | modules/desktop/waybar/module/network.nix | 4 | ||||
| -rw-r--r-- | modules/desktop/waybar/module/workspaces.nix | 34 | ||||
| -rw-r--r-- | modules/desktop/waybar/style.nix | 9 |
4 files changed, 42 insertions, 7 deletions
diff --git a/modules/desktop/waybar/module/default.nix b/modules/desktop/waybar/module/default.nix index 628b534..ee2918a 100644 --- a/modules/desktop/waybar/module/default.nix +++ b/modules/desktop/waybar/module/default.nix @@ -6,7 +6,7 @@ with config.scheme.withHashtag; { mainBar = { - "hyprland/workspaces" = import ./workspaces.nix { inherit config; }; + "hyprland/workspaces" = import ./workspaces.nix { inherit config lib; }; "hyprland/window" = import ./window.nix { inherit config; }; "pulseaudio" = import ./volume.nix { inherit config; diff --git a/modules/desktop/waybar/module/network.nix b/modules/desktop/waybar/module/network.nix index 514d54e..fb1e836 100644 --- a/modules/desktop/waybar/module/network.nix +++ b/modules/desktop/waybar/module/network.nix @@ -3,8 +3,8 @@ with config.scheme.withHashtag; { interval = 2; - format-wifi = "<span foreground='${iconColor}'>{icon}</span> {bandwidthDownBytes} {bandwidthUpBytes}"; - format-ethernet = "<span foreground='${iconColor}'></span> {bandwidthDownBytes} {bandwidthUpBytes}"; + format-wifi = "<span foreground='${iconColor}'>{icon}</span> {bandwidthDownBytes} {bandwidthUpBytes}"; + format-ethernet = "<span foreground='${iconColor}'></span> {bandwidthDownBytes} {bandwidthUpBytes}"; format-disconnected = "<span foreground='${iconColor}'></span> Disconnected"; tooltip-format = "{ifname}"; diff --git a/modules/desktop/waybar/module/workspaces.nix b/modules/desktop/waybar/module/workspaces.nix index b3625dc..a16b9e5 100644 --- a/modules/desktop/waybar/module/workspaces.nix +++ b/modules/desktop/waybar/module/workspaces.nix @@ -1,7 +1,12 @@ -{ config }: +{ config, lib }: with config.scheme.withHashtag; +let + mkWindowRewrite = + enable: color: icon: + lib.mkIf enable "<span font_size='150%' color='${color}'>${icon}</span>"; +in { - format = "{name}"; + format = "{windows} <span rise='-3000' font_size='small'>{id}</span>"; persistent-workspaces = { "*" = [ 1 @@ -16,4 +21,29 @@ with config.scheme.withHashtag; 10 ]; }; + 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<file-explorer>" = mkWindowRewrite config.file-management.yazi.enable "#56B6C2" ""; + "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" ""; + }; } diff --git a/modules/desktop/waybar/style.nix b/modules/desktop/waybar/style.nix index 861555e..b0da995 100644 --- a/modules/desktop/waybar/style.nix +++ b/modules/desktop/waybar/style.nix @@ -32,7 +32,7 @@ with config.scheme.withHashtag; #window, #pulseaudio, #battery, #custom-vpn, #network, #clock.time, #memory, #cpu, #clock.date { - border: 1.5px solid ${base03}; + border: 1.5px solid ${base07}; color: ${base07}; padding: 0 8px; } @@ -45,6 +45,7 @@ with config.scheme.withHashtag; min-width: 24px; min-height: 24px; margin: 0 2px; + font-size: 30px; } #workspaces button:hover { @@ -52,7 +53,11 @@ with config.scheme.withHashtag; } #workspaces button.active { - background: ${base03}; + border-color: ${base07}; + } + + #workspaces button.empty { + color: ${base03}; } #workspaces button.urgent { |
