This is a Balena Etcher alternative written in C.
Legend:
🚧 = We are working on it!
❌ = Implementation hasn't started yet.
✔️ = We have a working implementation.
❔ = May be implemented in the future.
✔️ Core ISO Imaging Engine (CLI)
❌ GUI Interface
❌ Cross-Platform GUI Framework
The project currently has a working CLI implementation with:
- ✅ ISO to USB writing
- ✅ Progress tracking
- ✅ Write verification
- ✅ Cross-platform support (Linux/macOS, no Windows yet)
The GUI is planned but not yet implemented.
├── include/imager/
│ ├── progress.h
│ ├── utils.h
│ ├── iso_operations.h
│ └── imager.h
├── src/
│ ├── core/
│ │ ├── progress.c
│ │ └── iso_operations.c
│ ├── utils/
│ │ └── utils.c
│ └── main.c
├── docs/
│ ├── BUILD.md
│ └── USAGE.md
├── Makefile
├── CMakeLists.txt
└── README.md
- GCC compiler (or compatible C compiler)
- Make (for Makefile builds)
- CMake 3.10+ (for CMake builds)
makesudo ./imager <iso_file> <usb_device>Example:
sudo ./imager ubuntu-22.04.iso /dev/sdX- You must run as root/admin to access raw devices.
- All data on the target device will be destroyed!
- Double-check your device path before proceeding
- The program will prompt for confirmation before writing
make
make cleanmkdir build && cd build
cmake ..
makePlease see the contributing guidelines for more info.
GPLv3