Add install script and Systemd units

This commit is contained in:
Alexandre CATTEAU 2022-03-12 18:15:04 +01:00
parent bb6c735355
commit 1b7aa49227
4 changed files with 50 additions and 0 deletions

23
install.sh Executable file
View File

@ -0,0 +1,23 @@
#!/bin/bash
source "$(dirname "$0")/variables.conf"
# TODO handle non-Systemd systems
echo "Copying Systemd units to system directory..."
sudo cp 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 # TODO not finished
sudo cp systemd-templates/dns-update.timer /etc/systemd/system/conf-sync.timer
else
sudo cp systemd-templates/dns-update.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
echo "Finished install. Exiting..."
exit 0

View File

@ -0,0 +1,9 @@
[Unit]
Description=Run conf-sync after boot (for desktops)
[Timer]
Unit=conf-sync.service
OnBootSec=5min
[Install]
WantedBy=timers.target

View File

@ -0,0 +1,10 @@
[Unit]
Description=Run conf-sync daily (for servers)
[Timer]
Unit=conf-sync.service
OnCalendar=*-*-* 06:00:00
Persistent=true
[Install]
WantedBy=timers.target

View File

@ -0,0 +1,8 @@
[Unit]
Description=Configuration files synchronisation
After=network.target
[Service]
Type=oneshot
User=PH_USER
ExecStart=PH_DIRECTORY/conf-sync.sh