A minimal, fast, and reliable USB/ISO writer for Linux.
Etch is a native GTK4 application written in Rust that writes ISO images to USB drives with verification. Built for correctness, transparency, and simplicity.
Live development - actively updated
This project is under active development. Features are being added, tested, and refined regularly.
- Write ISO images to removable USB drives
- Verify written data for integrity
- Real-time progress reporting (bytes written, speed, ETA)
- Clean, minimal interface following modern Linux design principles
- No root required until write operation
- PolicyKit integration for privilege elevation
- Correctness over convenience
- No fake progress or placeholder implementations
- One tool, one job - write ISOs safely
- Clean runtime - zero GTK warnings
- Simple, readable code
- Linux (GTK4)
- Rust toolchain (for building from source)
- PolicyKit (for privilege elevation)
# Clone repository
git clone https://github.com/v-k-dev/etch.git
cd etch
# Build
cargo build --release
# Run
cargo run --releaseBuild from source for now. AUR package coming soon.
Build from source using the instructions above.
- Launch Etch
- Select an ISO file
- Select target USB drive
- Click Write
- Authenticate when prompted (PolicyKit)
- Wait for write and verification to complete
Warning: All data on the target drive will be permanently erased.
src/main.rs- Application entry pointsrc/ui/- GTK4 interface, stylingsrc/core/- Business logic, models, verificationsrc/io/- Device detection, disk I/O operations
# Format code
cargo fmt
# Lint
cargo clippy -- -D warnings
# Run with warnings visible
cargo runThis project is in active development. Contributions welcome but please discuss major changes first.
Design principles:
- Keep it simple
- No over-engineering
- Professional alignment and spacing
- Testable, incremental changes
To be determined
Developed with focus on reliability and transparency for the Linux desktop.
- No partition management
- No multi-boot support
- No network features
- No telemetry or analytics
- No theme customization
- No cross-platform support (Linux only)
MIT OR Apache-2.0
- Double-check the selected target device
- Ensure you have backups of important data
- Verify the device path before confirming
Etch will validate devices and prevent writing to mounted devices, but user vigilance is essential.
Etch prioritizes correctness and transparency over features. Every operation reports actual system state. No simulated progress, no fake timings, no hidden operations.
If you can't trust your ISO writer, what can you trust?