Compare commits

..

37 Commits

Author SHA1 Message Date
push-app-to-main[bot]
1128d22e6c 'Add new script' 2025-10-18 10:34:39 +00:00
CanbiZ
77aba17771 fix libheif trixie 2025-10-18 08:24:19 +02:00
CanbiZ
3df8fadbba fix libheif trixie 2025-10-18 08:23:52 +02:00
community-scripts-pr-app[bot]
59f8e85b1c Update CHANGELOG.md (#8447)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-18 00:12:04 +00:00
community-scripts-pr-app[bot]
eaed744f2e Update versions.json (#8446)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-18 02:11:30 +02:00
community-scripts-pr-app[bot]
14bd66ed91 Update CHANGELOG.md (#8444)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 22:46:45 +00:00
Slaviša Arežina
5c0ce0959e GLPI: Bump to Debian 13 base (#8443) 2025-10-18 00:46:19 +02:00
community-scripts-pr-app[bot]
35810eb770 Update CHANGELOG.md (#8440)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 17:33:23 +00:00
Chris
048d468e8f replace policykit-1 with polkitd (#8439) 2025-10-17 19:32:55 +02:00
community-scripts-pr-app[bot]
a204f29f48 Update CHANGELOG.md (#8434)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 15:25:09 +00:00
Slaviša Arežina
b17257f464 Revert back to debian 12 template (#8431) 2025-10-17 17:24:40 +02:00
CanbiZ
01ccfc023a fix pip3 2025-10-17 16:07:01 +02:00
CanbiZ
c055781fed remove unbound prompt 2025-10-17 15:48:33 +02:00
community-scripts-pr-app[bot]
c6b85deb13 Update CHANGELOG.md (#8428)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 12:48:12 +00:00
Slaviša Arežina
b56e8d0bbb MySpeed: Fix build step (#8427)
* Fix build step

* Fix build step
2025-10-17 14:47:46 +02:00
community-scripts-pr-app[bot]
32d98aa3c5 Update versions.json (#8425)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 14:05:40 +02:00
community-scripts-pr-app[bot]
1611e48581 Update CHANGELOG.md (#8423)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 08:44:23 +00:00
Slaviša Arežina
2b5ec97862 Update planka.json (#8422) 2025-10-17 10:43:59 +02:00
community-scripts-pr-app[bot]
f761d9bf7c Update CHANGELOG.md (#8420)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 07:25:37 +00:00
Michel Roegl-Brunner
996294daae refactor: fix pve-scripts local install script (#8418) 2025-10-17 09:25:13 +02:00
community-scripts-pr-app[bot]
e87bce1542 Update CHANGELOG.md (#8415)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 00:13:02 +00:00
community-scripts-pr-app[bot]
730b16af72 Update versions.json (#8414)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-17 02:12:34 +02:00
community-scripts-pr-app[bot]
554ea0d65e Update CHANGELOG.md (#8408)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 18:01:24 +00:00
Tobias
6ee5c9eab4 fix: changedetection: dirty fix for tsc and esbuild not found (#8407) 2025-10-16 20:00:56 +02:00
community-scripts-pr-app[bot]
bd38e7bdf4 Update CHANGELOG.md (#8405)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 15:03:57 +00:00
CanbiZ
78c8933855 Disable 'pve-enterprise' and 'ceph enterprise' repositories using 'Enabled: false' instead of commenting out lines; add 'Enabled: false' to new repository entries. (#8399) 2025-10-16 17:03:35 +02:00
community-scripts-pr-app[bot]
c16e187f36 Update CHANGELOG.md (#8404)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 15:02:36 +00:00
CanbiZ
ac89626832 Enhance nginx proxy manager install script (#8400) 2025-10-16 17:02:04 +02:00
CanbiZ
72ecf11324 fix bookworm 2025-10-16 15:27:38 +02:00
CanbiZ
98f2bd9783 Update ImageMagick policy modification for multiple versions 2025-10-16 15:05:14 +02:00
community-scripts-pr-app[bot]
ca2c708ad6 Update CHANGELOG.md (#8398)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 12:45:52 +00:00
CanbiZ
b46820966e paperless-ngx: remove unneeded deps, use static ghostscript (#8397) 2025-10-16 14:45:27 +02:00
community-scripts-pr-app[bot]
d0cee74371 Update versions.json (#8395)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 14:05:51 +02:00
community-scripts-pr-app[bot]
8f09a1c8e7 Update CHANGELOG.md (#8393)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-16 10:12:32 +00:00
Slaviša Arežina
f9a51de384 Update Microsoft package source for Debian version (#8392) 2025-10-16 12:12:09 +02:00
CanbiZ
67cff5e18a fix deps 2025-10-16 11:21:30 +02:00
CanbiZ
4625dc58cb Trixie; Mime-Support removal 2025-10-16 09:23:41 +02:00
29 changed files with 592 additions and 311 deletions

View File

@@ -10,8 +10,49 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-10-18
## 2025-10-17
### 🚀 Updated Scripts
- Revert back to debian 12 template for various apps [@tremor021](https://github.com/tremor021) ([#8431](https://github.com/community-scripts/ProxmoxVE/pull/8431))
- #### 🐞 Bug Fixes
- [FIX]Pulse: replace policykit-1 with polkitd [@vhsdream](https://github.com/vhsdream) ([#8439](https://github.com/community-scripts/ProxmoxVE/pull/8439))
- MySpeed: Fix build step [@tremor021](https://github.com/tremor021) ([#8427](https://github.com/community-scripts/ProxmoxVE/pull/8427))
- #### ✨ New Features
- GLPI: Bump to Debian 13 base [@tremor021](https://github.com/tremor021) ([#8443](https://github.com/community-scripts/ProxmoxVE/pull/8443))
- #### 🔧 Refactor
- refactor: fix pve-scripts local install script [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#8418](https://github.com/community-scripts/ProxmoxVE/pull/8418))
### 🌐 Website
- #### 📝 Script Information
- PLANKA: Fix config path [@tremor021](https://github.com/tremor021) ([#8422](https://github.com/community-scripts/ProxmoxVE/pull/8422))
## 2025-10-16
### 🚀 Updated Scripts
- post-pve/post-pbs: Disable 'pve-enterprise' and 'ceph enterprise' repositories [@MickLesk](https://github.com/MickLesk) ([#8399](https://github.com/community-scripts/ProxmoxVE/pull/8399))
- #### 🐞 Bug Fixes
- fix: changedetection: fix for tsc and esbuild not found [@CrazyWolf13](https://github.com/CrazyWolf13) ([#8407](https://github.com/community-scripts/ProxmoxVE/pull/8407))
- paperless-ngx: remove unneeded deps, use static ghostscript [@MickLesk](https://github.com/MickLesk) ([#8397](https://github.com/community-scripts/ProxmoxVE/pull/8397))
- UmlautAdaptarr: Revert back to bookworm repo [@tremor021](https://github.com/tremor021) ([#8392](https://github.com/community-scripts/ProxmoxVE/pull/8392))
- #### 🔧 Refactor
- Enhance nginx proxy manager install script [@MickLesk](https://github.com/MickLesk) ([#8400](https://github.com/community-scripts/ProxmoxVE/pull/8400))
## 2025-10-15
### 🆕 New Scripts

View File

@@ -57,6 +57,7 @@ function update_script() {
$STD /opt/browserless/node_modules/playwright-core/cli.js install --force chrome
$STD /opt/browserless/node_modules/playwright-core/cli.js install --force msedge
$STD /opt/browserless/node_modules/playwright-core/cli.js install chromium firefox webkit
$STD npm install --prefix /opt/browserless esbuild typescript ts-node @types/node
$STD npm run build --prefix /opt/browserless
$STD npm run build:function --prefix /opt/browserless
$STD npm prune production --prefix /opt/browserless

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"

6
ct/headers/open-archiver Normal file
View File

@@ -0,0 +1,6 @@
____ ___ __ _
/ __ \____ ___ ____ / | __________/ /_ (_) _____ _____
/ / / / __ \/ _ \/ __ \______/ /| | / ___/ ___/ __ \/ / | / / _ \/ ___/
/ /_/ / /_/ / __/ / / /_____/ ___ |/ / / /__/ / / / /| |/ / __/ /
\____/ .___/\___/_/ /_/ /_/ |_/_/ \___/_/ /_/_/ |___/\___/_/
/_/

View File

@@ -11,7 +11,7 @@ var_disk="${var_disk:-6}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"

61
ct/open-archiver.sh Normal file
View File

@@ -0,0 +1,61 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://openarchiver.com/
APP="Open-Archiver"
var_tags="${var_tags:-os}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/openarchiver ]]; then
msg_error "No Open Archiver Installation Found!"
exit
fi
if check_for_gh_release "openarchiver" "LogicLabs-OU/OpenArchiver"; then
msg_info "Stopping Services"
systemctl stop openarchiver
msg_ok "Stopped Services"
cp /opt/openarchiver/.env /opt/openarchiver.env
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "openarchiver" "LogicLabs-OU/OpenArchiver" "tarball" "latest" "/opt/openarchiver"
mv /opt/openarchiver.env /opt/openarchiver/.env
msg_info "Updating Open Archiver"
$STD pnpm install --shamefully-hoist --frozen-lockfile --prod=false
$STD pnpm build
$STD pnpm db:migrate
msg_ok "Updated Open Archiver"
msg_info "Starting Services"
systemctl start openarchiver
msg_ok "Started Services"
msg_ok "Updated Successfully"
fi
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-8192}"
var_disk="${var_disk:-25}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"

View File

@@ -34,7 +34,7 @@ function update_script() {
fetch_and_deploy_gh_release "photoprism" "photoprism/photoprism" "prebuild" "latest" "/opt/photoprism" "*linux-amd64.tar.gz"
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-bookworm-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
if [[ "${LIBHEIF_URL}" != "$(cat ~/.photoprism_libheif 2>/dev/null)" ]] || [[ ! -f ~/.photoprism_libheif ]]; then
msg_info "Updating PhotoPrism LibHeif"
$STD apt install -y libvips42

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"

View File

@@ -23,7 +23,7 @@
"ram": 2048,
"hdd": 10,
"os": "debian",
"version": "12"
"version": "13"
}
}
],

View File

@@ -23,7 +23,7 @@
"ram": 2048,
"hdd": 6,
"os": "debian",
"version": "13"
"version": "12"
}
}
],

View File

@@ -0,0 +1,40 @@
{
"name": "Open-Archiver",
"slug": "open-archiver",
"categories": [
7
],
"date_created": "2025-09-30",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 3000,
"documentation": "https://docs.openarchiver.com/",
"config_path": "/opt/openarchiver/.env",
"website": "https://openarchiver.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/OpenArchiver.webp",
"description": "Open Archiver is a secure, self-hosted email archiving solution, and it's completely open source. Get an email archiver that enables full-text search across email and attachments. Create a permanent, searchable, and compliant mail archive from Google Workspace, Microsoft 35, and any IMAP server.",
"install_methods": [
{
"type": "default",
"script": "ct/open-archiver.sh",
"resources": {
"cpu": 2,
"ram": 3072,
"hdd": 8,
"os": "debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Data directory is: `/opt/openarchiver-data`. If you have a lot of email, you might consider mounting external storage to this directory.",
"type": "info"
}
]
}

View File

@@ -23,7 +23,7 @@
"ram": 8192,
"hdd": 25,
"os": "debian",
"version": "13"
"version": "12"
}
}
],

View File

@@ -12,7 +12,7 @@
"documentation": "https://docs.planka.cloud/",
"website": "https://planka.app/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/planka.webp",
"config_path": "/opt/planka/planka/.env",
"config_path": "/opt/planka/.env",
"description": "Planka is a powerful, project management platform that transforms how teams collaborate. Create projects with multiple boards, organize tasks with intuitive drag-and-drop cards, attach files, write rich markdown descriptions, set due dates, assign team members, and keep conversations flowing with comments and labels—all with seamless real-time updates and smart notifications.",
"install_methods": [
{

View File

@@ -23,7 +23,7 @@
"ram": 1024,
"hdd": 4,
"os": "debian",
"version": "13"
"version": "12"
}
}
],

View File

@@ -1,24 +1,214 @@
[
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.8.9-beta",
"date": "2025-10-17T21:51:21Z"
},
{
"name": "home-assistant/core",
"version": "2025.10.3",
"date": "2025-10-17T21:15:07Z"
},
{
"name": "coder/code-server",
"version": "v4.105.0",
"date": "2025-10-17T19:55:55Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.78.3-nightly",
"date": "2025-10-17T19:38:04Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.80",
"date": "2025-09-30T20:25:16Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.42.0",
"date": "2025-10-17T19:15:35Z"
},
{
"name": "forgejo/forgejo",
"version": "v13.0.1",
"date": "2025-10-17T18:54:16Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.4",
"date": "2025-10-17T18:13:24Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.29.0",
"date": "2025-10-17T17:03:33Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.83.2",
"date": "2025-10-07T14:30:15Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.6.1",
"date": "2025-10-17T15:21:59Z"
},
{
"name": "docker/compose",
"version": "v2.40.1",
"date": "2025-10-17T13:42:04Z"
},
{
"name": "mattermost/mattermost",
"version": "server/public/v0.1.21",
"date": "2025-10-16T09:46:16Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.50.26",
"date": "2025-10-17T12:09:59Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w42-4.14.0",
"date": "2025-10-16T12:13:42Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.307.1",
"date": "2025-10-17T08:41:04Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
"date": "2025-10-09T10:27:01Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v11.5.2",
"date": "2025-10-17T08:20:13Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.30.4",
"date": "2025-10-17T08:03:10Z"
},
{
"name": "juanfont/headscale",
"version": "v0.26.1",
"date": "2025-06-06T11:22:02Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.145",
"date": "2025-10-17T05:55:22Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.7.0",
"date": "2025-10-17T05:51:41Z"
},
{
"name": "diced/zipline",
"version": "v4.3.2",
"date": "2025-10-17T04:13:23Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-10-17T00:27:08Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.22.8",
"date": "2025-10-16T23:57:39Z"
},
{
"name": "Stirling-Tools/Stirling-PDF",
"version": "v1.5.0",
"date": "2025-10-16T23:14:45Z"
},
{
"name": "openhab/openhab-core",
"version": "5.0.2",
"date": "2025-10-16T21:27:35Z"
},
{
"name": "ollama/ollama",
"version": "v0.12.5",
"date": "2025-10-10T16:30:53Z"
"version": "v0.12.6-rc1",
"date": "2025-10-16T16:36:25Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-10-16T19:43:25Z"
},
{
"name": "minio/minio",
"version": "RELEASE.2025-10-15T17-29-55Z",
"date": "2025-10-16T19:33:51Z"
},
{
"name": "keycloak/keycloak",
"version": "26.4.1",
"date": "2025-10-16T07:21:53Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.98.0-rc.1",
"date": "2025-10-16T17:49:50Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.34",
"date": "2025-10-16T16:55:58Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.2.8",
"date": "2025-10-16T14:21:48Z"
},
{
"name": "esphome/esphome",
"version": "2025.10.1",
"date": "2025-10-16T10:00:10Z"
},
{
"name": "rcourtman/Pulse",
"version": "v4.24.0",
"date": "2025-10-16T09:08:47Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.4.0",
"date": "2025-10-16T07:20:34Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "cloudreve/cloudreve",
"version": "4.9.2",
"date": "2025-10-16T03:24:44Z"
},
{
"name": "outline/outline",
"version": "v1.0.0-test8",
"date": "2025-10-16T01:32:14Z"
},
{
"name": "inventree/InvenTree",
"version": "1.0.6",
"date": "2025-10-15T22:10:17Z"
},
{
"name": "openhab/openhab-core",
"version": "4.3.8",
"date": "2025-10-15T20:28:39Z"
},
{
"name": "runtipi/runtipi",
"version": "nightly",
"date": "2025-10-14T19:51:52Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.47.1",
@@ -44,31 +234,6 @@
"version": "v5.9.0",
"date": "2025-10-15T18:27:56Z"
},
{
"name": "pocketbase/pocketbase",
"version": "v0.30.3",
"date": "2025-10-15T18:25:36Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.28.0",
"date": "2025-10-15T16:18:36Z"
},
{
"name": "zwave-js/zwave-js-ui",
"version": "v11.5.0",
"date": "2025-10-15T16:00:17Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.22.7",
"date": "2025-10-15T13:30:47Z"
},
{
"name": "linkwarden/linkwarden",
"version": "v2.13.1",
@@ -89,11 +254,6 @@
"version": "jenkins-2.528.1",
"date": "2025-10-15T12:51:20Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.10",
"date": "2025-10-15T12:48:06Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "7.0.0-beta.5",
@@ -109,20 +269,10 @@
"version": "v0.14.1",
"date": "2024-08-29T22:32:51Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.307.0",
"date": "2025-10-15T11:13:27Z"
},
{
"name": "crowdsecurity/crowdsec",
"version": "v1.7.0",
"date": "2025-09-01T10:10:34Z"
},
{
"name": "mattermost/mattermost",
"version": "v10.12.1",
"date": "2025-10-15T08:15:09Z"
"version": "v1.7.1",
"date": "2025-10-15T10:44:03Z"
},
{
"name": "openobserve/openobserve",
@@ -134,36 +284,11 @@
"version": "2.1.2",
"date": "2025-10-15T06:51:32Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.80",
"date": "2025-09-30T20:25:16Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.134",
"date": "2025-10-15T05:52:51Z"
},
{
"name": "esphome/esphome",
"version": "2025.10.0",
"date": "2025-10-15T04:30:41Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-10-15T00:27:08Z"
},
{
"name": "seerr-team/seerr",
"version": "preview-seerr",
"date": "2025-10-14T22:21:33Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.78.0.rc.3",
"date": "2025-10-14T21:41:36Z"
},
{
"name": "apache/cassandra",
"version": "5.0.6-tentative",
@@ -189,11 +314,6 @@
"version": "v1.88.4",
"date": "2025-10-14T17:57:52Z"
},
{
"name": "rcourtman/Pulse",
"version": "issue-551",
"date": "2025-10-14T17:44:44Z"
},
{
"name": "plankanban/planka",
"version": "planka-1.1.0",
@@ -219,21 +339,6 @@
"version": "n8n@1.115.3",
"date": "2025-10-14T14:40:17Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.50.24",
"date": "2025-10-14T09:04:27Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "cloudreve/cloudreve",
"version": "4.9.1",
"date": "2025-10-14T02:56:21Z"
},
{
"name": "Prowlarr/Prowlarr",
"version": "v2.0.5.5160",
@@ -249,11 +354,6 @@
"version": "v10.10.7",
"date": "2025-04-05T19:14:59Z"
},
{
"name": "outline/outline",
"version": "v1.0.0-2",
"date": "2025-10-13T20:23:43Z"
},
{
"name": "hargata/lubelog",
"version": "v1.5.3",
@@ -284,16 +384,6 @@
"version": "v0.29.0-rc.0",
"date": "2025-10-10T01:13:27Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.97.1",
"date": "2025-10-13T07:42:50Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.3.3",
"date": "2025-10-13T07:17:02Z"
},
{
"name": "moghtech/komodo",
"version": "v1.19.5",
@@ -314,11 +404,6 @@
"version": "v5.0.85",
"date": "2025-10-12T19:55:18Z"
},
{
"name": "booklore-app/booklore",
"version": "v1.6.0",
"date": "2025-10-12T16:09:29Z"
},
{
"name": "ellite/Wallos",
"version": "v4.4.1",
@@ -344,31 +429,16 @@
"version": "v0.10.4",
"date": "2025-10-11T19:53:39Z"
},
{
"name": "Stirling-Tools/Stirling-PDF",
"version": "v1.4.0",
"date": "2025-10-11T18:16:32Z"
},
{
"name": "duplicati/duplicati",
"version": "v2.1.2.3-2.1.2.3_beta_2025-10-11",
"date": "2025-10-11T06:49:43Z"
},
{
"name": "home-assistant/core",
"version": "2025.10.2",
"date": "2025-10-10T21:20:11Z"
},
{
"name": "0xERR0R/blocky",
"version": "v0.27.0",
"date": "2025-10-10T20:11:48Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.41.0",
"date": "2025-10-10T19:15:38Z"
},
{
"name": "getumbrel/umbrel",
"version": "1.4.2",
@@ -404,11 +474,6 @@
"version": "e6.0.1-alpha.1",
"date": "2025-10-10T06:57:48Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v25.4",
"date": "2025-10-09T10:27:01Z"
},
{
"name": "mealie-recipes/mealie",
"version": "v3.3.2",
@@ -434,21 +499,11 @@
"version": "v25.7.1",
"date": "2025-10-09T15:42:11Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w41-4.14.0",
"date": "2025-10-03T18:56:57Z"
},
{
"name": "silverbulletmd/silverbullet",
"version": "2.1.9",
"date": "2025-10-09T13:57:14Z"
},
{
"name": "tobychui/zoraxy",
"version": "v3.2.7",
"date": "2025-10-09T12:50:53Z"
},
{
"name": "glpi-project/glpi",
"version": "11.0.1",
@@ -519,11 +574,6 @@
"version": "1.23.5",
"date": "2025-10-08T07:31:37Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.33",
"date": "2025-10-07T21:20:37Z"
},
{
"name": "pelican-dev/wings",
"version": "v1.0.0-beta18",
@@ -534,21 +584,11 @@
"version": "v0.15.1",
"date": "2025-10-07T20:30:56Z"
},
{
"name": "coder/code-server",
"version": "v4.104.3",
"date": "2025-10-07T17:42:11Z"
},
{
"name": "VictoriaMetrics/VictoriaMetrics",
"version": "pmm-6401-v1.127.0",
"date": "2025-10-07T14:31:32Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.83.2",
"date": "2025-10-07T14:30:15Z"
},
{
"name": "thecfu/scraparr",
"version": "v2.2.5",
@@ -574,11 +614,6 @@
"version": "v2.2.2",
"date": "2025-10-06T21:31:07Z"
},
{
"name": "grokability/snipe-it",
"version": "v8.3.3",
"date": "2025-10-06T19:57:17Z"
},
{
"name": "TwiN/gatus",
"version": "v5.26.0",
@@ -634,16 +669,6 @@
"version": "2.520",
"date": "2025-10-05T00:51:34Z"
},
{
"name": "gtsteffaniak/filebrowser",
"version": "v0.8.8-beta",
"date": "2025-10-04T15:56:29Z"
},
{
"name": "docker/compose",
"version": "v2.40.0",
"date": "2025-10-03T12:56:38Z"
},
{
"name": "redis/redis",
"version": "8.2.2",
@@ -659,11 +684,6 @@
"version": "v25.10.0",
"date": "2025-10-02T11:34:39Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.6.0",
"date": "2025-10-01T18:12:07Z"
},
{
"name": "Koenkk/zigbee2mqtt",
"version": "2.6.2",
@@ -799,11 +819,6 @@
"version": "1.2.39",
"date": "2025-09-25T15:57:02Z"
},
{
"name": "forgejo/forgejo",
"version": "v14.0.0-dev",
"date": "2025-09-25T13:19:45Z"
},
{
"name": "rclone/rclone",
"version": "v1.71.1",
@@ -974,21 +989,11 @@
"version": "v2.16.0",
"date": "2025-09-09T01:05:45Z"
},
{
"name": "diced/zipline",
"version": "v4.3.1",
"date": "2025-09-08T22:26:23Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.18.4",
"date": "2025-09-07T23:57:32Z"
},
{
"name": "minio/minio",
"version": "RELEASE.2025-09-07T16-13-09Z",
"date": "2025-09-07T18:53:04Z"
},
{
"name": "CrazyWolf13/streamlink-webui",
"version": "0.6",
@@ -1284,11 +1289,6 @@
"version": "v0.8.4",
"date": "2025-06-10T07:57:14Z"
},
{
"name": "juanfont/headscale",
"version": "v0.26.1",
"date": "2025-06-06T11:22:02Z"
},
{
"name": "release-argus/Argus",
"version": "0.26.3",

View File

@@ -14,7 +14,7 @@ network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y \
$STD apt install -y \
git \
apache2 \
php8.4-{apcu,cli,common,curl,gd,ldap,mysql,xmlrpc,xml,mbstring,bcmath,intl,zip,redis,bz2,soap} \
@@ -156,6 +156,7 @@ customize
msg_info "Cleaning up"
rm -rf /opt/glpi/install
rm -rf /opt/glpi-${RELEASE}.tgz
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -16,7 +16,8 @@ update_os
msg_info "Installing Dependencies"
$STD apt install -y \
build-essential \
ca-certificates
ca-certificates \
python3-setuptools
msg_ok "Installed Dependencies"
NODE_VERSION="22" setup_nodejs

View File

@@ -13,6 +13,8 @@ setting_up_container
network_check
update_os
setup_go
msg_info "Installing Dependencies"
$STD apt update
$STD apt -y install \
@@ -33,57 +35,42 @@ $STD apt install -y \
python3-certbot \
python3-certbot-dns-cloudflare
$STD pip3 install --break-system-packages certbot-dns-multi
$STD python3 -m venv /opt/certbot/
msg_ok "Installed Python Dependencies"
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
msg_info "Installing Openresty"
curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg
echo -e "deb http://openresty.org/package/debian bullseye openresty" >/etc/apt/sources.list.d/openresty.list
case "$VERSION" in
trixie)
echo -e "deb http://openresty.org/package/debian bookworm openresty" >/etc/apt/sources.list.d/openresty.list
;;
*)
echo -e "deb http://openresty.org/package/debian $VERSION openresty" >/etc/apt/sources.list.d/openresty.list
;;
esac
$STD apt update
$STD apt -y install openresty
msg_ok "Installed Openresty"
msg_info "Installing Node.js"
$STD bash <(curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh)
source ~/.bashrc
$STD nvm install 16.20.2
ln -sf /root/.nvm/versions/node/v16.20.2/bin/node /usr/bin/node
msg_ok "Installed Node.js"
msg_info "Installing pnpm"
$STD npm install -g pnpm@8.15
msg_ok "Installed pnpm"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
grep "tag_name" |
awk '{print substr($2, 3, length($2)-4) }')
read -r -p "${TAB3}Would you like to install an older version (v2.10.4)? <y/N> " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Downloading Nginx Proxy Manager v2.10.4"
curl -fsSL "https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v2.10.4" | tar -xz
cd ./nginx-proxy-manager-2.10.4
msg_ok "Downloaded Nginx Proxy Manager v2.10.4"
else
msg_info "Downloading Nginx Proxy Manager v${RELEASE}"
curl -fsSL "https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE}" | tar -xz
cd ./nginx-proxy-manager-"${RELEASE}"
msg_ok "Downloaded Nginx Proxy Manager v${RELEASE}"
fi
msg_info "Setting up Environment"
ln -sf /usr/bin/python3 /usr/bin/python
ln -sf /usr/bin/certbot /opt/certbot/bin/certbot
ln -sf /usr/bin/certbot /usr/local/bin/certbot
ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx
ln -sf /usr/local/openresty/nginx/ /etc/nginx
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"2.10.4\"|" backend/package.json
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"2.10.4\"|" frontend/package.json
else
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" backend/package.json
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" frontend/package.json
fi
sed -i 's+^daemon+#daemon+g' docker/rootfs/etc/nginx/nginx.conf
NGINX_CONFS=$(find "$(pwd)" -type f -name "*.conf")
for NGINX_CONF in $NGINX_CONFS; do
@@ -185,7 +172,6 @@ customize
msg_info "Starting Services"
sed -i 's/user npm/user root/g; s/^pid/#pid/g' /usr/local/openresty/nginx/conf/nginx.conf
sed -r -i 's/^([[:space:]]*)su npm npm/\1#su npm npm/g;' /etc/logrotate.d/nginx-proxy-manager
sed -i 's/include-system-site-packages = false/include-system-site-packages = true/g' /opt/certbot/pyvenv.cfg
systemctl enable -q --now openresty
systemctl enable -q --now npm
msg_ok "Started Services"

View File

@@ -0,0 +1,124 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://openarchiver.com/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing dependendencies"
$STD apt install -y valkey
msg_ok "Installed dependendencies"
NODE_VERSION="22" NODE_MODULE="pnpm" setup_nodejs
PG_VERSION="17" setup_postgresql
fetch_and_deploy_gh_release "meilisearch" "meilisearch/meilisearch" "binary"
fetch_and_deploy_gh_release "openarchiver" "LogicLabs-OU/OpenArchiver" "tarball"
JWT_KEY="$(openssl rand -hex 32)"
SECRET_KEY="$(openssl rand -hex 32)"
IP_ADDR=$(hostname -I | awk '{print $1}')
msg_info "Setting up PostgreSQL"
DB_NAME="openarchiver_db"
DB_USER="openarchiver"
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-18)"
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC';"
{
echo "Open Archiver DB Credentials"
echo "Database Name: $DB_NAME"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
} >>~/openarchiver.creds
msg_ok "Set up PostgreSQL"
msg_info "Configuring MeiliSearch"
curl -fsSL https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml -o /etc/meilisearch.toml
MASTER_KEY=$(openssl rand -base64 12)
sed -i \
-e 's|^env =.*|env = "production"|' \
-e "s|^# master_key =.*|master_key = \"$MASTER_KEY\"|" \
-e 's|^db_path =.*|db_path = "/var/lib/meilisearch/data"|' \
-e 's|^dump_dir =.*|dump_dir = "/var/lib/meilisearch/dumps"|' \
-e 's|^snapshot_dir =.*|snapshot_dir = "/var/lib/meilisearch/snapshots"|' \
-e 's|^# no_analytics = true|no_analytics = true|' \
-e 's|^http_addr =.*|http_addr = "127.0.0.1:7700"|' \
/etc/meilisearch.toml
cat <<EOF >/etc/systemd/system/meilisearch.service
[Unit]
Description=Meilisearch
After=network.target
[Service]
ExecStart=/usr/bin/meilisearch --config-file-path /etc/meilisearch.toml
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now meilisearch
sleep 5
msg_ok "Configured MeiliSearch"
msg_info "Setting up Open Archiver"
mkdir -p /opt/openarchiver-data
cd /opt/openarchiver
cp .env.example .env
sed -i "s|^NODE_ENV=.*|NODE_ENV=production|g" /opt/openarchiver/.env
sed -i "s|^POSTGRES_DB=.*|POSTGRES_DB=openarchiver_db|g" /opt/openarchiver/.env
sed -i "s|^POSTGRES_USER=.*|POSTGRES_USER=openarchiver|g" /opt/openarchiver/.env
sed -i "s|^POSTGRES_PASSWORD=.*|POSTGRES_PASSWORD=$DB_PASS|g" /opt/openarchiver/.env
sed -i "s|^DATABASE_URL=.*|DATABASE_URL=\"postgresql://openarchiver:$DB_PASS@localhost:5432/openarchiver_db\"|g" /opt/openarchiver/.env
sed -i "s|^MEILI_HOST=.*|MEILI_HOST=http://localhost:7700|g" /opt/openarchiver/.env
sed -i "s|^MEILI_MASTER_KEY=.*|MEILI_MASTER_KEY=$MASTER_KEY|g" /opt/openarchiver/.env
sed -i "s|^REDIS_HOST=.*|REDIS_HOST=localhost|g" /opt/openarchiver/.env
sed -i "s|^REDIS_PASSWORD=.*|REDIS_PASSWORD=|g" /opt/openarchiver/.env
sed -i "s|^STORAGE_LOCAL_ROOT_PATH=.*|STORAGE_LOCAL_ROOT_PATH=/opt/openarchiver-data|g" /opt/openarchiver/.env
sed -i "s|^JWT_SECRET=.*|JWT_SECRET=$JWT_KEY|g" /opt/openarchiver/.env
sed -i "s|^ENCRYPTION_KEY=.*|ENCRYPTION_KEY=$SECRET_KEY|g" /opt/openarchiver/.env
sed -i "s|^TIKA_URL=.*|TIKA_URL=|g" /opt/openarchiver/.env
echo "ORIGIN=http://$IP_ADDR:3000" >> /opt/openarchiver/.env
$STD pnpm install --shamefully-hoist --frozen-lockfile --prod=false
$STD pnpm build
$STD pnpm db:migrate
msg_ok "Setup Open Archiver"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/openarchiver.service
[Unit]
Description=Open Archiver Service
After=network-online.target
[Service]
Type=simple
User=root
EnvironmentFile=/opt/openarchiver/.env
WorkingDirectory=/opt/openarchiver
ExecStart=/usr/bin/pnpm docker-start
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now openarchiver
msg_ok "Created Service"
motd_ssh
customize
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -22,8 +22,7 @@ $STD apt install -y \
optipng \
libpq-dev \
libmagic-dev \
mime-support \
libzbar0 \
libzbar0t64 \
poppler-utils \
default-libmysqlclient-dev \
automake \
@@ -31,37 +30,22 @@ $STD apt install -y \
pkg-config \
libtiff-dev \
libpng-dev \
libleptonica-dev
libleptonica-dev \
unpaper \
icc-profiles-free \
qpdf \
libleptonica6 \
libxml2 \
pngquant \
zlib1g \
tesseract-ocr \
tesseract-ocr-eng \
ghostscript
msg_ok "Installed Dependencies"
PG_VERSION="16" setup_postgresql
PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "paperless" "paperless-ngx/paperless-ngx" "prebuild" "latest" "/opt/paperless" "paperless*tar.xz"
fetch_and_deploy_gh_release "jbig2enc" "ie13/jbig2enc" "tarball" "latest" "/opt/jbig2enc"
setup_gs
msg_info "Installing OCR Dependencies (Patience)"
$STD apt install -y \
unpaper \
icc-profiles-free \
qpdf \
liblept5 \
libxml2 \
pngquant \
zlib1g \
tesseract-ocr \
tesseract-ocr-eng
msg_ok "Installed OCR Dependencies"
msg_info "Setup JBIG2"
cd /opt/jbig2enc
$STD bash ./autogen.sh
$STD bash ./configure
$STD make
$STD make install
cd /
rm -rf /opt/jbig2enc
msg_ok "Installed JBIG2"
msg_info "Setting up PostgreSQL database"
DB_NAME=paperlessdb
@@ -126,7 +110,11 @@ $STD uv run python -m nltk.downloader -d /usr/share/nltk_data snowball_data
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data stopwords
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt_tab || \
$STD uv run python -m nltk.downloader -d /usr/share/nltk_data punkt
sed -i -e 's/rights="none" pattern="PDF"/rights="read|write" pattern="PDF"/' /etc/ImageMagick-6/policy.xml
for policy_file in /etc/ImageMagick-6/policy.xml /etc/ImageMagick-7/policy.xml; do
if [[ -f "$policy_file" ]]; then
sed -i -e 's/rights="none" pattern="PDF"/rights="read|write" pattern="PDF"/' "$policy_file"
fi
done
msg_ok "Installed Natural Language Toolkit"
msg_info "Creating Services"

View File

@@ -37,7 +37,7 @@ msg_info "Installing PhotoPrism (Patience)"
mkdir -p /opt/photoprism/{cache,config,photos,storage,temp}
mkdir -p /opt/photoprism/photos/{originals,import}
mkdir -p /opt/photoprism_backups
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-$(lsb_release -cs)-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
LIBHEIF_URL=$(curl -fsSL "https://dl.photoprism.app/dist/libheif/" | grep -oP "libheif-bookworm-amd64-v[0-9\.]+\.tar\.gz" | sort -V | tail -n 1)
curl -fsSL "https://dl.photoprism.app/dist/libheif/$LIBHEIF_URL" -o /tmp/libheif.tar.gz
tar -xzf /tmp/libheif.tar.gz -C /usr/local
ldconfig

View File

@@ -14,9 +14,9 @@ network_check
update_os
msg_info "Installing Proxmox Backup Server"
curl -fsSL "https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg" -o "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg"
curl -fsSL "https://enterprise.proxmox.com/debian/proxmox-release-trixie.gpg" -o "/etc/apt/trusted.gpg.d/proxmox-release-trixie.gpg"
cat <<EOF >>/etc/apt/sources.list
deb http://download.proxmox.com/debian/pbs bookworm pbs-no-subscription
deb http://download.proxmox.com/debian/pbs trixie pbs-no-subscription
EOF
$STD apt update
export DEBIAN_FRONTEND=noninteractive

View File

@@ -17,7 +17,7 @@ update_os
msg_info "Installing Dependencies"
$STD apt install -y \
diffutils \
policykit-1
polkitd
msg_ok "Installed Dependencies"
msg_info "Creating User"

View File

@@ -29,6 +29,10 @@ $STD npm install
cp .env.example .env
mkdir -p data
chmod 755 data
$STD npx prisma generate
$STD npx prisma migrate deploy
$STD npm run build
msg_ok "Installed PVE Scripts local"

View File

@@ -37,7 +37,7 @@ curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/$RELEASE/spoolm
$STD unzip spoolman.zip -d spoolman
rm -rf spoolman.zip
cd spoolman
$STD pip3 install -r requirements.txt
$STD pip3 install --upgrade --ignore-installed -r requirements.txt
curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env"
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
msg_ok "Installed Spoolman"

View File

@@ -17,8 +17,8 @@ msg_info "Installing Dependencies"
curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
cat <<EOF | sudo tee /etc/apt/sources.list.d/microsoft-prod.sources >/dev/null
Types: deb
URIs: https://packages.microsoft.com/debian/13/prod/
Suites: trixie
URIs: https://packages.microsoft.com/debian/12/prod/
Suites: bookworm
Components: main
Signed-By: /usr/share/keyrings/microsoft-prod.gpg
EOF

View File

@@ -204,7 +204,13 @@ You normally need a valid subscription for this.
Disable it (recommended)?" 14 58 2 "yes" " " "no" " " 3>&2 2>&1 1>&3)
case $CHOICE in
yes)
sed -i '/pbs-enterprise/ s/^/# /' /etc/apt/sources.list.d/pbs-enterprise.sources
msg_info "Disabling 'pbs-enterprise' repository"
# Use Enabled: false instead of commenting to avoid malformed entry
if grep -q "^Enabled:" /etc/apt/sources.list.d/pbs-enterprise.sources 2>/dev/null; then
sed -i 's/^Enabled:.*/Enabled: false/' /etc/apt/sources.list.d/pbs-enterprise.sources
else
echo "Enabled: false" >>/etc/apt/sources.list.d/pbs-enterprise.sources
fi
msg_ok "Disabled 'pbs-enterprise' repository"
;;
no)
@@ -213,11 +219,12 @@ Disable it (recommended)?" 14 58 2 "yes" " " "no" " " 3>&2 2>&1 1>&3)
esac
else
cat >/etc/apt/sources.list.d/pbs-enterprise.sources <<EOF
# Types: deb
# URIs: https://enterprise.proxmox.com/debian/pbs
# Suites: trixie
# Components: pbs-enterprise
# Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Types: deb
URIs: https://enterprise.proxmox.com/debian/pbs
Suites: trixie
Components: pbs-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Enabled: false
EOF
msg_ok "Added 'pbs-enterprise' repository (disabled)"
fi
@@ -239,11 +246,12 @@ EOF
# --- Test repo (pbs-test, renamed) ---
if ! component_exists_in_sources "pbs-test"; then
cat >/etc/apt/sources.list.d/pbs-test.sources <<EOF
# Types: deb
# URIs: http://download.proxmox.com/debian/pbs
# Suites: trixie
# Components: pbs-test
# Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Types: deb
URIs: http://download.proxmox.com/debian/pbs
Suites: trixie
Components: pbs-test
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Enabled: false
EOF
msg_ok "Added 'pbs-test' repository (disabled)"
else

View File

@@ -289,11 +289,15 @@ EOF
msg_ok "Kept 'pve-enterprise' repository"
;;
disable)
msg_info "Disabling (commenting) 'pve-enterprise' repository"
# Comment out every non-comment line in the file that has 'pve-enterprise' in Components
msg_info "Disabling 'pve-enterprise' repository"
# Use Enabled: false instead of commenting to avoid malformed entry
for file in /etc/apt/sources.list.d/*.sources; do
if grep -q "Components:.*pve-enterprise" "$file"; then
sed -i '/^\s*Types:/,/^$/s/^\([^#].*\)$/# \1/' "$file"
if grep -q "^Enabled:" "$file"; then
sed -i 's/^Enabled:.*/Enabled: false/' "$file"
else
echo "Enabled: false" >>"$file"
fi
fi
done
msg_ok "Disabled 'pve-enterprise' repository"
@@ -346,10 +350,15 @@ EOF
msg_ok "Kept 'ceph enterprise' repository"
;;
disable)
msg_info "Disabling (commenting) 'ceph enterprise' repository"
msg_info "Disabling 'ceph enterprise' repository"
# Use Enabled: false instead of commenting to avoid malformed entry
for file in /etc/apt/sources.list.d/*.sources; do
if grep -q "enterprise.proxmox.com.*ceph" "$file"; then
sed -i '/^\s*Types:/,/^$/s/^\([^#].*\)$/# \1/' "$file"
if grep -q "^Enabled:" "$file"; then
sed -i 's/^Enabled:.*/Enabled: false/' "$file"
else
echo "Enabled: false" >>"$file"
fi
fi
done
msg_ok "Disabled 'ceph enterprise' repository"
@@ -472,7 +481,17 @@ EOF
;;
no)
msg_error "Selected no to Adding 'ceph package repositories'"
find /etc/apt/sources.list.d/ -type f \( -name "*.sources" -o -name "*.list" \) \
# Use Enabled: false for .sources files, comment for .list files
for file in /etc/apt/sources.list.d/*.sources; do
if grep -q "enterprise.proxmox.com.*ceph" "$file" 2>/dev/null; then
if grep -q "^Enabled:" "$file"; then
sed -i 's/^Enabled:.*/Enabled: false/' "$file"
else
echo "Enabled: false" >>"$file"
fi
fi
done
find /etc/apt/sources.list.d/ -type f -name "*.list" \
-exec sed -i '/enterprise.proxmox.com.*ceph/s/^/# /' {} \;
msg_ok "Disabled all Ceph Enterprise repositories"
;;
@@ -491,11 +510,12 @@ EOF
yes)
msg_info "Adding 'pve-test' repository (deb822, disabled)"
cat >/etc/apt/sources.list.d/pve-test.sources <<EOF
# Types: deb
# URIs: http://download.proxmox.com/debian/pve
# Suites: trixie
# Components: pve-test
# Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-test
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Enabled: false
EOF
msg_ok "Added 'pve-test' repository"
;;