added installer shell script and additional steps
This commit is contained in:
92
README.md
Normal file
92
README.md
Normal file
@@ -0,0 +1,92 @@
|
||||
# Miasma OS Installer
|
||||
|
||||
Opinionated Arch Linux installer built with Go and Bubble Tea TUI framework.
|
||||
|
||||
## Features
|
||||
|
||||
- **Filesystem**: btrfs with optimized subvolume layout
|
||||
- **Desktop**: Cosmic Desktop
|
||||
- **Kernel**: linux-hardened
|
||||
- **Encryption**: LUKS2 by default (optional)
|
||||
- **Boot**: UEFI only (systemd-boot)
|
||||
- **Future**: Secure Boot support planned
|
||||
|
||||
## Quick Install
|
||||
|
||||
Boot into Arch Linux installation media and run:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://install.miasma-os.com | sh
|
||||
```
|
||||
|
||||
Or manually:
|
||||
|
||||
```bash
|
||||
# Download and run installer
|
||||
curl -fsSL https://github.com/miasma-os/miasma-installer/releases/latest/download/miasma-installer -o miasma-installer
|
||||
chmod +x miasma-installer
|
||||
sudo ./miasma-installer
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Go 1.25.2 or later
|
||||
- Arch Linux (for testing)
|
||||
|
||||
### Building
|
||||
|
||||
```bash
|
||||
# Build binary
|
||||
make build
|
||||
|
||||
# Build release binary (stripped, static)
|
||||
make release
|
||||
|
||||
# Install to /usr/local/bin
|
||||
make install
|
||||
|
||||
# Run directly
|
||||
make run
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
```bash
|
||||
# Run all tests
|
||||
make test
|
||||
|
||||
# Format code
|
||||
make fmt
|
||||
|
||||
# Lint
|
||||
make vet
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
.
|
||||
├── config/ # Installation configuration and archinstall JSON generation
|
||||
├── scripts/ # Post-install shell scripts
|
||||
├── tui/
|
||||
│ ├── model.go # Root state machine
|
||||
│ ├── steps/ # Installation step models
|
||||
│ └── styles/ # Shared UI styles
|
||||
├── install.sh # Bootstrap script for curl | sh installation
|
||||
└── main.go # Entry point
|
||||
```
|
||||
|
||||
## Post-Install Scripts
|
||||
|
||||
Custom shell scripts in `scripts/` run after archinstall completes:
|
||||
|
||||
- `01-cosmic-setup.sh` - Cosmic Desktop configuration
|
||||
- `02-hardening.sh` - System hardening tweaks
|
||||
|
||||
Scripts execute in alphabetical order.
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
Reference in New Issue
Block a user