Merge remote-tracking branch 'upstream/main'

This commit is contained in:
Sam Heinz
2025-06-24 21:42:22 +10:00
38 changed files with 802 additions and 447 deletions
+2 -4
View File
@@ -22,8 +22,8 @@ $STD apt-get install -y \
msg_ok "Installed Dependencies"
PYTHON_VERSION="3.12" setup_uv
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
PG_VERSION="16" PG_MODULES="postgis" install_postgresql
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
PG_VERSION="16" PG_MODULES="postgis" setup_postgresql
msg_info "Set up PostgreSQL Database"
DB_NAME="adventurelog_db"
@@ -90,7 +90,6 @@ EOF
cd /opt/adventurelog/frontend
$STD pnpm i
$STD pnpm build
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
msg_ok "Installed AdventureLog"
msg_info "Setting up Django Admin"
@@ -148,7 +147,6 @@ motd_ssh
customize
msg_info "Cleaning up"
rm -rf /opt/v${RELEASE}.zip
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
+29
View File
@@ -0,0 +1,29 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Johann3s-H (An!ma)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://forgejo.org/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Forgejo"
$STD apk add --no-cache forgejo
msg_ok "Installed Forgejo"
msg_info "Enabling Forgejo Service"
$STD rc-update add forgejo default
msg_ok "Enabled Forgejo Service"
msg_info "Starting Forgejo"
$STD service forgejo start
msg_ok "Started Forgejo"
motd_ssh
customize
+13 -13
View File
@@ -17,34 +17,34 @@ msg_info "Installing Dependencies"
$STD apt-get install -y git
msg_ok "Installed Dependencies"
msg_info "Setup Python3"
$STD apt-get install -y \
python3 \
python3-dev \
python3-pip \
python3-venv
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Setup Python3"
PYTHON_VERSION="3.12" setup_uv
msg_info "Installing ESPHome"
mkdir /root/config
$STD pip install esphome tornado esptool
msg_ok "Installed ESPHome"
msg_info "Setting up Virtual Environment"
mkdir -p /opt/esphome
mkdir -p /root/config
cd /opt/esphome
$STD uv venv /opt/esphome/.venv
$STD /opt/esphome/.venv/bin/python -m ensurepip --upgrade
$STD /opt/esphome/.venv/bin/python -m pip install --upgrade pip
$STD /opt/esphome/.venv/bin/python -m pip install esphome tornado esptool
msg_ok "Setup and Installed ESPHome"
msg_info "Creating Service"
mkdir -p /root/config
cat <<EOF >/etc/systemd/system/esphomeDashboard.service
[Unit]
Description=ESPHome Dashboard
After=network.target
[Service]
ExecStart=/usr/local/bin/esphome dashboard /root/config/
ExecStart=/opt/esphome/.venv/bin/esphome dashboard /root/config/
Restart=always
User=root
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now esphomeDashboard
msg_ok "Created Service"
+1 -1
View File
@@ -282,7 +282,7 @@ GEO_DIR="${INSTALL_DIR}/geodata"
mkdir -p "$INSTALL_DIR"
mkdir -p {"${APP_DIR}","${UPLOAD_DIR}","${GEO_DIR}","${ML_DIR}","${INSTALL_DIR}"/cache}
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v1.135.0" "$SRC_DIR"
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "latest" "$SRC_DIR"
msg_info "Installing ${APPLICATION} (more patience please)"
+1 -1
View File
@@ -44,7 +44,7 @@ msg_ok "Set up PostgreSQL DB"
read -r -p "${TAB3}Would you like to add Adminer? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
install_adminer
setup_adminer
fi
msg_info "Installing Linkwarden (Patience)"
+10 -14
View File
@@ -1,8 +1,7 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 tteck
# Author: tteck
# Co-Author: MickLesk (Canbiz)
# Author: MickLesk (Canbiz)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/alexta69/metube
@@ -28,15 +27,7 @@ $STD apt-get install -y --no-install-recommends \
ca-certificates
msg_ok "Installed Dependencies"
msg_info "Setup Python3"
$STD apt-get install -y \
python3 \
python3-dev \
python3-pip \
python3-venv
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Setup Python3"
PYTHON_VERSION="3.13" setup_uv
NODE_VERSION="22" setup_nodejs
msg_info "Installing MeTube"
@@ -45,8 +36,13 @@ cd /opt/metube/ui
$STD npm install
$STD node_modules/.bin/ng build
cd /opt/metube
$STD pip3 install pipenv
$STD pipenv install
$STD uv venv /opt/metube/.venv
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
$STD /opt/metube/.venv/bin/python -m pip install pipenv
$STD /opt/metube/.venv/bin/pipenv install
$STD /opt/metube/.venv/bin/pipenv update yt-dlp
mkdir -p /opt/metube_downloads /opt/metube_downloads/.metube /opt/metube_downloads/music /opt/metube_downloads/videos
cat <<EOF >/opt/metube/.env
DOWNLOAD_DIR=/opt/metube_downloads
@@ -66,7 +62,7 @@ After=network.target
Type=simple
WorkingDirectory=/opt/metube
EnvironmentFile=/opt/metube/.env
ExecStart=/usr/local/bin/pipenv run python3 app/main.py
ExecStart=/opt/metube/.venv/bin/pipenv run python3 app/main.py
Restart=always
User=root
+38 -8
View File
@@ -13,31 +13,60 @@ setting_up_container
network_check
update_os
msg_info "Setup MinIO"
RELEASE=$(curl -fsSL https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}')
curl -fsSL "https://dl.min.io/server/minio/release/linux-amd64/minio" -o /usr/local/bin/minio
FEATURE_RICH_VERSION="2025-04-22T22-12-26Z"
echo
echo "MinIO recently removed many management features from the Console UI."
echo "The last feature-complete version is: $FEATURE_RICH_VERSION"
echo "Latest versions require the paid edition for full UI functionality."
echo
echo "Choose which version to install:"
echo " [N] Feature-rich community version ($FEATURE_RICH_VERSION) [Recommended]"
echo " [Y] Latest version (may lack UI features)"
echo
read -p "Install latest MinIO version? [y/N]: " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
USE_LATEST=true
else
USE_LATEST=false
fi
msg_info "Setting up MinIO"
if [[ "$USE_LATEST" == "true" ]]; then
RELEASE=$(curl -fsSL https://api.github.com/repos/minio/minio/releases/latest | grep '"tag_name"' | awk -F '"' '{print $4}')
DOWNLOAD_URL="https://dl.min.io/server/minio/release/linux-amd64/minio"
else
RELEASE="$FEATURE_RICH_VERSION"
DOWNLOAD_URL="https://dl.min.io/server/minio/release/linux-amd64/archive/minio.RELEASE.${FEATURE_RICH_VERSION}"
fi
curl -fsSL "$DOWNLOAD_URL" -o /usr/local/bin/minio
chmod +x /usr/local/bin/minio
useradd -r minio-user -s /sbin/nologin
mkdir -p /home/minio-user
chown minio-user:minio-user /home/minio-user
mkdir -p /data
chown minio-user:minio-user /data
MINIO_ADMIN_USER="minioadmin"
MINIO_ADMIN_PASSWORD="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
cat <<EOF >/etc/default/minio
MINIO_ROOT_USER=${MINIO_ADMIN_USER}
MINIO_ROOT_PASSWORD=${MINIO_ADMIN_PASSWORD}
EOF
{
echo ""
echo "MinIO-Credentials"
echo "MinIO Credentials"
echo "MinIO Admin User: $MINIO_ADMIN_USER"
echo "MinIO Admin Password: $MINIO_ADMIN_PASSWORD"
} >>~/minio.creds
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
echo "${RELEASE}" >/opt/${APPLICATION,,}_version.txt
msg_ok "Setup MinIO"
msg_info "Creating Service"
msg_info "Creating service"
cat <<EOF >/etc/systemd/system/minio.service
[Unit]
Description=MinIO
@@ -57,8 +86,9 @@ LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now minio
msg_ok "Created Service"
msg_ok "Service created"
motd_ssh
customize
@@ -66,4 +96,4 @@ customize
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
msg_ok "Cleanup complete"
+8 -8
View File
@@ -13,16 +13,16 @@ setting_up_container
network_check
update_os
msg_info "Setup Python3"
$STD apt-get install -y \
python3 \
python3-pip
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Setup Python3"
PYTHON_VERSION="3.12" setup_uv
msg_info "Installing Prometheus Proxmox VE Exporter"
python3 -m pip install --default-timeout=300 --quiet --root-user-action=ignore prometheus-pve-exporter
mkdir -p /opt/prometheus-pve-exporter
cd /opt/prometheus-pve-exporter
$STD uv venv /opt/prometheus-pve-exporter/.venv
$STD /opt/prometheus-pve-exporter/.venv/bin/python -m ensurepip --upgrade
$STD /opt/prometheus-pve-exporter/.venv/bin/python -m pip install --upgrade pip
$STD /opt/prometheus-pve-exporter/.venv/bin/python -m pip install prometheus-pve-exporter
cat <<EOF >/opt/prometheus-pve-exporter/pve.yml
default:
user: prometheus@pve
@@ -42,7 +42,7 @@ After=syslog.target network.target
User=root
Restart=always
Type=simple
ExecStart=pve_exporter \
ExecStart=/opt/prometheus-pve-exporter/.venv/bin/pve_exporter \
--config.file=/opt/prometheus-pve-exporter/pve.yml \
--web.listen-address=0.0.0.0:9221
ExecReload=/bin/kill -HUP \$MAINPID
+2 -2
View File
@@ -15,8 +15,8 @@ update_os
msg_info "Setup TriliumNext"
cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/TriliumNext/Notes/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/TriliumNext/Notes/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-arm64.tar.xz" -o "TriliumNextNotes-Server-v${RELEASE}-linux-arm64.tar.xz"
RELEASE=$(curl -fsSL https://api.github.com/repos/TriliumNext/trilium/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/TriliumNext/trilium/releases/download/v${RELEASE}/TriliumNextNotes-Server-v${RELEASE}-linux-arm64.tar.xz" -o "TriliumNextNotes-Server-v${RELEASE}-linux-arm64.tar.xz"
tar -xf TriliumNextNotes-Server-v${RELEASE}-linux-arm64.tar.xz
mv TriliumNextNotes-Server-$RELEASE-linux-arm64 /opt/trilium
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"