Commit Graph

18664 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot] 4adef93eb9 Update CHANGELOG.md (#18485)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 20:21:25 +00:00
CanbiZ (MickLesk) 94aa8e7ab0 fix(podman): skip Portainer where Podman has no Quadlet (#18469)
Portainer and the agent are written as Quadlet .container units, which
need Podman 4.4. Debian 12 ships 4.3.1, so systemctl start portainer
failed with "Unit portainer.service not found". Without Quadlet both
prompts are skipped with a warning.
2026-11-05 21:20:55 +01:00
community-scripts-pr-app[bot] eb7d180f9f Update CHANGELOG.md (#18484)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 20:18:12 +00:00
CanbiZ (MickLesk) 6e6ca04f24 truenas-VM: let a failed ISO lookup reach its own error (#18476)
* fix(truenas-vm): let a failed ISO lookup reach its own error

When download.truenas.com did not answer, the lookup handed an empty
path to an associative array (bad array subscript) and the pipeline
failed under pipefail, so the run ended with exit 1 at the SELECTED_ISO
line instead of the "Could not find a stable ISO" message. The index
fetch now fails on HTTP errors and retries, empty lines are skipped, and
the assignment no longer aborts on an empty result.

* fix(truenas-vm): use the engine's retry flags for the ISO index
2026-11-05 21:17:45 +01:00
community-scripts-pr-app[bot] ce04c99aa2 Update CHANGELOG.md (#18482)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 16:23:05 +00:00
CanbiZ (MickLesk) df705aefc4 proxmox-mail-gateway: take the repo suite from the container (#18475)
* fix(proxmox-mail-gateway): take the repo suite from the container

The install hardcoded trixie, so a Debian 12 container got the PMG 9
repository and pmg-api could not resolve its trixie dependencies (held
broken packages). Suite and key now follow the container's codename;
bookworm still has PMG 8 with proxmox-mailgateway-container.

* fix(proxmox-mail-gateway): read the codename inline
2026-11-05 17:22:36 +01:00
community-scripts-pr-app[bot] 4fd7aa7edb Update CHANGELOG.md (#18481)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 15:32:06 +00:00
CanbiZ (MickLesk) c55556144a Immich: Bump to 3.3.6 and minor improvement (#18474)
* fix(immich): take the watchfiles wheel and retry GeoNames longer

The v3.3.5 lock pins watchfiles 0.21.0, which has no wheel for the
Python 3.13 machine-learning venv, so every ML install downloaded a Rust
toolchain and compiled it. Where static.rust-lang.org reset the
connection, uv sync failed three times. --upgrade-package watchfiles
takes 1.3.0, an abi3 wheel; only uvicorn's reload mode uses it.

download.geonames.org dropped connections on 11-03/04 and the first file
failed after three 10 s connects; those four calls now retry six times
with a 30 s connect timeout.

* Immich: bump release version to v3.3.6

v3.3.6 disables onnxruntime's telemetry in immich_ml, which runs from
source here, so nothing else changes. The lock still pins watchfiles
0.21.0, so the wheel upgrade stays.
2026-11-05 16:31:37 +01:00
community-scripts-pr-app[bot] 43481c25fd Update CHANGELOG.md (#18480)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 14:25:17 +00:00
CerberusStyle d2970719e4 Change npm start argument to --production (#18478)
* Change npm start argument to --production

* update service with --production

* Reload systemd daemon after updating service file
2026-11-05 15:24:44 +01:00
community-scripts-pr-app[bot] 215f9be228 Update CHANGELOG.md (#18468)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-05 10:57:03 +00:00
CanbiZ (MickLesk) 3e7fcf1350 Arcane: write both env names, stop shipping the unused .env (#18466)
The compose file from main now uses ARCANE_ENCRYPTION_KEY and
ARCANE_PROJECTS_DIRECTORY, which the latest image (2.17.3) does not read,
so it panicked on a missing ENCRYPTION_KEY. Arcane 3 in turn refuses to
start when only the old names are set. Install and update now keep both
names in compose.yaml, which also carries existing installs over to 3.

The .env was never referenced by the compose file, but compose parses it,
and the unanchored ENCRYPTION_KEY sed turned the renamed line into
ARCANE_#ENCRYPTION_KEY and broke every install. New installs no longer
download it; update repairs the broken line.
2026-11-05 11:56:39 +01:00
CanbiZ (MickLesk) 8ba3582919 OPNsense VM: wait for the FreeBSD login prompt instead of 180 seconds (#18467)
The FreeBSD image boots in under a minute when both NICs get DHCP, but
dhclient waits 60 seconds on each NIC without a DHCP server, which is the
normal case for a firewall's LAN before setup. On vx-pve an isolated LAN
took 110 seconds; the reporter of #18464 measured 210. The keys then went
into the boot output. The image prints its login prompt on the serial
console as well, so the script now reads serial0 and continues when it
appears, up to 15 minutes, or waits the old 3 minutes if the console
cannot be read.
2026-11-05 11:56:32 +01:00
CanbiZ (MickLesk) 37e4a33615 Tududi: run 2.0 on PostgreSQL, keep SQLite installs on 1.15.0 (#18465)
Tududi 2.0.0 dropped SQLite and refuses to start next to a populated 1.x
database. New installs set up PostgreSQL and let start.sh create the
schema; db:init would sync the tables without SequelizeMeta and make
db-prepare treat the database as an old 1.x one. Installs without
DATABASE_URL stay on 1.15.0, the final SQLite release, which also brings
back installs that already updated to 2.0.0.

Uploads lived in backend/uploads, which CLEAN_INSTALL wiped on every
update; they move to /opt/tududi-uploads.
2026-11-05 11:56:29 +01:00
community-scripts-pr-app[bot] 3e54356653 Update CHANGELOG.md (#18462)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04
2026-11-04 22:59:18 +00:00
Chris Thach 1f03150b77 fix: Poll Teleport readyz instead of fixed 10 second sleep. (#18461)
Signed-off-by: Chris Thach <git.identify957@passfwd.com>
2026-11-04 23:58:49 +01:00
community-scripts-pr-app[bot] cfa250a795 Update CHANGELOG.md (#18459)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04 16:07:16 +00:00
community-scripts-pr-app[bot] bb4c1f2fbf Update CHANGELOG.md (#18458)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04 16:00:26 +00:00
community-scripts-pr-app[bot] 793fba1a53 Update CHANGELOG.md (#18457)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04 15:54:56 +00:00
community-scripts-pr-app[bot] 06b788ee81 Update CHANGELOG.md (#18454)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04 09:23:17 +00:00
CanbiZ (MickLesk) 667da6a8fb Install n8n past its unsatisfiable canvas dependencies (#18439)
n8n-nodes-base 2.46.0 moved @napi-rs/canvas-linux-arm64-musl and
-linux-x64-musl from optional into hard dependencies. npm enforces
os/cpu/libc on those, and no combination satisfies both arm64 and x64,
so every install fails with EBADPLATFORM. n8n 2.46.4 reached the latest
tag on 2026-11-03 and the failures started four minutes later.

--force skips the platform check. The matching gnu binary is still
installed through @napi-rs/canvas's own optional dependencies, so canvas
keeps working.
2026-11-04 10:22:46 +01:00
community-scripts-pr-app[bot] e40a258a27 Update CHANGELOG.md (#18452)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-04 07:04:53 +00:00
CanbiZ (MickLesk) ff5aac3889 Teable: add Redis cache (fixes #18449) (#18450) 2026-11-04 08:04:23 +01:00
community-scripts-pr-app[bot] e00d14a3ce Update CHANGELOG.md (#18445)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03
2026-11-03 15:45:50 +00:00
CanbiZ (MickLesk) 5ee75b7460 Wiki.js: install 3.x (#18382)
* Wiki.js: install 3.x

Wiki.js 3 lives in requarks/wiki, needs Node.js 26 and creates its own ltree and pg_trgm extensions in the wiki schema, and starts with node --no-experimental-webstorage backend. dataPath moves out of the app folder, which every update replaces; the admin password is generated and saved to ~/wikijs.creds. Updates follow upstream's guide and put Puppeteer back when it was installed. 2.x containers keep getting 2.x updates from requarks/wiki-v2, since 3.x cannot upgrade them in place, and are told how to export and import.

* Refactor credential output to use heredoc syntax
2026-11-03 16:45:19 +01:00
community-scripts-pr-app[bot] 069ab1b8df Update CHANGELOG.md (#18444)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:59:39 +00:00
community-scripts-pr-app[bot] 209eb2a003 Update CHANGELOG.md (#18443)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:59:24 +00:00
community-scripts-pr-app[bot] 594b1e82bb Update CHANGELOG.md (#18442)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:59:05 +00:00
CanbiZ (MickLesk) bffc871aa9 Flag instead of closing on first PR template miss; add script-request eligibility check (#18384)
close-invalid-pr-template.yml now comments and labels (missing pr template,
stale) instead of closing immediately, clears itself once fixed. stale_pr_close.yml
gains the engagement-gated/keep-open/maintainer-reset behavior already used in
DevScripts, so a template-stale PR only closes via its own re-check.

request-script.yml discussion template gets an optional Justification field;
a new workflow verifies stars/age against GitHub for the submitted repo and
either does nothing (eligible), labels investigation (ineligible + justified),
or closes the discussion (ineligible, no justification).

Moved the AI Assistance section to the end of pull_request_template.md.
2026-11-03 14:58:57 +01:00
CanbiZ (MickLesk) d77c65093b Say why an update-apps backup or restore failed (#18405)
vzdump and pct restore ran with their output thrown away, so a failed
backup only said "Backup failed for container N" (exit 235). That is the
second most common update-apps failure and none of them can be told
apart. Keep the output in the run log and put its error line in the
message, e.g. "CT is locked (backup)".

var_backup_storage was matched with grep -w, so "truenas" passed when
only "truenas-backup" exists and vzdump then failed on a storage that
does not exist. Match the whole name, and list the valid ones in the
error instead of a spinner line after it.

Name the app in "Update failed for container N", so a failed update
says which app's update failed. Declining the start dialog now exits 0
like the other tools instead of failing with whiptail's 1.
2026-11-03 14:58:35 +01:00
community-scripts-pr-app[bot] f51d21ff9a Update CHANGELOG.md (#18441)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:32:03 +00:00
community-scripts-pr-app[bot] 27493df7a0 Update CHANGELOG.md (#18440)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:31:40 +00:00
CanbiZ (MickLesk) 0973d1ccfb OpenWrt VM: read the stable release from downloads.openwrt.org (#18411)
* OpenWrt VM: read the stable release from downloads.openwrt.org

The version came from a line of text on the openwrt.org wiki front page.
One host got that page without the line three times in a row while
others resolved fine at the same moment, and the run ended with exit 115
before anything was downloaded. .versions.json on the download server
is what the OpenWrt firmware selector reads and names the stable release
explicitly.

* Update vm/openwrt-vm.sh

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2026-11-03 14:31:32 +01:00
CanbiZ (MickLesk) 11acd8db75 Keep host tools running when clear does not know the terminal (#18412)
clear exits 1 for a TERM the host has no terminfo entry for, such as
xterm-ghostty or xterm-kitty over SSH, and when TERM is unset under cron.
The tools that run under errexit died on it in header_info within a
second, before showing anything, which telemetry counts as
"exit_code=1 | General error" with no step for update-lxcs, update-repo,
fstrim, clean-lxcs, execute and storage-share-helper.

Fall back to the escape sequence the engine's _cs_clear uses.
2026-11-03 14:30:57 +01:00
community-scripts-pr-app[bot] e39450ec48 Update CHANGELOG.md (#18438)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:26:52 +00:00
CanbiZ (MickLesk) 2c4fbc01eb all-templates: answering No or Cancel is not a failure (#18423)
Both whiptail prompts ran bare under errexit, so No on the first question
or Cancel in the template list ended in the error handler and was reported
as a failed run (3 of 5 failures in three days).

Monitor-All is now stopped right before the download instead of at the
start, so leaving at a prompt no longer leaves it stopped.
2026-11-03 14:26:31 +01:00
CanbiZ (MickLesk) dd7a659f22 homebrew: skip service accounts when picking the user, survive a failed apt update (#18424)
The user was the first passwd entry with a UID from 1000 up. On a Proxmox
host with Ceph that is ceph (UID 64045, shell nologin), and su - ceph fails
with "This account is currently not available". Accounts without a login
shell are skipped now.

apt update on a host with the enterprise repository and no subscription exits
100 on the 401. apt_update_safe retries, says why and carries on, as the other
scripts already do since #17462.
2026-11-03 14:26:23 +01:00
CanbiZ (MickLesk) f9039c2ee7 Fedora VM: let the engine install libguestfs-tools (#18422)
The script ran its own apt-get update before installing
libguestfs-tools, so one broken or stale repository on the host (a 404
for a hand-added proxmox.com or debian.org entry) ended the run with
exit 100. vm_prepare_cloud_image installs the tools itself and carries
on when an update fails, so the install can still succeed from the
repositories that did update.
2026-11-03 14:26:21 +01:00
community-scripts-pr-app[bot] 44666826df Update CHANGELOG.md (#18437)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:24:46 +00:00
community-scripts-pr-app[bot] 64a89e3463 Update CHANGELOG.md (#18436)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:24:19 +00:00
CanbiZ (MickLesk) 0d4e703d70 Cinephage: run the camoufox binary the package now ships (#18426)
Cinephage depends on camoufox instead of camoufox-js, whose bin is called camoufox, so the install stopped at "node_modules/.bin/camoufox-js: No such file or directory" (6 runs in three days).
2026-11-03 14:24:13 +01:00
CanbiZ (MickLesk) 5fa9846d37 Immich: fetch VectorChord from its new repo, skip Java, get GeoNames first (#18397)
- VectorChord moved to supervc-stack/VectorChord. With the GitHub API
  rate limited, core reads the release from github.com, finds no asset
  under the old name and stops with "No suitable .deb asset found".
- mise installed every tool in Immich's mise.toml. Java (for the Dart
  OpenAPI generator), terragrunt and opentofu are not needed for the
  plugin build, and the Java index timed out on slow links.
- GeoNames failed after the 1-3 h library build; it now downloads first.
- Stop on x86-64 CPUs without SSE4.2: the web build ends there with
  "Illegal instruction" after the libraries are built.
2026-11-03 14:23:44 +01:00
community-scripts-pr-app[bot] e32161b18a Update CHANGELOG.md (#18435)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:23:29 +00:00
CanbiZ (MickLesk) 92737744ce AlmaLinux VM: report failures through the engine's error handler (#18418)
The script replaced the engine's error_handler with one that sent the
failed command as the exit code, so every failure reached telemetry as
exit 199 "exit code not reported", without the failed command or
category. Its signal traps sent words instead of codes the same way.

It also ran its own unguarded apt-get update for libguestfs-tools, so a
host with the enterprise repository and no subscription (401) stopped
there. vm_prepare_cloud_image installs the tools itself, tolerating a
repository that fails to update.
2026-11-03 14:23:03 +01:00
CanbiZ (MickLesk) 2fbb6e261c add-tailscale-lxc: start a stopped container and check its OS first (#18421)
The container menu lists stopped containers too, and pct exec on one exits
255: 12 of 41 failures in three days. Start it the way add-netbird-lxc does
and wait for its default route.

The install runs under bash, which an Alpine container from the template does
not have; lxc-attach then exits 127 before the Alpine branch is reached.
Install bash there first, and stop with a clear message on any OS other than
Debian, Ubuntu or Alpine instead of failing on apt-get.
2026-11-03 14:22:52 +01:00
CanbiZ (MickLesk) 39b3ed29ad WireGuard: give the Debian container 1 GB for WGDashboard (#18419)
WGDashboard builds its frontend with Vite during the install, and at 512 MB the kernel killed node: "Failed to compile frontend", then wg-dashboard would not start (11 runs in three days). The build finishes at 1 GB.
2026-11-03 14:20:44 +01:00
community-scripts-pr-app[bot] 9bdc6ae13b Update CHANGELOG.md (#18434)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:14:47 +00:00
community-scripts-pr-app[bot] 9aff2f1090 Update CHANGELOG.md (#18433)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 13:14:34 +00:00
CanbiZ (MickLesk) d6e4427ac9 zabbix: use os specific apt packages (#18417)
* Zabbix: install on Debian 12 again

The install and the update fetched Zabbix's release package for Debian 13 and php8.4-pgsql, so a Debian 12 container stopped with "Unable to locate package php8.4-pgsql" (12 runs in three days). Zabbix publishes 7.0 and 7.4 for Debian 12 too: take the container's Debian version and the distribution's php-pgsql.

* Zabbix: leave the update as it was

The update refuses Debian 12 on purpose, so its release URL stays as it was.
2026-11-03 14:14:17 +01:00
CanbiZ (MickLesk) 770d89bb90 Refuse to run the PBS 4 upgrade on a Proxmox VE host (#18416)
Nothing checked that the host is a Backup Server. On a PVE host the
first step stopped only because tar found no /etc/proxmox-backup (exit
2); answering "no" to that backup would have gone on to delete
/etc/apt/sources.list.d/*.list, add the PBS repositories and
dist-upgrade. Stop with the same message post-pbs-install uses.
2026-11-03 14:14:11 +01:00