Files
nix-dotfiles-v2/modules/xdg.nix

82 lines
2.1 KiB
Nix

{
pkgs,
lib,
config,
...
}:
{
environment.systemPackages = [
pkgs.xdg-desktop-portal-gtk
pkgs.xdg-desktop-portal-gnome
pkgs.xdg-desktop-portal
];
# XDG related configurations
xdg = {
# Enable desktop portal integration
#portal = {
# enable = true; # Enable the portal system
# xdgOpenUsePortal = true; # Use portal for opening files and URLs
# # Additional portals for specific environments
# extraPortals = with pkgs; [
# xdg-desktop-portal-gtk
# xdg-desktop-portal
# xdg-desktop-portal-gnome
# kdePackages.xdg-desktop-portal-kde # For KDE environment
# ];
# # Configuration packages for portals (like GNOME session, Niri, etc.)
# configPackages = with pkgs; [
# gnome-session
# niri
# ];
#};
portal = {
enable = true;
xdgOpenUsePortal = true;
config.common.default = [ "gnome" ];
extraPortals = [
pkgs.xdg-desktop-portal
pkgs.xdg-desktop-portal-gtk
pkgs.xdg-desktop-portal-gnome
];
configPackages = with pkgs; [
gnome-session
niri
];
};
# Enable autostart functionality (launch apps on login)
autostart.enable = true;
# Enable menu support for applications
menus.enable = true;
# Enable icon theme support (icons for applications, etc.)
icons.enable = true;
# Enable sounds for system events (like notifications)
sounds.enable = true;
# Terminal execution for XDG spec
terminal-exec.enable = true;
};
# Enable MIME type handling for file associations
xdg.mime.enable = true;
# Enable additional configurations for portals
xdg.portal.wlr.enable = true; # Disable Wayland/Weston portal support (as you've commented out)
# Icons
xdg.icons.fallbackCursorThemes = [ "Adwaita" ]; # Set a default cursor theme (you can change this)
# Terminal execution configuration
xdg.terminal-exec.package = pkgs.foot; # Choose the terminal emulator (can be changed to your preference)
xdg.terminal-exec.settings = { }; # Terminal-specific settings (customizable)
}