diff options
| author | Kumar Damani <me@kumardamani.net> | 2026-09-12 20:19:48 +0000 |
|---|---|---|
| committer | Kumar Damani <me@kumardamani.net> | 2026-09-12 20:19:48 +0000 |
| commit | 5d1f4f8d18effc7d32b6c4b6e6f05189f5e2e836 (patch) | |
| tree | c746d8cb023c303235a31838425d68fc0a743e57 | |
| parent | e8205ac38096ff6f32599f414caaf4d184f350dc (diff) | |
added new vm for photos, shrunk nc
| -rw-r--r-- | nix/per-host/photos/configuration.nix | 40 | ||||
| -rw-r--r-- | nix/secrets/photos.yaml | 1 | ||||
| -rwxr-xr-x | terraform/main.tf | 51 |
3 files changed, 90 insertions, 2 deletions
diff --git a/nix/per-host/photos/configuration.nix b/nix/per-host/photos/configuration.nix new file mode 100644 index 0000000..15f1953 --- /dev/null +++ b/nix/per-host/photos/configuration.nix @@ -0,0 +1,40 @@ +{ config, pkgs, modulesPath, lib, system, ... }: + +{ + config = { + sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; + sops.defaultSopsFile = ../../secrets/photos.yaml; + + networking.hostName = "photos"; + networking.firewall.allowedTCPPorts = [ 80 443 ]; + + hardware.graphics = { + enable = true; + }; + + hardware.nvidia = { + modesetting.enable = true; + nvidiaPersistenced = true; + powerManagement.enable = false; + powerManagement.finegrained = false; + open = false; + nvidiaSettings = true; + package = config.boot.kernelPackages.nvidiaPackages.legacy_580; + }; + + nixpkgs.config.allowUnfree = true; + + services.xserver.videoDrivers = [ "nvidia" ]; + + fileSystems = { + "/mnt/data/kumar/legacy-media" = { + device = "nas.bacala:/mnt/tank/customers/kumar/legacy-media"; + fsType = "nfs"; + }; + "/mnt/data/kumar/camera" = { + device = "nas.bacala:/mnt/tank/customers/kumar/phone/camera"; + fsType = "nfs"; + }; + }; + }; +} diff --git a/nix/secrets/photos.yaml b/nix/secrets/photos.yaml new file mode 100644 index 0000000..97ad87b --- /dev/null +++ b/nix/secrets/photos.yaml @@ -0,0 +1 @@ +foo: "bar" diff --git a/terraform/main.tf b/terraform/main.tf index cbe8159..a1e5219 100755 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -109,9 +109,9 @@ resource "proxmox_lxc" "nc_kumar" { ostemplate = "local:vztmpl/debian-12-standard_12.0-1_amd64.tar.zst" password = "${var.nc_kumar_password}" unprivileged = false - cores = 8 + cores = 4 cpulimit = 0 - memory = 12288 + memory = 6144 start = true onboot = true startup = "order=3" @@ -379,6 +379,42 @@ resource "proxmox_vm_qemu" "git" { slot = "virtio0" size = "10G" storage = "local-lvm" + format = "raw" + } + + network { + id = 0 + model = "virtio" + bridge = "vmbr1" + tag = 30 + mtu = 1420 + } +} + +resource "proxmox_vm_qemu" "photos" { + target_node = "hesh" + name = "photos" + memory = 8192 + start_at_node_boot = true + boot = "order=virtio0;net0" + clone_id = 104 + full_clone = true + scsihw = "virtio-scsi-single" + + startup_shutdown { + order = 4 + } + + cpu { + cores = 4 + } + + disk { + type = "disk" + slot = "virtio0" + size = "150G" + storage = "local-lvm" + format = "raw" } network { @@ -388,6 +424,17 @@ resource "proxmox_vm_qemu" "git" { tag = 30 mtu = 1420 } + + pcis { + pci0 { + # raw pass-through of our GPU + raw { + raw_id = "0000:01:00" + primary_gpu = false + rombar = true + } + } + } } moved { |
