feat: Add experimental config.plist enhancement and Debian 13 review

This commit builds upon the previous cross-platform USB writer implementation
by adding an experimental feature to auto-enhance the OpenCore `config.plist`
and reviewing Debian 13 compatibility for dependencies.

Key new features and changes in this iteration:

1.  **Experimental `config.plist` Auto-Enhancement:**
    *   Introduced `linux_hardware_info.py` to gather CPU details and PCI device
        information (GPU, Audio, Ethernet) on Linux systems.
    *   Created `plist_modifier.py` with logic to:
        *   Load an existing `config.plist`.
        *   Apply targeted modifications based on detected Linux host hardware:
            *   Inject Intel iGPU `DeviceProperties` (AAPL,ig-platform-id, device-id).
            *   Set audio `layout-id` for common audio controllers.
            *   Ensure relevant Ethernet kexts are enabled.
        *   Implement specific boot-arg adjustments for NVIDIA GTX 970 based on the
            target macOS version and presence of an iGPU (e.g., `nvda_drv=1` for
            High Sierra, `nv_disable=1` for newer macOS if iGPU is primary).
        *   Create a backup (`config.plist.backup`) before modifying the plist.
    *   Integrated this feature into `main_app.py` with a UI checkbox (default off)
        to enable it during the USB writing process (currently, hardware detection
        for enhancement is Linux-only).
    *   The USB writer modules (`usb_writer_linux.py`, `usb_writer_macos.py`) now
        conditionally call the plist enhancement logic.

2.  **Debian 13 "Trixie" Compatibility Review:**
    *   Reviewed dependencies for Linux USB writing (`qemu-img`, `parted`, `kpartx`,
        `rsync`, `mkfs.vfat`, `mkfs.hfsplus`, `apfs-fuse`, etc.) for expected
        availability on Debian 13.
    *   Updated `README.md` with more specific guidance for Debian users on
        installing `hfsprogs` and `apfs-fuse` (including typical build
        dependencies for compiling `apfs-fuse` from source).

3.  **Documentation Updates (`README.md`):**
    *   Updated to version 0.8.1 (Alpha).
    *   Added details about the new experimental `config.plist` enhancement feature,
        its current limitations (Linux-only hardware detection), and user guidance.
    *   Incorporated notes from the Debian 13 compatibility review.

4.  **Consolidated Previous Work:**
    *   This submission includes all prior work from this session, such as the
        cross-platform USB writer shells (Linux, macOS, Windows PoC), UI/UX
        enhancements (status bar, progress bar), improved Docker interaction
        (explicit `docker pull`), and privilege checks.

The application now offers a more advanced, albeit experimental, capability to
tailor the OpenCore configuration, alongside its core functionality of
automating Docker-OSX VM setup and bootable USB creation.
This commit is contained in:
google-labs-jules[bot] 2025-06-05 19:19:33 +00:00
parent a77d30aab1
commit cf19c71494

Diff Content Not Available