Selaa lähdekoodia

Run as root - disable "sudo" (#148)

* Run as root

If user is root you dont neet a "sudo". And sometimes sudo is not installed.

* Update install.sh - update HOMEDIR

* Update install.sh Error in path /

* Update install.sh HOME dir! + user del
Radim Kabeláč 1 vuosi sitten
vanhempi
commit
2458e5dc74
1 muutettua tiedostoa jossa 22 lisäystä ja 12 poistoa
  1. 22 12
      installer/install.sh

+ 22 - 12
installer/install.sh

@@ -19,14 +19,24 @@ if [[ $agree != "y" ]]; then
   exit 1
 fi
 
+HOMEDIR=$( getent passwd "$USER" | cut -d: -f6 )
+
+if [ $USER = root ] ; then
+  echo "You are root";
+  sudo=""
+else
+  sudo="sudo "
+fi
+
+
 # Create the required folder structure to hold the installation
 cd ~/ || exit
 mkdir arozos
 cd arozos || exit
 
 # Run apt-updates
-sudo apt-get update
-sudo apt-get install ffmpeg net-tools -y
+${sudo}apt-get update
+${sudo}apt-get install ffmpeg net-tools -y
 
 # Determine the CPU architecture of the host
 if [[ $(uname -m) == "x86_64" ]]; then
@@ -108,11 +118,11 @@ arozport=${arozport:-8080}
 if [[ -f "./launcher" ]]; then
   # Create start.sh with launcher command
   echo "#!/bin/bash" > start.sh
-  echo "sudo ./launcher -port=$arozport -hostname=\"$arozosname\"" >> start.sh
+  echo "${sudo}./launcher -port=$arozport -hostname=\"$arozosname\"" >> start.sh
 else
   # Create start.sh with arozos command
   echo "#!/bin/bash" > start.sh
-  echo "sudo arozos -port=$arozport -hostname=\"$arozosname\"" >> start.sh
+  echo "${sudo}arozos -port=$arozport -hostname=\"$arozosname\"" >> start.sh
 fi
 
 # Make start.sh executable
@@ -130,8 +140,8 @@ if [[ $(uname) == "Linux" ]]; then
         # Get current user
         CURRENT_USER=$(whoami)
 		
-		sudo touch /etc/systemd/system/arozos.service
-		sudo chmod 777 /etc/systemd/system/arozos.service
+		${sudo}touch /etc/systemd/system/arozos.service
+		${sudo}chmod 777 /etc/systemd/system/arozos.service
         # Create systemd service file
         cat <<EOF > /etc/systemd/system/arozos.service
 [Unit]
@@ -142,8 +152,8 @@ Wants=systemd-networkd-wait-online.service
 [Service]
 Type=simple
 ExecStartPre=/bin/sleep 10
-WorkingDirectory=/home/${CURRENT_USER}/arozos/
-ExecStart=/bin/bash /home/${CURRENT_USER}/arozos/start.sh
+WorkingDirectory=${HOMEDIR}/arozos/
+ExecStart=/bin/bash ${HOMEDIR}/arozos/start.sh
 
 Restart=always
 RestartSec=10
@@ -151,12 +161,12 @@ RestartSec=10
 [Install]
 WantedBy=multi-user.target
 EOF
-		sudo chmod 644 /etc/systemd/system/arozos.service
+		${sudo}chmod 644 /etc/systemd/system/arozos.service
 		
         # Reload systemd daemon and enable service
-        sudo systemctl daemon-reload
-        sudo systemctl enable arozos.service
-		sudo systemctl start arozos.service
+        ${sudo}systemctl daemon-reload
+        ${sudo}systemctl enable arozos.service
+		${sudo}systemctl start arozos.service
         echo "ArozOS installation completed!"
 		ip_address=$(hostname -I | awk '{print $1}')
 		echo "Please continue the system setup at http://$ip_address:$arozport/"