mirror of
https://github.com/itiligent/Easy-Guacamole-Installer.git
synced 2025-12-14 02:12:31 +00:00
add option official MySQL repo
This commit is contained in:
parent
1838249dd2
commit
c09a96b982
2 changed files with 33 additions and 11 deletions
17
1-setup.sh
17
1-setup.sh
|
|
@ -75,6 +75,18 @@ GUAC_SOURCE_LINK="http://apache.org/dyn/closer.cgi?action=download&filename=guac
|
||||||
# MySQL Connector/J version
|
# MySQL Connector/J version
|
||||||
MYSQLJCON="8.0.33"
|
MYSQLJCON="8.0.33"
|
||||||
|
|
||||||
|
# Select a specific MySQL version. See https://mariadb.org/mariadb/all-releases/
|
||||||
|
MYSQL_VERSION="" # If left blank, script will use Linux distro default version packages.
|
||||||
|
if [ -z "${MYSQL_VERSION}" ]; then
|
||||||
|
# Use Linux distro default version.
|
||||||
|
MYSQLSRV="default-mysql-server default-mysql-client mysql-common"
|
||||||
|
MYSQLCLIENT="default-mysql-client"
|
||||||
|
else
|
||||||
|
# Use official mariadb.org repo
|
||||||
|
MYSQLSRV="mariadb-server mariadb-client mariadb-common"
|
||||||
|
MYSQLCLIENT="mariadb-client"
|
||||||
|
fi
|
||||||
|
|
||||||
# Check for the latest version of Tomcat currently supported by the Linux distro
|
# Check for the latest version of Tomcat currently supported by the Linux distro
|
||||||
if [[ $(apt-cache show tomcat10 2>/dev/null | egrep "Version: 10" | wc -l) -gt 0 ]]; then
|
if [[ $(apt-cache show tomcat10 2>/dev/null | egrep "Version: 10" | wc -l) -gt 0 ]]; then
|
||||||
TOMCAT_VERSION="tomcat10"
|
TOMCAT_VERSION="tomcat10"
|
||||||
|
|
@ -82,8 +94,6 @@ elif [[ $(apt-cache show tomcat9 2>/dev/null | egrep "Version: 9" | wc -l) -gt 0
|
||||||
TOMCAT_VERSION="tomcat9"
|
TOMCAT_VERSION="tomcat9"
|
||||||
elif [[ $(apt-cache show tomcat8 2>/dev/null | egrep "Version: 8.[5-9]" | wc -l) -gt 0 ]]; then
|
elif [[ $(apt-cache show tomcat8 2>/dev/null | egrep "Version: 8.[5-9]" | wc -l) -gt 0 ]]; then
|
||||||
TOMCAT_VERSION="tomcat8"
|
TOMCAT_VERSION="tomcat8"
|
||||||
elif [[ $(apt-cache show tomcat7 2>/dev/null | egrep "Version: 8" | wc -l) -gt 0 ]]; then
|
|
||||||
TOMCAT_VERSION="tomcat7"
|
|
||||||
else
|
else
|
||||||
# Default to current version
|
# Default to current version
|
||||||
TOMCAT_VERSION="tomcat9"
|
TOMCAT_VERSION="tomcat9"
|
||||||
|
|
@ -608,6 +618,9 @@ export TOMCAT_VERSION=$TOMCAT_VERSION
|
||||||
export RDP_SHARE_LABEL="${RDP_SHARE_LABEL}"
|
export RDP_SHARE_LABEL="${RDP_SHARE_LABEL}"
|
||||||
export RDP_DRIVE_LABEL="${RDP_DRIVE_LABEL}"
|
export RDP_DRIVE_LABEL="${RDP_DRIVE_LABEL}"
|
||||||
export RDP_PRINTER_LABEL="${RDP_PRINTER_LABEL}"
|
export RDP_PRINTER_LABEL="${RDP_PRINTER_LABEL}"
|
||||||
|
export MYSQL_VERSION=$MYSQL_VERSION
|
||||||
|
export MYSQLSRV="${MYSQLSRV}"
|
||||||
|
export MYSQLCLIENT="${MYSQLCLIENT}"
|
||||||
|
|
||||||
# Run the Guacamole install script
|
# Run the Guacamole install script
|
||||||
sudo -E ./2-install-guacamole.sh
|
sudo -E ./2-install-guacamole.sh
|
||||||
|
|
|
||||||
|
|
@ -25,18 +25,18 @@ fi
|
||||||
|
|
||||||
# Checking if (any kind of) mysql-client or compatible command installed. This is useful for existing mariadb server
|
# Checking if (any kind of) mysql-client or compatible command installed. This is useful for existing mariadb server
|
||||||
if [ "${INSTALL_MYSQL}" = true ]; then
|
if [ "${INSTALL_MYSQL}" = true ]; then
|
||||||
MYSQL="default-mysql-server default-mysql-client mysql-common"
|
MYSQL="${MYSQLSRV}"
|
||||||
elif [ -x "$(command -v mysql)" ]; then
|
elif [ -x "$(command -v mysql)" ]; then
|
||||||
MYSQL=""
|
MYSQL=""
|
||||||
else
|
else
|
||||||
MYSQL="default-mysql-client"
|
MYSQL="${MYSQLCLIENT}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Don't do annoying prompts during apt installs
|
# Don't do annoying prompts during apt installs
|
||||||
echo -e "${GREY}Updating base Linux OS..."
|
echo -e "${GREY}Updating base Linux OS..."
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
sudo apt-get update -qq &>>${LOG_LOCATION}
|
apt-get update -qq &>>${LOG_LOCATION}
|
||||||
sudo apt-get upgrade -qq -y &>>${LOG_LOCATION}
|
apt-get upgrade -qq -y &>>${LOG_LOCATION}
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
|
|
@ -47,6 +47,14 @@ fi
|
||||||
|
|
||||||
# Install Guacamole build dependencies.
|
# Install Guacamole build dependencies.
|
||||||
echo -e "${GREY}Installing dependencies required for building Guacamole, this might take a few minutes..."
|
echo -e "${GREY}Installing dependencies required for building Guacamole, this might take a few minutes..."
|
||||||
|
|
||||||
|
if [ -n "${MYSQL_VERSION}" ]; then
|
||||||
|
# Add the Official MariaDB repo.
|
||||||
|
apt-get -qq -y install curl gnupg2 &>>${LOG_LOCATION}
|
||||||
|
curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup &>>${LOG_LOCATION}
|
||||||
|
bash mariadb_repo_setup --mariadb-server-version=$MYSQL_VERSION &>>${LOG_LOCATION}
|
||||||
|
fi
|
||||||
|
|
||||||
apt-get -qq -y install ${JPEGTURBO} ${LIBPNG} ufw htop pwgen wget crudini expect build-essential libcairo2-dev libtool-bin uuid-dev libavcodec-dev libavformat-dev libavutil-dev \
|
apt-get -qq -y install ${JPEGTURBO} ${LIBPNG} ufw htop pwgen wget crudini expect build-essential libcairo2-dev libtool-bin uuid-dev libavcodec-dev libavformat-dev libavutil-dev \
|
||||||
libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libwebsockets-dev libpulse-dev libssl-dev \
|
libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libwebsockets-dev libpulse-dev libssl-dev \
|
||||||
libvorbis-dev libwebp-dev ghostscript ${MYSQL} ${TOMCAT_VERSION} &>>${LOG_LOCATION}
|
libvorbis-dev libwebp-dev ghostscript ${MYSQL} ${TOMCAT_VERSION} &>>${LOG_LOCATION}
|
||||||
|
|
@ -58,7 +66,7 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Reduce logging noise
|
# Reduce logging noise
|
||||||
sudo ufw logging off &>>${LOG_LOCATION}
|
ufw logging off &>>${LOG_LOCATION}
|
||||||
|
|
||||||
# Install Postfix with default settings for smtp email relay
|
# Install Postfix with default settings for smtp email relay
|
||||||
echo
|
echo
|
||||||
|
|
@ -162,9 +170,9 @@ echo -e "Source download complete.${GREY}"
|
||||||
#echo -e "${GREY}"
|
#echo -e "${GREY}"
|
||||||
|
|
||||||
# Add customised RDP share names and printer labels, remove Guacamole default labelling
|
# Add customised RDP share names and printer labels, remove Guacamole default labelling
|
||||||
sudo sed -i -e 's/IDX_CLIENT_NAME, "Guacamole RDP"/IDX_CLIENT_NAME, "'"${RDP_SHARE_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
sed -i -e 's/IDX_CLIENT_NAME, "Guacamole RDP"/IDX_CLIENT_NAME, "'"${RDP_SHARE_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
||||||
sudo sed -i -e 's/IDX_DRIVE_NAME, "Guacamole Filesystem"/IDX_CLIENT_NAME, "'"${RDP_DRIVE_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
sed -i -e 's/IDX_DRIVE_NAME, "Guacamole Filesystem"/IDX_CLIENT_NAME, "'"${RDP_DRIVE_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
||||||
sudo sed -i -e 's/IDX_PRINTER_NAME, "Guacamole Printer"/IDX_PRINTER_NAME, "'"${RDP_PRINTER_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
sed -i -e 's/IDX_PRINTER_NAME, "Guacamole Printer"/IDX_PRINTER_NAME, "'"${RDP_PRINTER_LABEL}"'"/' ${DOWNLOAD_DIR}/guacamole-server-${GUAC_VERSION}/src/protocols/rdp/settings.c
|
||||||
|
|
||||||
# Make Guacamole directories
|
# Make Guacamole directories
|
||||||
rm -rf /etc/guacamole/lib/
|
rm -rf /etc/guacamole/lib/
|
||||||
|
|
@ -311,7 +319,7 @@ fi
|
||||||
# Apply branded interface, you may delete this file and restart guacd & tomcat for default branding
|
# Apply branded interface, you may delete this file and restart guacd & tomcat for default branding
|
||||||
echo -e "${GREY}Applying branded Guacamole login page and favicons..."
|
echo -e "${GREY}Applying branded Guacamole login page and favicons..."
|
||||||
# For details on how to brand Guacamole, see https://github.com/Zer0CoolX/guacamole-customize-loginscreen-extension
|
# For details on how to brand Guacamole, see https://github.com/Zer0CoolX/guacamole-customize-loginscreen-extension
|
||||||
sudo mv branding.jar /etc/guacamole/extensions
|
mv branding.jar /etc/guacamole/extensions
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
|
|
@ -487,6 +495,7 @@ fi
|
||||||
echo -e "${GREY}Cleanup install files...${GREY}"
|
echo -e "${GREY}Cleanup install files...${GREY}"
|
||||||
rm -rf guacamole-*
|
rm -rf guacamole-*
|
||||||
rm -rf mysql-connector-j-*
|
rm -rf mysql-connector-j-*
|
||||||
|
rm -rf mariadb_repo_setup
|
||||||
unset MYSQL_PWD
|
unset MYSQL_PWD
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
echo -e "${LRED}Failed. See ${LOG_LOCATION}${GREY}" 1>&2
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue