rbalsleyMSFT 37f6dce344 Changes
- Updated parameter definition block to be alphabetized (not to be confused by the param block, which is not alphabetized)
- Added $PEDriversFolder script variable to the param block (for some reason it was missing)
- Added ConfigFile and ExportConfigFile parameters to support json config files
- Changed Version to 2412.1
- Modified vhdxCacheItem class to include $LogicalSectorSizeBytes
- Added new function Get-Parameters to help with new config and export config file functionality
- Fixed Get-MicrosoftDrivers function to not require the HTMLFILE COM object, which isn't available in Windows 11. It seems to be installed with Office, which is what was allowing downloads to work and masked the issue.
- Added long path support to prevent issues with oscdimg creating the Apps.iso.
- Fixed an issue where the $PEDriversFolder variable wasn't being used (instead $FFUDevelopment\PEDrivers was used)
- Created a new function New-FFUFileName - this works in conjunction with the new $CustomFFUNameTemplate. The function was needed to support both scenarios where $InstallApps is either $true or $false.
- Added new function Export-ConfigFile. When passing -ExportConfigFile 'Path\To\ConfigFile.json' the script will generate a parameter dump of all of the configured parameters
- Added driver folder validation to throw an error if spaces are detected in the folder name of the drivers folder (e.g. C:\FFUDevelopment\Drivers\Dell 3190). This is due to an issue with Dell drivers and their inability to handle paths with spaces consistently.
- Added back the Windows Security Platform update which grabs it from the web instead of the Microsoft update catalog
- Fixed an issue where the Drivers folder was being completely deleted instead of its sub-folders
- Removed the Requires -PSEdition Desktop. The script works with both Desktop and Core, so pwsh 7 is fine.
- Created a new config folder to hold config files. A new sample_default.json file is provided to show what the format looks like.
- You can now set the computername in the unattend.xml file whereever you want. Prior it required that the computername was the first component element.
2024-12-18 16:10:35 -08:00
2024-12-18 16:10:35 -08:00
2024-09-10 11:44:12 -07:00
2023-02-15 14:37:14 -08:00
2024-09-10 11:45:44 -07:00

Using Full Flash Update (FFU) files to speed up Windows deployment

What if you could have a Windows image that has:

  • The latest Windows cumulative update
  • The latest .NET cumulative update
  • The latest Windows Defender Platform and Definition Updates
  • The latest version of Microsoft Edge
  • The latest version of OneDrive (Per-Machine)
  • The latest version of Microsoft 365 Apps/Office
  • The latest drivers from any of the major OEMs (Dell, HP, Lenovo, Microsoft) (yes, the latest, not some out of date enterprise CAB file from years ago)
  • Winget support so you can integrate any app available from Winget directly in your image
  • ARM64 support for the latest Copilot+ PCs
  • The ability to bring your own drivers and apps if necessary
  • Custom WinRE support

And the best part: it takes less than two minutes to apply the image, even with all of these updates added to the media. After setting Windows up and going through Autopilot or a provisioning package, total elapsed time ~10 minutes (depending on what Intune or your device management tool is deploying).

The Full-Flash update (FFU) process can automatically download the latest release of Windows 11, the updates mentioned above, and creates a USB drive that can be used to quickly reimage a machine.

Updates

2409.1 has been released! Check out the changes in the Change Log

Getting Started

  • Download the latest release
  • Extract the FFUDevelopment folder from the ZIP file (recommend to C:\FFUDevelopment)
  • Follow the doc: C:\FFUDevelopment\Docs\BuildDeployFFU.docx

YouTube Detailed Walkthrough

The first 15 minutes of the following video includes a quick start demo to get started. Below the video are a list of chapters. This video was taken with the 2407.2 build. Features released after that will not be demonstrated in the video.

Reimage Windows Fast with Full-Flash Update (FFU))

Chapters:

00:00 Begin

03:21 Quick Start Prereqs

07:19 Quick Start Demo

14:12 Script Parameters

17:22 Obtaining Windows Media

25:55 Adding Applications

26:59 Adding M365 Apps/Office

29:21 Adding Applications via Winget

34:59 Bring your own Applications

36:01 Customizing InstallAppsAndSysprep.cmd

38:34 Demo - Application Configuration

49:43 Drivers

55:39 Automatically downloading drivers

57:28 Microsoft Surface drivers

58:55 Dell drivers

01:01:45 Lenovo drivers

01:03:16 HP drivers

01:05:25 Bring your own drivers

01:06:24 Demo - Drivers

01:11:55 Multi-model driver support

01:13:21 Device naming

01:18:30 Device enrollment

01:21:43 Autopilot

01:24:57 Provisioning packages

01:26:54 Custom WinRE

01:29:59 Demo - Putting it all together (Deep dive)

01:32:06 Downloading Lenovo 500w drivers

01:33:28 Downloading apps via Winget

01:36:54 Downloading Office, Defender, Edge, OneDrive

01:38:15 Building the Apps.iso

01:39:08 Applying Windows to the VHDX

01:40:16 Downloading and applying cumulative updates

01:41:44 Building the VM

01:48:13 Capturing the FFU

01:53:38 Creating USB drive

01:58:41 Deploying FFU

02:11:48 Troubleshooting

02:14:30 EDU Endpoint Office Hours

S
Description
No description provided
Readme MIT 27 MiB
Languages
PowerShell 100%