aboutsummaryrefslogtreecommitdiff
path: root/custom/install-archzfs.conf.example
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-18 02:01:01 -0600
committerCraig Jennings <c@cjennings.net>2026-01-18 02:01:01 -0600
commit5bd18b6f6a3ea89c900549c530af2a256094b917 (patch)
treed0dd600519c376d767da333311faa9358936588b /custom/install-archzfs.conf.example
parentf1bcb073a09254bbac9725bec47648df72438bee (diff)
downloadarchangel-5bd18b6f6a3ea89c900549c530af2a256094b917.tar.gz
archangel-5bd18b6f6a3ea89c900549c530af2a256094b917.zip
Add config file support for unattended installations
Features: - --config-file option for automated installs - Example config at /root/install-archzfs.conf.example - Validates required fields before install - Config only used when explicitly specified (safety) Bug fixes: - Fix pacstrap hanging on provider prompts (use yes pipe) - Remove fsck from mkinitcpio HOOKS (ZFS doesn't use fsck) - Add hostid support for ZFS boot - Add spl.spl_hostid to kernel command line Documentation: - Comprehensive README.org with 15 sections - Session context tracking file
Diffstat (limited to 'custom/install-archzfs.conf.example')
-rw-r--r--custom/install-archzfs.conf.example77
1 files changed, 77 insertions, 0 deletions
diff --git a/custom/install-archzfs.conf.example b/custom/install-archzfs.conf.example
new file mode 100644
index 0000000..e97fe68
--- /dev/null
+++ b/custom/install-archzfs.conf.example
@@ -0,0 +1,77 @@
+# install-archzfs.conf - Unattended Installation Configuration
+#
+# Copy this file to /root/install-archzfs.conf and edit values.
+# Or use: install-archzfs --config-file /path/to/your-config.conf
+#
+# Required fields: HOSTNAME, TIMEZONE, DISKS, ZFS_PASSPHRASE, ROOT_PASSWORD
+# All other fields have sensible defaults.
+
+#############################
+# System Configuration
+#############################
+
+# Hostname for the installed system (required)
+HOSTNAME=archzfs
+
+# Timezone (required) - Use format: Region/City
+# Examples: America/Los_Angeles, Europe/London, Asia/Tokyo
+TIMEZONE=America/Los_Angeles
+
+# Locale (optional, default: en_US.UTF-8)
+LOCALE=en_US.UTF-8
+
+# Console keymap (optional, default: us)
+KEYMAP=us
+
+#############################
+# Disk Configuration
+#############################
+
+# Disks to use for installation (required)
+# Single disk: DISKS=/dev/vda
+# Multiple disks: DISKS=/dev/vda,/dev/vdb,/dev/vdc
+DISKS=/dev/vda
+
+# RAID level for multi-disk setups (optional)
+# Options: mirror, stripe, raidz1, raidz2, raidz3
+# Default: mirror (when multiple disks specified)
+# Leave empty for single disk
+RAID_LEVEL=
+
+#############################
+# Security
+#############################
+
+# ZFS encryption passphrase (required)
+# This will be required at every boot to unlock the pool
+ZFS_PASSPHRASE=changeme
+
+# Root password (required)
+ROOT_PASSWORD=changeme
+
+#############################
+# Network Configuration
+#############################
+
+# Enable SSH with root login (optional, default: yes)
+# Set to "no" to disable SSH
+ENABLE_SSH=yes
+
+# WiFi configuration (optional)
+# Leave empty for ethernet-only or to skip WiFi setup
+WIFI_SSID=
+WIFI_PASSWORD=
+
+#############################
+# Advanced ZFS Options
+#############################
+
+# Pool name (optional, default: zroot)
+#POOL_NAME=zroot
+
+# Compression algorithm (optional, default: zstd)
+#COMPRESSION=zstd
+
+# Sector size shift (optional, default: 12 for 4K sectors)
+# Use 13 for 8K sector drives
+#ASHIFT=12