. lib/apt_digested.sh
+. lib/constants_setup.sh  # PATH_REL_DIR_APTMARK
 . lib/prefixed_msg.sh
 
 ensure_packages_of_tags() {
         prefixed_msg_no_nl "For tag '${TAG}', "
         local TEST
         TEST=$(echo "${TAG}" | cut -d':' -f1)
+       # TODO get rid of this one
         if [ "${TEST}" = 'keep_if_installed' ]; then
             local PACKAGE
             PACKAGE=$(echo "${TAG}" | cut -d':' -f2)
             fi
             continue
         fi
-        local PATH_APTMARK_TAG="../aptmark/${TAG}"
+        local PATH_APTMARK_TAG="${PATH_REL_DIR_APTMARK}/${TAG}"
         if [ ! -f "${PATH_APTMARK_TAG}" ]; then
             echo 'no file, ignoring.'
             continue
 
 #!/bin/sh
 set -e
-cd $(dirname "$0")
+ROOT=$(dirname "$0")
+cd "${ROOT}"
 . lib/apt_digested.sh
 . lib/constants_etc.sh  # PATH_ETC
+. lib/constants_setup.sh  # PATH_REL_DIR_APTMARK
 . lib/constants_ssh.sh  # PATH_REL_SSH, PATH_USER_SSH
 . lib/constants_user.sh  # USERNAME
 . lib/copy_dirtrees_of_tags.sh
 prefixed_msg_init
 prefixed_msg 'starting (setting up basics of standard server)'
 
-INSTALL_TAGS='all server user keep_if_installed:systemd-resolved'
-
-expect_n_args 2 3 'CADDY_PASSWORD, HOSTNAME, [FQDN]' $@
-CADDY_PASSWORD="$1"
-HOSTNAME="$2"
-FQDN="$3"
-
+INSTALL_TAGS='all server user'
 PATH_BORG_HOME=/home/borg
 PATH_CADDYFILE="${PATH_ETC}/caddy/Caddyfile"
 PATH_DUMP='/var/www/dump'
 
+expect_n_args 3 4 'HOSTING_SERVICE CADDY_PASSWORD HOSTNAME [FQDN]' "$@"
+HOSTING_APTMARK_TAG="hosting_$1"
+CADDY_PASSWORD="$2"
+HOSTNAME="$3"
+FQDN="$4"
+if [ -f "${PATH_REL_DIR_APTMARK}/${HOSTING_APTMARK_TAG}" ]; then
+    INSTALL_TAGS="${INSTALL_TAGS} ${HOSTING_SERVICE}"
+else
+    abort 'Unrecognized hosting service.'
+fi
+
 prefixed_msg_no_nl 'Determining external IP …'
 for _CANDIDATE in $(hostname -I); do
-    _START=$(echo ${_CANDIDATE} | cut -d'.' -f1)
-    if [ "$(echo -n ${_START} | wc -c)" -gt 3 ]; then  # ignore IPv6
+    _START=$(echo "${_CANDIDATE}" | cut -d'.' -f1)
+    _N_START_CHARS=$(echo -n "${_START}" | wc -c)
+    if [ "${_N_START_CHARS}" -gt 3 ]; then  # ignore IPv6
         continue
     fi 
-    if [ "${_START}" = "127" -o "${_START}" = "192" -o "${_START}" = "172" ]; then
+    if [ "${_START}" = "127" ] || [ "${_START}" = "192" ] || [ "${_START}" = "172" ]; then
         continue
     fi
     EXTERNAL_IP="${_CANDIDATE}"
 done
 echo " it's: ${EXTERNAL_IP}"
 
-if [ ! -z "${FQDN}" ]; then
+if [ -n "${FQDN}" ]; then
     prefixed_msg "Ensuring provided FQDN ${FQDN} maps to it …"
     IP_BY_DNS=$(getent ahostsv4 "${FQDN}" | head -1 | cut -d' ' -f1)
     if [ ! "${IP_BY_DNS}" = "${EXTERNAL_IP}" ]; then