diff options
Diffstat (limited to 'machines/kj-laptop01')
| -rw-r--r-- | machines/kj-laptop01/configuration.nix | 134 | ||||
| -rw-r--r-- | machines/kj-laptop01/disk-config.nix | 83 | ||||
| -rw-r--r-- | machines/kj-laptop01/facter.json | 4100 | ||||
| -rw-r--r-- | machines/kj-laptop01/home.nix | 109 | ||||
| -rw-r--r-- | machines/kj-laptop01/lazyvim-config.lua | 49 | ||||
| -rw-r--r-- | machines/kj-laptop01/secrets.yaml | 30 | ||||
| -rw-r--r-- | machines/kj-laptop01/zsh-config.zsh | 45 |
7 files changed, 4550 insertions, 0 deletions
diff --git a/machines/kj-laptop01/configuration.nix b/machines/kj-laptop01/configuration.nix new file mode 100644 index 0000000..610ecd3 --- /dev/null +++ b/machines/kj-laptop01/configuration.nix @@ -0,0 +1,134 @@ +{ + modulesPath, + lib, + pkgs, + sops, + config, + ... +}@args: +{ + imports = [ + ./disk-config.nix + ]; + + nix = { + extraOptions = '' + experimental-features = ca-derivations nix-command flakes + ''; + settings = { + substituters = [ + "https://cache.nixos.org" + "https://cache.ngi0.nixos.org/" + ]; + trusted-public-keys = [ + "cache.ngi0.nixos.org-1:KqH5CBLNSyX184S9BKZJo1LxrxJ9ltnY2uAs5c/f1MA=" + ]; + }; + }; + + sops = { + defaultSopsFile = ./secrets.yaml; + age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; + age.generateKey = false; + + secrets = { + luks_passphrase = { }; + kj_hashed_password = { + neededForUsers = true; + }; + ssh_host_key_ed25519 = { }; + ssh_host_key_rsa = { }; + }; + }; + + boot.loader.systemd-boot.enable = true; + system.stateVersion = "25.05"; + swapDevices = [ + { + device = "/swap/swapfile"; + size = 32768; + } + ]; + + security.sudo.enable = true; + users.mutableUsers = false; + users.groups.kjtsanaktsidis = { }; + users.users = { + kjtsanaktsidis = { + createHome = true; + isNormalUser = true; + description = "KJ Tsanaktsidis"; + group = "kjtsanaktsidis"; + extraGroups = [ + "wheel" + "networkmanager" + ]; + shell = pkgs.zsh; + hashedPasswordFile = config.sops.secrets.kj_hashed_password.path; + openssh.authorizedKeys.keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAC/BtvW1c1RbBI8eeGo7oOH2y9byBaxWVDHsErgaE+s kjtsanaktsidis@KJMacbookGroq.local" + ]; + }; + }; + + # Enable systemd-resolved for DNS + services.resolved = { + enable = true; + llmnr = "true"; + extraConfig = '' + MulticastDNS=yes + ''; + }; + networking.hostName = "kj-laptop01"; + networking.nameservers = [ "127.0.0.53" ]; + networking.networkmanager = { + enable = true; + dns = "systemd-resolved"; + # Enable mDNS on NetworkManager connections + connectionConfig = { + "connection.mdns" = "2"; # 2 = yes (resolve & register) + }; + }; + + services.openssh = { + enable = true; + hostKeys = [ + { + type = "ed25519"; + path = config.sops.secrets.ssh_host_key_ed25519.path; + } + { + type = "rsa"; + path = config.sops.secrets.ssh_host_key_rsa.path; + } + ]; + }; + + environment.systemPackages = with pkgs; []; + + # Enable zsh system-wide + programs.zsh.enable = true; + + # Disable Alt+Left/Right virtual terminal switching + console.keyMap = "us"; + + # Create systemd service to disable only Alt+Arrow VT switching + systemd.services.disable-alt-arrow-vt = { + description = "Disable Alt+Arrow VT switching"; + wantedBy = [ "multi-user.target" ]; + after = [ "systemd-vconsole-setup.service" ]; + script = '' + # Define string sequences for Alt+Arrow that generate proper terminal escape sequences + cat << 'EOF' | ${pkgs.kbd}/bin/loadkeys + string F200 = "\033[1;3D" + string F201 = "\033[1;3C" + alt keycode 105 = F200 + alt keycode 106 = F201 + EOF + ''; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + }; +} diff --git a/machines/kj-laptop01/disk-config.nix b/machines/kj-laptop01/disk-config.nix new file mode 100644 index 0000000..b0f74c9 --- /dev/null +++ b/machines/kj-laptop01/disk-config.nix @@ -0,0 +1,83 @@ +{ + config, + ... +}: +{ + disko.devices = { + disk.nvme0n1 = { + device = "/dev/nvme0n1"; + type = "disk"; + content = { + type = "gpt"; + partitions = { + esp = { + name = "ESP"; + start = "1MiB"; + size = "1023M"; + type = "EF00"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + }; + luks = { + name = "cryptroot"; + type = "8300"; + size = "100%"; + content = { + type = "luks"; + name = "crypted"; + passwordFile = config.sops.secrets.luks_passphrase.path; + settings = { + allowDiscards = true; + bypassWorkqueues = true; + }; + content = { + type = "btrfs"; + subvolumes = { + "@" = { }; + "@/root" = { + mountpoint = "/"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "@/home" = { + mountpoint = "/home"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "@/var" = { + mountpoint = "/var"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "@/nix" = { + mountpoint = "/nix"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "@/swap" = { + mountpoint = "/swap"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + }; + }; + }; + }; + }; + }; + }; + }; +} diff --git a/machines/kj-laptop01/facter.json b/machines/kj-laptop01/facter.json new file mode 100644 index 0000000..aadd9b4 --- /dev/null +++ b/machines/kj-laptop01/facter.json @@ -0,0 +1,4100 @@ +{ + "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": false, + "pnp_id": 0, + "lba_support": false, + "low_memory_size": 0, + "smbios_version": 770 + }, + "bluetooth": [ + { + "index": 43, + "attached_to": 41, + "class_list": ["usb", "bluetooth"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0115", + "name": "Bluetooth Device", + "value": 277 + }, + "vendor": { + "hex": "8087", + "value": 32903 + }, + "device": { + "hex": "0026", + "value": 38 + }, + "revision": { + "hex": "0000", + "name": "0.02", + "value": 0 + }, + "model": "Bluetooth Device", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.0", + "sysfs_bus_id": "3-10:1.0", + "resources": [ + { + "type": "baud", + "speed": 12000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "device_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "btusb", + "driver_module": "btusb", + "drivers": ["btusb"], + "driver_modules": ["btusb"], + "module_alias": "usb:v8087p0026d0002dcE0dsc01dp01icE0isc01ip01in00" + }, + { + "index": 48, + "attached_to": 41, + "class_list": ["usb", "bluetooth"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0115", + "name": "Bluetooth Device", + "value": 277 + }, + "vendor": { + "hex": "8087", + "value": 32903 + }, + "device": { + "hex": "0026", + "value": 38 + }, + "revision": { + "hex": "0000", + "name": "0.02", + "value": 0 + }, + "model": "Bluetooth Device", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.1", + "sysfs_bus_id": "3-10:1.1", + "resources": [ + { + "type": "baud", + "speed": 12000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "device_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 1, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "btusb", + "driver_module": "btusb", + "drivers": ["btusb"], + "driver_modules": ["btusb"], + "module_alias": "usb:v8087p0026d0002dcE0dsc01dp01icE0isc01ip01in01" + } + ], + "bridge": [ + { + "index": 12, + "attached_to": 0, + "class_list": ["pci", "bridge"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 28 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0b8", + "value": 41144 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.0", + "sysfs_bus_id": "0000:00:1c.0", + "sysfs_iommu_group_id": 10, + "resources": [ + { + "type": "irq", + "base": 127, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 0, + "command": 1031, + "header_type": 1, + "secondary_bus": 8, + "irq": 127, + "prog_if": 0 + }, + "driver": "pcieport", + "driver_module": "pcieportdrv", + "drivers": ["pcieport"], + "driver_modules": ["pcieportdrv"], + "module_alias": "pci:v00008086d0000A0B8sv000017AAsd000022C9bc06sc04i00" + }, + { + "index": 14, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "a082", + "value": 41090 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel ISA bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.0", + "sysfs_bus_id": "0000:00:1f.0", + "sysfs_iommu_group_id": 12, + "detail": { + "function": 0, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "irq": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d0000A082sv000017AAsd000022C9bc06sc01i00" + }, + { + "index": 15, + "attached_to": 0, + "class_list": ["pci", "bridge"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 28 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0bf", + "value": 41151 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.7", + "sysfs_bus_id": "0000:00:1c.7", + "sysfs_iommu_group_id": 11, + "resources": [ + { + "type": "irq", + "base": 128, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 7, + "command": 1031, + "header_type": 1, + "secondary_bus": 10, + "irq": 128, + "prog_if": 0 + }, + "driver": "pcieport", + "driver_module": "pcieportdrv", + "drivers": ["pcieport"], + "driver_modules": ["pcieportdrv"], + "module_alias": "pci:v00008086d0000A0BFsv000017AAsd000022C9bc06sc04i00" + }, + { + "index": 17, + "attached_to": 0, + "class_list": ["pci", "bridge"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 7 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a27", + "value": 39463 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:07.2", + "sysfs_bus_id": "0000:00:07.2", + "sysfs_iommu_group_id": 0, + "resources": [ + { + "type": "irq", + "base": 126, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 2, + "command": 1031, + "header_type": 1, + "secondary_bus": 80, + "irq": 126, + "prog_if": 0 + }, + "driver": "pcieport", + "driver_module": "pcieportdrv", + "drivers": ["pcieport"], + "driver_modules": ["pcieportdrv"], + "module_alias": "pci:v00008086d00009A27sv000017AAsd000022C9bc06sc04i00" + }, + { + "index": 22, + "attached_to": 0, + "class_list": ["pci", "bridge"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 7 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a25", + "value": 39461 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:07.0", + "sysfs_bus_id": "0000:00:07.0", + "sysfs_iommu_group_id": 1, + "resources": [ + { + "type": "irq", + "base": 125, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 0, + "command": 1031, + "header_type": 1, + "secondary_bus": 32, + "irq": 125, + "prog_if": 0 + }, + "driver": "pcieport", + "driver_module": "pcieportdrv", + "drivers": ["pcieport"], + "driver_modules": ["pcieportdrv"], + "module_alias": "pci:v00008086d00009A25sv000017AAsd000022C9bc06sc04i00" + }, + { + "index": 26, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a14", + "value": 39444 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Host bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:00.0", + "sysfs_bus_id": "0000:00:00.0", + "sysfs_iommu_group_id": 3, + "detail": { + "function": 0, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "irq": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d00009A14sv000017AAsd000022C9bc06sc00i00" + }, + { + "index": 27, + "attached_to": 0, + "class_list": ["pci", "bridge"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 6 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a09", + "value": 39433 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:06.0", + "sysfs_bus_id": "0000:00:06.0", + "sysfs_iommu_group_id": 5, + "resources": [ + { + "type": "irq", + "base": 124, + "triggered": 0, + "enabled": true + } + ], + "detail": { + "function": 0, + "command": 1031, + "header_type": 1, + "secondary_bus": 4, + "irq": 124, + "prog_if": 0 + }, + "driver": "pcieport", + "driver_module": "pcieportdrv", + "drivers": ["pcieport"], + "driver_modules": ["pcieportdrv"], + "module_alias": "pci:v00008086d00009A09sv000017AAsd000022C9bc06sc04i00" + } + ], + "camera": [ + { + "index": 40, + "attached_to": 41, + "class_list": ["camera", "usb"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "04f2", + "name": "Chicony Electronics Co., Ltd.", + "value": 1266 + }, + "device": { + "hex": "b6d0", + "name": "Integrated Camera", + "value": 46800 + }, + "revision": { + "hex": "0000", + "name": "59.18", + "value": 0 + }, + "serial": "0001", + "model": "Chicony Electronics Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.2", + "sysfs_bus_id": "3-4:1.2", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 2, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 2 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": ["uvcvideo"], + "driver_modules": ["uvcvideo"], + "module_alias": "usb:v04F2pB6D0d5918dcEFdsc02dp01ic0Eisc01ip01in02" + }, + { + "index": 42, + "attached_to": 41, + "class_list": ["camera", "usb"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "04f2", + "name": "Chicony Electronics Co., Ltd.", + "value": 1266 + }, + "device": { + "hex": "b6d0", + "name": "Integrated Camera", + "value": 46800 + }, + "revision": { + "hex": "0000", + "name": "59.18", + "value": 0 + }, + "serial": "0001", + "model": "Chicony Electronics Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0", + "sysfs_bus_id": "3-4:1.0", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 0 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": ["uvcvideo"], + "driver_modules": ["uvcvideo"], + "module_alias": "usb:v04F2pB6D0d5918dcEFdsc02dp01ic0Eisc01ip00in00" + }, + { + "index": 45, + "attached_to": 41, + "class_list": ["camera", "usb"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "04f2", + "name": "Chicony Electronics Co., Ltd.", + "value": 1266 + }, + "device": { + "hex": "b6d0", + "name": "Integrated Camera", + "value": 46800 + }, + "revision": { + "hex": "0000", + "name": "59.18", + "value": 0 + }, + "serial": "0001", + "model": "Chicony Electronics Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.3", + "sysfs_bus_id": "3-4:1.3", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "interface_protocol": 1, + "interface_number": 3, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 2 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": ["uvcvideo"], + "driver_modules": ["uvcvideo"], + "module_alias": "usb:v04F2pB6D0d5918dcEFdsc02dp01ic0Eisc02ip01in03" + }, + { + "index": 47, + "attached_to": 41, + "class_list": ["camera", "usb"], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "04f2", + "name": "Chicony Electronics Co., Ltd.", + "value": 1266 + }, + "device": { + "hex": "b6d0", + "name": "Integrated Camera", + "value": 46800 + }, + "revision": { + "hex": "0000", + "name": "59.18", + "value": 0 + }, + "serial": "0001", + "model": "Chicony Electronics Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1", + "sysfs_bus_id": "3-4:1.1", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "interface_protocol": 0, + "interface_number": 1, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 0 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": ["uvcvideo"], + "driver_modules": ["uvcvideo"], + "module_alias": "usb:v04F2pB6D0d5918dcEFdsc02dp01ic0Eisc02ip00in01" + } + ], + "cpu": [ + { + "architecture": "x86_64", + "vendor_name": "GenuineIntel", + "family": 6, + "model": 140, + "stepping": 1, + "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", + "pdpe1gb", + "rdtscp", + "lm", + "constant_tsc", + "art", + "arch_perfmon", + "pebs", + "bts", + "rep_good", + "nopl", + "xtopology", + "nonstop_tsc", + "cpuid", + "aperfmperf", + "tsc_known_freq", + "pni", + "pclmulqdq", + "dtes64", + "monitor", + "ds_cpl", + "vmx", + "est", + "tm2", + "ssse3", + "sdbg", + "fma", + "cx16", + "xtpr", + "pdcm", + "pcid", + "sse4_1", + "sse4_2", + "x2apic", + "movbe", + "popcnt", + "tsc_deadline_timer", + "aes", + "xsave", + "avx", + "f16c", + "rdrand", + "lahf_lm", + "abm", + "3dnowprefetch", + "cpuid_fault", + "epb", + "cat_l2", + "cdp_l2", + "ssbd", + "ibrs", + "ibpb", + "stibp", + "ibrs_enhanced", + "tpr_shadow", + "flexpriority", + "ept", + "vpid", + "ept_ad", + "fsgsbase", + "tsc_adjust", + "bmi1", + "avx2", + "smep", + "bmi2", + "erms", + "invpcid", + "rdt_a", + "avx512f", + "avx512dq", + "rdseed", + "adx", + "smap", + "avx512ifma", + "clflushopt", + "clwb", + "intel_pt", + "avx512cd", + "sha_ni", + "avx512bw", + "avx512vl", + "xsaveopt", + "xsavec", + "xgetbv1", + "xsaves", + "split_lock_detect", + "user_shstk", + "dtherm", + "ida", + "arat", + "pln", + "pts", + "hwp", + "hwp_notify", + "hwp_act_window", + "hwp_epp", + "hwp_pkg_req", + "vnmi", + "avx512vbmi", + "umip", + "pku", + "ospke", + "avx512_vbmi2", + "gfni", + "vaes", + "vpclmulqdq", + "avx512_vnni", + "avx512_bitalg", + "avx512_vpopcntdq", + "rdpid", + "movdiri", + "movdir64b", + "fsrm", + "avx512_vp2intersect", + "md_clear", + "ibt", + "flush_l1" + ], + "bugs": [ + "spectre_v1", + "spectre_v2", + "spec_store_bypass", + "swapgs", + "eibrs_pbrsb", + "gds", + "bhi", + "spectre_v2_user", + "old_microcode", + "its", + "its_native_only" + ], + "bogo": 5606.4, + "cache": 12288, + "units": 16, + "physical_id": 0, + "siblings": 8, + "cores": 4, + "fpu": true, + "fpu_exception": true, + "cpuid_level": 27, + "write_protect": false, + "clflush_size": 64, + "cache_alignment": 64, + "address_sizes": { + "physical": "0x27", + "virtual": "0x30" + } + } + ], + "disk": [ + { + "index": 36, + "attached_to": 30, + "class_list": ["disk", "block_device", "nvme"], + "bus_type": { + "hex": "0096", + "name": "NVME", + "value": 150 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "144d", + "value": 5197 + }, + "sub_vendor": { + "hex": "144d", + "value": 5197 + }, + "device": { + "hex": "a808", + "name": "SAMSUNG MZVLB1T0HBLR-000L7", + "value": 43016 + }, + "sub_device": { + "hex": "a801", + "value": 43009 + }, + "serial": "S4EMNX0R530959", + "model": "SAMSUNG MZVLB1T0HBLR-000L7", + "sysfs_id": "/class/block/nvme0n1", + "sysfs_bus_id": "nvme0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:06.0/0000:04:00.0/nvme/nvme0", + "unix_device_name": "/dev/nvme0n1", + "unix_device_number": { + "type": 98, + "major": 259, + "minor": 0, + "range": 0 + }, + "unix_device_names": [ + "/dev/disk/by-id/nvme-SAMSUNG_MZVLB1T0HBLR-000L7_S4EMNX0R530959", + "/dev/disk/by-id/nvme-SAMSUNG_MZVLB1T0HBLR-000L7_S4EMNX0R530959_1", + "/dev/disk/by-id/nvme-eui.0025388511b126ba", + "/dev/disk/by-path/pci-0000:04:00.0-nvme-1", + "/dev/nvme0n1" + ], + "resources": [ + { + "type": "disk_geo", + "cylinders": 976762, + "heads": 64, + "sectors": 32, + "size": "0x0", + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 2000409264, + "value_2": 512 + } + ], + "driver": "nvme", + "driver_module": "nvme", + "drivers": ["nvme"], + "driver_modules": ["nvme"] + }, + { + "index": 37, + "attached_to": 32, + "class_list": ["disk", "usb", "scsi", "block_device"], + "bus_type": { + "hex": "0084", + "name": "SCSI", + "value": 132 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "0781", + "name": "SanDisk", + "value": 1921 + }, + "device": { + "hex": "5581", + "name": "Sandisk Ultra", + "value": 21889 + }, + "revision": { + "hex": "0000", + "name": "PMAP", + "value": 0 + }, + "serial": "AF2F00011030", + "model": "SanDisk Sandisk Ultra", + "sysfs_id": "/class/block/sda", + "sysfs_bus_id": "0:0:0:0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:14.0/usb4/4-1/4-1:1.0/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-id/usb-SanDisk_Sandisk_Ultra_A20013F341FFFF01-0:0", + "/dev/disk/by-path/pci-0000:00:14.0-usb-0:1:1.0-scsi-0:0:0:0", + "/dev/disk/by-path/pci-0000:00:14.0-usbv3-0:1:1.0-scsi-0:0:0:0", + "/dev/sda" + ], + "unix_device_name2": "/dev/sg0", + "unix_device_number2": { + "type": 99, + "major": 21, + "minor": 0, + "range": 1 + }, + "resources": [ + { + "type": "disk_geo", + "cylinders": 15120, + "heads": 64, + "sectors": 32, + "size": "0x0", + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 30965760, + "value_2": 512 + } + ], + "driver": "usb-storage", + "driver_module": "usb_storage", + "drivers": ["sd", "usb-storage"], + "driver_modules": ["sd_mod", "usb_storage"], + "module_alias": "usb:v0781p5581d0100dc00dsc00dp00ic08isc06ip50in00" + } + ], + "graphics_card": [ + { + "index": 31, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a49", + "value": 39497 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel VGA compatible controller", + "sysfs_id": "/devices/pci0000:00/0000:00:02.0", + "sysfs_bus_id": "0000:00:02.0", + "sysfs_iommu_group_id": 2, + "resources": [ + { + "type": "io", + "base": 12288, + "range": 64, + "enabled": true, + "access": "read_write" + }, + { + "type": "irq", + "base": 204, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 274877906944, + "range": 268435456, + "enabled": true, + "access": "read_only", + "prefetch": "no" + }, + { + "type": "mem", + "base": 413323493376, + "range": 16777216, + "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": 204, + "prog_if": 0 + }, + "driver": "i915", + "driver_module": "i915", + "drivers": ["i915"], + "driver_modules": ["i915"], + "module_alias": "pci:v00008086d00009A49sv000017AAsd000022C9bc03sc00i00" + } + ], + "hub": [ + { + "index": 41, + "attached_to": 32, + "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.16.4 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0002", + "name": "xHCI Host Controller", + "value": 2 + }, + "revision": { + "hex": "0000", + "name": "6.16", + "value": 0 + }, + "serial": "0000:00:14.0", + "model": "Linux 6.16.4 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", + "driver_module": "usbcore", + "drivers": ["hub"], + "driver_modules": ["usbcore"], + "module_alias": "usb:v1D6Bp0002d0616dc09dsc00dp01ic09isc00ip00in00" + }, + { + "index": 44, + "attached_to": 32, + "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.16.4 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0003", + "name": "xHCI Host Controller", + "value": 3 + }, + "revision": { + "hex": "0000", + "name": "6.16", + "value": 0 + }, + "serial": "0000:00:14.0", + "model": "Linux 6.16.4 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", + "driver_module": "usbcore", + "drivers": ["hub"], + "driver_modules": ["usbcore"], + "module_alias": "usb:v1D6Bp0003d0616dc09dsc00dp03ic09isc00ip00in00" + }, + { + "index": 46, + "attached_to": 13, + "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.16.4 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0002", + "name": "xHCI Host Controller", + "value": 2 + }, + "revision": { + "hex": "0000", + "name": "6.16", + "value": 0 + }, + "serial": "0000:00:0d.0", + "model": "Linux 6.16.4 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.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": 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", + "driver_module": "usbcore", + "drivers": ["hub"], + "driver_modules": ["usbcore"], + "module_alias": "usb:v1D6Bp0002d0616dc09dsc00dp01ic09isc00ip00in00" + }, + { + "index": 50, + "attached_to": 13, + "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.16.4 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0003", + "name": "xHCI Host Controller", + "value": 3 + }, + "revision": { + "hex": "0000", + "name": "6.16", + "value": 0 + }, + "serial": "0000:00:0d.0", + "model": "Linux 6.16.4 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb2/2-0:1.0", + "sysfs_bus_id": "2-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", + "driver_module": "usbcore", + "drivers": ["hub"], + "driver_modules": ["usbcore"], + "module_alias": "usb:v1D6Bp0003d0616dc09dsc00dp03ic09isc00ip00in00" + } + ], + "memory": [ + { + "index": 11, + "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": 24909262848, + "enabled": true, + "access": "read_write", + "prefetch": "unknown" + }, + { + "type": "phys_mem", + "range": 25769803776 + } + ] + } + ], + "monitor": [ + { + "index": 35, + "attached_to": 31, + "class_list": ["monitor"], + "base_class": { + "hex": "0100", + "name": "Monitor", + "value": 256 + }, + "sub_class": { + "hex": "0002", + "name": "LCD Monitor", + "value": 2 + }, + "vendor": { + "hex": "09e5", + "name": "BOE CQ", + "value": 2533 + }, + "device": { + "hex": "09de", + "value": 2526 + }, + "serial": "0", + "model": "BOE CQ LCD Monitor", + "resources": [ + { + "type": "monitor", + "width": 1920, + "height": 1080, + "vertical_frequency": 60, + "interlaced": false + }, + { + "type": "size", + "unit": "mm", + "value_1": 309, + "value_2": 174 + } + ], + "detail": { + "manufacture_year": 2020, + "manufacture_week": 32, + "vertical_sync": { + "min": 40, + "max": 60 + }, + "horizontal_sync": { + "min": 74, + "max": 74 + }, + "horizontal_sync_timings": { + "disp": 1920, + "sync_start": 1968, + "sync_end": 2000, + "total": 2220 + }, + "vertical_sync_timings": { + "disp": 1080, + "sync_start": 1083, + "sync_end": 1089, + "total": 1240 + }, + "clock": 165170, + "width": 1920, + "height": 1080, + "width_millimetres": 309, + "height_millimetres": 174, + "horizontal_flag": 45, + "vertical_flag": 43, + "vendor": "BOE CQ", + "name": "" + }, + "driver_info": { + "type": "display", + "width": 1920, + "height": 1080, + "vertical_sync": { + "min": 40, + "max": 60 + }, + "horizontal_sync": { + "min": 74, + "max": 74 + }, + "bandwidth": 0, + "horizontal_sync_timings": { + "disp": 1920, + "sync_start": 1968, + "sync_end": 2000, + "total": 2220 + }, + "vertical_sync_timings": { + "disp": 1080, + "sync_start": 1083, + "sync_end": 1089, + "total": 1240 + }, + "horizontal_flag": 45, + "vertical_flag": 43 + } + } + ], + "mouse": [ + { + "index": 55, + "attached_to": 0, + "bus_type": { + "hex": "0080", + "name": "ps2", + "value": 128 + }, + "base_class": { + "hex": "0118", + "name": "touchpad", + "value": 280 + }, + "sub_class": { + "hex": "0000", + "name": "ps2", + "value": 0 + }, + "vendor": { + "hex": "0002", + "value": 2 + }, + "device": { + "hex": "0007", + "value": 7 + }, + "sysfs_id": "/devices/platform/i8042/serio1/input/input6", + "unix_device_names": ["/dev/input/event7", "/dev/input/ + handler"] + } + ], + "network_controller": [ + { + "index": 19, + "attached_to": 0, + "class_list": ["network_controller", "pci", "wlan_card"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 20 + }, + "base_class": { + "hex": "0002", + "name": "Network controller", + "value": 2 + }, + "sub_class": { + "hex": "0082", + "name": "WLAN controller", + "value": 130 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "device": { + "hex": "a0f0", + "value": 41200 + }, + "sub_device": { + "hex": "0070", + "value": 112 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel WLAN controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.3", + "sysfs_bus_id": "0000:00:14.3", + "sysfs_iommu_group_id": 8, + "unix_device_name": "wlp0s20f3", + "unix_device_names": ["wlp0s20f3"], + "resources": [ + { + "type": "hwaddr", + "address": 101 + }, + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413342121984, + "range": 16384, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "phwaddr", + "address": 101 + }, + { + "type": "wlan", + "channels": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12", + "13", + "36", + "40", + "44", + "48", + "52", + "56", + "60", + "64", + "100", + "104", + "108", + "112", + "116", + "120", + "124", + "128", + "132", + "136", + "140" + ], + "frequencies": [ + "2.412", + "2.417", + "2.422", + "2.427", + "2.432", + "2.437", + "2.442", + "2.447", + "2.452", + "2.457", + "2.462", + "2.467", + "2.472", + "5.18", + "5.2", + "5.22", + "5.24", + "5.26", + "5.28", + "5.3", + "5.32", + "5.5", + "5.52", + "5.54", + "5.56", + "5.58", + "5.6", + "5.62", + "5.64", + "5.66", + "5.68", + "5.7" + ], + "auth_modes": ["open", "sharedkey", "wpa-psk", "wpa-eap"], + "enc_modes": ["WEP40", "WEP104", "TKIP", "CCMP"] + } + ], + "detail": { + "function": 3, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 0 + }, + "driver": "iwlwifi", + "driver_module": "iwlwifi", + "drivers": ["iwlwifi"], + "driver_modules": ["iwlwifi"], + "module_alias": "pci:v00008086d0000A0F0sv00008086sd00000070bc02sc80i00" + }, + { + "index": 29, + "attached_to": 0, + "class_list": ["network_controller", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "15fc", + "value": 5628 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel Ethernet controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.6", + "sysfs_bus_id": "0000:00:1f.6", + "sysfs_iommu_group_id": 12, + "unix_device_name": "enp0s31f6", + "unix_device_names": ["enp0s31f6"], + "resources": [ + { + "type": "hwaddr", + "address": 102 + }, + { + "type": "irq", + "base": 193, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 3159359488, + "range": 131072, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "phwaddr", + "address": 102 + } + ], + "detail": { + "function": 6, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 193, + "prog_if": 0 + }, + "driver": "e1000e", + "driver_module": "e1000e", + "drivers": ["e1000e"], + "driver_modules": ["e1000e"], + "module_alias": "pci:v00008086d000015FCsv000017AAsd000022C9bc02sc00i00" + } + ], + "network_interface": [ + { + "index": 51, + "attached_to": 19, + "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/wlp0s20f3", + "sysfs_device_link": "/devices/pci0000:00/0000:00:14.3", + "unix_device_name": "wlp0s20f3", + "unix_device_names": ["wlp0s20f3"], + "resources": [ + { + "type": "hwaddr", + "address": 101 + }, + { + "type": "phwaddr", + "address": 101 + } + ], + "driver": "iwlwifi", + "driver_module": "iwlwifi", + "drivers": ["iwlwifi"], + "driver_modules": ["iwlwifi"] + }, + { + "index": 52, + "attached_to": 29, + "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/enp0s31f6", + "sysfs_device_link": "/devices/pci0000:00/0000:00:1f.6", + "unix_device_name": "enp0s31f6", + "unix_device_names": ["enp0s31f6"], + "resources": [ + { + "type": "hwaddr", + "address": 102 + }, + { + "type": "phwaddr", + "address": 102 + } + ], + "driver": "e1000e", + "driver_module": "e1000e", + "drivers": ["e1000e"], + "driver_modules": ["e1000e"] + }, + { + "index": 53, + "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"] + }, + { + "index": 54, + "attached_to": 0, + "class_list": ["network_interface"], + "base_class": { + "hex": "0107", + "name": "Network Interface", + "value": 263 + }, + "sub_class": { + "hex": "0080", + "name": "Network Interface", + "value": 128 + }, + "model": "Network Interface", + "sysfs_id": "/class/net/wwan0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:1c.0/0000:08:00.0/mhi0/wwan/wwan0", + "unix_device_name": "wwan0", + "unix_device_names": ["wwan0"], + "driver": "wwan", + "drivers": ["wwan"] + } + ], + "pci": [ + { + "index": 16, + "attached_to": 12, + "class_list": ["pci", "unknown"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 8, + "number": 0 + }, + "base_class": { + "hex": "00ff", + "name": "Unclassified device", + "value": 255 + }, + "vendor": { + "hex": "1eac", + "value": 7852 + }, + "sub_vendor": { + "hex": "1eac", + "value": 7852 + }, + "device": { + "hex": "1001", + "value": 4097 + }, + "sub_device": { + "hex": "2001", + "value": 8193 + }, + "model": "Unclassified device", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.0/0000:08:00.0", + "sysfs_bus_id": "0000:08:00.0", + "sysfs_iommu_group_id": 14, + "resources": [ + { + "type": "irq", + "base": 171, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 3157262336, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "mem", + "base": 3157266432, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 171, + "prog_if": 0 + }, + "driver": "mhi-pci-generic", + "driver_module": "mhi_pci_generic", + "drivers": ["mhi-pci-generic"], + "driver_modules": ["mhi_pci_generic"], + "module_alias": "pci:v00001EACd00001001sv00001EACsd00002001bcFFsc00i00" + }, + { + "index": 18, + "attached_to": 0, + "class_list": ["pci", "unknown"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 4 + }, + "base_class": { + "hex": "0011", + "name": "Signal processing controller", + "value": 17 + }, + "sub_class": { + "hex": "0080", + "name": "Signal processing controller", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a03", + "value": 39427 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Signal processing controller", + "sysfs_id": "/devices/pci0000:00/0000:00:04.0", + "sysfs_bus_id": "0000:00:04.0", + "sysfs_iommu_group_id": 4, + "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413341843456, + "range": 131072, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 2, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 0 + }, + "driver": "proc_thermal", + "driver_module": "processor_thermal_device_pci_legacy", + "drivers": ["proc_thermal"], + "driver_modules": ["processor_thermal_device_pci_legacy"], + "module_alias": "pci:v00008086d00009A03sv000017AAsd000022C9bc11sc80i00" + }, + { + "index": 20, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0e0", + "value": 41184 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel Communication controller", + "sysfs_id": "/devices/pci0000:00/0000:00:16.0", + "sysfs_bus_id": "0000:00:16.0", + "sysfs_iommu_group_id": 9, + "resources": [ + { + "type": "irq", + "base": 137, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413342158848, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 137, + "prog_if": 0 + }, + "driver": "mei_me", + "driver_module": "mei_me", + "drivers": ["mei_me"], + "driver_modules": ["mei_me"], + "module_alias": "pci:v00008086d0000A0E0sv000017AAsd000022C9bc07sc80i00" + }, + { + "index": 21, + "attached_to": 15, + "class_list": ["pci", "unknown"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 10, + "number": 0 + }, + "base_class": { + "hex": "00ff", + "name": "Unclassified device", + "value": 255 + }, + "vendor": { + "hex": "10ec", + "value": 4332 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "522a", + "value": 21034 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Unclassified device", + "sysfs_id": "/devices/pci0000:00/0000:00:1c.7/0000:0a:00.0", + "sysfs_bus_id": "0000:0a:00.0", + "sysfs_iommu_group_id": 15, + "resources": [ + { + "type": "irq", + "base": 170, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 3156213760, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 170, + "prog_if": 0 + }, + "driver": "rtsx_pci", + "driver_module": "rtsx_pci", + "drivers": ["rtsx_pci"], + "driver_modules": ["rtsx_pci"], + "module_alias": "pci:v000010ECd0000522Asv000017AAsd000022C9bcFFsc00i00" + }, + { + "index": 23, + "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": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0a4", + "value": 41124 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.5", + "sysfs_bus_id": "0000:00:1f.5", + "sysfs_iommu_group_id": 12, + "resources": [ + { + "type": "mem", + "base": 2692743168, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 5, + "command": 1026, + "header_type": 0, + "secondary_bus": 0, + "irq": 0, + "prog_if": 0 + }, + "driver": "intel-spi", + "driver_module": "spi_intel_pci", + "drivers": ["intel-spi"], + "driver_modules": ["spi_intel_pci"], + "module_alias": "pci:v00008086d0000A0A4sv000017AAsd000022C9bc0Csc80i00" + }, + { + "index": 28, + "attached_to": 0, + "class_list": ["pci", "unknown"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 20 + }, + "base_class": { + "hex": "0005", + "name": "Memory controller", + "value": 5 + }, + "sub_class": { + "hex": "0000", + "name": "RAM memory", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0ef", + "value": 41199 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel RAM memory", + "sysfs_id": "/devices/pci0000:00/0000:00:14.2", + "sysfs_bus_id": "0000:00:14.2", + "sysfs_iommu_group_id": 7, + "resources": [ + { + "type": "mem", + "base": 413342138368, + "range": 16384, + "enabled": false, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "mem", + "base": 413342162944, + "range": 4096, + "enabled": false, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 2, + "command": 0, + "header_type": 0, + "secondary_bus": 0, + "irq": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d0000A0EFsv000017AAsd000022C9bc05sc00i00" + }, + { + "index": 33, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0a3", + "value": 41123 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel SMBus", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.4", + "sysfs_bus_id": "0000:00:1f.4", + "sysfs_iommu_group_id": 12, + "resources": [ + { + "type": "io", + "base": 61344, + "range": 32, + "enabled": true, + "access": "read_write" + }, + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413342154752, + "range": 256, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 4, + "command": 3, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 0 + }, + "driver": "i801_smbus", + "driver_module": "i2c_i801", + "drivers": ["i801_smbus"], + "driver_modules": ["i2c_i801"], + "module_alias": "pci:v00008086d0000A0A3sv000017AAsd000022C9bc0Csc05i00" + } + ], + "sound": [ + { + "index": 25, + "attached_to": 0, + "class_list": ["sound", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "base_class": { + "hex": "0004", + "name": "Multimedia controller", + "value": 4 + }, + "sub_class": { + "hex": "0003", + "value": 3 + }, + "pci_interface": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0c8", + "value": 41160 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel Multimedia controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.3", + "sysfs_bus_id": "0000:00:1f.3", + "sysfs_iommu_group_id": 12, + "resources": [ + { + "type": "irq", + "base": 205, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413340270592, + "range": 1048576, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "mem", + "base": 413342105600, + "range": 16384, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 3, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 205, + "prog_if": 128 + }, + "driver": "sof-audio-pci-intel-tgl", + "driver_module": "snd_sof_pci_intel_tgl", + "drivers": ["sof-audio-pci-intel-tgl"], + "driver_modules": ["snd_sof_pci_intel_tgl"], + "module_alias": "pci:v00008086d0000A0C8sv000017AAsd000022C9bc04sc03i80" + } + ], + "storage_controller": [ + { + "index": 30, + "attached_to": 27, + "class_list": ["storage_controller", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 4, + "number": 0 + }, + "base_class": { + "hex": "0001", + "name": "Mass storage controller", + "value": 1 + }, + "sub_class": { + "hex": "0008", + "value": 8 + }, + "pci_interface": { + "hex": "0002", + "value": 2 + }, + "vendor": { + "hex": "144d", + "value": 5197 + }, + "sub_vendor": { + "hex": "144d", + "value": 5197 + }, + "device": { + "hex": "a808", + "value": 43016 + }, + "sub_device": { + "hex": "a801", + "value": 43009 + }, + "model": "Mass storage controller", + "sysfs_id": "/devices/pci0000:00/0000:00:06.0/0000:04:00.0", + "sysfs_bus_id": "0000:04:00.0", + "sysfs_iommu_group_id": 13, + "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 3158310912, + "range": 16384, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 2 + }, + "driver": "nvme", + "driver_module": "nvme", + "drivers": ["nvme"], + "driver_modules": ["nvme"], + "module_alias": "pci:v0000144Dd0000A808sv0000144Dsd0000A801bc01sc08i02" + } + ], + "system": { + "form_factor": "laptop" + }, + "usb": [ + { + "index": 38, + "attached_to": 41, + "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": "06cb", + "value": 1739 + }, + "device": { + "hex": "00bd", + "value": 189 + }, + "serial": "13899f4d8720", + "model": "Unclassified device", + "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": 12000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ff", + "name": "vendor_spec", + "value": 255 + }, + "device_subclass": { + "hex": "0010", + "name": "audio_video", + "value": 16 + }, + "device_protocol": 255, + "interface_class": { + "hex": "00ff", + "name": "vendor_spec", + "value": 255 + }, + "interface_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "module_alias": "usb:v06CBp00BDd0000dcFFdsc10dpFFicFFisc00ip00in00" + }, + { + "index": 39, + "attached_to": 41, + "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": "04f2", + "name": "Chicony Electronics Co., Ltd.", + "value": 1266 + }, + "device": { + "hex": "b6d0", + "name": "Integrated Camera", + "value": 46800 + }, + "revision": { + "hex": "0000", + "name": "59.18", + "value": 0 + }, + "serial": "0001", + "model": "Chicony Electronics Integrated Camera", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.4", + "sysfs_bus_id": "3-4:1.4", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00fe", + "name": "application", + "value": 254 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 4, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "00fe", + "name": "application", + "value": 254 + }, + "function_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "function_protocol": 0, + "interface_count": 1, + "first_interface": 4 + } + }, + "hotplug": "usb", + "module_alias": "usb:v04F2pB6D0d5918dcEFdsc02dp01icFEisc01ip01in04" + } + ], + "usb_controller": [ + { + "index": 13, + "attached_to": 0, + "class_list": ["usb_controller", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 13 + }, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a13", + "value": 39443 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0", + "sysfs_bus_id": "0000:00:0d.0", + "sysfs_iommu_group_id": 6, + "resources": [ + { + "type": "irq", + "base": 129, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413342040064, + "range": 65536, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 129, + "prog_if": 48 + }, + "driver": "xhci_hcd", + "driver_module": "xhci_pci", + "drivers": ["xhci_hcd"], + "driver_modules": ["xhci_pci"], + "module_alias": "pci:v00008086d00009A13sv000017AAsd000022C9bc0Csc03i30" + }, + { + "index": 24, + "attached_to": 0, + "class_list": ["usb_controller", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 13 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0003", + "name": "USB Controller", + "value": 3 + }, + "pci_interface": { + "hex": "0040", + "value": 64 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a1d", + "value": 39453 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.3", + "sysfs_bus_id": "0000:00:0d.3", + "sysfs_iommu_group_id": 6, + "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413341319168, + "range": 262144, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "mem", + "base": 413342167040, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 3, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 64 + }, + "driver": "thunderbolt", + "driver_module": "thunderbolt", + "drivers": ["thunderbolt"], + "driver_modules": ["thunderbolt"], + "module_alias": "pci:v00008086d00009A1Dsv000017AAsd000022C9bc0Csc03i40" + }, + { + "index": 32, + "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": "17aa", + "value": 6058 + }, + "device": { + "hex": "a0ed", + "value": 41197 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0020", + "value": 32 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0", + "sysfs_bus_id": "0000:00:14.0", + "sysfs_iommu_group_id": 7, + "resources": [ + { + "type": "irq", + "base": 138, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413341974528, + "range": 65536, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "irq": 138, + "prog_if": 48 + }, + "driver": "xhci_hcd", + "driver_module": "xhci_pci", + "drivers": ["xhci_hcd"], + "driver_modules": ["xhci_pci"], + "module_alias": "pci:v00008086d0000A0EDsv000017AAsd000022C9bc0Csc03i30" + }, + { + "index": 34, + "attached_to": 0, + "class_list": ["usb_controller", "pci"], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 13 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0003", + "name": "USB Controller", + "value": 3 + }, + "pci_interface": { + "hex": "0040", + "value": 64 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "17aa", + "value": 6058 + }, + "device": { + "hex": "9a1b", + "value": 39451 + }, + "sub_device": { + "hex": "22c9", + "value": 8905 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.2", + "sysfs_bus_id": "0000:00:0d.2", + "sysfs_iommu_group_id": 6, + "resources": [ + { + "type": "irq", + "base": 16, + "triggered": 0, + "enabled": true + }, + { + "type": "mem", + "base": 413341581312, + "range": 262144, + "enabled": true, + "access": "read_write", + "prefetch": "no" + }, + { + "type": "mem", + "base": 413342171136, + "range": 4096, + "enabled": true, + "access": "read_write", + "prefetch": "no" + } + ], + "detail": { + "function": 2, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "irq": 16, + "prog_if": 64 + }, + "driver": "thunderbolt", + "driver_module": "thunderbolt", + "drivers": ["thunderbolt"], + "driver_modules": ["thunderbolt"], + "module_alias": "pci:v00008086d00009A1Bsv000017AAsd000022C9bc0Csc03i40" + } + ] + }, + "smbios": { + "bios": { + "handle": 16, + "vendor": "LENOVO", + "version": "N34ET62W (1.62 )", + "date": "04/29/2024", + "features": [ + "PCI supported", + "PnP supported", + "BIOS flashable", + "BIOS shadowing allowed", + "CD boot supported", + "Selectable boot supported", + "EDD spec supported", + "720kB Floppy supported", + "Print Screen supported", + "8042 Keyboard Services supported", + "Serial Services supported", + "Printer Services supported", + "CGA/Mono Video supported", + "ACPI supported", + "USB Legacy supported", + "BIOS Boot Spec supported" + ], + "start_address": "0xe0000", + "rom_size": 16777216 + }, + "board": { + "handle": 18, + "manufacturer": "LENOVO", + "product": "20W0S09000", + "version": "SDK0K17763 WIN", + "board_type": { + "hex": "000a", + "name": "Motherboard", + "value": 10 + }, + "features": ["Hosting Board", "Replaceable"], + "location": "Not Available", + "chassis": 19 + }, + "cache": [ + { + "handle": 11, + "socket": "L1 Cache", + "size_max": 192, + "size_current": 192, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "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": "0009", + "name": "Other", + "value": 9 + }, + "sram_type_current": ["Synchronous"], + "sram_type_supported": ["Synchronous"] + }, + { + "handle": 12, + "socket": "L1 Cache", + "size_max": 128, + "size_current": 128, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0003", + "name": "Instruction", + "value": 3 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": ["Synchronous"], + "sram_type_supported": ["Synchronous"] + }, + { + "handle": 13, + "socket": "L2 Cache", + "size_max": 5120, + "size_current": 5120, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 1, + "ecc": { + "hex": "0005", + "name": "Single-bit", + "value": 5 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "sram_type_current": ["Synchronous"], + "sram_type_supported": ["Synchronous"] + }, + { + "handle": 14, + "socket": "L3 Cache", + "size_max": 12288, + "size_current": 12288, + "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": ["Synchronous"], + "sram_type_supported": ["Synchronous"] + } + ], + "chassis": [ + { + "handle": 19, + "manufacturer": "LENOVO", + "version": "None", + "chassis_type": { + "hex": "000a", + "name": "Notebook", + "value": 10 + }, + "lock_present": false, + "bootup_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "power_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "thermal_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "security_state": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "oem": "0x0" + } + ], + "config": { + "handle": 24 + }, + "group_associations": [ + { + "handle": 33, + "power": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "keyboard": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + }, + "admin": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "reset": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + } + }, + { + "handle": 35, + "name": "$MEI", + "handles": [0] + } + ], + "language": [ + { + "handle": 25, + "languages": ["en-US"] + } + ], + "memory_array": [ + { + "handle": 0, + "location": { + "hex": "0003", + "name": "Motherboard", + "value": 3 + }, + "usage": { + "hex": "0003", + "name": "System memory", + "value": 3 + }, + "ecc": { + "hex": "0003", + "name": "None", + "value": 3 + }, + "max_size": "0x4000000", + "error_handle": 65534, + "slots": 2 + } + ], + "memory_array_mapped_address": [ + { + "handle": 3, + "array_handle": 0, + "start_address": "0x0", + "end_address": "0x600000000", + "part_width": 2 + } + ], + "memory_device": [ + { + "handle": 1, + "location": "Controller0-ChannelA", + "bank_location": "BANK 0", + "manufacturer": "Micron Technology", + "part_number": "4ATS2G64HZ-3G2B1", + "array_handle": 0, + "error_handle": 65534, + "width": 64, + "ecc_bits": 0, + "size": 16777216, + "form_factor": { + "hex": "000d", + "name": "SODIMM", + "value": 13 + }, + "set": 0, + "memory_type": { + "hex": "001a", + "name": "Other", + "value": 26 + }, + "memory_type_details": ["Synchronous"], + "speed": 3200 + }, + { + "handle": 2, + "location": "Controller1-ChannelA-DIMM0", + "bank_location": "BANK 0", + "manufacturer": "SK Hynix", + "part_number": "HMAA1GS6CJR6N-XN", + "array_handle": 0, + "error_handle": 65534, + "width": 64, + "ecc_bits": 0, + "size": 8388608, + "form_factor": { + "hex": "000d", + "name": "SODIMM", + "value": 13 + }, + "set": 0, + "memory_type": { + "hex": "001a", + "name": "Other", + "value": 26 + }, + "memory_type_details": ["Synchronous"], + "speed": 3200 + } + ], + "memory_error": [ + { + "handle": 37, + "error_type": { + "hex": "0003", + "name": "OK", + "value": 3 + }, + "granularity": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "operation": { + "hex": "0002", + "name": "Unknown", + "value": 2 + }, + "syndrome": 0, + "array_address": "0x80000000", + "device_address": "0x80000000", + "range": 2147483648 + } + ], + "pointing_device": [ + { + "handle": 38, + "mouse_type": { + "hex": "0005", + "name": "Track Point", + "value": 5 + }, + "interface": { + "hex": "0004", + "name": "PS/2", + "value": 4 + }, + "buttons": 3 + }, + { + "handle": 39, + "mouse_type": { + "hex": "0007", + "name": "Touch Pad", + "value": 7 + }, + "interface": { + "hex": "0004", + "name": "PS/2", + "value": 4 + }, + "buttons": 2 + } + ], + "port_connector": [ + { + "handle": 20, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 1" + }, + { + "handle": 21, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB 2" + }, + { + "handle": 22, + "port_type": { + "hex": "001d", + "name": "Audio Port", + "value": 29 + }, + "internal_reference_designator": "Not Available", + "external_connector_type": { + "hex": "001f", + "name": "Mini-jack [headphones]", + "value": 31 + }, + "external_reference_designator": "Headphone/Microphone Combo Jack1" + } + ], + "processor": [ + { + "handle": 15, + "socket": "U3E1", + "socket_type": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "socket_populated": true, + "manufacturer": "Intel(R) Corporation", + "version": "11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz", + "part": "None", + "processor_type": { + "hex": "0003", + "name": "CPU", + "value": 3 + }, + "processor_family": { + "hex": "00c6", + "name": "Other", + "value": 198 + }, + "processor_status": { + "hex": "0001", + "name": "Enabled", + "value": 1 + }, + "clock_ext": 100, + "clock_max": 2800, + "cache_handle_l1": 12, + "cache_handle_l2": 13, + "cache_handle_l3": 14 + } + ], + "slot": [ + { + "handle": 23, + "designation": "SimCard Slot", + "slot_type": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "bus_width": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "usage": { + "hex": "0003", + "name": "Available", + "value": 3 + }, + "length": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "id": 0 + } + ], + "system": { + "handle": 17, + "manufacturer": "LENOVO", + "product": "20W0S09000", + "version": "ThinkPad T14 Gen 2i", + "wake_up": { + "hex": "0006", + "name": "Power Switch", + "value": 6 + } + } + } +} diff --git a/machines/kj-laptop01/home.nix b/machines/kj-laptop01/home.nix new file mode 100644 index 0000000..7d18022 --- /dev/null +++ b/machines/kj-laptop01/home.nix @@ -0,0 +1,109 @@ +{ + config, + pkgs, + ... +}: +{ + home.username = "kjtsanaktsidis"; + home.homeDirectory = "/home/kjtsanaktsidis"; + home.stateVersion = "25.05"; + + programs.home-manager.enable = true; + + # Install packages + home.packages = with pkgs; [ + htop + zellij + tmux + neovim + git-absorb + # LazyVim dependencies + lazygit + ripgrep + fd + nodejs + python3 + ]; + + # Configure sops for home-manager + sops = { + age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ]; + defaultSopsFile = ./secrets.yaml; + secrets = { + kj_id_ed25519 = { + path = "${config.home.homeDirectory}/.ssh/id_ed25519"; + }; + kj_gpg_private_key = { + path = "${config.home.homeDirectory}/.gnupg/private-key.asc"; + }; + }; + }; + + # LazyVim configuration for Neovim + programs.neovim = { + enable = true; + defaultEditor = true; + viAlias = true; + vimAlias = true; + plugins = with pkgs.vimPlugins; [ + LazyVim + ]; + extraLuaConfig = '' + require("lazyvim").setup() + ${builtins.readFile ./lazyvim-config.lua} + ''; + }; + + # Git configuration + programs.git = { + enable = true; + userName = "KJ Tsanaktsidis"; + userEmail = "kj@kjtsanaktsidis.id.au"; + signing = { + key = "7F21FB211E24B02A5DEF86E227CD40EB9B81C726"; + signByDefault = true; + }; + extraConfig = { + pull.rebase = true; + }; + }; + + # SSH public key (private key is managed by sops) + home.file.".ssh/id_ed25519.pub" = { + text = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMtGcEXu5S/0zsF6Suxc65DmGFGt1JWRnqadoVhErOed kjtsanaktsidis@KJMacbookGroq.local"; + }; + + # Zsh configuration + programs.zsh = { + enable = true; + history = { + size = 1000000; + save = 1000000; + append = true; + extended = true; + ignoreSpace = false; + ignoreDups = false; + }; + + initContent = builtins.readFile ./zsh-config.zsh; + }; + + # FZF with standard keybindings + programs.fzf = { + enable = true; + enableZshIntegration = true; + }; + + programs.gpg = { + enable = true; + homedir = "${config.home.homeDirectory}/.gnupg"; + }; + services.gpg-agent = { + enable = true; + }; + home.activation.importGpgPrivateKey = config.lib.dag.entryAfter ["sops-nix" "onFilesChange"] '' + export GNUPGHOME="${config.programs.gpg.homedir}" + $DRY_RUN_CMD ${pkgs.gnupg}/bin/gpg --batch --verbose --trust-model always --import "${config.sops.secrets.kj_gpg_private_key.path}" + echo "GPG private key imported from sops secret" + ''; +} diff --git a/machines/kj-laptop01/lazyvim-config.lua b/machines/kj-laptop01/lazyvim-config.lua new file mode 100644 index 0000000..038ed1b --- /dev/null +++ b/machines/kj-laptop01/lazyvim-config.lua @@ -0,0 +1,49 @@ +-- Store a lot of history +vim.opt.history = 10000 +-- Enable mouse support +vim.opt.mouse = "a" +-- Line numbers +vim.opt.number = true +-- Vim janks about a lot as the LSP floats in or out if the sign column width +-- is not fixed ahead of time. +vim.opt.signcolumn = "yes:1" +-- don't take up the whole screen with popups +vim.opt.pumheight = 15 +-- lazy.nvim does relative line numbers +vim.wo.relativenumber = false +-- .nvimrc files +vim.opt.exrc = true +-- disable autoformat by default +vim.g.autoformat = false +vim.g.root_spec = { "cwd" } + +--[[ +local cmp = require("cmp") +local enabled_except_in_comments = function() + if vim.api.nvim_get_mode().mode == "c" then + return true + else + local context = require("cmp.config.context") + return not context.in_treesitter_capture("comment") and not context.in_syntax_group("Comment") + end +end +cmp.setup.filetype("markdown", { + enabled = false, +}) + +for _, ft in ipairs({ "c", "cpp", "ruby" }) do + cmp.setup.filetype(ft, { + enabled = enabled_except_in_comments, + }) +end +]]-- + +vim.api.nvim_create_user_command("DiagHide", function(args) + vim.diagnostic.enable(false) +end, {}) +vim.api.nvim_create_user_command("DiagShow", function(args) + vim.diagnostic.enable(true) +end, {}) +vim.api.nvim_create_user_command("FindRefs", function(args) + require("telescope.builtin").lsp_references() +end, {}) diff --git a/machines/kj-laptop01/secrets.yaml b/machines/kj-laptop01/secrets.yaml new file mode 100644 index 0000000..6a8a038 --- /dev/null +++ b/machines/kj-laptop01/secrets.yaml @@ -0,0 +1,30 @@ +kj_hashed_password: ENC[AES256_GCM,data:oBXnSVctLZOEulvaKQlQcWznTlaUViS5u2c6kyKaDCQVQ+wColZqnEeVxvAw3l/1+PkdfxwsojP9ldjJZAoCnnlBs0WoLCsN7A==,iv:hANLxQSqnwd7J+WpIpPz0j5ZV/k0ksdvxARsTq8U2B8=,tag:in8ALpLpBvyDvX/+ZUCxhg==,type:str] +luks_passphrase: ENC[AES256_GCM,data:1HVj/AKohfIkZjzrsJd/S+jG,iv:WSEbPjLUDLsHgR3LdexNRbXOFpCCec0JJy8VnrMy5s8=,tag:/79ZayGOdZb0+tuWPpwbxw==,type:str] +ssh_host_key_ed25519: ENC[AES256_GCM,data:GYcBJqP05QNpFYpZkhomJzFL48SfE+YwmaWeyLPf1c1XQHXKRkUqsAnfsWOrWY+Jkur4ILfUr0iKaWAKEz7Cci+wzYErffBt0awAL93JsUuzlEQEIPepnPrORdrGKMuQn5ipNzSi+dVzuCk7q+z/ZuQWnK6g/xEE+LUfonCRczhCdG6BhB9qM/5fmpRR3y5K3qCJn+FkoENVvB+TBEDQsofttSK9K8mYbsfYdY+lzv6A3Ax2EFlipFDBR6tO5skkDdi8O6TAPdVtHJNLW0mLG2RaF3npSLUzJvJ1/6KjzWGSbFM2eJfEVniF46MuFtcy9ku4D9AYgxmmkmtEoasKHfPg9ucGBh4HXZstzUaPO010wO8BCAB626UkdoAUYAaTKzal9vxfjRuhtaMYMLphaZqQ1+azM2aZkmoymWbvmb/rFjZcYtsq6OY4ivjadhw/An3Lwdo6MdW0Xycn87CYX1pJzTwNCVxbNMmtAkdPeeOKRUP35FfHpor1YXllb1UPPCcfglt1MlQAPx+nog05,iv:P5jP5N7+dAOLnuV3TP2Vg9O86CuQJzCWsmquhjJTVWg=,tag:BLV1tM1awyfY06kpY4c0jw==,type:str] +ssh_host_key_rsa: ENC[AES256_GCM,data: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,iv:Tj1/3zP3D/3T6LjpkMYb7aebixmcctOT/cuO9mLMoUw=,tag:BI22/6vv6Ey8L3639aVJ4Q==,type:str] +kj_id_ed25519: ENC[AES256_GCM,data:TzG4qKXGyOItzm3mWkP95uyr41tovk1kkzzvOnXEY09x3Y9IRgxCC7lmjNd0rSoSk+Z6cN1AjKl5djDr2fwKNehkWU+hj/E1iJG95TFhazGdL9P/JaS/GPEJSoPWexaiVA9mhZ54qTWMjJ6whY8LYyi0wNN+3kueYvNEPh7MpJia142OGEoeso3d5QCkhTPpmBUmjai9+Oa2UTOLyD6vpE5Zs3hoa3b/Nn9zVgoCJbQnjGe9kXZ0ZwZZVKgSsazF80wswgOXaCMx+Zye6ISrgHJvQTTH5egRO48IrjwKBWyx1U+r86Qb0DuWWdUyI5/o3o++UzUTpBTeZIJayxuLCcc5ohS8uq642SPnHTMxLvYMDutPk6XmZcBSPCAm/29uBgiTyD+rxLfSVAEtSX4rLC+aPTMUCrNxwimlN4YZmRg7t+43R5Gm71JhlU3fHfnCdx9WssJ1UVX8hYtj9qdySaXyFDRcphSaMzM+KcrEOeatsoVwmJ3T5LNXkRDgB5P4Lp/+XCPZb62AgGw167K8Do0GFADEKVK/r1O9w6IiTpar2/Rnzeh20Ii9C3KDkkZL,iv:ArYug8GfbAJRxS4WH1yEzwD7mVjIb7uWG4EW/zjxITk=,tag:FacLr+B5UoLXEUaM4kR4/A==,type:str] +kj_gpg_private_key: ENC[AES256_GCM,data:Edeo9cO2zfyUhtScS6T7FZB9Ck1fQu4/JyKm+/ZrT7QFjn5VQ4FjLs9v0PHBBiqXV5pBcQNd+TlBN4unxCPg6tJHnV+d4RtUTyCVnevIyfRssuLNcxnve/WGmf1cKI1o0tmAfziYevms20jkBQIvPCYFFDAkeuetTnuZ9Gpx0H9/Ger3iyLsErvyywicqaGzWKHz1VQyZf7RTvwQUADnfe/yNzB9WlKS7a+1rkwscZ3QmpXEEhqubm5bD8iSTRpi1PTxIoHJZKPZwSlRbIlAhuF7KRA+/B9cNIn+DaSscx28+mBHzPFXEHnUe/fs7oywED2tXMlzTZFTOIXj9/kK6JaQY9yjwQ8bYIKKIm2IZ/PxV/UWQL1FS8l0rEAtVUs2zWsr6C6NB24RYnrGu5AReZN8ywMD0ldInxZupPA7QALxWm3LdGaZ5vkYxhFLu32zNTUZvecM5xpYGKk8AdD+jgqjy9A8T9k49AyFLIzQ2CR1nBkibNad+Qbb4siWwZqmLBAjULl98sp+f1GGK3NclGEKxKXgMZS/PG+oRoTW5eKwH2q8VgauF8L02GRTwwV/K3BsIp4zmuriiM9IFG3mGUysIvBXOE/N3gEaiN4nDEFdOGkNcSKzZljhgNHkWtVG5lPMSTXFPeFFiGt13tBADogu8XG7Q8SQgZsOHxdYo+Is/0vNG140fVP+iOcA5XoVg8IgnO/MlaCN3lkUBOAbE7lRDCbaxhhe/J9YyAraNJUUe7clItA4ydF2lC/OBsltHnKwjKaFv5RQvH6V+B4drX3Fms4lHc1CzKQGOBzJf5AK4vu/vEtONi6L3W8T5/my/kEy+/L+Kg1+nObI7pAacfEMn3YkwpZ1DoPrm/xrF6Ivprzx7M9VQskUjJ6/t6WtRRELl7zfI5o8oerh4H2cFr31so93T7NwqMorPLC6UMfDGLasLMlKeTOUoRFwH9uwIT7Pe4qC/8C3B5SSWlBnl8bgJIpUa/UF0rV1MaF4yNzsEVaJYuhiDGlhiwl++3Ie1K677e65yeVMSFGfck9gktf7BRX4s1kSP9VZQDnzpgJas0+gTSN+ufDdIGivb+dA9P3XHLYiHIsFGgxan62f1PU6EkvvBv05RqB3I8yqR4fgkRxrzlYWYIe64L3sdT3tD6Alc6bYLbvVd6fvOYVilxrRcsXEgc+TcqwsS1YQbACg1Rak27V8TiXlrEgqYhCAiwiViaHxOqXzSCpxg12OMASnTyFa/s2+JgM9JW2GLsDaah20446KgLDxwvfKSQTMnbFBvUlq3erZBZTbavLLntyNxZyRbTHRA+oJQfgrW7pJrnSDaL3S2OEfsbvtXlpI0+lqFznZLBz8WJ6de9DxmoU1UcD21+oTV+ma9tztp7Im1/iKXPD1ci3W+RrJz7bqnza7LVuBIrD6h/xWfI9cjW10pN/soRfYNsHHLoihUMWu8tGyqPiKUjFaf/fbpovrajUGtS6laDz0DEzaLalQF1ZJ5mAadD59SN7gXU1B58xDHi+ovJCmuw4WLUhPTnXDsCUyT6g6qiux3CiCTYlb/FJvfWaliXy1KeeQlwAS7Q7YcL7HhqzL7hLlf349CY7Vnqz+javr4lO/e5tRLwmBRmZfaWF59zkdIYa1rJPyz5R/n/QjoT21GGcjRNKHysPPToTEuBMS4Ql8N3NPzyKXLFA9DaoSvtGI9pAZLpJw2urXs0mnLTy5YQkGPpFqzJ9EC1lVH5EtfbBdrc6SU/AWkAaJl597+F02yO2n1W3N6iOfBFRmMoe1DBYdbGfuhSTSaRn8c+Cvorv7GtCtSMeqiZ47w3sZQJYIhkXAz8BFJcfK3r+Wk5Cb11hqj9gB8Ty3gsl6btSx0T1cRsIzYScPj/QL9ZXYKpHhGMIoaIxMKRkoSWyWPlnN2hsaaVjuPqA3aJEq+kpOfPeClWiob1Kk8Z+2S0D2aPfZWuBZBK65HyrXcfW3DA+fouEkialdmpQQAjPvMWhZcYWEaM/0e2o2D1Lk8Y9HFr3wQY4aU04PVRv2bbWKE1Ogf8s6z0iAKPbAT6BczXjAJy+sLxRWL7Xmts09tFoM7m2YQ3Fk7KjAOOipXeE8eHp0RuPWF4WZrhWDd0HTSaYTZnSro+NsFwGj/uLY0H/NWPTs9S8tfpUtfXQYmNksGzlX2Lzk4IUtNH8jsFrTukmi2cVbJ7dJBXo5JuG9x+Uff1WdMqLjCcz4ZG1cdgU17D2ulZZWKkzLz/H/SOXzMFeRJFXZiBjaierfmE8vcXF7AeQ/Bg7XE4BBLlZPDK9SsIvVsUXZUY066QjmKpBj9KTJTIWXM3q5EGqqeX4eNWKYzi9XnT+7kUBUSsCtEQAOZJKbFLFNzR25le44tsorVLZXhW2XFRYD4nQuqQY30Rhy1dyF6TvoErqVFLHVyW1WagfiJFMgs8OGLUCeun1DrrJWeghCviIbm4Mn10iomR9m6NVYG6eOECBDQAOhIDSpOin46ldDkgTkNbxDuao9Evmkh3FAlTrWJKh6GU8L1qNYrUVT5ga5/QSvAvTaG/5KDVYm3DMt8ElPokrlO+fZWj8LsPfHQKP6Flm9XEEGei9fvSqLQ0M6pER0Gk6IJFlBDIOcRL1WUUJ/ZcLvuY18wjo0LNV/EOrnmMO2ViL1khFXdvjLUKtkGo2m7eTxVGF1cNOVFAAyd2rnTkm0pD7nifGXjUWJXpVQeLsL+I551XH8i6WZRKvOYfsu6vzo1qRD2tSVKYkk7cZRTkIqk8YkT1fCX0ljXnUyFCd9sp3WyOClef9dr+HVdw588yF0Qg6/eP8s25VTQK2Qiu/rezkt7imrg8GUKtNOOZYDITczS1U1o60RMnOCKsLmQ5hdzsLxr0R3Fks/L88pPBdY+oaXdyPYGBUMLdc6F7gI8Pcjssbu963LPcObQsqfkBpQFMjTGAkrbrMJjTzTooGgHplzwJGS0+2QRgMETHT+sPrkYLsnZPiv1KVr5aYD7ROuJJJeP12VfBxlyv7LaQnbKA72fiWiX5wutNVPPojgFwCcv3GRPGAJdsNCggNQ7YZGtx3fsIfxavENihLDuCk9iBMnS1kKEqX+AOAbV68WIikOjJcDkCWF+rMMVZDMge7WcSDEcIqDwWt+DZTfdiXyflm4L2GpMCuKMqj6Bkq9BuU6oCW1uXFqpvfNV+4vgO4szOj4GuWveolKEM3q91h58fGfeuBJQS9q0SZ+guHcraxEsFUyf3RgmiEp4EU8ujYcQGh3XS3aPTxZeuFiEHh+unc36w13nGZ1hbWgh1PFKrV/UvMMl8W6mNIEQOzfagJkhAhzyaWtWemy/ckd8XQqQMZvBRDWu7/9lQnkI+OXvFjqdgX20HU0kWtRfH2HnCQwWiblQ5Wl/TEfPuhpK5eqU9PrSchdEnNV+VE5oF7d97uI9RkqCH2A1fPkwdRzKujBdtL7EDpwGW1WVVB2ad2LEfHXesce3SRiImsf1KLHqCRMAFU/SU8pPiaadY1t4xTGaY79XPcC3juYeQ/lvYaf4NIZGyLnZopOBL+8Tx1eP13F+twO+SRC/NOgPagQoKY2DZid8ZGJJ79aj2JaxnDlU2LXl8CJgTQxHddXAl1C7rHn0mRV+xgppxBcred1tQHJJnqSo8S9MHDDidAi+ssSOJuVfDdgsaEgLNw9+nhvX0NPON8AhpgqLFjdipLCNSdegtDF+5rPUjE0pHoxBXC0vBxn503+05DckwEif336dkVz4OPn5HMOCXYguPTcMbIGnVKABvx5k99GS2EuPc4VmaQ4g++s9/E5M5moQlxjUI75OzBHf/I6uacqxB2wKqCNOd2bXYnqQMSkpiv3LiyCwMFxbcDoga6i/WW5CP/8wtQhqYl141geM24pijwoZHX4jqehkRLlrFYsfB5eiOi7NPc6KlVK4RpfWw2w8gCWuqE0CUaqbdFoe9j8phSevxF/f3qFxEAVTBMu4pzqvwCnpOlwPVVGgGH+TL3Sjn4mEYOoYmZdyKRdBimUWD0G8fLlGbuKZ+0OoHg0oAXniFlYD36g70iNnPb43AHsoSYepZBGngUhpx/w+MF3tz073DV8jGfbAXRWf+kzEq/yo2S8j2L7W7KIwlLr2TlaIhHRMaiI5JzNh84ErXjVU1J3P5ypKYRclwSoqJ3tFZH4S0ZfsG8OFuyDuVgCRfpcRocMw3OGHWI6EZTCaFqs0sEagVa5aDPIyjhtDCCAcXRLBJEL2EUuXP6slCIppWsqh8XSC7GTxIrCAPjuc8m4mO6jghCFn5Vs40KwfvilXvlDjtWRACgywJTjH+jYcLvwNS1kOzbZwNFlCGRnovIw3Z/YZytb5k3wnfC9ciSFgklB+w+2t1qOGoxzf1rc4/6bnnxuNsGqAAimumvFKDm7a+Zi2BPpOy0PMsdc/JLV9hCsdJySdjSv1F1xA4vR/KWZkiHE6JuJTrcII8W8wCgTwfROQ+8RlBYoUgKYL0qa2lJsXq8VQYr31b555iQ/laclYQI1SfgW3jQbJ6aRedMIbbrwBQY7oiZeFA3ojePzTst6Z9IimEybZfqJ0UzXUDM25aCWaGtwKzq6DrllFRGdLNqb3WfuMzW187+VcUFTc3pJg4hzusRcr1zGZ+D3w08llubP+bJJBnH/i2fEFWYocwL3/G8TBc+Z1EmH+mMgrhib56gy4Ahs2JgpQlIO65fPk5QlYxEjHIpkznsogA2sBQ3wO0VsfSAtOYqbKjq6436qVOHuH1OgZPhuSTR3bCGpS5bWP1Ou7qtA9/0YD2HsdWTVH7XuxfSG2HohMIRhnOcDtAUkxXxpBjyJKxLYkg7Dm3bsG7U4jlu85hEMIA2x8XhKc2KeNY2BxzEXtdeVKG0bIBMKeZS7AlmQX7OgMHuwDgeTVkKkLpFM0S/Zb43JZwJZE03jkbAn8exh6sluyXw/dvpJmVRx/Yt+84ssF7Qm+lUD2nsvz3u+hTyx+lnZDOS9USIBulic6ZoXrbLgrMV47X2o4HTbbvb5/tGTWx3z305uJi6RX8Yjt/aqe29jMJobcRNauCH7jMscmoeOumZu3+Qg7m7uH8UkK6GMxsN7ZlvGAO/KnbmWfgD9BWBr50C32KfH36aXcV4mGH9ZfGf+Gza5lwCKH5Bb5XzXeLBLTrS0i9fepnv/h075H+wZJzRUnvW/Oe7eUd9nvEll6pOlM5ZiqUyqpRny41GOieDQeGitIrl/T/sOBOErbpv2PM49yMd6hPtPJw2r+ezqV1cp68u3QDOOtPgkDbcWQpuhIrVpADInwSDJt+Z+QYfjXmgycIKOMcFBWe1ny4Qv5SgjHaV1+bqDWoLq+rA0pZujEqp0Pu5oMkRqsFenUJmmQ6f2rTEHA8wmvJ060+0J3lWW2ctvabfnQE5QCiCHx7dCxdSOZDVsNZeVSAJWFo+a56Q162wCFE98WxzHSj0oplgjucqUGicUmPX852IadlWrDEzLt/Z6IF2ksteNcUl89oWPBGN03Z0HiS37r1MksgLo+UuhdspJOm178sapGqwligjIr395Nx1cgSAr1mANUZftXyVwk9HxSYL8V1Snt4ycJQg+d+j90+cFmv79FipXdAu1J2/GbOE1C5Y3xtOd5oH7eCzmsWIi/EQrbVhvsYCXxoDhYuy97GY7TZ9QN4DP2NvZfUCgF26AT4k7PI/ubOq/R+IKyp8X2ANJw8aTZRZnD7MUAi4Q3d6qlC0parNfTnEZMSUvyzKLw0V+9lv4/4H2ZL9Bphb5QQw+sCQPWLpaquLrX+oU2zOmXWYjzbBkj68IJiKvrmbQkIwZbfmhaNtXHj6iAKt7zajfybInLly2lvNq/t7CS1zpJwHW1fHgDQ+3qtDnBdB6vwccRp0fjqiAoUUcVeFGRNqlvvR+OHS18gpY6S4EBtvqho0HNXEEKtA6tqG0N9UEjfvyWuFkZ6rKCjOphj8n4l11eW6iVAnzzFQGAD/yaL25d7ihTC+OPPSE1h7Ma2hRYpLPj15Cg93NOU3qN4M2YLzgKYFylYVnaXmo00mXyHcHUyBM8IrTK3jbx3DgDzLDQKG9zTXWdC87ssVXPlZWXeDP2z4XmbpvPJDgmZ6o95SsP0Xah5LnL+DiZsqRtkVtm7+1O503KJUVtDIKMzxfGcCFIGxW3zbY65+gQB3gv9nrupc/2d8acUnB3k2UqRToy3UVMN//En4NYZf9EcAHEcGeN7uZfh1VY5jCCSOVFkjeUzrzClIkawLBUagdOSLsdUZbiZSLn+ukr8oSGhvHGEhjIT8mbKgG8B6JXmHKlnw8NJcvgIxkP1q2/9EAcqR8a+dfmW+Wyv/h+Z9XLiM8KuF3yZyci5qw6oMUPmcz92YmqZfr8P8GIGYh2t2w4WyBta2dz63ASfEXWcMMjKJEjrld+79Jx6p1qANvsgtjJXexGDvE6VVwo15/CZh2EHGtI2WJYGjMonvoTIMTSzMqnHanlKDNTVPnfW7IlZiTMcBHLdxAw5WSC/ahA83x2YGY6V/pLXdvGCKaWjpqatmvudpHRkHAIfI16ZcU7+zzdYnEjzlZv3qMd4UZhnURo/Uc6Odzjawl9lrJtVSLeoB86oZx57uLwmuk8+xt4ulkz0XDbrsF6hklzyiKLYrJci3WMXZRUDH2FhmcntbkHjDVALX5zIQCNesxy20UX6X79XQkHuABwW9+zd8ToF/HhRheX69OYrNIfgR5oZyVQ92PIwBMKm5SVDN/ZqvFJM4k7JZ/jhaNMk7YEiEjaAdo6q2KMF+EgyRmkSonB9GB73EpHpUUx80meSGCrHCRiAMQYEJYYfeyb9cUDhgNtC3gjxn4f8f9q5+ZrNjrgNrgdgC/INF4YjZf73GK0c6Fn7u7GCE7QxSVwiaYROt4aWDi8jjo/Qkqyb14p2TRFhThy93dbHxOhVFdZReSd6FzefbWdkpv7fvh43lBDhEvjKIJv5TFAn2WPNBPpmp2vtpw8qzjk8oQCcoI4nzP5sr41yim5vEgVXvqxKVorYKJs0ATKylRMYimM7Xama15IhWsIFj/xUzwO1OnFkBj2n/pjR8VFVhnRboA95gq+voXKUoJQ/4g98U5G65ssG+FTucAKVnyZmzyPXIcID/rsWZC+2G2AgVPGfgfau3pBqFyHej1+UMRweC44A6QyQGT8o0wg6a/Ri9u1aWtD4c03n/ZIRBIMulE5xNsO8OskcoM8SZszOE56T+lGyL9EpmN9zhbLTwnss7Hif8MqSl/SZy49i4fb0emqi+K/ordg3JAZGjPiV9XNdLehwCPBW0EnNNhhA4csI8AjJxWuKgWHtZpBEGWrlOZNWJ9hLqEaUJHkY6jSFwY5bbbRiZ101TPeBvl/zuiTz5suZvkgxd3ljmgVhDQc8QN/vhnvSVCAFiqVzTR2SeHnkcArbmyvGmLw3dfcRNBX2Qzc/wbeWUtbFNdhPs57fpE/WkS240wGgtyGhyUypbSLwgbVzf/u4fxGUfdc6aMiH+rqYjq7Zck2nuv2ngX/K+po2aLPJoiKGVQQgMZQaXo3cyyxniM202sIWrHpqt1HpEiTIjHS+kOI9mepQB2V185hCwJTkf3Tal7f6WzE0LE/y1wtz4OjgziXoUPEgP030X58v2OWGbSVAw7Yu5Vh9u+oCMZ/4nAzpGKIvaPSp3O2wR26Bh+3yCFjQvEirHPgkGFUxfcrlnOfRO6Zwl9Q4VnwtEPJcuL5PdM3LAzC6k0a6STgII4tkR0A1Kq95FpzOQGs1G+INJJJOaTv5r5cexHYR7xx3PxbdtflrmdqJzAg2A8rF2dp+bXzzY2B8sTnJDzTOwz3WAKZj+kxrtV2tHwcfraZURdlwH47/vQiff09qM05JcIxeN+cRQc1x7trUfTqKtxpB8QxrNed2VRRTEw6lZdKJblHN5xGcacf95fVV+XjuVGauIaV9/idaIWriC5JSLDNOBSeG1Qr3NbujHKNH4SsGXxdjzsRd+3//OxxstA3xf9IQoU2hR8AKFUrDdB49+jAPAhYzXwemQBBETu4NcQF4v+O0uYKs0WvHySBfnb1bDpuB9m+tgNozq+1J/ogBFY1lIVvl9XE5ALwdSVBlEaFpMtMK/V5DlTeWdVsor7YTNWfdogYB62DHkQWaGwKhEH24qkSyhhUhWNZz1gSX2QltjwzYbWWMDS+Uk4gYsgNWaUwPfZDui90UEIwbb1qWQRxX6S8XJV+Fmdq1TMnyUVQ8ZDYksp9I9tpFEiYUaY7VuApws+h7idnK9pOXTU2/G+eBGnuf1zzoBlRiZE8+H+9PB9rKDq35mn946pdN7MZzngFU29U4uvO8Cti8oPwGoFSf1F+TUkwPdjv5tU5hyLxl8f+eG+6fBllg8is7eOS8zGUe6I7ygIqaYA76c7JKQFwK3MnbP8PIPBB7BwCaFLs5o846nMGj8jCO0RZ/GnGS0vrFZnr1PHsWpOImiUUgGGDlmFKY6gslj1o62EYuAzSrjvuLPLHblOBhk/DVnAoKXmFJYbbT830JMwLP8pesfH0CQYNLguzQP2B57LnLbazlxc4Jvry7dlvZFmM0aIXwHiyQpDK7Ggv4PjqnetEwtUQ9Fb+j/FXzal8GDZDGvfQiaCskHAYyYqOCNNIorIY1G2KvyNcdBkpx0GMX0XUFVu4hyy8EePPB2+4CRmLl9LLdxMFY2KCNsxRNqxteE1RKeeUtqQpfMUDVDHWJiPVlNJaEQRi9NS5ygAFthl4vVFWwXZKNCdVDx7mcR6O/XDyFdDAggcpI/A5XElzZf7ghY08E49lGYVgd/UUWDj7RxUHVON3EQTWYbrvM1kMtY8bf2STFrsARFn+UJjb98swcnnoZzbOs29y8vpXTXaC4chmLhVu8/KoL6kvD2qZXjTdvGNXTb8fWmbQRZQEIgzXkbjLY2BANUNdIVROI8MMMoXtq1p2tEtblIRnrqATTfBKfCN/uuSMO5oY0PKGKJo2P5lMIGjXEP0rjy74rXrT7QhITDe3kXBN8OWm5IOrhZFLBPFi9Zqr3VHG6yrj2hq4zdS9zG70j5m4K/g5OMYRZ2k24xKArPA8PRO1rNbG1BhxZRs4PVIKDS6slR1+g2uPyXjyEb8Ggt0iRnE1oY7lj3fxl6vsmN1SYmMpYnUdX70VhbqYELrbtx/izBFTODHI3UjYhGPEhqxiJ+LqwEVf4UlgIRBc0CXsVT8Qb/KywFCCDndW+AtHn2Tm6uNtBE9Zf5tNBHnJsStEwUq36INV2Df8bnYWK/dTP0uwh4WaIDXUBzM+XA5oDUpkDbazCvSPyqIH2pgYeS2PSw6BsV+sKXm9acIgC10UiFPOZfDKtGjNl5ktDBiwe0NDogNdfV/tzG1IbsRKWiv3wFkse2CUnVMY6HzgrLt/N4XQU9EjlCBkTtsgZYuo6KmBhnOp17TAc+VBsOl0txAIhAGWI1KM/HX7d3Hy34/G3FzUQoAnrCx2WfYa/gMJb+aCrVHYDmrKCbNpwbUPdUxy87svK4FDMeuXGhPMJEHvMmfG8xVA54BIDoMPUvrBiF7F7wiJ0nUFo+2QCzKw9NDtiPr/hKv9NCfiXQUoC1cJwMP3hSdWr6iqDN441fgm9dNw9dOW1xHOoap0lLjSKV7xgZTQ8cLljv4qwVZekw0U50AdPyyEUN99wh4Ralow3uTEAxWK2ADD6REwBm2ONZemKk++o8VlAS4eb7D0NQsMXSFkpiibBF06GKVhtJr6lNWUbvLALVIF4PX9yAEDBd8AXlNm3SgK8ZEkzlkBvDUwu4pjoLvDt9Yd9OKUyWOkTxipU7iGOrYqukohBxWwNJ3PPCyY17+6O6X/t/hAitRSTi2tP6DMJmWaHnWOu9ago8aA0lKWyVqtux0CheUX75qFeuCps3q9oI3KFmnx7hdpPUnRsk17yMs4XLLKXP8LEn6Kh0dUimSRhJ9qQSmadz9ha32976bmSZjJ0RRu7XSDAopeediuBDJbR0Qs3lDN8iN5EYott5LQ2dfXeXPQbpQDWOj0HvARjNuBnF1zU1Jh8PXoS6vO1D7rkOAGv23NfgYSATXS4UsOUvNNF5G7qa07m78Tj8tQwl22jmK+v5qhHxJWmd6UvCgtlVwVI27Pq+pGgT1uPqBiw0kcpSCeKg2iQkKWg49Teohll8O3jnUybKygpOLHc+NrYCICi2x84ap9AO5d6S0o58J67so+AZ/SUOW6rR826+WOnPNTMUDn9G0IYCZrRjFD2ZIV0b6BZy1fsrKAIOVw4dJGsW84dnQytFe5di38vjbBNKIUsxiYrMfL5yA62/oYr5u9juuE1e5oPl2N2YzRF5QbZCx78w2JW7/dYKnl1L4sA7zkO6tV4NHfD5k8S4Wgo4D9lu3ctaM94uoynmUgyW0dFeJaTTf0bDOQujFGsTBu7keVgW2nF7ST91DoyGKHRM0O4lmqN0W1kh2vfor4vJteVZRxv3kbDwoFB0bGfGDKAfOQ3oh57/iKA72PLNSS/wry9mni8R6/yT7lAfDJ7nNzSxXkfz4cr9O7dnPSZsg4JMi52LtlklwlBRXn1xT4LN68jzgrKW50uwatiriz9R1Ok0YWjZj+e8UGKXQBGhUohmyPXZkuG0Q/XV15WMRqzWNWE3cx5xAU0x4Yu0cNqTHHHqvd/GfjwDve+AoRT8tdbweIYacjP+SivnFeeuK7mSZZUsfktivdNhNLI9oqkPLUByEP9u3LjSoyTQL6UqM4mD4Uy6xLsyOyMchK1dbPdvWjzlt9s7jBiNsvEJddVsditi+KobYFXXW41eUkPtKcoJIDSs9wBJ+7ernhhTr9Sv0Um6YKOtmHNb0S9og9ZrqM4TwxxnwdiaPWC3byLL4uuuSqTVd/zXpUL3eKN2PIguLnMbKzlH0y93x6Lkx9a5VgysNGranGY3fzFvKR2Je0n5yNWFbm3F5XaXIJFnKKLmOlIsIan3ReUBAk3f4camph1u6mjDrF7vjLaHRkqTcpIa0Pkcg+P4bIIjiaGrI+hclvTaHRXkFFqXQQzO5Bjjeg7VuXdITLFJgIELMEPMEM72PwCaF5Y70gVnvoJzFNg5dCRspzkdEAi+ReiCCg2j5AJD4AdhSx1YH0qRGuj96sT+vus5ZepFR9j41YWyPlVHkoh27iLpoDoiGPxs4r/0Y1L4tqYXOWq0JNy82DiB22X7gA+hl6ZqH9VIhoohij1mBRd9lLc95SK/XYe4rpF8vz+r2W6MSRUqTK7/EupszC7qFSff0Q6BwuFNmfENfq6f7E/QK43nXEFMHfCFrMf0H8cdMFJq3aG6WuXb0jfmiRgBfi4kJajvU+efWqPEYDcS3XWFinCgKNOSMWUVW8kQ3JCs5cv7zo7aHU1vv4LpXYonvOXYuqjDyeFVB+tnf4XkaP0cU0MQfYEnuhFJXzXWLBYAn8MEPZ8W3/Ilmub+gilaHwxz3GCaqjG6oMQCh2AoOycb5GL43RqtQs1LCX1hBY+ywBx51jLc1BA+Mu+lbCodkvZmGkLCWIJC2IF0e7aPVIou0vHYK6rlxkDX/lRzcuV4MW+ifYud3k86sWOQ10KGkVn+WlqZTwSeBxQxhgcH8OPN61DUpxiLIyVi/MAC1Gk+RkZqfMXJI/4qgNSyx7oxOZTYj/TPjbxTflEx/BOpNbpMPPyIbVEoKGNhNXvAuGR8MCK+J/ibdG3bsqier9v/W0lNjhwpyz9Ug9KV2ZsE9wdPYj4Bn3qAybH3BkiRRTVi05/ufuDvE10uO4lrgwphP24DHopHKFPEOS2+haxgvunksD4YJK3zWgf7OWfTHbQe0FKw3u3grSkUIe6PdGV3nsa+AeqLv1IKAD9zuFagSCj5sLGozpDHGd8xy26AOv48skeTGN5ib/ipb9n4N4nPGpg8eLe8V3UStvNn2ssTuz2kfSTl1tQUQzrwfuYVAGxKL7S4rTlB1gXTuWZ68mDW0Fkx3mV2hvTa6ThksUJwwZONLyujZHzR9fxYPK4kMtgli/rZ9JCv7zF8BVfJqo1Nr5jD3inLLnNPqRDQHGfhgGw84bGVYPPrY9/bejloAjImMXuQQMT7jHl7r0YXpllacdIozWV1uuXZGRyp+0aCku8U9Nrz++aPvXfq4xCH353EYXWu9+v/6ewRc1BvQjHEtxNyY6cyccuB8Q4wlxEs+HiqhzFD3CNMgd7aJq4Ppbdv8DeAHw23jeTnMnlCG1a4YgHWz5KYAU/cDuny3PIljsqWt/0VFMbERI0fLyR4cyciJLqArdfUmyB8TNaZMJXUgQCdUC8CDECMznZ+wWSa7a0aS+8zlYhB3UM2Z3A8dbDYJQBf0EMRthcZCVNV2+XfpC+OCVESvvMDq+dZ+wmPgezM0MfccEJ4iuVwinlg9+BRcRUMzmfjYUFVHX62u3tIaWkhDqcYva880Bf1oLx6kBGGOpeFiy4iYSS53YkY2n4L9HDYoL6RP2HskEQ/ZXX6lP4MZKm10wN1uh297M7aOTpjtn1ew4DsFx4rUQktM8qn8Z3WpucQ2l4wloiqpDMCEtiHcbGoQqRRjARoDxcdxkyxyJNnqpa5sf7MzxiQNZr8y4WqPWwIdx1C0pB/ouvvgbPTy9/waHfImB+wNs92VP7n4oNQWQVpPGmvPkCPDVQLbsFukjtqOmzCGWmltR6lmmkvj9Kptu11+mXY2C7vyNcCAvEqOIDHCmcTixdJ4V9Z5GUURzMEV9jQUvwZZBH598GXeRASLBcbYMegAYYIvnwjfVMWugZVojuz0mMoY5H76hWf7zhhSn6tFzC3gq+QJ75q76mpIRG3N6v94b6TwdASAy6s6Xk2XlyRgng1S+KJ7Q/8Izo2XQc5632ISsBZzL4Q1ok6Cdoj0hkifqQGRYvCZgdCwIPg062Rpe/4ubT8gz6wDhvM2hqCgh7LGYpmyHy8pqoX4ua5yxvpC1GvJVB457+CmTuDTs/yIBgriJ+FTNQpYRaN3Jx0xBgPTNacspQdSAKm/DmitSaZowEBnCilZ/nuYv1bU1/dcqGTe+HogqR4BGPvH6Oe1FtNrGP+rGXMLxbmofMjgExidcdu8mnIlG/DXRVRG0mFiOvMQ/bP++kF1KN3z9dJOGl105FSEKUaP31WsF2teKnVOJ4ApofKskFs/OQwfmxjDudV+oSFASI5O7/18lwZjJ61eyo+Qx6j3UzazQQIWss4uZKon7xs4P6C6t8f5sYBBM37apPyak0kr8xXu0t6dKdEsiqH43vVlLbTKln2ba12P4eVW4ui/foKcHVLF4eQ+LBht/hTYPKCBgdRwLPV4q/RP/5BAYgQ9UxnPFpeTwlI1DQO5zjJiku6xycA5f/+1ZCNgdxvFvLqPWXAYceUAfDirovF7jx6TNAZG+G+7LgiD80Q5TkIkIhsjsNnatZ1giOQGZqQ1Rmky1gBX,iv:F8kUcbAZIwogLtT5f+v5tQCz8lgLbKuPtCqDoOnu06s=,tag:o62MrXkEknaCQ3QB4XhD5Q==,type:str] +sops: + age: + - recipient: age10gj7wx2syxd9xtt032xxrvtz9hcpnh5xfhzdaaw8qztt6xt6jyrqme3pdp + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1Rnh2TjY5YkxDeldnNHB4 + VzJjazRORnFBWWNWdkI4Rm5LOGFYTDRITm5RCkh0dUpySmZhdG8xYXhNSnRXaUhk + SlNub2FMM2gzb3BzN1d0RzVwTjZxQk0KLS0tIG9Da0IrYWUxVFRCdFBtWHAybUVO + aGNoeFhvUGc1ME9CSno1T1BUQWsxOUEKVV/EGdulVldaqjmgqVgybTAVA8un/IcZ + oy95TzamDs1rztz9oA71bSYc6YawdDuMAr3NUJobPzBOGDE7DlzIQw== + -----END AGE ENCRYPTED FILE----- + - recipient: age1dlhywyz63uyyv5z2w6mhax7dcn37akymy2e4ujcdppf85hr3ccrqgwpqmu + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA1dkFLOXBoaEFRUHkyajNv + ODRtR2k3aU1RT051cGIzMWN0SkFJZkJPaG1RCnFsS3FVa3NwSHBZcHl5MTIvVFFm + OGxDY1hMbHFicG1YOWxBRmdISkFxVUUKLS0tIDlRVVZSMUJNcVVNWWNRdHB6U1Ex + SW02NGZkTlRzWEIzNFZFOVJGdG9JMk0KxuvdafYhE6v4tl/JlnfbYoXK4AzEKGAW + 8909LJVUMLeY8acGB5SNBxo14rvTjd4Hfnmc6W516Ujq+fzapl3pkA== + -----END AGE ENCRYPTED FILE----- + lastmodified: "2025-09-12T09:15:52Z" + mac: ENC[AES256_GCM,data:7/WpJ5LY0MG3QDHp9Sfsnav62pRopwMaTzlcAXwfrU1c4Niox1l5RR8c6wegod0FZDkwD6N//jZ9oXNy3QL10KamLaW2x7BNALNXDrUrG9I96HLn74Oep2tvKorfN+D/vCD62TxgYC+afDxzrp3VZar89KwwJnEnv2JDjwo9hD8=,iv:qMWwt7O8Yq1PZABgGo+fYdYSPCVc1y1x8JAP5nb3RaI=,tag:q5Q06c4wEknITE7AfDguGg==,type:str] + unencrypted_suffix: _unencrypted + version: 3.10.2 diff --git a/machines/kj-laptop01/zsh-config.zsh b/machines/kj-laptop01/zsh-config.zsh new file mode 100644 index 0000000..8ef8747 --- /dev/null +++ b/machines/kj-laptop01/zsh-config.zsh @@ -0,0 +1,45 @@ +# Initialize completion system +autoload -Uz compinit +compinit + +# Initialize prompt system +autoload -Uz promptinit +promptinit + +# Set options +setopt extendedglob nomatch notify + +# Define gentoo prompt theme +prompt_gentoo_help () { + cat <<'EOF' +This prompt is color-scheme-able. You can invoke it thus: + + prompt gentoo [<promptcolor> [<usercolor> [<rootcolor>]]] + +EOF +} + +prompt_gentoo_setup () { + local prompt_gentoo_prompt=${1:-'blue'} + local prompt_gentoo_user=${2:-'green'} + local prompt_gentoo_root=${3:-'red'} + + if [ "$USER" = 'root' ] + then + local base_prompt="%B%F{$prompt_gentoo_root}%m%k " + else + local base_prompt="%B%F{$prompt_gentoo_user}%n@%m%k " + fi + local post_prompt="%b%f%k" + + local path_prompt="%B%F{$prompt_gentoo_prompt}%1~" + typeset -g PS1="$base_prompt$path_prompt %# $post_prompt" + typeset -g PS2="$base_prompt$path_prompt %_> $post_prompt" + typeset -g PS3="$base_prompt$path_prompt ?# $post_prompt" +} + +# Register the prompt with promptinit +prompt_themes+=( gentoo ) + +# Use the gentoo prompt +prompt gentoo |
