#!/usr/bin/env bash run_directory=$(dirname "$0") user=$(whoami) source "$run_directory/variables.conf" if [ -f $run_directory/.disabled ]; then echo "Installation is disabled. Exiting..." exit 0 fi # 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..." if [[ $user != 'root' ]]; then 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 sudo cp systemd-templates/conf-sync-server.timer /etc/systemd/system/conf-sync.timer else sudo cp systemd-templates/conf-sync-desktop.timer /etc/systemd/system/conf-sync.timer fi else cp systemd-templates/conf-sync.service /etc/systemd/system/ sed -i -e "s/PH_USER/$(whoami)/g" /etc/systemd/system/conf-sync.service sed -i -e "s:PH_DIRECTORY:$(pwd):g" /etc/systemd/system/conf-sync.service if $client_type == "server"; then cp systemd-templates/conf-sync-server.timer /etc/systemd/system/conf-sync.timer else cp systemd-templates/conf-sync-desktop.timer /etc/systemd/system/conf-sync.timer fi fi echo "Reloading Systemd..." if [[ $user != 'root' ]]; then sudo systemctl daemon-reload else systemctl daemon-reload fi echo "Enabling timer (not starting it, either do it manually or reboot)..." if [[ $user != 'root' ]]; then sudo systemctl enable conf-sync.timer else systemctl enable conf-sync.timer fi 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