Commit Graph
100 Commits
Author SHA1 Message Date
CanbiZ (MickLesk)andGitHub 8917549436 endurain: Install pytz package during backend setup (#15014) 2026-06-09 17:16:12 +02:00
CanbiZ (MickLesk)andGitHub 5fd6f67a58 Refactor: Proxmox Backup Server - use deb822 (#15013) 2026-06-09 17:12:56 +02:00
3f619e4286 security: Fix HTTP to HTTPS for all package and repository downloads (#15009)
Co-authored-by: Security Fix <security@community-scripts.org>
2026-06-08 22:28:40 +02:00
0f37e30f28 security: Fix MITM RCE vulnerability in microcode scripts (CVE) (#15007)
Co-authored-by: Security Fix <security@community-scripts.org>
2026-06-08 22:28:17 +02:00
CanbiZ (MickLesk)andGitHub eab30076ca Navidrome: remove genereic filebrowser addon setup (#14991) 2026-06-07 22:56:12 +02:00
CanbiZ (MickLesk)andGitHub dc2193f4bb Immich: use actual installed PostgreSQL version for vchord package (#14989) 2026-06-07 22:55:53 +02:00
CanbiZ (MickLesk)andGitHub ccd36df35d ReactiveResume: Fix Service Path (#14926) 2026-06-04 13:44:05 +02:00
CanbiZ (MickLesk)andGitHub 370d164993 fix(jellyfin): install intel-igc deps before intel-opencl-icd to fix dependency order (#14927) 2026-06-04 12:22:41 +02:00
CanbiZ (MickLesk)andGitHub f679553c0f Update systemd service to use network-online.target 2026-06-02 15:02:50 +02:00
CanbiZ (MickLesk)andGitHub 1a63343a17 tools.func: add support for Rust installation profile in setup_rust (#14872) 2026-06-02 09:03:53 +02:00
CanbiZ (MickLesk)andGitHub aed34659c9 Kometa: also update Quickstart in update_script (#14529)
* Kometa: also update Quickstart in update_script

* Kometa: also update Quickstart in update_script
2026-06-01 15:41:36 +02:00
CanbiZ (MickLesk)andGitHub 58179050a8 Fix indentation in kan.sh for clarity 2026-06-01 12:11:55 +02:00
CanbiZ (MickLesk)andGitHub 955cb97a3b Update kan-install.sh 2026-06-01 12:11:34 +02:00
CanbiZ (MickLesk)andGitHub 04e618798e Update fetch_and_deploy_gh_tag to use 'latest' tag 2026-06-01 12:02:12 +02:00
CanbiZ (MickLesk)andGitHub fa238ddbdd kan: extend fetch_and_deploy_gh_tag to use 'latest' tag (#14853) 2026-06-01 11:44:28 +02:00
CanbiZ (MickLesk)andGitHub 5b6f8e2674 NginxProxymanager: set Certbot version in npm.service environment variable (2.15.0) (#14843) 2026-06-01 10:22:10 +02:00
CanbiZ (MickLesk)andGitHub 151cd6581f Fix Caddy configuration message placement 2026-06-01 07:52:49 +02:00
CanbiZ (MickLesk)andGitHub de7c00e285 Manyfold: regenerate Rails credentials on update to fix encryption mimatch (#14817) 2026-05-31 22:04:55 +02:00
CanbiZ (MickLesk)andGitHub 203131d042 PBS4-Upgrade: update current PBS3 packages before switching to Trixie repos (#14815) 2026-05-31 22:04:14 +02:00
CanbiZ (MickLesk)andGitHub 4da4a47eb7 Webtrees: use PHP CLI for initial setup instead of curl to setup wizard (#14818) 2026-05-31 12:54:34 +02:00
CanbiZ (MickLesk)andGitHub 8c0333151b Kima-Hub: use curl_with_retry for ML model downloads to fix timeout issues (#14816) 2026-05-31 12:53:56 +02:00
CanbiZ (MickLesk)andGitHub 19cd2b3dad Flatnotes: fix empty package name in pyproject.toml (#14814)
* Flatnotes: fix empty package name in pyproject.toml

* Flatnotes: fix empty package name in update script too
2026-05-30 23:48:30 +02:00
CanbiZ (MickLesk)andGitHub 7fea6cc9eb karakeep: add more hdd space (#14797) 2026-05-29 18:07:14 +02:00
CanbiZ (MickLesk)andGitHub 7703edf4b6 RomM: remove nginx default.conf during installation (#14766) 2026-05-28 08:33:16 +02:00
CanbiZ (MickLesk)andGitHub 32f1956023 Yamtrack: migrate to uv (#14767) 2026-05-28 08:33:02 +02:00
CanbiZ (MickLesk)andGitHub d64b9f6878 Open-Archiver: replace pnpm approve-builds --yes with --all (#14765) 2026-05-28 08:31:12 +02:00
CanbiZ (MickLesk)andGitHub edfa7c8c45 tools.func: better error diagnostics, consistent OS detection, setup function ordering (#14692)
* fix(tools): improve error diagnostics and actionable hints across install functions

- Add _diagnose_deb_failure() helper: extracts package metadata from failed .deb installs,
  detects PostgreSQL version conflicts (e.g., postgresql-16-vchord with PG17 active),
  lists unmet dependencies, and provides specific actionable hints
- Replace all 4 generic 'Both apt and dpkg installation failed' messages in
  fetch_and_deploy_{codeberg,gh,gl}_release and fetch_and_deploy_from_url with
  _diagnose_deb_failure() for targeted diagnostics
- install_packages_with_retry: on failure, check which packages are missing from
  configured repos and name them with a distribution-specific hint
- upgrade_packages_with_retry: add hint about held-back packages / apt-cache policy
- setup_postgresql: when PGDG repo is unavailable for trixie/forky/sid, show which
  distro PG version will be installed and warn that extension packages must match
- setup_deb822_repo: include GPG key URL and firewall hint in download failure message
- curl_download: add network/DNS hint to the failure message
- error_handler: add log-pattern analysis block after Node.js OOM detection that
  scans the last 60 log lines for 5 common failure patterns and emits msg_warn hints:
    * APT/dpkg dependency conflict (generic + PostgreSQL version mismatch)
    * APT GPG/signature verification failure (sqv, KEYEXPIRED, NO_PUBKEY)
    * Network/DNS failure (Could not resolve, Failed to fetch)
    * APT lock held by another process
    * Disk space exhaustion (ENOSPC)

* fix(tools): consolidate OS detection, add error hints, sort setup functions

- Replace all 13 manual /etc/os-release reads with get_os_info() across
  prepare_repository_setup, setup_hwaccel, setup_java, setup_mysql,
  setup_php, setup_postgresql, setup_clickhouse, install_packages_with_retry
- Add actionable Hint messages to 16 download/network failure paths:
  adminer, composer, ffmpeg (x2), go, ghostscript, imagemagick, rbenv,
  ruby-build, meilisearch-config, uv, yq, rust, apt-lock timeout,
  mongodb GPG, php keyring
- Replace 6 silent 'apt install || true' with msg_warn for optional packages:
  3x postgresql modules, ruby build deps, ssl-cert, docker-compose
- Sort all 'function setup_*' declarations into alphabetical order:
  clickhouse moved to after adminer, docker moved to after composer,
  meilisearch moved to after mariadb_db

* style(tools): unify all function declarations to name() { style

Remove 'function' keyword from 30 declarations to match the project convention
used in core.func, error_handler.func, and all other .func files (POSIX-compatible name() { syntax)
2026-05-26 08:06:08 +02:00
CanbiZ (MickLesk)andGitHub 37649c1e0a fix(open-archiver): approve pnpm build scripts before build:oss (#14711) 2026-05-26 08:04:15 +02:00
CanbiZ (MickLesk)andGitHub 48b34d4c2e fix(add-iptag): use qm set for VM tags to handle snapshot sections correctly (#14713) 2026-05-26 08:03:57 +02:00
CanbiZ (MickLesk)andGitHub 9aa76e8ea4 fix(netdata): extend PVE version support to 9.x (#14714) 2026-05-26 08:03:43 +02:00
CanbiZ (MickLesk)andGitHub 35cd953ed7 fix(docuseal): read Ruby version from Gemfile, upgrade on update if needed (#14715) 2026-05-26 08:03:20 +02:00
CanbiZ (MickLesk)andGitHub f9f21c1b79 fix(birdnet-go): install libonnxruntime.so from release tarball (#14716) 2026-05-26 08:02:55 +02:00
CanbiZ (MickLesk)andGitHub 9ec0864d32 fix(tools): replace raw GitHub API curl calls with get_latest_github_release (#14690) 2026-05-25 08:50:00 +02:00
CanbiZ (MickLesk)andGitHub 514fece0df Kernel-Clean: detect meta-packages and fix silent removal failures (#14674) 2026-05-25 08:49:25 +02:00
CanbiZ (MickLesk)andGitHub 4dc5dfb366 Add installation steps for Nginx mod_zip module (#14678) 2026-05-24 12:46:13 +02:00
CanbiZ (MickLesk)andGitHub 7cfa47d138 fix(isponsorblocktv): detect CPU capabilities to select compatible binary (#14677)
Instead of hard-failing when AVX is not present, detect whether the host
CPU supports AVX + AVX2 + MOVBE (x86-64-v3 microarchitecture level) and
select the appropriate upstream binary accordingly:

- iSponsorBlockTV-x86_64-linux     → modern CPUs (AVX/AVX2/MOVBE)
- iSponsorBlockTV-x86_64-linux-v1  → any x86_64 CPU (fallback)

The same detection logic is applied in update_script() so updates
stay consistent with the initially installed binary type.

Fixes: https://github.com/community-scripts/ProxmoxVE/issues/14660
Upstream: dmunozv04/iSponsorBlockTV#463
2026-05-24 12:26:18 +02:00
CanbiZ (MickLesk)andGitHub 8b80ab2534 Docmost: Fix duplicate STORAGE_DRIVER (#14645) 2026-05-22 11:05:53 +02:00
CanbiZ (MickLesk)andGitHub 2fa9ae03a1 core: suppress MOTD for non-interactive shells (#14638) 2026-05-22 09:08:13 +02:00
CanbiZ (MickLesk)andGitHub 82abeac9fb SoulSync: setup Node v22 and build WebUI (#14639) 2026-05-22 09:07:28 +02:00
CanbiZ (MickLesk)andGitHub 35953b6d51 Refactor: Dispatcharr (#14313) 2026-05-22 09:06:48 +02:00
CanbiZ (MickLesk)andGitHub 51468821f9 Profilarr: pin Deno version to v2.7.5 (#14632)
* Profilarr: pin Deno version to v2.7.5

* Update Deno version check and deployment

Pin Deno version to 2.7.5 to address known issue.
2026-05-22 08:51:43 +02:00
CanbiZ (MickLesk)andGitHub 1cdfdea583 Proxmox VE 9.2 support (#14624) 2026-05-21 19:04:47 +02:00
CanbiZ (MickLesk)andGitHub 62b4b5f260 Profilarr v2: Update and Refactor whole Script (#14584) 2026-05-20 19:19:08 +02:00
CanbiZ (MickLesk)andGitHub 59d4ab70c3 ReactiveResume: set correct WorkingDirectory for systemd service (#14579)
* fix(reactive-resume): set correct WorkingDirectory for systemd service

* fix(reactive-resume): update WorkingDirectory in service for existing installs
2026-05-19 08:49:54 +02:00
CanbiZ (MickLesk)andGitHub 7076d03ab3 Sparkyfitness: add missing nginx template variable substitutions (#14578)
* fix(sparkyfitness): add missing nginx template variable substitutions

* fix(sparkyfitness): regenerate nginx config during updates for existing installs
2026-05-19 08:34:52 +02:00
CanbiZ (MickLesk)andGitHub c874324f06 Wanderer: include dev dependencies during build (#14577)
* fix(wanderer): include dev dependencies during build

* fix(wanderer): remove --omit=dev from update script to allow npm run build
2026-05-19 08:34:28 +02:00
CanbiZ (MickLesk)andGitHub 4ffa551202 fix(whisparr): switch from nightly to stable GitHub release (#14581) 2026-05-19 08:21:07 +02:00
CanbiZ (MickLesk)andGitHub 3a5f4454e6 Pangolin: bump to 1.18.4, fix missing statusHistory migration (#14566)
* feat(pangolin): bump to 1.18.4, fix missing statusHistory migration

* fix(pangolin): remove redundant msg_info in migration check
2026-05-18 20:01:55 +02:00
CanbiZ (MickLesk)andGitHub f7a69ac92d tools.func: replace max-time with speed-limit stall detection in curl_download (#14545)
* tools.func: replace max-time with speed-limit stall detection in curl_download

* Refactor curl_download function for improved readability and remove unnecessary whitespace
2026-05-17 14:01:56 +02:00
CanbiZ (MickLesk)andGitHub 2a86c7e54e Homelable: replace passlib with bcrypt for password hashing (#14530) 2026-05-16 23:32:05 +02:00
CanbiZ (MickLesk)andGitHub 38b664fa85 Ollama/OpenWebUI: use fetch_and_deploy_gh_release and check_for_gh_release from tools.func (#14501) 2026-05-16 00:45:51 +02:00
CanbiZ (MickLesk)andGitHub 3b3ab1b8f9 OPNsense: replace undefined msg_warn with inline echo in alloc retry (#14500) 2026-05-16 00:45:10 +02:00
CanbiZ (MickLesk)andGitHub df37781e9a SearXNG: enable JSON format by default for API integrations (#14498) 2026-05-16 00:44:47 +02:00
CanbiZ (MickLesk)andGitHub 2448723d19 build.func: fall back to silent mode when no TTY or whiptail unavailable (#14497) 2026-05-16 00:44:27 +02:00
CanbiZ (MickLesk)andGitHub 02f5589ff5 Checkmk: detect OMD version suffix dynamically on update (#14496) 2026-05-16 00:43:48 +02:00
CanbiZ (MickLesk)andGitHub 0a81ff53fd tools.func: encode GitHub tag, refine pin logic, add Codeberg (#14473)
* 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.

* Update tools.func
2026-05-13 22:16:13 +02:00
CanbiZ (MickLesk)andGitHub 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
CanbiZ (MickLesk)andGitHub 1c7a925b31 termix hotfix nogroup 2026-05-12 19:39:09 +02:00
CanbiZ (MickLesk)andGitHub 41590d777e Termix: fix nginx pid path and log paths on update (#) (#14419)
- Replace outdated 'pid /app/nginx' deletion with proper replacement
  of 'pid /tmp/nginx/nginx.pid;' -> 'pid /run/nginx.pid;'
- Add sed to redirect error_log from /tmp/nginx/ to /var/log/nginx/
- Add sed to redirect access_log from /tmp/nginx/ to /var/log/nginx/

Fixes: nginx: open() '/tmp/nginx/nginx.pid' failed (2: No such file or directory)
2026-05-11 22:04:26 +02:00
CanbiZ (MickLesk)andGitHub 07abb105d0 Nginxproxymanager: restore NPM nginx.conf after OpenResty rebuid (#14421)
When OpenResty is rebuilt via 'make install', it overwrites
/usr/local/openresty/nginx/conf/nginx.conf with the stock OpenResty
default config, dropping all NPM-specific include directives. This
causes port 81 to stop listening and conf.d configs to be ignored.

After the build, restore the NPM nginx.conf from the deployed source,
re-apply daemon/include-path patches, then apply user/pid fixes.
2026-05-11 22:04:04 +02:00
CanbiZ (MickLesk)andGitHub b15e84e2ba Cronmaster: fix unexpected EOF in update_cronmaster script (#14420)
The heredoc used <<EOF (unquoted), causing the \ inside it
to be executed during installation. This embedded the entire cronmaster.sh
source (~250 lines) into the update script, which contained backtick-style
constructs that caused 'unexpected EOF while looking for matching backtick'
at line 44 when the update script was later run.

Use <<'EOF' so the literal \ text is written to the file.
2026-05-11 22:03:46 +02:00
CanbiZ (MickLesk)andGitHub b6c78b7ff0 feat(investbrain): add commented reverse proxy config hints to .env (#14418) (#14422) 2026-05-11 22:03:14 +02:00
CanbiZ (MickLesk)andGitHub ebaa526560 core: support optional POST_INSTALL_SCRIPT (var_post_install_script) hook (#14160) 2026-05-11 15:54:38 +02:00
CanbiZ (MickLesk)andGitHub d7b0c2f4c6 karakeep: Fix SERVER_VERSION update (#14378) 2026-05-10 16:24:40 +02:00
CanbiZ (MickLesk)andGitHub 6217669d66 FlowiseAI: Migrate to pnpm (#14344) 2026-05-09 23:44:04 +02:00
CanbiZ (MickLesk)andGitHub 36f8e1f320 ERPNext: start bench Redis services before bench new-site (#14343) 2026-05-09 08:20:34 +02:00
CanbiZ (MickLesk)andGitHub d996b5a719 fix(tools.func): fix meilisearch import-dump background process handling (#14341) 2026-05-08 23:32:48 +02:00
CanbiZ (MickLesk)andGitHub 90bc1ae1e5 fix(wishlist): pin pnpm to v10 to match engine requirements (#14342) 2026-05-08 23:32:18 +02:00
CanbiZ (MickLesk)andGitHub 02eaf288bf tools.func: add setup_nltk as new function (#14314) 2026-05-08 15:39:20 +02:00
CanbiZ (MickLesk)andGitHub a3844707ad Move threadfin-app to /opt/threadfin
Move the threadfin-app to the correct directory after deployment.
2026-05-08 08:29:33 +02:00
CanbiZ (MickLesk)andGitHub 91fe10ec4b Move threadfin-app to /opt/threadfin
Move the threadfin-app to the correct directory after deployment.
2026-05-08 08:29:13 +02:00
CanbiZ (MickLesk)andGitHub cb7d9037fb termix: create /tmp/nginx before nginx -t (#14312) 2026-05-07 23:56:00 +02:00
CanbiZ (MickLesk)andGitHub 9d9d763e63 netbird-lxc: fix installation check (#14309) 2026-05-07 22:10:06 +02:00
CanbiZ (MickLesk)andGitHub 28ae38e502 databasus: Backup and secure configuration file (#14308) 2026-05-07 22:09:45 +02:00
3c02868add update-apps: some improvements (#14275)
* feat(update-apps): add var_continue_on_error and TERM=dumb fix

- Add var_continue_on_error=yes to skip failed containers instead
  of aborting all remaining updates. Useful for cron/unattended runs
  where one disabled or broken script should not stop others.
  Containers with backup still attempt restore on failure regardless.

- Set TERM=dumb when running pct exec to prevent whiptail from
  hanging when no TTY is available (e.g. cron jobs redirecting
  stdout/stderr). This causes whiptail to fail-fast instead of
  blocking indefinitely.

- Add var_continue_on_error to export_config_json, --help output,
  and usage examples (cron-style invocation example added).

* feat(update-apps): add var_dry_run to check updates without applying

Adds dry-run mode (var_dry_run=yes) that reports available updates for
all selected containers without modifying anything:

- Extracts GitHub source repo from the ct script header (# Source:)
- Resolves the version file name from check_for_gh_release app arg
- Reads current installed version from ~/.appname inside the container
- Queries GitHub API /releases/latest for comparison
- Outputs color-coded status: up-to-date (green), update available (yellow),
  or unknown (blue/yellow with reason)

Non-GitHub sources (Codeberg, custom URLs) are skipped with a notice.
Resource scaling is suppressed entirely during dry-run.

Example usage:
  var_container=all_running var_skip_confirm=yes var_dry_run=yes \
    bash -c "$(curl -fsSL .../update-apps.sh)"

* fix(update-apps): dry-run uses check_for_gh_release args, not Source header

The # Source: header can point to a different repo than what
check_for_gh_release actually queries (e.g. RustDesk uses
lejianwen fork, not official rustdesk repo).

Now parse both app name and source repo directly from the
check_for_gh_release call in the ct script:
  check_for_gh_release "appname" "owner/repo"

Also fix $HOME/.appname path expansion in pct exec context.

* fix issue on clear()

* feat(update-apps): add no-op clear wrapper to PATH for update scripts

Co-authored-by: Copilot <copilot@github.com>

* feat(update-apps): enhance error handling for unattended mode in resource checks

Co-authored-by: Copilot <copilot@github.com>

* feat(update-apps): implement structured logging and summary report for updates

Co-authored-by: Copilot <copilot@github.com>

* fix log issue

Co-authored-by: Copilot <copilot@github.com>

* feat(update-apps): enhance dry-run functionality and logging for container updates

Co-authored-by: Copilot <copilot@github.com>

* feat(update-apps): add dry-run completion message for better user feedback

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-07 15:53:22 +02:00
CanbiZ (MickLesk)andGitHub bf1c32ace8 pangolin: bump version to 1.18.3 (#14297)
* pangolin: bump version to 1.18.3

* Update PANGOLIN_VERSION to 1.18.3
2026-05-07 13:24:07 +02:00
CanbiZ (MickLesk)andGitHub 12eb19ae4c vm: update disk image URL for Ubuntu 25.04 (#14290) 2026-05-07 10:45:21 +02:00
CanbiZ (MickLesk)andGitHub 50b3c3ae7f fix(adguardhome-sync): replace ifconfig with hostname -I for IP detection (#14273)
ifconfig is not available on modern Debian systems (net-tools not
installed by default). Replace with hostname -I which is available
everywhere, with ip addr as fallback.

Fixes: #14257
2026-05-06 13:10:58 +02:00
CanbiZ (MickLesk)andGitHub 752fff3c8f fix(pelican-panel): create backup subdirectory before copying storage (#14274)
The update script tried to cp into /opt/backup/storage/app/ before
the directory existed, causing a 'Not a directory' error when
/opt/backup was previously a file or the subdirs were missing.
Add mkdir -p to ensure the target directory exists.

Fixes: #14268
2026-05-06 13:10:35 +02:00
CanbiZ (MickLesk)andGitHub 21c064464a fix(rustdeskserver): remove redundant else with undefined RELEASE variable (#14272)
The check_for_gh_release function already prints its own 'No update
available' message when the app is up to date. The else block using
${RELEASE} was redundant and caused an empty version string to be shown
(e.g. 'already at v').

Fixes: #14267
2026-05-06 13:09:05 +02:00
26b41d74ee tools.func get_latest_gh_tag - add pagination to find prefixed tags beyond first 50 (#14241)
Co-authored-by: MickLesk <mickey.leskowitz@levelbuild.com>
2026-05-04 22:13:49 +02:00
CanbiZ (MickLesk)andGitHub 75c5aa3d5d tools.func: add GitLab release check/fetch/deploy helpers (#14242) 2026-05-04 20:32:15 +02:00
d118f101d8 Databasus: update mongo-tools fallback to 100.16.1 and use now pnpm instead of npm ci (#14240)
Co-authored-by: MickLesk <mickey.leskowitz@levelbuild.com>
2026-05-04 18:35:02 +02:00
CanbiZ (MickLesk)andGitHub 08b1398e7b Refactor: PeaNUT for v6 (#14224) 2026-05-03 22:38:30 +02:00
CanbiZ (MickLesk)andGitHub cd6bd154d9 fix(pangolin): pin version, drop manual SQL, use upstream migrator (#14223) 2026-05-03 22:30:21 +02:00
CanbiZ (MickLesk)andGitHub 683231127c fix(pbs/pve): guard sed against missing /etc/apt/sources.list (#14222) 2026-05-03 22:29:40 +02:00
CanbiZ (MickLesk)andGitHub 9503db319c tools.func: add GitLab release check/fetch/deploy helpers (#14133) 2026-05-02 23:43:26 +02:00
CanbiZ (MickLesk)andGitHub 0190f4e7f1 opnsense-vm: retry pvesm alloc on transient zfs 'got timeout' errors (#14157) 2026-05-02 13:40:49 +02:00
CanbiZ (MickLesk)andGitHub 553925b8cc ImmichFrame: keep dotnet-sdk installed so update can run dotnet publish (#14158) 2026-05-02 13:40:14 +02:00
CanbiZ (MickLesk)andGitHub a48d400da5 alpine: remove deb/ubuntu-only resource & storage checks from update-script (#14166) 2026-05-02 12:06:37 +02:00
CanbiZ (MickLesk)andGitHub 9578c6fa91 core: prompt to also run installed addon update scripts (…/bin/update_*) after update_script (#14162) 2026-05-02 12:06:16 +02:00
CanbiZ (MickLesk)andGitHub 289708cc10 Threadfin: use 'threadfin-app' as app name to avoid version-file clash (#14159) 2026-05-02 12:05:37 +02:00
CanbiZ (MickLesk)andGitHub c9da2daec2 alpine-docker: install openssl as core dependency | alpine-komodo: check & install openssl if missing (#14134)
* fix(alpine-docker): install openssl as core dependency

* fix(komodo): ensure openssl is available on Alpine before generating secrets
2026-04-30 19:16:52 +02:00
CanbiZ (MickLesk)andGitHub e2a51d4941 Update source references to Codeberg in Endurain scripts (#14128) 2026-04-30 18:10:18 +02:00
CanbiZ (MickLesk)andGitHub e9ae1bfde1 Add guidance when storage lacks rootdir support (#14108) 2026-04-29 22:28:08 +02:00
CanbiZ (MickLesk)andGitHub 6c96d992d6 Refactor: checkMK (#14105) 2026-04-29 14:23:59 +02:00
CanbiZ (MickLesk) c5cbb46743 Enhance issue matching and redirect handling in close_issue_in_dev workflow 2026-04-29 14:04:04 +02:00
CanbiZ (MickLesk)andGitHub 6044637f12 Dawarich: run db:migrate before assets:precompile (#14051)
* fix(dawarich): run db:migrate before assets:precompile

In Rails production, eager loading during assets:precompile can execute
DB queries. Dawarich 1.7.0 adds new tables (monthly digest email
preferences, S3 storage settings). Running precompile before migrate
causes 'Operation not permitted' / exit code 1 when those tables do
not exist yet.

Reordered to: db:migrate -> assets:precompile -> data:migrate,
which is the correct Rails deployment sequence.

Fixes #14048

* add otp key
2026-04-27 13:31:02 +02:00
CanbiZ (MickLesk)andGitHub 585de1ba0c fix(update-lxcs/apps): avoid pct exec on containers mid-shutdown (#14050)
Both update-lxcs.sh and update-apps.sh backgrounded pct shutdown and then
immediately called pct exec on the same container, causing 'Error: unexpected
status' which terminated the loop after the first container.

update-lxcs.sh: wrapped reboot-required and patchmon-agent checks in a
guard that only runs them when the container was already running (not
one that was started and is now being shut down).

update-apps.sh: moved pct set (resource reset) and the pct exec
reboot-required check to run before pct shutdown is issued.

Fixes #14027
2026-04-27 13:30:20 +02:00
CanbiZ (MickLesk)andGitHub c32ca537f1 fix(technitiumdns): always install .NET 10 if not already present (#14049)
Previously the update script only upgraded .NET when aspnetcore-runtime-8.0
or 9.0 was detected via is_package_installed. Containers where detection
failed would silently skip the upgrade block, leaving Technitium v15
(requires .NET 10) starting against .NET 8/9 and immediately failing.

Changed condition to: install .NET 10 unless it is already installed.
Old 8.0/9.0 packages are removed with || true to avoid errors on clean
installs.

Fixes #14045
2026-04-27 13:29:57 +02:00