# geastandardpbr/ overrides `geastandardpbr/` is gitignored (USB-imported GE deployment package). Edits made locally to support new hardware models do not survive a fresh import. This file tracks the local edits so they can be re-applied after a re-import. Apply by hand or via the snippet at the bottom. ## OptiPlex 7080 (added 2026-05-08) Reason: a 7080 arrived on the floor; check-bios.cmd was returning "no update in catalog" because no 7080 entry existed in the catalog files. ### `geastandardpbr/Tools/user_selections.json` Add to `HardwareModelSelection` (insert before the existing `7090 / D12 OptiPlex Family` entry): ```json { "Model": "7080", "Id": "D11 OptiPlex Family" } ``` ### `geastandardpbr/Deploy/Control/HardwareDriver.json` Add a new entry (insert before the existing `D12 OptiPlex Family / 7090` entry): ```json { "manufacturer": "Dell", "manufacturerfriendlyname": "Dell", "family": "D11 OptiPlex Family", "models": "OptiPlex 7080", "modelsfriendlyname": "7080", "FileName": "", "DestinationDir": "*destinationdir*\\Deploy\\Out-of-box Drivers\\Dell_11\\OptiPlex\\D11 OptiPlex Family", "url": "", "hash": "", "size": 0, "modifiedDate": "0001-01-01T00:00:00", "osId": "20,21", "aOsIds": [ "20", "21" ], "imagedisk": 0 } ``` `FileName`, `url`, `hash`, `size` left empty. `scripts/download-drivers.py` resolves the actual driver pack from Dell's catalog by model name (`extract_model_ids` matches "7080") and downloads the latest pack at run time. ### Side artifacts already on the live PXE server (10.9.100.1) - `\\10.9.100.1\winpeapps\_shared\BIOS\OptiPlex_7080_1.37.0.exe` (39.8 MB, BIOS update) - `\\10.9.100.1\image-upload\Deploy\Out-of-box Drivers\Dell_11\OptiPlex\D11 OptiPlex Family\win11_70809ntr8_a09.zip` (Win11 driver pack, 2.6 GB) - `\\10.9.100.1\winpeapps\_shared\BIOS\models.txt` includes the 7080 line. These persist regardless of `geastandardpbr/` rebuilds. Only the model-registry edits need to be re-applied after a USB re-import. ## Re-applying after a fresh `geastandardpbr/` import Either edit the two JSON files by hand following the snippets above, or run: ```bash cd /home/camp/projects/pxe python3 - <<'PY' import json, sys us = 'geastandardpbr/Tools/user_selections.json' hd = 'geastandardpbr/Deploy/Control/HardwareDriver.json' data = json.load(open(us)) add = {"Model": "7080", "Id": "D11 OptiPlex Family"} for d in data: if "HardwareModelSelection" in d: if not any(m.get("Model") == "7080" for m in d["HardwareModelSelection"]): for i, m in enumerate(d["HardwareModelSelection"]): if m.get("Id") == "D12 OptiPlex Family": d["HardwareModelSelection"].insert(i, add) break json.dump(data, open(us, 'w'), indent=2) data = json.load(open(hd)) add = { "manufacturer": "Dell", "manufacturerfriendlyname": "Dell", "family": "D11 OptiPlex Family", "models": "OptiPlex 7080", "modelsfriendlyname": "7080", "FileName": "", "DestinationDir": "*destinationdir*\\Deploy\\Out-of-box Drivers\\Dell_11\\OptiPlex\\D11 OptiPlex Family", "url": "", "hash": "", "size": 0, "modifiedDate": "0001-01-01T00:00:00", "osId": "20,21", "aOsIds": ["20", "21"], "imagedisk": 0 } if not any(e.get("models") == "OptiPlex 7080" for e in data): for i, e in enumerate(data): if e.get("family") == "D12 OptiPlex Family" and e.get("models") == "7090": data.insert(i, add) break json.dump(data, open(hd, 'w'), indent=2) print("done") PY ```