Tangled infrastructure definitions in Nix
1{ modulesPath
2, lib
3, pkgs
4, ...
5} @ args:
6{
7 imports = [
8 (modulesPath + "/installer/scan/not-detected.nix")
9 (modulesPath + "/profiles/qemu-guest.nix")
10 ./disk-config.nix
11 ];
12 boot.loader.grub = {
13 # no need to set devices, disko will add all devices that have a EF02 partition to the list already
14 # devices = [ ];
15 efiSupport = true;
16 efiInstallAsRemovable = true;
17 };
18
19 networking.hostName = "spindle-waw";
20 services = {
21 openssh.enable = true;
22 };
23
24
25 nix = {
26 extraOptions = ''
27 experimental-features = nix-command flakes ca-derivations
28 warn-dirty = false
29 keep-outputs = false
30 '';
31 };
32
33 environment.systemPackages = map lib.lowPrio [
34 pkgs.curl
35 pkgs.gitMinimal
36 ];
37
38 users.users.tangler = {
39 extraGroups = [ "networkmanager" "wheel" "docker" ];
40 openssh.authorizedKeys.keys = args.commonArgs.sshKeys;
41 isNormalUser = true;
42 };
43
44 security.sudo.extraRules = [
45 {
46 users = [ "tangler" ];
47 commands = [
48 {
49 command = "ALL";
50 options = [ "NOPASSWD" ];
51 }
52 ];
53 }
54 ];
55
56 system.stateVersion = "25.05";
57}