{ pkgs, ... }@attrs: { ## Do not touch, read the fucking manual !!! system.stateVersion = "25.05"; ## Keep kernel packages up to latest boot.kernelPackages = pkgs.linuxPackages_latest; # Time Zone time.timeZone = "Europe/Paris"; nix = { settings = { ## Enable flakes experimental-features = [ "nix-command" "flakes" ]; ## Users trusted to use flake command trusted-users = [ "root" "${attrs.username}" ]; }; ## Grabage collection gc = { automatic = true; dates = "weekly"; options = "--delete-older-than 30d"; }; }; services = { locate = { enable = true; package = pkgs.plocate; }; }; environment.systemPackages = [ pkgs.curl pkgs.pciutils pkgs.clinfo pkgs.cargo pkgs.git pkgs.htop pkgs.killall pkgs.bind pkgs.git pkgs.jq pkgs.openldap pkgs.usbutils pkgs.gnumake pkgs.nixos-anywhere pkgs.nixos-generators pkgs.disko pkgs.sops pkgs.age pkgs.ssh-to-age pkgs.samba pkgs.krb5 pkgs.pam_krb5 pkgs.gnumake pkgs.keyutils pkgs.cifs-utils pkgs.neovim pkgs.unzip pkgs.openssl pkgs.adoptopenjdk-icedtea-web pkgs.pwgen # Nvim with dependencies pkgs.nodejs pkgs.gcc pkgs.shellcheck pkgs.nixd pkgs.nixfmt-rfc-style pkgs.ansible-language-server pkgs.ansible-lint pkgs.lua-language-server ]; }