Let's say you have reached to the point when you can present a downloadable live image of your hobby OS. You tell your testers to download it, and they ask back: and now what should I do with this file to boot it on real hardware? Or maybe you just want a quick and easy way to create bootable media from live images because you like trying out OSes. What options do you have? Not much currently. R***s is only available on Windows. E***r is several hundreds of megabytes and known to be spying on you. The dd tool is cool, but average testers can't use it, specially not with compressed images.
So I put together a neat little application: USBImager. It comes without warranty, but if you find it useful then I'm happy for you
Features:
- No installation required, portable executable.
- Extremely small (about 128K on each platform)
- Available for all mainstream operating systems (Windows, MacOSX, Linux)
- Uses a native, very minimalistic GUI
- Can verify writes by reading data back and comparing to the original buffer
- Supports raw images: .raw, .bin, .iso, .dd etc.
- Supports compressed images: .gz, .bz2, .xz, .zip (both PKWARE and ZIP64)
- Estimates remaining time
- Has multilanguage support (currently 16 languages supported) by detecting the OS' locale
- Free and Open Source Software, licensed under MIT
The Windows version uses GDI and requires MinGW to compile. On MacOSX it's shipped with libui (statically linked) that uses Cocoa and can be compiled by CLI tools (no need to install XCode). Under Linux, you have two options: there's an X11 version that's totally dependency free (save libX11.so), and there's the statically linked libui version which uses GTK (and has tons of dependencies, X11, Wayland, harfbuzz, freetype2, cairo etc., but looks cool).
There's no reasonable upper limit on the disk image size, it can write easily a 2^63 bytes image, as it uses streaming only (for compressed images too).
Cheers,
bzt