VirtualBox

Ignore:
Timestamp:
Sep 30, 2021 8:32:24 PM (3 years ago)
Author:
vboxsync
Message:

Main/Unattended: Add UEFI support (needed for Windows 11 which this also adds), and make it work for the Windows case. This requires moving the aux files to a DVD image, because Windows booted in UEFI mode is unable to access a legacy floppy drive (hardcoded by Microsoft). The partitioning needs to be very different with UEFI and follows Microsoft's recommendations. Needs also a bit more flexibility with knowing on which drive letter the script will end up. Additionally contains registry tweaking to skip the TPM and secure boot checks in the Windows 11 installer (just in Windows PE, for later upgrading the same needs to be applied in the final install).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/include/UnattendedImpl.h

    r90828 r91502  
    7373    Utf8Str const &i_getPostInstallScriptTemplatePath() const;
    7474    Utf8Str const &i_getPostInstallCommand() const;
     75    /** The directory where the unattended install config and script is
     76     * located, from the perspective of the running unattended install. */
     77    Utf8Str const &i_getAuxiliaryInstallDir() const;
    7578    Utf8Str const &i_getExtraInstallKernelParameters() const;
    7679
    7780    bool           i_isRtcUsingUtc() const;
    7881    bool           i_isGuestOs64Bit() const;
     82    bool           i_isFirmwareEFI() const;
    7983    VBOXOSTYPE     i_getGuestOsType() const;
    8084    Utf8Str const &i_getDetectedOSVersion();
     
    8993    bool            mfRtcUseUtc;            /**< Copy of IMachine::RTCUseUTC (locking reasons). */
    9094    bool            mfGuestOs64Bit;         /**< 64-bit (true) or 32-bit guest OS (set by prepare). */
     95    FirmwareType_T  menmFirmwareType;       /**< Firmware type BIOS/EFI (set by prepare). */
    9196    VBOXOSTYPE      meGuestOsType;          /**< The guest OS type (set by prepare). */
    9297    UnattendedInstaller *mpInstaller;       /**< The installer instance (set by prepare, deleted by done). */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette