Releases: Firstp1ck/archinstall-rs
Release v0.2.3
Release date: 2026-03-23
Highlights
- Bootloader reliability: Major hardening for EFISTUB, Limine, and systemd-boot. UEFI fallback paths (
EFI/BOOT/BOOTX64.EFI) and betterefibootmgrhandling improve first-boot success when NVRAM entries are missing or unreliable. - UKI support expanded: UKI flow is now wired through install planning for supported bootloaders, with matching sysconfig/kernel preset behavior and improved artifact handling.
- Secure Boot awareness: More robust Secure Boot detection (efivars + fallbacks), clearer status in the TUI, and safer policy enforcement for EFISTUB + UKI combinations.
Improvements & fixes
- Multi-kernel boot entries are now generated for selected kernels in bootloader plans.
- EFISTUB diagnostics improved (ESP paths, artifact checks,
efibootmgrstderr/return codes) to make VM/firmware issues easier to troubleshoot. - UEFI path and partition lookup fixes (
PARTN, escaped loader paths, cleaner NVRAM entry matching/reordering) reduce boot-entry misconfiguration risks. - UX/docs updates: EFISTUB is clearly labeled experimental, and boot/UKI guidance in TUI + docs is more explicit.
Risky / review before relying on it
- Boot pipeline changes in this release are concentrated in bootloader + UKI + Secure Boot logic. Do at least one real or VM install test (not only dry-run) if you depend on EFISTUB, Limine, or Secure Boot.
- For safety, re-check partitioning, encryption, and bootloader selections in the TUI before confirming install.
Breaking changes
- None intended for normal TUI users. EFISTUB behavior and labels changed significantly and are now explicitly marked experimental.
Arch ISO (one command)
curl -fsSL https://github.com/Firstp1ck/archinstall-rs/releases/download/v0.2.3/install.sh | bashOr download archinstall-rs and SHA256SUMS from this release and run sha256sum -c SHA256SUMS && chmod +x archinstall-rs && ./archinstall-rs.
Release v0.2.2
Release date: 2026-03-21
Highlights
- Load configuration: Presets are listed in a searchable table (country, language, desktop, notes) driven by
configs/examples/manifest.toml, with discovery from env overrides, the directory next to the binary, and cwd ancestors. - Examples & releases: More locale and popular example TOMLs under
configs/examples/; CI still shipsconfig-examples.tar.gz(and the install script unpacks it). Many refreshed examples use GRUB and document AUR helpers where relevant—always confirm bootloader and packages match your hardware before installing. - Install log: Child stdout is parsed with carriage-return handling so spinner-style progress updates in place instead of flooding the log.
Improvements & fixes
- Config load: Missing
root_password_hashno longer triggers a bogus “missing section” warning; set the root password in the TUI when you rely on plaintext flow. - Docs: README slimmed toward pointers; configuration, install, usage, and development docs expanded (preset layout, mirrors, desktop packages).
Risky / review before relying on it
- Install pipeline (
flow+ stdout pumping) changed; do a real or VM install after upgrading, not only dry-run, if you care about long-running command output. - Preset content (bootloader, AUR, disk hints) is opinionated; loading a preset does not replace double-checking partitioning, encryption, and bootloader choices in the TUI.
Breaking changes
- None intended for normal TUI users. Paths and labels for bundled examples moved under
configs/examples/; old “load from cwd only” behavior is replaced by the preset popup plus optional localarchinstall-rs.config.toml.
Before tagging v0.2.2: set version = "0.2.2" in Cargo.toml and update Cargo.lock if needed.
Suggested verification
cargo build --releasecargo test- On an Arch ISO or test VM:
cargo run -- --dry-run(and a short non-destructive flow) after loading a preset you care about
Arch ISO (one command)
curl -fsSL https://github.com/Firstp1ck/archinstall-rs/releases/download/v0.2.2/install.sh | bashOr download archinstall-rs and SHA256SUMS from this release and run sha256sum -c SHA256SUMS && chmod +x archinstall-rs && ./archinstall-rs.
Release v0.2.1
Release date: 2026-03-21
Highlights
- Storage: One validated storage plan drives partitioning, mounts, and fstab; btrfs subvolume presets (flat / standard / extended); pre-mounted installs when
/mntis already set up. - LUKS: Safer, quieter crypto setup (stdin passphrases, redacted logs), initramfs hooks and kernel cmdline that match your mkinitcpio style (
systemd/sd-encryptvs classicencrypt), and fewer false failures whenmkinitcpioexits non-zero on warnings only. - Firmware & mounts: systemd-boot is blocked on BIOS/legacy with a clear hint to use GRUB; ESP
vfatmounting is more reliable (FAT support check, fallbacks, better recovery when the live ISO kernel and modules disagree).
New
- Pre-mounted mode with cached mount/swap probes and clearer info in the disks flow.
- Optional
btrfs_subvolume_presetin saved config ([disks]); omitted configs behave like before (flat). - Release workflow assets: tagged builds publish the binary,
SHA256SUMS, andinstall.shfor the documented curl-to-bash install path.
Improvements & fixes
- LUKS: correct bootloader/kernel options when the root is on btrfs subvolumes; tighter mkinitcpio
HOOKS=detection; non-interactivecryptsetupand strongerdm-cryptmodule loading. - Manual partitioning: clearer parted byte-range rules (length vs end), overlap / past-100% rejection; btrfs preset available in manual mode when root is btrfs.
- BIOS GRUB in pre-mounted setups resolves the whole-disk target from mounts and disk selection.
- Preflight can warn when the live environment’s kernel and module versions look mismatched (a common ESP mount footgun).
Breaking changes
- None for normal TUI/config users. Internal APIs used only by tests or forks may need updates (e.g. bootloader planning now takes the storage plan).
Arch ISO (one command)
curl -fsSL https://github.com/Firstp1ck/archinstall-rs/releases/download/v0.2.1/install.sh | bashOr download archinstall-rs and SHA256SUMS from this release and run sha256sum -c SHA256SUMS && chmod +x archinstall-rs && ./archinstall-rs.
v0.2.0
archinstall-rs v0.2.0
Release date: 2025-10-14
Highlights
- Optional LUKS encryption for the root partition
- Info popup rendering supports multi-line messages (line breaks are preserved), improving readability of longer messages.
New
- Optional LUKS encryption for the root partition; opens as
cryptrootwhen enabled. - Info popup rendering supports multi-line messages (line breaks are preserved), improving readability of longer messages.
Improvements
- Safer bootloader setup flows:
- Systemd-boot: installs via
bootctl, writesloader.conf, and creates standardarch.confand fallback entries - GRUB: supports both UEFI and BIOS installs
- Systemd-boot: installs via
- More robust handling of device names such as NVMe (
/dev/nvme0n1pX) during mounting. - Clearer live logging throughout install sections and better debug messages.
Breaking changes
- None.
Known limitations
- Advanced storage layouts (LVM/RAID, complex Btrfs subvolumes) are not yet implemented in the automatic partitioner.
Thanks
Thanks to everyone testing early builds and reporting issues—your feedback directly shaped this release.
v0.1.0
Release Notes - archinstall-rs v0.1.0
Release Date: 19.09.2025
Version: 0.1.0
Status: MVP (Minimum Viable Product)
🎉 What's New
This is the first major release of archinstall-rs, a modern TUI installer for Arch Linux written in Rust. This MVP release provides a solid foundation for Arch Linux installation with an intuitive terminal interface.
✨ Key Features
🖥️ Modern TUI Interface
- Built with ratatui for responsive terminal interface
- Intuitive navigation with arrow keys and keyboard shortcuts
- Real-time configuration preview and validation
🔧 Core Installation Features
- Configuration Management: Save and load installation configurations in TOML format
- Disk Management: Automatic best-effort partitioning with GPT layout
- Bootloader Support: systemd-boot (UEFI) and GRUB (UEFI/BIOS)
- Package Management: Mirror configuration with reflector integration
- System Configuration: Locale, timezone, hostname, and keyboard layout setup
- User Management: Root password and user account creation with sudo privileges
🛡️ Safety Features
- Dry-run Mode: Preview all installation commands before execution
- Safety Checks: Abort if target disk has mounted partitions
- Confirmation Dialogs: Wipe confirmation for already partitioned devices
- Installation Progress: Real-time progress tracking and log viewer
📦 Partitioning Strategy
- GPT Layout: Modern partitioning with GUID Partition Table
- EFI System Partition: 512MiB for UEFI systems
- BIOS Boot Partition: 1MiB for GRUB on BIOS systems
- Swap Partition: 4GiB automatic sizing (configurable)
- Root Filesystem: Btrfs for modern filesystem features
- Optional LUKS: Disk encryption support (planned for future releases)
📋 System Requirements
Build Requirements
- Rust 1.70 or later (2024 edition)
- Cargo package manager
Runtime Requirements
- Arch Linux live environment (USB/ISO)
- UEFI or BIOS system
- Internet connection for package downloads
- Minimum 512MB RAM (1GB+ recommended)
- Minimum 2GB disk space (20GB+ recommended)
⚠️ Current Limitations
What Works
- ✅ 64-bit systems
- ✅ UEFI systems
- ✅ Best-effort partitioning only
- ✅ GRUB and systemd-boot bootloaders
- ✅ NetworkManager for networking
- ✅ Desktop Environment experience mode
Known Issues
⚠️ View may appear stuck at the end, but installation completes successfully⚠️ Installation progress view needs improvement⚠️ Manual partitioning partially implemented. Simple partitioning possible.
Not Yet Implemented
- ❌ Disk encryption/LUKS (planned for v0.2.0)
- ❌ Custom server/repository configuration
- ❌ Unified Kernel Images (Secure Boot support)
- ❌ RAID and LVM support
- ❌ Advanced bootloader options (EFISTUB, Limine)
🎮 Usage
Basic Installation Flow
- Boot into Arch Linux live environment
- Ensure internet connection
- Download via
curl -LO https://github.com/Firstp1ck/archinstall-rs/releases/download/v0.1.0/archinstall-rs - Check ShaSum:
github_sha_full="<Insert copied sha from the binary>"echo "${github_sha_full#sha256:} archinstall-rs" | sha256sum -c - >/dev/null && echo "Checksums match!" || echo "Checksums do not match!"
- Make executable with
chmod +x archinstall-rs - Run
./archinstall-rs - Navigate through configuration sections
- Review your setup
- Start installation
Navigation
- Arrow Keys: Navigate menu and content
- Enter: Select/Confirm/Run actions
- Esc/q: Close popups or return to menu
- Ctrl-C: Quit application
🔧 Configuration
The installer supports saving configurations in TOML format for reproducible installations:
[users]
users = []
additional_packages = []
[locales]
keyboard_layout = "us"
locale_language = "en_US.UTF-8"
[mirrors]
regions = ["United States"]
optional_repos = ["multilib"]
[disks]
mode = "Best-effort partition layout"
[bootloader]
kind = "systemd-boot"
[system]
hostname = "archlinux"
automatic_time_sync = true
timezone = "Europe/London"🛠️ Technical Details
Architecture
- Language: Rust (2024 edition)
- TUI Framework: ratatui
- Configuration: TOML format
- Partitioning: parted, mkfs, cryptsetup
- Package Management: pacstrap, pacman
Project Structure
- Modular design with separate modules for each installation section
- Clear separation between UI, logic, and data layers
- Type-safe configuration management
- Comprehensive error handling
🐛 Bug Reports
If you encounter any issues, please report them on GitHub Issues with:
- Clear description of the problem
- Steps to reproduce
- System information
- Relevant configuration files
- Error messages or logs
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- The Arch Linux community for excellent documentation
- The ratatui team for the TUI framework
- The original archinstall Python project for inspiration
- All contributors who help improve this project
⚠️ Disclaimer
This installer modifies disk partitions and system configurations. Always backup important data before using. The developers are not responsible for any data loss or system damage that may occur.
Made with ❤️ and 🦀 for the Arch Linux community