summaryrefslogtreecommitdiff
path: root/nodes
diff options
context:
space:
mode:
Diffstat (limited to 'nodes')
-rw-r--r--nodes/snorlax/configuration.nix33
-rw-r--r--nodes/snorlax/disk-config.nix61
-rw-r--r--nodes/snorlax/facter.json3833
-rw-r--r--nodes/snorlax/git.nix128
-rw-r--r--nodes/snorlax/networking.nix47
-rw-r--r--nodes/snorlax/nginx.nix25
-rw-r--r--nodes/snorlax/samba.nix37
-rw-r--r--nodes/snorlax/syncoid.nix28
-rw-r--r--nodes/snorlax/uvm-guests/cpanel.nix62
-rw-r--r--nodes/snorlax/uvm-guests/default.nix4
-rw-r--r--nodes/tarrel/configuration.nix55
-rw-r--r--nodes/tarrel/hardware-configuration.nix40
-rw-r--r--nodes/tarrel/home-manager.nix45
-rw-r--r--nodes/work/configuration.nix55
-rw-r--r--nodes/work/hardware-configuration.nix41
-rw-r--r--nodes/work/home-manager.nix80
-rw-r--r--nodes/work/networking.nix87
-rw-r--r--nodes/work/secrets.nix13
18 files changed, 4674 insertions, 0 deletions
diff --git a/nodes/snorlax/configuration.nix b/nodes/snorlax/configuration.nix
new file mode 100644
index 0000000..743894e
--- /dev/null
+++ b/nodes/snorlax/configuration.nix
@@ -0,0 +1,33 @@
+{ inputs, lib, ... }:
+{
+ imports = [
+ inputs.home-manager.nixosModules.home-manager
+ inputs.agenix.nixosModules.default
+ inputs.disko.nixosModules.disko
+ inputs.nixos-facter-modules.nixosModules.facter
+
+ ./disk-config.nix
+ ./syncoid.nix
+ ./git.nix
+ ./samba.nix
+ ./nginx.nix
+ # ./uvm-guests
+ ./networking.nix
+
+ ../../modules/core
+ ];
+
+ system.stateVersion = "24.11";
+
+ facter.reportPath = ./facter.json;
+
+ boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+ boot.initrd.postDeviceCommands = lib.mkAfter ''
+ zfs rollback -r data/local/root@blank
+ '';
+
+ time.timeZone = "Europe/Amsterdam";
+
+ home-manager.users.jras = { home.stateVersion = "24.11"; };
+}
diff --git a/nodes/snorlax/disk-config.nix b/nodes/snorlax/disk-config.nix
new file mode 100644
index 0000000..39a9ccf
--- /dev/null
+++ b/nodes/snorlax/disk-config.nix
@@ -0,0 +1,61 @@
+{
+ disko.devices = {
+ disk = {
+ sda = {
+ device = "/dev/sda";
+ type = "disk";
+ content = {
+ type = "gpt";
+ partitions = {
+ ESP = {
+ type = "EF00";
+ size = "1G";
+ content = {
+ type = "filesystem";
+ format = "vfat";
+ mountpoint = "/boot";
+ mountOptions = [ "umask=0077" ];
+ };
+ };
+ zfs = {
+ size = "100%";
+ content = {
+ type = "zfs";
+ pool = "data";
+ };
+ };
+ };
+ };
+ };
+ };
+
+ zpool = {
+ data = {
+ type = "zpool";
+
+ rootFsOptions = {
+ compression = "zstd";
+ "com.sun:auto-snapshot" = "false";
+ };
+
+ datasets = {
+ "local/root" = {
+ type = "zfs_fs";
+ mountpoint = "/";
+ postCreateHook = "zfs list -t snap -H -o name | grep -E '^data/local/root@blank$' || zfs snapshot data/local/root@blank";
+ };
+
+ "local/nix" = {
+ type = "zfs_fs";
+ mountpoint = "/nix";
+ };
+
+ "safe/persist" = {
+ type = "zfs_fs";
+ mountpoint = "/persist";
+ };
+ };
+ };
+ };
+ };
+}
diff --git a/nodes/snorlax/facter.json b/nodes/snorlax/facter.json
new file mode 100644
index 0000000..572dc4c
--- /dev/null
+++ b/nodes/snorlax/facter.json
@@ -0,0 +1,3833 @@
+{
+ "version": 1,
+ "system": "x86_64-linux",
+ "virtualisation": "none",
+ "hardware": {
+ "bios": {
+ "apm_info": {
+ "supported": false,
+ "enabled": false,
+ "version": 0,
+ "sub_version": 0,
+ "bios_flags": 0
+ },
+ "vbe_info": {
+ "version": 0,
+ "video_memory": 0
+ },
+ "pnp": true,
+ "pnp_id": 0,
+ "lba_support": false,
+ "low_memory_size": 645120,
+ "smbios_version": 519
+ },
+ "bridge": [
+ {
+ "index": 9,
+ "attached_to": 0,
+ "class_list": [
+ "pci",
+ "bridge"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 31
+ },
+ "base_class": {
+ "hex": "0006",
+ "name": "Bridge",
+ "value": 6
+ },
+ "sub_class": {
+ "hex": "0001",
+ "name": "ISA bridge",
+ "value": 1
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e47",
+ "value": 7751
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel ISA bridge",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1f.0",
+ "sysfs_bus_id": "0000:00:1f.0",
+ "detail": {
+ "function": 0,
+ "command": 7,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 0,
+ "prog_if": 0
+ },
+ "driver": "lpc_ich",
+ "driver_module": "lpc_ich",
+ "drivers": [
+ "lpc_ich"
+ ],
+ "driver_modules": [
+ "lpc_ich"
+ ],
+ "module_alias": "pci:v00008086d00001E47sv00001028sd00000577bc06sc01i00"
+ },
+ {
+ "index": 14,
+ "attached_to": 0,
+ "class_list": [
+ "pci",
+ "bridge"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0006",
+ "name": "Bridge",
+ "value": 6
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Host bridge",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "0150",
+ "value": 336
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0009",
+ "value": 9
+ },
+ "model": "Intel Host bridge",
+ "sysfs_id": "/devices/pci0000:00/0000:00:00.0",
+ "sysfs_bus_id": "0000:00:00.0",
+ "detail": {
+ "function": 0,
+ "command": 6,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 0,
+ "prog_if": 0
+ },
+ "driver": "ivb_uncore",
+ "driver_module": "intel_uncore",
+ "drivers": [
+ "ivb_uncore"
+ ],
+ "driver_modules": [
+ "intel_uncore"
+ ],
+ "module_alias": "pci:v00008086d00000150sv00001028sd00000577bc06sc00i00"
+ }
+ ],
+ "cdrom": [
+ {
+ "index": 22,
+ "attached_to": 8,
+ "class_list": [
+ "cdrom",
+ "scsi",
+ "block_device"
+ ],
+ "bus_type": {
+ "hex": "0084",
+ "name": "SCSI",
+ "value": 132
+ },
+ "slot": {
+ "bus": 1,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0106",
+ "name": "Mass Storage Device",
+ "value": 262
+ },
+ "sub_class": {
+ "hex": "0002",
+ "name": "CD-ROM",
+ "value": 2
+ },
+ "pci_interface": {
+ "hex": "0003",
+ "name": "DVD",
+ "value": 3
+ },
+ "vendor": {
+ "hex": "0000",
+ "name": "TSSTcorp",
+ "value": 0
+ },
+ "device": {
+ "hex": "0000",
+ "name": "DVD-ROM SN-108BB",
+ "value": 0
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "D200",
+ "value": 0
+ },
+ "model": "TSSTcorp DVD-ROM SN-108BB",
+ "sysfs_id": "/class/block/sr0",
+ "sysfs_bus_id": "1:0:0:0",
+ "sysfs_device_link": "/devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0",
+ "unix_device_name": "/dev/sr0",
+ "unix_device_number": {
+ "type": 98,
+ "major": 11,
+ "minor": 0,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/cdrom",
+ "/dev/disk/by-diskseq/11",
+ "/dev/disk/by-id/ata-TSSTcorp_DVD-ROM_SN-108BB_R8N96GKD100791",
+ "/dev/disk/by-path/pci-0000:00:1f.2-ata-2",
+ "/dev/disk/by-path/pci-0000:00:1f.2-ata-2.0",
+ "/dev/sr0"
+ ],
+ "unix_device_name2": "/dev/sg1",
+ "unix_device_number2": {
+ "type": 99,
+ "major": 21,
+ "minor": 1,
+ "range": 1
+ },
+ "driver": "ahci",
+ "driver_module": "ahci",
+ "drivers": [
+ "ahci",
+ "sr"
+ ],
+ "driver_modules": [
+ "ahci",
+ "sr_mod"
+ ]
+ }
+ ],
+ "cpu": [
+ {
+ "architecture": "x86_64",
+ "vendor_name": "GenuineIntel",
+ "family": 6,
+ "model": 58,
+ "stepping": 9,
+ "features": [
+ "fpu",
+ "vme",
+ "de",
+ "pse",
+ "tsc",
+ "msr",
+ "pae",
+ "mce",
+ "cx8",
+ "apic",
+ "sep",
+ "mtrr",
+ "pge",
+ "mca",
+ "cmov",
+ "pat",
+ "pse36",
+ "clflush",
+ "dts",
+ "acpi",
+ "mmx",
+ "fxsr",
+ "sse",
+ "sse2",
+ "ss",
+ "ht",
+ "tm",
+ "pbe",
+ "syscall",
+ "nx",
+ "rdtscp",
+ "lm",
+ "constant_tsc",
+ "arch_perfmon",
+ "pebs",
+ "bts",
+ "rep_good",
+ "nopl",
+ "xtopology",
+ "nonstop_tsc",
+ "cpuid",
+ "aperfmperf",
+ "pni",
+ "pclmulqdq",
+ "dtes64",
+ "monitor",
+ "ds_cpl",
+ "vmx",
+ "smx",
+ "est",
+ "tm2",
+ "ssse3",
+ "cx16",
+ "xtpr",
+ "pdcm",
+ "pcid",
+ "sse4_1",
+ "sse4_2",
+ "x2apic",
+ "popcnt",
+ "tsc_deadline_timer",
+ "aes",
+ "xsave",
+ "avx",
+ "f16c",
+ "rdrand",
+ "lahf_lm",
+ "cpuid_fault",
+ "epb",
+ "pti",
+ "tpr_shadow",
+ "flexpriority",
+ "ept",
+ "vpid",
+ "fsgsbase",
+ "smep",
+ "erms",
+ "xsaveopt",
+ "dtherm",
+ "ida",
+ "arat",
+ "pln",
+ "pts",
+ "vnmi"
+ ],
+ "bugs": [
+ "cpu_meltdown",
+ "spectre_v1",
+ "spectre_v2",
+ "spec_store_bypass",
+ "l1tf",
+ "mds",
+ "swapgs",
+ "itlb_multihit",
+ "srbds",
+ "mmio_unknown"
+ ],
+ "bogo": 6185.66,
+ "cache": 6144,
+ "units": 16,
+ "physical_id": 0,
+ "siblings": 4,
+ "cores": 4,
+ "fpu": true,
+ "fpu_exception": true,
+ "cpuid_level": 13,
+ "write_protect": false,
+ "clflush_size": 64,
+ "cache_alignment": 64,
+ "address_sizes": {
+ "physical": 36,
+ "virtual": 48
+ }
+ }
+ ],
+ "disk": [
+ {
+ "index": 21,
+ "attached_to": 18,
+ "class_list": [
+ "disk",
+ "usb",
+ "scsi",
+ "block_device"
+ ],
+ "bus_type": {
+ "hex": "0084",
+ "name": "SCSI",
+ "value": 132
+ },
+ "slot": {
+ "bus": 6,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0106",
+ "name": "Mass Storage Device",
+ "value": 262
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Disk",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "058f",
+ "name": "Multiple",
+ "value": 1423
+ },
+ "device": {
+ "hex": "6366",
+ "name": "Card Reader",
+ "value": 25446
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "1.00",
+ "value": 0
+ },
+ "serial": "058F63666438",
+ "model": "Multiple Card Reader",
+ "sysfs_id": "/class/block/sdb",
+ "sysfs_bus_id": "6:0:0:0",
+ "sysfs_device_link": "/devices/pci0000:00/0000:00:14.0/usb3/3-2/3-2:1.0/host6/target6:0:0/6:0:0:0",
+ "unix_device_name": "/dev/sdb",
+ "unix_device_number": {
+ "type": 98,
+ "major": 8,
+ "minor": 16,
+ "range": 16
+ },
+ "unix_device_names": [
+ "/dev/disk/by-diskseq/12",
+ "/dev/disk/by-id/usb-Multiple_Card_Reader_058F63666438-0:0",
+ "/dev/disk/by-path/pci-0000:00:14.0-usb-0:2:1.0-scsi-0:0:0:0",
+ "/dev/disk/by-path/pci-0000:00:14.0-usbv2-0:2:1.0-scsi-0:0:0:0",
+ "/dev/sdb"
+ ],
+ "unix_device_name2": "/dev/sg2",
+ "unix_device_number2": {
+ "type": 99,
+ "major": 21,
+ "minor": 2,
+ "range": 1
+ },
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ },
+ {
+ "type": "disk_geo",
+ "cylinders": 1016,
+ "heads": 124,
+ "sectors": 62,
+ "size": 0,
+ "geo_type": "logical"
+ },
+ {
+ "type": "size",
+ "unit": "sectors",
+ "value_1": 7815168,
+ "value_2": 512
+ }
+ ],
+ "driver": "usb-storage",
+ "driver_module": "usb_storage",
+ "drivers": [
+ "sd",
+ "usb-storage"
+ ],
+ "driver_modules": [
+ "sd_mod",
+ "usb_storage"
+ ],
+ "module_alias": "usb:v058Fp6366d0100dc00dsc00dp00ic08isc06ip50in00"
+ },
+ {
+ "index": 23,
+ "attached_to": 8,
+ "class_list": [
+ "disk",
+ "ide",
+ "block_device"
+ ],
+ "bus_type": {
+ "hex": "0085",
+ "name": "IDE",
+ "value": 133
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0106",
+ "name": "Mass Storage Device",
+ "value": 262
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Disk",
+ "value": 0
+ },
+ "device": {
+ "hex": "0000",
+ "name": "ST500LX003-1AC15",
+ "value": 0
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "DEM4",
+ "value": 0
+ },
+ "serial": "W200Q36M",
+ "model": "ST500LX003-1AC15",
+ "sysfs_id": "/class/block/sda",
+ "sysfs_bus_id": "0:0:0:0",
+ "sysfs_device_link": "/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0",
+ "unix_device_name": "/dev/sda",
+ "unix_device_number": {
+ "type": 98,
+ "major": 8,
+ "minor": 0,
+ "range": 16
+ },
+ "unix_device_names": [
+ "/dev/disk/by-diskseq/9",
+ "/dev/disk/by-id/ata-ST500LX003-1AC15G_W200Q36M",
+ "/dev/disk/by-id/wwn-0x5000c5005e35781a",
+ "/dev/disk/by-path/pci-0000:00:1f.2-ata-1",
+ "/dev/disk/by-path/pci-0000:00:1f.2-ata-1.0",
+ "/dev/sda"
+ ],
+ "resources": [
+ {
+ "type": "disk_geo",
+ "cylinders": 60801,
+ "heads": 255,
+ "sectors": 63,
+ "size": 0,
+ "geo_type": "logical"
+ },
+ {
+ "type": "size",
+ "unit": "sectors",
+ "value_1": 976773168,
+ "value_2": 512
+ }
+ ],
+ "driver": "ahci",
+ "driver_module": "ahci",
+ "drivers": [
+ "ahci",
+ "sd"
+ ],
+ "driver_modules": [
+ "ahci",
+ "sd_mod"
+ ]
+ }
+ ],
+ "graphics_card": [
+ {
+ "index": 17,
+ "attached_to": 0,
+ "class_list": [
+ "graphics_card",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 2
+ },
+ "base_class": {
+ "hex": "0003",
+ "name": "Display controller",
+ "value": 3
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "VGA compatible controller",
+ "value": 0
+ },
+ "pci_interface": {
+ "hex": "0000",
+ "name": "VGA",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "0152",
+ "value": 338
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0009",
+ "value": 9
+ },
+ "model": "Intel VGA compatible controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:02.0",
+ "sysfs_bus_id": "0000:00:02.0",
+ "resources": [
+ {
+ "type": "io",
+ "base": 61440,
+ "range": 64,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "irq",
+ "base": 32,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 3758096384,
+ "range": 268435456,
+ "enabled": true,
+ "access": "read_only",
+ "prefetch": "no"
+ },
+ {
+ "type": "mem",
+ "base": 4152360960,
+ "range": 4194304,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ },
+ {
+ "type": "mem",
+ "base": 786432,
+ "range": 131072,
+ "enabled": false,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 1031,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 32,
+ "prog_if": 0
+ },
+ "driver": "i915",
+ "driver_module": "i915",
+ "drivers": [
+ "i915"
+ ],
+ "driver_modules": [
+ "i915"
+ ],
+ "module_alias": "pci:v00008086d00000152sv00001028sd00000577bc03sc00i00",
+ "label": "Onboard IGD"
+ }
+ ],
+ "hub": [
+ {
+ "index": 24,
+ "attached_to": 27,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "1a40",
+ "value": 6720
+ },
+ "device": {
+ "hex": "0101",
+ "name": "USB 2.0 Hub",
+ "value": 257
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "1.11",
+ "value": 0
+ },
+ "model": "USB 2.0 Hub",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3:1.0",
+ "sysfs_bus_id": "3-3:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 1,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v1A40p0101d0111dc09dsc00dp01ic09isc00ip00in00"
+ },
+ {
+ "index": 26,
+ "attached_to": 38,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "8087",
+ "value": 32903
+ },
+ "device": {
+ "hex": "0024",
+ "value": 36
+ },
+ "model": "Hub",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1:1.0",
+ "sysfs_bus_id": "2-1:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 1,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v8087p0024d0000dc09dsc00dp01ic09isc00ip00in00"
+ },
+ {
+ "index": 27,
+ "attached_to": 18,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "1d6b",
+ "name": "Linux 6.12.11 xhci-hcd",
+ "value": 7531
+ },
+ "device": {
+ "hex": "0002",
+ "name": "xHCI Host Controller",
+ "value": 2
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "6.12",
+ "value": 0
+ },
+ "serial": "0000:00:14.0",
+ "model": "Linux 6.12.11 xhci-hcd xHCI Host Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-0:1.0",
+ "sysfs_bus_id": "3-0:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 1,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v1D6Bp0002d0612dc09dsc00dp01ic09isc00ip00in00"
+ },
+ {
+ "index": 30,
+ "attached_to": 18,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "1d6b",
+ "name": "Linux 6.12.11 xhci-hcd",
+ "value": 7531
+ },
+ "device": {
+ "hex": "0003",
+ "name": "xHCI Host Controller",
+ "value": 3
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "6.12",
+ "value": 0
+ },
+ "serial": "0000:00:14.0",
+ "model": "Linux 6.12.11 xhci-hcd xHCI Host Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb4/4-0:1.0",
+ "sysfs_bus_id": "4-0:1.0",
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 3,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v1D6Bp0003d0612dc09dsc00dp03ic09isc00ip00in00"
+ },
+ {
+ "index": 33,
+ "attached_to": 15,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "1d6b",
+ "name": "Linux 6.12.11 ehci_hcd",
+ "value": 7531
+ },
+ "device": {
+ "hex": "0002",
+ "name": "EHCI Host Controller",
+ "value": 2
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "6.12",
+ "value": 0
+ },
+ "serial": "0000:00:1a.0",
+ "model": "Linux 6.12.11 ehci_hcd EHCI Host Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1a.0/usb1/1-0:1.0",
+ "sysfs_bus_id": "1-0:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v1D6Bp0002d0612dc09dsc00dp00ic09isc00ip00in00"
+ },
+ {
+ "index": 37,
+ "attached_to": 33,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "8087",
+ "value": 32903
+ },
+ "device": {
+ "hex": "0024",
+ "value": 36
+ },
+ "model": "Hub",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0",
+ "sysfs_bus_id": "1-1:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 1,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v8087p0024d0000dc09dsc00dp01ic09isc00ip00in00"
+ },
+ {
+ "index": 38,
+ "attached_to": 16,
+ "class_list": [
+ "usb",
+ "hub"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "010a",
+ "name": "Hub",
+ "value": 266
+ },
+ "vendor": {
+ "hex": "1d6b",
+ "name": "Linux 6.12.11 ehci_hcd",
+ "value": 7531
+ },
+ "device": {
+ "hex": "0002",
+ "name": "EHCI Host Controller",
+ "value": 2
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "6.12",
+ "value": 0
+ },
+ "serial": "0000:00:1d.0",
+ "model": "Linux 6.12.11 ehci_hcd EHCI Host Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1d.0/usb2/2-0:1.0",
+ "sysfs_bus_id": "2-0:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 480000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0009",
+ "name": "hub",
+ "value": 9
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "hub",
+ "drivers": [
+ "hub"
+ ],
+ "module_alias": "usb:v1D6Bp0002d0612dc09dsc00dp00ic09isc00ip00in00"
+ }
+ ],
+ "keyboard": [
+ {
+ "index": 36,
+ "attached_to": 24,
+ "class_list": [
+ "keyboard",
+ "usb"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0108",
+ "name": "Keyboard",
+ "value": 264
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Keyboard",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "046d",
+ "name": "Logitech Inc.",
+ "value": 1133
+ },
+ "device": {
+ "hex": "c52b",
+ "name": "USB Receiver",
+ "value": 50475
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "24.11",
+ "value": 0
+ },
+ "model": "Logitech USB Receiver",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.0",
+ "sysfs_bus_id": "3-3.4:1.0",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0001",
+ "name": "audio",
+ "value": 1
+ },
+ "interface_protocol": 1,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "driver_info": {
+ "type": "keyboard",
+ "xkb_rules": "xfree86",
+ "xkb_model": "pc104"
+ },
+ "module_alias": "usb:v046DpC52Bd2411dc00dsc00dp00ic03isc01ip01in00"
+ }
+ ],
+ "memory": [
+ {
+ "index": 7,
+ "attached_to": 0,
+ "class_list": [
+ "memory"
+ ],
+ "base_class": {
+ "hex": "0101",
+ "name": "Internally Used Class",
+ "value": 257
+ },
+ "sub_class": {
+ "hex": "0002",
+ "name": "Main Memory",
+ "value": 2
+ },
+ "model": "Main Memory",
+ "resources": [
+ {
+ "type": "mem",
+ "base": 0,
+ "range": 3991175168,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "unknown"
+ },
+ {
+ "type": "phys_mem",
+ "range": 4026531840
+ }
+ ]
+ }
+ ],
+ "monitor": [
+ {
+ "index": 19,
+ "attached_to": 17,
+ "class_list": [
+ "monitor"
+ ],
+ "base_class": {
+ "hex": "0100",
+ "name": "Monitor",
+ "value": 256
+ },
+ "sub_class": {
+ "hex": "0002",
+ "name": "LCD Monitor",
+ "value": 2
+ },
+ "vendor": {
+ "hex": "0469",
+ "value": 1129
+ },
+ "device": {
+ "hex": "3433",
+ "name": "ROG PG348Q",
+ "value": 13363
+ },
+ "serial": "#ASMyP5gZbYPd",
+ "model": "ROG PG348Q",
+ "resources": [
+ {
+ "type": "monitor",
+ "width": 1024,
+ "height": 768,
+ "vertical_frequency": 60,
+ "interlaced": false
+ },
+ {
+ "type": "monitor",
+ "width": 3440,
+ "height": 1440,
+ "vertical_frequency": 60,
+ "interlaced": false
+ },
+ {
+ "type": "monitor",
+ "width": 640,
+ "height": 480,
+ "vertical_frequency": 60,
+ "interlaced": false
+ },
+ {
+ "type": "monitor",
+ "width": 800,
+ "height": 600,
+ "vertical_frequency": 60,
+ "interlaced": false
+ },
+ {
+ "type": "size",
+ "unit": "mm",
+ "value_1": 798,
+ "value_2": 335
+ }
+ ],
+ "detail": {
+ "manufacture_year": 2016,
+ "manufacture_week": 26,
+ "vertical_sync": {
+ "min": 30,
+ "max": 100
+ },
+ "horizontal_sync": {
+ "min": 73,
+ "max": 151
+ },
+ "horizontal_sync_timings": {
+ "disp": 3440,
+ "sync_start": 3488,
+ "sync_end": 3520,
+ "total": 3600
+ },
+ "vertical_sync_timings": {
+ "disp": 1440,
+ "sync_start": 1443,
+ "sync_end": 1453,
+ "total": 1481
+ },
+ "clock": 319750,
+ "width": 3440,
+ "height": 1440,
+ "width_millimetres": 798,
+ "height_millimetres": 335,
+ "horizontal_flag": 45,
+ "vertical_flag": 43,
+ "vendor": "",
+ "name": "ROG PG348Q"
+ },
+ "driver_info": {
+ "type": "display",
+ "width": 3440,
+ "height": 1440,
+ "vertical_sync": {
+ "min": 30,
+ "max": 100
+ },
+ "horizontal_sync": {
+ "min": 73,
+ "max": 151
+ },
+ "bandwidth": 0,
+ "horizontal_sync_timings": {
+ "disp": 3440,
+ "sync_start": 3488,
+ "sync_end": 3520,
+ "total": 3600
+ },
+ "vertical_sync_timings": {
+ "disp": 1440,
+ "sync_start": 1443,
+ "sync_end": 1453,
+ "total": 1481
+ },
+ "horizontal_flag": 45,
+ "vertical_flag": 43
+ }
+ }
+ ],
+ "mouse": [
+ {
+ "index": 28,
+ "attached_to": 24,
+ "class_list": [
+ "mouse",
+ "usb"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0105",
+ "name": "Mouse",
+ "value": 261
+ },
+ "sub_class": {
+ "hex": "0003",
+ "name": "USB Mouse",
+ "value": 3
+ },
+ "vendor": {
+ "hex": "046d",
+ "name": "Logitech Inc.",
+ "value": 1133
+ },
+ "device": {
+ "hex": "c52b",
+ "name": "USB Receiver",
+ "value": 50475
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "24.11",
+ "value": 0
+ },
+ "compat_vendor": "Unknown",
+ "compat_device": "Generic USB Mouse",
+ "model": "Logitech USB Receiver",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.1",
+ "sysfs_bus_id": "3-3.4:1.1",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0001",
+ "name": "audio",
+ "value": 1
+ },
+ "interface_protocol": 2,
+ "interface_number": 1,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "driver_info": {
+ "type": "mouse",
+ "db_entry_0": [
+ "explorerps/2",
+ "exps2"
+ ],
+ "xf86": "explorerps/2",
+ "gpm": "exps2",
+ "buttons": -1,
+ "wheels": -1
+ },
+ "module_alias": "usb:v046DpC52Bd2411dc00dsc00dp00ic03isc01ip02in01"
+ },
+ {
+ "index": 31,
+ "attached_to": 24,
+ "class_list": [
+ "mouse",
+ "usb"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0105",
+ "name": "Mouse",
+ "value": 261
+ },
+ "sub_class": {
+ "hex": "0003",
+ "name": "USB Mouse",
+ "value": 3
+ },
+ "vendor": {
+ "hex": "3233",
+ "name": "Ducky",
+ "value": 12851
+ },
+ "device": {
+ "hex": "5311",
+ "name": "Ducky One 3 SF RGB",
+ "value": 21265
+ },
+ "serial": "DK-V1.11-220819",
+ "compat_vendor": "Unknown",
+ "compat_device": "Generic USB Mouse",
+ "model": "Ducky One 3 SF RGB",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.3/3-3.3:1.2",
+ "sysfs_bus_id": "3-3.3:1.2",
+ "unix_device_name": "/dev/input/mice",
+ "unix_device_number": {
+ "type": 99,
+ "major": 13,
+ "minor": 63,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/input/mice"
+ ],
+ "unix_device_name2": "/dev/input/mouse0",
+ "unix_device_number2": {
+ "type": 99,
+ "major": 13,
+ "minor": 32,
+ "range": 1
+ },
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 2,
+ "interface_number": 2,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "driver_info": {
+ "type": "mouse",
+ "db_entry_0": [
+ "explorerps/2",
+ "exps2"
+ ],
+ "xf86": "explorerps/2",
+ "gpm": "exps2",
+ "buttons": -1,
+ "wheels": -1
+ },
+ "module_alias": "usb:v3233p5311d0000dc00dsc00dp00ic03isc00ip02in02"
+ }
+ ],
+ "network_controller": [
+ {
+ "index": 12,
+ "attached_to": 0,
+ "class_list": [
+ "network_controller",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 25
+ },
+ "base_class": {
+ "hex": "0002",
+ "name": "Network controller",
+ "value": 2
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Ethernet controller",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1502",
+ "value": 5378
+ },
+ "sub_device": {
+ "hex": "052c",
+ "value": 1324
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel Ethernet controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:19.0",
+ "sysfs_bus_id": "0000:00:19.0",
+ "unix_device_name": "eno1",
+ "unix_device_names": [
+ "eno1"
+ ],
+ "resources": [
+ {
+ "type": "hwaddr",
+ "address": 57
+ },
+ {
+ "type": "io",
+ "base": 61568,
+ "range": 32,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "irq",
+ "base": 31,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156555264,
+ "range": 131072,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ },
+ {
+ "type": "mem",
+ "base": 4156788736,
+ "range": 4096,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ },
+ {
+ "type": "phwaddr",
+ "address": 57
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 1031,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 31,
+ "prog_if": 0
+ },
+ "driver": "e1000e",
+ "driver_module": "e1000e",
+ "drivers": [
+ "e1000e"
+ ],
+ "driver_modules": [
+ "e1000e"
+ ],
+ "module_alias": "pci:v00008086d00001502sv00001028sd0000052Cbc02sc00i00",
+ "label": "Onboard LAN"
+ }
+ ],
+ "network_interface": [
+ {
+ "index": 40,
+ "attached_to": 12,
+ "class_list": [
+ "network_interface"
+ ],
+ "base_class": {
+ "hex": "0107",
+ "name": "Network Interface",
+ "value": 263
+ },
+ "sub_class": {
+ "hex": "0001",
+ "name": "Ethernet",
+ "value": 1
+ },
+ "model": "Ethernet network interface",
+ "sysfs_id": "/class/net/eno1",
+ "sysfs_device_link": "/devices/pci0000:00/0000:00:19.0",
+ "unix_device_name": "eno1",
+ "unix_device_names": [
+ "eno1"
+ ],
+ "resources": [
+ {
+ "type": "hwaddr",
+ "address": 57
+ },
+ {
+ "type": "phwaddr",
+ "address": 57
+ }
+ ],
+ "driver": "e1000e",
+ "driver_module": "e1000e",
+ "drivers": [
+ "e1000e"
+ ],
+ "driver_modules": [
+ "e1000e"
+ ]
+ },
+ {
+ "index": 41,
+ "attached_to": 0,
+ "class_list": [
+ "network_interface"
+ ],
+ "base_class": {
+ "hex": "0107",
+ "name": "Network Interface",
+ "value": 263
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Loopback",
+ "value": 0
+ },
+ "model": "Loopback network interface",
+ "sysfs_id": "/class/net/lo",
+ "unix_device_name": "lo",
+ "unix_device_names": [
+ "lo"
+ ]
+ }
+ ],
+ "pci": [
+ {
+ "index": 10,
+ "attached_to": 0,
+ "class_list": [
+ "pci",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 22
+ },
+ "base_class": {
+ "hex": "0007",
+ "name": "Communication controller",
+ "value": 7
+ },
+ "sub_class": {
+ "hex": "0080",
+ "name": "Communication controller",
+ "value": 128
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e3a",
+ "value": 7738
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel Communication controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:16.0",
+ "sysfs_bus_id": "0000:00:16.0",
+ "resources": [
+ {
+ "type": "irq",
+ "base": 30,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156801024,
+ "range": 16,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 1030,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 30,
+ "prog_if": 0
+ },
+ "driver": "mei_me",
+ "driver_module": "mei_me",
+ "drivers": [
+ "mei_me"
+ ],
+ "driver_modules": [
+ "mei_me"
+ ],
+ "module_alias": "pci:v00008086d00001E3Asv00001028sd00000577bc07sc80i00"
+ },
+ {
+ "index": 13,
+ "attached_to": 0,
+ "class_list": [
+ "pci",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 31
+ },
+ "base_class": {
+ "hex": "000c",
+ "name": "Serial bus controller",
+ "value": 12
+ },
+ "sub_class": {
+ "hex": "0005",
+ "name": "SMBus",
+ "value": 5
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e22",
+ "value": 7714
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel SMBus",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1f.3",
+ "sysfs_bus_id": "0000:00:1f.3",
+ "resources": [
+ {
+ "type": "io",
+ "base": 61504,
+ "range": 32,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "irq",
+ "base": 18,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156772352,
+ "range": 256,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 3,
+ "command": 3,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 18,
+ "prog_if": 0
+ },
+ "driver": "i801_smbus",
+ "driver_module": "i2c_i801",
+ "drivers": [
+ "i801_smbus"
+ ],
+ "driver_modules": [
+ "i2c_i801"
+ ],
+ "module_alias": "pci:v00008086d00001E22sv00001028sd00000577bc0Csc05i00"
+ }
+ ],
+ "sound": [
+ {
+ "index": 11,
+ "attached_to": 0,
+ "class_list": [
+ "sound",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 27
+ },
+ "base_class": {
+ "hex": "0004",
+ "name": "Multimedia controller",
+ "value": 4
+ },
+ "sub_class": {
+ "hex": "0003",
+ "value": 3
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e20",
+ "value": 7712
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel Multimedia controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1b.0",
+ "sysfs_bus_id": "0000:00:1b.0",
+ "resources": [
+ {
+ "type": "irq",
+ "base": 33,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156751872,
+ "range": 16384,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 1030,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 33,
+ "prog_if": 0
+ },
+ "driver": "snd_hda_intel",
+ "driver_module": "snd_hda_intel",
+ "drivers": [
+ "snd_hda_intel"
+ ],
+ "driver_modules": [
+ "snd_hda_intel"
+ ],
+ "module_alias": "pci:v00008086d00001E20sv00001028sd00000577bc04sc03i00"
+ }
+ ],
+ "storage_controller": [
+ {
+ "index": 8,
+ "attached_to": 0,
+ "class_list": [
+ "storage_controller",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 31
+ },
+ "base_class": {
+ "hex": "0001",
+ "name": "Mass storage controller",
+ "value": 1
+ },
+ "sub_class": {
+ "hex": "0006",
+ "value": 6
+ },
+ "pci_interface": {
+ "hex": "0001",
+ "value": 1
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e02",
+ "value": 7682
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel Mass storage controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1f.2",
+ "sysfs_bus_id": "0000:00:1f.2",
+ "resources": [
+ {
+ "type": "io",
+ "base": 61536,
+ "range": 32,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "io",
+ "base": 61600,
+ "range": 4,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "io",
+ "base": 61616,
+ "range": 8,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "io",
+ "base": 61632,
+ "range": 4,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "io",
+ "base": 61648,
+ "range": 8,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "irq",
+ "base": 29,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156776448,
+ "range": 2048,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 2,
+ "command": 1031,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 29,
+ "prog_if": 1
+ },
+ "driver": "ahci",
+ "driver_module": "ahci",
+ "drivers": [
+ "ahci"
+ ],
+ "driver_modules": [
+ "ahci"
+ ],
+ "module_alias": "pci:v00008086d00001E02sv00001028sd00000577bc01sc06i01"
+ }
+ ],
+ "system": {
+ "form_factor": "desktop"
+ },
+ "unknown": [
+ {
+ "index": 20,
+ "attached_to": 0,
+ "class_list": [
+ "unknown"
+ ],
+ "base_class": {
+ "hex": "0007",
+ "name": "Communication controller",
+ "value": 7
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Serial controller",
+ "value": 0
+ },
+ "pci_interface": {
+ "hex": "0002",
+ "name": "16550",
+ "value": 2
+ },
+ "device": {
+ "hex": "0000",
+ "name": "16550A",
+ "value": 0
+ },
+ "model": "16550A",
+ "unix_device_name": "/dev/ttyS0",
+ "unix_device_names": [
+ "/dev/ttyS0"
+ ],
+ "resources": [
+ {
+ "type": "io",
+ "base": 1016,
+ "range": 0,
+ "enabled": true,
+ "access": "read_write"
+ },
+ {
+ "type": "irq",
+ "base": 4,
+ "triggered": 0,
+ "enabled": true
+ }
+ ]
+ }
+ ],
+ "usb": [
+ {
+ "index": 25,
+ "attached_to": 24,
+ "class_list": [
+ "usb",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "3233",
+ "name": "Ducky",
+ "value": 12851
+ },
+ "device": {
+ "hex": "5311",
+ "name": "Ducky One 3 SF RGB",
+ "value": 21265
+ },
+ "serial": "DK-V1.11-220819",
+ "model": "Ducky One 3 SF RGB",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.3/3-3.3:1.1",
+ "sysfs_bus_id": "3-3.3:1.1",
+ "unix_device_name": "/dev/input/event1",
+ "unix_device_number": {
+ "type": 99,
+ "major": 13,
+ "minor": 65,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/input/by-id/usb-Ducky_Ducky_One_3_SF_RGB_DK-V1.11-220819-if01-event-kbd",
+ "/dev/input/by-path/pci-0000:00:14.0-usb-0:3.3:1.1-event-kbd",
+ "/dev/input/by-path/pci-0000:00:14.0-usbv2-0:3.3:1.1-event-kbd",
+ "/dev/input/event1"
+ ],
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 1,
+ "interface_number": 1,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "module_alias": "usb:v3233p5311d0000dc00dsc00dp00ic03isc00ip01in01"
+ },
+ {
+ "index": 29,
+ "attached_to": 24,
+ "class_list": [
+ "usb",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "3233",
+ "name": "Ducky",
+ "value": 12851
+ },
+ "device": {
+ "hex": "5311",
+ "name": "Ducky One 3 SF RGB",
+ "value": 21265
+ },
+ "serial": "DK-V1.11-220819",
+ "model": "Ducky One 3 SF RGB",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.3/3-3.3:1.4",
+ "sysfs_bus_id": "3-3.3:1.4",
+ "unix_device_name": "/dev/input/event4",
+ "unix_device_number": {
+ "type": 99,
+ "major": 13,
+ "minor": 68,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/input/by-id/usb-Ducky_Ducky_One_3_SF_RGB_DK-V1.11-220819-event-if04",
+ "/dev/input/by-path/pci-0000:00:14.0-usb-0:3.3:1.4-event",
+ "/dev/input/by-path/pci-0000:00:14.0-usbv2-0:3.3:1.4-event",
+ "/dev/input/event4"
+ ],
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 4,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "module_alias": "usb:v3233p5311d0000dc00dsc00dp00ic03isc00ip00in04"
+ },
+ {
+ "index": 32,
+ "attached_to": 24,
+ "class_list": [
+ "usb",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "3233",
+ "name": "Ducky",
+ "value": 12851
+ },
+ "device": {
+ "hex": "5311",
+ "name": "Ducky One 3 SF RGB",
+ "value": 21265
+ },
+ "serial": "DK-V1.11-220819",
+ "model": "Ducky One 3 SF RGB",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.3/3-3.3:1.0",
+ "sysfs_bus_id": "3-3.3:1.0",
+ "unix_device_name": "/dev/input/js0",
+ "unix_device_number": {
+ "type": 99,
+ "major": 13,
+ "minor": 0,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/input/by-id/usb-Ducky_Ducky_One_3_SF_RGB_DK-V1.11-220819-joystick",
+ "/dev/input/by-path/pci-0000:00:14.0-usb-0:3.3:1.0-joystick",
+ "/dev/input/by-path/pci-0000:00:14.0-usbv2-0:3.3:1.0-joystick",
+ "/dev/input/js0"
+ ],
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 0,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "module_alias": "usb:v3233p5311d0000dc00dsc00dp00ic03isc00ip00in00"
+ },
+ {
+ "index": 35,
+ "attached_to": 24,
+ "class_list": [
+ "usb",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "046d",
+ "name": "Logitech Inc.",
+ "value": 1133
+ },
+ "device": {
+ "hex": "c52b",
+ "name": "USB Receiver",
+ "value": 50475
+ },
+ "revision": {
+ "hex": "0000",
+ "name": "24.11",
+ "value": 0
+ },
+ "model": "Logitech USB Receiver",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.4/3-3.4:1.2",
+ "sysfs_bus_id": "3-3.4:1.2",
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 0,
+ "interface_number": 2,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "module_alias": "usb:v046DpC52Bd2411dc00dsc00dp00ic03isc00ip00in02"
+ },
+ {
+ "index": 39,
+ "attached_to": 24,
+ "class_list": [
+ "usb",
+ "unknown"
+ ],
+ "bus_type": {
+ "hex": "0086",
+ "name": "USB",
+ "value": 134
+ },
+ "slot": {
+ "bus": 0,
+ "number": 0
+ },
+ "base_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "sub_class": {
+ "hex": "0000",
+ "name": "Unclassified device",
+ "value": 0
+ },
+ "vendor": {
+ "hex": "3233",
+ "name": "Ducky",
+ "value": 12851
+ },
+ "device": {
+ "hex": "5311",
+ "name": "Ducky One 3 SF RGB",
+ "value": 21265
+ },
+ "serial": "DK-V1.11-220819",
+ "model": "Ducky One 3 SF RGB",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3.3/3-3.3:1.3",
+ "sysfs_bus_id": "3-3.3:1.3",
+ "unix_device_name": "/dev/input/event3",
+ "unix_device_number": {
+ "type": 99,
+ "major": 13,
+ "minor": 67,
+ "range": 1
+ },
+ "unix_device_names": [
+ "/dev/input/by-id/usb-Ducky_Ducky_One_3_SF_RGB_DK-V1.11-220819-if03-event-kbd",
+ "/dev/input/by-path/pci-0000:00:14.0-usb-0:3.3:1.3-event-kbd",
+ "/dev/input/by-path/pci-0000:00:14.0-usbv2-0:3.3:1.3-event-kbd",
+ "/dev/input/event3"
+ ],
+ "resources": [
+ {
+ "type": "baud",
+ "speed": 12000000,
+ "bits": 0,
+ "stop_bits": 0,
+ "parity": 0,
+ "handshake": 0
+ }
+ ],
+ "detail": {
+ "device_class": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "device_protocol": 0,
+ "interface_class": {
+ "hex": "0003",
+ "name": "hid",
+ "value": 3
+ },
+ "interface_subclass": {
+ "hex": "0000",
+ "name": "per_interface",
+ "value": 0
+ },
+ "interface_protocol": 1,
+ "interface_number": 3,
+ "interface_alternate_setting": 0
+ },
+ "hotplug": "usb",
+ "driver": "usbhid",
+ "driver_module": "usbhid",
+ "drivers": [
+ "usbhid"
+ ],
+ "driver_modules": [
+ "usbhid"
+ ],
+ "module_alias": "usb:v3233p5311d0000dc00dsc00dp00ic03isc00ip01in03"
+ }
+ ],
+ "usb_controller": [
+ {
+ "index": 15,
+ "attached_to": 0,
+ "class_list": [
+ "usb_controller",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 26
+ },
+ "base_class": {
+ "hex": "000c",
+ "name": "Serial bus controller",
+ "value": 12
+ },
+ "sub_class": {
+ "hex": "0003",
+ "name": "USB Controller",
+ "value": 3
+ },
+ "pci_interface": {
+ "hex": "0020",
+ "name": "EHCI",
+ "value": 32
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e2d",
+ "value": 7725
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel USB Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1a.0",
+ "sysfs_bus_id": "0000:00:1a.0",
+ "resources": [
+ {
+ "type": "irq",
+ "base": 16,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156784640,
+ "range": 1024,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 6,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 16,
+ "prog_if": 32
+ },
+ "driver": "ehci-pci",
+ "driver_module": "ehci_pci",
+ "drivers": [
+ "ehci-pci"
+ ],
+ "driver_modules": [
+ "ehci_pci"
+ ],
+ "driver_info": {
+ "type": "module",
+ "db_entry_0": [
+ "ehci-hcd"
+ ],
+ "active": true,
+ "modprobe": true,
+ "names": [
+ "ehci-hcd"
+ ],
+ "module_args": [
+ ""
+ ],
+ "conf": ""
+ },
+ "module_alias": "pci:v00008086d00001E2Dsv00001028sd00000577bc0Csc03i20"
+ },
+ {
+ "index": 16,
+ "attached_to": 0,
+ "class_list": [
+ "usb_controller",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 29
+ },
+ "base_class": {
+ "hex": "000c",
+ "name": "Serial bus controller",
+ "value": 12
+ },
+ "sub_class": {
+ "hex": "0003",
+ "name": "USB Controller",
+ "value": 3
+ },
+ "pci_interface": {
+ "hex": "0020",
+ "name": "EHCI",
+ "value": 32
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e26",
+ "value": 7718
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel USB Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:1d.0",
+ "sysfs_bus_id": "0000:00:1d.0",
+ "resources": [
+ {
+ "type": "irq",
+ "base": 23,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156780544,
+ "range": 1024,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 6,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 23,
+ "prog_if": 32
+ },
+ "driver": "ehci-pci",
+ "driver_module": "ehci_pci",
+ "drivers": [
+ "ehci-pci"
+ ],
+ "driver_modules": [
+ "ehci_pci"
+ ],
+ "driver_info": {
+ "type": "module",
+ "db_entry_0": [
+ "ehci-hcd"
+ ],
+ "active": true,
+ "modprobe": true,
+ "names": [
+ "ehci-hcd"
+ ],
+ "module_args": [
+ ""
+ ],
+ "conf": ""
+ },
+ "module_alias": "pci:v00008086d00001E26sv00001028sd00000577bc0Csc03i20"
+ },
+ {
+ "index": 18,
+ "attached_to": 0,
+ "class_list": [
+ "usb_controller",
+ "pci"
+ ],
+ "bus_type": {
+ "hex": "0004",
+ "name": "PCI",
+ "value": 4
+ },
+ "slot": {
+ "bus": 0,
+ "number": 20
+ },
+ "base_class": {
+ "hex": "000c",
+ "name": "Serial bus controller",
+ "value": 12
+ },
+ "sub_class": {
+ "hex": "0003",
+ "name": "USB Controller",
+ "value": 3
+ },
+ "pci_interface": {
+ "hex": "0030",
+ "value": 48
+ },
+ "vendor": {
+ "hex": "8086",
+ "name": "Intel Corporation",
+ "value": 32902
+ },
+ "sub_vendor": {
+ "hex": "1028",
+ "value": 4136
+ },
+ "device": {
+ "hex": "1e31",
+ "value": 7729
+ },
+ "sub_device": {
+ "hex": "0577",
+ "value": 1399
+ },
+ "revision": {
+ "hex": "0004",
+ "value": 4
+ },
+ "model": "Intel USB Controller",
+ "sysfs_id": "/devices/pci0000:00/0000:00:14.0",
+ "sysfs_bus_id": "0000:00:14.0",
+ "resources": [
+ {
+ "type": "irq",
+ "base": 24,
+ "triggered": 0,
+ "enabled": true
+ },
+ {
+ "type": "mem",
+ "base": 4156686336,
+ "range": 65536,
+ "enabled": true,
+ "access": "read_write",
+ "prefetch": "no"
+ }
+ ],
+ "detail": {
+ "function": 0,
+ "command": 1030,
+ "header_type": 0,
+ "secondary_bus": 0,
+ "irq": 24,
+ "prog_if": 48
+ },
+ "driver": "xhci_hcd",
+ "driver_module": "xhci_pci",
+ "drivers": [
+ "xhci_hcd"
+ ],
+ "driver_modules": [
+ "xhci_pci"
+ ],
+ "module_alias": "pci:v00008086d00001E31sv00001028sd00000577bc0Csc03i30"
+ }
+ ]
+ },
+ "smbios": {
+ "bios": {
+ "handle": 0,
+ "vendor": "Dell Inc.",
+ "version": "A12",
+ "date": "01/10/2013",
+ "features": [
+ "PCI supported",
+ "PnP supported",
+ "BIOS flashable",
+ "BIOS shadowing allowed",
+ "CD boot supported",
+ "Selectable boot supported",
+ "EDD spec supported",
+ "1.2MB Floppy supported",
+ "720kB Floppy supported",
+ "2.88MB Floppy supported",
+ "Print Screen supported",
+ "8042 Keyboard Services supported",
+ "Serial Services supported",
+ "Printer Services supported",
+ "ACPI supported",
+ "USB Legacy supported",
+ "BIOS Boot Spec supported",
+ "F12 Network boot supported"
+ ],
+ "start_address": "0xf0000",
+ "rom_size": 12582912
+ },
+ "board": {
+ "handle": 2,
+ "manufacturer": "Dell Inc.",
+ "product": "0V8WGR",
+ "version": "A02",
+ "board_type": {
+ "hex": "000a",
+ "name": "Motherboard",
+ "value": 10
+ },
+ "features": [
+ "Hosting Board",
+ "Replaceable"
+ ],
+ "location": "",
+ "chassis": 3
+ },
+ "cache": [
+ {
+ "handle": 56,
+ "socket": "CPU Internal L1",
+ "size_max": 256,
+ "size_current": 256,
+ "speed": 0,
+ "mode": {
+ "hex": "0000",
+ "name": "Write Through",
+ "value": 0
+ },
+ "enabled": true,
+ "location": {
+ "hex": "0000",
+ "name": "Internal",
+ "value": 0
+ },
+ "socketed": false,
+ "level": 0,
+ "ecc": {
+ "hex": "0004",
+ "name": "Parity",
+ "value": 4
+ },
+ "cache_type": {
+ "hex": "0004",
+ "name": "Data",
+ "value": 4
+ },
+ "associativity": {
+ "hex": "0007",
+ "name": "8-way Set-Associative",
+ "value": 7
+ },
+ "sram_type_current": [
+ "Unknown"
+ ],
+ "sram_type_supported": [
+ "Unknown"
+ ]
+ },
+ {
+ "handle": 57,
+ "socket": "CPU Internal L2",
+ "size_max": 1024,
+ "size_current": 1024,
+ "speed": 0,
+ "mode": {
+ "hex": "0000",
+ "name": "Write Through",
+ "value": 0
+ },
+ "enabled": true,
+ "location": {
+ "hex": "0000",
+ "name": "Internal",
+ "value": 0
+ },
+ "socketed": false,
+ "level": 1,
+ "ecc": {
+ "hex": "0006",
+ "name": "Multi-bit",
+ "value": 6
+ },
+ "cache_type": {
+ "hex": "0005",
+ "name": "Unified",
+ "value": 5
+ },
+ "associativity": {
+ "hex": "0007",
+ "name": "8-way Set-Associative",
+ "value": 7
+ },
+ "sram_type_current": [
+ "Unknown"
+ ],
+ "sram_type_supported": [
+ "Unknown"
+ ]
+ },
+ {
+ "handle": 58,
+ "socket": "CPU Internal L3",
+ "size_max": 6144,
+ "size_current": 6144,
+ "speed": 0,
+ "mode": {
+ "hex": "0001",
+ "name": "Write Back",
+ "value": 1
+ },
+ "enabled": true,
+ "location": {
+ "hex": "0000",
+ "name": "Internal",
+ "value": 0
+ },
+ "socketed": false,
+ "level": 2,
+ "ecc": {
+ "hex": "0006",
+ "name": "Multi-bit",
+ "value": 6
+ },
+ "cache_type": {
+ "hex": "0005",
+ "name": "Unified",
+ "value": 5
+ },
+ "associativity": {
+ "hex": "0009",
+ "name": "Other",
+ "value": 9
+ },
+ "sram_type_current": [
+ "Unknown"
+ ],
+ "sram_type_supported": [
+ "Unknown"
+ ]
+ }
+ ],
+ "chassis": {
+ "handle": 3,
+ "manufacturer": "Dell Inc.",
+ "version": "",
+ "chassis_type": {
+ "hex": "0010",
+ "name": "Lunch Box",
+ "value": 16
+ },
+ "lock_present": false,
+ "bootup_state": {
+ "hex": "0003",
+ "name": "Safe",
+ "value": 3
+ },
+ "power_state": {
+ "hex": "0003",
+ "name": "Safe",
+ "value": 3
+ },
+ "thermal_state": {
+ "hex": "0003",
+ "name": "Safe",
+ "value": 3
+ },
+ "security_state": {
+ "hex": "0003",
+ "name": "None",
+ "value": 3
+ },
+ "oem": "0x0"
+ },
+ "config": {
+ "handle": 41,
+ "options": [
+ "To Be Filled By O.E.M."
+ ]
+ },
+ "language": [
+ {
+ "handle": 57167,
+ "languages": [
+ "en|US|iso8859-1"
+ ]
+ }
+ ],
+ "memory_array": [
+ {
+ "handle": 59,
+ "location": {
+ "hex": "0003",
+ "name": "Motherboard",
+ "value": 3
+ },
+ "usage": {
+ "hex": "0003",
+ "name": "System memory",
+ "value": 3
+ },
+ "ecc": {
+ "hex": "0003",
+ "name": "None",
+ "value": 3
+ },
+ "max_size": 16777216,
+ "error_handle": 65534,
+ "slots": 2
+ }
+ ],
+ "memory_array_mapped_address": [
+ {
+ "handle": 63,
+ "array_handle": 59,
+ "start_address": 0,
+ "end_address": 4294967296,
+ "part_width": 2
+ }
+ ],
+ "memory_device": [
+ {
+ "handle": 60,
+ "location": "ChannelA-DIMM0",
+ "bank_location": "BANK 0",
+ "manufacturer": "Hynix/Hyundai",
+ "part_number": "HMT351U6CFR8C-PB",
+ "array_handle": 59,
+ "error_handle": 65534,
+ "width": 64,
+ "ecc_bits": 0,
+ "size": 4194304,
+ "form_factor": {
+ "hex": "0009",
+ "name": "DIMM",
+ "value": 9
+ },
+ "set": 0,
+ "memory_type": {
+ "hex": "0018",
+ "name": "Other",
+ "value": 24
+ },
+ "memory_type_details": [
+ "Synchronous"
+ ],
+ "speed": 1600
+ },
+ {
+ "handle": 62,
+ "location": "ChannelB-DIMM0",
+ "bank_location": "BANK 2",
+ "manufacturer": "[Empty]",
+ "part_number": "[Empty]",
+ "array_handle": 59,
+ "error_handle": 65534,
+ "width": 0,
+ "ecc_bits": 0,
+ "size": 0,
+ "form_factor": {
+ "hex": "0009",
+ "name": "DIMM",
+ "value": 9
+ },
+ "set": 0,
+ "memory_type": {
+ "hex": "0002",
+ "name": "Unknown",
+ "value": 2
+ },
+ "memory_type_details": null,
+ "speed": 0
+ }
+ ],
+ "memory_device_mapped_address": [
+ {
+ "handle": 61,
+ "memory_device_handle": 60,
+ "array_map_handle": 63,
+ "start_address": 0,
+ "end_address": 4294967296,
+ "row_position": 1,
+ "interleave_position": 1,
+ "interleave_depth": 1
+ }
+ ],
+ "onboard": [
+ {
+ "handle": 39,
+ "devices": [
+ {
+ "name": "\"Intel HD Graphics\"",
+ "type": {
+ "hex": "0003",
+ "name": "Video",
+ "value": 3
+ },
+ "enabled": true
+ },
+ {
+ "name": "NETWORK_NAME_STRING",
+ "type": {
+ "hex": "0005",
+ "name": "Ethernet",
+ "value": 5
+ },
+ "enabled": true
+ }
+ ]
+ }
+ ],
+ "port_connector": [
+ {
+ "handle": 6,
+ "port_type": {
+ "hex": "0009",
+ "name": "Serial Port 16550A Compatible",
+ "value": 9
+ },
+ "internal_reference_designator": "J6A2A",
+ "external_connector_type": {
+ "hex": "0008",
+ "name": "DB-9 pin male",
+ "value": 8
+ },
+ "external_reference_designator": "COM A"
+ },
+ {
+ "handle": 7,
+ "port_type": {
+ "hex": "001c",
+ "name": "Video Port",
+ "value": 28
+ },
+ "internal_reference_designator": "J6A2B",
+ "external_connector_type": {
+ "hex": "0007",
+ "name": "DB-15 pin female",
+ "value": 7
+ },
+ "external_reference_designator": "Video"
+ },
+ {
+ "handle": 8,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J2A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB1"
+ },
+ {
+ "handle": 9,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J2A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB2"
+ },
+ {
+ "handle": 10,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J5A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB3"
+ },
+ {
+ "handle": 11,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J5A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB4"
+ },
+ {
+ "handle": 12,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J5A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB5"
+ },
+ {
+ "handle": 13,
+ "port_type": {
+ "hex": "0010",
+ "name": "USB",
+ "value": 16
+ },
+ "internal_reference_designator": "J5A1",
+ "external_connector_type": {
+ "hex": "0012",
+ "name": "Access Bus [USB]",
+ "value": 18
+ },
+ "external_reference_designator": "USB6"
+ },
+ {
+ "handle": 18,
+ "port_type": {
+ "hex": "001f",
+ "name": "Network Port",
+ "value": 31
+ },
+ "internal_reference_designator": "J2A1",
+ "external_connector_type": {
+ "hex": "000b",
+ "name": "RJ-45",
+ "value": 11
+ },
+ "external_reference_designator": "LAN"
+ },
+ {
+ "handle": 19,
+ "port_type": {
+ "hex": "001c",
+ "name": "Video Port",
+ "value": 28
+ },
+ "internal_reference_designator": "J2A1",
+ "external_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "external_reference_designator": "Display Port1"
+ },
+ {
+ "handle": 20,
+ "port_type": {
+ "hex": "001c",
+ "name": "Video Port",
+ "value": 28
+ },
+ "internal_reference_designator": "J3A1",
+ "external_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "external_reference_designator": "Display Port2"
+ },
+ {
+ "handle": 21,
+ "port_type": {
+ "hex": "001d",
+ "name": "Audio Port",
+ "value": 29
+ },
+ "internal_reference_designator": "J7A1",
+ "external_connector_type": {
+ "hex": "001f",
+ "name": "Mini-jack [headphones]",
+ "value": 31
+ },
+ "external_reference_designator": "MIC-IN"
+ },
+ {
+ "handle": 22,
+ "port_type": {
+ "hex": "001d",
+ "name": "Audio Port",
+ "value": 29
+ },
+ "internal_reference_designator": "J7A1",
+ "external_connector_type": {
+ "hex": "001f",
+ "name": "Mini-jack [headphones]",
+ "value": 31
+ },
+ "external_reference_designator": "HP-OUT"
+ },
+ {
+ "handle": 23,
+ "port_type": {
+ "hex": "001d",
+ "name": "Audio Port",
+ "value": 29
+ },
+ "internal_reference_designator": "J7A1",
+ "external_connector_type": {
+ "hex": "001f",
+ "name": "Mini-jack [headphones]",
+ "value": 31
+ },
+ "external_reference_designator": "LINE-OUT"
+ },
+ {
+ "handle": 24,
+ "port_type": {
+ "hex": "001d",
+ "name": "Audio Port",
+ "value": 29
+ },
+ "internal_reference_designator": "J7A1",
+ "external_connector_type": {
+ "hex": "001f",
+ "name": "Mini-jack [headphones]",
+ "value": 31
+ },
+ "external_reference_designator": "LINE-IN"
+ },
+ {
+ "handle": 25,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J7J3 - SATA PORT1"
+ },
+ {
+ "handle": 26,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J8J1 - SATA PORT0"
+ },
+ {
+ "handle": 27,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J2B3 - CPU FAN"
+ },
+ {
+ "handle": 30,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J1D1 - INTRUDER"
+ },
+ {
+ "handle": 33,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J2B3 - SYSTEM_FAN"
+ },
+ {
+ "handle": 34,
+ "port_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_connector_type": {
+ "hex": "00ff",
+ "name": "Other",
+ "value": 255
+ },
+ "internal_reference_designator": "J9E5 - INT_SPKR"
+ }
+ ],
+ "power_controls": [
+ {
+ "handle": 43,
+ "month": 0,
+ "day": 0,
+ "hour": 0,
+ "minute": 0,
+ "second": 0
+ }
+ ],
+ "processor": [
+ {
+ "handle": 92,
+ "socket": "CPU 1",
+ "socket_type": {
+ "hex": "0024",
+ "name": "Other",
+ "value": 36
+ },
+ "socket_populated": true,
+ "manufacturer": "Intel(R) Corporation",
+ "version": "Intel(R) Core(TM) i5-3570S CPU @ 3.10GHz",
+ "part": "Fill By OEM",
+ "processor_type": {
+ "hex": "0003",
+ "name": "CPU",
+ "value": 3
+ },
+ "processor_family": {
+ "hex": "00cd",
+ "name": "Other",
+ "value": 205
+ },
+ "processor_status": {
+ "hex": "0001",
+ "name": "Enabled",
+ "value": 1
+ },
+ "clock_ext": 100,
+ "clock_max": 3800,
+ "cache_handle_l1": 56,
+ "cache_handle_l2": 57,
+ "cache_handle_l3": 58
+ }
+ ],
+ "system": {
+ "handle": 1,
+ "manufacturer": "Dell Inc.",
+ "product": "OptiPlex 7010",
+ "version": "01",
+ "wake_up": {
+ "hex": "0006",
+ "name": "Power Switch",
+ "value": 6
+ }
+ }
+ }
+}
diff --git a/nodes/snorlax/git.nix b/nodes/snorlax/git.nix
new file mode 100644
index 0000000..e91afcb
--- /dev/null
+++ b/nodes/snorlax/git.nix
@@ -0,0 +1,128 @@
+{ config, lib, pkgs, ... }:
+let
+ home = "/persist/var/lib/git";
+ repos = {
+ nixos = {
+ path = "${home}/nixos.git";
+ desc = "My NixOS Configurations";
+ owner = "jras";
+ };
+
+ zettelkasten = {
+ path = "${home}/zettelkasten.git";
+ desc = "Knowledge management system";
+ owner = "jras";
+ };
+
+ para = {
+ path = "${home}/para.git";
+ desc = "PARA note taking system";
+ owner = "jras";
+ };
+
+ obsidian-wavez-theme = {
+ path = "${home}/obsidian-wavez-theme.git";
+ desc = "The bordeaux theme for Obsidian";
+ owner = "jras";
+ };
+
+ astal-bar = {
+ path = "${home}/astal-bar.git";
+ desc = "A wayland bar in jsx";
+ owner = "jras";
+ };
+
+ rustbook = {
+ path = "${home}/rustbook.git";
+ desc = "Follow along exercises of the rust book";
+ owner = "jras";
+ };
+
+ genai = {
+ path = "${home}/genai.git";
+ desc = "Generative AI fooling around";
+ owner = "jras";
+ };
+ };
+
+ startScript = pkgs.writeShellScript "init-git-repos" ''
+ ${lib.concatMapStrings ({ path, ... }: "${pkgs.git}/bin/git init --bare --shared ${path} && cd ${path} && ${pkgs.git}/bin/git branch -m main \n") (builtins.attrValues repos)}
+ '';
+in
+{
+ networking.firewall.allowedTCPPorts = [ 80 8080 ];
+
+ services.cgit.snorlax = {
+ enable = true;
+ group = "git";
+ repos = repos;
+ };
+
+ systemd.services.init-repos = {
+ description = "Initialize git repositories";
+ wantedBy = [ "multi-user.target" ];
+ restartTriggers = [ startScript ];
+
+ serviceConfig = {
+ Type = "oneshot";
+ User = "git";
+ Group = "git";
+ ExecStart = startScript;
+ };
+ };
+
+ users.groups.git = {};
+ users.users.git = {
+ isNormalUser = true;
+ home = "${home}";
+ homeMode = "0750";
+ createHome = true;
+ shell = pkgs.zsh;
+ group = "git";
+ openssh.authorizedKeys.keyFiles = [
+ ../../keys/id_tarrel.pub
+ ../../keys/id_work.pub
+ ];
+ packages = with pkgs; [ git ];
+ };
+ services.openssh.settings.AllowUsers = [ "git" ];
+
+ age.secrets= {
+ gitlab-init-root = {
+ file = ../../secrets/gitlab-init-root.age;
+ owner = "gitlab";
+ group = "gitlab";
+ };
+ gitlab-db = {
+ file = ../../secrets/gitlab-db.age;
+ owner = "gitlab";
+ group = "gitlab";
+ };
+ gitlab-jws = {
+ file = ../../secrets/gitlab-jws.age;
+ owner = "gitlab";
+ group = "gitlab";
+ };
+ gitlab-otp = {
+ file = ../../secrets/gitlab-otp.age;
+ owner = "gitlab";
+ group = "gitlab";
+ };
+ gitlab-secret = {
+ file = ../../secrets/gitlab-secret.age;
+ owner = "gitlab";
+ group = "gitlab";
+ };
+ };
+
+
+ services.gitlab = {
+ enable = true;
+ initialRootEmail = "jaspert.ras@gmail.com";
+ initialRootPasswordFile = config.age.secrets.gitlab-init-root.path;
+ secrets.dbFile = config.age.secrets.gitlab-db.path;
+ secrets.jwsFile = config.age.secrets.gitlab-jws.path;
+ secrets.otpFile = config.age.secrets.gitlab-otp.path;
+ secrets.secretFile = config.age.secrets.gitlab-secret.path;
+ };
+}
diff --git a/nodes/snorlax/networking.nix b/nodes/snorlax/networking.nix
new file mode 100644
index 0000000..ec0cdcc
--- /dev/null
+++ b/nodes/snorlax/networking.nix
@@ -0,0 +1,47 @@
+{ lib, ... }:
+{
+ networking.hostName = "snorlax";
+ networking.hostId = "1d1ebf34";
+
+ services.openssh = {
+ openFirewall = lib.mkForce true;
+ hostKeys = [
+ {
+ path = "/persist/etc/ssh/ssh_host_ed25519_key";
+ type = "ed25519";
+ }
+ {
+ path = "/persist/etc/ssh/ssh_host_rsa_key";
+ type = "rsa";
+ bits = 4096;
+ }
+ ];
+ };
+
+ # networking.useNetworkd = true;
+
+ # systemd.network.enable = true;
+ # systemd.network.networks."10-lan" = {
+ # matchConfig.Name = ["eno1" "vm-*"];
+ # networkConfig = {
+ # Bridge = "br0";
+ # };
+ # };
+
+ # systemd.network.netdevs."br0" = {
+ # netdevConfig = {
+ # Name = "br0";
+ # Kind = "bridge";
+ # };
+ # };
+
+ # systemd.network.networks."10-lan-bridge" = {
+ # matchConfig.Name = "br0";
+ # networkConfig = {
+ # Address = ["192.168.50.7/24" ];
+ # Gateway = "192.168.50.1";
+ # DNS = ["192.168.50.1"];
+ # };
+ # linkConfig.RequiredForOnline = "routable";
+ # };
+}
diff --git a/nodes/snorlax/nginx.nix b/nodes/snorlax/nginx.nix
new file mode 100644
index 0000000..bb09cd2
--- /dev/null
+++ b/nodes/snorlax/nginx.nix
@@ -0,0 +1,25 @@
+{ ... }:
+{
+ networking.firewall.allowedTCPPorts = [ 443 ];
+
+ services.nginx = {
+ enable = true;
+ recommendedTlsSettings = true;
+
+ virtualHosts = {
+ "jras.nl" = {
+ onlySSL = true;
+ kTLS = true;
+ enableACME = true;
+ root = "/persist/srv/www/jras.nl";
+ };
+ };
+ };
+
+ security.acme.defaults.email = "jaspert.ras@gmail.com";
+ security.acme.acceptTerms = true;
+
+ systemd.tmpfiles.rules = [
+ "L /var/lib/acme - - - - /persist/var/lib/acme"
+ ];
+}
diff --git a/nodes/snorlax/samba.nix b/nodes/snorlax/samba.nix
new file mode 100644
index 0000000..c7b692b
--- /dev/null
+++ b/nodes/snorlax/samba.nix
@@ -0,0 +1,37 @@
+{ ... }:
+{
+ services.samba = {
+ enable = true;
+ securityType = "user";
+ openFirewall = true;
+ settings = {
+ global = {
+ "workgroup" = "WORKGROUP";
+ "server string" = "smbnix";
+ "netbios name" = "smbnix";
+ "security" = "user";
+ "hosts allow" = "192.168.50. 127.0.0.1 localhost";
+ "hosts deny" = "0.0.0.0/0";
+ "guest account" = "nobody";
+ "map to guest" = "bad user";
+ };
+
+ photos = {
+ "path" = "/persist/srv/samba/photos";
+ "browseable" = "yes";
+ "read only" = "no";
+ "guest ok" = "yes";
+ "create mask" = "0644";
+ "directory mask" = "0755";
+ "force user" = "nobody";
+ "force group" = "nogroup";
+ };
+ };
+ };
+
+ # Used to advertise to Windows hosts
+ services.samba-wsdd = {
+ enable = true;
+ openFirewall = true;
+ };
+}
diff --git a/nodes/snorlax/syncoid.nix b/nodes/snorlax/syncoid.nix
new file mode 100644
index 0000000..435e040
--- /dev/null
+++ b/nodes/snorlax/syncoid.nix
@@ -0,0 +1,28 @@
+{ config, ... }:
+{
+ age.secrets.syncoid-key = {
+ file = ../../secrets/syncoid-key.age;
+ owner = "syncoid";
+ group = "syncoid";
+ };
+
+
+ services.sanoid.enable = true;
+ services.sanoid.datasets = {
+ "data/safe/persist" = {
+ autoprune = true;
+ autosnap = true;
+ hourly = 24;
+ daily = 7;
+ monthly = 1;
+ yearly = 1;
+ };
+ };
+
+ services.syncoid.enable = true;
+ services.syncoid.sshKey = config.age.secrets.syncoid-key.path;
+ services.syncoid.commonArgs = ["--no-sync-snap"];
+ services.syncoid.commands = {
+ "data/safe/persist".target = "transfer@backup.jras.nl:backup/snorlax";
+ };
+}
diff --git a/nodes/snorlax/uvm-guests/cpanel.nix b/nodes/snorlax/uvm-guests/cpanel.nix
new file mode 100644
index 0000000..b7fb4c3
--- /dev/null
+++ b/nodes/snorlax/uvm-guests/cpanel.nix
@@ -0,0 +1,62 @@
+{ inputs, ... }:
+{
+ microvm.autostart = [ "cpanel" ];
+ microvm.vms = {
+ cpanel = {
+ # The package set to use for the microvm. This also determines the microvm's architecture.
+ # Defaults to the host system's package set if not given.
+ # pkgs = import pkgs { system = "x86_64-linux"; };
+
+ # (Optional) A set of special arguments to be passed to the MicroVM's NixOS modules.
+ specialArgs = { inherit inputs; };
+
+ # The configuration for the MicroVM.
+ # Multiple definitions will be merged as expected.
+ config = {
+
+ networking.hostName = "cpanel";
+ systemd.network.enable = true;
+ systemd.network.networks."20-lan" = {
+ matchConfig.Type = "ether";
+ networkConfig = {
+ # Address = ["192.168.50.3/24" "2001:db8::b/64"];
+ Gateway = "192.168.50.1";
+ DNS = ["192.168.50.1"];
+ IPv6AcceptRA = true;
+ DHCP = "yes";
+ };
+ };
+
+ home-manager.users.jras.home.stateVersion = "24.11";
+
+ imports = [
+ inputs.home-manager.nixosModules.home-manager
+ inputs.disko.nixosModules.disko
+ inputs.nixos-facter-modules.nixosModules.facter
+ ../../core/users.nix
+ ../../core/packages.nix
+ ../../core/services.nix
+ ];
+
+
+ # It is highly recommended to share the host's nix-store
+ # with the VMs to prevent building huge images.
+ microvm.shares = [{
+ source = "/nix/store";
+ mountPoint = "/nix/.ro-store";
+ tag = "ro-store";
+ proto = "virtiofs";
+ }];
+
+ microvm.interfaces = [{
+ type = "tap";
+ id = "cpanel";
+ mac = "02:00:00:00:00:01";
+ }];
+
+ # Any other configuration for your MicroVM
+ # [...]
+ };
+ };
+ };
+}
diff --git a/nodes/snorlax/uvm-guests/default.nix b/nodes/snorlax/uvm-guests/default.nix
new file mode 100644
index 0000000..39b0611
--- /dev/null
+++ b/nodes/snorlax/uvm-guests/default.nix
@@ -0,0 +1,4 @@
+{ ... }:
+{
+ imports = [ ./cpanel.nix ];
+}
diff --git a/nodes/tarrel/configuration.nix b/nodes/tarrel/configuration.nix
new file mode 100644
index 0000000..04bc978
--- /dev/null
+++ b/nodes/tarrel/configuration.nix
@@ -0,0 +1,55 @@
+{ config, inputs, ... }:
+{
+ imports = [
+ inputs.home-manager.nixosModules.home-manager
+ inputs.agenix.nixosModules.default
+ inputs.disko.nixosModules.disko
+
+ ./hardware-configuration.nix
+ ./home-manager.nix
+
+ ../../modules/core
+ ../../modules/hyprland.nix
+ ];
+
+ system.stateVersion = "24.05";
+
+ networking.hostName = "tarrel";
+ networking.networkmanager.enable = true;
+
+ time.timeZone = "Europe/Amsterdam";
+
+ users.users.jras.extraGroups = [ "networkmanager" ];
+
+ boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+
+ hardware.graphics.enable = true;
+ services.xserver.videoDrivers = ["nvidia"];
+ hardware.nvidia = {
+ modesetting.enable = true;
+ nvidiaSettings = true;
+ nvidiaPersistenced = true;
+ open = true;
+
+ package = config.boot.kernelPackages.nvidiaPackages.stable;
+ };
+
+ security.rtkit.enable = true;
+
+ environment.sessionVariables = {
+ TERMINAL = "alacritty";
+ EDITOR = "helix";
+ };
+
+ environment.pathsToLink = [ "/libexec" ];
+
+ services.sunshine = {
+ enable = true;
+ autoStart = true;
+ capSysAdmin = true;
+ openFirewall = true;
+ };
+
+ programs.steam.enable = true;
+}
diff --git a/nodes/tarrel/hardware-configuration.nix b/nodes/tarrel/hardware-configuration.nix
new file mode 100644
index 0000000..4604fcd
--- /dev/null
+++ b/nodes/tarrel/hardware-configuration.nix
@@ -0,0 +1,40 @@
+# 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.
+{ config, lib, pkgs, modulesPath, ... }:
+
+{
+ imports =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "uas" "sd_mod" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/b73c41ec-fe01-4fa5-b50a-fd871e8c2710";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/BBB8-1AF8";
+ fsType = "vfat";
+ options = [ "fmask=0022" "dmask=0022" ];
+ };
+
+ swapDevices = [ ];
+
+ # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
+ # (the default) this is the recommended approach. When using systemd-networkd it's
+ # still possible to use this option, but it's recommended to use it in conjunction
+ # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
+ networking.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlp0s20f0u9.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
diff --git a/nodes/tarrel/home-manager.nix b/nodes/tarrel/home-manager.nix
new file mode 100644
index 0000000..c40238b
--- /dev/null
+++ b/nodes/tarrel/home-manager.nix
@@ -0,0 +1,45 @@
+{ lib, pkgs, inputs, ... }:
+{
+ home-manager.useGlobalPkgs = true;
+ home-manager.useUserPackages = true;
+ home-manager.extraSpecialArgs = { inherit inputs; };
+ home-manager.users.jras = {
+ imports = [
+ ../../modules/home-manager/core
+ ../../modules/home-manager/hyprland.nix
+ ../../modules/home-manager/python.nix
+ ];
+
+ home.username = "jras";
+ home.homeDirectory = "/home/jras";
+ home.stateVersion = "23.11";
+
+ programs.git = {
+ userName = "Jasper Ras";
+ userEmail = "jaspert.ras@gmail.com";
+ };
+
+ services.hypridle.enable = lib.mkForce false;
+
+ home.file = {
+ gamestream-start = {
+ text = ''
+ #!${pkgs.zsh}/bin/zsh
+ ${pkgs.hyprland}/bin/hyprctl keyword monitor HDMI-A-1,1920x1080@59.94,auto,2
+ '';
+ target = "bin/gamestream-start";
+ executable = true;
+ };
+ gamestream-end = {
+ text = ''
+ #!${pkgs.zsh}/bin/zsh
+ ${pkgs.hyprland}/bin/hyprctl keyword monitor HDMI-A-1,preferred,auto,1
+ '';
+ target = "bin/gamestream-end";
+ executable = true;
+ };
+ };
+
+ programs.zsh.envExtra = "export PATH=$HOME/bin:$PATH";
+ };
+}
diff --git a/nodes/work/configuration.nix b/nodes/work/configuration.nix
new file mode 100644
index 0000000..6d970b2
--- /dev/null
+++ b/nodes/work/configuration.nix
@@ -0,0 +1,55 @@
+{ lib, pkgs, inputs, ... }:
+{
+ imports = [
+ inputs.home-manager.nixosModules.home-manager
+ inputs.agenix.nixosModules.default
+ inputs.disko.nixosModules.disko
+ inputs.update-systemd-resolved.nixosModules.update-systemd-resolved
+
+ ../../modules/core
+ ../../modules/hyprland.nix
+
+ ./hardware-configuration.nix
+ ./home-manager.nix
+ ./networking.nix
+ ./secrets.nix
+ ];
+
+ system.stateVersion = "24.05"; # Do NOT change before reading configuration.nix
+
+ users.users.jras.extraGroups = [ "networkmanager" "docker" ];
+ security.sudo.wheelNeedsPassword = lib.mkForce true;
+
+ time.timeZone = "Europe/Amsterdam";
+
+ virtualisation.docker = {
+ enable = true;
+ enableOnBoot = true;
+ };
+
+ virtualisation.virtualbox = {
+ host.enable = true;
+ host.enableKvm = false;
+ };
+
+ users.extraGroups.vboxusers.members = [ "jras" ];
+
+
+ hardware.bluetooth.enable = true;
+ hardware.bluetooth.powerOnBoot = true;
+
+ boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+
+ services.libinput.mouse.accelProfile = "flat";
+ services.libinput.mouse.accelSpeed = "-5";
+ services.upower.enable = true;
+
+ services.xserver.xkb = {
+ layout = "us";
+ variant = "";
+ };
+
+ programs.gnupg.agent.enable = true;
+ programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gnome3;
+}
diff --git a/nodes/work/hardware-configuration.nix b/nodes/work/hardware-configuration.nix
new file mode 100644
index 0000000..9c8c4b1
--- /dev/null
+++ b/nodes/work/hardware-configuration.nix
@@ -0,0 +1,41 @@
+# 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.
+{ config, lib, pkgs, modulesPath, ... }:
+
+{
+ imports =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-amd" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/df469cf1-1acc-4bf4-86e1-ec368e5a96a1";
+ fsType = "ext4";
+ };
+
+ boot.initrd.luks.devices."luks-0f6e3603-084c-4438-9749-36b31b6f226a".device = "/dev/disk/by-uuid/0f6e3603-084c-4438-9749-36b31b6f226a";
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/F0E6-4DF3";
+ fsType = "vfat";
+ options = [ "fmask=0077" "dmask=0077" ];
+ };
+
+ swapDevices = [ ];
+
+ # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
+ # (the default) this is the recommended approach. When using systemd-networkd it's
+ # still possible to use this option, but it's recommended to use it in conjunction
+ # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
+ networking.useDHCP = lib.mkDefault true;
+ # networking.interfaces.enp1s0f0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
diff --git a/nodes/work/home-manager.nix b/nodes/work/home-manager.nix
new file mode 100644
index 0000000..c0d94bf
--- /dev/null
+++ b/nodes/work/home-manager.nix
@@ -0,0 +1,80 @@
+{ lib, pkgs, inputs, ... }:
+{
+ home-manager.useGlobalPkgs = true;
+ home-manager.useUserPackages = true;
+ home-manager.extraSpecialArgs = { inherit inputs; };
+ home-manager.users.jras = {
+ imports = [
+ ../../modules/home-manager/core
+ ../../modules/home-manager/hyprland.nix
+ ../../modules/home-manager/hostnet.nix
+ ../../modules/home-manager/php.nix
+ ../../modules/home-manager/ansible.nix
+ ../../modules/home-manager/python.nix
+ ];
+
+ home.username = "jras";
+ home.homeDirectory = "/home/jras";
+ home.stateVersion = "22.11";
+ home.sessionPath = [ "$HOME/.local/bin" ];
+
+ home.packages = with pkgs; [
+ slack
+ moonlight-qt
+ brightnessctl
+ google-chrome
+ ];
+
+ programs.git = {
+ userName = "Jasper Ras";
+ userEmail = lib.mkForce "jras@hostnet.nl";
+ extraConfig = { gitreview.username = "jrasper"; };
+ ignores = [
+ ".direnv"
+ ".envrc"
+ ".project"
+ ".settings/"
+ ".buildpath"
+ "tags"
+ ".hhconfig"
+ ".DS_Store"
+ ".idea/"
+ ".vagrant/"
+ "*.swp"
+ "clover.xml"
+ "yarn-error.log"
+ "gsuite-auth.json"
+ "venv/"
+ "shell.nix"
+
+ ".devenv*"
+ "devenv*"
+ ".pre-commit-config.yaml"
+ ];
+ };
+
+ programs.zsh.initExtra = ''
+ eval "$(dircolors)"
+ '';
+ programs.zsh.shellAliases = {
+ ssh = "TERM=xterm-256color ssh";
+ };
+
+ programs.pyenv.enable = true;
+ programs.pyenv.enableZshIntegration = true;
+ programs.ssh = {
+ controlMaster = "auto";
+ controlPersist = "12h";
+ serverAliveInterval = 11;
+ matchBlocks = {
+ "*.g1i.one".user = "jasras";
+ "*.os1.openstack.group.one".user = "jasras";
+ "*.one.com".user = "jasras";
+ "91.184.16.185".port = 12345;
+ "*.compute.prv.vps1-testpod-cph3.one.com".forwardAgent = true;
+ "access.*.one.com".forwardAgent = true;
+ "access.*.g1i.one".forwardAgent = true;
+ };
+ };
+ };
+}
diff --git a/nodes/work/networking.nix b/nodes/work/networking.nix
new file mode 100644
index 0000000..99ba8d7
--- /dev/null
+++ b/nodes/work/networking.nix
@@ -0,0 +1,87 @@
+{ pkgs, config, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ networkmanager-openvpn
+ ];
+
+ networking.hostName = "work";
+ networking.networkmanager.enable = true;
+ networking.networkmanager.dns = "systemd-resolved";
+ networking.nameservers = [ "1.1.1.1" ];
+
+ services.openvpn.servers = {
+ ghostnet = {
+ config = ''
+ client
+ remote 185.57.9.6 1194
+ cert ${config.age.secrets.ghostnet-cert.path}
+ key ${config.age.secrets.ghostnet-key.path}
+ ca ${config.age.secrets.ghostnet-ca.path}
+ auth-user-pass ${config.age.secrets.ghostnet-auth-user-pass.path}
+ reneg-sec 0
+ cipher AES-256-CBC
+ comp-lzo adaptive
+ dev tun
+ proto udp
+ remote-cert-tls server
+ tls-auth ${config.age.secrets.ghostnet-tls-auth.path} 1
+ nobind
+ auth-nocache
+ script-security 2
+ persist-key
+ persist-tun
+ user nm-openvpn
+ group nm-openvpn
+ '';
+ updateResolvConf = false;
+ autoStart = false;
+ };
+ systems = {
+ config = ''
+ client
+ remote 'vpn-v2.one.com'
+ cert '${config.age.secrets.systems-cert.path}'
+ key '${config.age.secrets.systems-key.path}'
+ ca '${config.age.secrets.systems-ca.path}'
+ cipher AES-128-CBC
+ comp-lzo adaptive
+ dev tun
+ proto udp
+ port 1200
+ remote-cert-tls server
+ tls-auth '${config.age.secrets.systems-tls-auth.path}' 1
+ nobind
+ auth-nocache
+ script-security 2
+ persist-key
+ persist-tun
+ user nm-openvpn
+ group nm-openvpn
+ '';
+ updateResolvConf = false;
+ autoStart = false;
+ };
+ };
+
+ programs.update-systemd-resolved.servers = {
+ ghostnet = {
+ includeAutomatically = true;
+ settings = {
+ routeOnlyDomains = [ "hostnetbv.nl." ];
+ defaultRoute = false;
+ multicastDNS = "no";
+ dnsOverTLS = "opportunistic";
+ dnssec = "no";
+ };
+ };
+ };
+
+ services.resolved = {
+ enable = true;
+ dnssec = "true";
+ domains = [ "~." ];
+ fallbackDns = [ "1.1.1.1" ];
+ dnsovertls = "opportunistic";
+ llmnr = "true";
+ };
+}
diff --git a/nodes/work/secrets.nix b/nodes/work/secrets.nix
new file mode 100644
index 0000000..d13599d
--- /dev/null
+++ b/nodes/work/secrets.nix
@@ -0,0 +1,13 @@
+{ ... }:
+{
+ age.secrets.ghostnet-cert.file = ../../secrets/ghostnet-cert.age;
+ age.secrets.ghostnet-key.file = ../../secrets/ghostnet-key.age;
+ age.secrets.ghostnet-ca.file = ../../secrets/ghostnet-ca.age;
+ age.secrets.ghostnet-tls-auth.file = ../../secrets/ghostnet-tls-auth.age;
+ age.secrets.ghostnet-auth-user-pass.file = ../../secrets/ghostnet-auth-user-pass.age;
+
+ age.secrets.systems-cert.file = ../../secrets/systems-cert.age;
+ age.secrets.systems-key.file = ../../secrets/systems-key.age;
+ age.secrets.systems-ca.file = ../../secrets/systems-ca.age;
+ age.secrets.systems-tls-auth.file = ../../secrets/systems-tls-auth.age;
+}