Files
cnix/modules/nixos/system/xdg/default.nix

49 lines
817 B
Nix

{
lib,
config,
pkgs,
...
}:
let
inherit (lib)
mkIf
mkOption
mkEnableOption
types
;
cfg = config.nixos.system.xdg;
in
{
options = {
nixos.system.xdg = {
enable = mkEnableOption "Enable XDG portal.";
xdgOpenUsePortal = mkOption {
type = types.bool;
default = true;
description = "Use xdg-open via the portal.";
};
};
};
config = mkIf cfg.enable {
xdg.portal = {
enable = true;
xdgOpenUsePortal = cfg.xdgOpenUsePortal;
config = {
common.default = [
"gtk"
"gnome"
];
hyprland.default = [
"gtk"
"hyprland"
];
};
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
xdg-desktop-portal-gnome
];
};
};
}