first commit
This commit is contained in:
56
README.md
Normal file
56
README.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# Boot-to-Firefox (Minimal Arch Linux Live System)
|
||||
|
||||
This repository is a **proof-of-work** project — more of a "I always wanted to try this" kind of thing.
|
||||
The goal is to demonstrate how one can reproducibly build a **minimal live system** based on **Arch Linux** and its **LTS kernel**.
|
||||
|
||||
Once booted, the system skips the usual bells and whistles and goes straight into a graphical environment where the only real application of interest is: **Firefox**.
|
||||
|
||||
## Why?
|
||||
|
||||
In the age of increasingly complex software stacks, this project explores the opposite philosophy:
|
||||
a lean, hardened live system that is **ephemeral by design**.
|
||||
|
||||
- **No persistence**: Each boot is a clean slate.
|
||||
- **Up-to-date**: Rebuild, PXE-boot, and users always start with the latest packages.
|
||||
- **Reduced attack surface**: Minimal packages, minimal services, minimal surprises.
|
||||
- **Reproducible**: The build pipeline ensures you know exactly what goes into the image.
|
||||
|
||||
This makes it a neat candidate for:
|
||||
|
||||
- **PXE deployments** in organizations where users only need a browser.
|
||||
- **Security-conscious environments** where diskless, hardened endpoints reduce risks.
|
||||
- **Training & demonstrations** where reproducible minimalism is key.
|
||||
|
||||
## Features
|
||||
|
||||
- Boots directly into **Firefox** under a Wayland compositor (Hyprland).
|
||||
- Uses **Arch Linux LTS kernel** for stability.
|
||||
- Automatically sets a **random root password** on each boot.
|
||||
- Automatically sets a **random hostname** on each boot.
|
||||
- Boots fast and quietly — no cluttered boot messages, no menu prompts.
|
||||
- Network connectivity via DHCP out-of-the-box.
|
||||
|
||||
## Future Directions
|
||||
|
||||
- Integrating **pre-configured Firefox policies** (bookmarks, addons, homepage).
|
||||
- Providing optional **Waybar** or minimal panels for usability.
|
||||
- Exploring additional **hardening mechanisms** (AppArmor, sandboxing, etc.).
|
||||
|
||||
## Disclaimer
|
||||
|
||||
This project is for **educational and demonstration purposes only**.
|
||||
Do not rely on it as-is for production use — but do feel free to tinker, adapt, and extend.
|
||||
|
||||
## Build it
|
||||
|
||||
Building requires an Arch Linux system with the `archiso` package installed.
|
||||
|
||||
```bash
|
||||
./build.sh
|
||||
```
|
||||
|
||||
# Resources
|
||||
|
||||
- https://wiki.archlinux.org/title/Archiso
|
||||
- https://gitlab.archlinux.org/archlinux/archiso/-/blob/master/docs/README.profile.rst
|
||||
- https://github.com/archlinux/archiso/blob/master/configs/releng/profiledef.sh
|
Reference in New Issue
Block a user