From 43264a0be783d326e01d43e5320369850608d577 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Mon, 24 Aug 2026 18:59:56 +0530 Subject: desktop: added gnome portal - added gnome portal to use with niri --- modules/desktop/xdg/default.nix | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'modules/desktop/xdg/default.nix') diff --git a/modules/desktop/xdg/default.nix b/modules/desktop/xdg/default.nix index 852b36c..3803502 100644 --- a/modules/desktop/xdg/default.nix +++ b/modules/desktop/xdg/default.nix @@ -5,13 +5,25 @@ pkgs, ... }: +let + gtkCss = builtins.readFile ( + config.scheme { + template = builtins.readFile ./style.mustache.css; + extension = ".css"; + } + ); +in { config = lib.mkIf config.desktop.enable { + dconf.enable = true; + xdg.portal = { enable = true; extraPortals = with pkgs; [ xdg-desktop-portal-termfilechooser + xdg-desktop-portal-gnome ]; + configPackages = [ pkgs.niri ]; config.common = { "org.freedesktop.impl.portal.FileChooser" = [ "termfilechooser" ]; default = [ @@ -21,5 +33,34 @@ }; xdgOpenUsePortal = true; }; + + gtk = { + enable = true; + font = { + name = config.fonts.normal; + size = config.fonts.size; + }; + theme = { + name = "Adwaita-dark"; + package = pkgs.gnome-themes-extra; + }; + iconTheme = { + name = "Adwaita"; + package = pkgs.adwaita-icon-theme; + }; + cursorTheme = { + name = "Adwaita"; + package = pkgs.adwaita-icon-theme; + size = 20; + }; + colorScheme = "dark"; + gtk3.extraCss = gtkCss; + gtk4 = { + # GTK 4/libadwaita does not support loading GTK 3 themes; use the + # Base16 CSS above without Home Manager's compatibility workaround. + theme = null; + extraCss = gtkCss; + }; + }; }; } -- cgit v1.2.3