49 lines
1.2 KiB
Nix
49 lines
1.2 KiB
Nix
{ inputs, outputs, lib, config, pkgs, variables, ... }:
|
|
{
|
|
|
|
system.stateVersion = "25.05";
|
|
|
|
imports = [
|
|
# Imports these as if they're in this file
|
|
./modules/index.nix
|
|
];
|
|
|
|
nixpkgs = {
|
|
config = {
|
|
# Allow proprietary packages
|
|
allowUnfree = true;
|
|
allowUnfreePredicate = (_: true);
|
|
};
|
|
};
|
|
|
|
nix = let
|
|
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
|
|
in {
|
|
|
|
settings = {
|
|
# Enable the nix commands, which are useful, and flakes, which are useful and necessary for this
|
|
experimental-features = "nix-command flakes";
|
|
};
|
|
|
|
gc = { # garbage collection
|
|
automatic = true;
|
|
dates = "weekly";
|
|
options = "--delete-older-than 14d";
|
|
};
|
|
};
|
|
|
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
|
|
|
# If you set up disk encryption, paste the line that looks like this from your generated config
|
|
# boot.initrd.luks.devices."LUKS-ID".device = "/dev/disk/by-uuid/DISK-UUID";
|
|
|
|
|
|
users.users = {
|
|
${variables.username} = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "networkmanager" "wheel" "wireshark" ];
|
|
shell = pkgs.bash;
|
|
description= "${variables.userDescription}";
|
|
};
|
|
};
|
|
}
|