Commit Graph

9 Commits

Author SHA1 Message Date
hugo bf815a847b fix(romm): resolve 403 Forbidden error on nginx mod_zip installation (#15134)
* Update Nginx installation and mod_zip configuration

Replaced nginx with nginx-extras and modified Nginx mod_zip installation to use the native Debian module.

* Update source URL for build functions in romm.sh

* Update install script URL in build.func

* Update romm-install.sh for Nginx and mod_zip installation

Updated the installation script to include Nginx and libpcre2-dev, and modified the process for installing the Nginx mod_zip module.

* Install Nginx mod_zip module and create symlinks

Add installation steps for Nginx mod_zip module.

* Modify Nginx installation to use custom modules path

Updated installation script to use a custom modules directory for Nginx.

* Install Nginx mod_zip without HTTP rewrite module

Removed unnecessary HTTP rewrite module from Nginx configuration.

* Simplify Nginx mod_zip installation script

Removed redundant installation of libpcre3-dev for Nginx mod_zip.

* Update romm-install.sh

* Remove temporary files after Nginx module installation

Clean up temporary files after installing the Nginx mod_zip module.

* Update source URL in romm.sh script

* Update install script URL to community repository

* fix(romm): replace getpagespeed repo with source compilation for mod_zip

The `getpagespeed` repository now requires a paid subscription, causing the RomM installation to fail with a 403 Forbidden error. Additionally, Debian 13 (Trixie) introduced an APT conflict between `libpcre3-dev` and `libpcre2-dev`.

This commit fixes the installation by:
- Removing the proprietary `getpagespeed` repository dependency.
- Replacing `libpcre3-dev` with `libpcre2-dev` to resolve APT conflicts on Debian 13.
- Downloading the `mod_zip` tarball directly from GitHub (avoiding `git clone`).
- Downloading the exact Nginx source code matching the installed APT version.
- Compiling the dynamic module (`ngx_http_zip_module.so`) using `--with-compat`.
- Placing the compiled module in a custom directory (`/etc/nginx/custom-modules/`) to bypass Debian's default symlink quirks.
- Cleaning up compilation files in `/tmp` to keep the container footprint small.

* migrate from nginx to angie

so dont need to then install nginx from tarball just to compile the zip module

---------

Co-authored-by: Sam Heinz <54530346+asylumexp@users.noreply.github.com>
2026-06-22 21:10:14 +02:00
Sam Heinz cf2252f548 [arm64] Port scripts between qdrant & snipeit to support arm64 (#15274) 2026-06-21 23:11:47 +02:00
CanbiZ (MickLesk) 7703edf4b6 RomM: remove nginx default.conf during installation (#14766) 2026-05-28 08:33:16 +02:00
CanbiZ (MickLesk) 4dc5dfb366 Add installation steps for Nginx mod_zip module (#14678) 2026-05-24 12:46:13 +02:00
Slaviša Arežina 9c44055709 Updated to match our starndard (#13956) 2026-04-23 15:50:26 +02:00
CanbiZ (MickLesk) 146cd312d5 RomM: Use ROMM_BASE_PATH from .env for symlinks and nginx config (#13666) 2026-04-11 23:55:28 +02:00
CanbiZ (MickLesk) dbdd891a99 several scripts: add additional github link in source (#12282)
* fix(error-handler): prevent silent() from re-enabling error handling during recovery

Root cause: silent() (core.func) unconditionally calls set -Eeuo pipefail
and trap 'error_handler' ERR after every command. When build_container()
intentionally disables error handling for its recovery section, any
intermediate call through silent()/ re-enables it. This causes the
grep/sed pipeline for missing_cmd extraction to trigger error_handler
(grep returns exit code 1 on no match + pipefail = fatal).

Fixes:
1. silent(): Save errexit state before disabling, only restore if it was
   active. Callers that intentionally disabled error handling (e.g.
   build_container recovery) are no longer silently re-enabled.

2. build.func: Add || true to missing_cmd grep pipeline as defense-in-depth
   against pipeline failure propagation.

3. build.func: Add explicit set +Eeuo pipefail / trap - ERR after
   post_update_to_api() call, before error classification grep/sed section.

4. build.func: Remove stale global combined_log variable from variables()
   that used a different path format (/tmp/install-SESSION-combined.log)
   than the actual local variable (/tmp/NSAPP-CTID-SESSION.log). The global
   was never written to and caused confusion when error_handler displayed it.

* Update build.func

* chore(install): add Github source links to all setup_nodejs scripts

52 install scripts had a project website in '# Source:' but no GitHub
link. Merged the GitHub repo URL into the Source header as:
  # Source: https://website.com/ | Github: https://github.com/OWNER/REPO

Repos sourced from fetch_and_deploy_gh_release calls, get_latest_github_release
calls, or known project repos for npm/pip installed apps.

Two scripts (fumadocs, pve-scripts-local) had no Source line at all —
added one. Shinobi skipped (GitLab-only, no GitHub repo).

* chore(install): add Github source links to all fetch_and_deploy scripts

77 additional install scripts had fetch_and_deploy_gh_release calls but
no GitHub link in the Source header. Merged the primary app repo into
the Source header as:
  # Source: https://website.com/ | Github: https://github.com/OWNER/REPO

Where multiple fetch_and_deploy calls existed (app + dependency), the
primary app repo was selected:
- ersatztv: ErsatzTV/ErsatzTV (not ffmpeg)
- firefly: firefly-iii/firefly-iii (not data-importer)
- komga: gotson/komga (not kepubify dep)
- sabnzbd: sabnzbd/sabnzbd (not par2cmdline-turbo dep)
- signoz: SigNoz/signoz (not otel-collector)
- tunarr: chrisbenincasa/tunarr (not ffmpeg dep)

Also fixed cosmos-install.sh double https:// in Source URL.

Skipped: autocaliweb (source already on codeberg, GitHub repos are deps only)

* revert: restore misc/build.func and misc/core.func to main state

These error-handler fixes belong to fix/error-handler-recovery, not to
this sources-only branch.

* chore(ct,tools): sync Source headers with install/ and add Github links to addon scripts
2026-02-24 15:11:53 +01:00
CanbiZ (MickLesk) 4e1ade4c28 bump various scripts from Node 22 to 24 (#12265)
* bump(node): Node 22 to 24 for Tier 1 projects

Bump Node.js from 22 to 24 in install and ct update scripts for projects
where upstream already uses Node 24 in their Dockerfile/package.json:

- Cross-seed (engines >=24, Dockerfile node:24-alpine)
- Matterbridge (engines >=24.0.0, Dockerfile node:24-trixie-slim)
- Manyfold (volta.node 24.13.0)
- Pangolin (Dockerfile node:24-alpine)
- ROMM (engines 24, nvm install 24)
- SnowShare (Dockerfile node:24-alpine)
- Verdaccio (engines >=18, Dockerfile node:24-alpine)

Also adds missing NODE_VERSION setup_nodejs calls to ct update scripts
for cross-seed, pangolin, romm, snowshare, and manyfold.

* formatting

* fix: pin NODE_VERSION for nodecast-tv and wealthfolio

nodecast-tv: NODE_VERSION=20 (upstream Dockerfile uses nodesource/setup_20.x)
wealthfolio: NODE_VERSION=20 (upstream Dockerfile uses node:20-alpine)

* ci: add weekly Node.js version drift check workflow

Scans all install scripts using setup_nodejs, fetches upstream
package.json (engines.node) and Dockerfile (FROM node:XX),
compares with our NODE_VERSION and opens/updates a GitHub issue
on mismatch. Runs weekly on Monday at 06:00 UTC.

* remove wf - seperate branch
2026-02-24 11:38:15 +01:00
push-app-to-main[bot] 26ba17c8c3 RomM (#11987)
* Add romm (ct)

* Update romm.sh

* Update romm-install.sh

* Revise author line in romm.sh

Updated author attribution format in romm.sh

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
Co-authored-by: CanbiZ (MickLesk) <47820557+MickLesk@users.noreply.github.com>
2026-02-16 12:48:37 +01:00