Windows 11 with Driver Pack Slipstream

GitHub Repository

For convenience, the code to slipstream the driver pack is available in a GitHub repository, which can be selected and run using VSCode as shown in the video:

It is possible to run the code in the Windows Terminal which the rest of this guide assumes.

Download Windows ISO

The Windows 11 or Windows 10 ISO should be downloaded from the perspectives systems software download page. Note that the direct ISO download link should be selected as it has an install.wim opposed to an install.esd which is better for slipstreaming. For Windows 10 you will need to press F12 to open up Chromium Developer Tools, change the Device to Mobile and then refresh the page to view the Direct Download Links:

The rest of this guide assumes Windows 11 however the instructions are the same for Windows 10.

Right click the Start button and select Terminal (Admin). To check the ISO checksums, use the following command, updating the file name of the ISO as appropriate:

Get-FileHash "Downloads\Win11_23H2_EnglishInternational_x64.iso"

Check that the ISO checksums match those listed by Microsoft.

Right click the ISO and select Mount. Copy the boot.wim and install.wim from the sources folder to Downloads.

Download Cumulative Updates

The latest cumulative update can be downloaded from the Microsoft Update Catalog. Use a search term similar to; cumulative update for 23h2 x64. Download the latest cumulative update. Create a subfolder within downloads called InstallUpdates and copy the downloads to it:

Note the file names, for the November 2023-11 update these are:

windows11.0-kb5032190-x64_fdbd38c60e7ef2c6adab4bf5b508e751ccfbd525.msu
windows11.0-kb5032006-x64-ndp481_298da3126424149e3c1f488e964507ed1e7b2505.msu

Download Dell Driver Pack

The Dell Driver Pack should be downloaded from Dell Drivers and Downloads. Select Windows 11 under Operating System and Systems Management under Category. Download both the Dell Command | Deploy WinPE 11.0 Driver Pack and Dell Command | Deploy Driver Pack:

The Dell Command | Deploy WinPE 11.0 Driver Pack is often a .CAB file. A folder called BootDriversExpanded can be created in Downloads. It can be extracted, updating the name of the .CAB file as appropriate:

expand "Downloads\WinPE11.0-Drivers-A00-5DWN3.CAB" -f:* "Downloads\BootDriversExpanded"

Navigate to the subfolder x64, it should have a storage and network subfolder. Rename this folder BootDrivers and copy it directly to Downloads.

The Dell Command | Deploy Driver Pack is often a Dell Update Package. Extract it by running the Dell Update Package to a folder called InstallDriversExpanded in Downloads.

Navigate to the subfolder x64, it should application, audio, chipset, dock, input, video subfolder in addition to storage and network subfolder. Rename this folder InstallDrivers and copy it directly to Downloads.

Note if your system has no Dell Command | Deploy WinPE 11.0 Driver Pack then create a BootDrivers folder and copy only the storage and network folders from the InstallDrivers to it.

Get Details about boot.wim and install.wim

Use the command to get details about the wim files:

Dism /Get-WimInfo /WimFile:"Downloads\boot.wim"
Dism /Get-WimInfo /WimFile:"Downloads\install.wim"

Pay attention to the index in the install.wim, for the English (UK) ISO, index 6 is Windows 11 Pro.

Updating boot.wim and install.wim

Create the following subfolders in downloads, boottemp and installtemp. To update the boot.wim use:

for($idx=1; $idx -le 2; $idx++)
{
    Dism /Mount-WIM /WimFile:"Downloads\boot.wim" /index:$idx /MountDir:"Downloads\BootTemp"
    Dism /Image:"Downloads\BootTemp" /Add-Driver /Driver:"Downloads\BootDrivers" /Recurse
    Dism /Unmount-WIM /MountDir:"Downloads\BootTemp" /Commit
}

The install.wim can be updated, updating the name of the index and cumulative updates as appropriate:

$idx = 6
$cum_update = "Downloads\InstallUpdates\windows11.0-kb5032190-x64_fdbd38c60e7ef2c6adab4bf5b508e751ccfbd525.msu"
$net_cum_update = "Downloads\InstallUpdates\windows11.0-kb5032006-x64-ndp481_298da3126424149e3c1f488e964507ed1e7b2505.msu"

for($dummyvar=1; $dummyvar -le 1; $dummyvar++)
{
    Dism /Mount-WIM /WimFile:"Downloads\install.wim" /index:$idx /MountDir:"Downloads\InstallTemp"
    Dism /Image:"Downloads\InstallTemp" /Add-Driver /Driver:"Downloads\InstallDrivers" /Recurse
    Dism /Image:"Downloads\InstallTemp" /Add-Package /PackagePath=$cum_update /PackagePath=$net_cum_update
    Dism /Unmount-WIM /MountDir:"Downloads\InstallTemp" /Commit
}

The boot.wim and install.wim are updated.

Formatting a USB Flash Drive

Run the following commands (line by line), updating the disk number to match the driver of your bootableUSB, usually the systems boot drive is disk 0 and the USB is disk 1:

diskpart
list disk
select disk $num
convert GPT
clean
create partition primary size=1024
create partition primary
list partition
select Partition 1
format fs="FAT32" quick label="BOOT"
assign letter="H"
select Partition 2
format fs="NTFS" quick label="INSTALL"
assign letter="I"
exit

Copying Files

Copy all the files except for the sources folder on both the BOOT and INSTALL partition of the Bootable USB. On the BOOT partition, create a sources folder and copy the updated boot.wim to it. On the INSTALL partition, create a sources folder and copy all the files from the original sources folder except the boot.wim and install.wim. In their place copy the updated boot.wim and install.wim. The slipstreamed installation media is now ready.