A customized Arch Linux live ISO with an automated installer that sets up a complete GNOME desktop environment tailored for development and creative work.
This project creates a bootable Arch Linux ISO (archlinux-baseline) with:
- GNOME desktop environment with custom configurations
- Comprehensive development tools (Rust, Python, Java IDEs)
- Creative applications (Blender, GIMP, KiCad, OBS Studio)
- Gaming support (Steam, Mangohud)
- AMD GPU drivers pre-configured
- Automated installation script
To build this ISO, you need:
- An Arch Linux system (or Arch-based distribution)
archisopackage installed:sudo pacman -S archisojustcommand runner:sudo pacman -S just- Sufficient disk space (~10GB for build artifacts)
- Root/sudo privileges
Use the Justfile to build the ISO:
just buildThis will:
- Build the ISO using
mkarchiso - Output the ISO to the
out/directory
After building, you'll find the ISO file in the out/ directory:
out/archlinux-baseline-YYYY.MM.DD-x86_64.iso
-
Boot from the ISO - Boot the generated ISO on your target machine (requires UEFI boot mode)
-
Automatic Installation - The ISO boots into a TTY (text console) and automatically runs the
install-me.pyinstallation script -
Disk Selection - The installer automatically detects and selects the most relevant disk:
- Priority: NVMe > SSD > Largest disk
- WARNING: The installer will WIPE the selected disk completely
-
Confirmation - Review the detected disk and confirm the installation when prompted
-
Installation Process - The script will install and configure the complete system as described below
-
Reboot - After installation completes, reboot into your new system
If you need to run the installer manually (e.g., after canceling the automatic run):
sudo /root/install-me.pyThe install-me.py script automatically configures a complete Arch Linux system with the following settings:
- ESP (EFI System Partition): 1024 MiB, FAT32, mounted at
/boot - Root Partition: Remaining disk space, ext4, mounted at
/
- Hostname:
arch-lukas - Bootloader: systemd-boot (UEFI only)
- Locale: German (
de_DE.UTF-8) with English fallback (en_US.UTF-8) - Kernel: Linux kernel
- Init System: systemd
- Display Server: Xorg
- Desktop Environment: GNOME with GDM display manager
| User | Password | Privileges |
|---|---|---|
lukas |
lukas |
Administrator (sudo) |
root |
root |
Root access |
- GNOME: Full GNOME desktop with most default applications
- GDM: GNOME Display Manager
- Extensions: Vitals, Tiling Assistant, Browser Connector
- Languages & Runtimes: Rust (rustup), Python, Git
- IDEs: RustRover, IntelliJ IDEA Ultimate, PyCharm Professional, Zed
- Build Tools: Just, archiso
- 3D Modeling: Blender, OpenSCAD
- 2D Graphics: GIMP
- Video: OBS Studio, VLC
- CAD/Electronics: KiCad, Prusa Slicer
- 3D Printing: UVTools
- Platforms: Steam (with 32-bit library support)
- Performance: MangoHud (with 32-bit support)
- GPU: AMD Radeon drivers (Mesa, Vulkan)
- Discord
- Package Management: Multilib repository enabled
- Network: NetworkManager
- Audio: PipeWire with WirePlumber
- File System: gvfs (with SMB, NFS, MTP support)
- Virtualization: GNOME Boxes
- Monitoring: htop, Resources
- Archive Manager: Included with GNOME
- Text Editors: nano, GNOME Text Editor
The installer automatically configures:
- User name: Lukas Heiligenbrunner
- Email: [email protected]
- Default toolchain: stable
- Theme: Dark mode enabled
- Desktop Background: Custom Hogwarts Legacy background
- Clock: Show seconds in top bar
- Power Management: Automatic suspend disabled
- Keybindings: Screenshot UI on Ctrl+F12
- Favorite Apps: Firefox, Console, Nautilus, Steam, Resources
- Experimental Features: Variable refresh rate, Scale monitor framebuffer
- Default view: List view (small, tree view enabled)
- Show "Create Link" option
- Show "Delete Permanently" option
- Tiling Assistant: Auto-enabled (popup and tile groups disabled)
- Vitals: Auto-enabled for system monitoring
- Launch New Instance: Auto-enabled
- NetworkManager (for network connectivity)
- GDM (for graphical login)
The system is configured with a custom package repository:
- URL:
https://repo.heili.eu/$arch - Contains additional packages not in official Arch repos
The ISO boots with:
- Boot Mode: UEFI with systemd-boot
- Boot Timeout: 15 seconds
- Architecture: x86_64 only
.
├── airootfs/ # Files copied to the live ISO root filesystem
│ └── root/
│ ├── install-me.py # Automated installer script
│ └── rsc/ # Resources (backgrounds, etc.)
├── build.sh # Build script
├── Justfile # Just build recipe
├── profiledef.sh # ISO profile definition
├── packages.x86_64 # Packages included in live ISO
├── pacman.conf # Pacman configuration for building
├── bootstrap_packages.x86_64 # Bootstrap packages
├── efiboot/ # UEFI boot configuration
├── grub/ # GRUB configuration (if used)
└── syslinux/ # Syslinux configuration
After installation, you should:
-
Change default passwords:
passwd # Change root password passwd lukas # Change user password
-
Update the system:
sudo pacman -Syu
-
Configure git (if needed):
git config --global user.name "Your Name" git config --global user.email "[email protected]"
-
Install additional software as needed:
sudo pacman -S <package-name>
To customize this ISO for your needs:
-
Modify packages: Edit
packages.x86_64for live ISO packages, or modify thepackagesproperty inairootfs/root/install-me.pyfor installed system packages -
Change installer behavior: Edit
airootfs/root/install-me.pyto modify:- User credentials
- Hostname
- Partitioning scheme
- Desktop settings
- Installed packages
-
Update profile settings: Edit
profiledef.shto change:- ISO name and label
- Publisher information
- Boot modes
-
Rebuild: After making changes, rebuild with
./build.shorjust build
- The installer is destructive and will wipe the selected disk
- BIOS/Legacy boot is not supported (UEFI only)
- The system is optimized for AMD Radeon GPUs (but should work with other GPUs)
- Some packages (RustRover, IntelliJ IDEA Ultimate, PyCharm Professional) require licenses
This is a custom Arch Linux configuration. Arch Linux itself is under various open source licenses. Check individual package licenses for details.
- Built on Arch Linux
- Uses archiso for ISO creation
- Uses archinstall library for installation