2019-08-01 15:34:30 +03:00
2019-06-06 13:28:29 +03:00
2019-08-01 15:10:23 +03:00
2019-07-25 09:44:33 +03:00
2018-11-01 15:04:14 +02:00
2019-08-01 15:34:30 +03:00
2019-08-01 15:10:44 +03:00
2019-08-01 15:10:44 +03:00
2018-11-01 15:05:00 +02:00
2019-06-22 20:13:54 +03:00

ALMA - Arch Linux Mobile Appliance

Almost every live Linux distribution out there is meant for a specific purpose, whether it's data rescue, privacy, penetration testing or anything else. There are some more generic distributions but all of them are based on squashfs, meaning that changes don't persist reboots.

ALMA is meant for those who wish to have a mutable live environment. It installs Arch Linux into a USB or an SD card, almost as if it was a hard drive. Some configuration is applied in order to minimize writes to the USB and making sure the system is bootable on both BIOS and UEFI systems.

Upgrading your packages is as easy as running pacman -Syu (or Topgrade) while the system is booted. This tool also provides an easy chroot command, so you can keep your live environment up to date without having to boot it. Encrypting the root partition is as easy as providing the -e flag

Installation

You can either build the project using cargo build or install the alma package from AUR.

Usage

sudo alma create /dev/disk/by-id/usb-Generic_USB_Flash_Disk-0:0

This will wipe the entire disk and create a bootable installation of Arch Linux. You can use either removable devices or loop devices. As a precaution, ALMA will not wipe non-removable devices.

After the installation is done you can either boot from it immediately or use arch-chroot to perform further customizations before your first boot.

Not specifying any path will cause ALMA to interactively prompt the user for a removable device.

Presets

Reproducing a build can be easily done using a preset file. Presets file are simple TOML file which contain a list of packages to install, a post-installation script and environment variables required by the preset. See the presets directory for examples.

Similar projects

Description
Create Arch Linux based bootable USB drives
Readme GPL-3.0 468 KiB
Languages
Rust 97.4%
Shell 2%
Dockerfile 0.6%