Jelajahi Sumber

Start simplifying user

bryan 3 tahun lalu
induk
melakukan
76e1c5e908
1 mengubah file dengan 25 tambahan dan 17 penghapusan
  1. 25 17
      installJRMC

+ 25 - 17
installJRMC

@@ -22,7 +22,6 @@ shopt -s extglob
 SCRIPTVERSION="1.0b6"
 OUTPUTDIR="$PWD/output"
 CREATEREPO_WEBROOT="/var/www/jriver"
-EXEC_USER=$(whoami)
 SERVICEDIR="/usr/lib/systemd/system"
 
 # MC version
@@ -57,14 +56,16 @@ printHelp() {
 		        See SERVICES section below for a list of possible services to install
 		        --service-user USER
 		            Install systemd services and containers for user USER (Default: current user)
+		        --service-type user|system 
+		            Installs service(s) as a system or user service (Default: per-service)
 		    --container, -c CONTAINER (TODO: Under construction)
 		        See CONTAINERS section below for a list of possible services to install
 		    --createrepo
 		        Build rpm, copy to webroot, and run createrepo. Use in conjunction with --build=TARGET for crossbuilding repos
 		        --createrepo-webroot PATH
-		            The webroot directory to install the repo (Default: /var/www/jriver)
+		            Specify the webroot directory to install the repo (Default: /var/www/jriver)
 		        --createrepo-user USER
-		            The web server user (Default: current user)
+		            Specify the web server user
             --compat
                 Build/install RPM without minimum library specifiers
 		    --version, -v
@@ -74,7 +75,7 @@ printHelp() {
 		    --help, -h
 		        Print help dialog and exit
 		    --uninstall, -u
-		        Uninstall JRiver MC, cleanup service files, and remove firewall rules (does not remove library files)
+		        Uninstall JRiver MC, remove services, and remove firewall rules (does not remove library files)
 
 		SERVICES
 		    jriver-mediaserver
@@ -94,7 +95,7 @@ printHelp() {
 		            Display to start x11vnc/Xvnc (Default: The current display (x11vnc) or the
 		            current display incremented by 1 (Xvnc))
 		    jriver-createrepo
-		        Install hourly service to build latest MC RPM and run createrepo
+		        Install hourly service to build latest MC RPM and run createrepo ()
 
 		CONTAINERS (TODO: Under construction)
 		    mediacenter-xvnc
@@ -107,10 +108,14 @@ init() {
     debug "Running: ${FUNCNAME[0]}"
 
     declare version_source
-    declare -g SERVICE_USER CREATEREPO_USER MCVERSION MVERSION MCPKG
+    declare -g USER SERVICE_USER CREATEREPO_USER MCVERSION MVERSION MCPKG
 
     getOS
 
+    USER="${USER:-$(id -un)}"
+    SERVICE_USER="${SERVICE_USER:-$USER}"
+    CREATEREPO_USER="${CREATEREPO_USER:-$USER}"
+
     # Make sure universe repo is installed on Ubuntu
     if [[ "$ID" == "ubuntu" ]]; then
         if ! grep ^deb /etc/apt/sources.list|grep -q universe; then
@@ -152,9 +157,6 @@ init() {
 
     parseInput "$@"
 
-    SERVICE_USER="${SERVICE_USER:-$EXEC_USER}"
-    CREATEREPO_USER="${CREATEREPO_USER:-$EXEC_USER}"
-
     # Select MC version to work with
     if [[ -v MCVERSION ]]; then
         version_source="user input"
@@ -205,20 +207,22 @@ getOS() {
 
 
 ifSudo() {
-    declare _user="root"
+    declare user="root"
     if [[ $# == 0 ]]; then
-        [[ "$EXEC_USER" == "root" ]]; return $?
+        [[ "$USER" == "root" ]]
+        return $?
     elif [[ $# -eq 2 && "$1" == "-u" ]]; then
-        _user="$2"
-        [[ "$EXEC_USER" == "$_user" ]]; return $?
+        user="$2"
+        [[ "$USER" == "$user" ]]
+        return $?
     elif [[ $# -gt 2 && "$1" == "-u" ]]; then
-        _user="$2"
+        user="$2"
         shift 2
     fi
-    if [[ "$_user" == "$EXEC_USER" ]]; then
+    if [[ "$user" == "$USER" ]]; then
         "$@"
     else
-        sudo -u "$_user" "$@"
+        sudo -u "$user" "$@"
     fi
 }
 
@@ -498,7 +502,7 @@ addRepo() {
 			gpgcheck=0
 		EOF'
     elif [[ "$ID" =~ ^(debian|ubuntu|linuxmint)$ ]]; then
-        # MVERSION depends on $BASE unless --MCVERSION is passed
+        # MVERSION depends on $BASE unless --mcversion is passed
         installPackage wget
         wget -q "http://dist.jriver.com/mediacenter@jriver.com.gpg.key" -O- | ifSudo apt-key add - &>/dev/null
         ifSudo wget "http://dist.jriver.com/latest/mediacenter/mediacenter$MVERSION.list" -O "/etc/apt/sources.list.d/mediacenter$MVERSION.list" &>/dev/null
@@ -768,6 +772,10 @@ runCreaterepo() {
 
     installPackage createrepo_c
 
+    # if [[ "$CREATEREPO_USER" != "$USER" ]]
+
+
+
     # If the webroot does not exist, create it
     if [[ ! -d "$CREATEREPO_WEBROOT" ]]; then
         #cr_mkdir_cmd="sudo -u $CREATEREPO_USER mkdir -p $CREATEREPO_WEBROOT"