How to make a Windows XP bootleg

In this tutorial, I'll be going through how I make Windows XP bootlegs. It's unfortunately not as easy as Windows 7+ and a pain in the ass to do, but you can get a basic crusty mod out of it. This will also work for Windows 2000 and Windows Server 2003, though I wouldn't see the point in modding those.

Warning icon
This article was taken from here. It might not reflect the most recent changes!
Windows XP Ultimate, a CollabSysOS bootleg I have worked on.

Pre-requisites

We'll be using these tools in the tutorial:

  • A Windows XP ISO: You can find these basically anywhere and use any one you want, but I'd recommend you use the one I host, as it has SP3 and every update up to November 2013. Click here to download it
  • Access to a Windows install: You will need a Windows install with basic utilities such as makecab. Most Windows installs already have this, so you shouldn't worry too much about this.
  • nLite: This is optional, but highly recommended for making any finishing touches to your mod. These include things like unattended installs, update sideloading and some patches like 3rd-party themes.
  • Any file hosting service: You'll need this to host your ISO obviously. I personally host mine on our own server, but you can use something like Google Drive or MediaFire.

Preparation

Acquiring themes

You can acquire themes through sites like DeviantArt, or rip them out of already existing bootlegs. I host a few that I took out of a bootleg from 2010, you can find them here

Acquiring programs

If you want to slipstream programs into your bootleg, gather every program you want to include. You'll also need a tool like WPI to have a crusty GUI for installing your programs, or you can just write a simple batch script to install all of them. You can later add the WPI/script as a program to run automatically at first boot later in nLite.

Extract the ISO

Once you have obtained an ISO, open it with a extraction utility like 7-Zip or WinRAR. You need a writable working directory to mod the files, simply mounting the ISO will not do anything. Extract it to your Desktop folder in a folder named whatever you want. And now it's time to get into the meat and potatoes of this article, actually making the bootleg.

Mod the files

In Windows Vista and later, the setup engine uses a highly compressed file called "install.wim" for all the files that it needs to copy. Windows 2000, XP and Server 2003 use a different format... it stores all the files it needs to copy in a folder called "I386" on the root of the CD. Most, if not all files in here are cabinet files, which contain the actual file that setup copies, so for shell32.dll it is stored in I386 as "SHELL32.DL_". This is proven upon opening the file with your file extraction software. So, for every file you want to modify:

  • You will need to open it with a file extraction utility
  • Copy it to where-ever
  • Open it with a resource modifier tool like Resource Hacker
  • Save it and run the following command: makecab file.ext FILE.EX_ (for example: makecab logonui.exe LOGONUI.ex_, makecab shell.32.dll SHELL32.DL_)
  • Move the newly created cabinet back to I386, replacing the old one.

Unfortunately, it has to be that way and that's why I said it's a real pain in the ass to create XP bootlegs, and mods in general. There ARE ways to make Windows XP install from a wim file, but that's out of the scope for this article and we won't be covering that.

You will need to do this for every file you modify, but if you want a specific theme for your bootleg, programs like Isso Pack can automatically go in and replace every file with a specific theme, like a Windows 7 theme.

Some important files

  • The graphical setup engine introduced in XP contains all of its resources in WINNTBBU.DLL. You can use software like WinntbbuED to edit it easily or modify it yourself. WINNTBBU is an uncompressed file on the CD. (For me, anyway)
  • Most icons and dialogs are stored in shell32.dll (SHELL32.DL_)
  • Explorer resources are stored in explorer.exe (EXPLORER.EX_)

Using nLite

 
The location step should look like this if you did it correctly.

Once you've either easily or painstakingly finished the file modding part, it's time to use nLite. nLite is a program to slipstream updates, create unattended setups and customize Windows XP installations. It's a pretty neat tool. Grab the latest version from here, and run the installer. This requires .NET 2.0, but if you're running a modern Windows version then .NET 2.0 should already be installed. If not, go into optional features and enable the .NET 3.5 feature which also installs 2.0.

On startup of nLite, it will ask you to select the language you want to use, then it will tell you to locate your Windows installation files. Click Browse and select the folder where you extracted the files. After that, it should automatically detect what version of Windows you are going to modify. Click Next until you get to the task selection page.

Selecting Tasks

 
You'll really only need these.

Okay, there's a lot of stuff here, from updates to bootable ISOs. Select these: Components (optional: if you want to remove things), Unattended, Options, Tweaks and Bootable ISO.

Performing Tasks

You'll then be brought to the Components page. A window will pop up asking you what you want to keep. If you want to remove things without accidentally removing something you want, make sure to select some options here. From here, you can go in and select anything you want to remove, from applications to even support for hardware. These are sometimes useful if you are creating a minimal build (a "lite ISO") but generally useless if you want to create a full on bootleg. You will be brought to the Unattended page next, where you can enter in stuff that the setup will do automatically, like entering a product key, creating users and also running scripts. You will only need to use a few things here: General, RunOnce and Desktop themes.

General

Here you can enter in stuff like product keys, if you want to turn off OOBE or the firewall, anything really. Nothing much to say here.

RunOnce

Remember the acquiring programs part from earlier? Assuming you have already compiled the WPI or written a script to do it and it is already in the Windows installation files, you can enter in the path to it in here. For example, if your script is located in (folder containing install files)\Programs\Install.bat, you can enter in %SOURCE%\Programs\Install.bat

Desktop themes

Here you can integrate the themes into your bootleg. If you had already downloaded some and put them into a separate folder, click Add, and then select the .theme file. nLite will automatically add the .msstyles and other files the theme needs to function. You can also select the default theme to apply if you wish.

Options and Tweaks

Options

This is where you'll find little options and patches for you to use. If you have integrated themes, make sure to go to the Patches page and turn on Unsigned Themes Support, otherwise the themes will not function properly. You can also disable SFC if you want, which is usually what I do anyway. Nothing other than those in the Options page really matters anyway.

Tweaks

This is where you can find little tweaks you can make to the install like desktop icon size, if you prefer the classic logon screen and many more. If you don't care about that, move on.

Finishing touches

Finally, you'll be brought to the processing page. A confirmation window will pop up asking if you want to apply these changes. Click Yes if you are confident that you're finished, though you can always go back into nLite later to make some changes. Depending on how much stuff you removed and integrated, this may take a few minutes. After that, it'll tell you how big the new installation is. Click Next and you will be brought to the Bootable ISO page. Select "Create Image" under Mode and change the label to whatever you want. After that, click Make ISO and select the location where you want your ISO to be. It will now begin creating the ISO. After that, you can close nLite.

Uploading to a file host

Congratulations, you've done it! If you've followed everything correctly, you should have a shiny new ISO containing your beautiful creation. I'm sure it's great. Anyway, you should test it out under a virtual machine or if you have another computer laying around, you can test it there too. If testing went well, you can upload it to a file host of your choice and share it with people. If you found something that went wrong, you can go back into nLite and attempt to fix it.