diff options
| author | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-03-19 10:59:12 -0500 |
|---|---|---|
| committer | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-03-19 10:59:12 -0500 |
| commit | 2bc17b5cfd65a9537a9c56e74c9e7918156015e0 (patch) | |
| tree | a8a323c6571556d3f1b5e8f197e17ed447f8daa4 /modules/desktop/nixos/portals.nix | |
| parent | a97c10944e382cc7c439339c88a007401b67beeb (diff) | |
changes (idk)
Diffstat (limited to 'modules/desktop/nixos/portals.nix')
| -rw-r--r-- | modules/desktop/nixos/portals.nix | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/modules/desktop/nixos/portals.nix b/modules/desktop/nixos/portals.nix new file mode 100644 index 0000000..ff65868 --- /dev/null +++ b/modules/desktop/nixos/portals.nix @@ -0,0 +1,52 @@ +{ + pkgs, + lib, + config, + ... +}: let + useKdePortal = config.collinux.desktop.wm.sway.enable || config.collinux.desktop.wm.niri.enable; +in + lib.mkIf useKdePortal { + xdg.portal = { + enable = true; + xdgOpenUsePortal = true; + + config = { + common = { + default = [ + "kde" + "gtk" + ]; + "org.freedesktop.impl.portal.FileChooser" = ["kde"]; + }; + + sway = { + default = [ + "kde" + "gtk" + ]; + "org.freedesktop.impl.portal.FileChooser" = ["kde"]; + }; + + niri = { + default = [ + "kde" + "gtk" + ]; + "org.freedesktop.impl.portal.FileChooser" = ["kde"]; + }; + }; + + extraPortals = with pkgs; [ + kdePackages.xdg-desktop-portal-kde + xdg-desktop-portal-gtk + ]; + }; + + environment.sessionVariables = { + XDG_CURRENT_DESKTOP = "KDE"; + GTK_USE_PORTAL = "1"; + NIXOS_OZONE_WL = "1"; + MOZ_ENABLE_WAYLAND = "1"; + }; + } |
