summaryrefslogtreecommitdiff
path: root/hooks
diff options
context:
space:
mode:
authorPhilip J Freeman <elektron@halo.nu>2026-04-29 01:00:36 -0700
committerPhilip J Freeman <elektron@halo.nu>2026-04-29 01:35:40 -0700
commit0d9ee702cb93b84c9ff0862eec73316c69cbbf37 (patch)
tree47906fa334200d4f4e38981561c16c06a2a6b57e /hooks
parent87b5bf1ba92019acfada9d354d49b824578c83d4 (diff)
preseed user/group id databases
Diffstat (limited to 'hooks')
-rwxr-xr-xhooks/build-os-post/10-test-preseed-ips16
-rwxr-xr-xhooks/build-os/05-preseed-ids7
-rwxr-xr-xhooks/build-os/70-system-config3
3 files changed, 23 insertions, 3 deletions
diff --git a/hooks/build-os-post/10-test-preseed-ips b/hooks/build-os-post/10-test-preseed-ips
new file mode 100755
index 0000000..8973f7d
--- /dev/null
+++ b/hooks/build-os-post/10-test-preseed-ips
@@ -0,0 +1,16 @@
+#!/bin/bash -xe
+set -o pipefail
+
+# test preseed uid / gids:
+DBS_CHANGED=0
+for f in group gshadow passwd shadow; do
+ echo "Checking $f"
+ if ! diff -Naur files/"$f" "${root:?}"/etc/"$f"; then
+ DBS_CHANGED="$(( $DBS_CHANGED + 1 ))"
+ fi
+done
+
+if [ "$DBS_CHANGED" -gt 0 ]; then
+ echo "Error: user and/or group databases changed" 1>&2
+ exit 1
+fi
diff --git a/hooks/build-os/05-preseed-ids b/hooks/build-os/05-preseed-ids
new file mode 100755
index 0000000..c472849
--- /dev/null
+++ b/hooks/build-os/05-preseed-ids
@@ -0,0 +1,7 @@
+#!/bin/bash -xe
+set -o pipefail
+
+# preseed uid / gids:
+for f in group gshadow passwd shadow; do
+ cat files/"$f" > "${root:?}"/etc/"$f"
+done
diff --git a/hooks/build-os/70-system-config b/hooks/build-os/70-system-config
index 38b6f68..ca17bd3 100755
--- a/hooks/build-os/70-system-config
+++ b/hooks/build-os/70-system-config
@@ -1,9 +1,6 @@
#!/bin/bash -xe
set -o pipefail
-## Set a root password
-echo "root:reznor" | chroot "${root:?}" chpasswd
-
## add a default regular user with systemd-homed on firstboot
mkdir -p "${root:?}"/usr/lib/credstore
cat > "${root:?}"/usr/lib/credstore/home.create.trent << EOF