58 lines
1.3 KiB
Nix
58 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
machineProps,
|
|
sopsHmModule,
|
|
...
|
|
}:
|
|
with lib;
|
|
{
|
|
|
|
imports = [
|
|
../common
|
|
./sound.nix
|
|
./desktop.nix
|
|
./bluetooth.nix
|
|
];
|
|
|
|
config =
|
|
{
|
|
programs.dconf.enable = true;
|
|
security.polkit.enable = true;
|
|
services.dbus.enable = true;
|
|
|
|
fonts.fontconfig.enable = true;
|
|
|
|
services.gnome.gnome-keyring.enable = true;
|
|
}
|
|
// (
|
|
if machineProps.enableHomeManager then
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.sharedModules = [
|
|
./home-manager
|
|
sopsHmModule
|
|
];
|
|
home-manager.extraSpecialArgs = {
|
|
keymap = config.console.keyMap;
|
|
isNvidiaGpu = (config.my.hardware.gpu == "nvidia");
|
|
};
|
|
home-manager.users = builtins.mapAttrs (
|
|
name: value:
|
|
{
|
|
home.username = name;
|
|
home.homeDirectory = "/home/${name}";
|
|
home.stateVersion = machineProps.stateVersion;
|
|
programs.home-manager.enable = true;
|
|
programs.fish.enable = value.shell == pkgs.fish;
|
|
}
|
|
// value.hmConfig
|
|
) config.my.users;
|
|
}
|
|
else
|
|
{ }
|
|
);
|
|
}
|