this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: move to blueprint (#65)

authored by

Taylor Hanken and committed by
GitHub
c7b8b70d 31d012bf

+11516 -1107
+13 -1
.envrc
··· 1 - use flake .#default 1 + #!/usr/bin/env bash 2 + # Used by https://direnv.net 3 + 4 + # Automatically reload when this file changes 5 + watch_file nix/devshell.nix 6 + watch_file nix/devshells/*.toml 7 + watch_file nix/devshells/*.nix 8 + 9 + # Load `nix develop` 10 + use flake 11 + 12 + # Extend the environment with per-user overrides 13 + source_env_if_exists .envrc.local
-1
.github/workflows/cron_workflows.yml
··· 3 3 workflow_dispatch: # allows manual triggering 4 4 schedule: 5 5 - cron: '0 0 * * 0' # runs weekly on Sunday at 00:00 6 - 7 6 jobs: 8 7 lockfile: 9 8 name: 🔒 Update flake.lock
-2
.github/workflows/validate_pr_title.yaml
··· 1 1 name: Validate PR Title 2 - 3 2 on: 4 3 pull_request_target: 5 4 types: 6 5 - opened 7 6 - edited 8 7 - synchronize 9 - 10 8 jobs: 11 9 main: 12 10 name: 🔦 Validate PR title
+5 -7
.gitignore
··· 1 + # Ignore build outputs from performing a nix-build or `nix build` command 1 2 result 2 - result/ 3 - .direnv/ 4 - .DS_Store 5 - .pre-commit-config.yaml 6 - logs/ 7 - .aider* 8 - .env 3 + result-* 4 + 5 + # Ignore automatically generated direnv output 6 + .direnv
+11 -1
README.md
··· 1 1 # nixos-config 2 - NixOS configuration for home devices 2 + 3 + ## Getting Started (Wireless Local Computer) 4 + - Build all packages: `nix-fast-build` 5 + - Burn iso to a usb drive: `sudo dd bs=4M conv=fsync oflag=direct status=progress if=result-x86_64-linux.pkgs-node-bootstrap-iso/iso/nixos-25.11.20251204.c97c47f-x86_64-linux.iso of=/dev/sdX` 6 + - Plug iso usb drive into computer and boot 7 + - Login with user added to bootstrap iso 8 + - Run `iwctl` to start wireless connection process 9 + - Run `station list` to get wireless interfaces 10 + - Run `station <interface> connect <SSID>` to connect to your wireless network 11 + - From another computer, run `nixos-anywhere -f .#<HOST> root@<IP> --phases disko,install,reboot` 12 + - If necessary generate a facter.json as part of this command by adding `--generate-hardware-config nixos-facter ./hosts/<HOST>/facter.json`
-7
clusters/clusters.nix
··· 1 - # The importApply argument. Use this to reference things defined locally, 2 - # as opposed to the flake where this is imported. 3 - localFlake: 4 - # Regular module arguments; self, inputs, etc all reference the final user flake, 5 - # where this module was imported. 6 - {inputs, ...}: { 7 - }
+254 -44
flake.lock
··· 10 10 "nixpkgs" 11 11 ], 12 12 "systems": [ 13 - "nix-systems" 13 + "systems" 14 14 ] 15 15 }, 16 16 "locked": { 17 - "lastModified": 1750173260, 18 - "narHash": "sha256-9P1FziAwl5+3edkfFcr5HeGtQUtrSdk/MksX39GieoA=", 17 + "lastModified": 1762618334, 18 + "narHash": "sha256-wyT7Pl6tMFbFrs8Lk/TlEs81N6L+VSybPfiIgzU8lbQ=", 19 19 "owner": "ryantm", 20 20 "repo": "agenix", 21 - "rev": "531beac616433bac6f9e2a19feb8e99a22a66baf", 21 + "rev": "fcdea223397448d35d9b31f798479227e80183f6", 22 22 "type": "github" 23 23 }, 24 24 "original": { ··· 27 27 "type": "github" 28 28 } 29 29 }, 30 + "blueprint": { 31 + "inputs": { 32 + "nixpkgs": [ 33 + "nixpkgs" 34 + ], 35 + "systems": [ 36 + "systems" 37 + ] 38 + }, 39 + "locked": { 40 + "lastModified": 1763308703, 41 + "narHash": "sha256-O9Y+Wer8wOh+N+4kcCK5p/VLrXyX+ktk0/s3HdZvJzk=", 42 + "owner": "numtide", 43 + "repo": "blueprint", 44 + "rev": "5a9bba070f801d63e2af3c9ef00b86b212429f4f", 45 + "type": "github" 46 + }, 47 + "original": { 48 + "owner": "numtide", 49 + "repo": "blueprint", 50 + "type": "github" 51 + } 52 + }, 53 + "devshell": { 54 + "inputs": { 55 + "nixpkgs": [ 56 + "nixpkgs" 57 + ] 58 + }, 59 + "locked": { 60 + "lastModified": 1764011051, 61 + "narHash": "sha256-M7SZyPZiqZUR/EiiBJnmyUbOi5oE/03tCeFrTiUZchI=", 62 + "owner": "numtide", 63 + "repo": "devshell", 64 + "rev": "17ed8d9744ebe70424659b0ef74ad6d41fc87071", 65 + "type": "github" 66 + }, 67 + "original": { 68 + "owner": "numtide", 69 + "repo": "devshell", 70 + "type": "github" 71 + } 72 + }, 30 73 "disko": { 31 74 "inputs": { 32 75 "nixpkgs": [ ··· 34 77 ] 35 78 }, 36 79 "locked": { 37 - "lastModified": 1752113600, 38 - "narHash": "sha256-7LYDxKxZgBQ8LZUuolAQ8UkIB+jb4A2UmiR+kzY9CLI=", 80 + "lastModified": 1764627417, 81 + "narHash": "sha256-D6xc3Rl8Ab6wucJWdvjNsGYGSxNjQHzRc2EZ6eeQ6l4=", 39 82 "owner": "nix-community", 40 83 "repo": "disko", 41 - "rev": "79264292b7e3482e5702932949de9cbb69fedf6d", 84 + "rev": "5a88a6eceb8fd732b983e72b732f6f4b8269bef3", 42 85 "type": "github" 43 86 }, 44 87 "original": { ··· 50 93 "flake-parts": { 51 94 "inputs": { 52 95 "nixpkgs-lib": [ 53 - "nixpkgs" 96 + "nixpkgs-lib" 54 97 ] 55 98 }, 56 99 "locked": { 57 - "lastModified": 1751413152, 58 - "narHash": "sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ=", 100 + "lastModified": 1763759067, 101 + "narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=", 59 102 "owner": "hercules-ci", 60 103 "repo": "flake-parts", 61 - "rev": "77826244401ea9de6e3bac47c2db46005e1f30b5", 104 + "rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0", 62 105 "type": "github" 63 106 }, 64 107 "original": { ··· 74 117 ] 75 118 }, 76 119 "locked": { 77 - "lastModified": 1752208517, 78 - "narHash": "sha256-aRY1cYOdVdXdNjcL/Twpa27CknO7pVHxooPsBizDraE=", 120 + "lastModified": 1764866045, 121 + "narHash": "sha256-0GsEtXV9OquDQ1VclQfP16cU5VZh7NEVIOjSH4UaJuM=", 79 122 "owner": "nix-community", 80 123 "repo": "home-manager", 81 - "rev": "c6a01e54af81b381695db796a43360bf6db5702f", 124 + "rev": "f63d0fe9d81d36e5fc95497217a72e02b8b7bcab", 82 125 "type": "github" 83 126 }, 84 127 "original": { 85 128 "owner": "nix-community", 86 - "ref": "release-25.05", 129 + "ref": "release-25.11", 87 130 "repo": "home-manager", 88 131 "type": "github" 89 132 } 90 133 }, 91 - "nix-systems": { 134 + "nix-fast-build": { 135 + "inputs": { 136 + "flake-parts": [ 137 + "flake-parts" 138 + ], 139 + "nixpkgs": [ 140 + "nixpkgs" 141 + ], 142 + "treefmt-nix": [ 143 + "treefmt-nix" 144 + ] 145 + }, 92 146 "locked": { 93 - "lastModified": 1681028828, 94 - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 95 - "owner": "nix-systems", 96 - "repo": "default", 97 - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 147 + "lastModified": 1764473437, 148 + "narHash": "sha256-fJPxdBX25HuY9hb2NDo2prKRC103zHMseCEeFW1bKIw=", 149 + "owner": "Mic92", 150 + "repo": "nix-fast-build", 151 + "rev": "b26ad640fa008af685c1efd7662ddd7a619e4a6d", 98 152 "type": "github" 99 153 }, 100 154 "original": { 101 - "owner": "nix-systems", 102 - "repo": "default", 155 + "owner": "Mic92", 156 + "repo": "nix-fast-build", 103 157 "type": "github" 104 158 } 105 159 }, 106 - "nixlib": { 160 + "nix-vm-test": { 161 + "inputs": { 162 + "nixpkgs": [ 163 + "nixos-anywhere", 164 + "nixpkgs" 165 + ] 166 + }, 107 167 "locked": { 108 - "lastModified": 1736643958, 109 - "narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=", 168 + "lastModified": 1748765518, 169 + "narHash": "sha256-vftOR+7zwnMWl5UpG32GL1VBeNGTDZZT0hv+2uNuBGw=", 170 + "owner": "Mic92", 171 + "repo": "nix-vm-test", 172 + "rev": "d6642fbaf42fc98883d84bab66cd0ec720d9dd0c", 173 + "type": "github" 174 + }, 175 + "original": { 176 + "owner": "Mic92", 177 + "repo": "nix-vm-test", 178 + "type": "github" 179 + } 180 + }, 181 + "nixos-anywhere": { 182 + "inputs": { 183 + "disko": [ 184 + "disko" 185 + ], 186 + "flake-parts": [ 187 + "flake-parts" 188 + ], 189 + "nix-vm-test": "nix-vm-test", 190 + "nixos-images": "nixos-images", 191 + "nixos-stable": [ 192 + "nixpkgs" 193 + ], 194 + "nixpkgs": [ 195 + "nixpkgs-unstable" 196 + ], 197 + "treefmt-nix": [ 198 + "treefmt-nix" 199 + ] 200 + }, 201 + "locked": { 202 + "lastModified": 1763045507, 203 + "narHash": "sha256-61zO8zsFE8C104hCTv04z6a4H8U03OEMrRAXtGsszkE=", 110 204 "owner": "nix-community", 111 - "repo": "nixpkgs.lib", 112 - "rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181", 205 + "repo": "nixos-anywhere", 206 + "rev": "bad98b0685cf47eaeadcaf6787da8b51cf025693", 113 207 "type": "github" 114 208 }, 115 209 "original": { 116 210 "owner": "nix-community", 117 - "repo": "nixpkgs.lib", 211 + "repo": "nixos-anywhere", 212 + "type": "github" 213 + } 214 + }, 215 + "nixos-facter-modules": { 216 + "locked": { 217 + "lastModified": 1764252389, 218 + "narHash": "sha256-3bbuneTKZBkYXlm0bE36kUjiDsasoIC1GWBw/UEJ9T4=", 219 + "owner": "numtide", 220 + "repo": "nixos-facter-modules", 221 + "rev": "5ea68886d95218646d11d3551a476d458df00778", 222 + "type": "github" 223 + }, 224 + "original": { 225 + "owner": "numtide", 226 + "repo": "nixos-facter-modules", 118 227 "type": "github" 119 228 } 120 229 }, 121 230 "nixos-generators": { 122 231 "inputs": { 123 - "nixlib": "nixlib", 232 + "nixlib": [ 233 + "nixpkgs-lib" 234 + ], 124 235 "nixpkgs": [ 125 236 "nixpkgs" 126 237 ] 127 238 }, 128 239 "locked": { 129 - "lastModified": 1751903740, 130 - "narHash": "sha256-PeSkNMvkpEvts+9DjFiop1iT2JuBpyknmBUs0Un0a4I=", 240 + "lastModified": 1764234087, 241 + "narHash": "sha256-NHF7QWa0ZPT8hsJrvijREW3+nifmF2rTXgS2v0tpcEA=", 131 242 "owner": "nix-community", 132 243 "repo": "nixos-generators", 133 - "rev": "032decf9db65efed428afd2fa39d80f7089085eb", 244 + "rev": "032a1878682fafe829edfcf5fdfad635a2efe748", 134 245 "type": "github" 135 246 }, 136 247 "original": { ··· 141 252 }, 142 253 "nixos-hardware": { 143 254 "locked": { 144 - "lastModified": 1752048960, 145 - "narHash": "sha256-gATnkOe37eeVwKKYCsL+OnS2gU4MmLuZFzzWCtaKLI8=", 255 + "lastModified": 1764440730, 256 + "narHash": "sha256-ZlJTNLUKQRANlLDomuRWLBCH5792x+6XUJ4YdFRjtO4=", 146 257 "owner": "NixOS", 147 258 "repo": "nixos-hardware", 148 - "rev": "7ced9122cff2163c6a0212b8d1ec8c33a1660806", 259 + "rev": "9154f4569b6cdfd3c595851a6ba51bfaa472d9f3", 149 260 "type": "github" 150 261 }, 151 262 "original": { ··· 154 265 "type": "github" 155 266 } 156 267 }, 268 + "nixos-images": { 269 + "inputs": { 270 + "nixos-stable": [ 271 + "nixos-anywhere", 272 + "nixos-stable" 273 + ], 274 + "nixos-unstable": [ 275 + "nixos-anywhere", 276 + "nixpkgs" 277 + ] 278 + }, 279 + "locked": { 280 + "lastModified": 1749086071, 281 + "narHash": "sha256-4+fY7i+q78F3t6APz0cMC4kRxsyCb+UTyfhbckkCd7Q=", 282 + "owner": "nix-community", 283 + "repo": "nixos-images", 284 + "rev": "aa38dbbdf0e955baef7e03dfc4265ae3fdac4808", 285 + "type": "github" 286 + }, 287 + "original": { 288 + "owner": "nix-community", 289 + "repo": "nixos-images", 290 + "type": "github" 291 + } 292 + }, 157 293 "nixpkgs": { 158 294 "locked": { 159 - "lastModified": 1752162966, 160 - "narHash": "sha256-3MxxkU8ZXMHXcbFz7UE4M6qnIPTYGcE/7EMqlZNnVDE=", 161 - "owner": "nixos", 295 + "lastModified": 1764831616, 296 + "narHash": "sha256-OtzF5wBvO0jgW1WW1rQU9cMGx7zuvkF7CAVJ1ypzkxA=", 297 + "owner": "NixOS", 298 + "repo": "nixpkgs", 299 + "rev": "c97c47f2bac4fa59e2cbdeba289686ae615f8ed4", 300 + "type": "github" 301 + }, 302 + "original": { 303 + "owner": "NixOS", 304 + "ref": "nixos-25.11", 305 + "repo": "nixpkgs", 306 + "type": "github" 307 + } 308 + }, 309 + "nixpkgs-lib": { 310 + "locked": { 311 + "lastModified": 1764465291, 312 + "narHash": "sha256-jJ/E4B9Hp7U2ZmT3E0tD1LtAfATw/xjVf8sueNyeYmc=", 313 + "owner": "nix-community", 314 + "repo": "nixpkgs.lib", 315 + "rev": "e9537535ae8f4a2f78dbef0aaa0cbb6af4abd047", 316 + "type": "github" 317 + }, 318 + "original": { 319 + "owner": "nix-community", 320 + "repo": "nixpkgs.lib", 321 + "type": "github" 322 + } 323 + }, 324 + "nixpkgs-unstable": { 325 + "locked": { 326 + "lastModified": 1764667669, 327 + "narHash": "sha256-7WUCZfmqLAssbDqwg9cUDAXrSoXN79eEEq17qhTNM/Y=", 328 + "owner": "NixOS", 162 329 "repo": "nixpkgs", 163 - "rev": "10e687235226880ed5e9f33f1ffa71fe60f2638a", 330 + "rev": "418468ac9527e799809c900eda37cbff999199b6", 164 331 "type": "github" 165 332 }, 166 333 "original": { 167 - "owner": "nixos", 168 - "ref": "nixos-25.05", 334 + "owner": "NixOS", 335 + "ref": "nixos-unstable", 169 336 "repo": "nixpkgs", 170 337 "type": "github" 171 338 } ··· 173 340 "root": { 174 341 "inputs": { 175 342 "agenix": "agenix", 343 + "blueprint": "blueprint", 344 + "devshell": "devshell", 176 345 "disko": "disko", 177 346 "flake-parts": "flake-parts", 178 347 "home-manager": "home-manager", 179 - "nix-systems": "nix-systems", 348 + "nix-fast-build": "nix-fast-build", 349 + "nixos-anywhere": "nixos-anywhere", 350 + "nixos-facter-modules": "nixos-facter-modules", 180 351 "nixos-generators": "nixos-generators", 181 352 "nixos-hardware": "nixos-hardware", 182 - "nixpkgs": "nixpkgs" 353 + "nixpkgs": "nixpkgs", 354 + "nixpkgs-lib": "nixpkgs-lib", 355 + "nixpkgs-unstable": "nixpkgs-unstable", 356 + "systems": "systems", 357 + "treefmt-nix": "treefmt-nix" 358 + } 359 + }, 360 + "systems": { 361 + "locked": { 362 + "lastModified": 1681028828, 363 + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 364 + "owner": "nix-systems", 365 + "repo": "default", 366 + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 367 + "type": "github" 368 + }, 369 + "original": { 370 + "owner": "nix-systems", 371 + "repo": "default", 372 + "type": "github" 373 + } 374 + }, 375 + "treefmt-nix": { 376 + "inputs": { 377 + "nixpkgs": [ 378 + "nixpkgs" 379 + ] 380 + }, 381 + "locked": { 382 + "lastModified": 1762938485, 383 + "narHash": "sha256-AlEObg0syDl+Spi4LsZIBrjw+snSVU4T8MOeuZJUJjM=", 384 + "owner": "numtide", 385 + "repo": "treefmt-nix", 386 + "rev": "5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4", 387 + "type": "github" 388 + }, 389 + "original": { 390 + "owner": "numtide", 391 + "repo": "treefmt-nix", 392 + "type": "github" 183 393 } 184 394 } 185 395 },
+52 -73
flake.nix
··· 1 1 { 2 - description = "NixOS configuration for home devices"; 2 + description = "My nixos configuration"; 3 3 4 + # Add all your dependencies here 4 5 inputs = { 5 - # Core Inputs 6 - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05"; 6 + # Nixpkgs 7 + nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.11"; 8 + nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; 9 + nixpkgs-lib.url = "github:nix-community/nixpkgs.lib"; 10 + systems.url = "github:nix-systems/default"; 11 + 12 + # Flake utilities 13 + blueprint = { 14 + url = "github:numtide/blueprint"; 15 + inputs.nixpkgs.follows = "nixpkgs"; 16 + inputs.systems.follows = "systems"; 17 + }; 18 + devshell = { 19 + url = "github:numtide/devshell"; 20 + inputs.nixpkgs.follows = "nixpkgs"; 21 + }; 7 22 flake-parts = { 8 23 url = "github:hercules-ci/flake-parts"; 9 - inputs.nixpkgs-lib.follows = "nixpkgs"; 24 + inputs.nixpkgs-lib.follows = "nixpkgs-lib"; 10 25 }; 11 - nix-systems = { 12 - url = "github:nix-systems/default"; 26 + treefmt-nix = { 27 + url = "github:numtide/treefmt-nix"; 28 + inputs.nixpkgs.follows = "nixpkgs"; 13 29 }; 14 30 15 31 # NixOs Inputs ··· 19 35 inputs.darwin.follows = ""; 20 36 inputs.home-manager.follows = "home-manager"; 21 37 inputs.nixpkgs.follows = "nixpkgs"; 22 - inputs.systems.follows = "nix-systems"; 38 + inputs.systems.follows = "systems"; 23 39 }; 24 40 disko = { 25 41 url = "github:nix-community/disko"; 26 42 inputs.nixpkgs.follows = "nixpkgs"; 27 43 }; 28 44 home-manager = { 29 - url = "github:nix-community/home-manager/release-25.05"; 45 + url = "github:nix-community/home-manager/release-25.11"; 30 46 inputs.nixpkgs.follows = "nixpkgs"; 31 47 }; 48 + nixos-anywhere = { 49 + url = "github:nix-community/nixos-anywhere"; 50 + inputs.disko.follows = "disko"; 51 + inputs.flake-parts.follows = "flake-parts"; 52 + inputs.nixpkgs.follows = "nixpkgs-unstable"; 53 + inputs.nixos-stable.follows = "nixpkgs"; 54 + inputs.treefmt-nix.follows = "treefmt-nix"; 55 + }; 56 + nixos-facter-modules = { 57 + url = "github:numtide/nixos-facter-modules"; 58 + }; 32 59 nixos-generators = { 33 60 url = "github:nix-community/nixos-generators"; 61 + inputs.nixlib.follows = "nixpkgs-lib"; 34 62 inputs.nixpkgs.follows = "nixpkgs"; 35 63 }; 36 64 nixos-hardware = { 37 65 url = "github:NixOS/nixos-hardware"; 38 66 }; 67 + 68 + # Nix Utilities 69 + nix-fast-build = { 70 + url = "github:Mic92/nix-fast-build"; 71 + inputs.flake-parts.follows = "flake-parts"; 72 + inputs.nixpkgs.follows = "nixpkgs"; 73 + inputs.treefmt-nix.follows = "treefmt-nix"; 74 + }; 39 75 }; 40 76 41 - outputs = inputs @ { 42 - # Core Inputs 43 - nixpkgs, 44 - flake-parts, 45 - # NixOs Inputs 46 - agenix, 47 - disko, 48 - home-manager, 49 - nixos-generators, 50 - nixos-hardware, 51 - ... 52 - }: 53 - flake-parts.lib.mkFlake {inherit inputs;} ({ 54 - withSystem, 55 - flake-parts-lib, 56 - ... 57 - }: let 58 - inherit (flake-parts-lib) importApply; 59 - flakeModules.clusters = importApply ./clusters/clusters.nix {inherit withSystem;}; 60 - flakeModules.machines = importApply ./machines/machines.nix {inherit withSystem;}; 61 - in { 62 - imports = [ 63 - flakeModules.clusters 64 - flakeModules.machines 65 - ]; 66 - 67 - systems = ["x86_64-linux" "aarch64-linux" "aarch64-darwin"]; 68 - 69 - perSystem = { 70 - pkgs, 71 - system, 72 - lib, 73 - ... 74 - }: { 75 - checks = let 76 - fs = lib.fileset; 77 - sourceFiles = fs.unions [ 78 - (fs.fileFilter (file: file.hasExt "nix") ./.) 79 - ]; 80 - in { 81 - nix-fmt-check = pkgs.stdenv.mkDerivation { 82 - name = "nix-fmt-check"; 83 - src = fs.toSource { 84 - root = ./.; 85 - fileset = sourceFiles; 86 - }; 87 - installPhase = '' 88 - ${pkgs.alejandra}/bin/alejandra -c . 89 - touch $out 90 - ''; 91 - }; 92 - }; 93 - formatter = pkgs.alejandra; 94 - devShells.default = pkgs.mkShell { 95 - packages = with pkgs; [ 96 - inputs.agenix.packages.${system}.default 97 - ]; 98 - }; 99 - 100 - packages = import ./packages { 101 - inherit nixpkgs; 102 - pkgs = nixpkgs.legacyPackages.${system}; 103 - }; 104 - }; 105 - }); 77 + # Load the blueprint 78 + outputs = inputs: 79 + inputs.blueprint { 80 + inherit inputs; 81 + prefix = "nix/"; 82 + # Only support systems that have at least one host 83 + systems = ["x86_64-linux"]; 84 + }; 106 85 }
-13
machines/NewHost.md
··· 1 - # Creating a new host 2 - 3 - 1. Generate bootable bootstrap image for the new machine: 4 - - Ex. x86 VM `nixos-generate -f iso --flake .#nixos-bootstrap --system x84_64-linux -o ./result |& nom` 5 - - Ex. Rasperry Pi 4 `nixos-generate -f sd-aarch64 --flake .#nixos-bootstrap --system aarch64-linux -o ./result |& nom` 6 - 2. Boot the new machine from the generated image. 7 - 3. Make a new host configuration in the hosts directory, using one of the existing hosts as a template. 8 - 4. Connect to the new machine via ssh over tailscale: `ssh root@nixos-bootstrap`. If you can't connect, you may need to refresh the tailscale key and rebuild the image. 9 - 6. Get the ssh keys on the host and add them to [secrets.nix](../secrets/secrets.nix) 10 - 7. Re-key the secrets using `agenix -r` 11 - 8. Run `lsblk` to identify the disks on the remote machine 12 - 9. Configure `devices.nix` in the new host directory to partition the disks as desired 13 - 10. Install the configuration on the host using: `nixos-anywhere --flake .#{your-new-hostname} --generate-hardware-config nixos-generate-config ./machines/hosts/{path/to}/hardware-configuration.nix root@nixos-bootstrap`
+29 -10
machines/hosts/desktops/inwin-tower/configuration.nix nix/hosts/inwin-tower/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 1 { 2 + inputs, 3 + flake, 5 4 config, 6 5 lib, 7 - pkgs, 8 - nixpkgs, 9 6 ... 10 7 }: 11 8 with config; { 12 9 imports = [ 10 + # Standard nixos-anywhere modules 11 + inputs.disko.nixosModules.disko 12 + 13 13 # Include the results of the hardware scan. 14 14 ./hardware-configuration.nix 15 15 16 - # Include any additional apps desired 17 - ../../../modules/desktop/apps/ollama.nix 18 - ../../../modules/desktop/apps/jetbrains.nix 19 - ../../../modules/desktop/apps/steam.nix 16 + # Add user modules 17 + flake.modules.users.tghanken 18 + 19 + # Additional NixOs modules from this flake 20 + flake.nixosModules.bootloader 21 + flake.nixosModules.bootstrap 22 + flake.nixosModules.desktop 23 + flake.nixosModules.kernel 24 + flake.nixosModules.networking 25 + flake.nixosModules.secrets 26 + flake.nixosModules.sound 27 + flake.nixosModules.tailscale 28 + 29 + flake.modules.desktop.jetbrains 30 + flake.modules.desktop.ollama 31 + flake.modules.desktop.steam 32 + 33 + flake.modules.builders.client 34 + flake.modules.builders.server 35 + 36 + flake.modules.utils.auto-upgrade 37 + flake.modules.utils.earlyoom 38 + flake.modules.utils.docker 20 39 ]; 21 40 22 41 networking.hostName = "inwin-tower"; # Define your hostname. 23 42 networking.hostId = "89cc1717"; # Generate using `head -c 8 /etc/machine-id` 24 43 25 44 disko.devices = import ./devices.nix; 26 - customBoot.enable = true; 45 + # customBoot.enable = true; 27 46 boot.loader.efi.canTouchEfiVariables = lib.mkForce false; 28 47 29 48 boot.binfmt.emulatedSystems = ["aarch64-linux"];
machines/hosts/desktops/inwin-tower/devices.nix nix/hosts/inwin-tower/devices.nix
-1
machines/hosts/desktops/inwin-tower/hardware-configuration.nix nix/hosts/inwin-tower/hardware-configuration.nix
··· 4 4 { 5 5 config, 6 6 lib, 7 - pkgs, 8 7 modulesPath, 9 8 ... 10 9 }: {
-12
machines/hosts/desktops/inwin-tower/install.sh
··· 1 - sudo nix --extra-experimental-features nix-command --extra-experimental-features flakes \ 2 - run 'github:nix-community/disko#disko-install' -- \ 3 - --flake '.#inwin-tower' \ 4 - --disk boot /dev/disk/by-id/nvme-INTEL_SSDPEDMW400G4_CVCQ6453007T400IGN \ 5 - --disk f1 /dev/disk/by-id/nvme-CT1000P3SSD8_2320E6D67715 \ 6 - --disk f2 /dev/disk/by-id/nvme-CT1000P3SSD8_2320E6D67656 \ 7 - --disk bulk1 /dev/disk/by-id/ata-Hitachi_HUA723020ALA641_YGG3E3LA; 8 - 9 - # Must manually export zpools as disko doesn't handle correctly 10 - sudo zpool export zroot; 11 - sudo zpool export zflash; 12 - sudo zpool export zbulk;
+28 -5
machines/hosts/desktops/nixos-thinkpad/configuration.nix nix/hosts/nixos-thinkpad/configuration.nix
··· 2 2 # your system. Help is available in the configuration.nix(5) man page 3 3 # and in the NixOS manual (accessible by running ‘nixos-help’). 4 4 { 5 + inputs, 6 + flake, 5 7 config, 6 - pkgs, 7 8 ... 8 9 }: 9 10 with config; { 10 11 imports = [ 12 + # Standard nixos-anywhere modules 13 + inputs.disko.nixosModules.disko 14 + 11 15 # Include the results of the hardware scan. 12 16 ./hardware-configuration.nix 13 17 14 - # Include any additional apps desired 15 - ../../../modules/desktop/apps/jetbrains.nix 16 - ../../../modules/desktop/apps/steam.nix 18 + # Add user modules 19 + flake.modules.users.tghanken 20 + 21 + # Additional NixOs modules from this flake 22 + flake.nixosModules.bootloader 23 + flake.nixosModules.bootstrap 24 + flake.nixosModules.desktop 25 + flake.nixosModules.kernel 26 + flake.nixosModules.networking 27 + flake.nixosModules.secrets 28 + flake.nixosModules.sound 29 + flake.nixosModules.tailscale 30 + 31 + flake.modules.desktop.jetbrains 32 + flake.modules.desktop.steam 33 + 34 + flake.modules.builders.client 35 + flake.modules.builders.server 36 + 37 + flake.modules.utils.auto-upgrade 38 + flake.modules.utils.earlyoom 39 + flake.modules.utils.docker 17 40 ]; 18 41 19 42 networking.hostName = "nixos-thinkpad"; # Define your hostname. 20 43 networking.hostId = "a0d787a6"; # Generate using `head -c 8 /etc/machine-id` 21 44 22 45 disko.devices = import ./devices.nix; 23 - customBoot.enable = true; 46 + # customBoot.enable = true; 24 47 25 48 boot.binfmt.emulatedSystems = ["aarch64-linux"]; 26 49
machines/hosts/desktops/nixos-thinkpad/devices.nix nix/hosts/nixos-thinkpad/devices.nix
-1
machines/hosts/desktops/nixos-thinkpad/hardware-configuration.nix nix/hosts/nixos-thinkpad/hardware-configuration.nix
··· 4 4 { 5 5 config, 6 6 lib, 7 - pkgs, 8 7 modulesPath, 9 8 ... 10 9 }: {
-11
machines/hosts/desktops/nixos-thinkpad/install.sh
··· 1 - nix-store --gc; 2 - 3 - nixos-rebuild build --flake .#nixos-thinkpad; 4 - 5 - nix-store --gc; 6 - 7 - sudo nix --extra-experimental-features nix-command --extra-experimental-features flakes \ 8 - run 'github:nix-community/disko#disko-install' -- \ 9 - --write-efi-boot-entries \ 10 - --flake '.#nixos-thinkpad' \ 11 - --disk boot /dev/nvme0n1;
-28
machines/hosts/servers/nixos-rpi3/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - ... 8 - }: 9 - with config; { 10 - imports = [ 11 - # Include the results of the hardware scan. 12 - ./hardware-configuration.nix 13 - ../../../modules/hardware/raspberry-pi/pi3.nix 14 - ]; 15 - 16 - networking.hostName = "nixos-rpi3"; # Define your hostname. 17 - networking.hostId = "f06fe3da"; # Generate using `head -c 8 /etc/machine-id` 18 - 19 - boot.binfmt.emulatedSystems = ["x86_64-linux"]; 20 - 21 - # This value determines the NixOS release from which the default 22 - # settings for stateful data, like file locations and database versions 23 - # on your system were taken. It‘s perfectly fine and recommended to leave 24 - # this value at the release version of the first install of this system. 25 - # Before changing this value read the documentation for this option 26 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 27 - system.stateVersion = "24.05"; # Did you read the comment? 28 - }
-37
machines/hosts/servers/nixos-rpi3/hardware-configuration.nix
··· 1 - # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 - # and may be overwritten by future invocations. Please make changes 3 - # to /etc/nixos/configuration.nix instead. 4 - { 5 - config, 6 - lib, 7 - pkgs, 8 - modulesPath, 9 - ... 10 - }: { 11 - imports = [ 12 - (modulesPath + "/installer/scan/not-detected.nix") 13 - ]; 14 - 15 - boot.initrd.availableKernelModules = []; 16 - boot.initrd.kernelModules = []; 17 - boot.kernelModules = []; 18 - boot.extraModulePackages = []; 19 - 20 - fileSystems."/" = { 21 - device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888"; 22 - fsType = "ext4"; 23 - }; 24 - 25 - swapDevices = []; 26 - 27 - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 28 - # (the default) this is the recommended approach. When using systemd-networkd it's 29 - # still possible to use this option, but it's recommended to use it in conjunction 30 - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 31 - networking.useDHCP = lib.mkDefault true; 32 - # networking.interfaces.enu1u1.useDHCP = lib.mkDefault true; 33 - # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; 34 - # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; 35 - 36 - nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 37 - }
-5
machines/hosts/servers/nixos-rpi3/install.sh
··· 1 - sudo disko-install \ 2 - --flake 'github:tghanken/nixos-config#nixos-rpi3' \ 3 - --disk boot /dev/mmcblk0; 4 - 5 - sudo zpool export zroot;
-28
machines/hosts/servers/nixos-rpi4-1/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - ... 8 - }: 9 - with config; { 10 - imports = [ 11 - # Include the results of the hardware scan. 12 - ./hardware-configuration.nix 13 - ../../../modules/hardware/raspberry-pi/pi4.nix 14 - ]; 15 - 16 - networking.hostName = "nixos-rpi4-1"; # Define your hostname. 17 - networking.hostId = "7fa9d1f9"; # Generate using `head -c 8 /etc/machine-id` 18 - 19 - boot.binfmt.emulatedSystems = ["x86_64-linux"]; 20 - 21 - # This value determines the NixOS release from which the default 22 - # settings for stateful data, like file locations and database versions 23 - # on your system were taken. It‘s perfectly fine and recommended to leave 24 - # this value at the release version of the first install of this system. 25 - # Before changing this value read the documentation for this option 26 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 27 - system.stateVersion = "24.05"; # Did you read the comment? 28 - }
-37
machines/hosts/servers/nixos-rpi4-1/hardware-configuration.nix
··· 1 - # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 - # and may be overwritten by future invocations. Please make changes 3 - # to /etc/nixos/configuration.nix instead. 4 - { 5 - config, 6 - lib, 7 - pkgs, 8 - modulesPath, 9 - ... 10 - }: { 11 - imports = [ 12 - (modulesPath + "/installer/scan/not-detected.nix") 13 - ]; 14 - 15 - boot.initrd.availableKernelModules = ["xhci_pci"]; 16 - boot.initrd.kernelModules = []; 17 - boot.kernelModules = []; 18 - boot.extraModulePackages = []; 19 - 20 - fileSystems."/" = { 21 - device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888"; 22 - fsType = "ext4"; 23 - }; 24 - 25 - swapDevices = []; 26 - 27 - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 28 - # (the default) this is the recommended approach. When using systemd-networkd it's 29 - # still possible to use this option, but it's recommended to use it in conjunction 30 - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 31 - networking.useDHCP = lib.mkDefault true; 32 - # networking.interfaces.end0.useDHCP = lib.mkDefault true; 33 - # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; 34 - # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; 35 - 36 - nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 37 - }
-28
machines/hosts/servers/nixos-rpi4-2/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - ... 8 - }: 9 - with config; { 10 - imports = [ 11 - # Include the results of the hardware scan. 12 - ./hardware-configuration.nix 13 - ../../../modules/hardware/raspberry-pi/pi4.nix 14 - ]; 15 - 16 - networking.hostName = "nixos-rpi4-2"; # Define your hostname. 17 - networking.hostId = "b8c9164e"; # Generate using `head -c 8 /etc/machine-id` 18 - 19 - boot.binfmt.emulatedSystems = ["x86_64-linux"]; 20 - 21 - # This value determines the NixOS release from which the default 22 - # settings for stateful data, like file locations and database versions 23 - # on your system were taken. It‘s perfectly fine and recommended to leave 24 - # this value at the release version of the first install of this system. 25 - # Before changing this value read the documentation for this option 26 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 27 - system.stateVersion = "24.05"; # Did you read the comment? 28 - }
-37
machines/hosts/servers/nixos-rpi4-2/hardware-configuration.nix
··· 1 - # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 - # and may be overwritten by future invocations. Please make changes 3 - # to /etc/nixos/configuration.nix instead. 4 - { 5 - config, 6 - lib, 7 - pkgs, 8 - modulesPath, 9 - ... 10 - }: { 11 - imports = [ 12 - (modulesPath + "/installer/scan/not-detected.nix") 13 - ]; 14 - 15 - boot.initrd.availableKernelModules = ["xhci_pci"]; 16 - boot.initrd.kernelModules = []; 17 - boot.kernelModules = []; 18 - boot.extraModulePackages = []; 19 - 20 - fileSystems."/" = { 21 - device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888"; 22 - fsType = "ext4"; 23 - }; 24 - 25 - swapDevices = []; 26 - 27 - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 28 - # (the default) this is the recommended approach. When using systemd-networkd it's 29 - # still possible to use this option, but it's recommended to use it in conjunction 30 - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 31 - networking.useDHCP = lib.mkDefault true; 32 - # networking.interfaces.end0.useDHCP = lib.mkDefault true; 33 - # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; 34 - # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; 35 - 36 - nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 37 - }
-28
machines/hosts/servers/nixos-rpi4-3/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - ... 8 - }: 9 - with config; { 10 - imports = [ 11 - # Include the results of the hardware scan. 12 - ./hardware-configuration.nix 13 - ../../../modules/hardware/raspberry-pi/pi4.nix 14 - ]; 15 - 16 - networking.hostName = "nixos-rpi4-3"; # Define your hostname. 17 - networking.hostId = "cb41623f"; # Generate using `head -c 8 /etc/machine-id` 18 - 19 - boot.binfmt.emulatedSystems = ["x86_64-linux"]; 20 - 21 - # This value determines the NixOS release from which the default 22 - # settings for stateful data, like file locations and database versions 23 - # on your system were taken. It‘s perfectly fine and recommended to leave 24 - # this value at the release version of the first install of this system. 25 - # Before changing this value read the documentation for this option 26 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 27 - system.stateVersion = "24.05"; # Did you read the comment? 28 - }
-37
machines/hosts/servers/nixos-rpi4-3/hardware-configuration.nix
··· 1 - # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 - # and may be overwritten by future invocations. Please make changes 3 - # to /etc/nixos/configuration.nix instead. 4 - { 5 - config, 6 - lib, 7 - pkgs, 8 - modulesPath, 9 - ... 10 - }: { 11 - imports = [ 12 - (modulesPath + "/installer/scan/not-detected.nix") 13 - ]; 14 - 15 - boot.initrd.availableKernelModules = ["xhci_pci"]; 16 - boot.initrd.kernelModules = []; 17 - boot.kernelModules = []; 18 - boot.extraModulePackages = []; 19 - 20 - fileSystems."/" = { 21 - device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888"; 22 - fsType = "ext4"; 23 - }; 24 - 25 - swapDevices = []; 26 - 27 - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 28 - # (the default) this is the recommended approach. When using systemd-networkd it's 29 - # still possible to use this option, but it's recommended to use it in conjunction 30 - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 31 - networking.useDHCP = lib.mkDefault true; 32 - # networking.interfaces.end0.useDHCP = lib.mkDefault true; 33 - # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; 34 - # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; 35 - 36 - nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 37 - }
-30
machines/hosts/servers/syno-vm/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - ... 8 - }: 9 - with config; { 10 - imports = [ 11 - # Include the results of the hardware scan. 12 - ./hardware-configuration.nix 13 - ]; 14 - 15 - networking.hostName = "syno-vm"; # Define your hostname. 16 - networking.hostId = "5433dcd9"; # Generate using `head -c 8 /etc/machine-id` 17 - 18 - disko.devices = import ./devices.nix; 19 - customBoot.enable = true; 20 - 21 - boot.binfmt.emulatedSystems = ["aarch64-linux"]; 22 - 23 - # This value determines the NixOS release from which the default 24 - # settings for stateful data, like file locations and database versions 25 - # on your system were taken. It‘s perfectly fine and recommended to leave 26 - # this value at the release version of the first install of this system. 27 - # Before changing this value read the documentation for this option 28 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 29 - system.stateVersion = "24.05"; # Did you read the comment? 30 - }
+6 -11
machines/hosts/servers/syno-vm/devices.nix nix/hosts/pegasus/disk-config.nix
··· 2 2 disk = { 3 3 boot = { 4 4 type = "disk"; 5 - device = "/dev/sda"; 5 + device = "/dev/disk/by-id/nvme-eui.e8238fa6bf530001001b448b42733398"; 6 6 content = { 7 7 type = "gpt"; 8 8 partitions = { 9 - MBR = { 10 - type = "EF02"; 11 - size = "1M"; 12 - priority = 1; 13 - }; 14 9 ESP = { 15 - size = "512M"; 10 + size = "1G"; 16 11 type = "EF00"; 17 12 content = { 18 13 type = "filesystem"; 19 14 format = "vfat"; 20 15 mountpoint = "/boot"; 21 16 }; 22 - priority = 2; 17 + priority = 1; 23 18 }; 24 19 zfs = { 25 - end = "-32G"; 20 + end = "-58G"; 26 21 content = { 27 22 type = "zfs"; 28 23 pool = "zroot"; 29 24 }; 30 - priority = 3; 25 + priority = 2; 31 26 }; 32 27 encryptedSwap = { 33 - size = "1G"; 28 + size = "8G"; 34 29 content = { 35 30 type = "swap"; 36 31 randomEncryption = true;
-28
machines/hosts/servers/syno-vm/hardware-configuration.nix
··· 1 - # Do not modify this file! It was generated by ‘nixos-generate-config’ 2 - # and may be overwritten by future invocations. Please make changes 3 - # to /etc/nixos/configuration.nix instead. 4 - { 5 - config, 6 - lib, 7 - pkgs, 8 - modulesPath, 9 - ... 10 - }: { 11 - imports = []; 12 - 13 - boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"]; 14 - boot.initrd.kernelModules = []; 15 - boot.kernelModules = []; 16 - boot.extraModulePackages = []; 17 - 18 - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking 19 - # (the default) this is the recommended approach. When using systemd-networkd it's 20 - # still possible to use this option, but it's recommended to use it in conjunction 21 - # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. 22 - networking.useDHCP = lib.mkDefault true; 23 - # networking.interfaces.ens3.useDHCP = lib.mkDefault true; 24 - # networking.interfaces.tailscale0.useDHCP = lib.mkDefault true; 25 - 26 - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; 27 - virtualisation.hypervGuest.enable = true; 28 - }
-4
machines/hosts/servers/syno-vm/install.sh
··· 1 - nix run github:nix-community/nixos-anywhere -- \ 2 - --copy-host-keys \ 3 - --flake .#syno-vm \ 4 - root@192.168.20.96
-48
machines/hosts/utils/nixos-bootstrap/configuration.nix
··· 1 - # Edit this configuration file to define what should be installed on 2 - # your system. Help is available in the configuration.nix(5) man page 3 - # and in the NixOS manual (accessible by running ‘nixos-help’). 4 - { 5 - config, 6 - pkgs, 7 - lib, 8 - modulesPath, 9 - ... 10 - }: 11 - with config; let 12 - authorizedKeys = [ 13 - # user keys from secrets.nix 14 - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICh921bOnrGEySjw/eRrUAj1UbV2sf1YIcm5X74r6gTh" 15 - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOHrxGPx3dgap4sUwWyHbQsMJiv9tSNG05BEMNkNLDZF" 16 - ]; 17 - in { 18 - networking.hostName = "nixos-bootstrap"; # Define your hostname. 19 - networking.hostId = "00000000"; # Set placeholder hostid to support zfs 20 - 21 - # Authorize with tailscale as a bootstrap node 22 - services.tailscale_user.auth_key = "TODO: tskey-auth-placeholder"; 23 - 24 - # Enable sshd to generate root keys 25 - services.openssh = { 26 - enable = true; 27 - openFirewall = true; 28 - }; 29 - users.users.root.openssh.authorizedKeys.keys = authorizedKeys; 30 - 31 - # Enable zfs so disko install works 32 - boot.supportedFilesystems = ["zfs"]; 33 - 34 - # Prebuild install packages 35 - environment.systemPackages = with pkgs; [ 36 - disko 37 - zfs 38 - nix-output-monitor 39 - ]; 40 - 41 - # This value determines the NixOS release from which the default 42 - # settings for stateful data, like file locations and database versions 43 - # on your system were taken. It‘s perfectly fine and recommended to leave 44 - # this value at the release version of the first install of this system. 45 - # Before changing this value read the documentation for this option 46 - # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). 47 - system.stateVersion = "24.05"; # Did you read the comment? 48 - }
-97
machines/machines.nix
··· 1 - localFlake: {inputs, ...}: 2 - with inputs; let 3 - home = [ 4 - home-manager.nixosModules.home-manager 5 - { 6 - home-manager = { 7 - useGlobalPkgs = true; 8 - useUserPackages = true; 9 - users.tghanken = import ./modules/users/tghanken/home-manager.nix; 10 - }; 11 - } 12 - ]; 13 - users = [./modules/users/users.nix]; 14 - 15 - secrets = [agenix.nixosModules.default ../secrets/mod.nix]; 16 - 17 - # Apply to all hosts, including bootstrap images 18 - bootstrap_mods = [./modules/bootstrap/bootstrap.nix] ++ users; 19 - 20 - # Apply to all hosts, including hosts being adopted 21 - install_mods = [disko.nixosModules.disko ./modules/install/install.nix] ++ bootstrap_mods; 22 - 23 - # Apply to all activated hosts 24 - common_mods = [./modules/common/common.nix] ++ install_mods ++ secrets; 25 - 26 - # Apply to only servers 27 - server_mods = [./modules/server/server.nix] ++ common_mods; 28 - 29 - # Apply to only desktops 30 - desktop_mods = [./modules/desktop/desktop.nix] ++ common_mods ++ home; 31 - in { 32 - flake = { 33 - nixosConfigurations = { 34 - # Desktops 35 - inwin-tower = inputs.nixpkgs.lib.nixosSystem { 36 - modules = [./hosts/desktops/inwin-tower/configuration.nix] ++ desktop_mods; 37 - }; 38 - nixos-thinkpad = inputs.nixpkgs.lib.nixosSystem { 39 - modules = [./hosts/desktops/nixos-thinkpad/configuration.nix] ++ desktop_mods; 40 - }; 41 - 42 - # Servers 43 - nixos-rpi3 = inputs.nixpkgs.lib.nixosSystem { 44 - modules = 45 - [ 46 - ./hosts/servers/nixos-rpi3/configuration.nix 47 - inputs.nixos-hardware.nixosModules.raspberry-pi-3 48 - ] 49 - ++ server_mods; 50 - }; 51 - nixos-rpi4-1 = inputs.nixpkgs.lib.nixosSystem { 52 - modules = 53 - [ 54 - ./hosts/servers/nixos-rpi4-1/configuration.nix 55 - inputs.nixos-hardware.nixosModules.raspberry-pi-4 56 - ] 57 - ++ server_mods; 58 - }; 59 - nixos-rpi4-2 = inputs.nixpkgs.lib.nixosSystem { 60 - modules = 61 - [ 62 - ./hosts/servers/nixos-rpi4-2/configuration.nix 63 - inputs.nixos-hardware.nixosModules.raspberry-pi-4 64 - ] 65 - ++ server_mods; 66 - }; 67 - nixos-rpi4-3 = inputs.nixpkgs.lib.nixosSystem { 68 - modules = 69 - [ 70 - ./hosts/servers/nixos-rpi4-3/configuration.nix 71 - inputs.nixos-hardware.nixosModules.raspberry-pi-4 72 - ] 73 - ++ server_mods; 74 - }; 75 - syno-vm = inputs.nixpkgs.lib.nixosSystem { 76 - modules = [./hosts/servers/syno-vm/configuration.nix] ++ server_mods; 77 - }; 78 - }; 79 - }; 80 - perSystem = { 81 - packages = let 82 - bootstrap_modules = [./hosts/utils/nixos-bootstrap/configuration.nix] ++ bootstrap_mods; 83 - in { 84 - nixos-vm-bootstrap-image = inputs.nixos-generators.nixosGenerate { 85 - system = "x86_64-linux"; 86 - modules = bootstrap_modules; 87 - format = "iso"; 88 - }; 89 - # To burn image: sudo zstd -cd ./result/sd-image/{img}.img.zst | sudo dd bs=1M of=/dev/sdX status=progress 90 - nixos-rpi-bootstrap-image = inputs.nixos-generators.nixosGenerate { 91 - system = "aarch64-linux"; 92 - modules = bootstrap_modules; 93 - format = "sd-aarch64"; 94 - }; 95 - }; 96 - }; 97 - }
+21 -8
machines/modules/bootstrap/bootstrap.nix nix/modules/nixos/bootstrap.nix
··· 1 - {pkgs, ...}: { 1 + { 2 + lib, 3 + pkgs, 4 + modulesPath, 5 + ... 6 + }: { 2 7 imports = [ 3 - ./builders/builders.nix 4 - ./tailscale.nix 8 + (modulesPath + "/installer/scan/not-detected.nix") 5 9 ]; 6 10 7 11 # Allow unfree packages 8 12 nixpkgs.config.allowUnfree = true; 9 13 14 + # System packages used for bootstrapping 15 + environment.systemPackages = map lib.lowPrio [ 16 + pkgs.curl 17 + pkgs.git 18 + pkgs.nano 19 + ]; 10 20 environment.variables.EDITOR = "nano"; 21 + 22 + # SSH server used for bootstrapping 23 + services.openssh.enable = true; 24 + users.users.root.openssh.authorizedKeys.keys = [ 25 + # change this to your ssh key 26 + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICh921bOnrGEySjw/eRrUAj1UbV2sf1YIcm5X74r6gTh" 27 + ]; 11 28 12 29 nix.settings = { 13 30 # Reasonable defaults ··· 32 49 ]; 33 50 }; 34 51 52 + # Store manager 35 53 programs.nh = { 36 54 enable = true; 37 55 clean.enable = true; 38 56 clean.extraArgs = "--keep-since 7d --keep 5"; 39 57 }; 40 58 nix.settings.auto-optimise-store = true; 41 - environment.systemPackages = with pkgs; [ 42 - git 43 - nano 44 - curl 45 - ]; 46 59 }
+3 -1
machines/modules/bootstrap/builders/build_consumer.nix nix/modules/builders/client.nix
··· 1 1 { 2 2 config, 3 3 lib, 4 - pkgs, 5 4 ... 6 5 }: let 7 6 defaultBuildConfig = { ··· 59 58 build_hosts; 60 59 sshConfigString = lib.concatStringsSep "\n" sshHostsConfig; 61 60 in { 61 + imports = [ 62 + ./user.nix 63 + ]; 62 64 nix.buildMachines = build_hosts; 63 65 nix.settings.substituters = substituters; 64 66 programs.ssh.extraConfig = sshConfigString;
machines/modules/bootstrap/builders/build_user.nix nix/modules/builders/user.nix
-6
machines/modules/bootstrap/builders/builders.nix
··· 1 - { 2 - imports = [ 3 - ./build_consumer.nix 4 - ./build_user.nix 5 - ]; 6 - }
+2
machines/modules/bootstrap/tailscale.nix nix/modules/nixos/tailscale.nix
··· 82 82 allowedUDPPorts = [config.services.tailscale.port]; 83 83 }; 84 84 }; 85 + 86 + config.services.tailscale_user.auth_key_path = config.age.secrets."tailscale_key".path; 85 87 }
+5 -1
machines/modules/common/builders/build_server.nix nix/modules/builders/server.nix
··· 1 1 { 2 2 config, 3 - lib, 4 3 pkgs, 4 + inputs, 5 5 ... 6 6 }: { 7 + imports = [ 8 + ./user.nix 9 + inputs.agenix.nixosModules.default 10 + ]; 7 11 services.nix-serve = { 8 12 enable = true; 9 13 package = pkgs.nix-serve-ng;
-7
machines/modules/common/common.nix
··· 1 - { 2 - imports = [ 3 - ./builders/build_server.nix 4 - ./networking/networking.nix 5 - ./utils/utils.nix 6 - ]; 7 - }
-5
machines/modules/common/networking/networking.nix
··· 1 - {config, ...}: 2 - with config; { 3 - services.tailscale_user.auth_key_path = age.secrets."tailscale_key".path; 4 - services.cloudflare-warp.enable = true; 5 - }
machines/modules/common/utils/auto-upgrade.nix nix/modules/utils/auto-upgrade.nix
+2 -8
machines/modules/common/utils/docker.nix nix/modules/utils/docker.nix
··· 1 - { 2 - lib, 3 - config, 4 - ... 5 - }: let 6 - cfg = config.customBoot; 7 - in { 1 + {...}: { 8 2 virtualisation.docker = { 9 3 enable = true; 10 4 rootless = { 11 5 enable = false; 12 6 setSocketVariable = true; 13 7 }; 14 - storageDriver = lib.mkIf cfg.enable "zfs"; 8 + storageDriver = "zfs"; 15 9 autoPrune = { 16 10 enable = true; 17 11 flags = [];
machines/modules/common/utils/earlyoom.nix nix/modules/utils/earlyoom.nix
-8
machines/modules/common/utils/utils.nix
··· 1 - { 2 - imports = [ 3 - ./auto-upgrade.nix 4 - ./docker.nix 5 - ./earlyoom.nix 6 - ./zfs-services.nix 7 - ]; 8 - }
-14
machines/modules/common/utils/zfs-services.nix
··· 1 - { 2 - lib, 3 - config, 4 - ... 5 - }: let 6 - cfg = config.customBoot; 7 - in { 8 - config = lib.mkIf cfg.enable { 9 - services.zfs = { 10 - autoScrub.enable = true; 11 - autoSnapshot.enable = true; 12 - }; 13 - }; 14 - }
-5
machines/modules/desktop/apps/claude.nix
··· 1 - {pkgs, ...}: { 2 - environment.systemPackages = with pkgs; [ 3 - claude-code 4 - ]; 5 - }
-40
machines/modules/desktop/apps/jellyfin.nix
··· 1 - {pkgs, ...}: { 2 - nixpkgs.config.packageOverrides = pkgs: { 3 - vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;}; 4 - }; 5 - hardware.opengl = { 6 - enable = true; 7 - extraPackages = with pkgs; [ 8 - intel-media-driver 9 - intel-vaapi-driver # previously vaapiIntel 10 - vaapiVdpau 11 - libvdpau-va-gl 12 - intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in) 13 - # vpl-gpu-rt # QSV on 11th gen or newer 14 - intel-media-sdk # QSV up to 11th gen 15 - ]; 16 - }; 17 - 18 - fileSystems."/mnt/jellyfin-media" = { 19 - # NFS set to wildcard hostname, readonly, map all users to admin. 20 - device = "pinonnas.myth-chameleon.ts.net:/volume1/media-final"; 21 - fsType = "nfs"; 22 - options = [ 23 - "nfsvers=4.1" 24 - "ro" 25 - "x-systemd.automount" 26 - "noauto" 27 - ]; 28 - }; 29 - 30 - services.jellyfin = { 31 - enable = true; 32 - openFirewall = true; 33 - }; 34 - 35 - environment.systemPackages = with pkgs; [ 36 - jellyfin 37 - jellyfin-web 38 - jellyfin-ffmpeg 39 - ]; 40 - }
machines/modules/desktop/apps/jetbrains.nix nix/modules/desktop/jetbrains.nix
+1 -1
machines/modules/desktop/apps/ollama.nix nix/modules/desktop/ollama.nix
··· 1 - {pkgs, ...}: { 1 + {...}: { 2 2 users.users.ollama = { 3 3 isNormalUser = false; 4 4 description = "Ollama";
machines/modules/desktop/apps/steam.nix nix/modules/desktop/steam.nix
-5
machines/modules/desktop/desktop.nix nix/modules/nixos/desktop.nix
··· 1 1 { 2 - imports = [ 3 - ./networking/networking.nix 4 - ./sound/sound.nix 5 - ]; 6 - 7 2 # Enable the X11 windowing system. 8 3 services.xserver.enable = true; 9 4
-3
machines/modules/desktop/networking/networking.nix
··· 1 - { 2 - networking.networkmanager.enable = true; 3 - }
machines/modules/desktop/sound/sound.nix nix/modules/nixos/sound.nix
-3
machines/modules/hardware/raspberry-pi/pi3.nix
··· 1 - { 2 - imports = [./pi_common.nix]; 3 - }
-5
machines/modules/hardware/raspberry-pi/pi4.nix
··· 1 - { 2 - imports = [./pi_common.nix]; 3 - 4 - hardware.raspberry-pi."4".poe-plus-hat.enable = true; 5 - }
-6
machines/modules/hardware/raspberry-pi/pi_common.nix
··· 1 - {pkgs, ...}: { 2 - environment.systemPackages = with pkgs; [ 3 - libraspberrypi 4 - raspberrypi-eeprom 5 - ]; 6 - }
-36
machines/modules/install/bootloader/bootloader.nix
··· 1 - { 2 - lib, 3 - config, 4 - ... 5 - }: let 6 - cfg = config.customBoot; 7 - in { 8 - options = { 9 - customBoot.enable = lib.mkEnableOption "Enable Custom Bootloader"; 10 - }; 11 - 12 - config = lib.mkIf cfg.enable { 13 - boot = { 14 - supportedFilesystems = ["zfs"]; 15 - zfs.devNodes = "/dev/disk/by-partlabel"; 16 - loader = { 17 - efi = { 18 - canTouchEfiVariables = true; 19 - }; 20 - grub = { 21 - enable = true; 22 - # shell_on_fail = true; 23 - configurationLimit = 10; 24 - zfsSupport = true; 25 - efiSupport = true; 26 - mirroredBoots = [ 27 - { 28 - devices = ["nodev"]; 29 - path = "/boot"; 30 - } 31 - ]; 32 - }; 33 - }; 34 - }; 35 - }; 36 - }
-6
machines/modules/install/install.nix
··· 1 - { 2 - imports = [ 3 - ./bootloader/bootloader.nix 4 - ./locale/locale.nix 5 - ]; 6 - }
-19
machines/modules/install/locale/locale.nix
··· 1 - { 2 - # Set your time zone. 3 - time.timeZone = "America/Los_Angeles"; 4 - 5 - # Select internationalisation properties. 6 - i18n.defaultLocale = "en_US.UTF-8"; 7 - 8 - i18n.extraLocaleSettings = { 9 - LC_ADDRESS = "en_US.UTF-8"; 10 - LC_IDENTIFICATION = "en_US.UTF-8"; 11 - LC_MEASUREMENT = "en_US.UTF-8"; 12 - LC_MONETARY = "en_US.UTF-8"; 13 - LC_NAME = "en_US.UTF-8"; 14 - LC_NUMERIC = "en_US.UTF-8"; 15 - LC_PAPER = "en_US.UTF-8"; 16 - LC_TELEPHONE = "en_US.UTF-8"; 17 - LC_TIME = "en_US.UTF-8"; 18 - }; 19 - }
-1
machines/modules/server/server.nix
··· 1 - {}
-192
machines/modules/users/tghanken/home-manager.nix
··· 1 - { 2 - config, 3 - pkgs, 4 - ... 5 - }: { 6 - home.username = "tghanken"; 7 - home.homeDirectory = "/home/tghanken"; 8 - 9 - # link the configuration file in current directory to the specified location in home directory 10 - # home.file.".config/i3/wallpaper.jpg".source = ./wallpaper.jpg; 11 - 12 - # link all files in `./scripts` to `~/.config/i3/scripts` 13 - # home.file.".config/i3/scripts" = { 14 - # source = ./scripts; 15 - # recursive = true; # link recursively 16 - # executable = true; # make all files executable 17 - # }; 18 - 19 - # encode the file content in nix configuration file directly 20 - # home.file.".xxx".text = '' 21 - # xxx 22 - # ''; 23 - 24 - # set cursor size and dpi for 4k monitor 25 - xresources.properties = { 26 - "Xcursor.size" = 16; 27 - "Xft.dpi" = 172; 28 - }; 29 - 30 - # Packages that should be installed to the user profile. 31 - home.packages = with pkgs; [ 32 - nnn # terminal file manager 33 - 34 - # archives 35 - zip 36 - xz 37 - unzip 38 - p7zip 39 - 40 - # utils 41 - ripgrep # recursively searches directories for a regex pattern 42 - jq # A lightweight and flexible command-line JSON processor 43 - yq-go # yaml processor https://github.com/mikefarah/yq 44 - eza # A modern replacement for ‘ls’ 45 - fzf # A command-line fuzzy finder 46 - gparted 47 - 48 - # networking tools 49 - mtr # A network diagnostic tool 50 - iperf3 51 - dnsutils # `dig` + `nslookup` 52 - ldns # replacement of `dig`, it provide the command `drill` 53 - aria2 # A lightweight multi-protocol & multi-source command-line download utility 54 - socat # replacement of openbsd-netcat 55 - nmap # A utility for network discovery and security auditing 56 - 57 - # misc 58 - which 59 - tree 60 - gnused 61 - gnutar 62 - gawk 63 - zstd 64 - gnupg 65 - 66 - # Javascript 67 - nodejs 68 - pnpm 69 - bun 70 - playwright 71 - playwright-driver.browsers 72 - turbo 73 - 74 - # nix related 75 - nix-tree 76 - nix-output-monitor 77 - 78 - # productivity 79 - firefox 80 - google-chrome 81 - vscode 82 - vscode-extensions.jnoortheen.nix-ide 83 - vscode-extensions.mhutchie.git-graph 84 - graphite-cli 85 - gh 86 - 87 - btop # replacement of htop/nmon 88 - iotop # io monitoring 89 - iftop # network monitoring 90 - 91 - # system call monitoring 92 - strace # system call monitoring 93 - ltrace # library call monitoring 94 - lsof # list open files 95 - 96 - # system tools 97 - sysstat 98 - lm_sensors # for `sensors` command 99 - ethtool 100 - pciutils # lspci 101 - usbutils # lsusb 102 - lshw 103 - ]; 104 - 105 - programs.git = { 106 - enable = true; 107 - lfs.enable = true; 108 - userName = "Taylor Hanken"; 109 - userEmail = "tghanken@gmail.com"; 110 - }; 111 - 112 - programs.jujutsu = { 113 - enable = true; 114 - settings = { 115 - user = { 116 - email = "tghanken@gmail.com"; 117 - name = "Taylor Hanken"; 118 - }; 119 - aliases = { 120 - l = ["log" "-r" "(trunk()..@):: | (trunk()..@)-- | trunk()"]; 121 - lwb = ["log" "-r" "ancestors(roots(trunk()..tracked_remote_bookmarks()),2) | ancestors(tracked_remote_bookmarks(),2) | trunk()"]; 122 - lub = ["log" "-r" "ancestors(roots(trunk()..untracked_remote_bookmarks()),2) | ancestors(untracked_remote_bookmarks(),2) | trunk()"]; 123 - }; 124 - ui = { 125 - paginate = "never"; 126 - }; 127 - }; 128 - }; 129 - 130 - programs.direnv = { 131 - enable = true; 132 - enableBashIntegration = true; 133 - nix-direnv.enable = true; 134 - }; 135 - 136 - # starship - an customizable prompt for any shell 137 - programs.starship = { 138 - enable = true; 139 - # custom settings 140 - settings = { 141 - add_newline = false; 142 - aws.disabled = true; 143 - gcloud.disabled = true; 144 - line_break.disabled = true; 145 - }; 146 - }; 147 - 148 - # alacritty - a cross-platform, GPU-accelerated terminal emulator 149 - programs.alacritty = { 150 - enable = true; 151 - # custom settings 152 - settings = { 153 - env.TERM = "xterm-256color"; 154 - font = { 155 - size = 12; 156 - draw_bold_text_with_bright_colors = true; 157 - }; 158 - scrolling.multiplier = 5; 159 - selection.save_to_clipboard = true; 160 - }; 161 - }; 162 - 163 - programs.bash = { 164 - enable = true; 165 - enableCompletion = true; 166 - # TODO add your custom bashrc here 167 - bashrcExtra = '' 168 - export PATH="$PATH:$HOME/bin:$HOME/.local/bin:$HOME/go/bin:$HOME/.bun/bin" 169 - export PLAYWRIGHT_BROWSERS_PATH="${pkgs.playwright-driver.browsers}"; 170 - ''; 171 - 172 - # set some aliases, feel free to add more or remove some 173 - shellAliases = { 174 - gitprune = "git fetch -p ; git branch -r | awk '{print $1}' | egrep -v -f /dev/fd/0 <(git branch -vv | grep origin) | awk '{print $1}' | xargs git branch -D"; 175 - gitsync = "git checkout main; git pull; gitprune;"; 176 - windsurf = "nix run github:tghanken/nixos-config#windsurf"; 177 - }; 178 - }; 179 - 180 - # This value determines the home Manager release that your 181 - # configuration is compatible with. This helps avoid breakage 182 - # when a new home Manager release introduces backwards 183 - # incompatible changes. 184 - # 185 - # You can update home Manager without changing this value. See 186 - # the home Manager release notes for a list of state version 187 - # changes in each release. 188 - home.stateVersion = "24.05"; 189 - 190 - # Let home Manager install and manage itself. 191 - programs.home-manager.enable = true; 192 - }
+2 -1
machines/modules/users/tghanken/tghanken.nix nix/modules/users/tghanken.nix
··· 1 - { 1 + {...}: { 2 + # Setup users 2 3 users.users.tghanken = { 3 4 isNormalUser = true; 4 5 description = "Taylor Hanken";
-7
machines/modules/users/users.nix
··· 1 - { 2 - imports = [ 3 - ./tghanken/tghanken.nix 4 - ]; 5 - users.mutableUsers = false; 6 - users.users.root.hashedPassword = "$6$aVX13r8lw5yvxWJZ$TrXrqKub2dJArKGyZ75l5AQC.yIh8ysgigZniYT.ZkvQRvjgb45oFNUnFIUd5xTfE0JXzFzPHwMWdJcdth9Tj1"; 7 - }
+6
nix/checks/treefmt-check.nix
··· 1 + { 2 + flake, 3 + system, 4 + ... 5 + }: 6 + flake.lib.${system}.treefmt.config.build.check flake
+8
nix/devshell.nix
··· 1 + {perSystem, ...}: 2 + perSystem.devshell.mkShell { 3 + imports = [(perSystem.devshell.importTOML ./devshells/base.toml)]; 4 + devshell.packages = [ 5 + perSystem.nixos-anywhere.default 6 + perSystem.nix-fast-build.default 7 + ]; 8 + }
+1
nix/devshells/base.toml
··· 1 + imports = ["./components/base.toml"]
+2
nix/devshells/components/base.toml
··· 1 + [[commands]] 2 + package = "just"
+6
nix/formatter.nix
··· 1 + { 2 + flake, 3 + system, 4 + ... 5 + }: 6 + flake.lib.${system}.treefmt.config.build.wrapper
+40
nix/hosts/hercules/configuration.nix
··· 1 + { 2 + inputs, 3 + flake, 4 + ... 5 + }: { 6 + imports = [ 7 + # Standard nixos-anywhere modules 8 + inputs.disko.nixosModules.disko 9 + inputs.nixos-facter-modules.nixosModules.facter 10 + { 11 + config.facter.reportPath = 12 + if builtins.pathExists ./facter.json 13 + then ./facter.json 14 + else throw "Have you forgotten to run nixos-anywhere with `--generate-hardware-config nixos-facter ./facter.json`?"; 15 + } 16 + 17 + # Nixos hardware additions 18 + inputs.nixos-hardware.nixosModules.framework-desktop-amd-ai-max-300-series 19 + 20 + # Add user modules 21 + flake.modules.users.tghanken 22 + 23 + # Additional NixOs modules from this flake 24 + flake.nixosModules.bootloader 25 + flake.nixosModules.bootstrap 26 + flake.nixosModules.desktop 27 + flake.nixosModules.kernel 28 + flake.nixosModules.networking 29 + flake.nixosModules.sound 30 + 31 + flake.modules.desktop.steam 32 + ]; 33 + 34 + # Required for nixos-anywhere 35 + disko.devices = import ./disk-config.nix; 36 + networking.hostName = "hercules"; 37 + networking.hostId = "c1c4e9e4"; # Generate using `head -c 8 /etc/machine-id` 38 + 39 + system.stateVersion = "25.11"; # initial nixos state 40 + }
+108
nix/hosts/hercules/disk-config.nix
··· 1 + { 2 + disk = { 3 + primary = { 4 + type = "disk"; 5 + device = "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801190"; 6 + content = { 7 + type = "gpt"; 8 + partitions = { 9 + ESP = { 10 + size = "1G"; 11 + type = "EF00"; 12 + content = { 13 + type = "filesystem"; 14 + format = "vfat"; 15 + mountpoint = "/boot"; 16 + }; 17 + priority = 1; 18 + }; 19 + zfs = { 20 + end = "-140G"; 21 + content = { 22 + type = "zfs"; 23 + pool = "zroot"; 24 + }; 25 + priority = 2; 26 + }; 27 + encryptedSwap = { 28 + size = "10G"; 29 + content = { 30 + type = "swap"; 31 + randomEncryption = true; 32 + priority = 100; # prefer to encrypt as long as we have space for it 33 + }; 34 + }; 35 + plainSwap = { 36 + size = "100%"; 37 + content = { 38 + type = "swap"; 39 + discardPolicy = "both"; 40 + resumeDevice = true; # resume from hibernation from this device 41 + }; 42 + }; 43 + }; 44 + }; 45 + }; 46 + secondary = { 47 + type = "disk"; 48 + device = "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801886"; 49 + content = { 50 + type = "gpt"; 51 + partitions = { 52 + zfs = { 53 + size = "100%"; 54 + content = { 55 + type = "zfs"; 56 + pool = "zroot"; 57 + }; 58 + priority = 1; 59 + }; 60 + }; 61 + }; 62 + }; 63 + }; 64 + zpool = { 65 + zroot = { 66 + type = "zpool"; 67 + mode = { 68 + topology = { 69 + type = "topology"; 70 + cache = []; 71 + vdev = [ 72 + { 73 + members = ["primary" "secondary"]; 74 + } 75 + ]; 76 + }; 77 + }; 78 + rootFsOptions = { 79 + xattr = "sa"; 80 + compression = "lz4"; 81 + atime = "off"; 82 + recordsize = "64K"; 83 + "com.sun:auto-snapshot" = "true"; 84 + }; 85 + mountpoint = "/"; 86 + datasets = { 87 + nix = { 88 + type = "zfs_fs"; 89 + mountpoint = "/nix"; 90 + options."com.sun:auto-snapshot" = "false"; 91 + }; 92 + var = { 93 + type = "zfs_fs"; 94 + mountpoint = "/var"; 95 + }; 96 + home = { 97 + type = "zfs_fs"; 98 + mountpoint = "/home"; 99 + }; 100 + reserved = { 101 + type = "zfs_fs"; 102 + options.refreservation = "10G"; 103 + options.mountpoint = "none"; 104 + }; 105 + }; 106 + }; 107 + }; 108 + }
+5655
nix/hosts/hercules/facter.json
··· 1 + { 2 + "version": 1, 3 + "system": "x86_64-linux", 4 + "virtualisation": "none", 5 + "hardware": { 6 + "bios": { 7 + "apm_info": { 8 + "supported": false, 9 + "enabled": false, 10 + "version": 0, 11 + "sub_version": 0, 12 + "bios_flags": 0 13 + }, 14 + "vbe_info": { 15 + "version": 0, 16 + "video_memory": 0 17 + }, 18 + "pnp": false, 19 + "pnp_id": 0, 20 + "lba_support": false, 21 + "low_memory_size": 0, 22 + "smbios_version": 771 23 + }, 24 + "bluetooth": [ 25 + { 26 + "index": 81, 27 + "attached_to": 85, 28 + "class_list": [ 29 + "usb", 30 + "bluetooth" 31 + ], 32 + "bus_type": { 33 + "hex": "0086", 34 + "name": "USB", 35 + "value": 134 36 + }, 37 + "slot": { 38 + "bus": 0, 39 + "number": 0 40 + }, 41 + "base_class": { 42 + "hex": "0115", 43 + "name": "Bluetooth Device", 44 + "value": 277 45 + }, 46 + "vendor": { 47 + "hex": "0e8d", 48 + "name": "MediaTek Inc.", 49 + "value": 3725 50 + }, 51 + "device": { 52 + "hex": "0717", 53 + "name": "Wireless_Device", 54 + "value": 1815 55 + }, 56 + "revision": { 57 + "hex": "0000", 58 + "name": "1.00", 59 + "value": 0 60 + }, 61 + "serial": "000000000", 62 + "model": "MediaTek Wireless_Device", 63 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-3/3-3:1.0", 64 + "sysfs_bus_id": "3-3:1.0", 65 + "resources": [ 66 + { 67 + "type": "baud", 68 + "speed": 480000000, 69 + "bits": 0, 70 + "stop_bits": 0, 71 + "parity": 0, 72 + "handshake": 0 73 + } 74 + ], 75 + "detail": { 76 + "device_class": { 77 + "hex": "00ef", 78 + "name": "miscellaneous", 79 + "value": 239 80 + }, 81 + "device_subclass": { 82 + "hex": "0002", 83 + "name": "comm", 84 + "value": 2 85 + }, 86 + "device_protocol": 1, 87 + "interface_class": { 88 + "hex": "00e0", 89 + "name": "wireless", 90 + "value": 224 91 + }, 92 + "interface_subclass": { 93 + "hex": "0001", 94 + "name": "audio", 95 + "value": 1 96 + }, 97 + "interface_protocol": 1, 98 + "interface_number": 0, 99 + "interface_alternate_setting": 0, 100 + "interface_association": { 101 + "function_class": { 102 + "hex": "00e0", 103 + "name": "wireless", 104 + "value": 224 105 + }, 106 + "function_subclass": { 107 + "hex": "0001", 108 + "name": "audio", 109 + "value": 1 110 + }, 111 + "function_protocol": 1, 112 + "interface_count": 3, 113 + "first_interface": 0 114 + } 115 + }, 116 + "hotplug": "usb", 117 + "driver": "btusb", 118 + "driver_module": "btusb", 119 + "drivers": [ 120 + "btusb" 121 + ], 122 + "driver_modules": [ 123 + "btusb" 124 + ], 125 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in00" 126 + }, 127 + { 128 + "index": 87, 129 + "attached_to": 85, 130 + "class_list": [ 131 + "usb", 132 + "bluetooth" 133 + ], 134 + "bus_type": { 135 + "hex": "0086", 136 + "name": "USB", 137 + "value": 134 138 + }, 139 + "slot": { 140 + "bus": 0, 141 + "number": 0 142 + }, 143 + "base_class": { 144 + "hex": "0115", 145 + "name": "Bluetooth Device", 146 + "value": 277 147 + }, 148 + "vendor": { 149 + "hex": "0e8d", 150 + "name": "MediaTek Inc.", 151 + "value": 3725 152 + }, 153 + "device": { 154 + "hex": "0717", 155 + "name": "Wireless_Device", 156 + "value": 1815 157 + }, 158 + "revision": { 159 + "hex": "0000", 160 + "name": "1.00", 161 + "value": 0 162 + }, 163 + "serial": "000000000", 164 + "model": "MediaTek Wireless_Device", 165 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-3/3-3:1.1", 166 + "sysfs_bus_id": "3-3:1.1", 167 + "resources": [ 168 + { 169 + "type": "baud", 170 + "speed": 480000000, 171 + "bits": 0, 172 + "stop_bits": 0, 173 + "parity": 0, 174 + "handshake": 0 175 + } 176 + ], 177 + "detail": { 178 + "device_class": { 179 + "hex": "00ef", 180 + "name": "miscellaneous", 181 + "value": 239 182 + }, 183 + "device_subclass": { 184 + "hex": "0002", 185 + "name": "comm", 186 + "value": 2 187 + }, 188 + "device_protocol": 1, 189 + "interface_class": { 190 + "hex": "00e0", 191 + "name": "wireless", 192 + "value": 224 193 + }, 194 + "interface_subclass": { 195 + "hex": "0001", 196 + "name": "audio", 197 + "value": 1 198 + }, 199 + "interface_protocol": 1, 200 + "interface_number": 1, 201 + "interface_alternate_setting": 0, 202 + "interface_association": { 203 + "function_class": { 204 + "hex": "00e0", 205 + "name": "wireless", 206 + "value": 224 207 + }, 208 + "function_subclass": { 209 + "hex": "0001", 210 + "name": "audio", 211 + "value": 1 212 + }, 213 + "function_protocol": 1, 214 + "interface_count": 3, 215 + "first_interface": 0 216 + } 217 + }, 218 + "hotplug": "usb", 219 + "driver": "btusb", 220 + "driver_module": "btusb", 221 + "drivers": [ 222 + "btusb" 223 + ], 224 + "driver_modules": [ 225 + "btusb" 226 + ], 227 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in01" 228 + }, 229 + { 230 + "index": 94, 231 + "attached_to": 85, 232 + "class_list": [ 233 + "usb", 234 + "bluetooth" 235 + ], 236 + "bus_type": { 237 + "hex": "0086", 238 + "name": "USB", 239 + "value": 134 240 + }, 241 + "slot": { 242 + "bus": 0, 243 + "number": 0 244 + }, 245 + "base_class": { 246 + "hex": "0115", 247 + "name": "Bluetooth Device", 248 + "value": 277 249 + }, 250 + "vendor": { 251 + "hex": "0e8d", 252 + "name": "MediaTek Inc.", 253 + "value": 3725 254 + }, 255 + "device": { 256 + "hex": "0717", 257 + "name": "Wireless_Device", 258 + "value": 1815 259 + }, 260 + "revision": { 261 + "hex": "0000", 262 + "name": "1.00", 263 + "value": 0 264 + }, 265 + "serial": "000000000", 266 + "model": "MediaTek Wireless_Device", 267 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-3/3-3:1.2", 268 + "sysfs_bus_id": "3-3:1.2", 269 + "resources": [ 270 + { 271 + "type": "baud", 272 + "speed": 480000000, 273 + "bits": 0, 274 + "stop_bits": 0, 275 + "parity": 0, 276 + "handshake": 0 277 + } 278 + ], 279 + "detail": { 280 + "device_class": { 281 + "hex": "00ef", 282 + "name": "miscellaneous", 283 + "value": 239 284 + }, 285 + "device_subclass": { 286 + "hex": "0002", 287 + "name": "comm", 288 + "value": 2 289 + }, 290 + "device_protocol": 1, 291 + "interface_class": { 292 + "hex": "00e0", 293 + "name": "wireless", 294 + "value": 224 295 + }, 296 + "interface_subclass": { 297 + "hex": "0001", 298 + "name": "audio", 299 + "value": 1 300 + }, 301 + "interface_protocol": 1, 302 + "interface_number": 2, 303 + "interface_alternate_setting": 0, 304 + "interface_association": { 305 + "function_class": { 306 + "hex": "00e0", 307 + "name": "wireless", 308 + "value": 224 309 + }, 310 + "function_subclass": { 311 + "hex": "0001", 312 + "name": "audio", 313 + "value": 1 314 + }, 315 + "function_protocol": 1, 316 + "interface_count": 3, 317 + "first_interface": 0 318 + } 319 + }, 320 + "hotplug": "usb", 321 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in02" 322 + } 323 + ], 324 + "bridge": [ 325 + { 326 + "index": 36, 327 + "attached_to": 0, 328 + "class_list": [ 329 + "pci", 330 + "bridge" 331 + ], 332 + "bus_type": { 333 + "hex": "0004", 334 + "name": "PCI", 335 + "value": 4 336 + }, 337 + "slot": { 338 + "bus": 0, 339 + "number": 3 340 + }, 341 + "base_class": { 342 + "hex": "0006", 343 + "name": "Bridge", 344 + "value": 6 345 + }, 346 + "sub_class": { 347 + "hex": "0004", 348 + "name": "PCI bridge", 349 + "value": 4 350 + }, 351 + "pci_interface": { 352 + "hex": "0000", 353 + "name": "Normal decode", 354 + "value": 0 355 + }, 356 + "vendor": { 357 + "hex": "1022", 358 + "name": "AMD", 359 + "value": 4130 360 + }, 361 + "sub_vendor": { 362 + "hex": "1022", 363 + "name": "AMD", 364 + "value": 4130 365 + }, 366 + "device": { 367 + "hex": "150b", 368 + "value": 5387 369 + }, 370 + "sub_device": { 371 + "hex": "1453", 372 + "value": 5203 373 + }, 374 + "model": "AMD PCI bridge", 375 + "sysfs_id": "/devices/pci0000:00/0000:00:03.1", 376 + "sysfs_bus_id": "0000:00:03.1", 377 + "sysfs_iommu_group_id": 9, 378 + "detail": { 379 + "function": 1, 380 + "command": 1031, 381 + "header_type": 1, 382 + "secondary_bus": 194, 383 + "prog_if": 0 384 + }, 385 + "driver": "pcieport", 386 + "driver_module": "pcieportdrv", 387 + "drivers": [ 388 + "pcieport" 389 + ], 390 + "driver_modules": [ 391 + "pcieportdrv" 392 + ], 393 + "module_alias": "pci:v00001022d0000150Bsv00001022sd00001453bc06sc04i00" 394 + }, 395 + { 396 + "index": 38, 397 + "attached_to": 0, 398 + "class_list": [ 399 + "pci", 400 + "bridge" 401 + ], 402 + "bus_type": { 403 + "hex": "0004", 404 + "name": "PCI", 405 + "value": 4 406 + }, 407 + "slot": { 408 + "bus": 0, 409 + "number": 8 410 + }, 411 + "base_class": { 412 + "hex": "0006", 413 + "name": "Bridge", 414 + "value": 6 415 + }, 416 + "sub_class": { 417 + "hex": "0000", 418 + "name": "Host bridge", 419 + "value": 0 420 + }, 421 + "vendor": { 422 + "hex": "1022", 423 + "name": "AMD", 424 + "value": 4130 425 + }, 426 + "device": { 427 + "hex": "1509", 428 + "value": 5385 429 + }, 430 + "model": "AMD Host bridge", 431 + "sysfs_id": "/devices/pci0000:00/0000:00:08.0", 432 + "sysfs_bus_id": "0000:00:08.0", 433 + "sysfs_iommu_group_id": 10, 434 + "detail": { 435 + "function": 0, 436 + "command": 0, 437 + "header_type": 0, 438 + "secondary_bus": 0, 439 + "prog_if": 0 440 + }, 441 + "module_alias": "pci:v00001022d00001509sv00000000sd00000000bc06sc00i00" 442 + }, 443 + { 444 + "index": 40, 445 + "attached_to": 0, 446 + "class_list": [ 447 + "pci", 448 + "bridge" 449 + ], 450 + "bus_type": { 451 + "hex": "0004", 452 + "name": "PCI", 453 + "value": 4 454 + }, 455 + "slot": { 456 + "bus": 0, 457 + "number": 24 458 + }, 459 + "base_class": { 460 + "hex": "0006", 461 + "name": "Bridge", 462 + "value": 6 463 + }, 464 + "sub_class": { 465 + "hex": "0000", 466 + "name": "Host bridge", 467 + "value": 0 468 + }, 469 + "vendor": { 470 + "hex": "1022", 471 + "name": "AMD", 472 + "value": 4130 473 + }, 474 + "device": { 475 + "hex": "12bb", 476 + "value": 4795 477 + }, 478 + "model": "AMD Host bridge", 479 + "sysfs_id": "/devices/pci0000:00/0000:00:18.3", 480 + "sysfs_bus_id": "0000:00:18.3", 481 + "sysfs_iommu_group_id": 15, 482 + "detail": { 483 + "function": 3, 484 + "command": 0, 485 + "header_type": 0, 486 + "secondary_bus": 0, 487 + "prog_if": 0 488 + }, 489 + "driver": "k10temp", 490 + "driver_module": "k10temp", 491 + "drivers": [ 492 + "k10temp" 493 + ], 494 + "driver_modules": [ 495 + "k10temp" 496 + ], 497 + "module_alias": "pci:v00001022d000012BBsv00000000sd00000000bc06sc00i00" 498 + }, 499 + { 500 + "index": 41, 501 + "attached_to": 0, 502 + "class_list": [ 503 + "pci", 504 + "bridge" 505 + ], 506 + "bus_type": { 507 + "hex": "0004", 508 + "name": "PCI", 509 + "value": 4 510 + }, 511 + "slot": { 512 + "bus": 0, 513 + "number": 1 514 + }, 515 + "base_class": { 516 + "hex": "0006", 517 + "name": "Bridge", 518 + "value": 6 519 + }, 520 + "sub_class": { 521 + "hex": "0004", 522 + "name": "PCI bridge", 523 + "value": 4 524 + }, 525 + "pci_interface": { 526 + "hex": "0000", 527 + "name": "Normal decode", 528 + "value": 0 529 + }, 530 + "vendor": { 531 + "hex": "1022", 532 + "name": "AMD", 533 + "value": 4130 534 + }, 535 + "sub_vendor": { 536 + "hex": "1022", 537 + "name": "AMD", 538 + "value": 4130 539 + }, 540 + "device": { 541 + "hex": "150a", 542 + "value": 5386 543 + }, 544 + "sub_device": { 545 + "hex": "150a", 546 + "value": 5386 547 + }, 548 + "revision": { 549 + "hex": "0002", 550 + "value": 2 551 + }, 552 + "model": "AMD PCI bridge", 553 + "sysfs_id": "/devices/pci0000:00/0000:00:01.2", 554 + "sysfs_bus_id": "0000:00:01.2", 555 + "sysfs_iommu_group_id": 3, 556 + "detail": { 557 + "function": 2, 558 + "command": 1031, 559 + "header_type": 1, 560 + "secondary_bus": 96, 561 + "prog_if": 0 562 + }, 563 + "driver": "pcieport", 564 + "driver_module": "pcieportdrv", 565 + "drivers": [ 566 + "pcieport" 567 + ], 568 + "driver_modules": [ 569 + "pcieportdrv" 570 + ], 571 + "module_alias": "pci:v00001022d0000150Asv00001022sd0000150Abc06sc04i00" 572 + }, 573 + { 574 + "index": 42, 575 + "attached_to": 0, 576 + "class_list": [ 577 + "pci", 578 + "bridge" 579 + ], 580 + "bus_type": { 581 + "hex": "0004", 582 + "name": "PCI", 583 + "value": 4 584 + }, 585 + "slot": { 586 + "bus": 0, 587 + "number": 2 588 + }, 589 + "base_class": { 590 + "hex": "0006", 591 + "name": "Bridge", 592 + "value": 6 593 + }, 594 + "sub_class": { 595 + "hex": "0004", 596 + "name": "PCI bridge", 597 + "value": 4 598 + }, 599 + "pci_interface": { 600 + "hex": "0000", 601 + "name": "Normal decode", 602 + "value": 0 603 + }, 604 + "vendor": { 605 + "hex": "1022", 606 + "name": "AMD", 607 + "value": 4130 608 + }, 609 + "sub_vendor": { 610 + "hex": "1022", 611 + "name": "AMD", 612 + "value": 4130 613 + }, 614 + "device": { 615 + "hex": "150b", 616 + "value": 5387 617 + }, 618 + "sub_device": { 619 + "hex": "1453", 620 + "value": 5203 621 + }, 622 + "revision": { 623 + "hex": "0002", 624 + "value": 2 625 + }, 626 + "model": "AMD PCI bridge", 627 + "sysfs_id": "/devices/pci0000:00/0000:00:02.5", 628 + "sysfs_bus_id": "0000:00:02.5", 629 + "sysfs_iommu_group_id": 7, 630 + "detail": { 631 + "function": 5, 632 + "command": 1031, 633 + "header_type": 1, 634 + "secondary_bus": 193, 635 + "prog_if": 0 636 + }, 637 + "driver": "pcieport", 638 + "driver_module": "pcieportdrv", 639 + "drivers": [ 640 + "pcieport" 641 + ], 642 + "driver_modules": [ 643 + "pcieportdrv" 644 + ], 645 + "module_alias": "pci:v00001022d0000150Bsv00001022sd00001453bc06sc04i00" 646 + }, 647 + { 648 + "index": 43, 649 + "attached_to": 0, 650 + "class_list": [ 651 + "pci", 652 + "bridge" 653 + ], 654 + "bus_type": { 655 + "hex": "0004", 656 + "name": "PCI", 657 + "value": 4 658 + }, 659 + "slot": { 660 + "bus": 0, 661 + "number": 24 662 + }, 663 + "base_class": { 664 + "hex": "0006", 665 + "name": "Bridge", 666 + "value": 6 667 + }, 668 + "sub_class": { 669 + "hex": "0000", 670 + "name": "Host bridge", 671 + "value": 0 672 + }, 673 + "vendor": { 674 + "hex": "1022", 675 + "name": "AMD", 676 + "value": 4130 677 + }, 678 + "device": { 679 + "hex": "12b9", 680 + "value": 4793 681 + }, 682 + "model": "AMD Host bridge", 683 + "sysfs_id": "/devices/pci0000:00/0000:00:18.1", 684 + "sysfs_bus_id": "0000:00:18.1", 685 + "sysfs_iommu_group_id": 15, 686 + "detail": { 687 + "function": 1, 688 + "command": 0, 689 + "header_type": 0, 690 + "secondary_bus": 0, 691 + "prog_if": 0 692 + }, 693 + "module_alias": "pci:v00001022d000012B9sv00000000sd00000000bc06sc00i00" 694 + }, 695 + { 696 + "index": 44, 697 + "attached_to": 0, 698 + "class_list": [ 699 + "pci", 700 + "bridge" 701 + ], 702 + "bus_type": { 703 + "hex": "0004", 704 + "name": "PCI", 705 + "value": 4 706 + }, 707 + "slot": { 708 + "bus": 0, 709 + "number": 1 710 + }, 711 + "base_class": { 712 + "hex": "0006", 713 + "name": "Bridge", 714 + "value": 6 715 + }, 716 + "sub_class": { 717 + "hex": "0000", 718 + "name": "Host bridge", 719 + "value": 0 720 + }, 721 + "vendor": { 722 + "hex": "1022", 723 + "name": "AMD", 724 + "value": 4130 725 + }, 726 + "device": { 727 + "hex": "1509", 728 + "value": 5385 729 + }, 730 + "model": "AMD Host bridge", 731 + "sysfs_id": "/devices/pci0000:00/0000:00:01.0", 732 + "sysfs_bus_id": "0000:00:01.0", 733 + "sysfs_iommu_group_id": 1, 734 + "detail": { 735 + "function": 0, 736 + "command": 0, 737 + "header_type": 0, 738 + "secondary_bus": 0, 739 + "prog_if": 0 740 + }, 741 + "module_alias": "pci:v00001022d00001509sv00000000sd00000000bc06sc00i00" 742 + }, 743 + { 744 + "index": 46, 745 + "attached_to": 0, 746 + "class_list": [ 747 + "pci", 748 + "bridge" 749 + ], 750 + "bus_type": { 751 + "hex": "0004", 752 + "name": "PCI", 753 + "value": 4 754 + }, 755 + "slot": { 756 + "bus": 0, 757 + "number": 2 758 + }, 759 + "base_class": { 760 + "hex": "0006", 761 + "name": "Bridge", 762 + "value": 6 763 + }, 764 + "sub_class": { 765 + "hex": "0004", 766 + "name": "PCI bridge", 767 + "value": 4 768 + }, 769 + "pci_interface": { 770 + "hex": "0000", 771 + "name": "Normal decode", 772 + "value": 0 773 + }, 774 + "vendor": { 775 + "hex": "1022", 776 + "name": "AMD", 777 + "value": 4130 778 + }, 779 + "sub_vendor": { 780 + "hex": "1022", 781 + "name": "AMD", 782 + "value": 4130 783 + }, 784 + "device": { 785 + "hex": "150b", 786 + "value": 5387 787 + }, 788 + "sub_device": { 789 + "hex": "1453", 790 + "value": 5203 791 + }, 792 + "revision": { 793 + "hex": "0002", 794 + "value": 2 795 + }, 796 + "model": "AMD PCI bridge", 797 + "sysfs_id": "/devices/pci0000:00/0000:00:02.3", 798 + "sysfs_bus_id": "0000:00:02.3", 799 + "sysfs_iommu_group_id": 6, 800 + "detail": { 801 + "function": 3, 802 + "command": 1031, 803 + "header_type": 1, 804 + "secondary_bus": 192, 805 + "prog_if": 0 806 + }, 807 + "driver": "pcieport", 808 + "driver_module": "pcieportdrv", 809 + "drivers": [ 810 + "pcieport" 811 + ], 812 + "driver_modules": [ 813 + "pcieportdrv" 814 + ], 815 + "module_alias": "pci:v00001022d0000150Bsv00001022sd00001453bc06sc04i00" 816 + }, 817 + { 818 + "index": 47, 819 + "attached_to": 0, 820 + "class_list": [ 821 + "pci", 822 + "bridge" 823 + ], 824 + "bus_type": { 825 + "hex": "0004", 826 + "name": "PCI", 827 + "value": 4 828 + }, 829 + "slot": { 830 + "bus": 0, 831 + "number": 20 832 + }, 833 + "base_class": { 834 + "hex": "0006", 835 + "name": "Bridge", 836 + "value": 6 837 + }, 838 + "sub_class": { 839 + "hex": "0001", 840 + "name": "ISA bridge", 841 + "value": 1 842 + }, 843 + "vendor": { 844 + "hex": "1022", 845 + "name": "AMD", 846 + "value": 4130 847 + }, 848 + "sub_vendor": { 849 + "hex": "f111", 850 + "value": 61713 851 + }, 852 + "device": { 853 + "hex": "790e", 854 + "value": 30990 855 + }, 856 + "sub_device": { 857 + "hex": "000a", 858 + "value": 10 859 + }, 860 + "revision": { 861 + "hex": "0051", 862 + "value": 81 863 + }, 864 + "model": "AMD ISA bridge", 865 + "sysfs_id": "/devices/pci0000:00/0000:00:14.3", 866 + "sysfs_bus_id": "0000:00:14.3", 867 + "sysfs_iommu_group_id": 14, 868 + "detail": { 869 + "function": 3, 870 + "command": 15, 871 + "header_type": 0, 872 + "secondary_bus": 0, 873 + "prog_if": 0 874 + }, 875 + "module_alias": "pci:v00001022d0000790Esv0000F111sd0000000Abc06sc01i00" 876 + }, 877 + { 878 + "index": 50, 879 + "attached_to": 0, 880 + "class_list": [ 881 + "pci", 882 + "bridge" 883 + ], 884 + "bus_type": { 885 + "hex": "0004", 886 + "name": "PCI", 887 + "value": 4 888 + }, 889 + "slot": { 890 + "bus": 0, 891 + "number": 2 892 + }, 893 + "base_class": { 894 + "hex": "0006", 895 + "name": "Bridge", 896 + "value": 6 897 + }, 898 + "sub_class": { 899 + "hex": "0004", 900 + "name": "PCI bridge", 901 + "value": 4 902 + }, 903 + "pci_interface": { 904 + "hex": "0000", 905 + "name": "Normal decode", 906 + "value": 0 907 + }, 908 + "vendor": { 909 + "hex": "1022", 910 + "name": "AMD", 911 + "value": 4130 912 + }, 913 + "sub_vendor": { 914 + "hex": "1022", 915 + "name": "AMD", 916 + "value": 4130 917 + }, 918 + "device": { 919 + "hex": "150b", 920 + "value": 5387 921 + }, 922 + "sub_device": { 923 + "hex": "1453", 924 + "value": 5203 925 + }, 926 + "revision": { 927 + "hex": "0002", 928 + "value": 2 929 + }, 930 + "model": "AMD PCI bridge", 931 + "sysfs_id": "/devices/pci0000:00/0000:00:02.1", 932 + "sysfs_bus_id": "0000:00:02.1", 933 + "sysfs_iommu_group_id": 5, 934 + "detail": { 935 + "function": 1, 936 + "command": 1031, 937 + "header_type": 1, 938 + "secondary_bus": 191, 939 + "prog_if": 0 940 + }, 941 + "driver": "pcieport", 942 + "driver_module": "pcieportdrv", 943 + "drivers": [ 944 + "pcieport" 945 + ], 946 + "driver_modules": [ 947 + "pcieportdrv" 948 + ], 949 + "module_alias": "pci:v00001022d0000150Bsv00001022sd00001453bc06sc04i00" 950 + }, 951 + { 952 + "index": 53, 953 + "attached_to": 0, 954 + "class_list": [ 955 + "pci", 956 + "bridge" 957 + ], 958 + "bus_type": { 959 + "hex": "0004", 960 + "name": "PCI", 961 + "value": 4 962 + }, 963 + "slot": { 964 + "bus": 0, 965 + "number": 8 966 + }, 967 + "base_class": { 968 + "hex": "0006", 969 + "name": "Bridge", 970 + "value": 6 971 + }, 972 + "sub_class": { 973 + "hex": "0004", 974 + "name": "PCI bridge", 975 + "value": 4 976 + }, 977 + "pci_interface": { 978 + "hex": "0000", 979 + "name": "Normal decode", 980 + "value": 0 981 + }, 982 + "vendor": { 983 + "hex": "1022", 984 + "name": "AMD", 985 + "value": 4130 986 + }, 987 + "sub_vendor": { 988 + "hex": "000a", 989 + "value": 10 990 + }, 991 + "device": { 992 + "hex": "150c", 993 + "value": 5388 994 + }, 995 + "sub_device": { 996 + "hex": "f111", 997 + "value": 61713 998 + }, 999 + "model": "AMD PCI bridge", 1000 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3", 1001 + "sysfs_bus_id": "0000:00:08.3", 1002 + "sysfs_iommu_group_id": 13, 1003 + "detail": { 1004 + "function": 3, 1005 + "command": 1031, 1006 + "header_type": 1, 1007 + "secondary_bus": 197, 1008 + "prog_if": 0 1009 + }, 1010 + "driver": "pcieport", 1011 + "driver_module": "pcieportdrv", 1012 + "drivers": [ 1013 + "pcieport" 1014 + ], 1015 + "driver_modules": [ 1016 + "pcieportdrv" 1017 + ], 1018 + "module_alias": "pci:v00001022d0000150Csv0000000Asd0000F111bc06sc04i00" 1019 + }, 1020 + { 1021 + "index": 55, 1022 + "attached_to": 0, 1023 + "class_list": [ 1024 + "pci", 1025 + "bridge" 1026 + ], 1027 + "bus_type": { 1028 + "hex": "0004", 1029 + "name": "PCI", 1030 + "value": 4 1031 + }, 1032 + "slot": { 1033 + "bus": 0, 1034 + "number": 24 1035 + }, 1036 + "base_class": { 1037 + "hex": "0006", 1038 + "name": "Bridge", 1039 + "value": 6 1040 + }, 1041 + "sub_class": { 1042 + "hex": "0000", 1043 + "name": "Host bridge", 1044 + "value": 0 1045 + }, 1046 + "vendor": { 1047 + "hex": "1022", 1048 + "name": "AMD", 1049 + "value": 4130 1050 + }, 1051 + "device": { 1052 + "hex": "12be", 1053 + "value": 4798 1054 + }, 1055 + "model": "AMD Host bridge", 1056 + "sysfs_id": "/devices/pci0000:00/0000:00:18.6", 1057 + "sysfs_bus_id": "0000:00:18.6", 1058 + "sysfs_iommu_group_id": 15, 1059 + "detail": { 1060 + "function": 6, 1061 + "command": 0, 1062 + "header_type": 0, 1063 + "secondary_bus": 0, 1064 + "prog_if": 0 1065 + }, 1066 + "module_alias": "pci:v00001022d000012BEsv00000000sd00000000bc06sc00i00" 1067 + }, 1068 + { 1069 + "index": 57, 1070 + "attached_to": 0, 1071 + "class_list": [ 1072 + "pci", 1073 + "bridge" 1074 + ], 1075 + "bus_type": { 1076 + "hex": "0004", 1077 + "name": "PCI", 1078 + "value": 4 1079 + }, 1080 + "slot": { 1081 + "bus": 0, 1082 + "number": 0 1083 + }, 1084 + "base_class": { 1085 + "hex": "0006", 1086 + "name": "Bridge", 1087 + "value": 6 1088 + }, 1089 + "sub_class": { 1090 + "hex": "0000", 1091 + "name": "Host bridge", 1092 + "value": 0 1093 + }, 1094 + "vendor": { 1095 + "hex": "1022", 1096 + "name": "AMD", 1097 + "value": 4130 1098 + }, 1099 + "sub_vendor": { 1100 + "hex": "f111", 1101 + "value": 61713 1102 + }, 1103 + "device": { 1104 + "hex": "1507", 1105 + "value": 5383 1106 + }, 1107 + "sub_device": { 1108 + "hex": "000a", 1109 + "value": 10 1110 + }, 1111 + "revision": { 1112 + "hex": "0002", 1113 + "value": 2 1114 + }, 1115 + "model": "AMD Host bridge", 1116 + "sysfs_id": "/devices/pci0000:00/0000:00:00.0", 1117 + "sysfs_bus_id": "0000:00:00.0", 1118 + "detail": { 1119 + "function": 0, 1120 + "command": 0, 1121 + "header_type": 0, 1122 + "secondary_bus": 0, 1123 + "prog_if": 0 1124 + }, 1125 + "module_alias": "pci:v00001022d00001507sv0000F111sd0000000Abc06sc00i00" 1126 + }, 1127 + { 1128 + "index": 59, 1129 + "attached_to": 0, 1130 + "class_list": [ 1131 + "pci", 1132 + "bridge" 1133 + ], 1134 + "bus_type": { 1135 + "hex": "0004", 1136 + "name": "PCI", 1137 + "value": 4 1138 + }, 1139 + "slot": { 1140 + "bus": 0, 1141 + "number": 8 1142 + }, 1143 + "base_class": { 1144 + "hex": "0006", 1145 + "name": "Bridge", 1146 + "value": 6 1147 + }, 1148 + "sub_class": { 1149 + "hex": "0004", 1150 + "name": "PCI bridge", 1151 + "value": 4 1152 + }, 1153 + "pci_interface": { 1154 + "hex": "0000", 1155 + "name": "Normal decode", 1156 + "value": 0 1157 + }, 1158 + "vendor": { 1159 + "hex": "1022", 1160 + "name": "AMD", 1161 + "value": 4130 1162 + }, 1163 + "sub_vendor": { 1164 + "hex": "000a", 1165 + "value": 10 1166 + }, 1167 + "device": { 1168 + "hex": "150c", 1169 + "value": 5388 1170 + }, 1171 + "sub_device": { 1172 + "hex": "f111", 1173 + "value": 61713 1174 + }, 1175 + "model": "AMD PCI bridge", 1176 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1", 1177 + "sysfs_bus_id": "0000:00:08.1", 1178 + "sysfs_iommu_group_id": 11, 1179 + "detail": { 1180 + "function": 1, 1181 + "command": 1031, 1182 + "header_type": 1, 1183 + "secondary_bus": 195, 1184 + "prog_if": 0 1185 + }, 1186 + "driver": "pcieport", 1187 + "driver_module": "pcieportdrv", 1188 + "drivers": [ 1189 + "pcieport" 1190 + ], 1191 + "driver_modules": [ 1192 + "pcieportdrv" 1193 + ], 1194 + "module_alias": "pci:v00001022d0000150Csv0000000Asd0000F111bc06sc04i00" 1195 + }, 1196 + { 1197 + "index": 61, 1198 + "attached_to": 0, 1199 + "class_list": [ 1200 + "pci", 1201 + "bridge" 1202 + ], 1203 + "bus_type": { 1204 + "hex": "0004", 1205 + "name": "PCI", 1206 + "value": 4 1207 + }, 1208 + "slot": { 1209 + "bus": 0, 1210 + "number": 24 1211 + }, 1212 + "base_class": { 1213 + "hex": "0006", 1214 + "name": "Bridge", 1215 + "value": 6 1216 + }, 1217 + "sub_class": { 1218 + "hex": "0000", 1219 + "name": "Host bridge", 1220 + "value": 0 1221 + }, 1222 + "vendor": { 1223 + "hex": "1022", 1224 + "name": "AMD", 1225 + "value": 4130 1226 + }, 1227 + "device": { 1228 + "hex": "12bc", 1229 + "value": 4796 1230 + }, 1231 + "model": "AMD Host bridge", 1232 + "sysfs_id": "/devices/pci0000:00/0000:00:18.4", 1233 + "sysfs_bus_id": "0000:00:18.4", 1234 + "sysfs_iommu_group_id": 15, 1235 + "detail": { 1236 + "function": 4, 1237 + "command": 0, 1238 + "header_type": 0, 1239 + "secondary_bus": 0, 1240 + "prog_if": 0 1241 + }, 1242 + "module_alias": "pci:v00001022d000012BCsv00000000sd00000000bc06sc00i00" 1243 + }, 1244 + { 1245 + "index": 62, 1246 + "attached_to": 0, 1247 + "class_list": [ 1248 + "pci", 1249 + "bridge" 1250 + ], 1251 + "bus_type": { 1252 + "hex": "0004", 1253 + "name": "PCI", 1254 + "value": 4 1255 + }, 1256 + "slot": { 1257 + "bus": 0, 1258 + "number": 3 1259 + }, 1260 + "base_class": { 1261 + "hex": "0006", 1262 + "name": "Bridge", 1263 + "value": 6 1264 + }, 1265 + "sub_class": { 1266 + "hex": "0000", 1267 + "name": "Host bridge", 1268 + "value": 0 1269 + }, 1270 + "vendor": { 1271 + "hex": "1022", 1272 + "name": "AMD", 1273 + "value": 4130 1274 + }, 1275 + "device": { 1276 + "hex": "1509", 1277 + "value": 5385 1278 + }, 1279 + "model": "AMD Host bridge", 1280 + "sysfs_id": "/devices/pci0000:00/0000:00:03.0", 1281 + "sysfs_bus_id": "0000:00:03.0", 1282 + "sysfs_iommu_group_id": 8, 1283 + "detail": { 1284 + "function": 0, 1285 + "command": 0, 1286 + "header_type": 0, 1287 + "secondary_bus": 0, 1288 + "prog_if": 0 1289 + }, 1290 + "module_alias": "pci:v00001022d00001509sv00000000sd00000000bc06sc00i00" 1291 + }, 1292 + { 1293 + "index": 63, 1294 + "attached_to": 0, 1295 + "class_list": [ 1296 + "pci", 1297 + "bridge" 1298 + ], 1299 + "bus_type": { 1300 + "hex": "0004", 1301 + "name": "PCI", 1302 + "value": 4 1303 + }, 1304 + "slot": { 1305 + "bus": 0, 1306 + "number": 24 1307 + }, 1308 + "base_class": { 1309 + "hex": "0006", 1310 + "name": "Bridge", 1311 + "value": 6 1312 + }, 1313 + "sub_class": { 1314 + "hex": "0000", 1315 + "name": "Host bridge", 1316 + "value": 0 1317 + }, 1318 + "vendor": { 1319 + "hex": "1022", 1320 + "name": "AMD", 1321 + "value": 4130 1322 + }, 1323 + "device": { 1324 + "hex": "12ba", 1325 + "value": 4794 1326 + }, 1327 + "model": "AMD Host bridge", 1328 + "sysfs_id": "/devices/pci0000:00/0000:00:18.2", 1329 + "sysfs_bus_id": "0000:00:18.2", 1330 + "sysfs_iommu_group_id": 15, 1331 + "detail": { 1332 + "function": 2, 1333 + "command": 0, 1334 + "header_type": 0, 1335 + "secondary_bus": 0, 1336 + "prog_if": 0 1337 + }, 1338 + "module_alias": "pci:v00001022d000012BAsv00000000sd00000000bc06sc00i00" 1339 + }, 1340 + { 1341 + "index": 64, 1342 + "attached_to": 0, 1343 + "class_list": [ 1344 + "pci", 1345 + "bridge" 1346 + ], 1347 + "bus_type": { 1348 + "hex": "0004", 1349 + "name": "PCI", 1350 + "value": 4 1351 + }, 1352 + "slot": { 1353 + "bus": 0, 1354 + "number": 1 1355 + }, 1356 + "base_class": { 1357 + "hex": "0006", 1358 + "name": "Bridge", 1359 + "value": 6 1360 + }, 1361 + "sub_class": { 1362 + "hex": "0004", 1363 + "name": "PCI bridge", 1364 + "value": 4 1365 + }, 1366 + "pci_interface": { 1367 + "hex": "0000", 1368 + "name": "Normal decode", 1369 + "value": 0 1370 + }, 1371 + "vendor": { 1372 + "hex": "1022", 1373 + "name": "AMD", 1374 + "value": 4130 1375 + }, 1376 + "sub_vendor": { 1377 + "hex": "1022", 1378 + "name": "AMD", 1379 + "value": 4130 1380 + }, 1381 + "device": { 1382 + "hex": "150a", 1383 + "value": 5386 1384 + }, 1385 + "sub_device": { 1386 + "hex": "150a", 1387 + "value": 5386 1388 + }, 1389 + "revision": { 1390 + "hex": "0002", 1391 + "value": 2 1392 + }, 1393 + "model": "AMD PCI bridge", 1394 + "sysfs_id": "/devices/pci0000:00/0000:00:01.1", 1395 + "sysfs_bus_id": "0000:00:01.1", 1396 + "sysfs_iommu_group_id": 2, 1397 + "detail": { 1398 + "function": 1, 1399 + "command": 1031, 1400 + "header_type": 1, 1401 + "secondary_bus": 1, 1402 + "prog_if": 0 1403 + }, 1404 + "driver": "pcieport", 1405 + "driver_module": "pcieportdrv", 1406 + "drivers": [ 1407 + "pcieport" 1408 + ], 1409 + "driver_modules": [ 1410 + "pcieportdrv" 1411 + ], 1412 + "module_alias": "pci:v00001022d0000150Asv00001022sd0000150Abc06sc04i00" 1413 + }, 1414 + { 1415 + "index": 66, 1416 + "attached_to": 0, 1417 + "class_list": [ 1418 + "pci", 1419 + "bridge" 1420 + ], 1421 + "bus_type": { 1422 + "hex": "0004", 1423 + "name": "PCI", 1424 + "value": 4 1425 + }, 1426 + "slot": { 1427 + "bus": 0, 1428 + "number": 24 1429 + }, 1430 + "base_class": { 1431 + "hex": "0006", 1432 + "name": "Bridge", 1433 + "value": 6 1434 + }, 1435 + "sub_class": { 1436 + "hex": "0000", 1437 + "name": "Host bridge", 1438 + "value": 0 1439 + }, 1440 + "vendor": { 1441 + "hex": "1022", 1442 + "name": "AMD", 1443 + "value": 4130 1444 + }, 1445 + "device": { 1446 + "hex": "12b8", 1447 + "value": 4792 1448 + }, 1449 + "model": "AMD Host bridge", 1450 + "sysfs_id": "/devices/pci0000:00/0000:00:18.0", 1451 + "sysfs_bus_id": "0000:00:18.0", 1452 + "sysfs_iommu_group_id": 15, 1453 + "detail": { 1454 + "function": 0, 1455 + "command": 0, 1456 + "header_type": 0, 1457 + "secondary_bus": 0, 1458 + "prog_if": 0 1459 + }, 1460 + "module_alias": "pci:v00001022d000012B8sv00000000sd00000000bc06sc00i00" 1461 + }, 1462 + { 1463 + "index": 70, 1464 + "attached_to": 0, 1465 + "class_list": [ 1466 + "pci", 1467 + "bridge" 1468 + ], 1469 + "bus_type": { 1470 + "hex": "0004", 1471 + "name": "PCI", 1472 + "value": 4 1473 + }, 1474 + "slot": { 1475 + "bus": 0, 1476 + "number": 2 1477 + }, 1478 + "base_class": { 1479 + "hex": "0006", 1480 + "name": "Bridge", 1481 + "value": 6 1482 + }, 1483 + "sub_class": { 1484 + "hex": "0000", 1485 + "name": "Host bridge", 1486 + "value": 0 1487 + }, 1488 + "vendor": { 1489 + "hex": "1022", 1490 + "name": "AMD", 1491 + "value": 4130 1492 + }, 1493 + "device": { 1494 + "hex": "1509", 1495 + "value": 5385 1496 + }, 1497 + "model": "AMD Host bridge", 1498 + "sysfs_id": "/devices/pci0000:00/0000:00:02.0", 1499 + "sysfs_bus_id": "0000:00:02.0", 1500 + "sysfs_iommu_group_id": 4, 1501 + "detail": { 1502 + "function": 0, 1503 + "command": 0, 1504 + "header_type": 0, 1505 + "secondary_bus": 0, 1506 + "prog_if": 0 1507 + }, 1508 + "module_alias": "pci:v00001022d00001509sv00000000sd00000000bc06sc00i00" 1509 + }, 1510 + { 1511 + "index": 71, 1512 + "attached_to": 0, 1513 + "class_list": [ 1514 + "pci", 1515 + "bridge" 1516 + ], 1517 + "bus_type": { 1518 + "hex": "0004", 1519 + "name": "PCI", 1520 + "value": 4 1521 + }, 1522 + "slot": { 1523 + "bus": 0, 1524 + "number": 24 1525 + }, 1526 + "base_class": { 1527 + "hex": "0006", 1528 + "name": "Bridge", 1529 + "value": 6 1530 + }, 1531 + "sub_class": { 1532 + "hex": "0000", 1533 + "name": "Host bridge", 1534 + "value": 0 1535 + }, 1536 + "vendor": { 1537 + "hex": "1022", 1538 + "name": "AMD", 1539 + "value": 4130 1540 + }, 1541 + "device": { 1542 + "hex": "12bf", 1543 + "value": 4799 1544 + }, 1545 + "model": "AMD Host bridge", 1546 + "sysfs_id": "/devices/pci0000:00/0000:00:18.7", 1547 + "sysfs_bus_id": "0000:00:18.7", 1548 + "sysfs_iommu_group_id": 15, 1549 + "detail": { 1550 + "function": 7, 1551 + "command": 0, 1552 + "header_type": 0, 1553 + "secondary_bus": 0, 1554 + "prog_if": 0 1555 + }, 1556 + "module_alias": "pci:v00001022d000012BFsv00000000sd00000000bc06sc00i00" 1557 + }, 1558 + { 1559 + "index": 74, 1560 + "attached_to": 0, 1561 + "class_list": [ 1562 + "pci", 1563 + "bridge" 1564 + ], 1565 + "bus_type": { 1566 + "hex": "0004", 1567 + "name": "PCI", 1568 + "value": 4 1569 + }, 1570 + "slot": { 1571 + "bus": 0, 1572 + "number": 8 1573 + }, 1574 + "base_class": { 1575 + "hex": "0006", 1576 + "name": "Bridge", 1577 + "value": 6 1578 + }, 1579 + "sub_class": { 1580 + "hex": "0004", 1581 + "name": "PCI bridge", 1582 + "value": 4 1583 + }, 1584 + "pci_interface": { 1585 + "hex": "0000", 1586 + "name": "Normal decode", 1587 + "value": 0 1588 + }, 1589 + "vendor": { 1590 + "hex": "1022", 1591 + "name": "AMD", 1592 + "value": 4130 1593 + }, 1594 + "sub_vendor": { 1595 + "hex": "000a", 1596 + "value": 10 1597 + }, 1598 + "device": { 1599 + "hex": "150c", 1600 + "value": 5388 1601 + }, 1602 + "sub_device": { 1603 + "hex": "f111", 1604 + "value": 61713 1605 + }, 1606 + "model": "AMD PCI bridge", 1607 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2", 1608 + "sysfs_bus_id": "0000:00:08.2", 1609 + "sysfs_iommu_group_id": 12, 1610 + "detail": { 1611 + "function": 2, 1612 + "command": 1031, 1613 + "header_type": 1, 1614 + "secondary_bus": 196, 1615 + "prog_if": 0 1616 + }, 1617 + "driver": "pcieport", 1618 + "driver_module": "pcieportdrv", 1619 + "drivers": [ 1620 + "pcieport" 1621 + ], 1622 + "driver_modules": [ 1623 + "pcieportdrv" 1624 + ], 1625 + "module_alias": "pci:v00001022d0000150Csv0000000Asd0000F111bc06sc04i00" 1626 + }, 1627 + { 1628 + "index": 76, 1629 + "attached_to": 0, 1630 + "class_list": [ 1631 + "pci", 1632 + "bridge" 1633 + ], 1634 + "bus_type": { 1635 + "hex": "0004", 1636 + "name": "PCI", 1637 + "value": 4 1638 + }, 1639 + "slot": { 1640 + "bus": 0, 1641 + "number": 24 1642 + }, 1643 + "base_class": { 1644 + "hex": "0006", 1645 + "name": "Bridge", 1646 + "value": 6 1647 + }, 1648 + "sub_class": { 1649 + "hex": "0000", 1650 + "name": "Host bridge", 1651 + "value": 0 1652 + }, 1653 + "vendor": { 1654 + "hex": "1022", 1655 + "name": "AMD", 1656 + "value": 4130 1657 + }, 1658 + "device": { 1659 + "hex": "12bd", 1660 + "value": 4797 1661 + }, 1662 + "model": "AMD Host bridge", 1663 + "sysfs_id": "/devices/pci0000:00/0000:00:18.5", 1664 + "sysfs_bus_id": "0000:00:18.5", 1665 + "sysfs_iommu_group_id": 15, 1666 + "detail": { 1667 + "function": 5, 1668 + "command": 0, 1669 + "header_type": 0, 1670 + "secondary_bus": 0, 1671 + "prog_if": 0 1672 + }, 1673 + "module_alias": "pci:v00001022d000012BDsv00000000sd00000000bc06sc00i00" 1674 + } 1675 + ], 1676 + "cpu": [ 1677 + { 1678 + "architecture": "x86_64", 1679 + "vendor_name": "AuthenticAMD", 1680 + "model_name": "AMD RYZEN AI MAX+ 395 w/ Radeon 8060S", 1681 + "family": 26, 1682 + "model": 112, 1683 + "stepping": 0, 1684 + "features": [ 1685 + "fpu", 1686 + "vme", 1687 + "de", 1688 + "pse", 1689 + "tsc", 1690 + "msr", 1691 + "pae", 1692 + "mce", 1693 + "cx8", 1694 + "apic", 1695 + "sep", 1696 + "mtrr", 1697 + "pge", 1698 + "mca", 1699 + "cmov", 1700 + "pat", 1701 + "pse36", 1702 + "clflush", 1703 + "mmx", 1704 + "fxsr", 1705 + "sse", 1706 + "sse2", 1707 + "ht", 1708 + "syscall", 1709 + "nx", 1710 + "mmxext", 1711 + "fxsr_opt", 1712 + "pdpe1gb", 1713 + "rdtscp", 1714 + "lm", 1715 + "constant_tsc", 1716 + "rep_good", 1717 + "amd_lbr_v2", 1718 + "nopl", 1719 + "xtopology", 1720 + "nonstop_tsc", 1721 + "cpuid", 1722 + "extd_apicid", 1723 + "aperfmperf", 1724 + "rapl", 1725 + "pni", 1726 + "pclmulqdq", 1727 + "monitor", 1728 + "ssse3", 1729 + "fma", 1730 + "cx16", 1731 + "sse4_1", 1732 + "sse4_2", 1733 + "movbe", 1734 + "popcnt", 1735 + "aes", 1736 + "xsave", 1737 + "avx", 1738 + "f16c", 1739 + "rdrand", 1740 + "lahf_lm", 1741 + "cmp_legacy", 1742 + "svm", 1743 + "extapic", 1744 + "cr8_legacy", 1745 + "abm", 1746 + "sse4a", 1747 + "misalignsse", 1748 + "3dnowprefetch", 1749 + "osvw", 1750 + "ibs", 1751 + "skinit", 1752 + "wdt", 1753 + "tce", 1754 + "topoext", 1755 + "perfctr_core", 1756 + "perfctr_nb", 1757 + "bpext", 1758 + "perfctr_llc", 1759 + "mwaitx", 1760 + "cpuid_fault", 1761 + "cpb", 1762 + "cat_l3", 1763 + "cdp_l3", 1764 + "hw_pstate", 1765 + "ssbd", 1766 + "mba", 1767 + "perfmon_v2", 1768 + "ibrs", 1769 + "ibpb", 1770 + "stibp", 1771 + "ibrs_enhanced", 1772 + "vmmcall", 1773 + "fsgsbase", 1774 + "tsc_adjust", 1775 + "bmi1", 1776 + "avx2", 1777 + "smep", 1778 + "bmi2", 1779 + "erms", 1780 + "invpcid", 1781 + "cqm", 1782 + "rdt_a", 1783 + "avx512f", 1784 + "avx512dq", 1785 + "adx", 1786 + "smap", 1787 + "avx512ifma", 1788 + "clflushopt", 1789 + "clwb", 1790 + "avx512cd", 1791 + "sha_ni", 1792 + "avx512bw", 1793 + "avx512vl", 1794 + "xsaveopt", 1795 + "xsavec", 1796 + "xgetbv1", 1797 + "xsaves", 1798 + "cqm_llc", 1799 + "cqm_occup_llc", 1800 + "cqm_mbm_total", 1801 + "cqm_mbm_local", 1802 + "user_shstk", 1803 + "avx_vnni", 1804 + "avx512_bf16", 1805 + "clzero", 1806 + "irperf", 1807 + "xsaveerptr", 1808 + "rdpru", 1809 + "wbnoinvd", 1810 + "cppc", 1811 + "arat", 1812 + "npt", 1813 + "lbrv", 1814 + "svm_lock", 1815 + "nrip_save", 1816 + "tsc_scale", 1817 + "vmcb_clean", 1818 + "flushbyasid", 1819 + "decodeassists", 1820 + "pausefilter", 1821 + "pfthreshold", 1822 + "avic", 1823 + "v_vmsave_vmload", 1824 + "vgi" 1825 + ], 1826 + "bugs": [ 1827 + "sysret_ss_attrs", 1828 + "spectre_v1", 1829 + "spectre_v2", 1830 + "spec_store_bypass", 1831 + "srso", 1832 + "spectre_v2_user", 1833 + "vmscape" 1834 + ], 1835 + "power_management": [ 1836 + "ts", 1837 + "ttp", 1838 + "tm", 1839 + "hwpstate", 1840 + "cpb", 1841 + "eff_freq_ro", 1842 + "[13]", 1843 + "[14]" 1844 + ], 1845 + "bogo": 5988, 1846 + "cache": 1024, 1847 + "units": 32, 1848 + "page_size": 4096, 1849 + "physical_id": 0, 1850 + "siblings": 32, 1851 + "cores": 16, 1852 + "fpu": false, 1853 + "fpu_exception": false, 1854 + "cpuid_level": 16, 1855 + "write_protect": false, 1856 + "tlb_size": 192, 1857 + "clflush_size": 64, 1858 + "cache_alignment": 64, 1859 + "address_sizes": { 1860 + "physical": "0x30", 1861 + "virtual": "0x30" 1862 + } 1863 + } 1864 + ], 1865 + "disk": [ 1866 + { 1867 + "index": 78, 1868 + "attached_to": 51, 1869 + "class_list": [ 1870 + "disk", 1871 + "block_device", 1872 + "nvme" 1873 + ], 1874 + "bus_type": { 1875 + "hex": "0096", 1876 + "name": "NVME", 1877 + "value": 150 1878 + }, 1879 + "slot": { 1880 + "bus": 0, 1881 + "number": 0 1882 + }, 1883 + "base_class": { 1884 + "hex": "0106", 1885 + "name": "Mass Storage Device", 1886 + "value": 262 1887 + }, 1888 + "sub_class": { 1889 + "hex": "0000", 1890 + "name": "Disk", 1891 + "value": 0 1892 + }, 1893 + "vendor": { 1894 + "hex": "15b7", 1895 + "value": 5559 1896 + }, 1897 + "sub_vendor": { 1898 + "hex": "15b7", 1899 + "value": 5559 1900 + }, 1901 + "device": { 1902 + "hex": "5045", 1903 + "name": "WD_BLACK SN7100 1TB", 1904 + "value": 20549 1905 + }, 1906 + "sub_device": { 1907 + "hex": "5045", 1908 + "value": 20549 1909 + }, 1910 + "serial": "25360M801190", 1911 + "model": "WD_BLACK SN7100 1TB", 1912 + "sysfs_id": "/class/block/nvme0n1", 1913 + "sysfs_bus_id": "nvme0", 1914 + "sysfs_device_link": "/devices/pci0000:00/0000:00:02.5/0000:c1:00.0/nvme/nvme0", 1915 + "unix_device_names": [ 1916 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801190", 1917 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801190_1", 1918 + "/dev/disk/by-id/nvme-eui.e8238fa6bf530001001b448b42fb6859", 1919 + "/dev/disk/by-path/pci-0000:c1:00.0-nvme-1", 1920 + "/dev/nvme0n1" 1921 + ], 1922 + "resources": [ 1923 + { 1924 + "type": "disk_geo", 1925 + "cylinders": 953869, 1926 + "heads": 64, 1927 + "sectors": 32, 1928 + "size": "0x0", 1929 + "geo_type": "logical" 1930 + }, 1931 + { 1932 + "type": "size", 1933 + "unit": "sectors", 1934 + "value_1": 1953525168, 1935 + "value_2": 512 1936 + } 1937 + ], 1938 + "driver": "nvme", 1939 + "driver_module": "nvme", 1940 + "drivers": [ 1941 + "nvme" 1942 + ], 1943 + "driver_modules": [ 1944 + "nvme" 1945 + ] 1946 + }, 1947 + { 1948 + "index": 79, 1949 + "attached_to": 45, 1950 + "class_list": [ 1951 + "disk", 1952 + "block_device", 1953 + "nvme" 1954 + ], 1955 + "bus_type": { 1956 + "hex": "0096", 1957 + "name": "NVME", 1958 + "value": 150 1959 + }, 1960 + "slot": { 1961 + "bus": 0, 1962 + "number": 1 1963 + }, 1964 + "base_class": { 1965 + "hex": "0106", 1966 + "name": "Mass Storage Device", 1967 + "value": 262 1968 + }, 1969 + "sub_class": { 1970 + "hex": "0000", 1971 + "name": "Disk", 1972 + "value": 0 1973 + }, 1974 + "vendor": { 1975 + "hex": "15b7", 1976 + "value": 5559 1977 + }, 1978 + "sub_vendor": { 1979 + "hex": "15b7", 1980 + "value": 5559 1981 + }, 1982 + "device": { 1983 + "hex": "5045", 1984 + "name": "WD_BLACK SN7100 1TB", 1985 + "value": 20549 1986 + }, 1987 + "sub_device": { 1988 + "hex": "5045", 1989 + "value": 20549 1990 + }, 1991 + "serial": "25360M801886", 1992 + "model": "WD_BLACK SN7100 1TB", 1993 + "sysfs_id": "/class/block/nvme1n1", 1994 + "sysfs_bus_id": "nvme1", 1995 + "sysfs_device_link": "/devices/pci0000:00/0000:00:03.1/0000:c2:00.0/nvme/nvme1", 1996 + "unix_device_names": [ 1997 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801886", 1998 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25360M801886_1", 1999 + "/dev/disk/by-id/nvme-eui.e8238fa6bf530001001b448b42fb9f7d", 2000 + "/dev/disk/by-path/pci-0000:c2:00.0-nvme-1", 2001 + "/dev/nvme1n1" 2002 + ], 2003 + "resources": [ 2004 + { 2005 + "type": "disk_geo", 2006 + "cylinders": 953869, 2007 + "heads": 64, 2008 + "sectors": 32, 2009 + "size": "0x0", 2010 + "geo_type": "logical" 2011 + }, 2012 + { 2013 + "type": "size", 2014 + "unit": "sectors", 2015 + "value_1": 1953525168, 2016 + "value_2": 512 2017 + } 2018 + ], 2019 + "driver": "nvme", 2020 + "driver_module": "nvme", 2021 + "drivers": [ 2022 + "nvme" 2023 + ], 2024 + "driver_modules": [ 2025 + "nvme" 2026 + ] 2027 + }, 2028 + { 2029 + "index": 80, 2030 + "attached_to": 65, 2031 + "class_list": [ 2032 + "disk", 2033 + "usb", 2034 + "scsi", 2035 + "block_device" 2036 + ], 2037 + "bus_type": { 2038 + "hex": "0084", 2039 + "name": "SCSI", 2040 + "value": 132 2041 + }, 2042 + "slot": { 2043 + "bus": 0, 2044 + "number": 0 2045 + }, 2046 + "base_class": { 2047 + "hex": "0106", 2048 + "name": "Mass Storage Device", 2049 + "value": 262 2050 + }, 2051 + "sub_class": { 2052 + "hex": "0000", 2053 + "name": "Disk", 2054 + "value": 0 2055 + }, 2056 + "vendor": { 2057 + "hex": "0781", 2058 + "name": "SanDisk", 2059 + "value": 1921 2060 + }, 2061 + "device": { 2062 + "hex": "5583", 2063 + "name": "Ultra Fit", 2064 + "value": 21891 2065 + }, 2066 + "revision": { 2067 + "hex": "0000", 2068 + "name": "1.00", 2069 + "value": 0 2070 + }, 2071 + "serial": "4C531001391024113501", 2072 + "model": "SanDisk Ultra Fit", 2073 + "sysfs_id": "/class/block/sda", 2074 + "sysfs_bus_id": "0:0:0:0", 2075 + "sysfs_device_link": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-2/3-2.1/3-2.1:1.0/host0/target0:0:0/0:0:0:0", 2076 + "unix_device_names": [ 2077 + "/dev/disk/by-id/usb-SanDisk_Ultra_Fit_4C531001391024113501-0:0", 2078 + "/dev/disk/by-path/pci-0000:c5:00.0-usb-0:2.1:1.0-scsi-0:0:0:0", 2079 + "/dev/disk/by-path/pci-0000:c5:00.0-usbv2-0:2.1:1.0-scsi-0:0:0:0", 2080 + "/dev/sda" 2081 + ], 2082 + "unix_device_name2": "/dev/sg0", 2083 + "resources": [ 2084 + { 2085 + "type": "baud", 2086 + "speed": 480000000, 2087 + "bits": 0, 2088 + "stop_bits": 0, 2089 + "parity": 0, 2090 + "handshake": 0 2091 + }, 2092 + { 2093 + "type": "disk_geo", 2094 + "cylinders": 15102, 2095 + "heads": 255, 2096 + "sectors": 63, 2097 + "size": "0x0", 2098 + "geo_type": "logical" 2099 + }, 2100 + { 2101 + "type": "size", 2102 + "unit": "sectors", 2103 + "value_1": 242614272, 2104 + "value_2": 512 2105 + } 2106 + ], 2107 + "driver": "usb-storage", 2108 + "driver_module": "usb_storage", 2109 + "drivers": [ 2110 + "sd", 2111 + "usb-storage" 2112 + ], 2113 + "driver_modules": [ 2114 + "sd_mod", 2115 + "usb_storage" 2116 + ], 2117 + "module_alias": "usb:v0781p5583d0100dc00dsc00dp00ic08isc06ip50in00" 2118 + } 2119 + ], 2120 + "graphics_card": [ 2121 + { 2122 + "index": 37, 2123 + "attached_to": 59, 2124 + "class_list": [ 2125 + "graphics_card", 2126 + "pci" 2127 + ], 2128 + "bus_type": { 2129 + "hex": "0004", 2130 + "name": "PCI", 2131 + "value": 4 2132 + }, 2133 + "slot": { 2134 + "bus": 195, 2135 + "number": 0 2136 + }, 2137 + "base_class": { 2138 + "hex": "0003", 2139 + "name": "Display controller", 2140 + "value": 3 2141 + }, 2142 + "sub_class": { 2143 + "hex": "0080", 2144 + "name": "Display controller", 2145 + "value": 128 2146 + }, 2147 + "vendor": { 2148 + "hex": "1002", 2149 + "name": "ATI Technologies Inc", 2150 + "value": 4098 2151 + }, 2152 + "sub_vendor": { 2153 + "hex": "f111", 2154 + "value": 61713 2155 + }, 2156 + "device": { 2157 + "hex": "1586", 2158 + "value": 5510 2159 + }, 2160 + "sub_device": { 2161 + "hex": "000a", 2162 + "value": 10 2163 + }, 2164 + "revision": { 2165 + "hex": "00c1", 2166 + "value": 193 2167 + }, 2168 + "model": "ATI Display controller", 2169 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.0", 2170 + "sysfs_bus_id": "0000:c3:00.0", 2171 + "sysfs_iommu_group_id": 20, 2172 + "resources": [ 2173 + { 2174 + "type": "io", 2175 + "base": 4096, 2176 + "range": 256, 2177 + "enabled": true, 2178 + "access": "read_write" 2179 + } 2180 + ], 2181 + "detail": { 2182 + "function": 0, 2183 + "command": 1031, 2184 + "header_type": 0, 2185 + "secondary_bus": 0, 2186 + "prog_if": 0 2187 + }, 2188 + "driver": "amdgpu", 2189 + "driver_module": "amdgpu", 2190 + "drivers": [ 2191 + "amdgpu" 2192 + ], 2193 + "driver_modules": [ 2194 + "amdgpu" 2195 + ], 2196 + "module_alias": "pci:v00001002d00001586sv0000F111sd0000000Abc03sc80i00" 2197 + } 2198 + ], 2199 + "hub": [ 2200 + { 2201 + "index": 82, 2202 + "attached_to": 88, 2203 + "class_list": [ 2204 + "usb", 2205 + "hub" 2206 + ], 2207 + "bus_type": { 2208 + "hex": "0086", 2209 + "name": "USB", 2210 + "value": 134 2211 + }, 2212 + "slot": { 2213 + "bus": 0, 2214 + "number": 0 2215 + }, 2216 + "base_class": { 2217 + "hex": "010a", 2218 + "name": "Hub", 2219 + "value": 266 2220 + }, 2221 + "vendor": { 2222 + "hex": "05e3", 2223 + "name": "GenesysLogic", 2224 + "value": 1507 2225 + }, 2226 + "device": { 2227 + "hex": "0625", 2228 + "name": "USB3.2 Hub", 2229 + "value": 1573 2230 + }, 2231 + "revision": { 2232 + "hex": "0000", 2233 + "name": "10.01", 2234 + "value": 0 2235 + }, 2236 + "model": "GenesysLogic USB3.2 Hub", 2237 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb4/4-2/4-2:1.0", 2238 + "sysfs_bus_id": "4-2:1.0", 2239 + "detail": { 2240 + "device_class": { 2241 + "hex": "0009", 2242 + "name": "hub", 2243 + "value": 9 2244 + }, 2245 + "device_subclass": { 2246 + "hex": "0000", 2247 + "name": "per_interface", 2248 + "value": 0 2249 + }, 2250 + "device_protocol": 3, 2251 + "interface_class": { 2252 + "hex": "0009", 2253 + "name": "hub", 2254 + "value": 9 2255 + }, 2256 + "interface_subclass": { 2257 + "hex": "0000", 2258 + "name": "per_interface", 2259 + "value": 0 2260 + }, 2261 + "interface_protocol": 0, 2262 + "interface_number": 0, 2263 + "interface_alternate_setting": 0 2264 + }, 2265 + "hotplug": "usb", 2266 + "driver": "hub", 2267 + "driver_module": "usbcore", 2268 + "drivers": [ 2269 + "hub" 2270 + ], 2271 + "driver_modules": [ 2272 + "usbcore" 2273 + ], 2274 + "module_alias": "usb:v05E3p0625d1001dc09dsc00dp03ic09isc00ip00in00" 2275 + }, 2276 + { 2277 + "index": 83, 2278 + "attached_to": 39, 2279 + "class_list": [ 2280 + "usb", 2281 + "hub" 2282 + ], 2283 + "bus_type": { 2284 + "hex": "0086", 2285 + "name": "USB", 2286 + "value": 134 2287 + }, 2288 + "slot": { 2289 + "bus": 0, 2290 + "number": 0 2291 + }, 2292 + "base_class": { 2293 + "hex": "010a", 2294 + "name": "Hub", 2295 + "value": 266 2296 + }, 2297 + "vendor": { 2298 + "hex": "1d6b", 2299 + "name": "Linux 6.17.10 xhci-hcd", 2300 + "value": 7531 2301 + }, 2302 + "device": { 2303 + "hex": "0003", 2304 + "name": "xHCI Host Controller", 2305 + "value": 3 2306 + }, 2307 + "revision": { 2308 + "hex": "0000", 2309 + "name": "6.17", 2310 + "value": 0 2311 + }, 2312 + "serial": "0000:c5:00.3", 2313 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2314 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.3/usb6/6-0:1.0", 2315 + "sysfs_bus_id": "6-0:1.0", 2316 + "detail": { 2317 + "device_class": { 2318 + "hex": "0009", 2319 + "name": "hub", 2320 + "value": 9 2321 + }, 2322 + "device_subclass": { 2323 + "hex": "0000", 2324 + "name": "per_interface", 2325 + "value": 0 2326 + }, 2327 + "device_protocol": 3, 2328 + "interface_class": { 2329 + "hex": "0009", 2330 + "name": "hub", 2331 + "value": 9 2332 + }, 2333 + "interface_subclass": { 2334 + "hex": "0000", 2335 + "name": "per_interface", 2336 + "value": 0 2337 + }, 2338 + "interface_protocol": 0, 2339 + "interface_number": 0, 2340 + "interface_alternate_setting": 0 2341 + }, 2342 + "hotplug": "usb", 2343 + "driver": "hub", 2344 + "driver_module": "usbcore", 2345 + "drivers": [ 2346 + "hub" 2347 + ], 2348 + "driver_modules": [ 2349 + "usbcore" 2350 + ], 2351 + "module_alias": "usb:v1D6Bp0003d0617dc09dsc00dp03ic09isc00ip00in00" 2352 + }, 2353 + { 2354 + "index": 84, 2355 + "attached_to": 96, 2356 + "class_list": [ 2357 + "usb", 2358 + "hub" 2359 + ], 2360 + "bus_type": { 2361 + "hex": "0086", 2362 + "name": "USB", 2363 + "value": 134 2364 + }, 2365 + "slot": { 2366 + "bus": 0, 2367 + "number": 0 2368 + }, 2369 + "base_class": { 2370 + "hex": "010a", 2371 + "name": "Hub", 2372 + "value": 266 2373 + }, 2374 + "vendor": { 2375 + "hex": "0bda", 2376 + "name": "Generic", 2377 + "value": 3034 2378 + }, 2379 + "device": { 2380 + "hex": "0424", 2381 + "name": "2-Port USB 3.0 Hub", 2382 + "value": 1060 2383 + }, 2384 + "revision": { 2385 + "hex": "0000", 2386 + "name": "1.88", 2387 + "value": 0 2388 + }, 2389 + "model": "Generic 2-Port USB 3.0 Hub", 2390 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.4/usb2/2-1/2-1:1.0", 2391 + "sysfs_bus_id": "2-1:1.0", 2392 + "detail": { 2393 + "device_class": { 2394 + "hex": "0009", 2395 + "name": "hub", 2396 + "value": 9 2397 + }, 2398 + "device_subclass": { 2399 + "hex": "0000", 2400 + "name": "per_interface", 2401 + "value": 0 2402 + }, 2403 + "device_protocol": 3, 2404 + "interface_class": { 2405 + "hex": "0009", 2406 + "name": "hub", 2407 + "value": 9 2408 + }, 2409 + "interface_subclass": { 2410 + "hex": "0000", 2411 + "name": "per_interface", 2412 + "value": 0 2413 + }, 2414 + "interface_protocol": 0, 2415 + "interface_number": 0, 2416 + "interface_alternate_setting": 0 2417 + }, 2418 + "hotplug": "usb", 2419 + "driver": "hub", 2420 + "driver_module": "usbcore", 2421 + "drivers": [ 2422 + "hub" 2423 + ], 2424 + "driver_modules": [ 2425 + "usbcore" 2426 + ], 2427 + "module_alias": "usb:v0BDAp0424d0188dc09dsc00dp03ic09isc00ip00in00" 2428 + }, 2429 + { 2430 + "index": 85, 2431 + "attached_to": 65, 2432 + "class_list": [ 2433 + "usb", 2434 + "hub" 2435 + ], 2436 + "bus_type": { 2437 + "hex": "0086", 2438 + "name": "USB", 2439 + "value": 134 2440 + }, 2441 + "slot": { 2442 + "bus": 0, 2443 + "number": 0 2444 + }, 2445 + "base_class": { 2446 + "hex": "010a", 2447 + "name": "Hub", 2448 + "value": 266 2449 + }, 2450 + "vendor": { 2451 + "hex": "1d6b", 2452 + "name": "Linux 6.17.10 xhci-hcd", 2453 + "value": 7531 2454 + }, 2455 + "device": { 2456 + "hex": "0002", 2457 + "name": "xHCI Host Controller", 2458 + "value": 2 2459 + }, 2460 + "revision": { 2461 + "hex": "0000", 2462 + "name": "6.17", 2463 + "value": 0 2464 + }, 2465 + "serial": "0000:c5:00.0", 2466 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2467 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-0:1.0", 2468 + "sysfs_bus_id": "3-0:1.0", 2469 + "resources": [ 2470 + { 2471 + "type": "baud", 2472 + "speed": 480000000, 2473 + "bits": 0, 2474 + "stop_bits": 0, 2475 + "parity": 0, 2476 + "handshake": 0 2477 + } 2478 + ], 2479 + "detail": { 2480 + "device_class": { 2481 + "hex": "0009", 2482 + "name": "hub", 2483 + "value": 9 2484 + }, 2485 + "device_subclass": { 2486 + "hex": "0000", 2487 + "name": "per_interface", 2488 + "value": 0 2489 + }, 2490 + "device_protocol": 1, 2491 + "interface_class": { 2492 + "hex": "0009", 2493 + "name": "hub", 2494 + "value": 9 2495 + }, 2496 + "interface_subclass": { 2497 + "hex": "0000", 2498 + "name": "per_interface", 2499 + "value": 0 2500 + }, 2501 + "interface_protocol": 0, 2502 + "interface_number": 0, 2503 + "interface_alternate_setting": 0 2504 + }, 2505 + "hotplug": "usb", 2506 + "driver": "hub", 2507 + "driver_module": "usbcore", 2508 + "drivers": [ 2509 + "hub" 2510 + ], 2511 + "driver_modules": [ 2512 + "usbcore" 2513 + ], 2514 + "module_alias": "usb:v1D6Bp0002d0617dc09dsc00dp01ic09isc00ip00in00" 2515 + }, 2516 + { 2517 + "index": 86, 2518 + "attached_to": 60, 2519 + "class_list": [ 2520 + "usb", 2521 + "hub" 2522 + ], 2523 + "bus_type": { 2524 + "hex": "0086", 2525 + "name": "USB", 2526 + "value": 134 2527 + }, 2528 + "slot": { 2529 + "bus": 0, 2530 + "number": 0 2531 + }, 2532 + "base_class": { 2533 + "hex": "010a", 2534 + "name": "Hub", 2535 + "value": 266 2536 + }, 2537 + "vendor": { 2538 + "hex": "1d6b", 2539 + "name": "Linux 6.17.10 xhci-hcd", 2540 + "value": 7531 2541 + }, 2542 + "device": { 2543 + "hex": "0002", 2544 + "name": "xHCI Host Controller", 2545 + "value": 2 2546 + }, 2547 + "revision": { 2548 + "hex": "0000", 2549 + "name": "6.17", 2550 + "value": 0 2551 + }, 2552 + "serial": "0000:c5:00.4", 2553 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2554 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.4/usb7/7-0:1.0", 2555 + "sysfs_bus_id": "7-0:1.0", 2556 + "resources": [ 2557 + { 2558 + "type": "baud", 2559 + "speed": 480000000, 2560 + "bits": 0, 2561 + "stop_bits": 0, 2562 + "parity": 0, 2563 + "handshake": 0 2564 + } 2565 + ], 2566 + "detail": { 2567 + "device_class": { 2568 + "hex": "0009", 2569 + "name": "hub", 2570 + "value": 9 2571 + }, 2572 + "device_subclass": { 2573 + "hex": "0000", 2574 + "name": "per_interface", 2575 + "value": 0 2576 + }, 2577 + "device_protocol": 1, 2578 + "interface_class": { 2579 + "hex": "0009", 2580 + "name": "hub", 2581 + "value": 9 2582 + }, 2583 + "interface_subclass": { 2584 + "hex": "0000", 2585 + "name": "per_interface", 2586 + "value": 0 2587 + }, 2588 + "interface_protocol": 0, 2589 + "interface_number": 0, 2590 + "interface_alternate_setting": 0 2591 + }, 2592 + "hotplug": "usb", 2593 + "driver": "hub", 2594 + "driver_module": "usbcore", 2595 + "drivers": [ 2596 + "hub" 2597 + ], 2598 + "driver_modules": [ 2599 + "usbcore" 2600 + ], 2601 + "module_alias": "usb:v1D6Bp0002d0617dc09dsc00dp01ic09isc00ip00in00" 2602 + }, 2603 + { 2604 + "index": 88, 2605 + "attached_to": 65, 2606 + "class_list": [ 2607 + "usb", 2608 + "hub" 2609 + ], 2610 + "bus_type": { 2611 + "hex": "0086", 2612 + "name": "USB", 2613 + "value": 134 2614 + }, 2615 + "slot": { 2616 + "bus": 0, 2617 + "number": 0 2618 + }, 2619 + "base_class": { 2620 + "hex": "010a", 2621 + "name": "Hub", 2622 + "value": 266 2623 + }, 2624 + "vendor": { 2625 + "hex": "1d6b", 2626 + "name": "Linux 6.17.10 xhci-hcd", 2627 + "value": 7531 2628 + }, 2629 + "device": { 2630 + "hex": "0003", 2631 + "name": "xHCI Host Controller", 2632 + "value": 3 2633 + }, 2634 + "revision": { 2635 + "hex": "0000", 2636 + "name": "6.17", 2637 + "value": 0 2638 + }, 2639 + "serial": "0000:c5:00.0", 2640 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2641 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb4/4-0:1.0", 2642 + "sysfs_bus_id": "4-0:1.0", 2643 + "detail": { 2644 + "device_class": { 2645 + "hex": "0009", 2646 + "name": "hub", 2647 + "value": 9 2648 + }, 2649 + "device_subclass": { 2650 + "hex": "0000", 2651 + "name": "per_interface", 2652 + "value": 0 2653 + }, 2654 + "device_protocol": 3, 2655 + "interface_class": { 2656 + "hex": "0009", 2657 + "name": "hub", 2658 + "value": 9 2659 + }, 2660 + "interface_subclass": { 2661 + "hex": "0000", 2662 + "name": "per_interface", 2663 + "value": 0 2664 + }, 2665 + "interface_protocol": 0, 2666 + "interface_number": 0, 2667 + "interface_alternate_setting": 0 2668 + }, 2669 + "hotplug": "usb", 2670 + "driver": "hub", 2671 + "driver_module": "usbcore", 2672 + "drivers": [ 2673 + "hub" 2674 + ], 2675 + "driver_modules": [ 2676 + "usbcore" 2677 + ], 2678 + "module_alias": "usb:v1D6Bp0003d0617dc09dsc00dp03ic09isc00ip00in00" 2679 + }, 2680 + { 2681 + "index": 89, 2682 + "attached_to": 60, 2683 + "class_list": [ 2684 + "usb", 2685 + "hub" 2686 + ], 2687 + "bus_type": { 2688 + "hex": "0086", 2689 + "name": "USB", 2690 + "value": 134 2691 + }, 2692 + "slot": { 2693 + "bus": 0, 2694 + "number": 0 2695 + }, 2696 + "base_class": { 2697 + "hex": "010a", 2698 + "name": "Hub", 2699 + "value": 266 2700 + }, 2701 + "vendor": { 2702 + "hex": "1d6b", 2703 + "name": "Linux 6.17.10 xhci-hcd", 2704 + "value": 7531 2705 + }, 2706 + "device": { 2707 + "hex": "0003", 2708 + "name": "xHCI Host Controller", 2709 + "value": 3 2710 + }, 2711 + "revision": { 2712 + "hex": "0000", 2713 + "name": "6.17", 2714 + "value": 0 2715 + }, 2716 + "serial": "0000:c5:00.4", 2717 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2718 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.4/usb8/8-0:1.0", 2719 + "sysfs_bus_id": "8-0:1.0", 2720 + "detail": { 2721 + "device_class": { 2722 + "hex": "0009", 2723 + "name": "hub", 2724 + "value": 9 2725 + }, 2726 + "device_subclass": { 2727 + "hex": "0000", 2728 + "name": "per_interface", 2729 + "value": 0 2730 + }, 2731 + "device_protocol": 3, 2732 + "interface_class": { 2733 + "hex": "0009", 2734 + "name": "hub", 2735 + "value": 9 2736 + }, 2737 + "interface_subclass": { 2738 + "hex": "0000", 2739 + "name": "per_interface", 2740 + "value": 0 2741 + }, 2742 + "interface_protocol": 0, 2743 + "interface_number": 0, 2744 + "interface_alternate_setting": 0 2745 + }, 2746 + "hotplug": "usb", 2747 + "driver": "hub", 2748 + "driver_module": "usbcore", 2749 + "drivers": [ 2750 + "hub" 2751 + ], 2752 + "driver_modules": [ 2753 + "usbcore" 2754 + ], 2755 + "module_alias": "usb:v1D6Bp0003d0617dc09dsc00dp03ic09isc00ip00in00" 2756 + }, 2757 + { 2758 + "index": 90, 2759 + "attached_to": 68, 2760 + "class_list": [ 2761 + "usb", 2762 + "hub" 2763 + ], 2764 + "bus_type": { 2765 + "hex": "0086", 2766 + "name": "USB", 2767 + "value": 134 2768 + }, 2769 + "slot": { 2770 + "bus": 0, 2771 + "number": 0 2772 + }, 2773 + "base_class": { 2774 + "hex": "010a", 2775 + "name": "Hub", 2776 + "value": 266 2777 + }, 2778 + "vendor": { 2779 + "hex": "1d6b", 2780 + "name": "Linux 6.17.10 xhci-hcd", 2781 + "value": 7531 2782 + }, 2783 + "device": { 2784 + "hex": "0002", 2785 + "name": "xHCI Host Controller", 2786 + "value": 2 2787 + }, 2788 + "revision": { 2789 + "hex": "0000", 2790 + "name": "6.17", 2791 + "value": 0 2792 + }, 2793 + "serial": "0000:c3:00.4", 2794 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2795 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.4/usb1/1-0:1.0", 2796 + "sysfs_bus_id": "1-0:1.0", 2797 + "resources": [ 2798 + { 2799 + "type": "baud", 2800 + "speed": 480000000, 2801 + "bits": 0, 2802 + "stop_bits": 0, 2803 + "parity": 0, 2804 + "handshake": 0 2805 + } 2806 + ], 2807 + "detail": { 2808 + "device_class": { 2809 + "hex": "0009", 2810 + "name": "hub", 2811 + "value": 9 2812 + }, 2813 + "device_subclass": { 2814 + "hex": "0000", 2815 + "name": "per_interface", 2816 + "value": 0 2817 + }, 2818 + "device_protocol": 1, 2819 + "interface_class": { 2820 + "hex": "0009", 2821 + "name": "hub", 2822 + "value": 9 2823 + }, 2824 + "interface_subclass": { 2825 + "hex": "0000", 2826 + "name": "per_interface", 2827 + "value": 0 2828 + }, 2829 + "interface_protocol": 0, 2830 + "interface_number": 0, 2831 + "interface_alternate_setting": 0 2832 + }, 2833 + "hotplug": "usb", 2834 + "driver": "hub", 2835 + "driver_module": "usbcore", 2836 + "drivers": [ 2837 + "hub" 2838 + ], 2839 + "driver_modules": [ 2840 + "usbcore" 2841 + ], 2842 + "module_alias": "usb:v1D6Bp0002d0617dc09dsc00dp01ic09isc00ip00in00" 2843 + }, 2844 + { 2845 + "index": 91, 2846 + "attached_to": 85, 2847 + "class_list": [ 2848 + "usb", 2849 + "hub" 2850 + ], 2851 + "bus_type": { 2852 + "hex": "0086", 2853 + "name": "USB", 2854 + "value": 134 2855 + }, 2856 + "slot": { 2857 + "bus": 0, 2858 + "number": 0 2859 + }, 2860 + "base_class": { 2861 + "hex": "010a", 2862 + "name": "Hub", 2863 + "value": 266 2864 + }, 2865 + "vendor": { 2866 + "hex": "05e3", 2867 + "name": "GenesysLogic", 2868 + "value": 1507 2869 + }, 2870 + "device": { 2871 + "hex": "0610", 2872 + "name": "USB2.1 Hub", 2873 + "value": 1552 2874 + }, 2875 + "revision": { 2876 + "hex": "0000", 2877 + "name": "10.01", 2878 + "value": 0 2879 + }, 2880 + "model": "GenesysLogic USB2.1 Hub", 2881 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0/usb3/3-2/3-2:1.0", 2882 + "sysfs_bus_id": "3-2:1.0", 2883 + "resources": [ 2884 + { 2885 + "type": "baud", 2886 + "speed": 480000000, 2887 + "bits": 0, 2888 + "stop_bits": 0, 2889 + "parity": 0, 2890 + "handshake": 0 2891 + } 2892 + ], 2893 + "detail": { 2894 + "device_class": { 2895 + "hex": "0009", 2896 + "name": "hub", 2897 + "value": 9 2898 + }, 2899 + "device_subclass": { 2900 + "hex": "0000", 2901 + "name": "per_interface", 2902 + "value": 0 2903 + }, 2904 + "device_protocol": 2, 2905 + "interface_class": { 2906 + "hex": "0009", 2907 + "name": "hub", 2908 + "value": 9 2909 + }, 2910 + "interface_subclass": { 2911 + "hex": "0000", 2912 + "name": "per_interface", 2913 + "value": 0 2914 + }, 2915 + "interface_protocol": 2, 2916 + "interface_number": 0, 2917 + "interface_alternate_setting": 1 2918 + }, 2919 + "hotplug": "usb", 2920 + "driver": "hub", 2921 + "driver_module": "usbcore", 2922 + "drivers": [ 2923 + "hub" 2924 + ], 2925 + "driver_modules": [ 2926 + "usbcore" 2927 + ], 2928 + "module_alias": "usb:v05E3p0610d1001dc09dsc00dp02ic09isc00ip02in00" 2929 + }, 2930 + { 2931 + "index": 92, 2932 + "attached_to": 39, 2933 + "class_list": [ 2934 + "usb", 2935 + "hub" 2936 + ], 2937 + "bus_type": { 2938 + "hex": "0086", 2939 + "name": "USB", 2940 + "value": 134 2941 + }, 2942 + "slot": { 2943 + "bus": 0, 2944 + "number": 0 2945 + }, 2946 + "base_class": { 2947 + "hex": "010a", 2948 + "name": "Hub", 2949 + "value": 266 2950 + }, 2951 + "vendor": { 2952 + "hex": "1d6b", 2953 + "name": "Linux 6.17.10 xhci-hcd", 2954 + "value": 7531 2955 + }, 2956 + "device": { 2957 + "hex": "0002", 2958 + "name": "xHCI Host Controller", 2959 + "value": 2 2960 + }, 2961 + "revision": { 2962 + "hex": "0000", 2963 + "name": "6.17", 2964 + "value": 0 2965 + }, 2966 + "serial": "0000:c5:00.3", 2967 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 2968 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.3/usb5/5-0:1.0", 2969 + "sysfs_bus_id": "5-0:1.0", 2970 + "resources": [ 2971 + { 2972 + "type": "baud", 2973 + "speed": 480000000, 2974 + "bits": 0, 2975 + "stop_bits": 0, 2976 + "parity": 0, 2977 + "handshake": 0 2978 + } 2979 + ], 2980 + "detail": { 2981 + "device_class": { 2982 + "hex": "0009", 2983 + "name": "hub", 2984 + "value": 9 2985 + }, 2986 + "device_subclass": { 2987 + "hex": "0000", 2988 + "name": "per_interface", 2989 + "value": 0 2990 + }, 2991 + "device_protocol": 1, 2992 + "interface_class": { 2993 + "hex": "0009", 2994 + "name": "hub", 2995 + "value": 9 2996 + }, 2997 + "interface_subclass": { 2998 + "hex": "0000", 2999 + "name": "per_interface", 3000 + "value": 0 3001 + }, 3002 + "interface_protocol": 0, 3003 + "interface_number": 0, 3004 + "interface_alternate_setting": 0 3005 + }, 3006 + "hotplug": "usb", 3007 + "driver": "hub", 3008 + "driver_module": "usbcore", 3009 + "drivers": [ 3010 + "hub" 3011 + ], 3012 + "driver_modules": [ 3013 + "usbcore" 3014 + ], 3015 + "module_alias": "usb:v1D6Bp0002d0617dc09dsc00dp01ic09isc00ip00in00" 3016 + }, 3017 + { 3018 + "index": 95, 3019 + "attached_to": 90, 3020 + "class_list": [ 3021 + "usb", 3022 + "hub" 3023 + ], 3024 + "bus_type": { 3025 + "hex": "0086", 3026 + "name": "USB", 3027 + "value": 134 3028 + }, 3029 + "slot": { 3030 + "bus": 0, 3031 + "number": 0 3032 + }, 3033 + "base_class": { 3034 + "hex": "010a", 3035 + "name": "Hub", 3036 + "value": 266 3037 + }, 3038 + "vendor": { 3039 + "hex": "0bda", 3040 + "name": "Generic", 3041 + "value": 3034 3042 + }, 3043 + "device": { 3044 + "hex": "5424", 3045 + "name": "2-Port USB 2.0 Hub", 3046 + "value": 21540 3047 + }, 3048 + "revision": { 3049 + "hex": "0000", 3050 + "name": "1.88", 3051 + "value": 0 3052 + }, 3053 + "model": "Generic 2-Port USB 2.0 Hub", 3054 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.4/usb1/1-1/1-1:1.0", 3055 + "sysfs_bus_id": "1-1:1.0", 3056 + "resources": [ 3057 + { 3058 + "type": "baud", 3059 + "speed": 480000000, 3060 + "bits": 0, 3061 + "stop_bits": 0, 3062 + "parity": 0, 3063 + "handshake": 0 3064 + } 3065 + ], 3066 + "detail": { 3067 + "device_class": { 3068 + "hex": "0009", 3069 + "name": "hub", 3070 + "value": 9 3071 + }, 3072 + "device_subclass": { 3073 + "hex": "0000", 3074 + "name": "per_interface", 3075 + "value": 0 3076 + }, 3077 + "device_protocol": 2, 3078 + "interface_class": { 3079 + "hex": "0009", 3080 + "name": "hub", 3081 + "value": 9 3082 + }, 3083 + "interface_subclass": { 3084 + "hex": "0000", 3085 + "name": "per_interface", 3086 + "value": 0 3087 + }, 3088 + "interface_protocol": 2, 3089 + "interface_number": 0, 3090 + "interface_alternate_setting": 1 3091 + }, 3092 + "hotplug": "usb", 3093 + "driver": "hub", 3094 + "driver_module": "usbcore", 3095 + "drivers": [ 3096 + "hub" 3097 + ], 3098 + "driver_modules": [ 3099 + "usbcore" 3100 + ], 3101 + "module_alias": "usb:v0BDAp5424d0188dc09dsc00dp02ic09isc00ip02in00" 3102 + }, 3103 + { 3104 + "index": 96, 3105 + "attached_to": 68, 3106 + "class_list": [ 3107 + "usb", 3108 + "hub" 3109 + ], 3110 + "bus_type": { 3111 + "hex": "0086", 3112 + "name": "USB", 3113 + "value": 134 3114 + }, 3115 + "slot": { 3116 + "bus": 0, 3117 + "number": 0 3118 + }, 3119 + "base_class": { 3120 + "hex": "010a", 3121 + "name": "Hub", 3122 + "value": 266 3123 + }, 3124 + "vendor": { 3125 + "hex": "1d6b", 3126 + "name": "Linux 6.17.10 xhci-hcd", 3127 + "value": 7531 3128 + }, 3129 + "device": { 3130 + "hex": "0003", 3131 + "name": "xHCI Host Controller", 3132 + "value": 3 3133 + }, 3134 + "revision": { 3135 + "hex": "0000", 3136 + "name": "6.17", 3137 + "value": 0 3138 + }, 3139 + "serial": "0000:c3:00.4", 3140 + "model": "Linux 6.17.10 xhci-hcd xHCI Host Controller", 3141 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.4/usb2/2-0:1.0", 3142 + "sysfs_bus_id": "2-0:1.0", 3143 + "detail": { 3144 + "device_class": { 3145 + "hex": "0009", 3146 + "name": "hub", 3147 + "value": 9 3148 + }, 3149 + "device_subclass": { 3150 + "hex": "0000", 3151 + "name": "per_interface", 3152 + "value": 0 3153 + }, 3154 + "device_protocol": 3, 3155 + "interface_class": { 3156 + "hex": "0009", 3157 + "name": "hub", 3158 + "value": 9 3159 + }, 3160 + "interface_subclass": { 3161 + "hex": "0000", 3162 + "name": "per_interface", 3163 + "value": 0 3164 + }, 3165 + "interface_protocol": 0, 3166 + "interface_number": 0, 3167 + "interface_alternate_setting": 0 3168 + }, 3169 + "hotplug": "usb", 3170 + "driver": "hub", 3171 + "driver_module": "usbcore", 3172 + "drivers": [ 3173 + "hub" 3174 + ], 3175 + "driver_modules": [ 3176 + "usbcore" 3177 + ], 3178 + "module_alias": "usb:v1D6Bp0003d0617dc09dsc00dp03ic09isc00ip00in00" 3179 + } 3180 + ], 3181 + "memory": [ 3182 + { 3183 + "index": 35, 3184 + "attached_to": 0, 3185 + "class_list": [ 3186 + "memory" 3187 + ], 3188 + "base_class": { 3189 + "hex": "0101", 3190 + "name": "Internally Used Class", 3191 + "value": 257 3192 + }, 3193 + "sub_class": { 3194 + "hex": "0002", 3195 + "name": "Main Memory", 3196 + "value": 2 3197 + }, 3198 + "model": "Main Memory", 3199 + "resources": [ 3200 + { 3201 + "type": "phys_mem", 3202 + "range": 137438953472 3203 + } 3204 + ] 3205 + } 3206 + ], 3207 + "monitor": [ 3208 + { 3209 + "index": 77, 3210 + "attached_to": 37, 3211 + "class_list": [ 3212 + "monitor" 3213 + ], 3214 + "base_class": { 3215 + "hex": "0100", 3216 + "name": "Monitor", 3217 + "value": 256 3218 + }, 3219 + "sub_class": { 3220 + "hex": "0002", 3221 + "name": "LCD Monitor", 3222 + "value": 2 3223 + }, 3224 + "vendor": { 3225 + "hex": "10ac", 3226 + "name": "DELL", 3227 + "value": 4268 3228 + }, 3229 + "device": { 3230 + "hex": "d15b", 3231 + "name": "DELL S3423DWC", 3232 + "value": 53595 3233 + }, 3234 + "serial": "1LBXNH3", 3235 + "model": "DELL S3423DWC", 3236 + "resources": [ 3237 + { 3238 + "type": "monitor", 3239 + "width": 1024, 3240 + "height": 768, 3241 + "vertical_frequency": 60, 3242 + "interlaced": false 3243 + }, 3244 + { 3245 + "type": "monitor", 3246 + "width": 1024, 3247 + "height": 768, 3248 + "vertical_frequency": 75, 3249 + "interlaced": false 3250 + }, 3251 + { 3252 + "type": "monitor", 3253 + "width": 1152, 3254 + "height": 864, 3255 + "vertical_frequency": 75, 3256 + "interlaced": false 3257 + }, 3258 + { 3259 + "type": "monitor", 3260 + "width": 1280, 3261 + "height": 1024, 3262 + "vertical_frequency": 60, 3263 + "interlaced": false 3264 + }, 3265 + { 3266 + "type": "monitor", 3267 + "width": 1280, 3268 + "height": 1024, 3269 + "vertical_frequency": 75, 3270 + "interlaced": false 3271 + }, 3272 + { 3273 + "type": "monitor", 3274 + "width": 1280, 3275 + "height": 720, 3276 + "vertical_frequency": 60, 3277 + "interlaced": false 3278 + }, 3279 + { 3280 + "type": "monitor", 3281 + "width": 1280, 3282 + "height": 960, 3283 + "vertical_frequency": 60, 3284 + "interlaced": false 3285 + }, 3286 + { 3287 + "type": "monitor", 3288 + "width": 3440, 3289 + "height": 1440, 3290 + "vertical_frequency": 60, 3291 + "interlaced": false 3292 + }, 3293 + { 3294 + "type": "monitor", 3295 + "width": 640, 3296 + "height": 480, 3297 + "vertical_frequency": 60, 3298 + "interlaced": false 3299 + }, 3300 + { 3301 + "type": "monitor", 3302 + "width": 640, 3303 + "height": 480, 3304 + "vertical_frequency": 75, 3305 + "interlaced": false 3306 + }, 3307 + { 3308 + "type": "monitor", 3309 + "width": 720, 3310 + "height": 400, 3311 + "vertical_frequency": 70, 3312 + "interlaced": false 3313 + }, 3314 + { 3315 + "type": "monitor", 3316 + "width": 800, 3317 + "height": 600, 3318 + "vertical_frequency": 60, 3319 + "interlaced": false 3320 + }, 3321 + { 3322 + "type": "monitor", 3323 + "width": 800, 3324 + "height": 600, 3325 + "vertical_frequency": 75, 3326 + "interlaced": false 3327 + }, 3328 + { 3329 + "type": "size", 3330 + "unit": "mm", 3331 + "value_1": 797, 3332 + "value_2": 334 3333 + } 3334 + ], 3335 + "detail": { 3336 + "manufacture_year": 2023, 3337 + "manufacture_week": 14, 3338 + "vertical_sync": { 3339 + "min": 48, 3340 + "max": 100 3341 + }, 3342 + "horizontal_sync": { 3343 + "min": 160, 3344 + "max": 160 3345 + }, 3346 + "horizontal_sync_timings": { 3347 + "disp": 3440, 3348 + "sync_start": 3488, 3349 + "sync_end": 3520, 3350 + "total": 3600 3351 + }, 3352 + "vertical_sync_timings": { 3353 + "disp": 1440, 3354 + "sync_start": 1443, 3355 + "sync_end": 1453, 3356 + "total": 1481 3357 + }, 3358 + "clock": 319750, 3359 + "width": 3440, 3360 + "height": 1440, 3361 + "width_millimetres": 797, 3362 + "height_millimetres": 334, 3363 + "horizontal_flag": 45, 3364 + "vertical_flag": 43, 3365 + "vendor": "", 3366 + "name": "DELL S3423DWC" 3367 + }, 3368 + "driver_info": { 3369 + "type": "display", 3370 + "width": 3440, 3371 + "height": 1440, 3372 + "vertical_sync": { 3373 + "min": 48, 3374 + "max": 100 3375 + }, 3376 + "horizontal_sync": { 3377 + "min": 160, 3378 + "max": 160 3379 + }, 3380 + "bandwidth": 0, 3381 + "horizontal_sync_timings": { 3382 + "disp": 3440, 3383 + "sync_start": 3488, 3384 + "sync_end": 3520, 3385 + "total": 3600 3386 + }, 3387 + "vertical_sync_timings": { 3388 + "disp": 1440, 3389 + "sync_start": 1443, 3390 + "sync_end": 1453, 3391 + "total": 1481 3392 + }, 3393 + "horizontal_flag": 45, 3394 + "vertical_flag": 43 3395 + } 3396 + } 3397 + ], 3398 + "network_controller": [ 3399 + { 3400 + "index": 48, 3401 + "attached_to": 50, 3402 + "class_list": [ 3403 + "network_controller", 3404 + "pci" 3405 + ], 3406 + "bus_type": { 3407 + "hex": "0004", 3408 + "name": "PCI", 3409 + "value": 4 3410 + }, 3411 + "slot": { 3412 + "bus": 191, 3413 + "number": 0 3414 + }, 3415 + "base_class": { 3416 + "hex": "0002", 3417 + "name": "Network controller", 3418 + "value": 2 3419 + }, 3420 + "sub_class": { 3421 + "hex": "0000", 3422 + "name": "Ethernet controller", 3423 + "value": 0 3424 + }, 3425 + "vendor": { 3426 + "hex": "10ec", 3427 + "value": 4332 3428 + }, 3429 + "sub_vendor": { 3430 + "hex": "f111", 3431 + "value": 61713 3432 + }, 3433 + "device": { 3434 + "hex": "8126", 3435 + "value": 33062 3436 + }, 3437 + "sub_device": { 3438 + "hex": "000a", 3439 + "value": 10 3440 + }, 3441 + "revision": { 3442 + "hex": "0001", 3443 + "value": 1 3444 + }, 3445 + "model": "Ethernet controller", 3446 + "sysfs_id": "/devices/pci0000:00/0000:00:02.1/0000:bf:00.0", 3447 + "sysfs_bus_id": "0000:bf:00.0", 3448 + "sysfs_iommu_group_id": 16, 3449 + "unix_device_names": [ 3450 + "enp191s0" 3451 + ], 3452 + "resources": [ 3453 + { 3454 + "type": "hwaddr", 3455 + "address": 57 3456 + }, 3457 + { 3458 + "type": "io", 3459 + "base": 8192, 3460 + "range": 256, 3461 + "enabled": true, 3462 + "access": "read_write" 3463 + }, 3464 + { 3465 + "type": "phwaddr", 3466 + "address": 57 3467 + } 3468 + ], 3469 + "detail": { 3470 + "function": 0, 3471 + "command": 1031, 3472 + "header_type": 0, 3473 + "secondary_bus": 0, 3474 + "prog_if": 0 3475 + }, 3476 + "driver": "r8169", 3477 + "driver_module": "r8169", 3478 + "drivers": [ 3479 + "r8169" 3480 + ], 3481 + "driver_modules": [ 3482 + "r8169" 3483 + ], 3484 + "module_alias": "pci:v000010ECd00008126sv0000F111sd0000000Abc02sc00i00" 3485 + }, 3486 + { 3487 + "index": 58, 3488 + "attached_to": 46, 3489 + "class_list": [ 3490 + "network_controller", 3491 + "pci" 3492 + ], 3493 + "bus_type": { 3494 + "hex": "0004", 3495 + "name": "PCI", 3496 + "value": 4 3497 + }, 3498 + "slot": { 3499 + "bus": 192, 3500 + "number": 0 3501 + }, 3502 + "base_class": { 3503 + "hex": "0002", 3504 + "name": "Network controller", 3505 + "value": 2 3506 + }, 3507 + "sub_class": { 3508 + "hex": "0080", 3509 + "name": "Network controller", 3510 + "value": 128 3511 + }, 3512 + "vendor": { 3513 + "hex": "14c3", 3514 + "value": 5315 3515 + }, 3516 + "sub_vendor": { 3517 + "hex": "14c3", 3518 + "value": 5315 3519 + }, 3520 + "device": { 3521 + "hex": "0717", 3522 + "value": 1815 3523 + }, 3524 + "sub_device": { 3525 + "hex": "0717", 3526 + "value": 1815 3527 + }, 3528 + "model": "Network controller", 3529 + "sysfs_id": "/devices/pci0000:00/0000:00:02.3/0000:c0:00.0", 3530 + "sysfs_bus_id": "0000:c0:00.0", 3531 + "sysfs_iommu_group_id": 17, 3532 + "unix_device_names": [ 3533 + "wlan0" 3534 + ], 3535 + "resources": [ 3536 + { 3537 + "type": "hwaddr", 3538 + "address": 97 3539 + }, 3540 + { 3541 + "type": "phwaddr", 3542 + "address": 97 3543 + } 3544 + ], 3545 + "detail": { 3546 + "function": 0, 3547 + "command": 1030, 3548 + "header_type": 0, 3549 + "secondary_bus": 0, 3550 + "prog_if": 0 3551 + }, 3552 + "driver": "mt7925e", 3553 + "driver_module": "mt7925e", 3554 + "drivers": [ 3555 + "mt7925e" 3556 + ], 3557 + "driver_modules": [ 3558 + "mt7925e" 3559 + ], 3560 + "module_alias": "pci:v000014C3d00000717sv000014C3sd00000717bc02sc80i00" 3561 + } 3562 + ], 3563 + "network_interface": [ 3564 + { 3565 + "index": 97, 3566 + "attached_to": 0, 3567 + "class_list": [ 3568 + "network_interface" 3569 + ], 3570 + "base_class": { 3571 + "hex": "0107", 3572 + "name": "Network Interface", 3573 + "value": 263 3574 + }, 3575 + "sub_class": { 3576 + "hex": "0000", 3577 + "name": "Loopback", 3578 + "value": 0 3579 + }, 3580 + "model": "Loopback network interface", 3581 + "sysfs_id": "/class/net/lo", 3582 + "unix_device_names": [ 3583 + "lo" 3584 + ] 3585 + }, 3586 + { 3587 + "index": 98, 3588 + "attached_to": 48, 3589 + "class_list": [ 3590 + "network_interface" 3591 + ], 3592 + "base_class": { 3593 + "hex": "0107", 3594 + "name": "Network Interface", 3595 + "value": 263 3596 + }, 3597 + "sub_class": { 3598 + "hex": "0001", 3599 + "name": "Ethernet", 3600 + "value": 1 3601 + }, 3602 + "model": "Ethernet network interface", 3603 + "sysfs_id": "/class/net/enp191s0", 3604 + "sysfs_device_link": "/devices/pci0000:00/0000:00:02.1/0000:bf:00.0", 3605 + "unix_device_names": [ 3606 + "enp191s0" 3607 + ], 3608 + "resources": [ 3609 + { 3610 + "type": "hwaddr", 3611 + "address": 57 3612 + }, 3613 + { 3614 + "type": "phwaddr", 3615 + "address": 57 3616 + } 3617 + ], 3618 + "driver": "r8169", 3619 + "driver_module": "r8169", 3620 + "drivers": [ 3621 + "r8169" 3622 + ], 3623 + "driver_modules": [ 3624 + "r8169" 3625 + ] 3626 + }, 3627 + { 3628 + "index": 99, 3629 + "attached_to": 58, 3630 + "class_list": [ 3631 + "network_interface" 3632 + ], 3633 + "base_class": { 3634 + "hex": "0107", 3635 + "name": "Network Interface", 3636 + "value": 263 3637 + }, 3638 + "sub_class": { 3639 + "hex": "000a", 3640 + "name": "WLAN", 3641 + "value": 10 3642 + }, 3643 + "model": "WLAN network interface", 3644 + "sysfs_id": "/class/net/wlan0", 3645 + "sysfs_device_link": "/devices/pci0000:00/0000:00:02.3/0000:c0:00.0", 3646 + "unix_device_names": [ 3647 + "wlan0" 3648 + ], 3649 + "resources": [ 3650 + { 3651 + "type": "hwaddr", 3652 + "address": 97 3653 + }, 3654 + { 3655 + "type": "phwaddr", 3656 + "address": 97 3657 + } 3658 + ], 3659 + "driver": "mt7925e", 3660 + "driver_module": "mt7925e", 3661 + "drivers": [ 3662 + "mt7925e" 3663 + ], 3664 + "driver_modules": [ 3665 + "mt7925e" 3666 + ] 3667 + } 3668 + ], 3669 + "pci": [ 3670 + { 3671 + "index": 49, 3672 + "attached_to": 74, 3673 + "class_list": [ 3674 + "pci", 3675 + "unknown" 3676 + ], 3677 + "bus_type": { 3678 + "hex": "0004", 3679 + "name": "PCI", 3680 + "value": 4 3681 + }, 3682 + "slot": { 3683 + "bus": 196, 3684 + "number": 0 3685 + }, 3686 + "base_class": { 3687 + "hex": "0011", 3688 + "name": "Signal processing controller", 3689 + "value": 17 3690 + }, 3691 + "sub_class": { 3692 + "hex": "0080", 3693 + "name": "Signal processing controller", 3694 + "value": 128 3695 + }, 3696 + "vendor": { 3697 + "hex": "1022", 3698 + "name": "AMD", 3699 + "value": 4130 3700 + }, 3701 + "sub_vendor": { 3702 + "hex": "f111", 3703 + "value": 61713 3704 + }, 3705 + "device": { 3706 + "hex": "17f0", 3707 + "value": 6128 3708 + }, 3709 + "sub_device": { 3710 + "hex": "000a", 3711 + "value": 10 3712 + }, 3713 + "revision": { 3714 + "hex": "0011", 3715 + "value": 17 3716 + }, 3717 + "model": "AMD Signal processing controller", 3718 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2/0000:c4:00.1", 3719 + "sysfs_bus_id": "0000:c4:00.1", 3720 + "sysfs_iommu_group_id": 26, 3721 + "detail": { 3722 + "function": 1, 3723 + "command": 1030, 3724 + "header_type": 0, 3725 + "secondary_bus": 0, 3726 + "prog_if": 0 3727 + }, 3728 + "driver": "amdxdna", 3729 + "driver_module": "amdxdna", 3730 + "drivers": [ 3731 + "amdxdna" 3732 + ], 3733 + "driver_modules": [ 3734 + "amdxdna" 3735 + ], 3736 + "module_alias": "pci:v00001022d000017F0sv0000F111sd0000000Abc11sc80i00" 3737 + }, 3738 + { 3739 + "index": 52, 3740 + "attached_to": 0, 3741 + "class_list": [ 3742 + "pci", 3743 + "unknown" 3744 + ], 3745 + "bus_type": { 3746 + "hex": "0004", 3747 + "name": "PCI", 3748 + "value": 4 3749 + }, 3750 + "slot": { 3751 + "bus": 0, 3752 + "number": 0 3753 + }, 3754 + "base_class": { 3755 + "hex": "0008", 3756 + "name": "Generic system peripheral", 3757 + "value": 8 3758 + }, 3759 + "sub_class": { 3760 + "hex": "0006", 3761 + "value": 6 3762 + }, 3763 + "vendor": { 3764 + "hex": "1022", 3765 + "name": "AMD", 3766 + "value": 4130 3767 + }, 3768 + "sub_vendor": { 3769 + "hex": "f111", 3770 + "value": 61713 3771 + }, 3772 + "device": { 3773 + "hex": "1508", 3774 + "value": 5384 3775 + }, 3776 + "sub_device": { 3777 + "hex": "000a", 3778 + "value": 10 3779 + }, 3780 + "revision": { 3781 + "hex": "0002", 3782 + "value": 2 3783 + }, 3784 + "model": "AMD Generic system peripheral", 3785 + "sysfs_id": "/devices/pci0000:00/0000:00:00.2", 3786 + "sysfs_bus_id": "0000:00:00.2", 3787 + "detail": { 3788 + "function": 2, 3789 + "command": 1028, 3790 + "header_type": 0, 3791 + "secondary_bus": 0, 3792 + "prog_if": 0 3793 + }, 3794 + "module_alias": "pci:v00001022d00001508sv0000F111sd0000000Abc08sc06i00" 3795 + }, 3796 + { 3797 + "index": 69, 3798 + "attached_to": 74, 3799 + "class_list": [ 3800 + "pci", 3801 + "unknown" 3802 + ], 3803 + "bus_type": { 3804 + "hex": "0004", 3805 + "name": "PCI", 3806 + "value": 4 3807 + }, 3808 + "slot": { 3809 + "bus": 196, 3810 + "number": 0 3811 + }, 3812 + "base_class": { 3813 + "hex": "0013", 3814 + "value": 19 3815 + }, 3816 + "vendor": { 3817 + "hex": "1022", 3818 + "name": "AMD", 3819 + "value": 4130 3820 + }, 3821 + "sub_vendor": { 3822 + "hex": "f111", 3823 + "value": 61713 3824 + }, 3825 + "device": { 3826 + "hex": "150d", 3827 + "value": 5389 3828 + }, 3829 + "sub_device": { 3830 + "hex": "000a", 3831 + "value": 10 3832 + }, 3833 + "model": "unknown unknown", 3834 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2/0000:c4:00.0", 3835 + "sysfs_bus_id": "0000:c4:00.0", 3836 + "sysfs_iommu_group_id": 25, 3837 + "detail": { 3838 + "function": 0, 3839 + "command": 0, 3840 + "header_type": 0, 3841 + "secondary_bus": 0, 3842 + "prog_if": 0 3843 + }, 3844 + "module_alias": "pci:v00001022d0000150Dsv0000F111sd0000000Abc13sc00i00" 3845 + }, 3846 + { 3847 + "index": 72, 3848 + "attached_to": 0, 3849 + "class_list": [ 3850 + "pci", 3851 + "unknown" 3852 + ], 3853 + "bus_type": { 3854 + "hex": "0004", 3855 + "name": "PCI", 3856 + "value": 4 3857 + }, 3858 + "slot": { 3859 + "bus": 0, 3860 + "number": 20 3861 + }, 3862 + "base_class": { 3863 + "hex": "000c", 3864 + "name": "Serial bus controller", 3865 + "value": 12 3866 + }, 3867 + "sub_class": { 3868 + "hex": "0005", 3869 + "name": "SMBus", 3870 + "value": 5 3871 + }, 3872 + "vendor": { 3873 + "hex": "1022", 3874 + "name": "AMD", 3875 + "value": 4130 3876 + }, 3877 + "sub_vendor": { 3878 + "hex": "f111", 3879 + "value": 61713 3880 + }, 3881 + "device": { 3882 + "hex": "790b", 3883 + "value": 30987 3884 + }, 3885 + "sub_device": { 3886 + "hex": "000a", 3887 + "value": 10 3888 + }, 3889 + "revision": { 3890 + "hex": "0071", 3891 + "value": 113 3892 + }, 3893 + "model": "AMD SMBus", 3894 + "sysfs_id": "/devices/pci0000:00/0000:00:14.0", 3895 + "sysfs_bus_id": "0000:00:14.0", 3896 + "sysfs_iommu_group_id": 14, 3897 + "detail": { 3898 + "function": 0, 3899 + "command": 1027, 3900 + "header_type": 0, 3901 + "secondary_bus": 0, 3902 + "prog_if": 0 3903 + }, 3904 + "driver": "piix4_smbus", 3905 + "driver_module": "i2c_piix4", 3906 + "drivers": [ 3907 + "piix4_smbus" 3908 + ], 3909 + "driver_modules": [ 3910 + "i2c_piix4" 3911 + ], 3912 + "module_alias": "pci:v00001022d0000790Bsv0000F111sd0000000Abc0Csc05i00" 3913 + }, 3914 + { 3915 + "index": 73, 3916 + "attached_to": 59, 3917 + "class_list": [ 3918 + "pci", 3919 + "unknown" 3920 + ], 3921 + "bus_type": { 3922 + "hex": "0004", 3923 + "name": "PCI", 3924 + "value": 4 3925 + }, 3926 + "slot": { 3927 + "bus": 195, 3928 + "number": 0 3929 + }, 3930 + "base_class": { 3931 + "hex": "0010", 3932 + "name": "Encryption controller", 3933 + "value": 16 3934 + }, 3935 + "sub_class": { 3936 + "hex": "0080", 3937 + "name": "Encryption controller", 3938 + "value": 128 3939 + }, 3940 + "vendor": { 3941 + "hex": "1022", 3942 + "name": "AMD", 3943 + "value": 4130 3944 + }, 3945 + "sub_vendor": { 3946 + "hex": "f111", 3947 + "value": 61713 3948 + }, 3949 + "device": { 3950 + "hex": "17e0", 3951 + "value": 6112 3952 + }, 3953 + "sub_device": { 3954 + "hex": "000a", 3955 + "value": 10 3956 + }, 3957 + "model": "AMD Encryption controller", 3958 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.2", 3959 + "sysfs_bus_id": "0000:c3:00.2", 3960 + "sysfs_iommu_group_id": 22, 3961 + "detail": { 3962 + "function": 2, 3963 + "command": 1030, 3964 + "header_type": 0, 3965 + "secondary_bus": 0, 3966 + "prog_if": 0 3967 + }, 3968 + "driver": "ccp", 3969 + "driver_module": "ccp", 3970 + "drivers": [ 3971 + "ccp" 3972 + ], 3973 + "driver_modules": [ 3974 + "ccp" 3975 + ], 3976 + "module_alias": "pci:v00001022d000017E0sv0000F111sd0000000Abc10sc80i00" 3977 + } 3978 + ], 3979 + "sound": [ 3980 + { 3981 + "index": 56, 3982 + "attached_to": 59, 3983 + "class_list": [ 3984 + "sound", 3985 + "pci" 3986 + ], 3987 + "bus_type": { 3988 + "hex": "0004", 3989 + "name": "PCI", 3990 + "value": 4 3991 + }, 3992 + "slot": { 3993 + "bus": 195, 3994 + "number": 0 3995 + }, 3996 + "base_class": { 3997 + "hex": "0004", 3998 + "name": "Multimedia controller", 3999 + "value": 4 4000 + }, 4001 + "sub_class": { 4002 + "hex": "0003", 4003 + "value": 3 4004 + }, 4005 + "vendor": { 4006 + "hex": "1002", 4007 + "name": "ATI Technologies Inc", 4008 + "value": 4098 4009 + }, 4010 + "sub_vendor": { 4011 + "hex": "f111", 4012 + "value": 61713 4013 + }, 4014 + "device": { 4015 + "hex": "1640", 4016 + "value": 5696 4017 + }, 4018 + "sub_device": { 4019 + "hex": "000a", 4020 + "value": 10 4021 + }, 4022 + "model": "ATI Multimedia controller", 4023 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.1", 4024 + "sysfs_bus_id": "0000:c3:00.1", 4025 + "sysfs_iommu_group_id": 21, 4026 + "detail": { 4027 + "function": 1, 4028 + "command": 1030, 4029 + "header_type": 0, 4030 + "secondary_bus": 0, 4031 + "prog_if": 0 4032 + }, 4033 + "driver": "snd_hda_intel", 4034 + "driver_module": "snd_hda_intel", 4035 + "drivers": [ 4036 + "snd_hda_intel" 4037 + ], 4038 + "driver_modules": [ 4039 + "snd_hda_intel" 4040 + ], 4041 + "module_alias": "pci:v00001002d00001640sv0000F111sd0000000Abc04sc03i00" 4042 + }, 4043 + { 4044 + "index": 67, 4045 + "attached_to": 59, 4046 + "class_list": [ 4047 + "sound", 4048 + "pci" 4049 + ], 4050 + "bus_type": { 4051 + "hex": "0004", 4052 + "name": "PCI", 4053 + "value": 4 4054 + }, 4055 + "slot": { 4056 + "bus": 195, 4057 + "number": 0 4058 + }, 4059 + "base_class": { 4060 + "hex": "0004", 4061 + "name": "Multimedia controller", 4062 + "value": 4 4063 + }, 4064 + "sub_class": { 4065 + "hex": "0003", 4066 + "value": 3 4067 + }, 4068 + "vendor": { 4069 + "hex": "1022", 4070 + "name": "AMD", 4071 + "value": 4130 4072 + }, 4073 + "sub_vendor": { 4074 + "hex": "f111", 4075 + "value": 61713 4076 + }, 4077 + "device": { 4078 + "hex": "15e3", 4079 + "value": 5603 4080 + }, 4081 + "sub_device": { 4082 + "hex": "000a", 4083 + "value": 10 4084 + }, 4085 + "model": "AMD Multimedia controller", 4086 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.6", 4087 + "sysfs_bus_id": "0000:c3:00.6", 4088 + "sysfs_iommu_group_id": 24, 4089 + "detail": { 4090 + "function": 6, 4091 + "command": 1030, 4092 + "header_type": 0, 4093 + "secondary_bus": 0, 4094 + "prog_if": 0 4095 + }, 4096 + "driver": "snd_hda_intel", 4097 + "driver_module": "snd_hda_intel", 4098 + "drivers": [ 4099 + "snd_hda_intel" 4100 + ], 4101 + "driver_modules": [ 4102 + "snd_hda_intel" 4103 + ], 4104 + "module_alias": "pci:v00001022d000015E3sv0000F111sd0000000Abc04sc03i00" 4105 + } 4106 + ], 4107 + "storage_controller": [ 4108 + { 4109 + "index": 45, 4110 + "attached_to": 36, 4111 + "class_list": [ 4112 + "storage_controller", 4113 + "pci" 4114 + ], 4115 + "bus_type": { 4116 + "hex": "0004", 4117 + "name": "PCI", 4118 + "value": 4 4119 + }, 4120 + "slot": { 4121 + "bus": 194, 4122 + "number": 0 4123 + }, 4124 + "base_class": { 4125 + "hex": "0001", 4126 + "name": "Mass storage controller", 4127 + "value": 1 4128 + }, 4129 + "sub_class": { 4130 + "hex": "0008", 4131 + "value": 8 4132 + }, 4133 + "pci_interface": { 4134 + "hex": "0002", 4135 + "value": 2 4136 + }, 4137 + "vendor": { 4138 + "hex": "15b7", 4139 + "value": 5559 4140 + }, 4141 + "sub_vendor": { 4142 + "hex": "15b7", 4143 + "value": 5559 4144 + }, 4145 + "device": { 4146 + "hex": "5045", 4147 + "value": 20549 4148 + }, 4149 + "sub_device": { 4150 + "hex": "5045", 4151 + "value": 20549 4152 + }, 4153 + "revision": { 4154 + "hex": "0001", 4155 + "value": 1 4156 + }, 4157 + "model": "Mass storage controller", 4158 + "sysfs_id": "/devices/pci0000:00/0000:00:03.1/0000:c2:00.0", 4159 + "sysfs_bus_id": "0000:c2:00.0", 4160 + "sysfs_iommu_group_id": 19, 4161 + "detail": { 4162 + "function": 0, 4163 + "command": 1031, 4164 + "header_type": 0, 4165 + "secondary_bus": 0, 4166 + "prog_if": 2 4167 + }, 4168 + "driver": "nvme", 4169 + "driver_module": "nvme", 4170 + "drivers": [ 4171 + "nvme" 4172 + ], 4173 + "driver_modules": [ 4174 + "nvme" 4175 + ], 4176 + "module_alias": "pci:v000015B7d00005045sv000015B7sd00005045bc01sc08i02" 4177 + }, 4178 + { 4179 + "index": 51, 4180 + "attached_to": 42, 4181 + "class_list": [ 4182 + "storage_controller", 4183 + "pci" 4184 + ], 4185 + "bus_type": { 4186 + "hex": "0004", 4187 + "name": "PCI", 4188 + "value": 4 4189 + }, 4190 + "slot": { 4191 + "bus": 193, 4192 + "number": 0 4193 + }, 4194 + "base_class": { 4195 + "hex": "0001", 4196 + "name": "Mass storage controller", 4197 + "value": 1 4198 + }, 4199 + "sub_class": { 4200 + "hex": "0008", 4201 + "value": 8 4202 + }, 4203 + "pci_interface": { 4204 + "hex": "0002", 4205 + "value": 2 4206 + }, 4207 + "vendor": { 4208 + "hex": "15b7", 4209 + "value": 5559 4210 + }, 4211 + "sub_vendor": { 4212 + "hex": "15b7", 4213 + "value": 5559 4214 + }, 4215 + "device": { 4216 + "hex": "5045", 4217 + "value": 20549 4218 + }, 4219 + "sub_device": { 4220 + "hex": "5045", 4221 + "value": 20549 4222 + }, 4223 + "revision": { 4224 + "hex": "0001", 4225 + "value": 1 4226 + }, 4227 + "model": "Mass storage controller", 4228 + "sysfs_id": "/devices/pci0000:00/0000:00:02.5/0000:c1:00.0", 4229 + "sysfs_bus_id": "0000:c1:00.0", 4230 + "sysfs_iommu_group_id": 18, 4231 + "detail": { 4232 + "function": 0, 4233 + "command": 1031, 4234 + "header_type": 0, 4235 + "secondary_bus": 0, 4236 + "prog_if": 2 4237 + }, 4238 + "driver": "nvme", 4239 + "driver_module": "nvme", 4240 + "drivers": [ 4241 + "nvme" 4242 + ], 4243 + "driver_modules": [ 4244 + "nvme" 4245 + ], 4246 + "module_alias": "pci:v000015B7d00005045sv000015B7sd00005045bc01sc08i02" 4247 + } 4248 + ], 4249 + "system": { 4250 + "form_factor": "desktop" 4251 + }, 4252 + "usb_controller": [ 4253 + { 4254 + "index": 39, 4255 + "attached_to": 53, 4256 + "class_list": [ 4257 + "usb_controller", 4258 + "pci" 4259 + ], 4260 + "bus_type": { 4261 + "hex": "0004", 4262 + "name": "PCI", 4263 + "value": 4 4264 + }, 4265 + "slot": { 4266 + "bus": 197, 4267 + "number": 0 4268 + }, 4269 + "base_class": { 4270 + "hex": "000c", 4271 + "name": "Serial bus controller", 4272 + "value": 12 4273 + }, 4274 + "sub_class": { 4275 + "hex": "0003", 4276 + "name": "USB Controller", 4277 + "value": 3 4278 + }, 4279 + "pci_interface": { 4280 + "hex": "0030", 4281 + "value": 48 4282 + }, 4283 + "vendor": { 4284 + "hex": "1022", 4285 + "name": "AMD", 4286 + "value": 4130 4287 + }, 4288 + "sub_vendor": { 4289 + "hex": "f111", 4290 + "value": 61713 4291 + }, 4292 + "device": { 4293 + "hex": "1589", 4294 + "value": 5513 4295 + }, 4296 + "sub_device": { 4297 + "hex": "000a", 4298 + "value": 10 4299 + }, 4300 + "model": "AMD USB Controller", 4301 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.3", 4302 + "sysfs_bus_id": "0000:c5:00.3", 4303 + "sysfs_iommu_group_id": 28, 4304 + "detail": { 4305 + "function": 3, 4306 + "command": 1030, 4307 + "header_type": 0, 4308 + "secondary_bus": 0, 4309 + "prog_if": 48 4310 + }, 4311 + "driver": "xhci_hcd", 4312 + "driver_module": "xhci_pci", 4313 + "drivers": [ 4314 + "xhci_hcd" 4315 + ], 4316 + "driver_modules": [ 4317 + "xhci_pci" 4318 + ], 4319 + "module_alias": "pci:v00001022d00001589sv0000F111sd0000000Abc0Csc03i30" 4320 + }, 4321 + { 4322 + "index": 54, 4323 + "attached_to": 53, 4324 + "class_list": [ 4325 + "usb_controller", 4326 + "pci" 4327 + ], 4328 + "bus_type": { 4329 + "hex": "0004", 4330 + "name": "PCI", 4331 + "value": 4 4332 + }, 4333 + "slot": { 4334 + "bus": 197, 4335 + "number": 0 4336 + }, 4337 + "base_class": { 4338 + "hex": "000c", 4339 + "name": "Serial bus controller", 4340 + "value": 12 4341 + }, 4342 + "sub_class": { 4343 + "hex": "0003", 4344 + "name": "USB Controller", 4345 + "value": 3 4346 + }, 4347 + "pci_interface": { 4348 + "hex": "0040", 4349 + "value": 64 4350 + }, 4351 + "vendor": { 4352 + "hex": "1022", 4353 + "name": "AMD", 4354 + "value": 4130 4355 + }, 4356 + "sub_vendor": { 4357 + "hex": "f111", 4358 + "value": 61713 4359 + }, 4360 + "device": { 4361 + "hex": "158e", 4362 + "value": 5518 4363 + }, 4364 + "sub_device": { 4365 + "hex": "000a", 4366 + "value": 10 4367 + }, 4368 + "model": "AMD USB Controller", 4369 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.6", 4370 + "sysfs_bus_id": "0000:c5:00.6", 4371 + "sysfs_iommu_group_id": 31, 4372 + "detail": { 4373 + "function": 6, 4374 + "command": 1030, 4375 + "header_type": 0, 4376 + "secondary_bus": 0, 4377 + "prog_if": 64 4378 + }, 4379 + "driver": "thunderbolt", 4380 + "driver_module": "thunderbolt", 4381 + "drivers": [ 4382 + "thunderbolt" 4383 + ], 4384 + "driver_modules": [ 4385 + "thunderbolt" 4386 + ], 4387 + "module_alias": "pci:v00001022d0000158Esv0000F111sd0000000Abc0Csc03i40" 4388 + }, 4389 + { 4390 + "index": 60, 4391 + "attached_to": 53, 4392 + "class_list": [ 4393 + "usb_controller", 4394 + "pci" 4395 + ], 4396 + "bus_type": { 4397 + "hex": "0004", 4398 + "name": "PCI", 4399 + "value": 4 4400 + }, 4401 + "slot": { 4402 + "bus": 197, 4403 + "number": 0 4404 + }, 4405 + "base_class": { 4406 + "hex": "000c", 4407 + "name": "Serial bus controller", 4408 + "value": 12 4409 + }, 4410 + "sub_class": { 4411 + "hex": "0003", 4412 + "name": "USB Controller", 4413 + "value": 3 4414 + }, 4415 + "pci_interface": { 4416 + "hex": "0030", 4417 + "value": 48 4418 + }, 4419 + "vendor": { 4420 + "hex": "1022", 4421 + "name": "AMD", 4422 + "value": 4130 4423 + }, 4424 + "sub_vendor": { 4425 + "hex": "f111", 4426 + "value": 61713 4427 + }, 4428 + "device": { 4429 + "hex": "158b", 4430 + "value": 5515 4431 + }, 4432 + "sub_device": { 4433 + "hex": "000a", 4434 + "value": 10 4435 + }, 4436 + "model": "AMD USB Controller", 4437 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.4", 4438 + "sysfs_bus_id": "0000:c5:00.4", 4439 + "sysfs_iommu_group_id": 29, 4440 + "detail": { 4441 + "function": 4, 4442 + "command": 1030, 4443 + "header_type": 0, 4444 + "secondary_bus": 0, 4445 + "prog_if": 48 4446 + }, 4447 + "driver": "xhci_hcd", 4448 + "driver_module": "xhci_pci", 4449 + "drivers": [ 4450 + "xhci_hcd" 4451 + ], 4452 + "driver_modules": [ 4453 + "xhci_pci" 4454 + ], 4455 + "module_alias": "pci:v00001022d0000158Bsv0000F111sd0000000Abc0Csc03i30" 4456 + }, 4457 + { 4458 + "index": 65, 4459 + "attached_to": 53, 4460 + "class_list": [ 4461 + "usb_controller", 4462 + "pci" 4463 + ], 4464 + "bus_type": { 4465 + "hex": "0004", 4466 + "name": "PCI", 4467 + "value": 4 4468 + }, 4469 + "slot": { 4470 + "bus": 197, 4471 + "number": 0 4472 + }, 4473 + "base_class": { 4474 + "hex": "000c", 4475 + "name": "Serial bus controller", 4476 + "value": 12 4477 + }, 4478 + "sub_class": { 4479 + "hex": "0003", 4480 + "name": "USB Controller", 4481 + "value": 3 4482 + }, 4483 + "pci_interface": { 4484 + "hex": "0030", 4485 + "value": 48 4486 + }, 4487 + "vendor": { 4488 + "hex": "1022", 4489 + "name": "AMD", 4490 + "value": 4130 4491 + }, 4492 + "sub_vendor": { 4493 + "hex": "f111", 4494 + "value": 61713 4495 + }, 4496 + "device": { 4497 + "hex": "1588", 4498 + "value": 5512 4499 + }, 4500 + "sub_device": { 4501 + "hex": "000a", 4502 + "value": 10 4503 + }, 4504 + "model": "AMD USB Controller", 4505 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.0", 4506 + "sysfs_bus_id": "0000:c5:00.0", 4507 + "sysfs_iommu_group_id": 27, 4508 + "detail": { 4509 + "function": 0, 4510 + "command": 1030, 4511 + "header_type": 0, 4512 + "secondary_bus": 0, 4513 + "prog_if": 48 4514 + }, 4515 + "driver": "xhci_hcd", 4516 + "driver_module": "xhci_pci", 4517 + "drivers": [ 4518 + "xhci_hcd" 4519 + ], 4520 + "driver_modules": [ 4521 + "xhci_pci" 4522 + ], 4523 + "module_alias": "pci:v00001022d00001588sv0000F111sd0000000Abc0Csc03i30" 4524 + }, 4525 + { 4526 + "index": 68, 4527 + "attached_to": 59, 4528 + "class_list": [ 4529 + "usb_controller", 4530 + "pci" 4531 + ], 4532 + "bus_type": { 4533 + "hex": "0004", 4534 + "name": "PCI", 4535 + "value": 4 4536 + }, 4537 + "slot": { 4538 + "bus": 195, 4539 + "number": 0 4540 + }, 4541 + "base_class": { 4542 + "hex": "000c", 4543 + "name": "Serial bus controller", 4544 + "value": 12 4545 + }, 4546 + "sub_class": { 4547 + "hex": "0003", 4548 + "name": "USB Controller", 4549 + "value": 3 4550 + }, 4551 + "pci_interface": { 4552 + "hex": "0030", 4553 + "value": 48 4554 + }, 4555 + "vendor": { 4556 + "hex": "1022", 4557 + "name": "AMD", 4558 + "value": 4130 4559 + }, 4560 + "sub_vendor": { 4561 + "hex": "f111", 4562 + "value": 61713 4563 + }, 4564 + "device": { 4565 + "hex": "1587", 4566 + "value": 5511 4567 + }, 4568 + "sub_device": { 4569 + "hex": "000a", 4570 + "value": 10 4571 + }, 4572 + "model": "AMD USB Controller", 4573 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c3:00.4", 4574 + "sysfs_bus_id": "0000:c3:00.4", 4575 + "sysfs_iommu_group_id": 23, 4576 + "detail": { 4577 + "function": 4, 4578 + "command": 1030, 4579 + "header_type": 0, 4580 + "secondary_bus": 0, 4581 + "prog_if": 48 4582 + }, 4583 + "driver": "xhci_hcd", 4584 + "driver_module": "xhci_pci", 4585 + "drivers": [ 4586 + "xhci_hcd" 4587 + ], 4588 + "driver_modules": [ 4589 + "xhci_pci" 4590 + ], 4591 + "module_alias": "pci:v00001022d00001587sv0000F111sd0000000Abc0Csc03i30" 4592 + }, 4593 + { 4594 + "index": 75, 4595 + "attached_to": 53, 4596 + "class_list": [ 4597 + "usb_controller", 4598 + "pci" 4599 + ], 4600 + "bus_type": { 4601 + "hex": "0004", 4602 + "name": "PCI", 4603 + "value": 4 4604 + }, 4605 + "slot": { 4606 + "bus": 197, 4607 + "number": 0 4608 + }, 4609 + "base_class": { 4610 + "hex": "000c", 4611 + "name": "Serial bus controller", 4612 + "value": 12 4613 + }, 4614 + "sub_class": { 4615 + "hex": "0003", 4616 + "name": "USB Controller", 4617 + "value": 3 4618 + }, 4619 + "pci_interface": { 4620 + "hex": "0040", 4621 + "value": 64 4622 + }, 4623 + "vendor": { 4624 + "hex": "1022", 4625 + "name": "AMD", 4626 + "value": 4130 4627 + }, 4628 + "sub_vendor": { 4629 + "hex": "f111", 4630 + "value": 61713 4631 + }, 4632 + "device": { 4633 + "hex": "158d", 4634 + "value": 5517 4635 + }, 4636 + "sub_device": { 4637 + "hex": "000a", 4638 + "value": 10 4639 + }, 4640 + "model": "AMD USB Controller", 4641 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c5:00.5", 4642 + "sysfs_bus_id": "0000:c5:00.5", 4643 + "sysfs_iommu_group_id": 30, 4644 + "detail": { 4645 + "function": 5, 4646 + "command": 1030, 4647 + "header_type": 0, 4648 + "secondary_bus": 0, 4649 + "prog_if": 64 4650 + }, 4651 + "driver": "thunderbolt", 4652 + "driver_module": "thunderbolt", 4653 + "drivers": [ 4654 + "thunderbolt" 4655 + ], 4656 + "driver_modules": [ 4657 + "thunderbolt" 4658 + ], 4659 + "module_alias": "pci:v00001022d0000158Dsv0000F111sd0000000Abc0Csc03i40" 4660 + } 4661 + ] 4662 + }, 4663 + "smbios": { 4664 + "bios": { 4665 + "handle": 0, 4666 + "vendor": "INSYDE Corp.", 4667 + "version": "03.03", 4668 + "date": "09/16/2025", 4669 + "features": [ 4670 + "PCI supported", 4671 + "BIOS flashable", 4672 + "BIOS shadowing allowed", 4673 + "CD boot supported", 4674 + "Selectable boot supported", 4675 + "8042 Keyboard Services supported", 4676 + "CGA/Mono Video supported", 4677 + "ACPI supported", 4678 + "USB Legacy supported", 4679 + "BIOS Boot Spec supported" 4680 + ], 4681 + "start_address": "0x0", 4682 + "rom_size": 16777216 4683 + }, 4684 + "board": { 4685 + "handle": 2, 4686 + "manufacturer": "Framework", 4687 + "product": "FRANMFCP06", 4688 + "version": "A6", 4689 + "board_type": { 4690 + "hex": "000a", 4691 + "name": "Motherboard", 4692 + "value": 10 4693 + }, 4694 + "features": [ 4695 + "Hosting Board", 4696 + "Replaceable" 4697 + ], 4698 + "location": "*", 4699 + "chassis": 3 4700 + }, 4701 + "cache": [ 4702 + { 4703 + "handle": 5, 4704 + "socket": "L1 - Cache", 4705 + "size_max": 1280, 4706 + "size_current": 1280, 4707 + "speed": 1, 4708 + "mode": { 4709 + "hex": "0001", 4710 + "name": "Write Back", 4711 + "value": 1 4712 + }, 4713 + "enabled": true, 4714 + "location": { 4715 + "hex": "0000", 4716 + "name": "Internal", 4717 + "value": 0 4718 + }, 4719 + "socketed": false, 4720 + "level": 0, 4721 + "ecc": { 4722 + "hex": "0006", 4723 + "name": "Multi-bit", 4724 + "value": 6 4725 + }, 4726 + "cache_type": { 4727 + "hex": "0005", 4728 + "name": "Unified", 4729 + "value": 5 4730 + }, 4731 + "associativity": { 4732 + "hex": "0007", 4733 + "name": "8-way Set-Associative", 4734 + "value": 7 4735 + }, 4736 + "sram_type_current": [ 4737 + "Pipeline Burst" 4738 + ], 4739 + "sram_type_supported": [ 4740 + "Pipeline Burst" 4741 + ] 4742 + }, 4743 + { 4744 + "handle": 6, 4745 + "socket": "L2 - Cache", 4746 + "size_max": 16384, 4747 + "size_current": 16384, 4748 + "speed": 1, 4749 + "mode": { 4750 + "hex": "0001", 4751 + "name": "Write Back", 4752 + "value": 1 4753 + }, 4754 + "enabled": true, 4755 + "location": { 4756 + "hex": "0000", 4757 + "name": "Internal", 4758 + "value": 0 4759 + }, 4760 + "socketed": false, 4761 + "level": 1, 4762 + "ecc": { 4763 + "hex": "0006", 4764 + "name": "Multi-bit", 4765 + "value": 6 4766 + }, 4767 + "cache_type": { 4768 + "hex": "0005", 4769 + "name": "Unified", 4770 + "value": 5 4771 + }, 4772 + "associativity": { 4773 + "hex": "0008", 4774 + "name": "16-way Set-Associative", 4775 + "value": 8 4776 + }, 4777 + "sram_type_current": [ 4778 + "Pipeline Burst" 4779 + ], 4780 + "sram_type_supported": [ 4781 + "Pipeline Burst" 4782 + ] 4783 + }, 4784 + { 4785 + "handle": 7, 4786 + "socket": "L3 - Cache", 4787 + "size_max": 65536, 4788 + "size_current": 65536, 4789 + "speed": 1, 4790 + "mode": { 4791 + "hex": "0001", 4792 + "name": "Write Back", 4793 + "value": 1 4794 + }, 4795 + "enabled": true, 4796 + "location": { 4797 + "hex": "0000", 4798 + "name": "Internal", 4799 + "value": 0 4800 + }, 4801 + "socketed": false, 4802 + "level": 2, 4803 + "ecc": { 4804 + "hex": "0006", 4805 + "name": "Multi-bit", 4806 + "value": 6 4807 + }, 4808 + "cache_type": { 4809 + "hex": "0005", 4810 + "name": "Unified", 4811 + "value": 5 4812 + }, 4813 + "associativity": { 4814 + "hex": "0008", 4815 + "name": "16-way Set-Associative", 4816 + "value": 8 4817 + }, 4818 + "sram_type_current": [ 4819 + "Pipeline Burst" 4820 + ], 4821 + "sram_type_supported": [ 4822 + "Pipeline Burst" 4823 + ] 4824 + } 4825 + ], 4826 + "chassis": [ 4827 + { 4828 + "handle": 3, 4829 + "manufacturer": "Framework", 4830 + "version": "A6", 4831 + "chassis_type": { 4832 + "hex": "0023", 4833 + "name": "Other", 4834 + "value": 35 4835 + }, 4836 + "lock_present": false, 4837 + "bootup_state": { 4838 + "hex": "0003", 4839 + "name": "Safe", 4840 + "value": 3 4841 + }, 4842 + "power_state": { 4843 + "hex": "0003", 4844 + "name": "Safe", 4845 + "value": 3 4846 + }, 4847 + "thermal_state": { 4848 + "hex": "0003", 4849 + "name": "Safe", 4850 + "value": 3 4851 + }, 4852 + "security_state": { 4853 + "hex": "0003", 4854 + "name": "None", 4855 + "value": 3 4856 + }, 4857 + "oem": "0x0" 4858 + } 4859 + ], 4860 + "config": { 4861 + "handle": 17, 4862 + "options": [ 4863 + "String1 for Type12 Equipment Manufacturer", 4864 + "String2 for Type12 Equipment Manufacturer", 4865 + "String3 for Type12 Equipment Manufacturer", 4866 + "String4 for Type12 Equipment Manufacturer" 4867 + ] 4868 + }, 4869 + "language": [ 4870 + { 4871 + "handle": 18, 4872 + "languages": [ 4873 + "en|US|iso8859-1,0", 4874 + "fr|FR|iso8859-1,0", 4875 + "zh|TW|unicode,0", 4876 + "ja|JP|unicode,0" 4877 + ] 4878 + } 4879 + ], 4880 + "memory_array": [ 4881 + { 4882 + "handle": 19, 4883 + "location": { 4884 + "hex": "0003", 4885 + "name": "Motherboard", 4886 + "value": 3 4887 + }, 4888 + "usage": { 4889 + "hex": "0003", 4890 + "name": "System memory", 4891 + "value": 3 4892 + }, 4893 + "ecc": { 4894 + "hex": "0003", 4895 + "name": "None", 4896 + "value": 3 4897 + }, 4898 + "max_size": "0x4000000", 4899 + "error_handle": 28, 4900 + "slots": 8 4901 + } 4902 + ], 4903 + "memory_array_mapped_address": [ 4904 + { 4905 + "handle": 37, 4906 + "array_handle": 19, 4907 + "start_address": "0x0", 4908 + "end_address": "0x2000000000", 4909 + "part_width": 8 4910 + } 4911 + ], 4912 + "memory_device": [ 4913 + { 4914 + "handle": 20, 4915 + "location": "DIMM 0", 4916 + "bank_location": "P0 CHANNEL A", 4917 + "manufacturer": "Micron Technology", 4918 + "part_number": "MT62F4G32D8DV-023 WT", 4919 + "array_handle": 19, 4920 + "error_handle": 29, 4921 + "width": 32, 4922 + "ecc_bits": 0, 4923 + "size": 16777216, 4924 + "form_factor": { 4925 + "hex": "0001", 4926 + "name": "Other", 4927 + "value": 1 4928 + }, 4929 + "set": 0, 4930 + "memory_type": { 4931 + "hex": "0023", 4932 + "name": "Other", 4933 + "value": 35 4934 + }, 4935 + "memory_type_details": [ 4936 + "Synchronous" 4937 + ], 4938 + "speed": 8000 4939 + }, 4940 + { 4941 + "handle": 21, 4942 + "location": "DIMM 0", 4943 + "bank_location": "P0 CHANNEL B", 4944 + "manufacturer": "Micron Technology", 4945 + "part_number": "MT62F4G32D8DV-023 WT", 4946 + "array_handle": 19, 4947 + "error_handle": 30, 4948 + "width": 32, 4949 + "ecc_bits": 0, 4950 + "size": 16777216, 4951 + "form_factor": { 4952 + "hex": "0001", 4953 + "name": "Other", 4954 + "value": 1 4955 + }, 4956 + "set": 0, 4957 + "memory_type": { 4958 + "hex": "0023", 4959 + "name": "Other", 4960 + "value": 35 4961 + }, 4962 + "memory_type_details": [ 4963 + "Synchronous" 4964 + ], 4965 + "speed": 8000 4966 + }, 4967 + { 4968 + "handle": 22, 4969 + "location": "DIMM 0", 4970 + "bank_location": "P0 CHANNEL C", 4971 + "manufacturer": "Micron Technology", 4972 + "part_number": "MT62F4G32D8DV-023 WT", 4973 + "array_handle": 19, 4974 + "error_handle": 31, 4975 + "width": 32, 4976 + "ecc_bits": 0, 4977 + "size": 16777216, 4978 + "form_factor": { 4979 + "hex": "0001", 4980 + "name": "Other", 4981 + "value": 1 4982 + }, 4983 + "set": 0, 4984 + "memory_type": { 4985 + "hex": "0023", 4986 + "name": "Other", 4987 + "value": 35 4988 + }, 4989 + "memory_type_details": [ 4990 + "Synchronous" 4991 + ], 4992 + "speed": 8000 4993 + }, 4994 + { 4995 + "handle": 23, 4996 + "location": "DIMM 0", 4997 + "bank_location": "P0 CHANNEL D", 4998 + "manufacturer": "Micron Technology", 4999 + "part_number": "MT62F4G32D8DV-023 WT", 5000 + "array_handle": 19, 5001 + "error_handle": 32, 5002 + "width": 32, 5003 + "ecc_bits": 0, 5004 + "size": 16777216, 5005 + "form_factor": { 5006 + "hex": "0001", 5007 + "name": "Other", 5008 + "value": 1 5009 + }, 5010 + "set": 0, 5011 + "memory_type": { 5012 + "hex": "0023", 5013 + "name": "Other", 5014 + "value": 35 5015 + }, 5016 + "memory_type_details": [ 5017 + "Synchronous" 5018 + ], 5019 + "speed": 8000 5020 + }, 5021 + { 5022 + "handle": 24, 5023 + "location": "DIMM 0", 5024 + "bank_location": "P0 CHANNEL E", 5025 + "manufacturer": "Micron Technology", 5026 + "part_number": "MT62F4G32D8DV-023 WT", 5027 + "array_handle": 19, 5028 + "error_handle": 33, 5029 + "width": 32, 5030 + "ecc_bits": 0, 5031 + "size": 16777216, 5032 + "form_factor": { 5033 + "hex": "0001", 5034 + "name": "Other", 5035 + "value": 1 5036 + }, 5037 + "set": 0, 5038 + "memory_type": { 5039 + "hex": "0023", 5040 + "name": "Other", 5041 + "value": 35 5042 + }, 5043 + "memory_type_details": [ 5044 + "Synchronous" 5045 + ], 5046 + "speed": 8000 5047 + }, 5048 + { 5049 + "handle": 25, 5050 + "location": "DIMM 0", 5051 + "bank_location": "P0 CHANNEL F", 5052 + "manufacturer": "Micron Technology", 5053 + "part_number": "MT62F4G32D8DV-023 WT", 5054 + "array_handle": 19, 5055 + "error_handle": 34, 5056 + "width": 32, 5057 + "ecc_bits": 0, 5058 + "size": 16777216, 5059 + "form_factor": { 5060 + "hex": "0001", 5061 + "name": "Other", 5062 + "value": 1 5063 + }, 5064 + "set": 0, 5065 + "memory_type": { 5066 + "hex": "0023", 5067 + "name": "Other", 5068 + "value": 35 5069 + }, 5070 + "memory_type_details": [ 5071 + "Synchronous" 5072 + ], 5073 + "speed": 8000 5074 + }, 5075 + { 5076 + "handle": 26, 5077 + "location": "DIMM 0", 5078 + "bank_location": "P0 CHANNEL G", 5079 + "manufacturer": "Micron Technology", 5080 + "part_number": "MT62F4G32D8DV-023 WT", 5081 + "array_handle": 19, 5082 + "error_handle": 35, 5083 + "width": 32, 5084 + "ecc_bits": 0, 5085 + "size": 16777216, 5086 + "form_factor": { 5087 + "hex": "0001", 5088 + "name": "Other", 5089 + "value": 1 5090 + }, 5091 + "set": 0, 5092 + "memory_type": { 5093 + "hex": "0023", 5094 + "name": "Other", 5095 + "value": 35 5096 + }, 5097 + "memory_type_details": [ 5098 + "Synchronous" 5099 + ], 5100 + "speed": 8000 5101 + }, 5102 + { 5103 + "handle": 27, 5104 + "location": "DIMM 0", 5105 + "bank_location": "P0 CHANNEL H", 5106 + "manufacturer": "Micron Technology", 5107 + "part_number": "MT62F4G32D8DV-023 WT", 5108 + "array_handle": 19, 5109 + "error_handle": 36, 5110 + "width": 32, 5111 + "ecc_bits": 0, 5112 + "size": 16777216, 5113 + "form_factor": { 5114 + "hex": "0001", 5115 + "name": "Other", 5116 + "value": 1 5117 + }, 5118 + "set": 0, 5119 + "memory_type": { 5120 + "hex": "0023", 5121 + "name": "Other", 5122 + "value": 35 5123 + }, 5124 + "memory_type_details": [ 5125 + "Synchronous" 5126 + ], 5127 + "speed": 8000 5128 + } 5129 + ], 5130 + "memory_device_mapped_address": [ 5131 + { 5132 + "handle": 38, 5133 + "memory_device_handle": 20, 5134 + "array_map_handle": 37, 5135 + "start_address": "0x0", 5136 + "end_address": "0x2000000000", 5137 + "row_position": 255, 5138 + "interleave_position": 255, 5139 + "interleave_depth": 255 5140 + }, 5141 + { 5142 + "handle": 39, 5143 + "memory_device_handle": 21, 5144 + "array_map_handle": 37, 5145 + "start_address": "0x0", 5146 + "end_address": "0x2000000000", 5147 + "row_position": 255, 5148 + "interleave_position": 255, 5149 + "interleave_depth": 255 5150 + }, 5151 + { 5152 + "handle": 40, 5153 + "memory_device_handle": 22, 5154 + "array_map_handle": 37, 5155 + "start_address": "0x0", 5156 + "end_address": "0x2000000000", 5157 + "row_position": 255, 5158 + "interleave_position": 255, 5159 + "interleave_depth": 255 5160 + }, 5161 + { 5162 + "handle": 41, 5163 + "memory_device_handle": 23, 5164 + "array_map_handle": 37, 5165 + "start_address": "0x0", 5166 + "end_address": "0x2000000000", 5167 + "row_position": 255, 5168 + "interleave_position": 255, 5169 + "interleave_depth": 255 5170 + }, 5171 + { 5172 + "handle": 42, 5173 + "memory_device_handle": 24, 5174 + "array_map_handle": 37, 5175 + "start_address": "0x0", 5176 + "end_address": "0x2000000000", 5177 + "row_position": 255, 5178 + "interleave_position": 255, 5179 + "interleave_depth": 255 5180 + }, 5181 + { 5182 + "handle": 43, 5183 + "memory_device_handle": 25, 5184 + "array_map_handle": 37, 5185 + "start_address": "0x0", 5186 + "end_address": "0x2000000000", 5187 + "row_position": 255, 5188 + "interleave_position": 255, 5189 + "interleave_depth": 255 5190 + }, 5191 + { 5192 + "handle": 44, 5193 + "memory_device_handle": 26, 5194 + "array_map_handle": 37, 5195 + "start_address": "0x0", 5196 + "end_address": "0x2000000000", 5197 + "row_position": 255, 5198 + "interleave_position": 255, 5199 + "interleave_depth": 255 5200 + }, 5201 + { 5202 + "handle": 45, 5203 + "memory_device_handle": 27, 5204 + "array_map_handle": 37, 5205 + "start_address": "0x0", 5206 + "end_address": "0x2000000000", 5207 + "row_position": 255, 5208 + "interleave_position": 255, 5209 + "interleave_depth": 255 5210 + } 5211 + ], 5212 + "memory_error": [ 5213 + { 5214 + "handle": 28, 5215 + "error_type": { 5216 + "hex": "0003", 5217 + "name": "OK", 5218 + "value": 3 5219 + }, 5220 + "granularity": { 5221 + "hex": "0002", 5222 + "name": "Unknown", 5223 + "value": 2 5224 + }, 5225 + "operation": { 5226 + "hex": "0002", 5227 + "name": "Unknown", 5228 + "value": 2 5229 + }, 5230 + "syndrome": 0, 5231 + "array_address": "0x80000000", 5232 + "device_address": "0x80000000", 5233 + "range": 2147483648 5234 + }, 5235 + { 5236 + "handle": 29, 5237 + "error_type": { 5238 + "hex": "0003", 5239 + "name": "OK", 5240 + "value": 3 5241 + }, 5242 + "granularity": { 5243 + "hex": "0002", 5244 + "name": "Unknown", 5245 + "value": 2 5246 + }, 5247 + "operation": { 5248 + "hex": "0002", 5249 + "name": "Unknown", 5250 + "value": 2 5251 + }, 5252 + "syndrome": 0, 5253 + "array_address": "0x80000000", 5254 + "device_address": "0x80000000", 5255 + "range": 2147483648 5256 + }, 5257 + { 5258 + "handle": 30, 5259 + "error_type": { 5260 + "hex": "0003", 5261 + "name": "OK", 5262 + "value": 3 5263 + }, 5264 + "granularity": { 5265 + "hex": "0002", 5266 + "name": "Unknown", 5267 + "value": 2 5268 + }, 5269 + "operation": { 5270 + "hex": "0002", 5271 + "name": "Unknown", 5272 + "value": 2 5273 + }, 5274 + "syndrome": 0, 5275 + "array_address": "0x80000000", 5276 + "device_address": "0x80000000", 5277 + "range": 2147483648 5278 + }, 5279 + { 5280 + "handle": 31, 5281 + "error_type": { 5282 + "hex": "0003", 5283 + "name": "OK", 5284 + "value": 3 5285 + }, 5286 + "granularity": { 5287 + "hex": "0002", 5288 + "name": "Unknown", 5289 + "value": 2 5290 + }, 5291 + "operation": { 5292 + "hex": "0002", 5293 + "name": "Unknown", 5294 + "value": 2 5295 + }, 5296 + "syndrome": 0, 5297 + "array_address": "0x80000000", 5298 + "device_address": "0x80000000", 5299 + "range": 2147483648 5300 + }, 5301 + { 5302 + "handle": 32, 5303 + "error_type": { 5304 + "hex": "0003", 5305 + "name": "OK", 5306 + "value": 3 5307 + }, 5308 + "granularity": { 5309 + "hex": "0002", 5310 + "name": "Unknown", 5311 + "value": 2 5312 + }, 5313 + "operation": { 5314 + "hex": "0002", 5315 + "name": "Unknown", 5316 + "value": 2 5317 + }, 5318 + "syndrome": 0, 5319 + "array_address": "0x80000000", 5320 + "device_address": "0x80000000", 5321 + "range": 2147483648 5322 + }, 5323 + { 5324 + "handle": 33, 5325 + "error_type": { 5326 + "hex": "0003", 5327 + "name": "OK", 5328 + "value": 3 5329 + }, 5330 + "granularity": { 5331 + "hex": "0002", 5332 + "name": "Unknown", 5333 + "value": 2 5334 + }, 5335 + "operation": { 5336 + "hex": "0002", 5337 + "name": "Unknown", 5338 + "value": 2 5339 + }, 5340 + "syndrome": 0, 5341 + "array_address": "0x80000000", 5342 + "device_address": "0x80000000", 5343 + "range": 2147483648 5344 + }, 5345 + { 5346 + "handle": 34, 5347 + "error_type": { 5348 + "hex": "0003", 5349 + "name": "OK", 5350 + "value": 3 5351 + }, 5352 + "granularity": { 5353 + "hex": "0002", 5354 + "name": "Unknown", 5355 + "value": 2 5356 + }, 5357 + "operation": { 5358 + "hex": "0002", 5359 + "name": "Unknown", 5360 + "value": 2 5361 + }, 5362 + "syndrome": 0, 5363 + "array_address": "0x80000000", 5364 + "device_address": "0x80000000", 5365 + "range": 2147483648 5366 + }, 5367 + { 5368 + "handle": 35, 5369 + "error_type": { 5370 + "hex": "0003", 5371 + "name": "OK", 5372 + "value": 3 5373 + }, 5374 + "granularity": { 5375 + "hex": "0002", 5376 + "name": "Unknown", 5377 + "value": 2 5378 + }, 5379 + "operation": { 5380 + "hex": "0002", 5381 + "name": "Unknown", 5382 + "value": 2 5383 + }, 5384 + "syndrome": 0, 5385 + "array_address": "0x80000000", 5386 + "device_address": "0x80000000", 5387 + "range": 2147483648 5388 + }, 5389 + { 5390 + "handle": 36, 5391 + "error_type": { 5392 + "hex": "0003", 5393 + "name": "OK", 5394 + "value": 3 5395 + }, 5396 + "granularity": { 5397 + "hex": "0002", 5398 + "name": "Unknown", 5399 + "value": 2 5400 + }, 5401 + "operation": { 5402 + "hex": "0002", 5403 + "name": "Unknown", 5404 + "value": 2 5405 + }, 5406 + "syndrome": 0, 5407 + "array_address": "0x80000000", 5408 + "device_address": "0x80000000", 5409 + "range": 2147483648 5410 + } 5411 + ], 5412 + "pointing_device": [ 5413 + { 5414 + "handle": 46, 5415 + "mouse_type": { 5416 + "hex": "0007", 5417 + "name": "Touch Pad", 5418 + "value": 7 5419 + }, 5420 + "interface": { 5421 + "hex": "0004", 5422 + "name": "PS/2", 5423 + "value": 4 5424 + }, 5425 + "buttons": 4 5426 + } 5427 + ], 5428 + "port_connector": [ 5429 + { 5430 + "handle": 8, 5431 + "port_type": { 5432 + "hex": "0010", 5433 + "name": "USB", 5434 + "value": 16 5435 + }, 5436 + "internal_reference_designator": "USBC0", 5437 + "external_connector_type": { 5438 + "hex": "0012", 5439 + "name": "Access Bus [USB]", 5440 + "value": 18 5441 + }, 5442 + "external_reference_designator": "USB" 5443 + }, 5444 + { 5445 + "handle": 9, 5446 + "port_type": { 5447 + "hex": "0010", 5448 + "name": "USB", 5449 + "value": 16 5450 + }, 5451 + "internal_reference_designator": "USBC1", 5452 + "external_connector_type": { 5453 + "hex": "0012", 5454 + "name": "Access Bus [USB]", 5455 + "value": 18 5456 + }, 5457 + "external_reference_designator": "USB" 5458 + }, 5459 + { 5460 + "handle": 10, 5461 + "port_type": { 5462 + "hex": "0010", 5463 + "name": "USB", 5464 + "value": 16 5465 + }, 5466 + "internal_reference_designator": "USBC2", 5467 + "external_connector_type": { 5468 + "hex": "0012", 5469 + "name": "Access Bus [USB]", 5470 + "value": 18 5471 + }, 5472 + "external_reference_designator": "USB" 5473 + }, 5474 + { 5475 + "handle": 11, 5476 + "port_type": { 5477 + "hex": "0010", 5478 + "name": "USB", 5479 + "value": 16 5480 + }, 5481 + "internal_reference_designator": "USBC3", 5482 + "external_connector_type": { 5483 + "hex": "0012", 5484 + "name": "Access Bus [USB]", 5485 + "value": 18 5486 + }, 5487 + "external_reference_designator": "USB" 5488 + } 5489 + ], 5490 + "processor": [ 5491 + { 5492 + "handle": 4, 5493 + "socket": "FP11LPDDR5x", 5494 + "socket_type": { 5495 + "hex": "0001", 5496 + "name": "Other", 5497 + "value": 1 5498 + }, 5499 + "socket_populated": true, 5500 + "manufacturer": "Advanced Micro Devices, Inc.", 5501 + "version": "AMD RYZEN AI MAX+ 395 w/ Radeon 8060S", 5502 + "part": "AMD FWTS", 5503 + "processor_type": { 5504 + "hex": "0003", 5505 + "name": "CPU", 5506 + "value": 3 5507 + }, 5508 + "processor_family": { 5509 + "hex": "006b", 5510 + "name": "Other", 5511 + "value": 107 5512 + }, 5513 + "processor_status": { 5514 + "hex": "0001", 5515 + "name": "Enabled", 5516 + "value": 1 5517 + }, 5518 + "clock_ext": 100, 5519 + "clock_max": 5150, 5520 + "cache_handle_l1": 5, 5521 + "cache_handle_l2": 6, 5522 + "cache_handle_l3": 7 5523 + } 5524 + ], 5525 + "slot": [ 5526 + { 5527 + "handle": 12, 5528 + "designation": "JWLAN", 5529 + "slot_type": { 5530 + "hex": "0015", 5531 + "name": "Other", 5532 + "value": 21 5533 + }, 5534 + "bus_width": { 5535 + "hex": "0009", 5536 + "name": "Other", 5537 + "value": 9 5538 + }, 5539 + "usage": { 5540 + "hex": "0003", 5541 + "name": "Available", 5542 + "value": 3 5543 + }, 5544 + "length": { 5545 + "hex": "0003", 5546 + "name": "Short", 5547 + "value": 3 5548 + }, 5549 + "id": 1, 5550 + "features": [ 5551 + "3.3 V", 5552 + "PME#" 5553 + ] 5554 + }, 5555 + { 5556 + "handle": 13, 5557 + "designation": "JSSD1", 5558 + "slot_type": { 5559 + "hex": "0017", 5560 + "name": "Other", 5561 + "value": 23 5562 + }, 5563 + "bus_width": { 5564 + "hex": "000a", 5565 + "name": "Other", 5566 + "value": 10 5567 + }, 5568 + "usage": { 5569 + "hex": "0003", 5570 + "name": "Available", 5571 + "value": 3 5572 + }, 5573 + "length": { 5574 + "hex": "0004", 5575 + "name": "Long", 5576 + "value": 4 5577 + }, 5578 + "id": 2, 5579 + "features": [ 5580 + "3.3 V", 5581 + "PME#" 5582 + ] 5583 + }, 5584 + { 5585 + "handle": 14, 5586 + "designation": "JSSD2", 5587 + "slot_type": { 5588 + "hex": "0017", 5589 + "name": "Other", 5590 + "value": 23 5591 + }, 5592 + "bus_width": { 5593 + "hex": "000a", 5594 + "name": "Other", 5595 + "value": 10 5596 + }, 5597 + "usage": { 5598 + "hex": "0003", 5599 + "name": "Available", 5600 + "value": 3 5601 + }, 5602 + "length": { 5603 + "hex": "0004", 5604 + "name": "Long", 5605 + "value": 4 5606 + }, 5607 + "id": 3, 5608 + "features": [ 5609 + "3.3 V", 5610 + "PME#" 5611 + ] 5612 + }, 5613 + { 5614 + "handle": 15, 5615 + "designation": "PCIe x4 slot", 5616 + "slot_type": { 5617 + "hex": "00bb", 5618 + "name": "Other", 5619 + "value": 187 5620 + }, 5621 + "bus_width": { 5622 + "hex": "000a", 5623 + "name": "Other", 5624 + "value": 10 5625 + }, 5626 + "usage": { 5627 + "hex": "0003", 5628 + "name": "Available", 5629 + "value": 3 5630 + }, 5631 + "length": { 5632 + "hex": "0001", 5633 + "name": "Other", 5634 + "value": 1 5635 + }, 5636 + "id": 4, 5637 + "features": [ 5638 + "3.3 V", 5639 + "PME#" 5640 + ] 5641 + } 5642 + ], 5643 + "system": { 5644 + "handle": 1, 5645 + "manufacturer": "Framework", 5646 + "product": "Desktop (AMD Ryzen AI Max 300 Series)", 5647 + "version": "A6", 5648 + "wake_up": { 5649 + "hex": "0006", 5650 + "name": "Power Switch", 5651 + "value": 6 5652 + } 5653 + } 5654 + } 5655 + }
+3
nix/hosts/hercules/users/tghanken/home-configuration.nix
··· 1 + {inputs, ...}: { 2 + imports = [inputs.self.homeModules.tghanken]; 3 + }
+3
nix/hosts/inwin-tower/users/tghanken/home-configuration.nix
··· 1 + {inputs, ...}: { 2 + imports = [inputs.self.homeModules.tghanken]; 3 + }
+3
nix/hosts/nixos-thinkpad/users/tghanken/home-configuration.nix
··· 1 + {inputs, ...}: { 2 + imports = [inputs.self.homeModules.tghanken]; 3 + }
+38
nix/hosts/pegasus/configuration.nix
··· 1 + { 2 + inputs, 3 + flake, 4 + ... 5 + }: { 6 + imports = [ 7 + # Standard nixos-anywhere modules 8 + inputs.disko.nixosModules.disko 9 + inputs.nixos-facter-modules.nixosModules.facter 10 + { 11 + config.facter.reportPath = 12 + if builtins.pathExists ./facter.json 13 + then ./facter.json 14 + else throw "Have you forgotten to run nixos-anywhere with `--generate-hardware-config nixos-facter ./facter.json`?"; 15 + } 16 + 17 + # Nixos hardware additions 18 + inputs.nixos-hardware.nixosModules.framework-amd-ai-300-series 19 + 20 + # Add user modules 21 + flake.modules.users.tghanken 22 + 23 + # Additional NixOs modules from this flake 24 + flake.nixosModules.bootloader 25 + flake.nixosModules.bootstrap 26 + flake.nixosModules.desktop 27 + flake.nixosModules.kernel 28 + flake.nixosModules.networking 29 + flake.nixosModules.sound 30 + ]; 31 + 32 + # Required for nixos-anywhere 33 + disko.devices = import ./disk-config.nix; 34 + networking.hostName = "pegasus"; 35 + networking.hostId = "8561a55b"; # Generate using `head -c 8 /etc/machine-id` 36 + 37 + system.stateVersion = "25.11"; # initial nixos state 38 + }
+4983
nix/hosts/pegasus/facter.json
··· 1 + { 2 + "version": 1, 3 + "system": "x86_64-linux", 4 + "virtualisation": "none", 5 + "hardware": { 6 + "bios": { 7 + "apm_info": { 8 + "supported": false, 9 + "enabled": false, 10 + "version": 0, 11 + "sub_version": 0, 12 + "bios_flags": 0 13 + }, 14 + "vbe_info": { 15 + "version": 0, 16 + "video_memory": 0 17 + }, 18 + "pnp": false, 19 + "pnp_id": 0, 20 + "lba_support": false, 21 + "low_memory_size": 0, 22 + "smbios_version": 771 23 + }, 24 + "bluetooth": [ 25 + { 26 + "index": 61, 27 + "attached_to": 59, 28 + "class_list": [ 29 + "usb", 30 + "bluetooth" 31 + ], 32 + "bus_type": { 33 + "hex": "0086", 34 + "name": "USB", 35 + "value": 134 36 + }, 37 + "slot": { 38 + "bus": 0, 39 + "number": 0 40 + }, 41 + "base_class": { 42 + "hex": "0115", 43 + "name": "Bluetooth Device", 44 + "value": 277 45 + }, 46 + "vendor": { 47 + "hex": "0e8d", 48 + "name": "MediaTek Inc.", 49 + "value": 3725 50 + }, 51 + "device": { 52 + "hex": "0717", 53 + "name": "Wireless_Device", 54 + "value": 1815 55 + }, 56 + "revision": { 57 + "hex": "0000", 58 + "name": "1.00", 59 + "value": 0 60 + }, 61 + "serial": "000000000", 62 + "model": "MediaTek Wireless_Device", 63 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-5/3-5:1.2", 64 + "sysfs_bus_id": "3-5:1.2", 65 + "resources": [ 66 + { 67 + "type": "baud", 68 + "speed": 480000000, 69 + "bits": 0, 70 + "stop_bits": 0, 71 + "parity": 0, 72 + "handshake": 0 73 + } 74 + ], 75 + "detail": { 76 + "device_class": { 77 + "hex": "00ef", 78 + "name": "miscellaneous", 79 + "value": 239 80 + }, 81 + "device_subclass": { 82 + "hex": "0002", 83 + "name": "comm", 84 + "value": 2 85 + }, 86 + "device_protocol": 1, 87 + "interface_class": { 88 + "hex": "00e0", 89 + "name": "wireless", 90 + "value": 224 91 + }, 92 + "interface_subclass": { 93 + "hex": "0001", 94 + "name": "audio", 95 + "value": 1 96 + }, 97 + "interface_protocol": 1, 98 + "interface_number": 2, 99 + "interface_alternate_setting": 1, 100 + "interface_association": { 101 + "function_class": { 102 + "hex": "00e0", 103 + "name": "wireless", 104 + "value": 224 105 + }, 106 + "function_subclass": { 107 + "hex": "0001", 108 + "name": "audio", 109 + "value": 1 110 + }, 111 + "function_protocol": 1, 112 + "interface_count": 3, 113 + "first_interface": 0 114 + } 115 + }, 116 + "hotplug": "usb", 117 + "driver": "btusb", 118 + "driver_module": "btusb", 119 + "drivers": [ 120 + "btusb" 121 + ], 122 + "driver_modules": [ 123 + "btusb" 124 + ], 125 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in02" 126 + }, 127 + { 128 + "index": 64, 129 + "attached_to": 59, 130 + "class_list": [ 131 + "usb", 132 + "bluetooth" 133 + ], 134 + "bus_type": { 135 + "hex": "0086", 136 + "name": "USB", 137 + "value": 134 138 + }, 139 + "slot": { 140 + "bus": 0, 141 + "number": 0 142 + }, 143 + "base_class": { 144 + "hex": "0115", 145 + "name": "Bluetooth Device", 146 + "value": 277 147 + }, 148 + "vendor": { 149 + "hex": "0e8d", 150 + "name": "MediaTek Inc.", 151 + "value": 3725 152 + }, 153 + "device": { 154 + "hex": "0717", 155 + "name": "Wireless_Device", 156 + "value": 1815 157 + }, 158 + "revision": { 159 + "hex": "0000", 160 + "name": "1.00", 161 + "value": 0 162 + }, 163 + "serial": "000000000", 164 + "model": "MediaTek Wireless_Device", 165 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-5/3-5:1.0", 166 + "sysfs_bus_id": "3-5:1.0", 167 + "resources": [ 168 + { 169 + "type": "baud", 170 + "speed": 480000000, 171 + "bits": 0, 172 + "stop_bits": 0, 173 + "parity": 0, 174 + "handshake": 0 175 + } 176 + ], 177 + "detail": { 178 + "device_class": { 179 + "hex": "00ef", 180 + "name": "miscellaneous", 181 + "value": 239 182 + }, 183 + "device_subclass": { 184 + "hex": "0002", 185 + "name": "comm", 186 + "value": 2 187 + }, 188 + "device_protocol": 1, 189 + "interface_class": { 190 + "hex": "00e0", 191 + "name": "wireless", 192 + "value": 224 193 + }, 194 + "interface_subclass": { 195 + "hex": "0001", 196 + "name": "audio", 197 + "value": 1 198 + }, 199 + "interface_protocol": 1, 200 + "interface_number": 0, 201 + "interface_alternate_setting": 0, 202 + "interface_association": { 203 + "function_class": { 204 + "hex": "00e0", 205 + "name": "wireless", 206 + "value": 224 207 + }, 208 + "function_subclass": { 209 + "hex": "0001", 210 + "name": "audio", 211 + "value": 1 212 + }, 213 + "function_protocol": 1, 214 + "interface_count": 3, 215 + "first_interface": 0 216 + } 217 + }, 218 + "hotplug": "usb", 219 + "driver": "btusb", 220 + "driver_module": "btusb", 221 + "drivers": [ 222 + "btusb" 223 + ], 224 + "driver_modules": [ 225 + "btusb" 226 + ], 227 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in00" 228 + }, 229 + { 230 + "index": 72, 231 + "attached_to": 59, 232 + "class_list": [ 233 + "usb", 234 + "bluetooth" 235 + ], 236 + "bus_type": { 237 + "hex": "0086", 238 + "name": "USB", 239 + "value": 134 240 + }, 241 + "slot": { 242 + "bus": 0, 243 + "number": 0 244 + }, 245 + "base_class": { 246 + "hex": "0115", 247 + "name": "Bluetooth Device", 248 + "value": 277 249 + }, 250 + "vendor": { 251 + "hex": "0e8d", 252 + "name": "MediaTek Inc.", 253 + "value": 3725 254 + }, 255 + "device": { 256 + "hex": "0717", 257 + "name": "Wireless_Device", 258 + "value": 1815 259 + }, 260 + "revision": { 261 + "hex": "0000", 262 + "name": "1.00", 263 + "value": 0 264 + }, 265 + "serial": "000000000", 266 + "model": "MediaTek Wireless_Device", 267 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-5/3-5:1.1", 268 + "sysfs_bus_id": "3-5:1.1", 269 + "resources": [ 270 + { 271 + "type": "baud", 272 + "speed": 480000000, 273 + "bits": 0, 274 + "stop_bits": 0, 275 + "parity": 0, 276 + "handshake": 0 277 + } 278 + ], 279 + "detail": { 280 + "device_class": { 281 + "hex": "00ef", 282 + "name": "miscellaneous", 283 + "value": 239 284 + }, 285 + "device_subclass": { 286 + "hex": "0002", 287 + "name": "comm", 288 + "value": 2 289 + }, 290 + "device_protocol": 1, 291 + "interface_class": { 292 + "hex": "00e0", 293 + "name": "wireless", 294 + "value": 224 295 + }, 296 + "interface_subclass": { 297 + "hex": "0001", 298 + "name": "audio", 299 + "value": 1 300 + }, 301 + "interface_protocol": 1, 302 + "interface_number": 1, 303 + "interface_alternate_setting": 0, 304 + "interface_association": { 305 + "function_class": { 306 + "hex": "00e0", 307 + "name": "wireless", 308 + "value": 224 309 + }, 310 + "function_subclass": { 311 + "hex": "0001", 312 + "name": "audio", 313 + "value": 1 314 + }, 315 + "function_protocol": 1, 316 + "interface_count": 3, 317 + "first_interface": 0 318 + } 319 + }, 320 + "hotplug": "usb", 321 + "driver": "btusb", 322 + "driver_module": "btusb", 323 + "drivers": [ 324 + "btusb" 325 + ], 326 + "driver_modules": [ 327 + "btusb" 328 + ], 329 + "module_alias": "usb:v0E8Dp0717d0100dcEFdsc02dp01icE0isc01ip01in01" 330 + } 331 + ], 332 + "bridge": [ 333 + { 334 + "index": 18, 335 + "attached_to": 0, 336 + "class_list": [ 337 + "pci", 338 + "bridge" 339 + ], 340 + "bus_type": { 341 + "hex": "0004", 342 + "name": "PCI", 343 + "value": 4 344 + }, 345 + "slot": { 346 + "bus": 0, 347 + "number": 8 348 + }, 349 + "base_class": { 350 + "hex": "0006", 351 + "name": "Bridge", 352 + "value": 6 353 + }, 354 + "sub_class": { 355 + "hex": "0000", 356 + "name": "Host bridge", 357 + "value": 0 358 + }, 359 + "vendor": { 360 + "hex": "1022", 361 + "name": "AMD", 362 + "value": 4130 363 + }, 364 + "device": { 365 + "hex": "1124", 366 + "value": 4388 367 + }, 368 + "model": "AMD Host bridge", 369 + "sysfs_id": "/devices/pci0000:00/0000:00:08.0", 370 + "sysfs_bus_id": "0000:00:08.0", 371 + "sysfs_iommu_group_id": 8, 372 + "detail": { 373 + "function": 0, 374 + "command": 0, 375 + "header_type": 0, 376 + "secondary_bus": 0, 377 + "prog_if": 0 378 + }, 379 + "module_alias": "pci:v00001022d00001124sv00000000sd00000000bc06sc00i00" 380 + }, 381 + { 382 + "index": 19, 383 + "attached_to": 0, 384 + "class_list": [ 385 + "pci", 386 + "bridge" 387 + ], 388 + "bus_type": { 389 + "hex": "0004", 390 + "name": "PCI", 391 + "value": 4 392 + }, 393 + "slot": { 394 + "bus": 0, 395 + "number": 24 396 + }, 397 + "base_class": { 398 + "hex": "0006", 399 + "name": "Bridge", 400 + "value": 6 401 + }, 402 + "sub_class": { 403 + "hex": "0000", 404 + "name": "Host bridge", 405 + "value": 0 406 + }, 407 + "vendor": { 408 + "hex": "1022", 409 + "name": "AMD", 410 + "value": 4130 411 + }, 412 + "device": { 413 + "hex": "124b", 414 + "value": 4683 415 + }, 416 + "model": "AMD Host bridge", 417 + "sysfs_id": "/devices/pci0000:00/0000:00:18.3", 418 + "sysfs_bus_id": "0000:00:18.3", 419 + "sysfs_iommu_group_id": 13, 420 + "detail": { 421 + "function": 3, 422 + "command": 0, 423 + "header_type": 0, 424 + "secondary_bus": 0, 425 + "prog_if": 0 426 + }, 427 + "driver": "k10temp", 428 + "driver_module": "k10temp", 429 + "drivers": [ 430 + "k10temp" 431 + ], 432 + "driver_modules": [ 433 + "k10temp" 434 + ], 435 + "module_alias": "pci:v00001022d0000124Bsv00000000sd00000000bc06sc00i00" 436 + }, 437 + { 438 + "index": 20, 439 + "attached_to": 0, 440 + "class_list": [ 441 + "pci", 442 + "bridge" 443 + ], 444 + "bus_type": { 445 + "hex": "0004", 446 + "name": "PCI", 447 + "value": 4 448 + }, 449 + "slot": { 450 + "bus": 0, 451 + "number": 1 452 + }, 453 + "base_class": { 454 + "hex": "0006", 455 + "name": "Bridge", 456 + "value": 6 457 + }, 458 + "sub_class": { 459 + "hex": "0004", 460 + "name": "PCI bridge", 461 + "value": 4 462 + }, 463 + "pci_interface": { 464 + "hex": "0000", 465 + "name": "Normal decode", 466 + "value": 0 467 + }, 468 + "vendor": { 469 + "hex": "1022", 470 + "name": "AMD", 471 + "value": 4130 472 + }, 473 + "sub_vendor": { 474 + "hex": "1022", 475 + "name": "AMD", 476 + "value": 4130 477 + }, 478 + "device": { 479 + "hex": "1125", 480 + "value": 4389 481 + }, 482 + "sub_device": { 483 + "hex": "1125", 484 + "value": 4389 485 + }, 486 + "model": "AMD PCI bridge", 487 + "sysfs_id": "/devices/pci0000:00/0000:00:01.2", 488 + "sysfs_bus_id": "0000:00:01.2", 489 + "sysfs_iommu_group_id": 3, 490 + "detail": { 491 + "function": 2, 492 + "command": 1031, 493 + "header_type": 1, 494 + "secondary_bus": 96, 495 + "prog_if": 0 496 + }, 497 + "driver": "pcieport", 498 + "driver_module": "pcieportdrv", 499 + "drivers": [ 500 + "pcieport" 501 + ], 502 + "driver_modules": [ 503 + "pcieportdrv" 504 + ], 505 + "module_alias": "pci:v00001022d00001125sv00001022sd00001125bc06sc04i00" 506 + }, 507 + { 508 + "index": 22, 509 + "attached_to": 0, 510 + "class_list": [ 511 + "pci", 512 + "bridge" 513 + ], 514 + "bus_type": { 515 + "hex": "0004", 516 + "name": "PCI", 517 + "value": 4 518 + }, 519 + "slot": { 520 + "bus": 0, 521 + "number": 24 522 + }, 523 + "base_class": { 524 + "hex": "0006", 525 + "name": "Bridge", 526 + "value": 6 527 + }, 528 + "sub_class": { 529 + "hex": "0000", 530 + "name": "Host bridge", 531 + "value": 0 532 + }, 533 + "vendor": { 534 + "hex": "1022", 535 + "name": "AMD", 536 + "value": 4130 537 + }, 538 + "device": { 539 + "hex": "1249", 540 + "value": 4681 541 + }, 542 + "model": "AMD Host bridge", 543 + "sysfs_id": "/devices/pci0000:00/0000:00:18.1", 544 + "sysfs_bus_id": "0000:00:18.1", 545 + "sysfs_iommu_group_id": 13, 546 + "detail": { 547 + "function": 1, 548 + "command": 0, 549 + "header_type": 0, 550 + "secondary_bus": 0, 551 + "prog_if": 0 552 + }, 553 + "module_alias": "pci:v00001022d00001249sv00000000sd00000000bc06sc00i00" 554 + }, 555 + { 556 + "index": 23, 557 + "attached_to": 0, 558 + "class_list": [ 559 + "pci", 560 + "bridge" 561 + ], 562 + "bus_type": { 563 + "hex": "0004", 564 + "name": "PCI", 565 + "value": 4 566 + }, 567 + "slot": { 568 + "bus": 0, 569 + "number": 1 570 + }, 571 + "base_class": { 572 + "hex": "0006", 573 + "name": "Bridge", 574 + "value": 6 575 + }, 576 + "sub_class": { 577 + "hex": "0000", 578 + "name": "Host bridge", 579 + "value": 0 580 + }, 581 + "vendor": { 582 + "hex": "1022", 583 + "name": "AMD", 584 + "value": 4130 585 + }, 586 + "device": { 587 + "hex": "1124", 588 + "value": 4388 589 + }, 590 + "model": "AMD Host bridge", 591 + "sysfs_id": "/devices/pci0000:00/0000:00:01.0", 592 + "sysfs_bus_id": "0000:00:01.0", 593 + "sysfs_iommu_group_id": 1, 594 + "detail": { 595 + "function": 0, 596 + "command": 0, 597 + "header_type": 0, 598 + "secondary_bus": 0, 599 + "prog_if": 0 600 + }, 601 + "module_alias": "pci:v00001022d00001124sv00000000sd00000000bc06sc00i00" 602 + }, 603 + { 604 + "index": 25, 605 + "attached_to": 0, 606 + "class_list": [ 607 + "pci", 608 + "bridge" 609 + ], 610 + "bus_type": { 611 + "hex": "0004", 612 + "name": "PCI", 613 + "value": 4 614 + }, 615 + "slot": { 616 + "bus": 0, 617 + "number": 2 618 + }, 619 + "base_class": { 620 + "hex": "0006", 621 + "name": "Bridge", 622 + "value": 6 623 + }, 624 + "sub_class": { 625 + "hex": "0004", 626 + "name": "PCI bridge", 627 + "value": 4 628 + }, 629 + "pci_interface": { 630 + "hex": "0000", 631 + "name": "Normal decode", 632 + "value": 0 633 + }, 634 + "vendor": { 635 + "hex": "1022", 636 + "name": "AMD", 637 + "value": 4130 638 + }, 639 + "sub_vendor": { 640 + "hex": "1022", 641 + "name": "AMD", 642 + "value": 4130 643 + }, 644 + "device": { 645 + "hex": "1126", 646 + "value": 4390 647 + }, 648 + "sub_device": { 649 + "hex": "1453", 650 + "value": 5203 651 + }, 652 + "model": "AMD PCI bridge", 653 + "sysfs_id": "/devices/pci0000:00/0000:00:02.3", 654 + "sysfs_bus_id": "0000:00:02.3", 655 + "sysfs_iommu_group_id": 6, 656 + "detail": { 657 + "function": 3, 658 + "command": 1031, 659 + "header_type": 1, 660 + "secondary_bus": 192, 661 + "prog_if": 0 662 + }, 663 + "driver": "pcieport", 664 + "driver_module": "pcieportdrv", 665 + "drivers": [ 666 + "pcieport" 667 + ], 668 + "driver_modules": [ 669 + "pcieportdrv" 670 + ], 671 + "module_alias": "pci:v00001022d00001126sv00001022sd00001453bc06sc04i00" 672 + }, 673 + { 674 + "index": 27, 675 + "attached_to": 0, 676 + "class_list": [ 677 + "pci", 678 + "bridge" 679 + ], 680 + "bus_type": { 681 + "hex": "0004", 682 + "name": "PCI", 683 + "value": 4 684 + }, 685 + "slot": { 686 + "bus": 0, 687 + "number": 20 688 + }, 689 + "base_class": { 690 + "hex": "0006", 691 + "name": "Bridge", 692 + "value": 6 693 + }, 694 + "sub_class": { 695 + "hex": "0001", 696 + "name": "ISA bridge", 697 + "value": 1 698 + }, 699 + "vendor": { 700 + "hex": "1022", 701 + "name": "AMD", 702 + "value": 4130 703 + }, 704 + "sub_vendor": { 705 + "hex": "f111", 706 + "value": 61713 707 + }, 708 + "device": { 709 + "hex": "790e", 710 + "value": 30990 711 + }, 712 + "sub_device": { 713 + "hex": "000b", 714 + "value": 11 715 + }, 716 + "revision": { 717 + "hex": "0051", 718 + "value": 81 719 + }, 720 + "model": "AMD ISA bridge", 721 + "sysfs_id": "/devices/pci0000:00/0000:00:14.3", 722 + "sysfs_bus_id": "0000:00:14.3", 723 + "sysfs_iommu_group_id": 12, 724 + "detail": { 725 + "function": 3, 726 + "command": 15, 727 + "header_type": 0, 728 + "secondary_bus": 0, 729 + "prog_if": 0 730 + }, 731 + "module_alias": "pci:v00001022d0000790Esv0000F111sd0000000Bbc06sc01i00" 732 + }, 733 + { 734 + "index": 30, 735 + "attached_to": 0, 736 + "class_list": [ 737 + "pci", 738 + "bridge" 739 + ], 740 + "bus_type": { 741 + "hex": "0004", 742 + "name": "PCI", 743 + "value": 4 744 + }, 745 + "slot": { 746 + "bus": 0, 747 + "number": 2 748 + }, 749 + "base_class": { 750 + "hex": "0006", 751 + "name": "Bridge", 752 + "value": 6 753 + }, 754 + "sub_class": { 755 + "hex": "0004", 756 + "name": "PCI bridge", 757 + "value": 4 758 + }, 759 + "pci_interface": { 760 + "hex": "0000", 761 + "name": "Normal decode", 762 + "value": 0 763 + }, 764 + "vendor": { 765 + "hex": "1022", 766 + "name": "AMD", 767 + "value": 4130 768 + }, 769 + "sub_vendor": { 770 + "hex": "1022", 771 + "name": "AMD", 772 + "value": 4130 773 + }, 774 + "device": { 775 + "hex": "1126", 776 + "value": 4390 777 + }, 778 + "sub_device": { 779 + "hex": "1453", 780 + "value": 5203 781 + }, 782 + "model": "AMD PCI bridge", 783 + "sysfs_id": "/devices/pci0000:00/0000:00:02.1", 784 + "sysfs_bus_id": "0000:00:02.1", 785 + "sysfs_iommu_group_id": 5, 786 + "detail": { 787 + "function": 1, 788 + "command": 1031, 789 + "header_type": 1, 790 + "secondary_bus": 191, 791 + "prog_if": 0 792 + }, 793 + "driver": "pcieport", 794 + "driver_module": "pcieportdrv", 795 + "drivers": [ 796 + "pcieport" 797 + ], 798 + "driver_modules": [ 799 + "pcieportdrv" 800 + ], 801 + "module_alias": "pci:v00001022d00001126sv00001022sd00001453bc06sc04i00" 802 + }, 803 + { 804 + "index": 34, 805 + "attached_to": 0, 806 + "class_list": [ 807 + "pci", 808 + "bridge" 809 + ], 810 + "bus_type": { 811 + "hex": "0004", 812 + "name": "PCI", 813 + "value": 4 814 + }, 815 + "slot": { 816 + "bus": 0, 817 + "number": 8 818 + }, 819 + "base_class": { 820 + "hex": "0006", 821 + "name": "Bridge", 822 + "value": 6 823 + }, 824 + "sub_class": { 825 + "hex": "0004", 826 + "name": "PCI bridge", 827 + "value": 4 828 + }, 829 + "pci_interface": { 830 + "hex": "0000", 831 + "name": "Normal decode", 832 + "value": 0 833 + }, 834 + "vendor": { 835 + "hex": "1022", 836 + "name": "AMD", 837 + "value": 4130 838 + }, 839 + "sub_vendor": { 840 + "hex": "1022", 841 + "name": "AMD", 842 + "value": 4130 843 + }, 844 + "device": { 845 + "hex": "1112", 846 + "value": 4370 847 + }, 848 + "sub_device": { 849 + "hex": "150c", 850 + "value": 5388 851 + }, 852 + "model": "AMD PCI bridge", 853 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3", 854 + "sysfs_bus_id": "0000:00:08.3", 855 + "sysfs_iommu_group_id": 11, 856 + "detail": { 857 + "function": 3, 858 + "command": 1031, 859 + "header_type": 1, 860 + "secondary_bus": 195, 861 + "prog_if": 0 862 + }, 863 + "driver": "pcieport", 864 + "driver_module": "pcieportdrv", 865 + "drivers": [ 866 + "pcieport" 867 + ], 868 + "driver_modules": [ 869 + "pcieportdrv" 870 + ], 871 + "module_alias": "pci:v00001022d00001112sv00001022sd0000150Cbc06sc04i00" 872 + }, 873 + { 874 + "index": 35, 875 + "attached_to": 0, 876 + "class_list": [ 877 + "pci", 878 + "bridge" 879 + ], 880 + "bus_type": { 881 + "hex": "0004", 882 + "name": "PCI", 883 + "value": 4 884 + }, 885 + "slot": { 886 + "bus": 0, 887 + "number": 24 888 + }, 889 + "base_class": { 890 + "hex": "0006", 891 + "name": "Bridge", 892 + "value": 6 893 + }, 894 + "sub_class": { 895 + "hex": "0000", 896 + "name": "Host bridge", 897 + "value": 0 898 + }, 899 + "vendor": { 900 + "hex": "1022", 901 + "name": "AMD", 902 + "value": 4130 903 + }, 904 + "device": { 905 + "hex": "124e", 906 + "value": 4686 907 + }, 908 + "model": "AMD Host bridge", 909 + "sysfs_id": "/devices/pci0000:00/0000:00:18.6", 910 + "sysfs_bus_id": "0000:00:18.6", 911 + "sysfs_iommu_group_id": 13, 912 + "detail": { 913 + "function": 6, 914 + "command": 0, 915 + "header_type": 0, 916 + "secondary_bus": 0, 917 + "prog_if": 0 918 + }, 919 + "module_alias": "pci:v00001022d0000124Esv00000000sd00000000bc06sc00i00" 920 + }, 921 + { 922 + "index": 36, 923 + "attached_to": 0, 924 + "class_list": [ 925 + "pci", 926 + "bridge" 927 + ], 928 + "bus_type": { 929 + "hex": "0004", 930 + "name": "PCI", 931 + "value": 4 932 + }, 933 + "slot": { 934 + "bus": 0, 935 + "number": 0 936 + }, 937 + "base_class": { 938 + "hex": "0006", 939 + "name": "Bridge", 940 + "value": 6 941 + }, 942 + "sub_class": { 943 + "hex": "0000", 944 + "name": "Host bridge", 945 + "value": 0 946 + }, 947 + "vendor": { 948 + "hex": "1022", 949 + "name": "AMD", 950 + "value": 4130 951 + }, 952 + "sub_vendor": { 953 + "hex": "f111", 954 + "value": 61713 955 + }, 956 + "device": { 957 + "hex": "1122", 958 + "value": 4386 959 + }, 960 + "sub_device": { 961 + "hex": "000b", 962 + "value": 11 963 + }, 964 + "model": "AMD Host bridge", 965 + "sysfs_id": "/devices/pci0000:00/0000:00:00.0", 966 + "sysfs_bus_id": "0000:00:00.0", 967 + "detail": { 968 + "function": 0, 969 + "command": 0, 970 + "header_type": 0, 971 + "secondary_bus": 0, 972 + "prog_if": 0 973 + }, 974 + "module_alias": "pci:v00001022d00001122sv0000F111sd0000000Bbc06sc00i00" 975 + }, 976 + { 977 + "index": 38, 978 + "attached_to": 0, 979 + "class_list": [ 980 + "pci", 981 + "bridge" 982 + ], 983 + "bus_type": { 984 + "hex": "0004", 985 + "name": "PCI", 986 + "value": 4 987 + }, 988 + "slot": { 989 + "bus": 0, 990 + "number": 8 991 + }, 992 + "base_class": { 993 + "hex": "0006", 994 + "name": "Bridge", 995 + "value": 6 996 + }, 997 + "sub_class": { 998 + "hex": "0004", 999 + "name": "PCI bridge", 1000 + "value": 4 1001 + }, 1002 + "pci_interface": { 1003 + "hex": "0000", 1004 + "name": "Normal decode", 1005 + "value": 0 1006 + }, 1007 + "vendor": { 1008 + "hex": "1022", 1009 + "name": "AMD", 1010 + "value": 4130 1011 + }, 1012 + "sub_vendor": { 1013 + "hex": "1022", 1014 + "name": "AMD", 1015 + "value": 4130 1016 + }, 1017 + "device": { 1018 + "hex": "1110", 1019 + "value": 4368 1020 + }, 1021 + "sub_device": { 1022 + "hex": "150c", 1023 + "value": 5388 1024 + }, 1025 + "model": "AMD PCI bridge", 1026 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1", 1027 + "sysfs_bus_id": "0000:00:08.1", 1028 + "sysfs_iommu_group_id": 9, 1029 + "detail": { 1030 + "function": 1, 1031 + "command": 1031, 1032 + "header_type": 1, 1033 + "secondary_bus": 193, 1034 + "prog_if": 0 1035 + }, 1036 + "driver": "pcieport", 1037 + "driver_module": "pcieportdrv", 1038 + "drivers": [ 1039 + "pcieport" 1040 + ], 1041 + "driver_modules": [ 1042 + "pcieportdrv" 1043 + ], 1044 + "module_alias": "pci:v00001022d00001110sv00001022sd0000150Cbc06sc04i00" 1045 + }, 1046 + { 1047 + "index": 39, 1048 + "attached_to": 0, 1049 + "class_list": [ 1050 + "pci", 1051 + "bridge" 1052 + ], 1053 + "bus_type": { 1054 + "hex": "0004", 1055 + "name": "PCI", 1056 + "value": 4 1057 + }, 1058 + "slot": { 1059 + "bus": 0, 1060 + "number": 24 1061 + }, 1062 + "base_class": { 1063 + "hex": "0006", 1064 + "name": "Bridge", 1065 + "value": 6 1066 + }, 1067 + "sub_class": { 1068 + "hex": "0000", 1069 + "name": "Host bridge", 1070 + "value": 0 1071 + }, 1072 + "vendor": { 1073 + "hex": "1022", 1074 + "name": "AMD", 1075 + "value": 4130 1076 + }, 1077 + "device": { 1078 + "hex": "124c", 1079 + "value": 4684 1080 + }, 1081 + "model": "AMD Host bridge", 1082 + "sysfs_id": "/devices/pci0000:00/0000:00:18.4", 1083 + "sysfs_bus_id": "0000:00:18.4", 1084 + "sysfs_iommu_group_id": 13, 1085 + "detail": { 1086 + "function": 4, 1087 + "command": 0, 1088 + "header_type": 0, 1089 + "secondary_bus": 0, 1090 + "prog_if": 0 1091 + }, 1092 + "module_alias": "pci:v00001022d0000124Csv00000000sd00000000bc06sc00i00" 1093 + }, 1094 + { 1095 + "index": 40, 1096 + "attached_to": 0, 1097 + "class_list": [ 1098 + "pci", 1099 + "bridge" 1100 + ], 1101 + "bus_type": { 1102 + "hex": "0004", 1103 + "name": "PCI", 1104 + "value": 4 1105 + }, 1106 + "slot": { 1107 + "bus": 0, 1108 + "number": 3 1109 + }, 1110 + "base_class": { 1111 + "hex": "0006", 1112 + "name": "Bridge", 1113 + "value": 6 1114 + }, 1115 + "sub_class": { 1116 + "hex": "0000", 1117 + "name": "Host bridge", 1118 + "value": 0 1119 + }, 1120 + "vendor": { 1121 + "hex": "1022", 1122 + "name": "AMD", 1123 + "value": 4130 1124 + }, 1125 + "device": { 1126 + "hex": "1124", 1127 + "value": 4388 1128 + }, 1129 + "model": "AMD Host bridge", 1130 + "sysfs_id": "/devices/pci0000:00/0000:00:03.0", 1131 + "sysfs_bus_id": "0000:00:03.0", 1132 + "sysfs_iommu_group_id": 7, 1133 + "detail": { 1134 + "function": 0, 1135 + "command": 0, 1136 + "header_type": 0, 1137 + "secondary_bus": 0, 1138 + "prog_if": 0 1139 + }, 1140 + "module_alias": "pci:v00001022d00001124sv00000000sd00000000bc06sc00i00" 1141 + }, 1142 + { 1143 + "index": 42, 1144 + "attached_to": 0, 1145 + "class_list": [ 1146 + "pci", 1147 + "bridge" 1148 + ], 1149 + "bus_type": { 1150 + "hex": "0004", 1151 + "name": "PCI", 1152 + "value": 4 1153 + }, 1154 + "slot": { 1155 + "bus": 0, 1156 + "number": 24 1157 + }, 1158 + "base_class": { 1159 + "hex": "0006", 1160 + "name": "Bridge", 1161 + "value": 6 1162 + }, 1163 + "sub_class": { 1164 + "hex": "0000", 1165 + "name": "Host bridge", 1166 + "value": 0 1167 + }, 1168 + "vendor": { 1169 + "hex": "1022", 1170 + "name": "AMD", 1171 + "value": 4130 1172 + }, 1173 + "device": { 1174 + "hex": "124a", 1175 + "value": 4682 1176 + }, 1177 + "model": "AMD Host bridge", 1178 + "sysfs_id": "/devices/pci0000:00/0000:00:18.2", 1179 + "sysfs_bus_id": "0000:00:18.2", 1180 + "sysfs_iommu_group_id": 13, 1181 + "detail": { 1182 + "function": 2, 1183 + "command": 0, 1184 + "header_type": 0, 1185 + "secondary_bus": 0, 1186 + "prog_if": 0 1187 + }, 1188 + "module_alias": "pci:v00001022d0000124Asv00000000sd00000000bc06sc00i00" 1189 + }, 1190 + { 1191 + "index": 43, 1192 + "attached_to": 0, 1193 + "class_list": [ 1194 + "pci", 1195 + "bridge" 1196 + ], 1197 + "bus_type": { 1198 + "hex": "0004", 1199 + "name": "PCI", 1200 + "value": 4 1201 + }, 1202 + "slot": { 1203 + "bus": 0, 1204 + "number": 1 1205 + }, 1206 + "base_class": { 1207 + "hex": "0006", 1208 + "name": "Bridge", 1209 + "value": 6 1210 + }, 1211 + "sub_class": { 1212 + "hex": "0004", 1213 + "name": "PCI bridge", 1214 + "value": 4 1215 + }, 1216 + "pci_interface": { 1217 + "hex": "0000", 1218 + "name": "Normal decode", 1219 + "value": 0 1220 + }, 1221 + "vendor": { 1222 + "hex": "1022", 1223 + "name": "AMD", 1224 + "value": 4130 1225 + }, 1226 + "sub_vendor": { 1227 + "hex": "1022", 1228 + "name": "AMD", 1229 + "value": 4130 1230 + }, 1231 + "device": { 1232 + "hex": "1125", 1233 + "value": 4389 1234 + }, 1235 + "sub_device": { 1236 + "hex": "1125", 1237 + "value": 4389 1238 + }, 1239 + "model": "AMD PCI bridge", 1240 + "sysfs_id": "/devices/pci0000:00/0000:00:01.1", 1241 + "sysfs_bus_id": "0000:00:01.1", 1242 + "sysfs_iommu_group_id": 2, 1243 + "detail": { 1244 + "function": 1, 1245 + "command": 1031, 1246 + "header_type": 1, 1247 + "secondary_bus": 1, 1248 + "prog_if": 0 1249 + }, 1250 + "driver": "pcieport", 1251 + "driver_module": "pcieportdrv", 1252 + "drivers": [ 1253 + "pcieport" 1254 + ], 1255 + "driver_modules": [ 1256 + "pcieportdrv" 1257 + ], 1258 + "module_alias": "pci:v00001022d00001125sv00001022sd00001125bc06sc04i00" 1259 + }, 1260 + { 1261 + "index": 45, 1262 + "attached_to": 0, 1263 + "class_list": [ 1264 + "pci", 1265 + "bridge" 1266 + ], 1267 + "bus_type": { 1268 + "hex": "0004", 1269 + "name": "PCI", 1270 + "value": 4 1271 + }, 1272 + "slot": { 1273 + "bus": 0, 1274 + "number": 24 1275 + }, 1276 + "base_class": { 1277 + "hex": "0006", 1278 + "name": "Bridge", 1279 + "value": 6 1280 + }, 1281 + "sub_class": { 1282 + "hex": "0000", 1283 + "name": "Host bridge", 1284 + "value": 0 1285 + }, 1286 + "vendor": { 1287 + "hex": "1022", 1288 + "name": "AMD", 1289 + "value": 4130 1290 + }, 1291 + "device": { 1292 + "hex": "1248", 1293 + "value": 4680 1294 + }, 1295 + "model": "AMD Host bridge", 1296 + "sysfs_id": "/devices/pci0000:00/0000:00:18.0", 1297 + "sysfs_bus_id": "0000:00:18.0", 1298 + "sysfs_iommu_group_id": 13, 1299 + "detail": { 1300 + "function": 0, 1301 + "command": 0, 1302 + "header_type": 0, 1303 + "secondary_bus": 0, 1304 + "prog_if": 0 1305 + }, 1306 + "module_alias": "pci:v00001022d00001248sv00000000sd00000000bc06sc00i00" 1307 + }, 1308 + { 1309 + "index": 49, 1310 + "attached_to": 0, 1311 + "class_list": [ 1312 + "pci", 1313 + "bridge" 1314 + ], 1315 + "bus_type": { 1316 + "hex": "0004", 1317 + "name": "PCI", 1318 + "value": 4 1319 + }, 1320 + "slot": { 1321 + "bus": 0, 1322 + "number": 2 1323 + }, 1324 + "base_class": { 1325 + "hex": "0006", 1326 + "name": "Bridge", 1327 + "value": 6 1328 + }, 1329 + "sub_class": { 1330 + "hex": "0000", 1331 + "name": "Host bridge", 1332 + "value": 0 1333 + }, 1334 + "vendor": { 1335 + "hex": "1022", 1336 + "name": "AMD", 1337 + "value": 4130 1338 + }, 1339 + "device": { 1340 + "hex": "1124", 1341 + "value": 4388 1342 + }, 1343 + "model": "AMD Host bridge", 1344 + "sysfs_id": "/devices/pci0000:00/0000:00:02.0", 1345 + "sysfs_bus_id": "0000:00:02.0", 1346 + "sysfs_iommu_group_id": 4, 1347 + "detail": { 1348 + "function": 0, 1349 + "command": 0, 1350 + "header_type": 0, 1351 + "secondary_bus": 0, 1352 + "prog_if": 0 1353 + }, 1354 + "module_alias": "pci:v00001022d00001124sv00000000sd00000000bc06sc00i00" 1355 + }, 1356 + { 1357 + "index": 50, 1358 + "attached_to": 0, 1359 + "class_list": [ 1360 + "pci", 1361 + "bridge" 1362 + ], 1363 + "bus_type": { 1364 + "hex": "0004", 1365 + "name": "PCI", 1366 + "value": 4 1367 + }, 1368 + "slot": { 1369 + "bus": 0, 1370 + "number": 24 1371 + }, 1372 + "base_class": { 1373 + "hex": "0006", 1374 + "name": "Bridge", 1375 + "value": 6 1376 + }, 1377 + "sub_class": { 1378 + "hex": "0000", 1379 + "name": "Host bridge", 1380 + "value": 0 1381 + }, 1382 + "vendor": { 1383 + "hex": "1022", 1384 + "name": "AMD", 1385 + "value": 4130 1386 + }, 1387 + "device": { 1388 + "hex": "124f", 1389 + "value": 4687 1390 + }, 1391 + "model": "AMD Host bridge", 1392 + "sysfs_id": "/devices/pci0000:00/0000:00:18.7", 1393 + "sysfs_bus_id": "0000:00:18.7", 1394 + "sysfs_iommu_group_id": 13, 1395 + "detail": { 1396 + "function": 7, 1397 + "command": 0, 1398 + "header_type": 0, 1399 + "secondary_bus": 0, 1400 + "prog_if": 0 1401 + }, 1402 + "module_alias": "pci:v00001022d0000124Fsv00000000sd00000000bc06sc00i00" 1403 + }, 1404 + { 1405 + "index": 52, 1406 + "attached_to": 0, 1407 + "class_list": [ 1408 + "pci", 1409 + "bridge" 1410 + ], 1411 + "bus_type": { 1412 + "hex": "0004", 1413 + "name": "PCI", 1414 + "value": 4 1415 + }, 1416 + "slot": { 1417 + "bus": 0, 1418 + "number": 8 1419 + }, 1420 + "base_class": { 1421 + "hex": "0006", 1422 + "name": "Bridge", 1423 + "value": 6 1424 + }, 1425 + "sub_class": { 1426 + "hex": "0004", 1427 + "name": "PCI bridge", 1428 + "value": 4 1429 + }, 1430 + "pci_interface": { 1431 + "hex": "0000", 1432 + "name": "Normal decode", 1433 + "value": 0 1434 + }, 1435 + "vendor": { 1436 + "hex": "1022", 1437 + "name": "AMD", 1438 + "value": 4130 1439 + }, 1440 + "sub_vendor": { 1441 + "hex": "1022", 1442 + "name": "AMD", 1443 + "value": 4130 1444 + }, 1445 + "device": { 1446 + "hex": "1111", 1447 + "value": 4369 1448 + }, 1449 + "sub_device": { 1450 + "hex": "150c", 1451 + "value": 5388 1452 + }, 1453 + "model": "AMD PCI bridge", 1454 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2", 1455 + "sysfs_bus_id": "0000:00:08.2", 1456 + "sysfs_iommu_group_id": 10, 1457 + "detail": { 1458 + "function": 2, 1459 + "command": 1031, 1460 + "header_type": 1, 1461 + "secondary_bus": 194, 1462 + "prog_if": 0 1463 + }, 1464 + "driver": "pcieport", 1465 + "driver_module": "pcieportdrv", 1466 + "drivers": [ 1467 + "pcieport" 1468 + ], 1469 + "driver_modules": [ 1470 + "pcieportdrv" 1471 + ], 1472 + "module_alias": "pci:v00001022d00001111sv00001022sd0000150Cbc06sc04i00" 1473 + }, 1474 + { 1475 + "index": 53, 1476 + "attached_to": 0, 1477 + "class_list": [ 1478 + "pci", 1479 + "bridge" 1480 + ], 1481 + "bus_type": { 1482 + "hex": "0004", 1483 + "name": "PCI", 1484 + "value": 4 1485 + }, 1486 + "slot": { 1487 + "bus": 0, 1488 + "number": 24 1489 + }, 1490 + "base_class": { 1491 + "hex": "0006", 1492 + "name": "Bridge", 1493 + "value": 6 1494 + }, 1495 + "sub_class": { 1496 + "hex": "0000", 1497 + "name": "Host bridge", 1498 + "value": 0 1499 + }, 1500 + "vendor": { 1501 + "hex": "1022", 1502 + "name": "AMD", 1503 + "value": 4130 1504 + }, 1505 + "device": { 1506 + "hex": "124d", 1507 + "value": 4685 1508 + }, 1509 + "model": "AMD Host bridge", 1510 + "sysfs_id": "/devices/pci0000:00/0000:00:18.5", 1511 + "sysfs_bus_id": "0000:00:18.5", 1512 + "sysfs_iommu_group_id": 13, 1513 + "detail": { 1514 + "function": 5, 1515 + "command": 0, 1516 + "header_type": 0, 1517 + "secondary_bus": 0, 1518 + "prog_if": 0 1519 + }, 1520 + "module_alias": "pci:v00001022d0000124Dsv00000000sd00000000bc06sc00i00" 1521 + } 1522 + ], 1523 + "camera": [ 1524 + { 1525 + "index": 56, 1526 + "attached_to": 59, 1527 + "class_list": [ 1528 + "camera", 1529 + "usb" 1530 + ], 1531 + "bus_type": { 1532 + "hex": "0086", 1533 + "name": "USB", 1534 + "value": 134 1535 + }, 1536 + "slot": { 1537 + "bus": 0, 1538 + "number": 0 1539 + }, 1540 + "base_class": { 1541 + "hex": "010f", 1542 + "name": "Camera", 1543 + "value": 271 1544 + }, 1545 + "vendor": { 1546 + "hex": "32ac", 1547 + "name": "Framework", 1548 + "value": 12972 1549 + }, 1550 + "device": { 1551 + "hex": "001c", 1552 + "name": "Laptop Webcam Module (2nd Gen)", 1553 + "value": 28 1554 + }, 1555 + "revision": { 1556 + "hex": "0000", 1557 + "name": "1.11", 1558 + "value": 0 1559 + }, 1560 + "serial": "FRANJBCHA153710338", 1561 + "model": "Framework Laptop Webcam Module (2nd Gen)", 1562 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-3/3-3:1.0", 1563 + "sysfs_bus_id": "3-3:1.0", 1564 + "resources": [ 1565 + { 1566 + "type": "baud", 1567 + "speed": 480000000, 1568 + "bits": 0, 1569 + "stop_bits": 0, 1570 + "parity": 0, 1571 + "handshake": 0 1572 + } 1573 + ], 1574 + "detail": { 1575 + "device_class": { 1576 + "hex": "00ef", 1577 + "name": "miscellaneous", 1578 + "value": 239 1579 + }, 1580 + "device_subclass": { 1581 + "hex": "0002", 1582 + "name": "comm", 1583 + "value": 2 1584 + }, 1585 + "device_protocol": 1, 1586 + "interface_class": { 1587 + "hex": "000e", 1588 + "name": "video", 1589 + "value": 14 1590 + }, 1591 + "interface_subclass": { 1592 + "hex": "0001", 1593 + "name": "audio", 1594 + "value": 1 1595 + }, 1596 + "interface_protocol": 1, 1597 + "interface_number": 0, 1598 + "interface_alternate_setting": 0, 1599 + "interface_association": { 1600 + "function_class": { 1601 + "hex": "000e", 1602 + "name": "video", 1603 + "value": 14 1604 + }, 1605 + "function_subclass": { 1606 + "hex": "0003", 1607 + "name": "hid", 1608 + "value": 3 1609 + }, 1610 + "function_protocol": 0, 1611 + "interface_count": 2, 1612 + "first_interface": 0 1613 + } 1614 + }, 1615 + "hotplug": "usb", 1616 + "driver": "uvcvideo", 1617 + "driver_module": "uvcvideo", 1618 + "drivers": [ 1619 + "uvcvideo" 1620 + ], 1621 + "driver_modules": [ 1622 + "uvcvideo" 1623 + ], 1624 + "module_alias": "usb:v32ACp001Cd0111dcEFdsc02dp01ic0Eisc01ip01in00" 1625 + }, 1626 + { 1627 + "index": 62, 1628 + "attached_to": 59, 1629 + "class_list": [ 1630 + "camera", 1631 + "usb" 1632 + ], 1633 + "bus_type": { 1634 + "hex": "0086", 1635 + "name": "USB", 1636 + "value": 134 1637 + }, 1638 + "slot": { 1639 + "bus": 0, 1640 + "number": 0 1641 + }, 1642 + "base_class": { 1643 + "hex": "010f", 1644 + "name": "Camera", 1645 + "value": 271 1646 + }, 1647 + "vendor": { 1648 + "hex": "32ac", 1649 + "name": "Framework", 1650 + "value": 12972 1651 + }, 1652 + "device": { 1653 + "hex": "001c", 1654 + "name": "Laptop Webcam Module (2nd Gen)", 1655 + "value": 28 1656 + }, 1657 + "revision": { 1658 + "hex": "0000", 1659 + "name": "1.11", 1660 + "value": 0 1661 + }, 1662 + "serial": "FRANJBCHA153710338", 1663 + "model": "Framework Laptop Webcam Module (2nd Gen)", 1664 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-3/3-3:1.1", 1665 + "sysfs_bus_id": "3-3:1.1", 1666 + "resources": [ 1667 + { 1668 + "type": "baud", 1669 + "speed": 480000000, 1670 + "bits": 0, 1671 + "stop_bits": 0, 1672 + "parity": 0, 1673 + "handshake": 0 1674 + } 1675 + ], 1676 + "detail": { 1677 + "device_class": { 1678 + "hex": "00ef", 1679 + "name": "miscellaneous", 1680 + "value": 239 1681 + }, 1682 + "device_subclass": { 1683 + "hex": "0002", 1684 + "name": "comm", 1685 + "value": 2 1686 + }, 1687 + "device_protocol": 1, 1688 + "interface_class": { 1689 + "hex": "000e", 1690 + "name": "video", 1691 + "value": 14 1692 + }, 1693 + "interface_subclass": { 1694 + "hex": "0002", 1695 + "name": "comm", 1696 + "value": 2 1697 + }, 1698 + "interface_protocol": 1, 1699 + "interface_number": 1, 1700 + "interface_alternate_setting": 0, 1701 + "interface_association": { 1702 + "function_class": { 1703 + "hex": "000e", 1704 + "name": "video", 1705 + "value": 14 1706 + }, 1707 + "function_subclass": { 1708 + "hex": "0003", 1709 + "name": "hid", 1710 + "value": 3 1711 + }, 1712 + "function_protocol": 0, 1713 + "interface_count": 2, 1714 + "first_interface": 0 1715 + } 1716 + }, 1717 + "hotplug": "usb", 1718 + "driver": "uvcvideo", 1719 + "driver_module": "uvcvideo", 1720 + "drivers": [ 1721 + "uvcvideo" 1722 + ], 1723 + "driver_modules": [ 1724 + "uvcvideo" 1725 + ], 1726 + "module_alias": "usb:v32ACp001Cd0111dcEFdsc02dp01ic0Eisc02ip01in01" 1727 + } 1728 + ], 1729 + "cpu": [ 1730 + { 1731 + "architecture": "x86_64", 1732 + "vendor_name": "AuthenticAMD", 1733 + "model_name": "AMD Ryzen AI 5 340 w/ Radeon 840M", 1734 + "family": 26, 1735 + "model": 96, 1736 + "stepping": 0, 1737 + "features": [ 1738 + "fpu", 1739 + "vme", 1740 + "de", 1741 + "pse", 1742 + "tsc", 1743 + "msr", 1744 + "pae", 1745 + "mce", 1746 + "cx8", 1747 + "apic", 1748 + "sep", 1749 + "mtrr", 1750 + "pge", 1751 + "mca", 1752 + "cmov", 1753 + "pat", 1754 + "pse36", 1755 + "clflush", 1756 + "mmx", 1757 + "fxsr", 1758 + "sse", 1759 + "sse2", 1760 + "ht", 1761 + "syscall", 1762 + "nx", 1763 + "mmxext", 1764 + "fxsr_opt", 1765 + "pdpe1gb", 1766 + "rdtscp", 1767 + "lm", 1768 + "constant_tsc", 1769 + "rep_good", 1770 + "amd_lbr_v2", 1771 + "nopl", 1772 + "xtopology", 1773 + "nonstop_tsc", 1774 + "cpuid", 1775 + "extd_apicid", 1776 + "aperfmperf", 1777 + "rapl", 1778 + "pni", 1779 + "pclmulqdq", 1780 + "monitor", 1781 + "ssse3", 1782 + "fma", 1783 + "cx16", 1784 + "sse4_1", 1785 + "sse4_2", 1786 + "movbe", 1787 + "popcnt", 1788 + "aes", 1789 + "xsave", 1790 + "avx", 1791 + "f16c", 1792 + "rdrand", 1793 + "lahf_lm", 1794 + "cmp_legacy", 1795 + "svm", 1796 + "extapic", 1797 + "cr8_legacy", 1798 + "abm", 1799 + "sse4a", 1800 + "misalignsse", 1801 + "3dnowprefetch", 1802 + "osvw", 1803 + "ibs", 1804 + "skinit", 1805 + "wdt", 1806 + "tce", 1807 + "topoext", 1808 + "perfctr_core", 1809 + "perfctr_nb", 1810 + "bpext", 1811 + "perfctr_llc", 1812 + "mwaitx", 1813 + "cpuid_fault", 1814 + "cpb", 1815 + "cat_l3", 1816 + "cdp_l3", 1817 + "hw_pstate", 1818 + "ssbd", 1819 + "mba", 1820 + "perfmon_v2", 1821 + "ibrs", 1822 + "ibpb", 1823 + "stibp", 1824 + "ibrs_enhanced", 1825 + "vmmcall", 1826 + "fsgsbase", 1827 + "tsc_adjust", 1828 + "bmi1", 1829 + "avx2", 1830 + "smep", 1831 + "bmi2", 1832 + "erms", 1833 + "invpcid", 1834 + "cqm", 1835 + "rdt_a", 1836 + "avx512f", 1837 + "avx512dq", 1838 + "rdseed", 1839 + "adx", 1840 + "smap", 1841 + "avx512ifma", 1842 + "clflushopt", 1843 + "clwb", 1844 + "avx512cd", 1845 + "sha_ni", 1846 + "avx512bw", 1847 + "avx512vl", 1848 + "xsaveopt", 1849 + "xsavec", 1850 + "xgetbv1", 1851 + "xsaves", 1852 + "cqm_llc", 1853 + "cqm_occup_llc", 1854 + "cqm_mbm_total", 1855 + "cqm_mbm_local", 1856 + "user_shstk", 1857 + "avx_vnni", 1858 + "avx512_bf16", 1859 + "clzero", 1860 + "irperf", 1861 + "xsaveerptr", 1862 + "rdpru", 1863 + "wbnoinvd", 1864 + "cppc", 1865 + "arat", 1866 + "npt", 1867 + "lbrv", 1868 + "svm_lock", 1869 + "nrip_save", 1870 + "tsc_scale", 1871 + "vmcb_clean", 1872 + "flushbyasid", 1873 + "decodeassists", 1874 + "pausefilter", 1875 + "pfthreshold", 1876 + "avic", 1877 + "v_vmsave_vml" 1878 + ], 1879 + "bugs": [ 1880 + "sysret_ss_attrs", 1881 + "spectre_v1", 1882 + "spectre_v2", 1883 + "spec_store_bypass", 1884 + "srso", 1885 + "spectre_v2_user", 1886 + "vmscape" 1887 + ], 1888 + "power_management": [ 1889 + "ts", 1890 + "ttp", 1891 + "tm", 1892 + "hwpstate", 1893 + "cpb", 1894 + "eff_freq_ro", 1895 + "[13]", 1896 + "[14]" 1897 + ], 1898 + "bogo": 3992, 1899 + "cache": 1024, 1900 + "units": 12, 1901 + "page_size": 4096, 1902 + "physical_id": 0, 1903 + "siblings": 12, 1904 + "cores": 6, 1905 + "fpu": false, 1906 + "fpu_exception": false, 1907 + "cpuid_level": 16, 1908 + "write_protect": false, 1909 + "tlb_size": 192, 1910 + "clflush_size": 64, 1911 + "cache_alignment": 64, 1912 + "address_sizes": { 1913 + "physical": "0x30", 1914 + "virtual": "0x30" 1915 + } 1916 + } 1917 + ], 1918 + "disk": [ 1919 + { 1920 + "index": 55, 1921 + "attached_to": 29, 1922 + "class_list": [ 1923 + "disk", 1924 + "block_device", 1925 + "nvme" 1926 + ], 1927 + "bus_type": { 1928 + "hex": "0096", 1929 + "name": "NVME", 1930 + "value": 150 1931 + }, 1932 + "slot": { 1933 + "bus": 0, 1934 + "number": 0 1935 + }, 1936 + "base_class": { 1937 + "hex": "0106", 1938 + "name": "Mass Storage Device", 1939 + "value": 262 1940 + }, 1941 + "sub_class": { 1942 + "hex": "0000", 1943 + "name": "Disk", 1944 + "value": 0 1945 + }, 1946 + "vendor": { 1947 + "hex": "15b7", 1948 + "value": 5559 1949 + }, 1950 + "sub_vendor": { 1951 + "hex": "15b7", 1952 + "value": 5559 1953 + }, 1954 + "device": { 1955 + "hex": "5045", 1956 + "name": "WD_BLACK SN7100 1TB", 1957 + "value": 20549 1958 + }, 1959 + "sub_device": { 1960 + "hex": "5045", 1961 + "value": 20549 1962 + }, 1963 + "serial": "25323U803417", 1964 + "model": "WD_BLACK SN7100 1TB", 1965 + "sysfs_id": "/class/block/nvme0n1", 1966 + "sysfs_bus_id": "nvme0", 1967 + "sysfs_device_link": "/devices/pci0000:00/0000:00:02.1/0000:bf:00.0/nvme/nvme0", 1968 + "unix_device_names": [ 1969 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25323U803417", 1970 + "/dev/disk/by-id/nvme-WD_BLACK_SN7100_1TB_25323U803417_1", 1971 + "/dev/disk/by-id/nvme-eui.e8238fa6bf530001001b448b42733398", 1972 + "/dev/disk/by-path/pci-0000:bf:00.0-nvme-1", 1973 + "/dev/nvme0n1" 1974 + ], 1975 + "rom_id": "0x80", 1976 + "resources": [ 1977 + { 1978 + "type": "disk_geo", 1979 + "cylinders": 953869, 1980 + "heads": 64, 1981 + "sectors": 32, 1982 + "size": "0x0", 1983 + "geo_type": "logical" 1984 + }, 1985 + { 1986 + "type": "size", 1987 + "unit": "sectors", 1988 + "value_1": 1953525168, 1989 + "value_2": 512 1990 + } 1991 + ], 1992 + "driver": "nvme", 1993 + "driver_module": "nvme", 1994 + "drivers": [ 1995 + "nvme" 1996 + ], 1997 + "driver_modules": [ 1998 + "nvme" 1999 + ] 2000 + } 2001 + ], 2002 + "graphics_card": [ 2003 + { 2004 + "index": 31, 2005 + "attached_to": 38, 2006 + "class_list": [ 2007 + "graphics_card", 2008 + "pci" 2009 + ], 2010 + "bus_type": { 2011 + "hex": "0004", 2012 + "name": "PCI", 2013 + "value": 4 2014 + }, 2015 + "slot": { 2016 + "bus": 193, 2017 + "number": 0 2018 + }, 2019 + "base_class": { 2020 + "hex": "0003", 2021 + "name": "Display controller", 2022 + "value": 3 2023 + }, 2024 + "sub_class": { 2025 + "hex": "0080", 2026 + "name": "Display controller", 2027 + "value": 128 2028 + }, 2029 + "vendor": { 2030 + "hex": "1002", 2031 + "name": "ATI Technologies Inc", 2032 + "value": 4098 2033 + }, 2034 + "sub_vendor": { 2035 + "hex": "f111", 2036 + "value": 61713 2037 + }, 2038 + "device": { 2039 + "hex": "1114", 2040 + "value": 4372 2041 + }, 2042 + "sub_device": { 2043 + "hex": "000b", 2044 + "value": 11 2045 + }, 2046 + "revision": { 2047 + "hex": "00c3", 2048 + "value": 195 2049 + }, 2050 + "model": "ATI Display controller", 2051 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.0", 2052 + "sysfs_bus_id": "0000:c1:00.0", 2053 + "sysfs_iommu_group_id": 16, 2054 + "resources": [ 2055 + { 2056 + "type": "io", 2057 + "base": 4096, 2058 + "range": 256, 2059 + "enabled": true, 2060 + "access": "read_write" 2061 + } 2062 + ], 2063 + "detail": { 2064 + "function": 0, 2065 + "command": 1031, 2066 + "header_type": 0, 2067 + "secondary_bus": 0, 2068 + "prog_if": 0 2069 + }, 2070 + "driver": "amdgpu", 2071 + "driver_module": "amdgpu", 2072 + "drivers": [ 2073 + "amdgpu" 2074 + ], 2075 + "driver_modules": [ 2076 + "amdgpu" 2077 + ], 2078 + "module_alias": "pci:v00001002d00001114sv0000F111sd0000000Bbc03sc80i00" 2079 + } 2080 + ], 2081 + "hub": [ 2082 + { 2083 + "index": 57, 2084 + "attached_to": 32, 2085 + "class_list": [ 2086 + "usb", 2087 + "hub" 2088 + ], 2089 + "bus_type": { 2090 + "hex": "0086", 2091 + "name": "USB", 2092 + "value": 134 2093 + }, 2094 + "slot": { 2095 + "bus": 0, 2096 + "number": 0 2097 + }, 2098 + "base_class": { 2099 + "hex": "010a", 2100 + "name": "Hub", 2101 + "value": 266 2102 + }, 2103 + "vendor": { 2104 + "hex": "1d6b", 2105 + "name": "Linux 6.18.0 xhci-hcd", 2106 + "value": 7531 2107 + }, 2108 + "device": { 2109 + "hex": "0003", 2110 + "name": "xHCI Host Controller", 2111 + "value": 3 2112 + }, 2113 + "revision": { 2114 + "hex": "0000", 2115 + "name": "6.18", 2116 + "value": 0 2117 + }, 2118 + "serial": "0000:c3:00.3", 2119 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2120 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb6/6-0:1.0", 2121 + "sysfs_bus_id": "6-0:1.0", 2122 + "detail": { 2123 + "device_class": { 2124 + "hex": "0009", 2125 + "name": "hub", 2126 + "value": 9 2127 + }, 2128 + "device_subclass": { 2129 + "hex": "0000", 2130 + "name": "per_interface", 2131 + "value": 0 2132 + }, 2133 + "device_protocol": 3, 2134 + "interface_class": { 2135 + "hex": "0009", 2136 + "name": "hub", 2137 + "value": 9 2138 + }, 2139 + "interface_subclass": { 2140 + "hex": "0000", 2141 + "name": "per_interface", 2142 + "value": 0 2143 + }, 2144 + "interface_protocol": 0, 2145 + "interface_number": 0, 2146 + "interface_alternate_setting": 0 2147 + }, 2148 + "hotplug": "usb", 2149 + "driver": "hub", 2150 + "driver_module": "usbcore", 2151 + "drivers": [ 2152 + "hub" 2153 + ], 2154 + "driver_modules": [ 2155 + "usbcore" 2156 + ], 2157 + "module_alias": "usb:v1D6Bp0003d0618dc09dsc00dp03ic09isc00ip00in00" 2158 + }, 2159 + { 2160 + "index": 59, 2161 + "attached_to": 16, 2162 + "class_list": [ 2163 + "usb", 2164 + "hub" 2165 + ], 2166 + "bus_type": { 2167 + "hex": "0086", 2168 + "name": "USB", 2169 + "value": 134 2170 + }, 2171 + "slot": { 2172 + "bus": 0, 2173 + "number": 0 2174 + }, 2175 + "base_class": { 2176 + "hex": "010a", 2177 + "name": "Hub", 2178 + "value": 266 2179 + }, 2180 + "vendor": { 2181 + "hex": "1d6b", 2182 + "name": "Linux 6.18.0 xhci-hcd", 2183 + "value": 7531 2184 + }, 2185 + "device": { 2186 + "hex": "0002", 2187 + "name": "xHCI Host Controller", 2188 + "value": 2 2189 + }, 2190 + "revision": { 2191 + "hex": "0000", 2192 + "name": "6.18", 2193 + "value": 0 2194 + }, 2195 + "serial": "0000:c3:00.0", 2196 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2197 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-0:1.0", 2198 + "sysfs_bus_id": "3-0:1.0", 2199 + "resources": [ 2200 + { 2201 + "type": "baud", 2202 + "speed": 480000000, 2203 + "bits": 0, 2204 + "stop_bits": 0, 2205 + "parity": 0, 2206 + "handshake": 0 2207 + } 2208 + ], 2209 + "detail": { 2210 + "device_class": { 2211 + "hex": "0009", 2212 + "name": "hub", 2213 + "value": 9 2214 + }, 2215 + "device_subclass": { 2216 + "hex": "0000", 2217 + "name": "per_interface", 2218 + "value": 0 2219 + }, 2220 + "device_protocol": 1, 2221 + "interface_class": { 2222 + "hex": "0009", 2223 + "name": "hub", 2224 + "value": 9 2225 + }, 2226 + "interface_subclass": { 2227 + "hex": "0000", 2228 + "name": "per_interface", 2229 + "value": 0 2230 + }, 2231 + "interface_protocol": 0, 2232 + "interface_number": 0, 2233 + "interface_alternate_setting": 0 2234 + }, 2235 + "hotplug": "usb", 2236 + "driver": "hub", 2237 + "driver_module": "usbcore", 2238 + "drivers": [ 2239 + "hub" 2240 + ], 2241 + "driver_modules": [ 2242 + "usbcore" 2243 + ], 2244 + "module_alias": "usb:v1D6Bp0002d0618dc09dsc00dp01ic09isc00ip00in00" 2245 + }, 2246 + { 2247 + "index": 60, 2248 + "attached_to": 48, 2249 + "class_list": [ 2250 + "usb", 2251 + "hub" 2252 + ], 2253 + "bus_type": { 2254 + "hex": "0086", 2255 + "name": "USB", 2256 + "value": 134 2257 + }, 2258 + "slot": { 2259 + "bus": 0, 2260 + "number": 0 2261 + }, 2262 + "base_class": { 2263 + "hex": "010a", 2264 + "name": "Hub", 2265 + "value": 266 2266 + }, 2267 + "vendor": { 2268 + "hex": "1d6b", 2269 + "name": "Linux 6.18.0 xhci-hcd", 2270 + "value": 7531 2271 + }, 2272 + "device": { 2273 + "hex": "0002", 2274 + "name": "xHCI Host Controller", 2275 + "value": 2 2276 + }, 2277 + "revision": { 2278 + "hex": "0000", 2279 + "name": "6.18", 2280 + "value": 0 2281 + }, 2282 + "serial": "0000:c3:00.4", 2283 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2284 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.4/usb7/7-0:1.0", 2285 + "sysfs_bus_id": "7-0:1.0", 2286 + "resources": [ 2287 + { 2288 + "type": "baud", 2289 + "speed": 480000000, 2290 + "bits": 0, 2291 + "stop_bits": 0, 2292 + "parity": 0, 2293 + "handshake": 0 2294 + } 2295 + ], 2296 + "detail": { 2297 + "device_class": { 2298 + "hex": "0009", 2299 + "name": "hub", 2300 + "value": 9 2301 + }, 2302 + "device_subclass": { 2303 + "hex": "0000", 2304 + "name": "per_interface", 2305 + "value": 0 2306 + }, 2307 + "device_protocol": 1, 2308 + "interface_class": { 2309 + "hex": "0009", 2310 + "name": "hub", 2311 + "value": 9 2312 + }, 2313 + "interface_subclass": { 2314 + "hex": "0000", 2315 + "name": "per_interface", 2316 + "value": 0 2317 + }, 2318 + "interface_protocol": 0, 2319 + "interface_number": 0, 2320 + "interface_alternate_setting": 0 2321 + }, 2322 + "hotplug": "usb", 2323 + "driver": "hub", 2324 + "driver_module": "usbcore", 2325 + "drivers": [ 2326 + "hub" 2327 + ], 2328 + "driver_modules": [ 2329 + "usbcore" 2330 + ], 2331 + "module_alias": "usb:v1D6Bp0002d0618dc09dsc00dp01ic09isc00ip00in00" 2332 + }, 2333 + { 2334 + "index": 63, 2335 + "attached_to": 16, 2336 + "class_list": [ 2337 + "usb", 2338 + "hub" 2339 + ], 2340 + "bus_type": { 2341 + "hex": "0086", 2342 + "name": "USB", 2343 + "value": 134 2344 + }, 2345 + "slot": { 2346 + "bus": 0, 2347 + "number": 0 2348 + }, 2349 + "base_class": { 2350 + "hex": "010a", 2351 + "name": "Hub", 2352 + "value": 266 2353 + }, 2354 + "vendor": { 2355 + "hex": "1d6b", 2356 + "name": "Linux 6.18.0 xhci-hcd", 2357 + "value": 7531 2358 + }, 2359 + "device": { 2360 + "hex": "0003", 2361 + "name": "xHCI Host Controller", 2362 + "value": 3 2363 + }, 2364 + "revision": { 2365 + "hex": "0000", 2366 + "name": "6.18", 2367 + "value": 0 2368 + }, 2369 + "serial": "0000:c3:00.0", 2370 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2371 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb4/4-0:1.0", 2372 + "sysfs_bus_id": "4-0:1.0", 2373 + "detail": { 2374 + "device_class": { 2375 + "hex": "0009", 2376 + "name": "hub", 2377 + "value": 9 2378 + }, 2379 + "device_subclass": { 2380 + "hex": "0000", 2381 + "name": "per_interface", 2382 + "value": 0 2383 + }, 2384 + "device_protocol": 3, 2385 + "interface_class": { 2386 + "hex": "0009", 2387 + "name": "hub", 2388 + "value": 9 2389 + }, 2390 + "interface_subclass": { 2391 + "hex": "0000", 2392 + "name": "per_interface", 2393 + "value": 0 2394 + }, 2395 + "interface_protocol": 0, 2396 + "interface_number": 0, 2397 + "interface_alternate_setting": 0 2398 + }, 2399 + "hotplug": "usb", 2400 + "driver": "hub", 2401 + "driver_module": "usbcore", 2402 + "drivers": [ 2403 + "hub" 2404 + ], 2405 + "driver_modules": [ 2406 + "usbcore" 2407 + ], 2408 + "module_alias": "usb:v1D6Bp0003d0618dc09dsc00dp03ic09isc00ip00in00" 2409 + }, 2410 + { 2411 + "index": 65, 2412 + "attached_to": 48, 2413 + "class_list": [ 2414 + "usb", 2415 + "hub" 2416 + ], 2417 + "bus_type": { 2418 + "hex": "0086", 2419 + "name": "USB", 2420 + "value": 134 2421 + }, 2422 + "slot": { 2423 + "bus": 0, 2424 + "number": 0 2425 + }, 2426 + "base_class": { 2427 + "hex": "010a", 2428 + "name": "Hub", 2429 + "value": 266 2430 + }, 2431 + "vendor": { 2432 + "hex": "1d6b", 2433 + "name": "Linux 6.18.0 xhci-hcd", 2434 + "value": 7531 2435 + }, 2436 + "device": { 2437 + "hex": "0003", 2438 + "name": "xHCI Host Controller", 2439 + "value": 3 2440 + }, 2441 + "revision": { 2442 + "hex": "0000", 2443 + "name": "6.18", 2444 + "value": 0 2445 + }, 2446 + "serial": "0000:c3:00.4", 2447 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2448 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.4/usb8/8-0:1.0", 2449 + "sysfs_bus_id": "8-0:1.0", 2450 + "detail": { 2451 + "device_class": { 2452 + "hex": "0009", 2453 + "name": "hub", 2454 + "value": 9 2455 + }, 2456 + "device_subclass": { 2457 + "hex": "0000", 2458 + "name": "per_interface", 2459 + "value": 0 2460 + }, 2461 + "device_protocol": 3, 2462 + "interface_class": { 2463 + "hex": "0009", 2464 + "name": "hub", 2465 + "value": 9 2466 + }, 2467 + "interface_subclass": { 2468 + "hex": "0000", 2469 + "name": "per_interface", 2470 + "value": 0 2471 + }, 2472 + "interface_protocol": 0, 2473 + "interface_number": 0, 2474 + "interface_alternate_setting": 0 2475 + }, 2476 + "hotplug": "usb", 2477 + "driver": "hub", 2478 + "driver_module": "usbcore", 2479 + "drivers": [ 2480 + "hub" 2481 + ], 2482 + "driver_modules": [ 2483 + "usbcore" 2484 + ], 2485 + "module_alias": "usb:v1D6Bp0003d0618dc09dsc00dp03ic09isc00ip00in00" 2486 + }, 2487 + { 2488 + "index": 66, 2489 + "attached_to": 21, 2490 + "class_list": [ 2491 + "usb", 2492 + "hub" 2493 + ], 2494 + "bus_type": { 2495 + "hex": "0086", 2496 + "name": "USB", 2497 + "value": 134 2498 + }, 2499 + "slot": { 2500 + "bus": 0, 2501 + "number": 0 2502 + }, 2503 + "base_class": { 2504 + "hex": "010a", 2505 + "name": "Hub", 2506 + "value": 266 2507 + }, 2508 + "vendor": { 2509 + "hex": "1d6b", 2510 + "name": "Linux 6.18.0 xhci-hcd", 2511 + "value": 7531 2512 + }, 2513 + "device": { 2514 + "hex": "0002", 2515 + "name": "xHCI Host Controller", 2516 + "value": 2 2517 + }, 2518 + "revision": { 2519 + "hex": "0000", 2520 + "name": "6.18", 2521 + "value": 0 2522 + }, 2523 + "serial": "0000:c1:00.4", 2524 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2525 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.4/usb1/1-0:1.0", 2526 + "sysfs_bus_id": "1-0:1.0", 2527 + "resources": [ 2528 + { 2529 + "type": "baud", 2530 + "speed": 480000000, 2531 + "bits": 0, 2532 + "stop_bits": 0, 2533 + "parity": 0, 2534 + "handshake": 0 2535 + } 2536 + ], 2537 + "detail": { 2538 + "device_class": { 2539 + "hex": "0009", 2540 + "name": "hub", 2541 + "value": 9 2542 + }, 2543 + "device_subclass": { 2544 + "hex": "0000", 2545 + "name": "per_interface", 2546 + "value": 0 2547 + }, 2548 + "device_protocol": 1, 2549 + "interface_class": { 2550 + "hex": "0009", 2551 + "name": "hub", 2552 + "value": 9 2553 + }, 2554 + "interface_subclass": { 2555 + "hex": "0000", 2556 + "name": "per_interface", 2557 + "value": 0 2558 + }, 2559 + "interface_protocol": 0, 2560 + "interface_number": 0, 2561 + "interface_alternate_setting": 0 2562 + }, 2563 + "hotplug": "usb", 2564 + "driver": "hub", 2565 + "driver_module": "usbcore", 2566 + "drivers": [ 2567 + "hub" 2568 + ], 2569 + "driver_modules": [ 2570 + "usbcore" 2571 + ], 2572 + "module_alias": "usb:v1D6Bp0002d0618dc09dsc00dp01ic09isc00ip00in00" 2573 + }, 2574 + { 2575 + "index": 68, 2576 + "attached_to": 32, 2577 + "class_list": [ 2578 + "usb", 2579 + "hub" 2580 + ], 2581 + "bus_type": { 2582 + "hex": "0086", 2583 + "name": "USB", 2584 + "value": 134 2585 + }, 2586 + "slot": { 2587 + "bus": 0, 2588 + "number": 0 2589 + }, 2590 + "base_class": { 2591 + "hex": "010a", 2592 + "name": "Hub", 2593 + "value": 266 2594 + }, 2595 + "vendor": { 2596 + "hex": "1d6b", 2597 + "name": "Linux 6.18.0 xhci-hcd", 2598 + "value": 7531 2599 + }, 2600 + "device": { 2601 + "hex": "0002", 2602 + "name": "xHCI Host Controller", 2603 + "value": 2 2604 + }, 2605 + "revision": { 2606 + "hex": "0000", 2607 + "name": "6.18", 2608 + "value": 0 2609 + }, 2610 + "serial": "0000:c3:00.3", 2611 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2612 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.3/usb5/5-0:1.0", 2613 + "sysfs_bus_id": "5-0:1.0", 2614 + "resources": [ 2615 + { 2616 + "type": "baud", 2617 + "speed": 480000000, 2618 + "bits": 0, 2619 + "stop_bits": 0, 2620 + "parity": 0, 2621 + "handshake": 0 2622 + } 2623 + ], 2624 + "detail": { 2625 + "device_class": { 2626 + "hex": "0009", 2627 + "name": "hub", 2628 + "value": 9 2629 + }, 2630 + "device_subclass": { 2631 + "hex": "0000", 2632 + "name": "per_interface", 2633 + "value": 0 2634 + }, 2635 + "device_protocol": 1, 2636 + "interface_class": { 2637 + "hex": "0009", 2638 + "name": "hub", 2639 + "value": 9 2640 + }, 2641 + "interface_subclass": { 2642 + "hex": "0000", 2643 + "name": "per_interface", 2644 + "value": 0 2645 + }, 2646 + "interface_protocol": 0, 2647 + "interface_number": 0, 2648 + "interface_alternate_setting": 0 2649 + }, 2650 + "hotplug": "usb", 2651 + "driver": "hub", 2652 + "driver_module": "usbcore", 2653 + "drivers": [ 2654 + "hub" 2655 + ], 2656 + "driver_modules": [ 2657 + "usbcore" 2658 + ], 2659 + "module_alias": "usb:v1D6Bp0002d0618dc09dsc00dp01ic09isc00ip00in00" 2660 + }, 2661 + { 2662 + "index": 71, 2663 + "attached_to": 21, 2664 + "class_list": [ 2665 + "usb", 2666 + "hub" 2667 + ], 2668 + "bus_type": { 2669 + "hex": "0086", 2670 + "name": "USB", 2671 + "value": 134 2672 + }, 2673 + "slot": { 2674 + "bus": 0, 2675 + "number": 0 2676 + }, 2677 + "base_class": { 2678 + "hex": "010a", 2679 + "name": "Hub", 2680 + "value": 266 2681 + }, 2682 + "vendor": { 2683 + "hex": "1d6b", 2684 + "name": "Linux 6.18.0 xhci-hcd", 2685 + "value": 7531 2686 + }, 2687 + "device": { 2688 + "hex": "0003", 2689 + "name": "xHCI Host Controller", 2690 + "value": 3 2691 + }, 2692 + "revision": { 2693 + "hex": "0000", 2694 + "name": "6.18", 2695 + "value": 0 2696 + }, 2697 + "serial": "0000:c1:00.4", 2698 + "model": "Linux 6.18.0 xhci-hcd xHCI Host Controller", 2699 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.4/usb2/2-0:1.0", 2700 + "sysfs_bus_id": "2-0:1.0", 2701 + "detail": { 2702 + "device_class": { 2703 + "hex": "0009", 2704 + "name": "hub", 2705 + "value": 9 2706 + }, 2707 + "device_subclass": { 2708 + "hex": "0000", 2709 + "name": "per_interface", 2710 + "value": 0 2711 + }, 2712 + "device_protocol": 3, 2713 + "interface_class": { 2714 + "hex": "0009", 2715 + "name": "hub", 2716 + "value": 9 2717 + }, 2718 + "interface_subclass": { 2719 + "hex": "0000", 2720 + "name": "per_interface", 2721 + "value": 0 2722 + }, 2723 + "interface_protocol": 0, 2724 + "interface_number": 0, 2725 + "interface_alternate_setting": 0 2726 + }, 2727 + "hotplug": "usb", 2728 + "driver": "hub", 2729 + "driver_module": "usbcore", 2730 + "drivers": [ 2731 + "hub" 2732 + ], 2733 + "driver_modules": [ 2734 + "usbcore" 2735 + ], 2736 + "module_alias": "usb:v1D6Bp0003d0618dc09dsc00dp03ic09isc00ip00in00" 2737 + } 2738 + ], 2739 + "memory": [ 2740 + { 2741 + "index": 15, 2742 + "attached_to": 0, 2743 + "class_list": [ 2744 + "memory" 2745 + ], 2746 + "base_class": { 2747 + "hex": "0101", 2748 + "name": "Internally Used Class", 2749 + "value": 257 2750 + }, 2751 + "sub_class": { 2752 + "hex": "0002", 2753 + "name": "Main Memory", 2754 + "value": 2 2755 + }, 2756 + "model": "Main Memory", 2757 + "resources": [ 2758 + { 2759 + "type": "phys_mem", 2760 + "range": 51539607552 2761 + } 2762 + ] 2763 + } 2764 + ], 2765 + "monitor": [ 2766 + { 2767 + "index": 54, 2768 + "attached_to": 31, 2769 + "class_list": [ 2770 + "monitor" 2771 + ], 2772 + "base_class": { 2773 + "hex": "0100", 2774 + "name": "Monitor", 2775 + "value": 256 2776 + }, 2777 + "sub_class": { 2778 + "hex": "0002", 2779 + "name": "LCD Monitor", 2780 + "value": 2 2781 + }, 2782 + "vendor": { 2783 + "hex": "09e5", 2784 + "name": "BOE CQ", 2785 + "value": 2533 2786 + }, 2787 + "device": { 2788 + "hex": "0bca", 2789 + "value": 3018 2790 + }, 2791 + "serial": "0", 2792 + "model": "BOE CQ LCD Monitor", 2793 + "resources": [ 2794 + { 2795 + "type": "monitor", 2796 + "width": 2256, 2797 + "height": 1504, 2798 + "vertical_frequency": 60, 2799 + "interlaced": false 2800 + }, 2801 + { 2802 + "type": "size", 2803 + "unit": "mm", 2804 + "value_1": 285, 2805 + "value_2": 190 2806 + } 2807 + ], 2808 + "detail": { 2809 + "manufacture_year": 2022, 2810 + "manufacture_week": 47, 2811 + "vertical_sync": { 2812 + "min": 0, 2813 + "max": 0 2814 + }, 2815 + "horizontal_sync": { 2816 + "min": 0, 2817 + "max": 0 2818 + }, 2819 + "horizontal_sync_timings": { 2820 + "disp": 2256, 2821 + "sync_start": 2304, 2822 + "sync_end": 2336, 2823 + "total": 2536 2824 + }, 2825 + "vertical_sync_timings": { 2826 + "disp": 1504, 2827 + "sync_start": 1507, 2828 + "sync_end": 1513, 2829 + "total": 1549 2830 + }, 2831 + "clock": 188550, 2832 + "width": 2256, 2833 + "height": 1504, 2834 + "width_millimetres": 285, 2835 + "height_millimetres": 190, 2836 + "horizontal_flag": 45, 2837 + "vertical_flag": 43, 2838 + "vendor": "BOE CQ", 2839 + "name": "" 2840 + } 2841 + } 2842 + ], 2843 + "mouse": [ 2844 + { 2845 + "index": 75, 2846 + "attached_to": 0, 2847 + "bus_type": { 2848 + "hex": "0081", 2849 + "name": "serial", 2850 + "value": 129 2851 + }, 2852 + "base_class": { 2853 + "hex": "0118", 2854 + "name": "touchpad", 2855 + "value": 280 2856 + }, 2857 + "sub_class": { 2858 + "hex": "0001", 2859 + "name": "bus", 2860 + "value": 1 2861 + }, 2862 + "vendor": { 2863 + "hex": "093a", 2864 + "value": 2362 2865 + }, 2866 + "device": { 2867 + "hex": "0274", 2868 + "value": 628 2869 + }, 2870 + "sysfs_id": "/devices/platform/AMDI0010:03/i2c-2/i2c-PIXA3854:00/0018:093A:0274.0004/input/input9", 2871 + "unix_device_names": [ 2872 + "/dev/input/event7", 2873 + "/dev/input/ + handler" 2874 + ] 2875 + } 2876 + ], 2877 + "network_controller": [ 2878 + { 2879 + "index": 37, 2880 + "attached_to": 25, 2881 + "class_list": [ 2882 + "network_controller", 2883 + "pci" 2884 + ], 2885 + "bus_type": { 2886 + "hex": "0004", 2887 + "name": "PCI", 2888 + "value": 4 2889 + }, 2890 + "slot": { 2891 + "bus": 192, 2892 + "number": 0 2893 + }, 2894 + "base_class": { 2895 + "hex": "0002", 2896 + "name": "Network controller", 2897 + "value": 2 2898 + }, 2899 + "sub_class": { 2900 + "hex": "0000", 2901 + "name": "Ethernet controller", 2902 + "value": 0 2903 + }, 2904 + "vendor": { 2905 + "hex": "14c3", 2906 + "value": 5315 2907 + }, 2908 + "sub_vendor": { 2909 + "hex": "14c3", 2910 + "value": 5315 2911 + }, 2912 + "device": { 2913 + "hex": "0717", 2914 + "value": 1815 2915 + }, 2916 + "sub_device": { 2917 + "hex": "0717", 2918 + "value": 1815 2919 + }, 2920 + "model": "Ethernet controller", 2921 + "sysfs_id": "/devices/pci0000:00/0000:00:02.3/0000:c0:00.0", 2922 + "sysfs_bus_id": "0000:c0:00.0", 2923 + "sysfs_iommu_group_id": 15, 2924 + "unix_device_names": [ 2925 + "wlp192s0" 2926 + ], 2927 + "resources": [ 2928 + { 2929 + "type": "hwaddr", 2930 + "address": 97 2931 + }, 2932 + { 2933 + "type": "phwaddr", 2934 + "address": 97 2935 + } 2936 + ], 2937 + "detail": { 2938 + "function": 0, 2939 + "command": 1030, 2940 + "header_type": 0, 2941 + "secondary_bus": 0, 2942 + "prog_if": 0 2943 + }, 2944 + "driver": "mt7925e", 2945 + "driver_module": "mt7925e", 2946 + "drivers": [ 2947 + "mt7925e" 2948 + ], 2949 + "driver_modules": [ 2950 + "mt7925e" 2951 + ], 2952 + "module_alias": "pci:v000014C3d00000717sv000014C3sd00000717bc02sc80i00" 2953 + } 2954 + ], 2955 + "network_interface": [ 2956 + { 2957 + "index": 73, 2958 + "attached_to": 37, 2959 + "class_list": [ 2960 + "network_interface" 2961 + ], 2962 + "base_class": { 2963 + "hex": "0107", 2964 + "name": "Network Interface", 2965 + "value": 263 2966 + }, 2967 + "sub_class": { 2968 + "hex": "0001", 2969 + "name": "Ethernet", 2970 + "value": 1 2971 + }, 2972 + "model": "Ethernet network interface", 2973 + "sysfs_id": "/class/net/wlp192s0", 2974 + "sysfs_device_link": "/devices/pci0000:00/0000:00:02.3/0000:c0:00.0", 2975 + "unix_device_names": [ 2976 + "wlp192s0" 2977 + ], 2978 + "resources": [ 2979 + { 2980 + "type": "hwaddr", 2981 + "address": 97 2982 + }, 2983 + { 2984 + "type": "phwaddr", 2985 + "address": 97 2986 + } 2987 + ], 2988 + "driver": "mt7925e", 2989 + "driver_module": "mt7925e", 2990 + "drivers": [ 2991 + "mt7925e" 2992 + ], 2993 + "driver_modules": [ 2994 + "mt7925e" 2995 + ] 2996 + }, 2997 + { 2998 + "index": 74, 2999 + "attached_to": 0, 3000 + "class_list": [ 3001 + "network_interface" 3002 + ], 3003 + "base_class": { 3004 + "hex": "0107", 3005 + "name": "Network Interface", 3006 + "value": 263 3007 + }, 3008 + "sub_class": { 3009 + "hex": "0000", 3010 + "name": "Loopback", 3011 + "value": 0 3012 + }, 3013 + "model": "Loopback network interface", 3014 + "sysfs_id": "/class/net/lo", 3015 + "unix_device_names": [ 3016 + "lo" 3017 + ] 3018 + } 3019 + ], 3020 + "pci": [ 3021 + { 3022 + "index": 24, 3023 + "attached_to": 52, 3024 + "class_list": [ 3025 + "pci", 3026 + "unknown" 3027 + ], 3028 + "bus_type": { 3029 + "hex": "0004", 3030 + "name": "PCI", 3031 + "value": 4 3032 + }, 3033 + "slot": { 3034 + "bus": 194, 3035 + "number": 0 3036 + }, 3037 + "base_class": { 3038 + "hex": "0013", 3039 + "value": 19 3040 + }, 3041 + "vendor": { 3042 + "hex": "1022", 3043 + "name": "AMD", 3044 + "value": 4130 3045 + }, 3046 + "sub_vendor": { 3047 + "hex": "f111", 3048 + "value": 61713 3049 + }, 3050 + "device": { 3051 + "hex": "1116", 3052 + "value": 4374 3053 + }, 3054 + "sub_device": { 3055 + "hex": "000b", 3056 + "value": 11 3057 + }, 3058 + "model": "unknown unknown", 3059 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2/0000:c2:00.0", 3060 + "sysfs_bus_id": "0000:c2:00.0", 3061 + "sysfs_iommu_group_id": 22, 3062 + "detail": { 3063 + "function": 0, 3064 + "command": 0, 3065 + "header_type": 0, 3066 + "secondary_bus": 0, 3067 + "prog_if": 0 3068 + }, 3069 + "module_alias": "pci:v00001022d00001116sv0000F111sd0000000Bbc13sc00i00" 3070 + }, 3071 + { 3072 + "index": 26, 3073 + "attached_to": 38, 3074 + "class_list": [ 3075 + "pci", 3076 + "unknown" 3077 + ], 3078 + "bus_type": { 3079 + "hex": "0004", 3080 + "name": "PCI", 3081 + "value": 4 3082 + }, 3083 + "slot": { 3084 + "bus": 193, 3085 + "number": 0 3086 + }, 3087 + "base_class": { 3088 + "hex": "0010", 3089 + "name": "Encryption controller", 3090 + "value": 16 3091 + }, 3092 + "sub_class": { 3093 + "hex": "0080", 3094 + "name": "Encryption controller", 3095 + "value": 128 3096 + }, 3097 + "vendor": { 3098 + "hex": "1022", 3099 + "name": "AMD", 3100 + "value": 4130 3101 + }, 3102 + "sub_vendor": { 3103 + "hex": "f111", 3104 + "value": 61713 3105 + }, 3106 + "device": { 3107 + "hex": "17e0", 3108 + "value": 6112 3109 + }, 3110 + "sub_device": { 3111 + "hex": "000b", 3112 + "value": 11 3113 + }, 3114 + "model": "AMD Encryption controller", 3115 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.2", 3116 + "sysfs_bus_id": "0000:c1:00.2", 3117 + "sysfs_iommu_group_id": 18, 3118 + "detail": { 3119 + "function": 2, 3120 + "command": 1030, 3121 + "header_type": 0, 3122 + "secondary_bus": 0, 3123 + "prog_if": 0 3124 + }, 3125 + "driver": "ccp", 3126 + "driver_module": "ccp", 3127 + "drivers": [ 3128 + "ccp" 3129 + ], 3130 + "driver_modules": [ 3131 + "ccp" 3132 + ], 3133 + "module_alias": "pci:v00001022d000017E0sv0000F111sd0000000Bbc10sc80i00" 3134 + }, 3135 + { 3136 + "index": 33, 3137 + "attached_to": 0, 3138 + "class_list": [ 3139 + "pci", 3140 + "unknown" 3141 + ], 3142 + "bus_type": { 3143 + "hex": "0004", 3144 + "name": "PCI", 3145 + "value": 4 3146 + }, 3147 + "slot": { 3148 + "bus": 0, 3149 + "number": 0 3150 + }, 3151 + "base_class": { 3152 + "hex": "0008", 3153 + "name": "Generic system peripheral", 3154 + "value": 8 3155 + }, 3156 + "sub_class": { 3157 + "hex": "0006", 3158 + "value": 6 3159 + }, 3160 + "vendor": { 3161 + "hex": "1022", 3162 + "name": "AMD", 3163 + "value": 4130 3164 + }, 3165 + "sub_vendor": { 3166 + "hex": "f111", 3167 + "value": 61713 3168 + }, 3169 + "device": { 3170 + "hex": "1123", 3171 + "value": 4387 3172 + }, 3173 + "sub_device": { 3174 + "hex": "000b", 3175 + "value": 11 3176 + }, 3177 + "model": "AMD Generic system peripheral", 3178 + "sysfs_id": "/devices/pci0000:00/0000:00:00.2", 3179 + "sysfs_bus_id": "0000:00:00.2", 3180 + "detail": { 3181 + "function": 2, 3182 + "command": 1028, 3183 + "header_type": 0, 3184 + "secondary_bus": 0, 3185 + "prog_if": 0 3186 + }, 3187 + "module_alias": "pci:v00001022d00001123sv0000F111sd0000000Bbc08sc06i00" 3188 + }, 3189 + { 3190 + "index": 41, 3191 + "attached_to": 38, 3192 + "class_list": [ 3193 + "pci", 3194 + "unknown" 3195 + ], 3196 + "bus_type": { 3197 + "hex": "0004", 3198 + "name": "PCI", 3199 + "value": 4 3200 + }, 3201 + "slot": { 3202 + "bus": 193, 3203 + "number": 0 3204 + }, 3205 + "base_class": { 3206 + "hex": "0004", 3207 + "name": "Multimedia controller", 3208 + "value": 4 3209 + }, 3210 + "sub_class": { 3211 + "hex": "0080", 3212 + "name": "Multimedia controller", 3213 + "value": 128 3214 + }, 3215 + "vendor": { 3216 + "hex": "1022", 3217 + "name": "AMD", 3218 + "value": 4130 3219 + }, 3220 + "sub_vendor": { 3221 + "hex": "f111", 3222 + "value": 61713 3223 + }, 3224 + "device": { 3225 + "hex": "15e2", 3226 + "value": 5602 3227 + }, 3228 + "sub_device": { 3229 + "hex": "000b", 3230 + "value": 11 3231 + }, 3232 + "revision": { 3233 + "hex": "0071", 3234 + "value": 113 3235 + }, 3236 + "model": "AMD Multimedia controller", 3237 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.5", 3238 + "sysfs_bus_id": "0000:c1:00.5", 3239 + "sysfs_iommu_group_id": 20, 3240 + "detail": { 3241 + "function": 5, 3242 + "command": 6, 3243 + "header_type": 0, 3244 + "secondary_bus": 0, 3245 + "prog_if": 0 3246 + }, 3247 + "driver": "snd_acp_pci", 3248 + "driver_module": "snd_acp_pci", 3249 + "drivers": [ 3250 + "snd_acp_pci" 3251 + ], 3252 + "driver_modules": [ 3253 + "snd_acp_pci" 3254 + ], 3255 + "module_alias": "pci:v00001022d000015E2sv0000F111sd0000000Bbc04sc80i00" 3256 + }, 3257 + { 3258 + "index": 44, 3259 + "attached_to": 52, 3260 + "class_list": [ 3261 + "pci", 3262 + "unknown" 3263 + ], 3264 + "bus_type": { 3265 + "hex": "0004", 3266 + "name": "PCI", 3267 + "value": 4 3268 + }, 3269 + "slot": { 3270 + "bus": 194, 3271 + "number": 0 3272 + }, 3273 + "base_class": { 3274 + "hex": "0011", 3275 + "name": "Signal processing controller", 3276 + "value": 17 3277 + }, 3278 + "sub_class": { 3279 + "hex": "0080", 3280 + "name": "Signal processing controller", 3281 + "value": 128 3282 + }, 3283 + "vendor": { 3284 + "hex": "1022", 3285 + "name": "AMD", 3286 + "value": 4130 3287 + }, 3288 + "sub_vendor": { 3289 + "hex": "f111", 3290 + "value": 61713 3291 + }, 3292 + "device": { 3293 + "hex": "17f0", 3294 + "value": 6128 3295 + }, 3296 + "sub_device": { 3297 + "hex": "000b", 3298 + "value": 11 3299 + }, 3300 + "revision": { 3301 + "hex": "0020", 3302 + "value": 32 3303 + }, 3304 + "model": "AMD Signal processing controller", 3305 + "sysfs_id": "/devices/pci0000:00/0000:00:08.2/0000:c2:00.1", 3306 + "sysfs_bus_id": "0000:c2:00.1", 3307 + "sysfs_iommu_group_id": 23, 3308 + "detail": { 3309 + "function": 1, 3310 + "command": 1030, 3311 + "header_type": 0, 3312 + "secondary_bus": 0, 3313 + "prog_if": 0 3314 + }, 3315 + "driver": "amdxdna", 3316 + "driver_module": "amdxdna", 3317 + "drivers": [ 3318 + "amdxdna" 3319 + ], 3320 + "driver_modules": [ 3321 + "amdxdna" 3322 + ], 3323 + "module_alias": "pci:v00001022d000017F0sv0000F111sd0000000Bbc11sc80i00" 3324 + }, 3325 + { 3326 + "index": 51, 3327 + "attached_to": 0, 3328 + "class_list": [ 3329 + "pci", 3330 + "unknown" 3331 + ], 3332 + "bus_type": { 3333 + "hex": "0004", 3334 + "name": "PCI", 3335 + "value": 4 3336 + }, 3337 + "slot": { 3338 + "bus": 0, 3339 + "number": 20 3340 + }, 3341 + "base_class": { 3342 + "hex": "000c", 3343 + "name": "Serial bus controller", 3344 + "value": 12 3345 + }, 3346 + "sub_class": { 3347 + "hex": "0005", 3348 + "name": "SMBus", 3349 + "value": 5 3350 + }, 3351 + "vendor": { 3352 + "hex": "1022", 3353 + "name": "AMD", 3354 + "value": 4130 3355 + }, 3356 + "sub_vendor": { 3357 + "hex": "f111", 3358 + "value": 61713 3359 + }, 3360 + "device": { 3361 + "hex": "790b", 3362 + "value": 30987 3363 + }, 3364 + "sub_device": { 3365 + "hex": "000b", 3366 + "value": 11 3367 + }, 3368 + "revision": { 3369 + "hex": "0071", 3370 + "value": 113 3371 + }, 3372 + "model": "AMD SMBus", 3373 + "sysfs_id": "/devices/pci0000:00/0000:00:14.0", 3374 + "sysfs_bus_id": "0000:00:14.0", 3375 + "sysfs_iommu_group_id": 12, 3376 + "detail": { 3377 + "function": 0, 3378 + "command": 1027, 3379 + "header_type": 0, 3380 + "secondary_bus": 0, 3381 + "prog_if": 0 3382 + }, 3383 + "driver": "piix4_smbus", 3384 + "driver_module": "i2c_piix4", 3385 + "drivers": [ 3386 + "piix4_smbus" 3387 + ], 3388 + "driver_modules": [ 3389 + "i2c_piix4" 3390 + ], 3391 + "module_alias": "pci:v00001022d0000790Bsv0000F111sd0000000Bbc0Csc05i00" 3392 + } 3393 + ], 3394 + "sound": [ 3395 + { 3396 + "index": 17, 3397 + "attached_to": 38, 3398 + "class_list": [ 3399 + "sound", 3400 + "pci" 3401 + ], 3402 + "bus_type": { 3403 + "hex": "0004", 3404 + "name": "PCI", 3405 + "value": 4 3406 + }, 3407 + "slot": { 3408 + "bus": 193, 3409 + "number": 0 3410 + }, 3411 + "base_class": { 3412 + "hex": "0004", 3413 + "name": "Multimedia controller", 3414 + "value": 4 3415 + }, 3416 + "sub_class": { 3417 + "hex": "0003", 3418 + "value": 3 3419 + }, 3420 + "vendor": { 3421 + "hex": "1022", 3422 + "name": "AMD", 3423 + "value": 4130 3424 + }, 3425 + "sub_vendor": { 3426 + "hex": "f111", 3427 + "value": 61713 3428 + }, 3429 + "device": { 3430 + "hex": "15e3", 3431 + "value": 5603 3432 + }, 3433 + "sub_device": { 3434 + "hex": "000b", 3435 + "value": 11 3436 + }, 3437 + "model": "AMD Multimedia controller", 3438 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.6", 3439 + "sysfs_bus_id": "0000:c1:00.6", 3440 + "sysfs_iommu_group_id": 21, 3441 + "detail": { 3442 + "function": 6, 3443 + "command": 1030, 3444 + "header_type": 0, 3445 + "secondary_bus": 0, 3446 + "prog_if": 0 3447 + }, 3448 + "driver": "snd_hda_intel", 3449 + "driver_module": "snd_hda_intel", 3450 + "drivers": [ 3451 + "snd_hda_intel" 3452 + ], 3453 + "driver_modules": [ 3454 + "snd_hda_intel" 3455 + ], 3456 + "module_alias": "pci:v00001022d000015E3sv0000F111sd0000000Bbc04sc03i00" 3457 + }, 3458 + { 3459 + "index": 47, 3460 + "attached_to": 38, 3461 + "class_list": [ 3462 + "sound", 3463 + "pci" 3464 + ], 3465 + "bus_type": { 3466 + "hex": "0004", 3467 + "name": "PCI", 3468 + "value": 4 3469 + }, 3470 + "slot": { 3471 + "bus": 193, 3472 + "number": 0 3473 + }, 3474 + "base_class": { 3475 + "hex": "0004", 3476 + "name": "Multimedia controller", 3477 + "value": 4 3478 + }, 3479 + "sub_class": { 3480 + "hex": "0003", 3481 + "value": 3 3482 + }, 3483 + "vendor": { 3484 + "hex": "1002", 3485 + "name": "ATI Technologies Inc", 3486 + "value": 4098 3487 + }, 3488 + "sub_vendor": { 3489 + "hex": "f111", 3490 + "value": 61713 3491 + }, 3492 + "device": { 3493 + "hex": "1640", 3494 + "value": 5696 3495 + }, 3496 + "sub_device": { 3497 + "hex": "000b", 3498 + "value": 11 3499 + }, 3500 + "model": "ATI Multimedia controller", 3501 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1", 3502 + "sysfs_bus_id": "0000:c1:00.1", 3503 + "sysfs_iommu_group_id": 17, 3504 + "detail": { 3505 + "function": 1, 3506 + "command": 1030, 3507 + "header_type": 0, 3508 + "secondary_bus": 0, 3509 + "prog_if": 0 3510 + }, 3511 + "driver": "snd_hda_intel", 3512 + "driver_module": "snd_hda_intel", 3513 + "drivers": [ 3514 + "snd_hda_intel" 3515 + ], 3516 + "driver_modules": [ 3517 + "snd_hda_intel" 3518 + ], 3519 + "module_alias": "pci:v00001002d00001640sv0000F111sd0000000Bbc04sc03i00" 3520 + } 3521 + ], 3522 + "storage_controller": [ 3523 + { 3524 + "index": 29, 3525 + "attached_to": 30, 3526 + "class_list": [ 3527 + "storage_controller", 3528 + "pci" 3529 + ], 3530 + "bus_type": { 3531 + "hex": "0004", 3532 + "name": "PCI", 3533 + "value": 4 3534 + }, 3535 + "slot": { 3536 + "bus": 191, 3537 + "number": 0 3538 + }, 3539 + "base_class": { 3540 + "hex": "0001", 3541 + "name": "Mass storage controller", 3542 + "value": 1 3543 + }, 3544 + "sub_class": { 3545 + "hex": "0008", 3546 + "value": 8 3547 + }, 3548 + "pci_interface": { 3549 + "hex": "0002", 3550 + "value": 2 3551 + }, 3552 + "vendor": { 3553 + "hex": "15b7", 3554 + "value": 5559 3555 + }, 3556 + "sub_vendor": { 3557 + "hex": "15b7", 3558 + "value": 5559 3559 + }, 3560 + "device": { 3561 + "hex": "5045", 3562 + "value": 20549 3563 + }, 3564 + "sub_device": { 3565 + "hex": "5045", 3566 + "value": 20549 3567 + }, 3568 + "revision": { 3569 + "hex": "0001", 3570 + "value": 1 3571 + }, 3572 + "model": "Mass storage controller", 3573 + "sysfs_id": "/devices/pci0000:00/0000:00:02.1/0000:bf:00.0", 3574 + "sysfs_bus_id": "0000:bf:00.0", 3575 + "sysfs_iommu_group_id": 14, 3576 + "detail": { 3577 + "function": 0, 3578 + "command": 1031, 3579 + "header_type": 0, 3580 + "secondary_bus": 0, 3581 + "prog_if": 2 3582 + }, 3583 + "driver": "nvme", 3584 + "driver_module": "nvme", 3585 + "drivers": [ 3586 + "nvme" 3587 + ], 3588 + "driver_modules": [ 3589 + "nvme" 3590 + ], 3591 + "module_alias": "pci:v000015B7d00005045sv000015B7sd00005045bc01sc08i02" 3592 + } 3593 + ], 3594 + "system": { 3595 + "form_factor": "laptop" 3596 + }, 3597 + "usb": [ 3598 + { 3599 + "index": 58, 3600 + "attached_to": 59, 3601 + "class_list": [ 3602 + "usb", 3603 + "unknown" 3604 + ], 3605 + "bus_type": { 3606 + "hex": "0086", 3607 + "name": "USB", 3608 + "value": 134 3609 + }, 3610 + "slot": { 3611 + "bus": 0, 3612 + "number": 0 3613 + }, 3614 + "base_class": { 3615 + "hex": "0000", 3616 + "name": "Unclassified device", 3617 + "value": 0 3618 + }, 3619 + "sub_class": { 3620 + "hex": "0000", 3621 + "name": "Unclassified device", 3622 + "value": 0 3623 + }, 3624 + "vendor": { 3625 + "hex": "32ac", 3626 + "name": "Framework", 3627 + "value": 12972 3628 + }, 3629 + "device": { 3630 + "hex": "0002", 3631 + "name": "HDMI Expansion Card", 3632 + "value": 2 3633 + }, 3634 + "serial": "11AD1D009AA58F0512110B00", 3635 + "model": "Framework HDMI Expansion Card", 3636 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-2/3-2:1.1", 3637 + "sysfs_bus_id": "3-2:1.1", 3638 + "resources": [ 3639 + { 3640 + "type": "baud", 3641 + "speed": 12000000, 3642 + "bits": 0, 3643 + "stop_bits": 0, 3644 + "parity": 0, 3645 + "handshake": 0 3646 + } 3647 + ], 3648 + "detail": { 3649 + "device_class": { 3650 + "hex": "0000", 3651 + "name": "per_interface", 3652 + "value": 0 3653 + }, 3654 + "device_subclass": { 3655 + "hex": "0000", 3656 + "name": "per_interface", 3657 + "value": 0 3658 + }, 3659 + "device_protocol": 0, 3660 + "interface_class": { 3661 + "hex": "0003", 3662 + "name": "hid", 3663 + "value": 3 3664 + }, 3665 + "interface_subclass": { 3666 + "hex": "0000", 3667 + "name": "per_interface", 3668 + "value": 0 3669 + }, 3670 + "interface_protocol": 0, 3671 + "interface_number": 1, 3672 + "interface_alternate_setting": 0 3673 + }, 3674 + "hotplug": "usb", 3675 + "driver": "usbhid", 3676 + "driver_module": "usbhid", 3677 + "drivers": [ 3678 + "usbhid" 3679 + ], 3680 + "driver_modules": [ 3681 + "usbhid" 3682 + ], 3683 + "module_alias": "usb:v32ACp0002d0000dc00dsc00dp00ic03isc00ip00in01" 3684 + }, 3685 + { 3686 + "index": 67, 3687 + "attached_to": 59, 3688 + "class_list": [ 3689 + "usb", 3690 + "unknown" 3691 + ], 3692 + "bus_type": { 3693 + "hex": "0086", 3694 + "name": "USB", 3695 + "value": 134 3696 + }, 3697 + "slot": { 3698 + "bus": 0, 3699 + "number": 0 3700 + }, 3701 + "base_class": { 3702 + "hex": "0000", 3703 + "name": "Unclassified device", 3704 + "value": 0 3705 + }, 3706 + "sub_class": { 3707 + "hex": "0000", 3708 + "name": "Unclassified device", 3709 + "value": 0 3710 + }, 3711 + "vendor": { 3712 + "hex": "32ac", 3713 + "name": "Framework", 3714 + "value": 12972 3715 + }, 3716 + "device": { 3717 + "hex": "0002", 3718 + "name": "HDMI Expansion Card", 3719 + "value": 2 3720 + }, 3721 + "serial": "11AD1D009AA58F0512110B00", 3722 + "model": "Framework HDMI Expansion Card", 3723 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-2/3-2:1.0", 3724 + "sysfs_bus_id": "3-2:1.0", 3725 + "resources": [ 3726 + { 3727 + "type": "baud", 3728 + "speed": 12000000, 3729 + "bits": 0, 3730 + "stop_bits": 0, 3731 + "parity": 0, 3732 + "handshake": 0 3733 + } 3734 + ], 3735 + "detail": { 3736 + "device_class": { 3737 + "hex": "0000", 3738 + "name": "per_interface", 3739 + "value": 0 3740 + }, 3741 + "device_subclass": { 3742 + "hex": "0000", 3743 + "name": "per_interface", 3744 + "value": 0 3745 + }, 3746 + "device_protocol": 0, 3747 + "interface_class": { 3748 + "hex": "0011", 3749 + "name": "billboard", 3750 + "value": 17 3751 + }, 3752 + "interface_subclass": { 3753 + "hex": "0000", 3754 + "name": "per_interface", 3755 + "value": 0 3756 + }, 3757 + "interface_protocol": 0, 3758 + "interface_number": 0, 3759 + "interface_alternate_setting": 0 3760 + }, 3761 + "hotplug": "usb", 3762 + "module_alias": "usb:v32ACp0002d0000dc00dsc00dp00ic11isc00ip00in00" 3763 + }, 3764 + { 3765 + "index": 69, 3766 + "attached_to": 59, 3767 + "class_list": [ 3768 + "usb", 3769 + "unknown" 3770 + ], 3771 + "bus_type": { 3772 + "hex": "0086", 3773 + "name": "USB", 3774 + "value": 134 3775 + }, 3776 + "slot": { 3777 + "bus": 0, 3778 + "number": 0 3779 + }, 3780 + "base_class": { 3781 + "hex": "0000", 3782 + "name": "Unclassified device", 3783 + "value": 0 3784 + }, 3785 + "sub_class": { 3786 + "hex": "0000", 3787 + "name": "Unclassified device", 3788 + "value": 0 3789 + }, 3790 + "vendor": { 3791 + "hex": "32ac", 3792 + "name": "Framework", 3793 + "value": 12972 3794 + }, 3795 + "device": { 3796 + "hex": "001c", 3797 + "name": "Laptop Webcam Module (2nd Gen)", 3798 + "value": 28 3799 + }, 3800 + "revision": { 3801 + "hex": "0000", 3802 + "name": "1.11", 3803 + "value": 0 3804 + }, 3805 + "serial": "FRANJBCHA153710338", 3806 + "model": "Framework Laptop Webcam Module (2nd Gen)", 3807 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0/usb3/3-3/3-3:1.2", 3808 + "sysfs_bus_id": "3-3:1.2", 3809 + "resources": [ 3810 + { 3811 + "type": "baud", 3812 + "speed": 480000000, 3813 + "bits": 0, 3814 + "stop_bits": 0, 3815 + "parity": 0, 3816 + "handshake": 0 3817 + } 3818 + ], 3819 + "detail": { 3820 + "device_class": { 3821 + "hex": "00ef", 3822 + "name": "miscellaneous", 3823 + "value": 239 3824 + }, 3825 + "device_subclass": { 3826 + "hex": "0002", 3827 + "name": "comm", 3828 + "value": 2 3829 + }, 3830 + "device_protocol": 1, 3831 + "interface_class": { 3832 + "hex": "00fe", 3833 + "name": "application", 3834 + "value": 254 3835 + }, 3836 + "interface_subclass": { 3837 + "hex": "0001", 3838 + "name": "audio", 3839 + "value": 1 3840 + }, 3841 + "interface_protocol": 1, 3842 + "interface_number": 2, 3843 + "interface_alternate_setting": 0, 3844 + "interface_association": { 3845 + "function_class": { 3846 + "hex": "00fe", 3847 + "name": "application", 3848 + "value": 254 3849 + }, 3850 + "function_subclass": { 3851 + "hex": "0001", 3852 + "name": "audio", 3853 + "value": 1 3854 + }, 3855 + "function_protocol": 0, 3856 + "interface_count": 1, 3857 + "first_interface": 2 3858 + } 3859 + }, 3860 + "hotplug": "usb", 3861 + "module_alias": "usb:v32ACp001Cd0111dcEFdsc02dp01icFEisc01ip01in02" 3862 + }, 3863 + { 3864 + "index": 70, 3865 + "attached_to": 66, 3866 + "class_list": [ 3867 + "usb", 3868 + "unknown" 3869 + ], 3870 + "bus_type": { 3871 + "hex": "0086", 3872 + "name": "USB", 3873 + "value": 134 3874 + }, 3875 + "slot": { 3876 + "bus": 0, 3877 + "number": 0 3878 + }, 3879 + "base_class": { 3880 + "hex": "0000", 3881 + "name": "Unclassified device", 3882 + "value": 0 3883 + }, 3884 + "sub_class": { 3885 + "hex": "0000", 3886 + "name": "Unclassified device", 3887 + "value": 0 3888 + }, 3889 + "vendor": { 3890 + "hex": "27c6", 3891 + "name": "Goodix Technology Co., Ltd.", 3892 + "value": 10182 3893 + }, 3894 + "device": { 3895 + "hex": "609c", 3896 + "name": "Goodix Fingerprint USB Device", 3897 + "value": 24732 3898 + }, 3899 + "revision": { 3900 + "hex": "0000", 3901 + "name": "1.00", 3902 + "value": 0 3903 + }, 3904 + "serial": "UIDD5110E7E_XXXX_MOC_B0", 3905 + "model": "Goodix Fingerprint USB Device", 3906 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.4/usb1/1-1/1-1:1.0", 3907 + "sysfs_bus_id": "1-1:1.0", 3908 + "resources": [ 3909 + { 3910 + "type": "baud", 3911 + "speed": 12000000, 3912 + "bits": 0, 3913 + "stop_bits": 0, 3914 + "parity": 0, 3915 + "handshake": 0 3916 + } 3917 + ], 3918 + "detail": { 3919 + "device_class": { 3920 + "hex": "00ef", 3921 + "name": "miscellaneous", 3922 + "value": 239 3923 + }, 3924 + "device_subclass": { 3925 + "hex": "0000", 3926 + "name": "per_interface", 3927 + "value": 0 3928 + }, 3929 + "device_protocol": 0, 3930 + "interface_class": { 3931 + "hex": "00ff", 3932 + "name": "vendor_spec", 3933 + "value": 255 3934 + }, 3935 + "interface_subclass": { 3936 + "hex": "0000", 3937 + "name": "per_interface", 3938 + "value": 0 3939 + }, 3940 + "interface_protocol": 0, 3941 + "interface_number": 0, 3942 + "interface_alternate_setting": 0 3943 + }, 3944 + "hotplug": "usb", 3945 + "module_alias": "usb:v27C6p609Cd0100dcEFdsc00dp00icFFisc00ip00in00" 3946 + } 3947 + ], 3948 + "usb_controller": [ 3949 + { 3950 + "index": 16, 3951 + "attached_to": 34, 3952 + "class_list": [ 3953 + "usb_controller", 3954 + "pci" 3955 + ], 3956 + "bus_type": { 3957 + "hex": "0004", 3958 + "name": "PCI", 3959 + "value": 4 3960 + }, 3961 + "slot": { 3962 + "bus": 195, 3963 + "number": 0 3964 + }, 3965 + "base_class": { 3966 + "hex": "000c", 3967 + "name": "Serial bus controller", 3968 + "value": 12 3969 + }, 3970 + "sub_class": { 3971 + "hex": "0003", 3972 + "name": "USB Controller", 3973 + "value": 3 3974 + }, 3975 + "pci_interface": { 3976 + "hex": "0030", 3977 + "value": 48 3978 + }, 3979 + "vendor": { 3980 + "hex": "1022", 3981 + "name": "AMD", 3982 + "value": 4130 3983 + }, 3984 + "sub_vendor": { 3985 + "hex": "f111", 3986 + "value": 61713 3987 + }, 3988 + "device": { 3989 + "hex": "1118", 3990 + "value": 4376 3991 + }, 3992 + "sub_device": { 3993 + "hex": "000b", 3994 + "value": 11 3995 + }, 3996 + "model": "AMD USB Controller", 3997 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.0", 3998 + "sysfs_bus_id": "0000:c3:00.0", 3999 + "sysfs_iommu_group_id": 24, 4000 + "detail": { 4001 + "function": 0, 4002 + "command": 1030, 4003 + "header_type": 0, 4004 + "secondary_bus": 0, 4005 + "prog_if": 48 4006 + }, 4007 + "driver": "xhci_hcd", 4008 + "driver_module": "xhci_pci", 4009 + "drivers": [ 4010 + "xhci_hcd" 4011 + ], 4012 + "driver_modules": [ 4013 + "xhci_pci" 4014 + ], 4015 + "module_alias": "pci:v00001022d00001118sv0000F111sd0000000Bbc0Csc03i30" 4016 + }, 4017 + { 4018 + "index": 21, 4019 + "attached_to": 38, 4020 + "class_list": [ 4021 + "usb_controller", 4022 + "pci" 4023 + ], 4024 + "bus_type": { 4025 + "hex": "0004", 4026 + "name": "PCI", 4027 + "value": 4 4028 + }, 4029 + "slot": { 4030 + "bus": 193, 4031 + "number": 0 4032 + }, 4033 + "base_class": { 4034 + "hex": "000c", 4035 + "name": "Serial bus controller", 4036 + "value": 12 4037 + }, 4038 + "sub_class": { 4039 + "hex": "0003", 4040 + "name": "USB Controller", 4041 + "value": 3 4042 + }, 4043 + "pci_interface": { 4044 + "hex": "0030", 4045 + "value": 48 4046 + }, 4047 + "vendor": { 4048 + "hex": "1022", 4049 + "name": "AMD", 4050 + "value": 4130 4051 + }, 4052 + "sub_vendor": { 4053 + "hex": "f111", 4054 + "value": 61713 4055 + }, 4056 + "device": { 4057 + "hex": "1128", 4058 + "value": 4392 4059 + }, 4060 + "sub_device": { 4061 + "hex": "000b", 4062 + "value": 11 4063 + }, 4064 + "model": "AMD USB Controller", 4065 + "sysfs_id": "/devices/pci0000:00/0000:00:08.1/0000:c1:00.4", 4066 + "sysfs_bus_id": "0000:c1:00.4", 4067 + "sysfs_iommu_group_id": 19, 4068 + "detail": { 4069 + "function": 4, 4070 + "command": 1030, 4071 + "header_type": 0, 4072 + "secondary_bus": 0, 4073 + "prog_if": 48 4074 + }, 4075 + "driver": "xhci_hcd", 4076 + "driver_module": "xhci_pci", 4077 + "drivers": [ 4078 + "xhci_hcd" 4079 + ], 4080 + "driver_modules": [ 4081 + "xhci_pci" 4082 + ], 4083 + "module_alias": "pci:v00001022d00001128sv0000F111sd0000000Bbc0Csc03i30" 4084 + }, 4085 + { 4086 + "index": 28, 4087 + "attached_to": 34, 4088 + "class_list": [ 4089 + "usb_controller", 4090 + "pci" 4091 + ], 4092 + "bus_type": { 4093 + "hex": "0004", 4094 + "name": "PCI", 4095 + "value": 4 4096 + }, 4097 + "slot": { 4098 + "bus": 195, 4099 + "number": 0 4100 + }, 4101 + "base_class": { 4102 + "hex": "000c", 4103 + "name": "Serial bus controller", 4104 + "value": 12 4105 + }, 4106 + "sub_class": { 4107 + "hex": "0003", 4108 + "name": "USB Controller", 4109 + "value": 3 4110 + }, 4111 + "pci_interface": { 4112 + "hex": "0040", 4113 + "value": 64 4114 + }, 4115 + "vendor": { 4116 + "hex": "1022", 4117 + "name": "AMD", 4118 + "value": 4130 4119 + }, 4120 + "sub_vendor": { 4121 + "hex": "f111", 4122 + "value": 61713 4123 + }, 4124 + "device": { 4125 + "hex": "1120", 4126 + "value": 4384 4127 + }, 4128 + "sub_device": { 4129 + "hex": "000b", 4130 + "value": 11 4131 + }, 4132 + "model": "AMD USB Controller", 4133 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.5", 4134 + "sysfs_bus_id": "0000:c3:00.5", 4135 + "sysfs_iommu_group_id": 27, 4136 + "detail": { 4137 + "function": 5, 4138 + "command": 1030, 4139 + "header_type": 0, 4140 + "secondary_bus": 0, 4141 + "prog_if": 64 4142 + }, 4143 + "driver": "thunderbolt", 4144 + "driver_module": "thunderbolt", 4145 + "drivers": [ 4146 + "thunderbolt" 4147 + ], 4148 + "driver_modules": [ 4149 + "thunderbolt" 4150 + ], 4151 + "module_alias": "pci:v00001022d00001120sv0000F111sd0000000Bbc0Csc03i40" 4152 + }, 4153 + { 4154 + "index": 32, 4155 + "attached_to": 34, 4156 + "class_list": [ 4157 + "usb_controller", 4158 + "pci" 4159 + ], 4160 + "bus_type": { 4161 + "hex": "0004", 4162 + "name": "PCI", 4163 + "value": 4 4164 + }, 4165 + "slot": { 4166 + "bus": 195, 4167 + "number": 0 4168 + }, 4169 + "base_class": { 4170 + "hex": "000c", 4171 + "name": "Serial bus controller", 4172 + "value": 12 4173 + }, 4174 + "sub_class": { 4175 + "hex": "0003", 4176 + "name": "USB Controller", 4177 + "value": 3 4178 + }, 4179 + "pci_interface": { 4180 + "hex": "0030", 4181 + "value": 48 4182 + }, 4183 + "vendor": { 4184 + "hex": "1022", 4185 + "name": "AMD", 4186 + "value": 4130 4187 + }, 4188 + "sub_vendor": { 4189 + "hex": "f111", 4190 + "value": 61713 4191 + }, 4192 + "device": { 4193 + "hex": "111c", 4194 + "value": 4380 4195 + }, 4196 + "sub_device": { 4197 + "hex": "000b", 4198 + "value": 11 4199 + }, 4200 + "model": "AMD USB Controller", 4201 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.3", 4202 + "sysfs_bus_id": "0000:c3:00.3", 4203 + "sysfs_iommu_group_id": 25, 4204 + "detail": { 4205 + "function": 3, 4206 + "command": 1030, 4207 + "header_type": 0, 4208 + "secondary_bus": 0, 4209 + "prog_if": 48 4210 + }, 4211 + "driver": "xhci_hcd", 4212 + "driver_module": "xhci_pci", 4213 + "drivers": [ 4214 + "xhci_hcd" 4215 + ], 4216 + "driver_modules": [ 4217 + "xhci_pci" 4218 + ], 4219 + "module_alias": "pci:v00001022d0000111Csv0000F111sd0000000Bbc0Csc03i30" 4220 + }, 4221 + { 4222 + "index": 46, 4223 + "attached_to": 34, 4224 + "class_list": [ 4225 + "usb_controller", 4226 + "pci" 4227 + ], 4228 + "bus_type": { 4229 + "hex": "0004", 4230 + "name": "PCI", 4231 + "value": 4 4232 + }, 4233 + "slot": { 4234 + "bus": 195, 4235 + "number": 0 4236 + }, 4237 + "base_class": { 4238 + "hex": "000c", 4239 + "name": "Serial bus controller", 4240 + "value": 12 4241 + }, 4242 + "sub_class": { 4243 + "hex": "0003", 4244 + "name": "USB Controller", 4245 + "value": 3 4246 + }, 4247 + "pci_interface": { 4248 + "hex": "0040", 4249 + "value": 64 4250 + }, 4251 + "vendor": { 4252 + "hex": "1022", 4253 + "name": "AMD", 4254 + "value": 4130 4255 + }, 4256 + "sub_vendor": { 4257 + "hex": "f111", 4258 + "value": 61713 4259 + }, 4260 + "device": { 4261 + "hex": "1121", 4262 + "value": 4385 4263 + }, 4264 + "sub_device": { 4265 + "hex": "000b", 4266 + "value": 11 4267 + }, 4268 + "model": "AMD USB Controller", 4269 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.6", 4270 + "sysfs_bus_id": "0000:c3:00.6", 4271 + "sysfs_iommu_group_id": 28, 4272 + "detail": { 4273 + "function": 6, 4274 + "command": 1030, 4275 + "header_type": 0, 4276 + "secondary_bus": 0, 4277 + "prog_if": 64 4278 + }, 4279 + "driver": "thunderbolt", 4280 + "driver_module": "thunderbolt", 4281 + "drivers": [ 4282 + "thunderbolt" 4283 + ], 4284 + "driver_modules": [ 4285 + "thunderbolt" 4286 + ], 4287 + "module_alias": "pci:v00001022d00001121sv0000F111sd0000000Bbc0Csc03i40" 4288 + }, 4289 + { 4290 + "index": 48, 4291 + "attached_to": 34, 4292 + "class_list": [ 4293 + "usb_controller", 4294 + "pci" 4295 + ], 4296 + "bus_type": { 4297 + "hex": "0004", 4298 + "name": "PCI", 4299 + "value": 4 4300 + }, 4301 + "slot": { 4302 + "bus": 195, 4303 + "number": 0 4304 + }, 4305 + "base_class": { 4306 + "hex": "000c", 4307 + "name": "Serial bus controller", 4308 + "value": 12 4309 + }, 4310 + "sub_class": { 4311 + "hex": "0003", 4312 + "name": "USB Controller", 4313 + "value": 3 4314 + }, 4315 + "pci_interface": { 4316 + "hex": "0030", 4317 + "value": 48 4318 + }, 4319 + "vendor": { 4320 + "hex": "1022", 4321 + "name": "AMD", 4322 + "value": 4130 4323 + }, 4324 + "sub_vendor": { 4325 + "hex": "f111", 4326 + "value": 61713 4327 + }, 4328 + "device": { 4329 + "hex": "111e", 4330 + "value": 4382 4331 + }, 4332 + "sub_device": { 4333 + "hex": "000b", 4334 + "value": 11 4335 + }, 4336 + "model": "AMD USB Controller", 4337 + "sysfs_id": "/devices/pci0000:00/0000:00:08.3/0000:c3:00.4", 4338 + "sysfs_bus_id": "0000:c3:00.4", 4339 + "sysfs_iommu_group_id": 26, 4340 + "detail": { 4341 + "function": 4, 4342 + "command": 1030, 4343 + "header_type": 0, 4344 + "secondary_bus": 0, 4345 + "prog_if": 48 4346 + }, 4347 + "driver": "xhci_hcd", 4348 + "driver_module": "xhci_pci", 4349 + "drivers": [ 4350 + "xhci_hcd" 4351 + ], 4352 + "driver_modules": [ 4353 + "xhci_pci" 4354 + ], 4355 + "module_alias": "pci:v00001022d0000111Esv0000F111sd0000000Bbc0Csc03i30" 4356 + } 4357 + ] 4358 + }, 4359 + "smbios": { 4360 + "bios": { 4361 + "handle": 0, 4362 + "vendor": "INSYDE Corp.", 4363 + "version": "03.04", 4364 + "date": "06/10/2025", 4365 + "features": [ 4366 + "PCI supported", 4367 + "BIOS flashable", 4368 + "BIOS shadowing allowed", 4369 + "CD boot supported", 4370 + "Selectable boot supported", 4371 + "8042 Keyboard Services supported", 4372 + "CGA/Mono Video supported", 4373 + "ACPI supported", 4374 + "USB Legacy supported", 4375 + "BIOS Boot Spec supported" 4376 + ], 4377 + "start_address": "0x0", 4378 + "rom_size": 16777216 4379 + }, 4380 + "board": { 4381 + "handle": 2, 4382 + "manufacturer": "Framework", 4383 + "product": "FRANMGCP05", 4384 + "version": "A5", 4385 + "board_type": { 4386 + "hex": "000a", 4387 + "name": "Motherboard", 4388 + "value": 10 4389 + }, 4390 + "features": [ 4391 + "Hosting Board", 4392 + "Replaceable" 4393 + ], 4394 + "location": "*", 4395 + "chassis": 3 4396 + }, 4397 + "cache": [ 4398 + { 4399 + "handle": 5, 4400 + "socket": "L1 - Cache", 4401 + "size_max": 480, 4402 + "size_current": 480, 4403 + "speed": 1, 4404 + "mode": { 4405 + "hex": "0001", 4406 + "name": "Write Back", 4407 + "value": 1 4408 + }, 4409 + "enabled": true, 4410 + "location": { 4411 + "hex": "0000", 4412 + "name": "Internal", 4413 + "value": 0 4414 + }, 4415 + "socketed": false, 4416 + "level": 0, 4417 + "ecc": { 4418 + "hex": "0006", 4419 + "name": "Multi-bit", 4420 + "value": 6 4421 + }, 4422 + "cache_type": { 4423 + "hex": "0005", 4424 + "name": "Unified", 4425 + "value": 5 4426 + }, 4427 + "associativity": { 4428 + "hex": "0007", 4429 + "name": "8-way Set-Associative", 4430 + "value": 7 4431 + }, 4432 + "sram_type_current": [ 4433 + "Pipeline Burst" 4434 + ], 4435 + "sram_type_supported": [ 4436 + "Pipeline Burst" 4437 + ] 4438 + }, 4439 + { 4440 + "handle": 6, 4441 + "socket": "L2 - Cache", 4442 + "size_max": 6144, 4443 + "size_current": 6144, 4444 + "speed": 1, 4445 + "mode": { 4446 + "hex": "0001", 4447 + "name": "Write Back", 4448 + "value": 1 4449 + }, 4450 + "enabled": true, 4451 + "location": { 4452 + "hex": "0000", 4453 + "name": "Internal", 4454 + "value": 0 4455 + }, 4456 + "socketed": false, 4457 + "level": 1, 4458 + "ecc": { 4459 + "hex": "0006", 4460 + "name": "Multi-bit", 4461 + "value": 6 4462 + }, 4463 + "cache_type": { 4464 + "hex": "0005", 4465 + "name": "Unified", 4466 + "value": 5 4467 + }, 4468 + "associativity": { 4469 + "hex": "0008", 4470 + "name": "16-way Set-Associative", 4471 + "value": 8 4472 + }, 4473 + "sram_type_current": [ 4474 + "Pipeline Burst" 4475 + ], 4476 + "sram_type_supported": [ 4477 + "Pipeline Burst" 4478 + ] 4479 + }, 4480 + { 4481 + "handle": 7, 4482 + "socket": "L3 - Cache", 4483 + "size_max": 16384, 4484 + "size_current": 16384, 4485 + "speed": 1, 4486 + "mode": { 4487 + "hex": "0001", 4488 + "name": "Write Back", 4489 + "value": 1 4490 + }, 4491 + "enabled": true, 4492 + "location": { 4493 + "hex": "0000", 4494 + "name": "Internal", 4495 + "value": 0 4496 + }, 4497 + "socketed": false, 4498 + "level": 2, 4499 + "ecc": { 4500 + "hex": "0006", 4501 + "name": "Multi-bit", 4502 + "value": 6 4503 + }, 4504 + "cache_type": { 4505 + "hex": "0005", 4506 + "name": "Unified", 4507 + "value": 5 4508 + }, 4509 + "associativity": { 4510 + "hex": "0008", 4511 + "name": "16-way Set-Associative", 4512 + "value": 8 4513 + }, 4514 + "sram_type_current": [ 4515 + "Pipeline Burst" 4516 + ], 4517 + "sram_type_supported": [ 4518 + "Pipeline Burst" 4519 + ] 4520 + } 4521 + ], 4522 + "chassis": [ 4523 + { 4524 + "handle": 3, 4525 + "manufacturer": "Framework", 4526 + "version": "A5", 4527 + "chassis_type": { 4528 + "hex": "000a", 4529 + "name": "Notebook", 4530 + "value": 10 4531 + }, 4532 + "lock_present": false, 4533 + "bootup_state": { 4534 + "hex": "0003", 4535 + "name": "Safe", 4536 + "value": 3 4537 + }, 4538 + "power_state": { 4539 + "hex": "0003", 4540 + "name": "Safe", 4541 + "value": 3 4542 + }, 4543 + "thermal_state": { 4544 + "hex": "0003", 4545 + "name": "Safe", 4546 + "value": 3 4547 + }, 4548 + "security_state": { 4549 + "hex": "0003", 4550 + "name": "None", 4551 + "value": 3 4552 + }, 4553 + "oem": "0x0" 4554 + } 4555 + ], 4556 + "config": { 4557 + "handle": 15, 4558 + "options": [ 4559 + "String1 for Type12 Equipment Manufacturer", 4560 + "String2 for Type12 Equipment Manufacturer", 4561 + "String3 for Type12 Equipment Manufacturer", 4562 + "String4 for Type12 Equipment Manufacturer" 4563 + ] 4564 + }, 4565 + "language": [ 4566 + { 4567 + "handle": 16, 4568 + "languages": [ 4569 + "en|US|iso8859-1", 4570 + "fr|FR|iso8859-1", 4571 + "ja|JP|unicode", 4572 + "zh|TW|unicode" 4573 + ] 4574 + } 4575 + ], 4576 + "memory_array": [ 4577 + { 4578 + "handle": 17, 4579 + "location": { 4580 + "hex": "0003", 4581 + "name": "Motherboard", 4582 + "value": 3 4583 + }, 4584 + "usage": { 4585 + "hex": "0003", 4586 + "name": "System memory", 4587 + "value": 3 4588 + }, 4589 + "ecc": { 4590 + "hex": "0003", 4591 + "name": "None", 4592 + "value": 3 4593 + }, 4594 + "max_size": "0x4000000", 4595 + "error_handle": 20, 4596 + "slots": 2 4597 + } 4598 + ], 4599 + "memory_array_mapped_address": [ 4600 + { 4601 + "handle": 23, 4602 + "array_handle": 17, 4603 + "start_address": "0x0", 4604 + "end_address": "0xc00000000", 4605 + "part_width": 1 4606 + } 4607 + ], 4608 + "memory_device": [ 4609 + { 4610 + "handle": 18, 4611 + "location": "DIMM 0", 4612 + "bank_location": "P0 CHANNEL A", 4613 + "manufacturer": "Unknown", 4614 + "part_number": "Unknown", 4615 + "array_handle": 17, 4616 + "error_handle": 21, 4617 + "width": 0, 4618 + "ecc_bits": 0, 4619 + "size": 0, 4620 + "form_factor": { 4621 + "hex": "0002", 4622 + "name": "Unknown", 4623 + "value": 2 4624 + }, 4625 + "set": 0, 4626 + "memory_type": { 4627 + "hex": "0002", 4628 + "name": "Unknown", 4629 + "value": 2 4630 + }, 4631 + "memory_type_details": [ 4632 + "Unknown" 4633 + ], 4634 + "speed": 0 4635 + }, 4636 + { 4637 + "handle": 19, 4638 + "location": "DIMM 0", 4639 + "bank_location": "P0 CHANNEL B", 4640 + "manufacturer": "A-DATA Technology", 4641 + "part_number": "AD5S560048G-SF2", 4642 + "array_handle": 17, 4643 + "error_handle": 22, 4644 + "width": 64, 4645 + "ecc_bits": 0, 4646 + "size": 50331648, 4647 + "form_factor": { 4648 + "hex": "000d", 4649 + "name": "SODIMM", 4650 + "value": 13 4651 + }, 4652 + "set": 0, 4653 + "memory_type": { 4654 + "hex": "0022", 4655 + "name": "Other", 4656 + "value": 34 4657 + }, 4658 + "memory_type_details": [ 4659 + "Synchronous" 4660 + ], 4661 + "speed": 5600 4662 + } 4663 + ], 4664 + "memory_device_mapped_address": [ 4665 + { 4666 + "handle": 24, 4667 + "memory_device_handle": 19, 4668 + "array_map_handle": 23, 4669 + "start_address": "0x0", 4670 + "end_address": "0xc00000000", 4671 + "row_position": 255, 4672 + "interleave_position": 255, 4673 + "interleave_depth": 255 4674 + } 4675 + ], 4676 + "memory_error": [ 4677 + { 4678 + "handle": 20, 4679 + "error_type": { 4680 + "hex": "0003", 4681 + "name": "OK", 4682 + "value": 3 4683 + }, 4684 + "granularity": { 4685 + "hex": "0002", 4686 + "name": "Unknown", 4687 + "value": 2 4688 + }, 4689 + "operation": { 4690 + "hex": "0002", 4691 + "name": "Unknown", 4692 + "value": 2 4693 + }, 4694 + "syndrome": 0, 4695 + "array_address": "0x80000000", 4696 + "device_address": "0x80000000", 4697 + "range": 2147483648 4698 + }, 4699 + { 4700 + "handle": 21, 4701 + "error_type": { 4702 + "hex": "0003", 4703 + "name": "OK", 4704 + "value": 3 4705 + }, 4706 + "granularity": { 4707 + "hex": "0002", 4708 + "name": "Unknown", 4709 + "value": 2 4710 + }, 4711 + "operation": { 4712 + "hex": "0002", 4713 + "name": "Unknown", 4714 + "value": 2 4715 + }, 4716 + "syndrome": 0, 4717 + "array_address": "0x80000000", 4718 + "device_address": "0x80000000", 4719 + "range": 2147483648 4720 + }, 4721 + { 4722 + "handle": 22, 4723 + "error_type": { 4724 + "hex": "0003", 4725 + "name": "OK", 4726 + "value": 3 4727 + }, 4728 + "granularity": { 4729 + "hex": "0002", 4730 + "name": "Unknown", 4731 + "value": 2 4732 + }, 4733 + "operation": { 4734 + "hex": "0002", 4735 + "name": "Unknown", 4736 + "value": 2 4737 + }, 4738 + "syndrome": 0, 4739 + "array_address": "0x80000000", 4740 + "device_address": "0x80000000", 4741 + "range": 2147483648 4742 + } 4743 + ], 4744 + "pointing_device": [ 4745 + { 4746 + "handle": 25, 4747 + "mouse_type": { 4748 + "hex": "0007", 4749 + "name": "Touch Pad", 4750 + "value": 7 4751 + }, 4752 + "interface": { 4753 + "hex": "0004", 4754 + "name": "PS/2", 4755 + "value": 4 4756 + }, 4757 + "buttons": 4 4758 + }, 4759 + { 4760 + "handle": 26, 4761 + "mouse_type": { 4762 + "hex": "0009", 4763 + "name": "Optical Sensor", 4764 + "value": 9 4765 + }, 4766 + "interface": { 4767 + "hex": "0003", 4768 + "name": "Serial", 4769 + "value": 3 4770 + }, 4771 + "buttons": 1 4772 + }, 4773 + { 4774 + "handle": 27, 4775 + "mouse_type": { 4776 + "hex": "0009", 4777 + "name": "Optical Sensor", 4778 + "value": 9 4779 + }, 4780 + "interface": { 4781 + "hex": "0003", 4782 + "name": "Serial", 4783 + "value": 3 4784 + }, 4785 + "buttons": 1 4786 + }, 4787 + { 4788 + "handle": 28, 4789 + "mouse_type": { 4790 + "hex": "0009", 4791 + "name": "Optical Sensor", 4792 + "value": 9 4793 + }, 4794 + "interface": { 4795 + "hex": "0003", 4796 + "name": "Serial", 4797 + "value": 3 4798 + }, 4799 + "buttons": 1 4800 + }, 4801 + { 4802 + "handle": 29, 4803 + "mouse_type": { 4804 + "hex": "0009", 4805 + "name": "Optical Sensor", 4806 + "value": 9 4807 + }, 4808 + "interface": { 4809 + "hex": "0003", 4810 + "name": "Serial", 4811 + "value": 3 4812 + }, 4813 + "buttons": 1 4814 + } 4815 + ], 4816 + "port_connector": [ 4817 + { 4818 + "handle": 8, 4819 + "port_type": { 4820 + "hex": "0010", 4821 + "name": "USB", 4822 + "value": 16 4823 + }, 4824 + "internal_reference_designator": "JTYPEC0", 4825 + "external_connector_type": { 4826 + "hex": "0012", 4827 + "name": "Access Bus [USB]", 4828 + "value": 18 4829 + }, 4830 + "external_reference_designator": "USB" 4831 + }, 4832 + { 4833 + "handle": 9, 4834 + "port_type": { 4835 + "hex": "0010", 4836 + "name": "USB", 4837 + "value": 16 4838 + }, 4839 + "internal_reference_designator": "JTYPEC1", 4840 + "external_connector_type": { 4841 + "hex": "0012", 4842 + "name": "Access Bus [USB]", 4843 + "value": 18 4844 + }, 4845 + "external_reference_designator": "USB" 4846 + }, 4847 + { 4848 + "handle": 10, 4849 + "port_type": { 4850 + "hex": "0010", 4851 + "name": "USB", 4852 + "value": 16 4853 + }, 4854 + "internal_reference_designator": "JTYPEC2", 4855 + "external_connector_type": { 4856 + "hex": "0012", 4857 + "name": "Access Bus [USB]", 4858 + "value": 18 4859 + }, 4860 + "external_reference_designator": "USB" 4861 + }, 4862 + { 4863 + "handle": 11, 4864 + "port_type": { 4865 + "hex": "0010", 4866 + "name": "USB", 4867 + "value": 16 4868 + }, 4869 + "internal_reference_designator": "JTYPEC3", 4870 + "external_connector_type": { 4871 + "hex": "0012", 4872 + "name": "Access Bus [USB]", 4873 + "value": 18 4874 + }, 4875 + "external_reference_designator": "USB" 4876 + } 4877 + ], 4878 + "processor": [ 4879 + { 4880 + "handle": 4, 4881 + "socket": "FP8DDR5", 4882 + "socket_type": { 4883 + "hex": "0001", 4884 + "name": "Other", 4885 + "value": 1 4886 + }, 4887 + "socket_populated": true, 4888 + "manufacturer": "Advanced Micro Devices, Inc.", 4889 + "version": "AMD Ryzen AI 5 340 w/ Radeon 840M", 4890 + "part": "AMD FWTS", 4891 + "processor_type": { 4892 + "hex": "0003", 4893 + "name": "CPU", 4894 + "value": 3 4895 + }, 4896 + "processor_family": { 4897 + "hex": "006b", 4898 + "name": "Other", 4899 + "value": 107 4900 + }, 4901 + "processor_status": { 4902 + "hex": "0001", 4903 + "name": "Enabled", 4904 + "value": 1 4905 + }, 4906 + "clock_ext": 100, 4907 + "clock_max": 4850, 4908 + "cache_handle_l1": 5, 4909 + "cache_handle_l2": 6, 4910 + "cache_handle_l3": 7 4911 + } 4912 + ], 4913 + "slot": [ 4914 + { 4915 + "handle": 12, 4916 + "designation": "JWLAN", 4917 + "slot_type": { 4918 + "hex": "0015", 4919 + "name": "Other", 4920 + "value": 21 4921 + }, 4922 + "bus_width": { 4923 + "hex": "0008", 4924 + "name": "Other", 4925 + "value": 8 4926 + }, 4927 + "usage": { 4928 + "hex": "0003", 4929 + "name": "Available", 4930 + "value": 3 4931 + }, 4932 + "length": { 4933 + "hex": "0003", 4934 + "name": "Short", 4935 + "value": 3 4936 + }, 4937 + "id": 1, 4938 + "features": [ 4939 + "PME#" 4940 + ] 4941 + }, 4942 + { 4943 + "handle": 13, 4944 + "designation": "JSSD1", 4945 + "slot_type": { 4946 + "hex": "0016", 4947 + "name": "Other", 4948 + "value": 22 4949 + }, 4950 + "bus_width": { 4951 + "hex": "000a", 4952 + "name": "Other", 4953 + "value": 10 4954 + }, 4955 + "usage": { 4956 + "hex": "0003", 4957 + "name": "Available", 4958 + "value": 3 4959 + }, 4960 + "length": { 4961 + "hex": "0003", 4962 + "name": "Short", 4963 + "value": 3 4964 + }, 4965 + "id": 2, 4966 + "features": [ 4967 + "PME#" 4968 + ] 4969 + } 4970 + ], 4971 + "system": { 4972 + "handle": 1, 4973 + "manufacturer": "Framework", 4974 + "product": "Laptop 13 (AMD Ryzen AI 300 Series)", 4975 + "version": "A5", 4976 + "wake_up": { 4977 + "hex": "0006", 4978 + "name": "Power Switch", 4979 + "value": 6 4980 + } 4981 + } 4982 + } 4983 + }
+3
nix/hosts/pegasus/users/tghanken/home-configuration.nix
··· 1 + {inputs, ...}: { 2 + imports = [inputs.self.homeModules.tghanken]; 3 + }
+10
nix/lib/default.nix
··· 1 + {inputs, ...}: let 2 + eachSystem = inputs.nixpkgs.lib.genAttrs (import inputs.systems); 3 + in 4 + eachSystem ( 5 + system: let 6 + pkgs = inputs.nixpkgs.legacyPackages.${system}; 7 + in rec { 8 + treefmt = inputs.treefmt-nix.lib.evalModule pkgs (import ./treefmt-config.nix); 9 + } 10 + )
+30
nix/lib/treefmt-config.nix
··· 1 + {...}: { 2 + projectRootFile = "flake.nix"; 3 + settings.global.excludes = []; 4 + 5 + programs.deadnix = { 6 + enable = true; 7 + priority = 1; 8 + }; 9 + programs.alejandra = { 10 + enable = true; 11 + priority = 2; 12 + }; 13 + programs.shfmt = { 14 + enable = true; 15 + priority = 1; 16 + }; 17 + programs.shellcheck = { 18 + enable = true; 19 + priority = 2; 20 + }; 21 + programs.taplo = { 22 + enable = true; 23 + priority = 2; 24 + }; 25 + programs.toml-sort = { 26 + enable = true; 27 + priority = 1; 28 + }; 29 + programs.yamlfmt.enable = true; 30 + }
+121
nix/modules/home/tghanken.nix
··· 1 + {pkgs, ...}: let 2 + email = "tghanken@gmail.com"; 3 + name = "Taylor Hanken"; 4 + in { 5 + home.username = "tghanken"; 6 + home.homeDirectory = "/home/tghanken"; 7 + 8 + # set cursor size and dpi for 4k monitor 9 + xresources.properties = { 10 + "Xcursor.size" = 16; 11 + "Xft.dpi" = 172; 12 + }; 13 + 14 + # Packages that should be installed to the user profile. 15 + home.packages = with pkgs; [ 16 + # misc 17 + which 18 + tree 19 + zstd 20 + 21 + # nix related 22 + nix-tree 23 + nix-output-monitor 24 + 25 + # productivity 26 + firefox 27 + google-chrome 28 + vscode 29 + gh 30 + 31 + btop # replacement of htop/nmon 32 + iotop # io monitoring 33 + iftop # network monitoring 34 + 35 + # system tools 36 + sysstat 37 + lm_sensors # for `sensors` command 38 + ethtool 39 + pciutils # lspci 40 + usbutils # lsusb 41 + lshw 42 + ]; 43 + 44 + programs.git = { 45 + enable = true; 46 + lfs.enable = true; 47 + settings = { 48 + user = { 49 + inherit name email; 50 + }; 51 + }; 52 + }; 53 + 54 + programs.jujutsu = { 55 + enable = true; 56 + settings = { 57 + user = { 58 + inherit name email; 59 + }; 60 + aliases = { 61 + l = ["log" "-r" "(trunk()..@):: | (trunk()..@)-- | trunk()"]; 62 + lwb = ["log" "-r" "ancestors(roots(trunk()..tracked_remote_bookmarks()),2) | ancestors(tracked_remote_bookmarks(),2) | trunk()"]; 63 + lub = ["log" "-r" "ancestors(roots(trunk()..untracked_remote_bookmarks()),2) | ancestors(untracked_remote_bookmarks(),2) | trunk()"]; 64 + }; 65 + ui = { 66 + paginate = "never"; 67 + }; 68 + }; 69 + }; 70 + 71 + programs.direnv = { 72 + enable = true; 73 + enableBashIntegration = true; 74 + nix-direnv.enable = true; 75 + }; 76 + 77 + # starship - an customizable prompt for any shell 78 + programs.starship = { 79 + enable = true; 80 + # custom settings 81 + settings = { 82 + add_newline = false; 83 + aws.disabled = true; 84 + gcloud.disabled = true; 85 + line_break.disabled = true; 86 + }; 87 + }; 88 + 89 + # alacritty - a cross-platform, GPU-accelerated terminal emulator 90 + programs.alacritty = { 91 + enable = true; 92 + # custom settings 93 + settings = { 94 + env.TERM = "xterm-256color"; 95 + font = { 96 + size = 12; 97 + draw_bold_text_with_bright_colors = true; 98 + }; 99 + scrolling.multiplier = 5; 100 + selection.save_to_clipboard = true; 101 + }; 102 + }; 103 + 104 + programs.bash = { 105 + enable = true; 106 + enableCompletion = true; 107 + }; 108 + 109 + # This value determines the home Manager release that your 110 + # configuration is compatible with. This helps avoid breakage 111 + # when a new home Manager release introduces backwards 112 + # incompatible changes. 113 + # 114 + # You can update home Manager without changing this value. See 115 + # the home Manager release notes for a list of state version 116 + # changes in each release. 117 + home.stateVersion = "25.11"; 118 + 119 + # Let home Manager install and manage itself. 120 + programs.home-manager.enable = true; 121 + }
+29
nix/modules/nixos/bootloader.nix
··· 1 + {...}: { 2 + # Setup boot loader 3 + boot = { 4 + supportedFilesystems = ["zfs"]; 5 + zfs.devNodes = "/dev/disk/by-partlabel"; 6 + loader = { 7 + grub = { 8 + enable = true; 9 + # shell_on_fail = true; 10 + configurationLimit = 10; 11 + zfsSupport = true; 12 + efiSupport = true; 13 + efiInstallAsRemovable = true; 14 + mirroredBoots = [ 15 + { 16 + devices = ["nodev"]; 17 + path = "/boot"; 18 + } 19 + ]; 20 + }; 21 + }; 22 + }; 23 + 24 + # Enable ZFS services 25 + services.zfs = { 26 + autoScrub.enable = true; 27 + autoSnapshot.enable = true; 28 + }; 29 + }
+4
nix/modules/nixos/kernel.nix
··· 1 + {pkgs, ...}: { 2 + # Fixes broken zfs package. See https://github.com/NixOS/nixos-hardware/issues/1675 3 + boot.kernelPackages = pkgs.linuxPackages_6_17; 4 + }
+5
nix/modules/nixos/networking.nix
··· 1 + { 2 + networking.networkmanager.enable = true; 3 + networking.networkmanager.wifi.backend = "iwd"; 4 + networking.wireless.iwd.enable = true; 5 + }
+5
nix/modules/nixos/secrets.nix
··· 1 + { 2 + imports = [ 3 + ../../../secrets/mod.nix 4 + ]; 5 + }
+19
nix/packages/node-bootstrap-iso.nix
··· 1 + { 2 + inputs, 3 + flake, 4 + ... 5 + }: 6 + inputs.nixos-generators.nixosGenerate { 7 + system = "x86_64-linux"; 8 + format = "iso"; 9 + modules = [ 10 + flake.nixosModules.bootstrap 11 + flake.nixosModules.kernel 12 + flake.nixosModules.networking 13 + flake.modules.users.tghanken 14 + { 15 + networking.hostId = "12345678"; 16 + boot.supportedFilesystems = ["zfs"]; 17 + } 18 + ]; 19 + }
-8
packages/default.nix
··· 1 - { 2 - pkgs, 3 - nixpkgs, 4 - }: let 5 - inherit (pkgs) callPackage python3Packages; 6 - in { 7 - windsurf = callPackage ./windsurf.nix {inherit nixpkgs;}; 8 - }
-39
packages/windsurf.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - nixpkgs, 5 - callPackage, 6 - fetchurl, 7 - nixosTests, 8 - commandLineArgs ? "", 9 - useVSCodeRipgrep ? stdenv.hostPlatform.isDarwin, 10 - }: 11 - # https://windsurf-stable.codeium.com/api/update/linux-x64/stable/latest 12 - let 13 - version = "1.10.5"; # "windsurfVersion" 14 - hash = "ff497a1ec3dde399fde9c001a3e69a58f2739dac"; # "version" 15 - in 16 - callPackage "${nixpkgs}/pkgs/applications/editors/vscode/generic.nix" rec { 17 - inherit commandLineArgs useVSCodeRipgrep version; 18 - 19 - pname = "windsurf"; 20 - 21 - executableName = "windsurf"; 22 - longName = "Windsurf"; 23 - shortName = "windsurf"; 24 - 25 - src = fetchurl { 26 - url = "https://windsurf-stable.codeiumdata.com/linux-x64/stable/${hash}/Windsurf-linux-x64-${version}.tar.gz"; 27 - hash = "sha256-RjnkKPI82ePP782XMFGOE2zW0bufqsI9f0wNTFP/iP8="; 28 - }; 29 - 30 - sourceRoot = "Windsurf"; 31 - 32 - tests = nixosTests.vscodium; 33 - 34 - updateScript = "nil"; 35 - 36 - meta = { 37 - description = "The first agentic IDE, and then some"; 38 - }; 39 - }