103 lines
1.9 KiB
Nix
103 lines
1.9 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
primaryUser,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
./fonts.nix
|
|
./sops.nix
|
|
./regreet.nix
|
|
./plymouth
|
|
./audio.nix
|
|
./ssh.nix
|
|
./locale.nix
|
|
./tailscale.nix
|
|
./virt.nix
|
|
./webcam.nix
|
|
];
|
|
|
|
# nix config
|
|
nix = {
|
|
settings = {
|
|
experimental-features = [
|
|
"nix-command"
|
|
"flakes"
|
|
];
|
|
max-jobs = "auto";
|
|
cores = 0;
|
|
substituters = [
|
|
"https://hyprland.cachix.org"
|
|
"https://nix-community.cachix.org"
|
|
];
|
|
trusted-public-keys = [
|
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
];
|
|
};
|
|
|
|
# Garbage collection
|
|
gc = {
|
|
automatic = true;
|
|
dates = "weekly";
|
|
options = "--delete-older-than 30d";
|
|
};
|
|
};
|
|
|
|
# Disable Docs
|
|
documentation = {
|
|
enable = true;
|
|
doc.enable = false; # Skip large documentation
|
|
man.enable = false; # Keep man pages
|
|
info.enable = false; # Skip info pages
|
|
};
|
|
|
|
nixpkgs.config = {
|
|
allowUnfree = true;
|
|
};
|
|
|
|
home-manager = {
|
|
useGlobalPkgs = true;
|
|
useUserPackages = true;
|
|
users.${primaryUser} = {
|
|
imports = [ ../home ];
|
|
};
|
|
backupFileExtension = "backup";
|
|
extraSpecialArgs = { inherit inputs primaryUser; };
|
|
};
|
|
|
|
programs = {
|
|
fish.enable = true;
|
|
hyprland = {
|
|
enable = true;
|
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
};
|
|
steam.enable = true;
|
|
dconf.enable = true;
|
|
appimage = {
|
|
enable = true;
|
|
binfmt = true;
|
|
};
|
|
};
|
|
|
|
security = {
|
|
pam.services.swaylock = { };
|
|
polkit.enable = true;
|
|
apparmor.enable = true;
|
|
};
|
|
|
|
users.users.${primaryUser} = {
|
|
home = "/home/${primaryUser}";
|
|
shell = pkgs.fish;
|
|
isNormalUser = true;
|
|
openssh.authorizedKeys.keyFiles = [ ./ssh-key ];
|
|
extraGroups = [
|
|
"wheel"
|
|
"video"
|
|
"audio"
|
|
"libvirtd"
|
|
];
|
|
};
|
|
}
|