From: Christian Heller Date: Thu, 10 Apr 2025 05:57:49 +0000 (+0200) Subject: Add catgirl setup. X-Git-Url: https://plomlompom.com/repos/%22https:/validator.w3.org/static/process?a=commitdiff_plain;h=068c392d15141fb95bdf0b398146a187fd42920f;p=config Add catgirl setup. --- diff --git a/bookworm/aptmark/catgirl b/bookworm/aptmark/catgirl new file mode 100644 index 0000000..ddab378 --- /dev/null +++ b/bookworm/aptmark/catgirl @@ -0,0 +1,4 @@ +# IRC +tmux +catgirl +# diff --git a/bookworm/aptmark/server b/bookworm/aptmark/server index ca3474f..cefa289 100644 --- a/bookworm/aptmark/server +++ b/bookworm/aptmark/server @@ -6,7 +6,4 @@ nftables borgbackup # for playing nicely with ssh sessions via the foot terminal foot-terminfo -# IRC -tmux -catgirl # diff --git a/bookworm/etc/catgirl/systemd/system/catgirl.service b/bookworm/etc/catgirl/systemd/system/catgirl.service new file mode 100644 index 0000000..38d9fd1 --- /dev/null +++ b/bookworm/etc/catgirl/systemd/system/catgirl.service @@ -0,0 +1,15 @@ +[Unit] +Description=catgirl in tmux Session +After=network.target + +[Service] +Type=forking +User=plom +ExecStart=/usr/bin/tmux new-session -d -s catgirl_tmux /usr/bin/catgirl libera +ExecStop=/usr/bin/tmux kill-session -t catgirl_tmux +Restart=always +RestartSec=10 + +[Install] +WantedBy=multi-user.target + diff --git a/bookworm/home/catgirl/.config/catgirl/libera b/bookworm/home/catgirl/.config/catgirl/libera new file mode 100644 index 0000000..5d04ff2 --- /dev/null +++ b/bookworm/home/catgirl/.config/catgirl/libera @@ -0,0 +1,3 @@ +host = irc.libera.chat +join = #plomtest +sasl-plain = plomlompom:REPLACE_WITH_SASL_PASSWORD diff --git a/bookworm/preseed.cfg b/bookworm/preseed.cfg index 7553d7c..06d5766 100644 --- a/bookworm/preseed.cfg +++ b/bookworm/preseed.cfg @@ -32,7 +32,7 @@ d-i partman-auto-crypto/erase_disks boolean false d-i base-installer/kernel/image string linux-image-amd64 d-i base-installer/initramfs-tools/driver-policy most -d-i base-installer/install-recommends boolean false +#d-i base-installer/install-recommends boolean false #d-i pkgsel/run_tasksel boolean false diff --git a/bookworm/scripts/setup_catgirl.sh b/bookworm/scripts/setup_catgirl.sh new file mode 100755 index 0000000..4900947 --- /dev/null +++ b/bookworm/scripts/setup_catgirl.sh @@ -0,0 +1,60 @@ +#!/bin/sh +set -e +cd $(dirname "$0") +. lib/constants_repopaths # PATH_CONF +. lib/constants_ssh # PATH_REL_SSH, PATH_USER_SSH +. lib/constants_user # PATH_USER_HOME, USERNAME +. lib/copy_dirtree +. lib/determine_ip +. lib/expect_n_args +. lib/init_packages +. lib/setup_users + +MIN_TAGS='all server catgirl' + +expect_n_args 3 3 'HOSTNAME, FQDN, SASL_PASSWORD' $@ +HOSTNAME="$1" +FQDN="$2" +SASL_PASSWORD="$2" + +PATH_REL_ETC=etc +PATH_CONF_ETC="${PATH_CONF}/${PATH_REL_ETC}" +PATH_ETC="/${PATH_REL_ETC}" +PATH_HOSTS="${PATH_ETC}/hosts" +PATH_BORG_HOME=/home/borg + +init_packages "${MIN_TAGS}" + +echo '\nSetting hostname and FQDN.' +echo "${HOSTNAME}" > "${PATH_ETC}/hostname" +hostname "${HOSTNAME}" +echo '127.0.0.1 localhost.localdomain localhost' > "${PATH_HOSTS}" +echo "$(determine_ip) ${FQDN} ${HOSTNAME}" >> "${PATH_HOSTS}" + +echo '\nAdapting /etc to our needs.' +copy_dirtree "${PATH_CONF_ETC}" "${PATH_ETC}"${MIN_TAGS} + +echo '\nSetting Berlin localtime.' +ln -sf /usr/share/zoneinfo/Europe/Berlin "${PATH_ETC}/localtime" +ntpdate-debian + +setup_users "${MIN_TAGS}" '' + +echo '\nMoving SSH data from root to user.' +mkdir -p "${PATH_USER_SSH}" +mv "/root/${PATH_REL_SSH}/authorized_keys" "${PATH_USER_SSH}/" +chown -R "${USERNAME}:${USERNAME}" "${PATH_USER_SSH}" + +echo '\nSetting up minimal borg user.' +adduser --system --home "${PATH_BORG_HOME}" --shell /bin/sh borg +cp -a "${PATH_USER_SSH}" "${PATH_BORG_HOME}/" +chown -R borg:nogroup "${PATH_BORG_HOME}/${PATH_REL_SSH}" + +echo '\nEnabling the firewall.' +systemctl enable nftables.service +systemctl start nftables.service + +echo '\nSet up catgirl.' +sed -i "s/REPLACE_WITH_SASL_PASSWORD/${SASL_PASSWORD}/g" "${PATH_USER_HOME}/.config/catgirl/libera" +systemctl enable catgirl.service +systemctl start catgirl.service diff --git a/bookworm/scripts/setup_server.sh b/bookworm/scripts/setup_server.sh deleted file mode 100755 index 1c79edd..0000000 --- a/bookworm/scripts/setup_server.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh -set -e -cd $(dirname "$0") -. lib/constants_repopaths # PATH_CONF -. lib/constants_ssh # PATH_REL_SSH, PATH_USER_SSH -. lib/constants_user # USERNAME -. lib/copy_dirtree -. lib/determine_ip -. lib/expect_n_args -. lib/init_packages -. lib/setup_users - -MIN_TAGS='all server' - -expect_n_args 2 2 'HOSTNAME, FQDN' $@ -HOSTNAME="$1" -FQDN="$2" - -PATH_REL_ETC=etc -PATH_CONF_ETC="${PATH_CONF}/${PATH_REL_ETC}" -PATH_ETC="/${PATH_REL_ETC}" -PATH_HOSTS="${PATH_ETC}/hosts" -PATH_BORG_HOME=/home/borg - -init_packages "${MIN_TAGS}" - -echo '\nSetting hostname and FQDN.' -echo "${HOSTNAME}" > "${PATH_ETC}/hostname" -hostname "${HOSTNAME}" -echo '127.0.0.1 localhost.localdomain localhost' > "${PATH_HOSTS}" -echo "$(determine_ip) ${FQDN} ${HOSTNAME}" >> "${PATH_HOSTS}" - -echo '\nAdapting /etc to our needs.' -copy_dirtree "${PATH_CONF_ETC}" "${PATH_ETC}"${MIN_TAGS} - -echo '\nSetting Berlin localtime.' -ln -sf /usr/share/zoneinfo/Europe/Berlin "${PATH_ETC}/localtime" -ntpdate-debian - -setup_users "${MIN_TAGS}" '' - -echo '\nMoving SSH data from root to user.' -mkdir -p "${PATH_USER_SSH}" -mv "/root/${PATH_REL_SSH}/authorized_keys" "${PATH_USER_SSH}/" -chown -R "${USERNAME}:${USERNAME}" "${PATH_USER_SSH}" - -echo '\nSetting up minimal borg user.' -adduser --system --home "${PATH_BORG_HOME}" --shell /bin/sh borg -cp -a "${PATH_USER_SSH}" "${PATH_BORG_HOME}/" -chown -R borg:nogroup "${PATH_BORG_HOME}/${PATH_REL_SSH}" - -echo '\nEnabling the firewall.' -systemctl enable nftables.service