conf-sync/install.sh

33 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
source "$(dirname "$0")/variables.conf"
# NOTE: the handling of init/service manager comes from this discussion:
# https://unix.stackexchange.com/questions/18209/detect-init-system-using-the-shell
if [ -e /run/systemd/system ]; then # service manager is Systemd
echo "Copying Systemd units to system directory..."
sudo cp $(dirname "$0")/systemd-templates/conf-sync.service /etc/systemd/system/
sudo sed -i -e "s/PH_USER/$(whoami)/g" /etc/systemd/system/conf-sync.service
sudo sed -i -e "s:PH_DIRECTORY:$(pwd):g" /etc/systemd/system/conf-sync.service
if [ "$client_type" = "server" ]; then
sudo cp $(dirname "$0")/systemd-templates/conf-sync-server.timer /etc/systemd/system/conf-sync.timer
else
sudo cp $(dirname "$0")/systemd-templates/conf-sync-desktop.timer /etc/systemd/system/conf-sync.timer
fi
echo "Reloading Systemd..."
sudo systemctl daemon-reload
echo "Enabling timer (not starting it, either do it manually or reboot)..."
sudo systemctl enable conf-sync.timer
elif [ "$(uname)" = "OpenBSD" ]; then
echo "ERROR: OpenBSD is not yet supported, but this is planned."
exit 0
else
echo "ERROR: could not determine a supported system. Exiting."
exit 1
fi
echo "Finished install. Exiting..."
exit 0