Commit Graph

6 Commits (f453b1d3d3d05ad10c860c69852b5235c078a3a9)

Author SHA1 Message Date
The_miro b5a3b46c79 setup: add answerfile system for fully automated installs
tui-install.sh:
  - Reads /answerfile.json if present (ANSWERFILE_MODE)
  - All dialog selections (components, DE, apps) sourced from file
  - Hostname from answerfile gets MAC address suffix appended to
    prevent conflicts when deploying one image to multiple machines
  - Interactive hostname inputbox added to the normal TUI flow
  - Colorway dialog added as final step; skipped if no colors differ
    from defaults and no answerfile colors are set
  - Answerfile mode: runs non-interactively, logs warnings on failure

generate-answerfile.sh (new):
  - Dry-runs the full installer dialog flow (OS + dotfiles)
  - Writes selections to ~/answerfile.json (or a given path)
  - No software is installed; passwords are never written to the file

build.sh:
  - New --preconf [FILE] flag embeds an answerfile into the ISO at
    /answerfile.json; omitting the flag leaves the ISO clean
  - Validates JSON with jq if available before embedding
  - Reworked arg parsing to handle the new flag alongside OUT_DIR

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 15:24:47 +02:00
The_miro 19b31859f6 archiso: use HOME instead of /tmp for build and output dirs
/tmp in WSL is a RAM-backed tmpfs that fills up during the build,
leaving xorriso with no room to write the ISO.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 14:33:01 +02:00
The_miro ecd272cdce archiso: make WORK_DIR and OUT_DIR overridable via env vars
/tmp fills up during large builds; allow redirecting both dirs without
editing the script (WORK_DIR=~/iso-work ./build.sh ~/iso-out).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 14:11:50 +02:00
The_miro 089841f5d3 archiso: fix deprecated boot modes and grub/systemd-boot conflict
Replace five deprecated boot mode names with the canonical 'bios.syslinux'
and 'uefi.systemd-boot', removing the ia32 grub mode that required grub
installed and conflicted with systemd-boot.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 13:29:58 +02:00
The_miro 562704139b setup: add ssh-server, docker, podman, cockpit optional modules; add less to pacstrap
- New optional modules: ssh-server (openssh, key auth hardened), docker
  (+ compose, docker group), podman (rootless, buildah, skopeo, lingering),
  cockpit (+ cockpit-machines, cockpit-podman, cockpit-navigator via AUR)
- openssh added to archiso packages.extra for live-env SSH access
- less added to pacstrap base install
- tui-install.sh wired up for all four new modules (checklist, count,
  summary, run); dialog dimensions bumped to fit 17 items

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 15:54:13 +02:00
The_miro a56d27888c setup: add archiso profile and run tui-install inside chroot
- Add setup/archiso/ with build.sh, releng overlay, motd, and
  install-arch launcher command for the live ISO
- Fix cryptroot mapper name in arch-autoinstall.sh (was 'root',
  breaking all subsequent mounts)
- Add base-devel to pacstrap in both installers (required for yay/makepkg)
- Clone dotfiles inside chroot so tui-install.sh is available immediately
- After base install, offer to run tui-install.sh as the regular user
  inside the chroot via runuser, with a temporary NOPASSWD sudoers rule;
  skip option available for base-only installs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 13:46:49 +02:00