From 22eb81ebf50319515b72c950e3d86b84f0f8d926 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Mon, 10 Aug 2026 02:23:30 -0700 Subject: [PATCH] Correct two misleading messages from the setup-form split MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The build's missing-form error only ever described the published-package case, so a --local-source build against a checkout without the form told you to publish a runtime or pass --local-source — advice you had already taken. Branch on /omarchy-source and name the checkout instead. The password comment has claimed yescrypt since 880d8c5 swapped the command to `openssl passwd -6`, which is SHA-512 crypt. openssl passwd cannot produce yescrypt at all, so the comment, not the command, is what was wrong. Both spotted by Copilot's review on #104. Co-Authored-By: Claude Opus 5 (1M context) --- builder/build-iso.sh | 11 ++++++++--- configs/airootfs/root/configurator | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/builder/build-iso.sh b/builder/build-iso.sh index 6f94ff4..6f919d0 100755 --- a/builder/build-iso.sh +++ b/builder/build-iso.sh @@ -172,11 +172,16 @@ cp "${base_pkg_lists[1]}" "$build_cache_dir/airootfs/usr/share/omarchy-iso/omarc # disagree. A runtime predating the split ships no such file, which would leave # the configurator with no prompts at all. if [[ ! -f $setup_form ]]; then - echo "ERROR: $OMARCHY_RUNTIME_PACKAGE does not ship install/provisioning/setup-form.sh" >&2 + if [[ -d /omarchy-source ]]; then + echo "ERROR: the --local-source checkout ships no install/provisioning/setup-form.sh" >&2 + remedy="Update the checkout to a revision carrying the shared setup form." + else + echo "ERROR: $OMARCHY_RUNTIME_PACKAGE does not ship install/provisioning/setup-form.sh" >&2 + remedy="Publish a runtime carrying the shared setup form, or build with --local-source against a checkout that has it." + fi echo " The configurator sources its prompts from that file, so this ISO" >&2 echo " would boot into an installer with no questions to ask." >&2 - echo " Publish a runtime carrying the shared setup form, or build with" >&2 - echo " --local-source against a checkout that has it." >&2 + echo " $remedy" >&2 exit 1 fi cp "$setup_form" "$build_cache_dir/airootfs/usr/share/omarchy-iso/setup-form.sh" diff --git a/configs/airootfs/root/configurator b/configs/airootfs/root/configurator index ec94f53..112a0dd 100644 --- a/configs/airootfs/root/configurator +++ b/configs/airootfs/root/configurator @@ -252,7 +252,7 @@ user_form() { omarchy_prompt_username || return $? omarchy_prompt_password || return $? - # Hash the password using yescrypt + # Hash the password with SHA-512 crypt ($6$), which is what openssl passwd offers password_hash=$(printf '%s' "$password" | openssl passwd -6 -stdin) omarchy_prompt_identity || return $?