diff --git a/guac-install.sh b/guac-install.sh index 38a8abd..27e4e35 100644 --- a/guac-install.sh +++ b/guac-install.sh @@ -4,6 +4,21 @@ VERSION="0.9.13" MCJVERSION="5.1.43" +# Update apt so we can search apt-cache for newest tomcat version supported +apt-get update + +# tomcat8 is newest, tomcat7 and tomcat6 should work too +if [ $(apt-cache search "^tomcat8$" | wc -l) -gt 0 ]; then + TOMCAT="tomcat8" +elif [ $(apt-cache search "^tomcat7$" | wc -l) -gt 0 ]; then + TOMCAT="tomcat7" +else + TOMCAT="tomcat6" +fi + +# If you want to force a specific tomcat install and not go with the newest just set it here and uncomment: +#TOMCAT="" + # Grab a password for MySQL Root read -s -p "Enter the password that will be used for MySQL Root: " mysqlrootpassword debconf-set-selections <<< "mysql-server mysql-server/root_password password $mysqlrootpassword" @@ -24,24 +39,22 @@ fi if [ $(getconf LONG_BIT | grep 64) ]; then ARCH="x86_64"; else ARCH="i386"; fi # Install Features -apt-get update -apt-get -y install build-essential libcairo2-dev $JPEGTURBO libpng12-dev libossp-uuid-dev libavcodec-dev libavutil-dev \ +apt-get -y install build-essential libcairo2-dev ${JPEGTURBO} libpng12-dev libossp-uuid-dev libavcodec-dev libavutil-dev \ libswscale-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libpulse-dev libssl-dev \ -libvorbis-dev libwebp-dev mysql-server mysql-client mysql-common mysql-utilities tomcat8 freerdp ghostscript jq wget curl +libvorbis-dev libwebp-dev mysql-server mysql-client mysql-common mysql-utilities ${TOMCAT} freerdp ghostscript jq wget curl # If Apt-Get fails to run completely the rest of this isn't going to work... -if [ $? != 0 ] -then +if [ $? != 0 ]; then echo "apt-get failed to install all required dependencies" exit fi SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') -# Add GUACAMOLE_HOME to Tomcat8 ENV -echo "" >> /etc/default/tomcat8 -echo "# GUACAMOLE EVN VARIABLE" >> /etc/default/tomcat8 -echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat8 +# Add GUACAMOLE_HOME to $TOMCAT ENV +echo "" >> /etc/default/${TOMCAT} +echo "# GUACAMOLE EVN VARIABLE" >> /etc/default/${TOMCAT} +echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/${TOMCAT} # Download Guacample Files wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz @@ -70,7 +83,7 @@ cd .. # Move files to correct locations mv guacamole-${VERSION}-incubating.war /etc/guacamole/guacamole.war -ln -s /etc/guacamole/guacamole.war /var/lib/tomcat8/webapps/ +ln -s /etc/guacamole/guacamole.war /var/lib/${TOMCAT}/webapps/ ln -s /usr/local/lib/freerdp/* /usr/lib/$ARCH-linux-gnu/freerdp/. cp mysql-connector-java-${MCJVERSION}/mysql-connector-java-${MCJVERSION}-bin.jar /etc/guacamole/lib/ cp guacamole-auth-jdbc-${VERSION}-incubating/mysql/guacamole-auth-jdbc-mysql-${VERSION}-incubating.jar /etc/guacamole/extensions/ @@ -81,11 +94,11 @@ echo "mysql-port: 3306" >> /etc/guacamole/guacamole.properties echo "mysql-database: guacamole_db" >> /etc/guacamole/guacamole.properties echo "mysql-username: guacamole_user" >> /etc/guacamole/guacamole.properties echo "mysql-password: $guacdbuserpassword" >> /etc/guacamole/guacamole.properties -rm -rf /usr/share/tomcat8/.guacamole -ln -s /etc/guacamole /usr/share/tomcat8/.guacamole +rm -rf /usr/share/${TOMCAT}/.guacamole +ln -s /etc/guacamole /usr/share/${TOMCAT}/.guacamole # restart tomcat -service tomcat8 restart +service ${TOMCAT} restart # Create guacamole_db and grant guacamole_user permissions to it diff --git a/guac-upgrade.sh b/guac-upgrade.sh index 2e56537..4dee0e4 100644 --- a/guac-upgrade.sh +++ b/guac-upgrade.sh @@ -4,10 +4,13 @@ VERSION="0.9.13" MCJVERSION="5.1.43" +# I'm assuming tomcat8, you can change it here... +TOMCAT="tomcat8" + SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') # Stop Tomcat -service tomcat8 stop +service ${TOMCAT} stop # Download and install Guacamole Server wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz @@ -42,7 +45,7 @@ then fi # Start Tomcat -service tomcat8 start +service ${TOMCAT} start # Cleanup rm -rf guacamole*