Compare commits

...

9 Commits

Author SHA1 Message Date
CanbiZ (MickLesk)
e214d58b3e Update tools.func 2026-05-13 16:35:27 +02:00
MickLesk
d7d90fc3db Encode GitHub tag, refine pin logic, add Codeberg
Encode pinned GitHub tag slashes for API requests and avoid stripping a leading 'v' unless followed by a digit. Refactor pinned-version handling to match clean tags to raw tags, report missing pins, and set CHECK_UPDATE_RELEASE/messages appropriately. Add a new check_for_codeberg_release function to query Codeberg releases (uses jq, DNS check, handles legacy migration, pinned/latest comparison) so updates can be detected from Codeberg-hosted repos.
2026-05-13 16:20:58 +02:00
Michel Roegl-Brunner
d18d473583 Fixes #14435, Broken Manifold update (#14468) 2026-05-13 16:17:37 +02:00
community-scripts-pr-app[bot]
af529716b1 Update CHANGELOG.md (#14467)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-13 11:04:07 +00:00
community-scripts-pr-app[bot]
2c950db3ac Update CHANGELOG.md (#14466)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-13 11:03:37 +00:00
Slaviša Arežina
904f0bdd3c fix update (#14465) 2026-05-13 13:03:26 +02:00
CanbiZ (MickLesk)
de08fc45d4 fix(reactive-resume): fix PDF generation timeout in LXC containers (#14278) (#14416)
Two changes to resolve Puppeteer waitForFunction timeout (5000ms exceeded):

1. Use 127.0.0.1 instead of localhost for PRINTER_ENDPOINT to avoid
   potential IPv6 resolution issues in LXC containers where 'localhost'
   may resolve to ::1 while Chromium only listens on 127.0.0.1.

2. Add --no-zygote flag to the chromium-printer service. In LXC
   containers the Zygote process (used by Chrome for process forking)
   can fail silently, causing Puppeteer page rendering to hang until
   the printer timeout is exceeded.
2026-05-13 13:03:09 +02:00
community-scripts-pr-app[bot]
9e009c1dfd Update CHANGELOG.md (#14464)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-13 09:28:53 +00:00
James Myatt
03ca1543d9 (calibre-web) Add --no-sandbox for PDF conversion (#14461) 2026-05-13 11:28:17 +02:00
6 changed files with 39 additions and 20 deletions

View File

@@ -461,6 +461,16 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
</details>
## 2026-05-13
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- SoulSync: Fix update function [@tremor021](https://github.com/tremor021) ([#14465](https://github.com/community-scripts/ProxmoxVE/pull/14465))
- Reactive-Resume: fix PDF generation timeout in LXC containers [@MickLesk](https://github.com/MickLesk) ([#14416](https://github.com/community-scripts/ProxmoxVE/pull/14416))
- (calibre-web) Add --no-sandbox for PDF conversion [@jamesmyatt](https://github.com/jamesmyatt) ([#14461](https://github.com/community-scripts/ProxmoxVE/pull/14461))
## 2026-05-12
### 🆕 New Scripts

View File

@@ -55,9 +55,20 @@ function update_script() {
RUBY_VERSION=${RUBY_INSTALL_VERSION} RUBY_INSTALL_RAILS="true" HOME=/home/manyfold setup_ruby
msg_info "Installing Manyfold"
msg_info "Restoring Data"
rm -rf /opt/manyfold/app/{storage,tmp,config/credentials.yml.enc,config/master.key}
cp -r /opt/manyfold_storage_backup /opt/manyfold/app/storage 2>/dev/null || true
cp -r /opt/manyfold_tmp_backup /opt/manyfold/app/tmp 2>/dev/null || true
cp /opt/manyfold_credentials.yml.enc /opt/manyfold/app/config/credentials.yml.enc 2>/dev/null || true
cp /opt/manyfold_master.key /opt/manyfold/app/config/master.key 2>/dev/null || true
chown -R manyfold:manyfold {/home/manyfold,/opt/manyfold}
chown -R manyfold:manyfold /opt/manyfold
chown -R manyfold:manyfold /opt/manyfold/app/storage /opt/manyfold/app/tmp /opt/manyfold/app/config
rm -rf /opt/manyfold_storage_backup /opt/manyfold_tmp_backup /opt/manyfold_credentials.yml.enc /opt/manyfold_master.key
msg_ok "Restored Data"
msg_info "Installing Manyfold"
$STD npm install --global corepack
$STD corepack enable yarn
sudo -u manyfold bash -c '
source /opt/manyfold/.env
@@ -66,7 +77,6 @@ function update_script() {
cd /opt/manyfold/app
gem install bundler sidekiq foreman
bundle install
corepack enable yarn
corepack prepare '"$YARN_VERSION"' --activate
corepack use '"$YARN_VERSION"'
bin/rails db:migrate
@@ -74,16 +84,6 @@ function update_script() {
'
msg_ok "Installed Manyfold"
msg_info "Restoring Data"
rm -rf /opt/manyfold/app/{storage,tmp,config/credentials.yml.enc,config/master.key}
cp -r /opt/manyfold_storage_backup /opt/manyfold/app/storage 2>/dev/null || true
cp -r /opt/manyfold_tmp_backup /opt/manyfold/app/tmp 2>/dev/null || true
cp /opt/manyfold_credentials.yml.enc /opt/manyfold/app/config/credentials.yml.enc 2>/dev/null || true
cp /opt/manyfold_master.key /opt/manyfold/app/config/master.key 2>/dev/null || true
chown -R manyfold:manyfold /opt/manyfold/app/storage /opt/manyfold/app/tmp /opt/manyfold/app/config
rm -rf /opt/manyfold_storage_backup /opt/manyfold_tmp_backup /opt/manyfold_credentials.yml.enc /opt/manyfold_master.key
msg_ok "Restored Data"
msg_info "Restarting Services"
source /opt/manyfold/.env
export PATH="/home/manyfold/.rbenv/shims:/home/manyfold/.rbenv/bin:$PATH"

View File

@@ -44,7 +44,7 @@ function update_script() {
msg_info "Updating Python Dependencies"
cd /opt/soulsync
$STD uv venv --clear /opt/soulsync/.venv --python 3.11
$STD /opt/soulsync/.venv/bin/pip install -r requirements.txt
$STD uv pip install -r requirements.txt
msg_ok "Updated Python Dependencies"
mv /opt/soulsync-config.bak /opt/soulsync/config

View File

@@ -52,6 +52,7 @@ After=network.target
[Service]
Type=simple
User=root
Environment="QTWEBENGINE_CHROMIUM_FLAGS=--no-sandbox"
WorkingDirectory=/opt/calibre-web
ExecStart=/opt/calibre-web/.venv/bin/python /opt/calibre-web/cps.py
Restart=on-failure

View File

@@ -55,7 +55,7 @@ DATABASE_URL=postgresql://${PG_DB_USER}:${PG_DB_PASS}@localhost:5432/${PG_DB_NAM
AUTH_SECRET=${AUTH_SECRET}
# Printer (headless Chromium for PDF generation)
PRINTER_ENDPOINT=http://localhost:9222
PRINTER_ENDPOINT=http://127.0.0.1:9222
# Storage: uses local filesystem (/opt/reactive-resume/data) when S3 is not configured
# S3_ACCESS_KEY_ID=
@@ -92,7 +92,7 @@ After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/chromium --headless --disable-gpu --no-sandbox --disable-dev-shm-usage --remote-debugging-address=127.0.0.1 --remote-debugging-port=9222
ExecStart=/usr/bin/chromium --headless --disable-gpu --no-sandbox --no-zygote --disable-dev-shm-usage --remote-debugging-address=127.0.0.1 --remote-debugging-port=9222
Restart=always
RestartSec=5

View File

@@ -2394,11 +2394,12 @@ check_for_gh_release() {
# For pinned versions, query the specific release tag directly
if [[ -n "$pinned_version_in" ]]; then
local pinned_version_encoded="${pinned_version_in//\//%2F}"
http_code=$(curl -sSL --max-time 20 -w "%{http_code}" -o /tmp/gh_check.json \
-H 'Accept: application/vnd.github+json' \
-H 'X-GitHub-Api-Version: 2022-11-28' \
"${header_args[@]}" \
"https://api.github.com/repos/${source}/releases/tags/${pinned_version_in}" 2>/dev/null) || true
"https://api.github.com/repos/${source}/releases/tags/${pinned_version_encoded}" 2>/dev/null) || true
if [[ "$http_code" == "200" ]] && [[ -s /tmp/gh_check.json ]]; then
releases_json="[$(</tmp/gh_check.json)]"
@@ -2520,11 +2521,19 @@ check_for_gh_release() {
rm -f "${legacy_files[0]}"
fi
fi
current="${current#v}"
if [[ "$current" =~ ^v[0-9] ]]; then
current="${current:1}"
fi
# Pinned version handling
if [[ -n "$pinned_version_in" ]]; then
local pin_clean="${pinned_version_in#v}"
local pin_clean
if [[ "$pinned_version_in" =~ ^v[0-9] ]]; then
pin_clean="${pinned_version_in:1}"
else
pin_clean="$pinned_version_in"
fi
local match_raw=""
for i in "${!clean_tags[@]}"; do
if [[ "${clean_tags[$i]}" == "$pin_clean" ]]; then
@@ -2562,7 +2571,6 @@ check_for_gh_release() {
msg_ok "No update available: ${app} (${latest_clean})"
return 1
}
# ------------------------------------------------------------------------------
# Checks for new Codeberg release (latest tag).
#