home · contact · privacy
Improve server setup.
authorChristian Heller <c.heller@plomlompom.de>
Tue, 29 Aug 2023 21:26:38 +0000 (23:26 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Tue, 29 Aug 2023 21:26:38 +0000 (23:26 +0200)
bookworm/setup_scripts/_setup.sh [new file with mode: 0755]
bookworm/setup_scripts/setup.sh [deleted file]
bookworm/setup_scripts/setup_desktop.sh
bookworm/setup_scripts/setup_server.sh
bookworm/setup_scripts/setup_web.sh

diff --git a/bookworm/setup_scripts/_setup.sh b/bookworm/setup_scripts/_setup.sh
new file mode 100755 (executable)
index 0000000..0c28d60
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/sh
+set -e
+. ./misc.sh
+
+expect_n_args 2 "(hostname, FQDN)" "$@"
+hostname="$1"
+fqdn="$2"
+shift 2
+
+cd "${setup_scripts_dir}"
+
+# Adapt /etc/ to our needs by copying from ./etc_files. This will set
+# basic configurations affecting following steps, such as setup of APT
+# and the locale selection, so needs to be right at the beginning.
+./copy_dirtree.sh "${config_tree_prefix}/etc_files" "" all "$@"
+
+# Set hostname and FQDN.
+./set_hostname_and_fqdn.sh "${hostname}" "${fqdn}"
+
+# Ensure package installation state as defined by what packages are
+# defined as required by Debian policy and by settings in ./apt-mark/.
+apt update
+./install_for_target.sh all "$@"
+./purge_nonrequireds.sh all "$@"
+
+# Ensure our desired locale is available.
+locale-gen
+
+# Only upgrade after reducing the system to the desired minimum, so that
+# we don't need to get more data than necessary.
+apt -y dist-upgrade
+
+# Set Berlin localtime.
+ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
diff --git a/bookworm/setup_scripts/setup.sh b/bookworm/setup_scripts/setup.sh
deleted file mode 100755 (executable)
index 0c28d60..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-set -e
-. ./misc.sh
-
-expect_n_args 2 "(hostname, FQDN)" "$@"
-hostname="$1"
-fqdn="$2"
-shift 2
-
-cd "${setup_scripts_dir}"
-
-# Adapt /etc/ to our needs by copying from ./etc_files. This will set
-# basic configurations affecting following steps, such as setup of APT
-# and the locale selection, so needs to be right at the beginning.
-./copy_dirtree.sh "${config_tree_prefix}/etc_files" "" all "$@"
-
-# Set hostname and FQDN.
-./set_hostname_and_fqdn.sh "${hostname}" "${fqdn}"
-
-# Ensure package installation state as defined by what packages are
-# defined as required by Debian policy and by settings in ./apt-mark/.
-apt update
-./install_for_target.sh all "$@"
-./purge_nonrequireds.sh all "$@"
-
-# Ensure our desired locale is available.
-locale-gen
-
-# Only upgrade after reducing the system to the desired minimum, so that
-# we don't need to get more data than necessary.
-apt -y dist-upgrade
-
-# Set Berlin localtime.
-ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
index 9df55121195d2410b48e3248144fb740043bbb8e..637dfc242717cb9c8c2cec741504b575a3412258 100755 (executable)
@@ -7,7 +7,7 @@ get_system_name_arg "$1"
 
 # Set up system without user environment.
 cd "${setup_scripts_dir}"
-./setup.sh "${system_name}" "" user desktop thinkpad "${system_name}"
+./_setup.sh "${system_name}" "" user desktop thinkpad "${system_name}"
 
 # Set up printer.
 ppd_deb="hll2350dwpdrv-4.0.0-1.i386.deb"
index 3324962b1e121afa249213f20e56706eaf8aaba3..e77d17f18450d237cdd65dc16fbbb277291e0c90 100755 (executable)
@@ -9,9 +9,15 @@ hostname="$1"
 fqdn="$2"
 additional_arg="$3"
 
+# Set up basic server system.
+cd "${setup_scripts_dir}"
+./_setup.sh "${hostname}" "${fqdn}" server "$@"
+
 # If we have not yet set the shell for user plom, ensure it here. This
 # is mostly for convenience.
 usermod -s /bin/bash plom
 
 # Enable firewall.
 systemctl enable nftables.service
+
+touch "$HOME/setup_server_has_been_run"
index d4d3a61580a8461ed0dac0eb553189d46fd53905..4b1e93f1196628f5329be670aa2823a37953d3cc 100755 (executable)
@@ -5,6 +5,11 @@ set -e
 expect_n_args 1 "(domain name)" "$@"
 domain="$1"
 
+if [ ! -f "$HOME/setup_server_has_been_run" ]; then
+    echo "First need to run setup_server.sh."
+    false
+fi
+
 # Install configs, set up firewall.
 ./install_for_target.sh web static_websites
 ./copy_dirtree.sh "${config_tree_prefix}/etc_files" "" web static_websites