From ec76702b93118cac4d3b423df4503bade68ceb7a Mon Sep 17 00:00:00 2001 From: Alexandre CATTEAU Date: Sun, 28 Aug 2022 12:49:38 +0200 Subject: [PATCH] Update install script with new good practices (sudo and run_directory) --- install.sh | 41 ++++++++++++++--------------------------- 1 file changed, 14 insertions(+), 27 deletions(-) diff --git a/install.sh b/install.sh index c2236ef..8ac3a6f 100755 --- a/install.sh +++ b/install.sh @@ -10,42 +10,29 @@ if [ -f $run_directory/.disabled ]; then exit 0 fi +if [[ $user != 'root' ]]; then + sudo="sudo" +else + sudo="" +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 + $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:$run_directory: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 - 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 + $sudo cp systemd-templates/conf-sync-desktop.timer /etc/systemd/system/conf-sync.timer fi echo "Reloading Systemd..." - if [[ $user != 'root' ]]; then - sudo systemctl daemon-reload - else - systemctl daemon-reload - fi + $sudo systemctl daemon-reload 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 + $sudo systemctl enable conf-sync.timer elif [ "$(uname)" = "OpenBSD" ]; then echo "ERROR: OpenBSD is not yet supported, but this is planned." exit 0