From 117007dfa1027ebce98b4164f5420082c90e53ff Mon Sep 17 00:00:00 2001 From: Jeremy Price Date: Mon, 20 Nov 2023 14:06:28 -0800 Subject: [PATCH] add new ubuntu/debian versions, change php to 8.2 --- snipeit.sh | 660 +++++++++++++++++++++++++++-------------------------- 1 file changed, 331 insertions(+), 329 deletions(-) diff --git a/snipeit.sh b/snipeit.sh index 7479df3576..784eaf3937 100755 --- a/snipeit.sh +++ b/snipeit.sh @@ -419,214 +419,216 @@ set_dbpass () { case $distro in Debian) if [[ "$version" =~ ^11 ]]; then - # Install for Debian 11.x - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) + # Install for Debian 11.x + set_fqdn + set_dbpass + tzone=$(cat /etc/timezone) - echo "* Adding PHP repository." - log "apt-get install -y apt-transport-https lsb-release ca-certificates" - log "wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg" - echo "deb https://packages.sury.org/php/ $codename main" > /etc/apt/sources.list.d/php.list + echo "* Adding PHP repository." + log "apt-get install -y apt-transport-https lsb-release ca-certificates" + log "wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg" + echo "deb https://packages.sury.org/php/ $codename main" > /etc/apt/sources.list.d/php.list - echo -n "* Updating installed packages." - log "apt-get update && apt-get -y upgrade" & pid=$! - progress + echo -n "* Updating installed packages." + log "apt-get update && apt-get -y upgrade" & pid=$! + progress - echo "* Installing Apache httpd, PHP, MariaDB and other requirements." - PACKAGES="mariadb-server mariadb-client apache2 libapache2-mod-php7.4 php7.4 php7.4-mcrypt php7.4-curl php7.4-mysql php7.4-gd php7.4-ldap php7.4-zip php7.4-mbstring php7.4-xml php7.4-bcmath curl git unzip" - install_packages + echo "* Installing Apache httpd, PHP, MariaDB and other requirements." + PACKAGES="mariadb-server mariadb-client apache2 libapache2-mod-php8.2 php8.2 php8.2-mcrypt php8.2-curl php8.2-mysql php8.2-gd php8.2-ldap php8.2-zip php8.2-mbstring php8.2-xml php8.2-bcmath curl git unzip" + install_packages - echo "* Configuring Apache." - create_virtualhost - /usr/sbin/a2enmod rewrite - /usr/sbin/a2ensite $APP_NAME.conf - rename_default_vhost + echo "* Configuring Apache." + create_virtualhost + /usr/sbin/a2enmod rewrite + /usr/sbin/a2ensite $APP_NAME.conf + rename_default_vhost - set_hosts + set_hosts - install_snipeit + install_snipeit - echo "* Restarting Apache httpd." - /usr/sbin/service apache2 restart + echo "* Restarting Apache httpd." + /usr/sbin/service apache2 restart - echo "* Clearing cache and setting final permissions." - chmod 777 -R $APP_PATH/storage/framework/cache/ - run_as_app_user "php $APP_PATH/artisan cache:clear" - chmod 775 -R $APP_PATH/storage/ + echo "* Clearing cache and setting final permissions." + chmod 777 -R $APP_PATH/storage/framework/cache/ + run_as_app_user "php $APP_PATH/artisan cache:clear" + chmod 775 -R $APP_PATH/storage/ - elif [[ "$version" =~ ^10 ]]; then - # Install for Debian 10.x - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) + elif [[ "$version" =~ ^11 ]]; then + # Install for Debian 11.x + set_fqdn + set_dbpass + tzone=$(cat /etc/timezone) - echo "* Adding PHP repository." - log "apt-get install -y apt-transport-https lsb-release ca-certificates" - log "wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg" - echo "deb https://packages.sury.org/php/ $codename main" > /etc/apt/sources.list.d/php.list + echo "* Adding PHP repository." + log "apt-get install -y apt-transport-https lsb-release ca-certificates" + log "wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg" + echo "deb https://packages.sury.org/php/ $codename main" > /etc/apt/sources.list.d/php.list - echo -n "* Updating installed packages." - log "apt-get update && apt-get -y upgrade" & pid=$! - progress + echo -n "* Updating installed packages." + log "apt-get update && apt-get -y upgrade" & pid=$! + progress - echo "* Installing Apache httpd, PHP, MariaDB and other requirements." - PACKAGES="mariadb-server mariadb-client apache2 libapache2-mod-php7.4 php7.4 php7.4-mcrypt php7.4-curl php7.4-mysql php7.4-gd php7.4-ldap php7.4-zip php7.4-mbstring php7.4-xml php7.4-bcmath curl git unzip" - install_packages + echo "* Installing Apache httpd, PHP, MariaDB and other requirements." + PACKAGES="mariadb-server mariadb-client apache2 libapache2-mod-php8.2 php8.2 php8.2-mcrypt php8.2-curl php8.2-mysql php8.2-gd php8.2-ldap php8.2-zip php8.2-mbstring php8.2-xml php8.2-bcmath curl git unzip" + install_packages - echo "* Configuring Apache." - create_virtualhost - /usr/sbin/a2enmod rewrite - /usr/sbin/a2ensite $APP_NAME.conf - rename_default_vhost + echo "* Configuring Apache." + create_virtualhost + /usr/sbin/a2enmod rewrite + /usr/sbin/a2ensite $APP_NAME.conf + rename_default_vhost - set_hosts + set_hosts - install_snipeit + install_snipeit - echo "* Restarting Apache httpd." - /usr/sbin/service apache2 restart + echo "* Restarting Apache httpd." + /usr/sbin/service apache2 restart - echo "* Clearing cache and setting final permissions." - chmod 777 -R $APP_PATH/storage/framework/cache/ - run_as_app_user "php $APP_PATH/artisan cache:clear" - chmod 775 -R $APP_PATH/storage/ + echo "* Clearing cache and setting final permissions." + chmod 777 -R $APP_PATH/storage/framework/cache/ + run_as_app_user "php $APP_PATH/artisan cache:clear" + chmod 775 -R $APP_PATH/storage/ - elif [[ "$version" =~ ^9 ]]; then - eol - exit 1 - else - echo "Unsupported Debian version. Version found: $version" - exit 1 - fi + elif [[ "$version" =~ ^10 ]]; then + # Install for Debian 10.x + set_fqdn + set_dbpass + tzone=$(cat /etc/timezone) + + echo "* Adding PHP repository." + log "apt-get install -y apt-transport-https lsb-release ca-certificates" + log "wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg" + echo "deb https://packages.sury.org/php/ $codename main" > /etc/apt/sources.list.d/php.list + + echo -n "* Updating installed packages." + log "apt-get update && apt-get -y upgrade" & pid=$! + progress + + echo "* Installing Apache httpd, PHP, MariaDB and other requirements." + PACKAGES="mariadb-server mariadb-client apache2 libapache2-mod-php8.2 php8.2 php8.2-mcrypt php8.2-curl php8.2-mysql php8.2-gd php8.2-ldap php8.2-zip php8.2-mbstring php8.2-xml php8.2-bcmath curl git unzip" + install_packages + + echo "* Configuring Apache." + create_virtualhost + /usr/sbin/a2enmod rewrite + /usr/sbin/a2ensite $APP_NAME.conf + rename_default_vhost + + set_hosts + + install_snipeit + + echo "* Restarting Apache httpd." + /usr/sbin/service apache2 restart + + echo "* Clearing cache and setting final permissions." + chmod 777 -R $APP_PATH/storage/framework/cache/ + run_as_app_user "php $APP_PATH/artisan cache:clear" + chmod 775 -R $APP_PATH/storage/ + + elif [[ "$version" =~ ^9 ]]; then + eol + exit 1 + else + echo "Unsupported Debian version. Version found: $version" + exit 1 + fi ;; Ubuntu) -if [ "${version//./}" -ge "2204" ]; then - # Install for Ubuntu 22.04 - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) + if [ "${version//./}" -ge "2204" ]; then + # Install for Ubuntu 22.04 + set_fqdn + set_dbpass + tzone=$(cat /etc/timezone) - echo -n "* Updating installed packages." - log "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y upgrade" & pid=$! - progress + echo -n "* Updating installed packages." + log "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y upgrade" & pid=$! + progress - echo "* Installing Apache httpd, PHP, MariaDB and other requirements." - PACKAGES="cron mariadb-server mariadb-client apache2 libapache2-mod-php php php-mcrypt php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath curl git unzip" - install_packages + echo "* Installing Apache httpd, PHP, MariaDB and other requirements." + PACKAGES="cron mariadb-server mariadb-client apache2 libapache2-mod-php php php-mcrypt php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath curl git unzip" + install_packages - echo "* Configuring Apache." - create_virtualhost - log "phpenmod mcrypt" - log "phpenmod mbstring" - log "a2enmod rewrite" - log "a2ensite $APP_NAME.conf" - rename_default_vhost + echo "* Configuring Apache." + create_virtualhost + log "phpenmod mcrypt" + log "phpenmod mbstring" + log "a2enmod rewrite" + log "a2ensite $APP_NAME.conf" + rename_default_vhost - set_hosts + set_hosts - echo "* Starting MariaDB." - log "systemctl start mariadb.service" + echo "* Starting MariaDB." + log "systemctl start mariadb.service" - install_snipeit + install_snipeit - echo "* Restarting Apache httpd." - log "systemctl restart apache2" + echo "* Restarting Apache httpd." + log "systemctl restart apache2" - echo "* Clearing cache and setting final permissions." - chmod 777 -R $APP_PATH/storage/framework/cache/ - log "run_as_app_user php $APP_PATH/artisan cache:clear" - chmod 775 -R $APP_PATH/storage/ - elif [ "${version//./}" == "2110" ]; then - # Ubuntu 21.10 is no longer supported - echo "Unsupported Ubuntu version. Version found: $version" - exit 1 - elif [ "${version//./}" == "2004" ]; then - # Install for Ubuntu 20.04 - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) + echo "* Clearing cache and setting final permissions." + chmod 777 -R $APP_PATH/storage/framework/cache/ + log "run_as_app_user php $APP_PATH/artisan cache:clear" + chmod 775 -R $APP_PATH/storage/ + elif [ "${version//./}" == "2110" ]; then + # Ubuntu 21.10 is no longer supported + echo "Unsupported Ubuntu version. Version found: $version" + exit 1 + elif [ "${version//./}" == "2004" ]; then + # Install for Ubuntu 20.04 + set_fqdn + set_dbpass + tzone=$(cat /etc/timezone) - echo -n "* Updating installed packages." - log "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y upgrade" & pid=$! - progress + echo -n "* Updating installed packages." + log "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y upgrade" & pid=$! + progress - echo "* Installing Apache httpd, PHP, MariaDB and other requirements." - PACKAGES="cron mariadb-server mariadb-client apache2 libapache2-mod-php php php-mcrypt php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath curl git unzip" - install_packages + echo "* Installing Apache httpd, PHP, MariaDB and other requirements." + PACKAGES="cron mariadb-server mariadb-client apache2 libapache2-mod-php php php-mcrypt php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath curl git unzip" + install_packages - echo "* Configuring Apache." - create_virtualhost - log "phpenmod mcrypt" - log "phpenmod mbstring" - log "a2enmod rewrite" - log "a2ensite $APP_NAME.conf" - rename_default_vhost + echo "* Configuring Apache." + create_virtualhost + log "phpenmod mcrypt" + log "phpenmod mbstring" + log "a2enmod rewrite" + log "a2ensite $APP_NAME.conf" + rename_default_vhost - set_hosts + set_hosts - echo "* Starting MariaDB." - log "systemctl start mariadb.service" + echo "* Starting MariaDB." + log "systemctl start mariadb.service" - install_snipeit + install_snipeit - echo "* Restarting Apache httpd." - log "systemctl restart apache2" + echo "* Restarting Apache httpd." + log "systemctl restart apache2" - echo "* Clearing cache and setting final permissions." - chmod 777 -R $APP_PATH/storage/framework/cache/ - log "run_as_app_user php $APP_PATH/artisan cache:clear" - chmod 775 -R $APP_PATH/storage/ - elif [ "${version//./}" == "1804" ]; then - # Install for Ubuntu 18.04+ - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) - - echo -n "* Updating installed packages." - log "apt-get update" - log "DEBIAN_FRONTEND=noninteractive apt-get -y upgrade" & pid=$! - progress - log "add-apt-repository -y ppa:ondrej/php" - - echo "* Installing Apache httpd, PHP, MariaDB and other requirements." - PACKAGES="cron mariadb-server mariadb-client apache2 libapache2-mod-php php php-mcrypt php-curl php-mysql php-gd php-ldap php-zip php-mbstring php-xml php-bcmath curl git unzip" - install_packages - - echo "* Configuring Apache." - create_virtualhost - log "phpenmod mcrypt" - log "phpenmod mbstring" - log "a2enmod rewrite" - log "a2ensite $APP_NAME.conf" - rename_default_vhost - - set_hosts - - echo "* Starting MariaDB." - log "systemctl start mariadb.service" - - install_snipeit - - echo "* Restarting Apache httpd." - log "systemctl restart apache2" - - echo "* Clearing cache and setting final permissions." - chmod 777 -R $APP_PATH/storage/framework/cache/ - log "run_as_app_user php $APP_PATH/artisan cache:clear" - chmod 775 -R $APP_PATH/storage/ - else - echo "Unsupported Ubuntu version. Version found: $version" - exit 1 - fi - ;; + echo "* Clearing cache and setting final permissions." + chmod 777 -R $APP_PATH/storage/framework/cache/ + log "run_as_app_user php $APP_PATH/artisan cache:clear" + chmod 775 -R $APP_PATH/storage/ + elif [ "${version//./}" == "1804" ]; then + eol + exit 1 + else + echo "Unsupported Ubuntu version. Version found: $version" + exit 1 + fi + ;; Raspbian) - if [[ "$version" =~ ^10 ]]; then - # Install for Raspbian 9.x - set_fqdn - set_dbpass - tzone=$(cat /etc/timezone) - cat >/etc/apt/sources.list.d/10-buster.list </etc/apt/sources.list.d/10-buster.list <