2022-04-14 13:35:10 +00:00
|
|
|
#!/bin/sh -eu
|
|
|
|
# vim: ts=4 et:
|
|
|
|
|
|
|
|
[ -z "$DEBUG" ] || [ "$DEBUG" = 0 ] || set -x
|
|
|
|
|
|
|
|
SETUP=/tmp/setup.d
|
|
|
|
TARGET=/mnt
|
|
|
|
|
|
|
|
# Enable testing repo - do we really want versions to change randomly ?
|
|
|
|
# echo "@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> "$TARGET/etc/apk/repositories"
|
|
|
|
|
|
|
|
# Fix dhcp to set MTU properly
|
|
|
|
install -o root -g root -Dm644 -t $TARGET/etc/dhcp $SETUP/dhclient.conf
|
|
|
|
echo 'Setup dhclient'
|
|
|
|
|
|
|
|
# Enable SSH keepalive
|
|
|
|
sed -i -e "s/^[\s#]*TCPKeepAlive\s.*/TCPKeepAlive yes/" -e "s/^[\s#]*ClientAliveInterval\s.*/ClientAliveInterval 60/" $TARGET/etc/ssh/sshd_config
|
|
|
|
echo 'Enabled SSH keep alives'
|
|
|
|
|
|
|
|
# CgroupsV2
|
|
|
|
sed -i -e "s/^[\s#]*rc_cgroup_mode=.*/rc_cgroup_mode=\"unified\"/" $TARGET/etc/rc.conf
|
|
|
|
|
|
|
|
# Setup syslog-ng json logging
|
|
|
|
cp $SETUP/syslog-ng.conf $TARGET/etc/syslog-ng/syslog-ng.conf
|
|
|
|
cp $SETUP/syslog-ng.logrotate.conf $TARGET/etc/logrotate.d/syslog-ng
|
2022-05-23 14:12:09 +00:00
|
|
|
echo 'syslog set to json logging'
|
|
|
|
|
|
|
|
# Change logrotate to run hourly rather than daily
|
|
|
|
mv $TARGET/etc/periodic/daily/logrotate $TARGET/etc/periodic/hourly/
|
|
|
|
echo 'Switch logrotate to run hourly rather than daily'
|
2022-04-14 13:35:10 +00:00
|
|
|
|
|
|
|
# Install cloudbender shutdown hook
|
|
|
|
cp $SETUP/cloudbender.stop $TARGET/etc/local.d
|
|
|
|
mkdir -p $TARGET/etc/cloudbender/shutdown.d
|
2022-05-23 14:12:09 +00:00
|
|
|
echo 'Installed cloudbender shutdown hook'
|
2022-04-14 13:35:10 +00:00
|
|
|
|
|
|
|
# Install tools
|
|
|
|
cp $SETUP/route53.py $TARGET/usr/local/bin
|
2022-05-23 14:12:09 +00:00
|
|
|
echo 'Installed route53.py'
|
2022-04-14 13:35:10 +00:00
|
|
|
|
2022-06-20 15:55:58 +00:00
|
|
|
# use patched tiny-cloud until PR is merged
|
|
|
|
cp $SETUP/tiny.init-final $TARGET/lib/tiny-cloud/init-final
|
|
|
|
|
2022-05-04 11:50:23 +00:00
|
|
|
# ps_mem
|
|
|
|
#wget https://raw.githubusercontent.com/pixelb/ps_mem/master/ps_mem.py
|
|
|
|
#sed -i -e 's,#!/usr/bin/env python,#!/usr/bin/env python3,' ps_mem.py
|
|
|
|
#chmod +x ps_mem.py
|
|
|
|
cp $SETUP/ps_mem.py $TARGET/usr/local/bin/ps_mem
|
|
|
|
echo 'Installed ps_mem'
|
2022-04-14 13:35:10 +00:00
|
|
|
|
2022-05-03 16:39:12 +00:00
|
|
|
# QoL
|
|
|
|
mv $TARGET/etc/profile.d/color_prompt.sh.disabled $TARGET/etc/profile.d/color_prompt.sh
|
|
|
|
echo 'alias rs="doas bash --login"' > $TARGET/etc/profile.d/alias.sh
|
|
|
|
|
2022-04-14 13:35:10 +00:00
|
|
|
printf '\n# Zero Down Time config applied'
|