diff --git a/hosts/default.nix b/hosts/default.nix index 822b6e1..fe54232 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -60,6 +60,16 @@ in "workloads/remote" ]; }; + ops = mkSystem { + host = "ops"; + system = "x86_64-linux"; + profiles = [ + "interfaces/cli-interactive" + "platforms/vm" + "workloads/remote" + ]; + }; + internal-app-01 = mkSystem { host = "internal-app-01"; system = "x86_64-linux"; diff --git a/hosts/ops/default.nix b/hosts/ops/default.nix new file mode 100644 index 0000000..24001f5 --- /dev/null +++ b/hosts/ops/default.nix @@ -0,0 +1,38 @@ +{ ... }: +{ + imports = [ + ./hardware-configuration.nix + ]; + + networking = { + useDHCP = false; + + interfaces = { + ens18 = { + useDHCP = false; + ipv4.addresses = [ + { + address = "10.50.128.20"; + prefixLength = 24; + } + ]; + }; + + ens19 = { + useDHCP = false; + ipv4.addresses = [ + { + address = "10.50.7.101"; + prefixLength = 24; + } + ]; + }; + }; + + defaultGateway = { + address = "10.50.128.1"; + interface = "ens18"; + }; + + }; +} diff --git a/hosts/ops/hardware-configuration.nix b/hosts/ops/hardware-configuration.nix new file mode 100644 index 0000000..1979d6d --- /dev/null +++ b/hosts/ops/hardware-configuration.nix @@ -0,0 +1,44 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ + lib, + modulesPath, + ... +}: + +{ + imports = [ + (modulesPath + "/profiles/qemu-guest.nix") + ]; + + boot.initrd.availableKernelModules = [ + "ata_piix" + "uhci_hcd" + "virtio_pci" + "virtio_scsi" + "sd_mod" + "sr_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/69fa2193-1e4f-438a-8898-5de8a3f36e5b"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/D09B-4277"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; +} diff --git a/modules/system/default.nix b/modules/system/default.nix index 2206bcd..35af27a 100644 --- a/modules/system/default.nix +++ b/modules/system/default.nix @@ -12,6 +12,7 @@ ./network ./nix.nix ./power.nix + ./quem.nix ./secure-boot.nix ./sops.nix ./user diff --git a/modules/system/quem.nix b/modules/system/quem.nix new file mode 100644 index 0000000..2dbc926 --- /dev/null +++ b/modules/system/quem.nix @@ -0,0 +1,17 @@ +{ + lib, + config, + ... +}: +let + cfg = config.my.system.quem; +in +{ + options.my.system.quem = { + enable = lib.mkEnableOption "QEMU guest support"; + }; + + config = lib.mkIf cfg.enable { + services.qemuGuest.enable = true; + }; +} diff --git a/profiles/platforms/vm.nix b/profiles/platforms/vm.nix index f95077f..5871f89 100644 --- a/profiles/platforms/vm.nix +++ b/profiles/platforms/vm.nix @@ -1,4 +1,6 @@ { + my.system.quem.enable = true; + my.features = { boot.uefi.enable = true; storage.nfsClient.enable = true;