diff --git a/install/deferred/freepbx-install_backup.sh b/install/deferred/freepbx-install_backup.sh deleted file mode 100644 index a5d41953c..000000000 --- a/install/deferred/freepbx-install_backup.sh +++ /dev/null @@ -1,171 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2021-2025 community-scripts ORG -# Author: Arian Nasr (arian-nasr) -# License: MIT | https://github.com/community-scripts/ProxmoxVED/raw/main/LICENSE -# Source: https://www.freepbx.org/ - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -msg_info "Installing Dependencies" -$STD apt-get install -y \ - build-essential \ - git \ - libnewt-dev \ - libssl-dev \ - libncurses5-dev \ - subversion \ - libsqlite3-dev \ - libjansson-dev \ - libxml2-dev \ - uuid-dev \ - default-libmysqlclient-dev \ - htop \ - sngrep \ - lame \ - ffmpeg \ - mpg123 \ - vim \ - expect \ - openssh-server \ - apache2 \ - mariadb-server \ - mariadb-client \ - bison \ - flex \ - php8.2 \ - php8.2-{curl,cli,common,mysql,gd,mbstring,intl,xml} \ - php-pear \ - sox \ - sqlite3 \ - pkg-config \ - automake \ - libtool \ - autoconf \ - unixodbc-dev \ - uuid \ - libasound2-dev \ - libogg-dev \ - libvorbis-dev \ - libicu-dev \ - libcurl4-openssl-dev \ - odbc-mariadb \ - libical-dev \ - libneon27-dev \ - libsrtp2-dev \ - libspandsp-dev \ - subversion \ - libtool-bin \ - python-dev-is-python3 \ - unixodbc \ - software-properties-common \ - nodejs \ - npm \ - ipset \ - iptables \ - fail2ban \ - php-soap -msg_ok "Installed Dependencies" - -msg_info "Installing Asterisk (Patience)" -cd /usr/src -curl -fsSL http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-21-current.tar.gz -tar xf asterisk-21-current.tar.gz -cd asterisk-21.* -$STD contrib/scripts/get_mp3_source.sh -$STD contrib/scripts/install_prereq install -$STD ./configure --libdir=/usr/lib64 --with-pjproject-bundled --with-jansson-bundled -$STD make -$STD make install -$STD make samples -$STD make config -ldconfig -msg_ok "Installed Asterisk" - -msg_info "Setup Asterisk" -groupadd asterisk -useradd -r -d /var/lib/asterisk -g asterisk asterisk -usermod -aG audio,dialout asterisk -chown -R asterisk:asterisk /etc/asterisk -chown -R asterisk:asterisk /var/{lib,log,spool}/asterisk -chown -R asterisk:asterisk /usr/lib64/asterisk -sed -i 's|#AST_USER|AST_USER|' /etc/default/asterisk -sed -i 's|#AST_GROUP|AST_GROUP|' /etc/default/asterisk -sed -i 's|;runuser|runuser|' /etc/asterisk/asterisk.conf -sed -i 's|;rungroup|rungroup|' /etc/asterisk/asterisk.conf -echo "/usr/lib64" >>/etc/ld.so.conf.d/x86_64-linux-gnu.conf -ldconfig -msg_ok "Done Setup Asterisk" - -msg_info "Setup Apache" -sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php/8.2/apache2/php.ini -sed -i 's/\(^memory_limit = \).*/\1256M/' /etc/php/8.2/apache2/php.ini -sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf -sed -i 's/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf -$STD a2enmod rewrite -systemctl restart apache2 -rm /var/www/html/index.html -msg_ok "Done Setup Apache" - -# Configure ODBC -cat </etc/odbcinst.ini -[MySQL] -Description = ODBC for MySQL (MariaDB) -Driver = /usr/lib/x86_64-linux-gnu/odbc/libmaodbc.so -FileUsage = 1 -EOF - -cat </etc/odbc.ini -[MySQL-asteriskcdrdb] -Description = MySQL connection to 'asteriskcdrdb' database -Driver = MySQL -Server = localhost -Database = asteriskcdrdb -Port = 3306 -Socket = /var/run/mysqld/mysqld.sock -Option = 3 -EOF - -msg_info "Installing FreePBX" -cd /usr/local/src -curl -fsSL http://mirror.freepbx.org/modules/packages/freepbx/freepbx-17.0-latest-EDGE.tgz -o freepbx-17.0-latest-EDGE.tgz -tar zxf freepbx-17.0-latest-EDGE.tgz -cd /usr/local/src/freepbx/ -$STD ./start_asterisk start -# Even though the php code completes successfully, it is returning non-zero exit code, so in the next line we return true, needed for successful installation -./install -n &>/dev/null || true -$STD fwconsole ma installall -$STD fwconsole reload -$STD fwconsole restart -msg_ok "Installed FreePBX" - -msg_info "Setup FreePBX Service" -cat </etc/systemd/system/freepbx.service -[Unit] -Description=FreePBX VoIP Server -After=mariadb.service -[Service] -Type=oneshot -RemainAfterExit=yes -ExecStart=/usr/sbin/fwconsole start -q -ExecStop=/usr/sbin/fwconsole stop -q -[Install] -WantedBy=multi-user.target -EOF -systemctl daemon-reload -systemctl enable -q --now freepbx -msg_ok "Done Setup FreePBX Service" - -motd_ssh -customize - -msg_info "Cleaning up" -$STD apt-get -y autoremove -$STD apt-get -y autoclean -msg_ok "Cleaned" diff --git a/install/deferred/ghostfolio-install.sh b/install/deferred/ghostfolio-install.sh deleted file mode 100644 index 9a5d30e43..000000000 --- a/install/deferred/ghostfolio-install.sh +++ /dev/null @@ -1,179 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2021-2024 tteck -# Author: tteck (tteckster) -# Co-Author: jcantosz -# License: MIT -# https://github.com/tteck/Proxmox/raw/main/LICENSE - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -msg_info "Installing Dependencies" -$STD apt-get update -$STD apt-get install -y \ - curl \ - lsb-release \ - gpg \ - g++ \ - git \ - make \ - openssl \ - python3 \ - postgresql-15 \ - redis -msg_ok "Installed Dependencies" - -msg_info "Setting up Node.js Repository" -mkdir -p /etc/apt/keyrings -curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg -echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list -msg_ok "Set up Node.js Repository" - -msg_info "Installing Node.js" -$STD apt-get update -$STD apt-get install -y --no-install-suggests nodejs -msg_info "Installed Node.js" - -msg_info "Installing Postgresql" -POSTGRES_HOST=localhost -POSTGRES_PORT=5432 -POSTGRES_DB=ghostfolio-db -POSTGRES_USER='postgres' -POSTGRES_PASSWORD="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)" -ACCESS_TOKEN_SALT="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)" -DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}?connect_timeout=300&sslmode=prefer" -JWT_SECRET_KEY="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)" - -$STD su postgres <~/ghostfolio.creds -echo "Ghostfolio Database Credentials" >>~/ghostfolio.creds -echo "" >>~/ghostfolio.creds -echo -e "Ghostfolio Database User: \e[32m$POSTGRES_USER\e[0m" >>~/ghostfolio.creds -echo -e "Ghostfolio Database Password: \e[32m$POSTGRES_PASSWORD\e[0m" >>~/ghostfolio.creds -echo -e "Ghostfolio Database Name: \e[32m$POSTGRES_DB\e[0m" >>~/ghostfolio.creds -msg_ok "Installed Postgresql" - -msg_info "Installing Redis" -REDIS_HOST=localhost -REDIS_PORT=6379 -REDIS_PASSWORD="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)" - -$STD redis-cli CONFIG SET requirepass "$REDIS_PASSWORD" -$STD redis-cli -a "$REDIS_PASSWORD" CONFIG REWRITE -$STD systemctl restart redis -echo "" >>~/ghostfolio.creds -echo "Ghostfolio Redis Credentials" >>~/ghostfolio.creds -echo "" >>~/ghostfolio.creds -echo -e "Ghostfolio Redis Password: \e[32m$REDIS_PASSWORD\e[0m" >>~/ghostfolio.creds -msg_ok "Installed Redis" - -msg_info "Installing Ghostfolio (Patience)" -RELEASE=$(curl -sL https://api.github.com/repos/ghostfolio/ghostfolio/releases/latest | grep '"tag_name":' | cut -d'"' -f4) -echo "${RELEASE}" >/opt/${APPLICATION}_version.txt - -cd /opt/ -$STD curl -Ls -o ghostfolio-$RELEASE.tgz https://github.com/ghostfolio/ghostfolio/archive/refs/tags/$RELEASE.tar.gz -$STD tar xzf ghostfolio-$RELEASE.tgz -$STD rm ghostfolio-$RELEASE.tgz - -cp /opt/ghostfolio-$RELEASE/package.json /opt/package.json -cp /opt/ghostfolio-$RELEASE/package-lock.json /opt/package-lock.json - -cd /opt/ghostfolio-$RELEASE -$STD npm install -$STD npm run build:production -mv /opt/package-lock.json /opt/ghostfolio-$RELEASE/package-lock.json - -cd /opt/ghostfolio-$RELEASE/dist/apps/api/ -$STD npm install -cp -r /opt/ghostfolio-$RELEASE/prisma . -mv /opt/package.json /opt/ghostfolio-$RELEASE/dist/apps/api/package.json -$STD npm run database:generate-typings - -cd /opt -mv /opt/ghostfolio-$RELEASE/dist/apps /opt/ghostfolio -mv /opt/ghostfolio-$RELEASE/docker/entrypoint.sh /opt/ghostfolio/ - -rm -rf /opt/ghostfolio-$RELEASE -msg_ok "Installed Ghostfolio" - -msg_info "Creating Service" -cat </opt/ghostfolio/api/.env -# CACHE -REDIS_HOST=$REDIS_HOST -REDIS_PORT=$REDIS_PORT -REDIS_PASSWORD=$REDIS_PASSWORD - -# POSTGRES -POSTGRES_DB=$POSTGRES_DB -POSTGRES_USER=$POSTGRES_USER -POSTGRES_PASSWORD=$POSTGRES_PASSWORD - -# VARIOUS -ACCESS_TOKEN_SALT=$ACCESS_TOKEN_SALT -DATABASE_URL="$DATABASE_URL" -JWT_SECRET_KEY=$JWT_SECRET_KEY -EOF - -cat </opt/ghostfolio/start.sh -#!/bin/bash -# Source the environment vars and export them otherwise it wont get them properly -set -a -. /opt/ghostfolio/api/.env -set +a - -# Run the docker entrypoint -/opt/ghostfolio/entrypoint.sh -EOF - -chmod +x /opt/ghostfolio/start.sh - -msg_info "Setup Service" -cat </etc/systemd/system/ghostfolio.service -[Unit] -Description=ghostfolio - -[Service] -After=postgresql.service redis.service -Require=postgresql.service redis.service - -# Start Service -ExecStart=/opt/ghostfolio/start.sh -WorkingDirectory=/opt/ghostfolio/api/ - -# Restart service after 10 seconds if node service crashes -RestartSec=10 -Restart=always - -# Output to syslog -StandardOutput=syslog -StandardError=syslog -SyslogIdentifier=ghostfolio - -[Install] -WantedBy=multi-user.target -EOF - -systemctl enable ghostfolio -systemctl start ghostfolio -msg_ok "Created Service" - -motd_ssh -customize - -msg_info "Cleaning up" -$STD apt-get -y autoremove -$STD apt-get -y autoclean -msg_ok "Cleaned" diff --git a/install/deferred/kasm-install.sh b/install/deferred/kasm-install.sh deleted file mode 100644 index 236d15ba8..000000000 --- a/install/deferred/kasm-install.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2021-2025 community-scripts ORG -# Author: Omar Minaya -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://www.kasmweb.com/docs/latest/index.html - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -check_or_create_swap - -msg_info "Installing Kasm Workspaces" -RELEASE=$(curl -fsSL 'https://www.kasmweb.com/downloads' | grep -o 'https://kasm-static-content.s3.amazonaws.com/kasm_release_[^"]*\.tar\.gz' | head -n 1 | sed -E 's/.*release_(.*)\.tar\.gz/\1/') -curl -fsSL -o "/opt/kasm_release_${RELEASE}.tar.gz" "https://kasm-static-content.s3.amazonaws.com/kasm_release_${RELEASE}.tar.gz" -cd /opt -tar -xf "kasm_release_${RELEASE}.tar.gz" -chmod +x /opt/kasm_release/install.sh -printf 'y\ny\ny\n4\n' | $STD bash /opt/kasm_release/install.sh | tee ~/kasm-install.output -sed -n '/Kasm UI Login Credentials/,$p' ~/kasm-install.output >~/kasm.creds -echo "${RELEASE}" >/opt/${APPLICATION}_version.txt -msg_ok "Installed Kasm Workspaces" - -motd_ssh -customize - -msg_info "Cleaning up" -$STD rm -f /opt/kasm_release_${RELEASE}.tar.gz -$STD apt-get -y autoremove -$STD apt-get -y autoclean -msg_ok "Cleaned" diff --git a/install/deferred/kanba-install.sh b/install/deferred/maybe_death/kanba-install.sh similarity index 100% rename from install/deferred/kanba-install.sh rename to install/deferred/maybe_death/kanba-install.sh