63 lines
1.8 KiB
Nix
63 lines
1.8 KiB
Nix
# --- This file has been auto-generated. For permanent changes alter the appropriate block in the README.org. ---
|
|
{ lib, config, pkgs, flakeRoot, ... }:
|
|
let
|
|
username = config.defaultUser or "henrov";
|
|
homeDir = "/home/${username}";
|
|
basePortal = pkgs.xdg-desktop-portal-gtk;
|
|
hyprlandPortal = pkgs.xdg-desktop-portal-hyprland;
|
|
in
|
|
{
|
|
#################################
|
|
# XDG Desktop Portals (system)
|
|
#################################
|
|
xdg.portal.enable = true;
|
|
xdg.portal.xdgOpenUsePortal = true;
|
|
xdg.portal.extraPortals = [
|
|
basePortal
|
|
hyprlandPortal
|
|
];
|
|
xdg.portal.config = {
|
|
common = {
|
|
default = [ "hyprland" "gtk" ];
|
|
};
|
|
hyprland = {
|
|
default = [ "hyprland" "gtk" ];
|
|
"org.freedesktop.impl.portal.FileChooser" = [ "gtk" ];
|
|
"org.freedesktop.impl.portal.Settings" = [ "gtk" ];
|
|
"org.freedesktop.impl.portal.Screencast" = [ "hyprland" ];
|
|
"org.freedesktop.impl.portal.Screenshot" = [ "hyprland" ];
|
|
};
|
|
};
|
|
#################################
|
|
# System packages
|
|
#################################
|
|
environment.systemPackages = [
|
|
basePortal
|
|
hyprlandPortal
|
|
];
|
|
#################################
|
|
# Home Manager user config
|
|
#################################
|
|
home-manager.users.${username} = {
|
|
#################################
|
|
# XDG user directories
|
|
#################################
|
|
xdg.userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
desktop = null;
|
|
download = "${homeDir}/Downloads";
|
|
documents = "${homeDir}/Documents";
|
|
pictures = "${homeDir}/Pictures";
|
|
music = null;
|
|
publicShare = null;
|
|
templates = "${homeDir}/Experiments";
|
|
videos = "${homeDir}/Videos";
|
|
extraConfig = {
|
|
XDG_PROJECTS_DIR = "${homeDir}/Projects";
|
|
XDG_WORK_DIR = "${homeDir}/Work";
|
|
};
|
|
};
|
|
};
|
|
}
|