From 2ee270d04585648bbfce46b38b4725fd341aaa56 Mon Sep 17 00:00:00 2001
From: wyrie <wyrie@ispconfig3>
Date: Mon, 7 Dec 2009 14:53:08 +0000
Subject: [PATCH] Install: Bug fixes for gentoo set-up script: - Fix handling
 of default syslog - MySQL install_db and rc script only added/run if script
 emerged the server

---
 helper_scripts/gentoo_setup.sh | 33 +++++++++++++++++++++++++++------
 1 file changed, 27 insertions(+), 6 deletions(-)

diff --git a/helper_scripts/gentoo_setup.sh b/helper_scripts/gentoo_setup.sh
index 0138b3390f..f50689ebca 100644
--- a/helper_scripts/gentoo_setup.sh
+++ b/helper_scripts/gentoo_setup.sh
@@ -44,12 +44,21 @@ function package_has_use_flag()
         [ -n "$res" ]
 }
 
+function package_is_emerged()
+{
+		local package=$1
+		
+		installed=`equery -C -N list -e -i $1 | grep $1 | grep "^\[I"`
+		[ -n "$installed" ]
+}
+
 function is_package_installed()
 {
         local usechange="no"
         local uselist=""
 
-        installed=`equery -C -N list -e -i $1 | grep $1 | grep "^\[I"`
+        package_is_emerged "$1"
+		installed=$?
 
         if [ -n "$2" ] # Use flags parsed
         then
@@ -64,7 +73,7 @@ function is_package_installed()
                 flagedit $1 $uselist
         fi
 
-        [ -n "$installed" ] && [ "$usechange" == "no" ]
+        [ $installed -eq 0 ] && [ "$usechange" == "no" ]
 }
 
 function install_progress()
@@ -468,7 +477,7 @@ then
 
 	for logger in $loggers
 	do
-		if ! is_package_installed "app-admin/$logger" && [ -n "$(rc-config list default | grep $logger)" ]
+		if is_package_installed "app-admin/$logger" && [ -n "$(rc-config list default | grep $logger)" ]
 		then
 			clogger=$logger
 			break
@@ -512,10 +521,17 @@ fi
 
 if ! is_package_installed "dev-db/mysql" "extraengine big-tables"
 then
+	package_is_emerged "$1"
+	installed=$?
+	
 	exec_command "emerge dev-db/mysql" "Installing MySql"
-	exec_command "mysql_install_db"	"Set-up mysql grant tables"
-	exec_command "/etc/init.d/mysql start" "Starting MySql"
-	exec_command "rc-update add mysql default" "Add MySql to default runlevel"
+	
+	if [ $installed -eq 1 ]
+	then
+		exec_command "mysql_install_db"	"Set-up mysql grant tables"
+		exec_command "/etc/init.d/mysql start" "Starting MySql"
+		exec_command "rc-update add mysql default" "Add MySql to default runlevel"
+	fi
 fi
 
 which vim &> /dev/null
@@ -588,6 +604,11 @@ else
 	fi
 fi
 
+if [ "$install_web" = "no" ] && ! is_package_installed "dev-lang/php" "-apache2 gd mysql mysqli imap cli cgi pcre xml zlib crypt ctype session unicode mhash ftp"
+then
+	exec_command "emerge dev-lang/php" "Installing PHP"
+fi
+
 echo -e ""
 echo -e "\e[1;33mSetup script completed\e[0m"
 echo -e "\e[1;32m========================================\e[0m"
-- 
GitLab