# Vlarch

*Just, Vlad's Arch*

Vlarch is a personal Arch Linux flavor with two explicit flows:

- `install`: from a fresh Arch live USB
- `update`: from an already-installed Vlarch machine

## What it does (install flow)

- Detects networking (ethernet / WiFi)
- Selects timezone and locale
- Partitions disks — interactive multi-disk or single-disk auto
- Installs base system and Vlarch package manifests
- Sets up Hyprland, yay, tmux plugins (TPM), Hermes CLI, then applies dotfiles as finalization, plus autologin and first-boot AI onboarding prompt

## Install

Boot a fresh [Arch Linux live ISO](https://archlinux.org/download/), then run:

```sh
curl -fsSL 'https://vlarch.vladi.tech/install.sh' | bash
```

That's it. Answer the prompts and let it work.

Optional flags:

```sh
curl -fsSL 'https://vlarch.vladi.tech/install.sh' | bash -s -- --dry-run --verbose
```

## Philosophy

- **Personal first.** Built for my own machines. If you use it, you're adopting my taste.
- **Clean.** No bloat. Every package has a reason.
- **Integrated AI.** Hermes Agent + Pi, first-class.
- **Pure Arch.** Rolling Arch packages managed through yay.

## Update (installed Vlarch)

From an existing Vlarch machine:

```sh
curl -fsSL 'https://vlarch.vladi.tech/update.sh' | bash
```

Update flow now performs strict package reconciliation from centralized manifests:

- installs missing packages from `commons/packages/pacman-base.txt` and `commons/packages/aur.txt` via yay
- removes unmanaged packages automatically (except protected packages from keep-lists)
- copies and overrides dotfiles
- refreshes Hyprland plugins in an isolated step
- expects Hermes to already be provisioned by install (no Hermes bootstrap in update)

Useful flags:

```sh
curl -fsSL 'https://vlarch.vladi.tech/update.sh' | bash -s -- --dry-run --verbose
```

## Two modes

| Mode | Partitions | Packages |
|------|-----------|----------|
| **Vlad's Custom Config** | Manual, multi-disk via fzf | Vlad's defaults |
| **Vlad's Full Disk** | Auto (EFI + swap + btrfs root) | Vlad's defaults |

## First-boot AI onboarding

On first interactive shell login, Vlarch shows a one-time onboarding prompt with:

- `vlarch model`
- `vlarch whatsapp`

You can rerun the prompt at any time:

```sh
vlarch ai-setup
```

## License

GPL
