44 lines
1.0 KiB
Nix
44 lines
1.0 KiB
Nix
{ lib, config, pkgs, inputs, ... }:
|
|
|
|
let
|
|
#################################
|
|
# Default username fallback
|
|
#################################
|
|
username = config.defaultUser or "henrov";
|
|
|
|
#################################
|
|
# Determine XDG portal package
|
|
#################################
|
|
xdgPortalHyprlandPkg =
|
|
pkgs.xdg-desktop-portal-hyprland or
|
|
inputs.xdgPortalHyprland.packages.${pkgs.system}.default;
|
|
in
|
|
{
|
|
#################################
|
|
# System-wide packages
|
|
#################################
|
|
environment.systemPackages = [
|
|
xdgPortalHyprlandPkg
|
|
];
|
|
|
|
#################################
|
|
# Home Manager user config
|
|
#################################
|
|
_module.args.hmUsers = {
|
|
${username} = {
|
|
home.packages = [
|
|
xdgPortalHyprlandPkg
|
|
];
|
|
|
|
# Enable XDG portal integration for Hyprland
|
|
xdg.portal = {
|
|
enable = true;
|
|
extraPortals = [ xdgPortalHyprlandPkg ];
|
|
config.hyprland = {
|
|
"org.freedesktop.impl.portal.Screencast" = [ "hyprland" ];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|