The temporary directory of a script is removed, if the script exits without errors. It is preserved for further examination, if the script exits with an error code.

Both scripts update-generator.bash and download-updates.bash check the user-ID and refuse to run as root.

These scripts don't need root privileges. Running the scripts as root and then again as a regular user will mess up ownership and file permissions: Some files will belong to root, and then they can't be modified by regular users anymore.

Updates can be joined to a comma-separated list on the command-line, just like the needed languages.

all All Windows and Office updates, 32-bit and 64-bitall-x86 All Windows and Office updates, 32-bitall-x64 All Windows and Office updates, 64-bitall-win All Windows updates, 32-bit and 64-bitall-win-x86 All Windows updates, 32-bitall-win-x64 All Windows updates, 64-bitall-ofc All Office updates, 32-bit and 64-bitall-ofc-x86 All Office updates, 32-bit

Note, that 64-bit Office updates are always downloaded in addition to 32-bit Office updates. Therefore, a list all-ofc-x64 would be the same as the list all-ofc. This is just, how the Windows script AddOffice2010x64Support.cmd works.

The internal lists can be combined with single updates. For example, to get all Windows updates, but a single Office update, you could write:

The support of internal lists required some rearrangements of the code. This makes it easier to create "backports" to support earlier versions of WSUS Offline Update. Basically, the scripts update-generator.bash and download-updates.bash now support all updates from Windows XP to Windows 10, and from Office 2003 to 2016. The library updates-and-languages.bash determines the valid updates for a specific version of WSUS Offline Update. A backport for the ESR version 9.2.3 will be released soon as a separate archive.