aboutsummaryrefslogtreecommitdiff
path: root/archsetup.conf.example
Commit message (Collapse)AuthorAgeFilesLines
* fix(installer): eight fixes from an overnight bug-hunt and its reviewCraig Jennings29 hours1-1/+6
| | | | | | | | | | | | | | I squashed these because the per-bug reasoning lives in todo.org, which this commit carries. Two could cost a machine. configure_initramfs_hook swapped the udev hook for systemd on a LUKS root, leaving a standalone encrypt hook under an init that never runs it. The rebuild succeeds and the installer exits clean, then the root won't unlock at the next boot. trim_firmware ran pacman -Rdd against twelve firmware packages behind a DMI gate reading product_name, where "Framework" never appears. That left it dead on the hardware it targets, and dangerous to fix the obvious way: this machine is a Framework Desktop whose Ryzen iGPU needs the amdgpu firmware. It refuses on PCI modalias evidence now. wipedisk discarded before it checked. blkdiscard ran with -f, which disables the exclusive open, so picking the wrong disk destroyed a live filesystem and then reported that nothing had happened. Four more are smaller. The NVIDIA preflight aborted dwm and headless installs over a driver floor they never need. zfs-replicate exited 0 after every dataset failed. Unattended installs blocked on two prompts, and the first fix for that inherited a [Y/n] default into passwordless console login. A fresh install left the dotfiles repo permanently dirty. The review found a pattern worth more than any single fix. Helpers had thorough tests and none proved they were called. Deleting the call left five suites green, including the guard on that pacman -Rdd. CALL_SITES now pins nine caller/callee pairs. The suite runs 341 tests at exit 0, with no new shellcheck findings. I proved every guard by deleting it and watching the intended test go red.
* chore: open-source release-prep (udev flag, SPDX headers, boolean style)Craig Jennings2026-06-241-0/+5
| | | | | | | | Three release cleanups, all behavior-preserving for my machines: - Gated the Logitech BRIO udev rule behind INSTALL_DEVICE_UDEV_RULES (default yes, opt-out), so the device-specific rule is off for anyone without that hardware. Added the config read, validation, and a conf.example entry. - Added a GPL-3.0-or-later SPDX-License-Identifier header after the shebang of all 24 shell scripts in the repo. - Standardized boolean conditionals on the explicit [ "$var" = "true" ] form, replacing the bare `if $var` idiom. The STEPS function-dispatch is left alone, since it runs a function name rather than testing a boolean.
* feat(archsetup): make the claude-code install optionalCraig Jennings2026-05-261-0/+5
| | | | The claude-code step is a curl|sh from a third party, and not every user wants AI tooling. I put it behind INSTALL_CLAUDE_CODE (default yes, so current behavior is unchanged), with matching --claude-code / --no-claude-code flags. I wired it the same way as AUTOLOGIN and NO_GPU_DRIVERS: config mapping, a validate_config yes/no check, and a guard around the install block. I also documented the key in archsetup.conf.example.
* feat(archsetup): clone dotfiles repo and stow per DESKTOP_ENVCraig Jennings2026-05-221-0/+16
| | | | | | Dotfiles now live in their own repo (git.cjennings.net/dotfiles.git), so archsetup clones DOTFILES_REPO to the user's ~/.dotfiles and stows the right tree for the chosen DESKTOP_ENV: dwm and hyprland get common/ plus their own layer, none gets the standalone minimal/ tree. The clone runs as the target user, so the working tree is user-owned with no chown-after race. Add DOTFILES_REPO / DOTFILES_BRANCH / DOTFILES_DIR config keys with the same injection guard the other repo keys carry. If the clone doesn't produce a git checkout, error_fatal stops the install rather than silently skipping the restore step that reverts what stow --adopt pulled in. That restore now runs for every DESKTOP_ENV, including none — minimal/ ships the .bashrc/.bash_profile that collide with /etc/skel, so its --adopt needs the same cleanup.
* feat(archsetup): add interactive username/password promptsCraig Jennings2026-01-251-5/+8
| | | | | | | | | Replace hardcoded "welcome" password with interactive prompts during preflight checks. Fixes gnome-keyring password mismatch issue. - Username validation (lowercase, starts with letter, alphanumeric) - Password confirmation (enter twice, must match) - Remove forced password change on first login (chage -d 0)
* fix(testing): remove obsolete --skip-slow-packages optionCraig Jennings2026-01-241-0/+54
This flag was removed from archsetup but remained in test scripts.