Lately I’ve been having connectivity issues on both AIM and ICQ. (I couldn’t remember the last time I was actually logged on.) If you don’t care about the debugging story, skip to the conclusions below.

Press p to list partitions; delete them all by repeatedly using d; create one partition spanning the whole disk by pressing n and using the default for each question.

Change the type to FAT32 by pressing t, and for the partition type hex code, enter c

Make sure you did nothing wrong, and press w to write the partition table to the disk. This is irreversible!

Back in the root prompt, format the new FAT32 partition by using: mkdosfs -F 32 /dev/hdd1

That’s it – you now have a big FAT32 partition. Make sure you don’t mount it in both Windows and Linux at the same time, because they won’t be sync’ed. (To unmount in Windows, choose “Change Drive Letter and Paths” in diskmgmt.msc, and remove all drive letters and NTFS mount points.)

“Orca” is an editor for MSI files that comes with the Microsoft Windows Installer SDK.

Some program wouldn’t install on my system, claiming it can’t run on “Server” editions of Windows.I edited the MSI file with Orca to remove the offending condition. I used File -> Save As to save the edited MSI under a different filename.

When I ran the installer again, it skipped the “Bad Windows edition” message, and instead gave me a worse error: “Error 2356”.Digging in the SDK revealed the matching error message: “Could not locate cabinet in stream: [2].”

After a while of searching for the possible cause, I uncovered this in the Orca help, under “Special Considerations when editing Databases”:

Embedded Streams and StoragesWhen a database is saved using the Save As… or Save Transformed As… command, embedded binary streams (such as embedded cabinet files) are not saved to the new database unless they are part of a data row. Embedded sub-storages (nested install files) are never saved to the new database.

The solution? Make a renamed copy of the original MSI, edit with Orca, and save using File -> Save.

In popular Unix/Linux shells, there is an option to start a process in the “background” by (i.e. in bash) typing “./something &“, or pressing Ctrl-Z and then “bg“. The process then prints its output to stdout as usual, but the bash runs in the foreground and receives console stdin.

In Windows, something similar (much less powerful than the bash “jobs”, though) can be done by doing: start /b something