From 9dd2ceba50b3f617f9c563fd04134ebd90a2b85c Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Mon, 24 Aug 2026 19:51:12 +0530 Subject: desktop: using gtk and gnome portals, updated waybar ui for niri --- modules/desktop/niri/default.nix | 5 +-- modules/desktop/waybar/module/workspaces.nix | 56 ++++++++++++++-------------- modules/desktop/waybar/style.mustache.css | 18 +++------ modules/desktop/xdg/default.nix | 7 +--- 4 files changed, 36 insertions(+), 50 deletions(-) diff --git a/modules/desktop/niri/default.nix b/modules/desktop/niri/default.nix index 7fbb5fb..48c508c 100644 --- a/modules/desktop/niri/default.nix +++ b/modules/desktop/niri/default.nix @@ -40,11 +40,10 @@ wayland.windowManager.niri = { enable = true; systemd.enable = true; - # Portals are declared centrally in ../xdg. - portalPackage = null; + # Let Niri register its recommended GNOME portal implementation. + portalPackage = pkgs.xdg-desktop-portal-gnome; }; - # Niri does not paint wallpapers itself, so start swaybg with the existing wallpaper. home.packages = [ pkgs.swaybg ]; home.pointerCursor = { diff --git a/modules/desktop/waybar/module/workspaces.nix b/modules/desktop/waybar/module/workspaces.nix index cc34d01..45e31ec 100644 --- a/modules/desktop/waybar/module/workspaces.nix +++ b/modules/desktop/waybar/module/workspaces.nix @@ -5,33 +5,31 @@ ... }: { - format = "{windows} {id}"; - sort-by-name = true; - all-outputs = false; - window-rewrite-default = icons."Default"; - window-rewrite = { - "class" = lib.mkIf config.web.chromium.enable icons."Chromium"; - "class" = lib.mkIf config.terminal.kitty.enable icons."Kitty"; - "class" = lib.mkIf config.media.vlc.enable icons."VLC"; - "class" = lib.mkIf config.office.zathura.enable icons."Zathura"; - "class" = lib.mkIf config.gaming.heroic.enable icons."Heroic"; - "class" = lib.mkIf config.gaming.steam.enable icons."Steam"; - "class" = lib.mkIf config.development.bruno.enable icons."Bruno"; - "class" = lib.mkIf config.development.vscodium.enable icons."VSCodium"; - - "title" = lib.mkIf config.development.qemu.enable icons."VirtManager"; - "title" = lib.mkIf config.development.opencode.enable icons."Opencode"; - "title" = lib.mkIf config.development.opencode.enable icons."Opencode"; - "title" = lib.mkIf config.media.swayimg.enable icons."Swayimg"; - "title" = lib.mkIf config.file-management.yazi.enable icons."Yazi"; - "title" = lib.mkIf config.networking.bluetui.enable icons."bluetui"; - "title" = lib.mkIf config.networking.impala.enable icons."impala"; - "title" = lib.mkIf config.communication.neomutt.enable icons."neomutt"; - "title" = - lib.mkIf config.scripts.screen-recording.enable - icons."screen-recording"; - "title" = lib.mkIf config.scripts.system-monitor.enable icons."system-monitor"; - "title" = lib.mkIf config.development.nixvim.enable icons."neovim"; - "title" = lib.mkIf config.development.nixvim.enable icons."gopass"; - }; + format = "{value}"; + # window-rewrite-default = icons."Default"; + # window-rewrite = { + # "app_id" = lib.mkIf config.web.chromium.enable icons."Chromium"; + # "app_id" = lib.mkIf config.terminal.kitty.enable icons."Kitty"; + # "app_id" = lib.mkIf config.media.vlc.enable icons."VLC"; + # "app_id" = lib.mkIf config.office.zathura.enable icons."Zathura"; + # "app_id" = lib.mkIf config.gaming.heroic.enable icons."Heroic"; + # "app_id" = lib.mkIf config.gaming.steam.enable icons."Steam"; + # "app_id" = lib.mkIf config.development.bruno.enable icons."Bruno"; + # "app_id" = lib.mkIf config.development.vscodium.enable icons."VSCodium"; + # + # "title" = lib.mkIf config.development.qemu.enable icons."VirtManager"; + # "title" = lib.mkIf config.development.opencode.enable icons."Opencode"; + # "title" = lib.mkIf config.development.opencode.enable icons."Opencode"; + # "title" = lib.mkIf config.media.swayimg.enable icons."Swayimg"; + # "title" = lib.mkIf config.file-management.yazi.enable icons."Yazi"; + # "title" = lib.mkIf config.networking.bluetui.enable icons."bluetui"; + # "title" = lib.mkIf config.networking.impala.enable icons."impala"; + # "title" = lib.mkIf config.communication.neomutt.enable icons."neomutt"; + # "title" = + # lib.mkIf config.scripts.screen-recording.enable + # icons."screen-recording"; + # "title" = lib.mkIf config.scripts.system-monitor.enable icons."system-monitor"; + # "title" = lib.mkIf config.development.nixvim.enable icons."neovim"; + # "title" = lib.mkIf config.development.nixvim.enable icons."gopass"; + # }; } diff --git a/modules/desktop/waybar/style.mustache.css b/modules/desktop/waybar/style.mustache.css index a5f458e..dfb70fa 100644 --- a/modules/desktop/waybar/style.mustache.css +++ b/modules/desktop/waybar/style.mustache.css @@ -16,30 +16,22 @@ window#waybar { background: transparent; } -#workspaces, #window, #pulseaudio, #battery, #network, +#window, #pulseaudio, #battery, #network, #clock.time, #custom-usque, #memory, #cpu, #clock.date { background: #{{base00}}; margin: 0 5px; -} - -#workspaces { - border: none; - margin-right: 0; -} - -#window, #pulseaudio, #battery, #network, -#clock.time, #custom-usque, #memory, #cpu, #clock.date { border: 1px solid #{{base07}}; color: #{{base07}}; padding: 0 10px; } -#clock.date { - margin-right: 10px; +#workspaces { + border: none; + background: #{{base00}}; } #workspaces button { - padding: 0px 5px; + padding: 0px 10px; color: #{{base07}}; border: 1px solid #{{base03}}; border-radius: 0; diff --git a/modules/desktop/xdg/default.nix b/modules/desktop/xdg/default.nix index 3803502..50d2b34 100644 --- a/modules/desktop/xdg/default.nix +++ b/modules/desktop/xdg/default.nix @@ -21,15 +21,12 @@ in enable = true; extraPortals = with pkgs; [ xdg-desktop-portal-termfilechooser - xdg-desktop-portal-gnome + xdg-desktop-portal-gtk ]; configPackages = [ pkgs.niri ]; config.common = { "org.freedesktop.impl.portal.FileChooser" = [ "termfilechooser" ]; - default = [ - "gnome" - "gtk" - ]; + default = [ "gtk" ]; }; xdgOpenUsePortal = true; }; -- cgit v1.2.3