Compare commits

...

366 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
bbe71cbbb9 Update CHANGELOG.md (#7428)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-06 00:12:58 +00:00
community-scripts-pr-app[bot]
9b6a736c8c Update versions.json (#7427)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-06 02:12:30 +02:00
community-scripts-pr-app[bot]
c395ccc270 Update CHANGELOG.md (#7421)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 17:28:01 +00:00
Chris
3dd72e08e9 Pin version to 0.80 (#7420)
- a lot of changes in next version
2025-09-05 19:27:40 +02:00
community-scripts-pr-app[bot]
1d989bea73 Update versions.json (#7417)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 14:05:32 +02:00
community-scripts-pr-app[bot]
f881b88344 Update CHANGELOG.md (#7411)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 06:07:57 +00:00
Slaviša Arežina
06dbad83ef AdventureLog: Update dependencies (#7404)
* Update adventurelog-install.sh

* Check and install memcached if not present

---------

Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-09-05 08:07:34 +02:00
community-scripts-pr-app[bot]
7ff966b042 Update CHANGELOG.md (#7410)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 05:24:44 +00:00
Bram Suurd
62264f37a6 refactor: Enhance ScriptAccordion and Sidebar components to support selectedCategory state (#7405)
* refactor: Enhance ScriptAccordion and Sidebar components to support selectedCategory state

* lint

* chore: Add ESLint configuration to ignore errors during builds in next.config.mjs
2025-09-05 07:24:19 +02:00
community-scripts-pr-app[bot]
bf05dabc4c Update CHANGELOG.md (#7407)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 00:13:38 +00:00
community-scripts-pr-app[bot]
bc229d9738 Update versions.json (#7406)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-05 02:13:07 +02:00
community-scripts-pr-app[bot]
969b08caa8 Update CHANGELOG.md (#7399)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 14:23:31 +00:00
Mike Hennessy
c1c43ed2cb fix: Syntax error in Immich scripts (#7398)
* fix: Syntax error in Immich scripts

* fix: Remove exit pipes
2025-09-04 16:22:47 +02:00
community-scripts-pr-app[bot]
e74767d1a4 Update CHANGELOG.md (#7396)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 12:46:19 +00:00
Chris
e9e17f4f51 Immich: pin compiled photo library revisions (#7395)
- Immich base has already switched to Trixie; until we get a Trixie LXC
any further updates to the base image might conflict with our Bookworm
LXC
2025-09-04 14:45:55 +02:00
community-scripts-pr-app[bot]
2c1b15a40e Update versions.json (#7394)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 14:05:20 +02:00
community-scripts-pr-app[bot]
a4bfaf1646 Update CHANGELOG.md (#7393)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 08:28:32 +00:00
CanbiZ
6fa12cc814 Netdata: Fix pve_check for 8 (#7392) 2025-09-04 10:28:09 +02:00
community-scripts-pr-app[bot]
d314168a37 Update CHANGELOG.md (#7390)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 00:12:13 +00:00
community-scripts-pr-app[bot]
d6ad11c5c2 Update versions.json (#7389)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 02:11:47 +02:00
community-scripts-pr-app[bot]
534592b44a Update CHANGELOG.md (#7386)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 18:33:13 +00:00
Slaviša Arežina
d9b6b58b36 Increase HDD size (#7384) 2025-09-03 20:32:52 +02:00
community-scripts-pr-app[bot]
298eb7e83d Update CHANGELOG.md (#7380)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 12:56:32 +00:00
Chris
c2dd1e413f Wizarr: fix uv lock issue; use correct output suppression (#7378) 2025-09-03 14:56:04 +02:00
community-scripts-pr-app[bot]
a4f1766408 Update CHANGELOG.md (#7379)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 12:45:49 +00:00
Bram Suurd
a24169e9b8 Fix navigation (#7376)
* Removed double entries from the search to improve navigation

* change input on search field to improve searchability

* added type to search to make sure that LXC and VM's dont get mixed up

* run linting over changes

---------

Co-authored-by: Bram Suurd <bram.suurd@infracom.nl>
2025-09-03 14:45:24 +02:00
community-scripts-pr-app[bot]
45a2163e66 Update CHANGELOG.md (#7377)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 12:43:16 +00:00
Slaviša Arežina
2fc3e62d60 Fix paths (#7374) 2025-09-03 14:42:52 +02:00
community-scripts-pr-app[bot]
210b846d61 Update versions.json (#7375)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 14:06:04 +02:00
community-scripts-pr-app[bot]
b04cfb65f7 Update CHANGELOG.md (#7369)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 07:25:57 +00:00
Desert Gamer
6a2fc4083b Enhanced IP-Tag installation script with interactive configuration, improved VM IP detection, and better visual indicators (#7366)
- **Interactive Configuration**: Added setup wizard for `TAG_FORMAT` (last_two_octets/last_octet/full) and `LOOP_INTERVAL` (30-7200 seconds) during installation/update
- **Unified Installation Menu**: Replaced conditional service detection with unified menu offering install-with-service, install-command-only, and update options
- **Post-Installation Guidance**: Added comprehensive information display about configuration file location (`/opt/iptag/iptag.conf`) and required CIDR_LIST setup
- **Improved VM IP Detection**: Enhanced IP discovery with QM guest agent priority, ARP table validation via ping, and automatic removal of stale ARP entries
- **Visual Indicators**: Replaced emoji symbols with standard ASCII characters (✓/✗) with proper colors for better terminal compatibility
- **Simplified Update Process**: Removed complex service detection logic and provided direct update option in main menu

These changes address user feedback about complex installation requirements, VM IP detection issues, and provide clearer guidance for network subnet configuration.
2025-09-03 09:25:37 +02:00
community-scripts-pr-app[bot]
f7f53943c2 Update CHANGELOG.md (#7365)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 00:12:00 +00:00
community-scripts-pr-app[bot]
31f4d9b16c Update versions.json (#7364)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-03 02:11:34 +02:00
community-scripts-pr-app[bot]
cd4cd5eec1 Update CHANGELOG.md (#7361)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 20:17:14 +00:00
Slaviša Arežina
8a7eeee727 Add max upload size to nginx (#7358) 2025-09-02 22:16:48 +02:00
community-scripts-pr-app[bot]
be5d65f421 Update CHANGELOG.md (#7357)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 16:40:41 +00:00
CanbiZ
591af3f109 Increase default disk size for Apt-Cacher-NG (#7352) 2025-09-02 18:40:22 +02:00
community-scripts-pr-app[bot]
a3e0df9de1 Update CHANGELOG.md (#7356)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 16:39:59 +00:00
CanbiZ
596699d07e booklore: remove folder before update (#7351) 2025-09-02 18:39:39 +02:00
community-scripts-pr-app[bot]
b2275b44c2 Update CHANGELOG.md (#7355)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 16:35:45 +00:00
Chris
737842fb1e Immich: bump version to 1.140.1 (#7349) 2025-09-02 18:35:22 +02:00
community-scripts-pr-app[bot]
646cb2bc30 Update versions.json (#7347)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 14:05:31 +02:00
community-scripts-pr-app[bot]
4599bfe052 Update CHANGELOG.md (#7345)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 07:42:14 +00:00
CanbiZ
bb85b1d4ac pbs: increase note on website for ipv6 (#7339) 2025-09-02 09:41:52 +02:00
community-scripts-pr-app[bot]
57ae4a48a7 Update CHANGELOG.md (#7342)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 00:12:51 +00:00
community-scripts-pr-app[bot]
06e8460851 Update versions.json (#7341)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-02 02:12:31 +02:00
community-scripts-pr-app[bot]
9713c95bf4 Update CHANGELOG.md (#7340)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 17:58:39 +00:00
dependabot[bot]
705748bba5 Bump next from 15.2.4 to 15.5.2 in /frontend (#7309)
Bumps [next](https://github.com/vercel/next.js) from 15.2.4 to 15.5.2.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.2.4...v15.5.2)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 15.5.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-01 19:58:17 +02:00
community-scripts-pr-app[bot]
022f079821 Update CHANGELOG.md (#7338)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 13:02:32 +00:00
CanbiZ
80d75731a8 Refactor + Feature Bump: HomeAssistant OS (#7336) 2025-09-01 15:02:10 +02:00
community-scripts-pr-app[bot]
227721a72f Update CHANGELOG.md (#7337)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 13:00:47 +00:00
CanbiZ
5572a7a0ab UmbrelOS: Refactor / use q35 / better import (#7329)
* UmbrelOS: Improve VM Import Process

* q35 Feature-Bump

* Update umbrel-os-vm.sh

* Update umbrel-os-vm.sh

* Update umbrel-os-vm.sh

* temp folder for big file

* Update umbrel-os-vm.sh

* update MACH (adv. Settings)

* Update umbrel-os-vm.sh

* Formatting

* Update umbrel-os-vm.sh

* Refactor

* Update umbrel-os-vm.sh

* Update umbrel-os-vm.sh
2025-09-01 15:00:23 +02:00
community-scripts-pr-app[bot]
6a69185a2d Update versions.json (#7334)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 14:06:31 +02:00
community-scripts-pr-app[bot]
77441b6189 Update CHANGELOG.md (#7333)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 10:42:23 +00:00
CanbiZ
4aa337c2f2 booklore: add note for start-up in frontend (#7331) 2025-09-01 12:42:06 +02:00
finkerle
4bd2f6866a Update configarr.sh (#7323) 2025-09-01 12:41:45 +02:00
community-scripts-pr-app[bot]
377de80103 Update CHANGELOG.md (#7330)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 07:38:44 +00:00
CanbiZ
1c62d4614e Harmonize GitHub Release Check (#7328) 2025-09-01 09:38:20 +02:00
community-scripts-pr-app[bot]
a91f7410a4 Update CHANGELOG.md (#7327)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 00:14:57 +00:00
community-scripts-pr-app[bot]
528c0a8de5 Update versions.json (#7326)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-01 02:14:38 +02:00
community-scripts-pr-app[bot]
988bd3ef19 Update CHANGELOG.md (#7322)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-31 14:52:16 +00:00
Slaviša Arežina
99d9664ae4 Increase disk size (#7320) 2025-08-31 16:51:56 +02:00
community-scripts-pr-app[bot]
09649eb5b1 Update versions.json (#7317)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-31 14:04:56 +02:00
community-scripts-pr-app[bot]
5c49ba784a Update CHANGELOG.md (#7315)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-31 00:14:09 +00:00
community-scripts-pr-app[bot]
469f959911 Update versions.json (#7314)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-31 02:13:44 +02:00
community-scripts-pr-app[bot]
7504c4b7e9 Update versions.json (#7313)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-30 14:05:59 +02:00
community-scripts-pr-app[bot]
9a6047393d Update CHANGELOG.md (#7312)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-30 11:12:54 +00:00
Tobias
dec2ef817a Refactor gitea-mirror env-file (#7240) 2025-08-30 13:12:35 +02:00
community-scripts-pr-app[bot]
54a9bc8841 Update CHANGELOG.md (#7310)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-30 06:54:37 +00:00
Chris
8def7c0f0a Bump to v1.140.0 (#7275) 2025-08-30 08:54:16 +02:00
community-scripts-pr-app[bot]
13cbc2756b Update CHANGELOG.md (#7306)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-30 00:12:23 +00:00
community-scripts-pr-app[bot]
933928c4ee Update versions.json (#7305)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-30 02:11:41 +02:00
Andrej Kocijan
2beaab0d88 Fix alpine redlib slug (#7303) 2025-08-30 00:04:59 +02:00
community-scripts-pr-app[bot]
560ed60745 Update CHANGELOG.md (#7301)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 20:58:59 +00:00
community-scripts-pr-app[bot]
46febb33a9 Update CHANGELOG.md (#7300)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 20:58:38 +00:00
CanbiZ
ddd8e0ee68 fix version check for pocket-id migration (#7298) 2025-08-29 22:58:31 +02:00
CanbiZ
be255263c6 Refactor release fetching and version checking logic (#7299) 2025-08-29 22:58:19 +02:00
CanbiZ
c8d969d38a Replace output redirection with touch command 2025-08-29 22:21:15 +02:00
CanbiZ
96511325ab Fix GitHub release check for homebox 2025-08-29 17:07:41 +02:00
CanbiZ
bc545df207 qf: create file if not exist 2025-08-29 16:20:21 +02:00
CanbiZ
36bf265fc6 improve update-pinning 2025-08-29 14:20:12 +02:00
CanbiZ
892ad29c60 fix broken exit 2025-08-29 14:16:18 +02:00
community-scripts-pr-app[bot]
a5d02b5459 Update versions.json (#7289)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 14:05:08 +02:00
community-scripts-pr-app[bot]
3ccf9924a1 Update CHANGELOG.md (#7287)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 11:32:06 +00:00
Slaviša Arežina
953bbd7978 Update zitadel-install.sh (#7284) 2025-08-29 13:31:43 +02:00
community-scripts-pr-app[bot]
4228cb99db Update CHANGELOG.md (#7283)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 10:37:18 +00:00
CanbiZ
f7791fe2ff post-pbs: increase enterprise recognition (#7280) 2025-08-29 12:36:55 +02:00
community-scripts-pr-app[bot]
616c736428 Update CHANGELOG.md (#7282)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 10:30:11 +00:00
CanbiZ
ede5f35f39 [core]: feature - check_for_gh_release - version pinning (#7279)
* [core]: feature - check_for_gh_release - version pinning

* Modify usage comments for check_for_gh_release

Updated usage example for check_for_gh_release function.

* Refactor jq installation command with STD variable

* remove unneeded dev/null
2025-08-29 12:29:52 +02:00
community-scripts-pr-app[bot]
b73bfdf7fd Update CHANGELOG.md (#7281)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 10:27:46 +00:00
CanbiZ
9305a4ca85 [feat]: migrate all update_scripts to new version helper (gh) (#7262)
* first migrations

* finalize

* add fix kometa inside function
2025-08-29 12:27:24 +02:00
Chris
54b59e24ca Add PVE version to bug report template (#7276) 2025-08-29 09:46:56 +02:00
community-scripts-pr-app[bot]
d57c613535 Update CHANGELOG.md (#7278)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 06:55:54 +00:00
Abe Brandsma
f02525af8a Fix typo where install mode was changed instead of pinned version (#7277) 2025-08-29 08:55:30 +02:00
community-scripts-pr-app[bot]
f19659bea0 Update CHANGELOG.md (#7274)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 00:13:05 +00:00
community-scripts-pr-app[bot]
9cfb549dca Update versions.json (#7273)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-29 02:12:39 +02:00
community-scripts-pr-app[bot]
ba09cbd9cc Update CHANGELOG.md (#7270)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 21:28:55 +00:00
community-scripts-pr-app[bot]
bc4d09b073 Update CHANGELOG.md (#7269)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 21:27:41 +00:00
Chris
fb2d91abe7 MMDL: add build-essential as dep (#7266)
- fixes #7265?
2025-08-28 23:27:16 +02:00
Slaviša Arežina
5146385f4c Remove hoarder (#7260) 2025-08-28 21:21:21 +02:00
community-scripts-pr-app[bot]
346a8e140c Update CHANGELOG.md (#7259)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 13:44:07 +00:00
Slaviša Arežina
42aa8f8868 Update keycloak.json (#7256) 2025-08-28 15:43:42 +02:00
community-scripts-pr-app[bot]
459772162f Update CHANGELOG.md (#7257)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 12:44:25 +00:00
CanbiZ
1d65650d28 [core]: feature - check_for_gh_release as update-handler (#7254) 2025-08-28 14:43:56 +02:00
community-scripts-pr-app[bot]
a2099bc195 Update versions.json (#7255)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 14:05:06 +02:00
community-scripts-pr-app[bot]
896545ab1b Update CHANGELOG.md (#7251)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 09:23:55 +00:00
CanbiZ
522f427677 Flaresolverr: Pin to 3.3.25 (Python Issue) (#7248) 2025-08-28 11:23:35 +02:00
community-scripts-pr-app[bot]
5d70455d93 Update CHANGELOG.md (#7250)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 09:23:18 +00:00
community-scripts-pr-app[bot]
01a91d8b4f Update date in json (#7249)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-28 09:23:13 +00:00
push-app-to-main[bot]
f66a60ee47 MediaManager (#7238) 2025-08-28 11:22:51 +02:00
community-scripts-pr-app[bot]
b4e74b2a17 Update CHANGELOG.md (#7247)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 05:18:17 +00:00
moshekv
644e5900d9 add support for multiple ip addresses in monitor-all.sh (#7244) 2025-08-28 07:17:58 +02:00
community-scripts-pr-app[bot]
3f3f536ebe Update CHANGELOG.md (#7246)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 00:12:52 +00:00
community-scripts-pr-app[bot]
baa39d05a5 Update versions.json (#7245)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-28 02:12:30 +02:00
community-scripts-pr-app[bot]
a85bca7326 Update versions.json (#7237)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-27 14:05:38 +02:00
community-scripts-pr-app[bot]
6defba8ab3 Update CHANGELOG.md (#7235)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-27 07:51:51 +00:00
CanbiZ
59f6329e85 searxng: improve installation (#7233) 2025-08-27 09:51:28 +02:00
CanbiZ
856c724b5d Update homebox service paths in homebox.sh 2025-08-27 09:38:14 +02:00
community-scripts-pr-app[bot]
67a20a9b4a Update CHANGELOG.md (#7234)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-27 07:33:10 +00:00
CanbiZ
27cd66f48a Homebox: Fix Update Script (#7232)
* Homebox: Fix Update Script

* Update homebox.sh to improve executable removal logic
2025-08-27 09:32:45 +02:00
community-scripts-pr-app[bot]
d25a12c87e Update CHANGELOG.md (#7230)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-27 00:14:23 +00:00
community-scripts-pr-app[bot]
e24315c50b Update versions.json (#7229)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-27 02:14:00 +02:00
community-scripts-pr-app[bot]
753ed67b50 Update CHANGELOG.md (#7223)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 13:13:41 +00:00
CanbiZ
d6e498050f Refactor: Post-PBS Script (#7213) 2025-08-26 15:13:16 +02:00
community-scripts-pr-app[bot]
4a69a7b39f Update CHANGELOG.md (#7222)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 12:15:48 +00:00
community-scripts-pr-app[bot]
1dcde93b4a Update date in json (#7221)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-26 12:15:18 +00:00
push-app-to-main[bot]
663c6570f4 tracktor (#7190)
* 'Add new script'

* Update tracktor.sh

* Update tracktor.json

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-08-26 14:14:52 +02:00
community-scripts-pr-app[bot]
6a17e25871 Update CHANGELOG.md (#7220)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 12:10:28 +00:00
Slaviša Arežina
e609552cec Update docs URL (#7201) 2025-08-26 14:10:01 +02:00
community-scripts-pr-app[bot]
bd4b781c9e Update CHANGELOG.md (#7219)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 12:07:45 +00:00
CanbiZ
7eb6715a1f PBS: Upgrade Script for v4 (#7214)
* Refactor: Post-PBS Script

* PBS4-Upgrade-Script

* Remove unintended changes to post-pbs-install.sh
2025-08-26 14:07:16 +02:00
community-scripts-pr-app[bot]
aa0190978f Update versions.json (#7218)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 14:06:17 +02:00
community-scripts-pr-app[bot]
e0f5e588e0 Update CHANGELOG.md (#7217)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 12:05:55 +00:00
CanbiZ
3949e2e049 Refactor: Post-PMG-Script (#7212) 2025-08-26 14:05:30 +02:00
community-scripts-pr-app[bot]
ab4560b879 Update date in json (#7216)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-26 11:09:30 +00:00
CanbiZ
b8f854e7ad Create searxng.json 2025-08-26 13:08:56 +02:00
community-scripts-pr-app[bot]
ea1c5b4561 Update CHANGELOG.md (#7209)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 00:13:12 +00:00
community-scripts-pr-app[bot]
957eea7a0f Update versions.json (#7208)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-26 02:12:53 +02:00
community-scripts-pr-app[bot]
476fcedfe0 Update CHANGELOG.md (#7206)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 20:55:19 +00:00
community-scripts-pr-app[bot]
d590e91597 Update CHANGELOG.md (#7205)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 20:50:00 +00:00
Chris
8c796a0870 Immich: bump to v1.139.4 (#7138) 2025-08-25 22:49:38 +02:00
community-scripts-pr-app[bot]
b57efdb78a Update CHANGELOG.md (#7204)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 19:22:24 +00:00
Slaviša Arežina
2cc3ce1ea1 Update komodo.sh (#7202) 2025-08-25 21:21:59 +02:00
community-scripts-pr-app[bot]
468defcd97 Update CHANGELOG.md (#7203)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 19:08:52 +00:00
Slaviša Arežina
78398309c0 Fix website and docs URL (#7199) 2025-08-25 21:08:25 +02:00
community-scripts-pr-app[bot]
08d1d7be62 Update CHANGELOG.md (#7200)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 18:03:00 +00:00
Slaviša Arežina
05a4fcd471 Fix update (#7198) 2025-08-25 20:02:37 +02:00
community-scripts-pr-app[bot]
36acf4aaae Update CHANGELOG.md (#7197)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 17:14:25 +00:00
Paladin
4182815b4c FileBrowser Quantum: safer update (tmp download + atomic replace + arch autodetect) (#7174)
* FileBrowser Quantum: safer update (tmp download + atomic replace + arch autodetect)

**What**
Safer updater for FileBrowser Quantum addon:
- Download to temp file, then atomic `mv` into INSTALL_PATH
- Stop/start service around the swap
- CPU arch autodetect (amd64/arm64/armv7/armv6)
- Proper error handling & version verification before printing success

**Why**
Current update streams `curl` directly to `/usr/local/bin/filebrowser` and prints success even if `curl` fails.
I hit:

* fix(filebrowser-quantum): add missing `fi` before install section

Closes the conditional started with `if [[ -f "$INSTALL_PATH" ]]` so the script doesn’t hit a bash syntax error when reaching the install path.

* refactor(update): minimal fix - temp file + atomic mv; amd64 only

* style(update): remove comments/blank lines; drop restart (alpine-safe)
2025-08-25 19:14:01 +02:00
community-scripts-pr-app[bot]
73a0910239 Update CHANGELOG.md (#7196)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 17:11:00 +00:00
Slaviša Arežina
bd6626e919 Komodo: Generate admin users password (#7193)
* Fix admin login

* fix json

* Add credentials to creds file
2025-08-25 19:10:41 +02:00
community-scripts-pr-app[bot]
3ad6cdf85a Update .app files (#7195)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-25 19:10:37 +02:00
community-scripts-pr-app[bot]
732bb75e9b Update CHANGELOG.md (#7194)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 17:06:29 +00:00
Slaviša Arežina
d372b45a95 Add Alpine-RustDesk Server script (#7191)
* Add RustDesk server

* VED>VE
2025-08-25 19:06:04 +02:00
CanbiZ
df564ace13 Merge branch 'main' of https://github.com/community-scripts/ProxmoxVE 2025-08-25 14:23:27 +02:00
community-scripts-pr-app[bot]
d2b28413eb Update CHANGELOG.md (#7187)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:22:00 +00:00
community-scripts-pr-app[bot]
b93a30ffb0 Update CHANGELOG.md (#7186)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:21:40 +00:00
community-scripts-pr-app[bot]
a4044b1cfd Update CHANGELOG.md (#7185)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:21:30 +00:00
CanbiZ
83eb2da451 [core]: uv uses now "update-shell" command (#7172)
* [core]: uv uses now "update-shell" command

* Improve uv shell integration setup process

Refactor uv shell integration setup with improved error handling.
2025-08-25 14:21:18 +02:00
community-scripts-pr-app[bot]
9fda9f34c5 Update CHANGELOG.md (#7183)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:21:12 +00:00
community-scripts-pr-app[bot]
3715ea5946 Update date in json (#7184)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:21:09 +00:00
community-scripts-pr-app[bot]
de2d8d0e75 Update CHANGELOG.md (#7182)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:20:51 +00:00
push-app-to-main[bot]
9f6abbe572 'Add new script' (#7178)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-08-25 14:20:48 +02:00
push-app-to-main[bot]
d90a071d88 healthchecks (#7177)
* 'Add new script'

* add missing source

* Update documentation URL in healthchecks.

* Update source URL in healthchecks-install.sh

* Update healthchecks.json with additional notes

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-08-25 14:20:38 +02:00
CanbiZ
69dd06b107 [core]: tools.func - better verbose for postgresql (#7173) 2025-08-25 14:20:30 +02:00
CanbiZ
2be054a004 Merge branch 'main' of https://github.com/community-scripts/ProxmoxVE 2025-08-25 14:20:07 +02:00
CanbiZ
a2fcd3992e Update create_lxc.sh 2025-08-25 14:19:58 +02:00
community-scripts-pr-app[bot]
9a92df420e Update CHANGELOG.md (#7181)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:11:45 +00:00
Slaviša Arežina
c6864c74bc Update n8n.sh (#7176) 2025-08-25 14:11:26 +02:00
community-scripts-pr-app[bot]
941457b392 Update CHANGELOG.md (#7180)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 12:11:17 +00:00
Slaviša Arežina
e84ea56a8f Update php config to 8.3 (#7171) 2025-08-25 14:10:52 +02:00
community-scripts-pr-app[bot]
0d36d64454 Update versions.json (#7179)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 14:06:41 +02:00
CanbiZ
74b2407c53 alpine: add source for tools 2025-08-25 14:05:55 +02:00
community-scripts-pr-app[bot]
b97331282f Update CHANGELOG.md (#7170)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 04:59:26 +00:00
Slaviša Arežina
fed5ebd9c8 Lidarr: Fix RELEASE variable fetching (#7162) 2025-08-25 06:59:01 +02:00
community-scripts-pr-app[bot]
be4a6f1a4f Update CHANGELOG.md (#7168)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 00:13:09 +00:00
community-scripts-pr-app[bot]
b383d43d9c Update versions.json (#7167)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-25 02:12:50 +02:00
community-scripts-pr-app[bot]
54b676b529 Update CHANGELOG.md (#7158)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 18:48:31 +00:00
Slaviša Arežina
d465ca87f2 Switch to v2 stable (#7150) 2025-08-24 20:48:08 +02:00
community-scripts-pr-app[bot]
e32c2b7dea Update CHANGELOG.md (#7156)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 16:30:00 +00:00
Slaviša Arežina
444cbc2aa1 BookLore: Fix Nginx config (#7155) 2025-08-24 18:29:40 +02:00
community-scripts-pr-app[bot]
497622832e Update versions.json (#7151)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 14:05:59 +02:00
community-scripts-pr-app[bot]
f36ac8831e Update CHANGELOG.md (#7145)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 07:32:25 +00:00
Slaviša Arežina
66049f400c Fix install log parsing (#7140) 2025-08-24 09:32:04 +02:00
CanbiZ
8daa235a88 cat improvement 2025-08-24 08:08:35 +02:00
community-scripts-pr-app[bot]
072595c8fb Update CHANGELOG.md (#7142)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 00:14:50 +00:00
community-scripts-pr-app[bot]
85f8e5cd73 Update versions.json (#7141)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-24 02:14:29 +02:00
community-scripts-pr-app[bot]
07fbcf57d4 Update CHANGELOG.md (#7139)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 20:06:23 +00:00
Slaviša Arežina
f09c5db961 Fix file names (#7136) 2025-08-23 22:05:57 +02:00
community-scripts-pr-app[bot]
c1e93d7d79 Update CHANGELOG.md (#7134)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 14:40:40 +00:00
Slaviša Arežina
292e48f4b4 Fix env path (#7130) 2025-08-23 16:40:16 +02:00
Slaviša Arežina
1d8b8c87bd Update prometheus-install.sh (#7126) 2025-08-23 16:39:55 +02:00
community-scripts-pr-app[bot]
acfcf98273 Update versions.json (#7132)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 14:04:41 +02:00
community-scripts-pr-app[bot]
5bb15dedae Update CHANGELOG.md (#7129)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 08:26:45 +00:00
Slaviša Arežina
07394b9a7d Refactor (#7096) 2025-08-23 10:26:30 +02:00
Slaviša Arežina
1fce2de5c1 Refactor (#7091) 2025-08-23 10:26:04 +02:00
community-scripts-pr-app[bot]
88579d4be3 Update CHANGELOG.md (#7128)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 08:25:47 +00:00
Slaviša Arežina
e7ccf9a512 Refactor: Radarr (#7088)
* Refactor

* Update radarr.sh
2025-08-23 10:25:28 +02:00
community-scripts-pr-app[bot]
52a9ad733d Update CHANGELOG.md (#7127)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 08:25:24 +00:00
Slaviša Arežina
23f65d0eb7 Refactor: Snipe-IT (#7081)
* Refactor

* Update snipeit.sh

* Update
2025-08-23 10:24:57 +02:00
community-scripts-pr-app[bot]
aece852e10 Update CHANGELOG.md (#7124)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 05:43:35 +00:00
Chris
d7dea7cc5d Immich: v1.139.2 (#7116)
* Switch to pnpm for build

- The Immich repo now uses pnpm to build the server, web/api and cli

* streamline dependency installation

- remove unnecessary duplicates
- install libaom-dev from testing repo

* Bump version to v1.139.2
2025-08-23 07:43:16 +02:00
community-scripts-pr-app[bot]
5cd24b503c Update CHANGELOG.md (#7120)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 00:13:39 +00:00
community-scripts-pr-app[bot]
2e5db6a283 Update versions.json (#7119)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-23 02:13:15 +02:00
community-scripts-pr-app[bot]
32f6a76426 Update CHANGELOG.md (#7115)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 18:20:06 +00:00
Slaviša Arežina
5d526717ef Refactor (#7093) 2025-08-22 20:19:41 +02:00
community-scripts-pr-app[bot]
287265d554 Update CHANGELOG.md (#7114)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 18:17:59 +00:00
Slaviša Arežina
e72f248918 Refactor (#7095) 2025-08-22 20:17:32 +02:00
community-scripts-pr-app[bot]
c207d65b1b Update CHANGELOG.md (#7113)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 18:14:35 +00:00
Slaviša Arežina
fb1d5d5a33 Refactor (#7092) 2025-08-22 20:14:12 +02:00
community-scripts-pr-app[bot]
ed5dfa6eef Update CHANGELOG.md (#7112)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 18:13:19 +00:00
Slaviša Arežina
8314e59973 Refactor (#7090) 2025-08-22 20:12:47 +02:00
community-scripts-pr-app[bot]
b73c50399d Update CHANGELOG.md (#7110)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 16:01:33 +00:00
Slaviša Arežina
50feb0d846 Refactor: qBittorrent (#7089) 2025-08-22 18:01:10 +02:00
community-scripts-pr-app[bot]
4773649706 Update CHANGELOG.md (#7109)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 13:56:12 +00:00
Slaviša Arežina
ebb5d8f2c4 Refactor: RDTClient (#7086)
* Refactor

* Update rdtclient.sh
2025-08-22 15:55:47 +02:00
CanbiZ
0555dbd93c fix conf 2025-08-22 15:47:46 +02:00
community-scripts-pr-app[bot]
e63bc92368 Update CHANGELOG.md (#7108)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:59:29 +00:00
Slaviša Arežina
a74b7c4763 Refactor: Recyclarr (#7085)
* Refactor

* Update recyclarr.sh
2025-08-22 14:59:11 +02:00
CanbiZ
73178f5ff4 correct install place of nltk 2025-08-22 14:58:27 +02:00
community-scripts-pr-app[bot]
0358111f5f Update CHANGELOG.md (#7107)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:23:48 +00:00
Slaviša Arežina
7346e7b1ab Refactor: RevealJS (#7084)
* Refactor

* Update revealjs.sh
2025-08-22 14:23:21 +02:00
CanbiZ
4add8e8273 popd 2025-08-22 14:22:47 +02:00
community-scripts-pr-app[bot]
49f1f7b1e2 Update CHANGELOG.md (#7106)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:16:05 +00:00
Slaviša Arežina
e5a6a5f1c0 Refactor: Rclone (#7087)
* Refactor

* Update rclone.sh
2025-08-22 14:15:44 +02:00
community-scripts-pr-app[bot]
19365b5083 Update CHANGELOG.md (#7105)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:13:33 +00:00
Slaviša Arežina
12d3457002 Refactor: Semaphore (#7083)
* Refactor

* Update semaphore.sh
2025-08-22 14:13:13 +02:00
community-scripts-pr-app[bot]
18abecbf9b Update CHANGELOG.md (#7104)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:11:47 +00:00
Slaviša Arežina
2ead98c480 Refactor: Silverbullet (#7082)
* Refactor

* Update silverbullet.sh
2025-08-22 14:11:23 +02:00
community-scripts-pr-app[bot]
265321b0c0 Update CHANGELOG.md (#7103)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:09:21 +00:00
Slaviša Arežina
bae22ebf82 Refactor (#7094) 2025-08-22 14:09:00 +02:00
CanbiZ
c80f136871 fix nltk issue with uv python 2025-08-22 14:08:25 +02:00
community-scripts-pr-app[bot]
faf4fbd0fd Update CHANGELOG.md (#7102)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 12:07:40 +00:00
Slaviša Arežina
41e8958ab9 Refactor (#7080) 2025-08-22 14:07:13 +02:00
community-scripts-pr-app[bot]
cdc546f879 Update versions.json (#7101)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 14:05:24 +02:00
community-scripts-pr-app[bot]
4ded6585a2 Update CHANGELOG.md (#7099)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 11:03:13 +00:00
CanbiZ
2892b85a6f paperless: nltk fix (#7098) 2025-08-22 13:02:51 +02:00
CanbiZ
e28ab86797 add system flag for uv 2025-08-22 12:01:06 +02:00
CanbiZ
2c3193ebb3 nltk 2025-08-22 03:37:32 +02:00
community-scripts-pr-app[bot]
96959ffdb0 Update CHANGELOG.md (#7078)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 01:36:43 +00:00
Chris
13fbf25ecd Fix: use correct tag parsing for release during update check (#7072) 2025-08-22 03:36:22 +02:00
community-scripts-pr-app[bot]
21d2159f22 Update CHANGELOG.md (#7076)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 00:12:57 +00:00
community-scripts-pr-app[bot]
a42ceeac98 Update versions.json (#7075)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-22 02:12:34 +02:00
community-scripts-pr-app[bot]
6e7ad44d36 Update CHANGELOG.md (#7071)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 18:54:24 +00:00
CanbiZ
9ea852ffad tianji: add uv deps (#7066) 2025-08-21 20:53:56 +02:00
community-scripts-pr-app[bot]
d4bd7a6fda Update date in json (#7070)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-21 18:05:06 +00:00
community-scripts-pr-app[bot]
316f4043d4 Update CHANGELOG.md (#7069)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 18:04:58 +00:00
push-app-to-main[bot]
f799c90712 'Add new script' (#7052)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-08-21 20:04:40 +02:00
community-scripts-pr-app[bot]
7de8934105 Update CHANGELOG.md (#7068)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 18:04:30 +00:00
CanbiZ
15dedc1e16 zitadel: installer for v4 (#7058) 2025-08-21 20:04:09 +02:00
community-scripts-pr-app[bot]
13f46d2c58 Update CHANGELOG.md (#7065)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 17:50:27 +00:00
CanbiZ
ff7e7a6e10 Paperless-NGX: create direction for nltk (#7064) 2025-08-21 19:50:03 +02:00
community-scripts-pr-app[bot]
c49519a7de Update versions.json (#7057)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 14:05:19 +02:00
community-scripts-pr-app[bot]
8ce4776a87 Update CHANGELOG.md (#7055)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 11:44:47 +00:00
Chris
9cda1a8680 Immich: hotfix - revert 7035 (#7054) 2025-08-21 13:44:26 +02:00
community-scripts-pr-app[bot]
c9b5e27d74 Update CHANGELOG.md (#7051)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 08:13:24 +00:00
CanbiZ
70ec048aa9 duplicati: fix release pattern (#7049)
* duplicati: fix pattern

* Update duplicati.sh
2025-08-21 10:12:59 +02:00
community-scripts-pr-app[bot]
89af0c466b Update CHANGELOG.md (#7050)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 08:03:06 +00:00
CanbiZ
93a1710e20 technitiumdns: fix unbound variable (#7047) 2025-08-21 10:02:48 +02:00
community-scripts-pr-app[bot]
91a5c9c48f Update CHANGELOG.md (#7045)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 07:15:24 +00:00
CanbiZ
e85353856b [core]: improve binary globbing for gh releases (#7044) 2025-08-21 09:14:59 +02:00
community-scripts-pr-app[bot]
bf99523a94 Update CHANGELOG.md (#7041)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 00:11:36 +00:00
community-scripts-pr-app[bot]
c1b3321801 Update versions.json (#7040)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-21 02:11:13 +02:00
community-scripts-pr-app[bot]
beb9189c72 Update CHANGELOG.md (#7038)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 20:23:50 +00:00
community-scripts-pr-app[bot]
186c82d156 Update CHANGELOG.md (#7036)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 19:48:09 +00:00
Chris
9d431458ca Immich: fix small issue with immich-admin "start" script (#7035) 2025-08-20 21:47:44 +02:00
community-scripts-pr-app[bot]
9c86eea347 Update CHANGELOG.md (#7034)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 18:49:44 +00:00
Tobias
e20af295f0 fix: verbose (#7023) 2025-08-20 20:49:17 +02:00
community-scripts-pr-app[bot]
68832d71fa Update CHANGELOG.md (#7033)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 18:19:08 +00:00
CanbiZ
2e13483f19 Post-Install, change pve-test for trixie (#7031)
* Postinstall, Change pve-test

* MSG improved
2025-08-20 20:18:48 +02:00
community-scripts-pr-app[bot]
c7643ae88c Update CHANGELOG.md (#7032)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 18:08:55 +00:00
Slaviša Arežina
f16f7a130a Fix update (#7027) 2025-08-20 20:08:33 +02:00
community-scripts-pr-app[bot]
94a8fe7132 Update CHANGELOG.md (#7029)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 15:29:42 +00:00
CanbiZ
059d297305 remove unneeded line in paperless 2025-08-20 17:29:21 +02:00
CanbiZ
2bd2a763a1 merge setup_gs from VED to VE 2025-08-20 17:27:19 +02:00
Slaviša Arežina
452ba92a6f Update wastebin.sh (#7024) 2025-08-20 15:54:53 +02:00
community-scripts-pr-app[bot]
d27a875987 Update CHANGELOG.md (#7022)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 13:34:07 +00:00
Slaviša Arežina
14418411f6 Bugfix (#7018) 2025-08-20 15:33:44 +02:00
community-scripts-pr-app[bot]
f13c8ff3ce Update CHANGELOG.md (#7021)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 13:31:06 +00:00
Slaviša Arežina
28dc145811 Update barcode-buddy-install.sh (#7020) 2025-08-20 15:30:43 +02:00
community-scripts-pr-app[bot]
170543bb66 Update CHANGELOG.md (#7019)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 13:18:33 +00:00
CanbiZ
c783024ef0 Refactor: Paperless-ngx (#6938)
* Refactor: Paperless-NGX

* Refactor: Paperless-ngx

* Update paperless-ngx.json

* VED -> VE

* harmonize with VED

* finalize

* Update paperless-ngx.json

* finalize

* fix: casing

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-08-20 15:18:05 +02:00
community-scripts-pr-app[bot]
19403a627b Update CHANGELOG.md (#7016)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 12:00:35 +00:00
CanbiZ
cc08395a1d Feature: Netdata support PVE9 (#7012) 2025-08-20 14:00:10 +02:00
community-scripts-pr-app[bot]
d5093a3d9d Update CHANGELOG.md (#7015)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 11:59:55 +00:00
Slaviša Arežina
52c4f3e0c2 Refactor (#7008) 2025-08-20 13:59:32 +02:00
community-scripts-pr-app[bot]
76a4ec9e06 Update CHANGELOG.md (#7014)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 11:07:20 +00:00
CanbiZ
bebf6f65aa PBS: ifupdown2 reload (#7013) 2025-08-20 13:06:54 +02:00
community-scripts-pr-app[bot]
34582c4dc4 Update CHANGELOG.md (#7005)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 00:12:25 +00:00
community-scripts-pr-app[bot]
4495878c4f Update versions.json (#7004)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-20 02:12:00 +02:00
community-scripts-pr-app[bot]
3c33e8b826 Update CHANGELOG.md (#7001)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 19:56:10 +00:00
CanbiZ
be6cc7ddbb Refactor: Tdarr (#6969) 2025-08-19 21:55:42 +02:00
community-scripts-pr-app[bot]
615049ce5c Update CHANGELOG.md (#6999)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 17:41:37 +00:00
community-scripts-pr-app[bot]
f9e5c46b21 Update CHANGELOG.md (#6998)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 17:41:19 +00:00
community-scripts-pr-app[bot]
913102d66f Update CHANGELOG.md (#6997)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 17:41:09 +00:00
community-scripts-pr-app[bot]
07628f3b76 Update CHANGELOG.md (#6996)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 17:40:56 +00:00
CanbiZ
291d364158 [web]: update logos from reactive-resume & slskd (#6990) 2025-08-19 19:40:44 +02:00
community-scripts-pr-app[bot]
98c4a2ccae Update CHANGELOG.md (#6995)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 17:40:34 +00:00
CanbiZ
c60098d8eb [core]: create_lxc - fix offline issue with alpine packages (#6994) 2025-08-19 19:40:12 +02:00
CanbiZ
7df1dbaf17 quickfix: mapfile for _standard_ mapping
there was an issue, that when debian-12-standard% not available, it uses debian-12-turnkey-xxxx
2025-08-19 16:24:26 +02:00
community-scripts-pr-app[bot]
304c90a1af Update CHANGELOG.md (#6988)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 13:02:05 +00:00
Slaviša Arežina
01fe1b1f62 Refactor (#6958) 2025-08-19 15:01:41 +02:00
community-scripts-pr-app[bot]
fd85e71fcf Update CHANGELOG.md (#6987)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:52:00 +00:00
CanbiZ
66c03ce1b4 Refactor: Glances (+ Feature Bump) (#6976)
* Refactor: Glances

* Update glances.json

* Update glances.json
2025-08-19 14:51:33 +02:00
community-scripts-pr-app[bot]
067f9eb209 Update CHANGELOG.md (#6986)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:44:44 +00:00
Chris
cd3dbc864f Immich: Bump version to 1.138.1 (#6984) 2025-08-19 14:44:25 +02:00
community-scripts-pr-app[bot]
f42f06343d Update CHANGELOG.md (#6985)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:44:16 +00:00
CanbiZ
e46648ecdc [core]: add new features to create_lxc (#6979) 2025-08-19 14:43:54 +02:00
community-scripts-pr-app[bot]
206751f517 Update versions.json (#6982)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 14:17:26 +02:00
community-scripts-pr-app[bot]
6a06afcbb9 Update CHANGELOG.md (#6983)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:06:45 +00:00
Slaviša Arežina
bd3e93215b Refactor: TeddyCloud (#6963)
* Refactor

* Update
2025-08-19 14:06:24 +02:00
community-scripts-pr-app[bot]
94b9aa4025 Update CHANGELOG.md (#6981)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:06:07 +00:00
Slaviša Arežina
36523dfd33 Refactor: Technitium DNS (#6968)
* Refactor

* Update json

* Update
2025-08-19 14:05:37 +02:00
community-scripts-pr-app[bot]
618fa65bc2 Update CHANGELOG.md (#6980)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 12:03:20 +00:00
CanbiZ
1dd417fdaa [core]: extend setup_uv to work with alpine (#6978) 2025-08-19 14:03:00 +02:00
community-scripts-pr-app[bot]
4480a70ceb Update CHANGELOG.md (#6977)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 11:28:52 +00:00
CanbiZ
5d423888d9 Debian 13 VM (#6970) 2025-08-19 13:28:25 +02:00
Slaviša Arežina
81876d6992 Update wallos-install.sh (#6973) 2025-08-19 12:33:43 +02:00
community-scripts-pr-app[bot]
b777d74dce Update CHANGELOG.md (#6967)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 07:34:49 +00:00
Slaviša Arežina
c904da6b94 Fix release fetching (#6961) 2025-08-19 09:34:23 +02:00
community-scripts-pr-app[bot]
4591b58e66 Update CHANGELOG.md (#6966)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 07:20:25 +00:00
community-scripts-pr-app[bot]
8f7cd0bff9 Update CHANGELOG.md (#6965)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 07:20:05 +00:00
community-scripts-pr-app[bot]
60318fd77b Update date in json (#6964)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-19 07:20:03 +00:00
push-app-to-main[bot]
50c41cec72 Swizzin (#6962)
* 'Add new script'

* clear \n

* add outsource info in json

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-08-19 09:19:40 +02:00
community-scripts-pr-app[bot]
ef2e9803d0 Update CHANGELOG.md (#6957)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 05:49:34 +00:00
Azamat
e428a05b45 Update hev-socks5-server-install.sh (#6953)
Update hev-socks5-server-install.sh
Change branch name from master to main.

https://raw.githubusercontent.com/heiher/${APPLICATION}/refs/heads/master/conf/main.yml <= 404 Not found

https://raw.githubusercontent.com/heiher/hev-socks5-server/refs/heads/main/conf/main.yml <= Correct link
2025-08-19 07:49:13 +02:00
community-scripts-pr-app[bot]
37e5f7272e Update CHANGELOG.md (#6955)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 00:14:19 +00:00
community-scripts-pr-app[bot]
5560c4eb12 Update versions.json (#6954)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-19 02:13:55 +02:00
community-scripts-pr-app[bot]
be6e2e3cb1 Update CHANGELOG.md (#6949)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 20:15:16 +00:00
CanbiZ
7086a15321 OpenWRT: add info for VLAN-aware in frontend (#6944) 2025-08-18 22:14:53 +02:00
community-scripts-pr-app[bot]
23f29b14fe Update CHANGELOG.md (#6948)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 20:12:47 +00:00
Slaviša Arežina
9aafb65a98 Refactor: Traefik (#6940)
* Refactor

* typo

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-08-18 22:12:22 +02:00
community-scripts-pr-app[bot]
296f4577d0 Update CHANGELOG.md (#6947)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 19:05:52 +00:00
Slaviša Arežina
1ea1429874 Refactor: Traccar (#6942)
* Refactor

* Update
2025-08-18 21:05:30 +02:00
community-scripts-pr-app[bot]
3f70f92fbb Update CHANGELOG.md (#6946)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 18:16:41 +00:00
CanbiZ
23c6994835 Keycloak: fix update function (#6943)
* Keycloak: fix update function

* fix issue with .keycloak file

* Update keycloak-install.sh

* remove double command

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-08-18 20:16:14 +02:00
community-scripts-pr-app[bot]
70cd362d3e Update CHANGELOG.md (#6945)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 17:59:15 +00:00
Slaviša Arežina
aed25098e5 Refactor (#6939) 2025-08-18 19:58:50 +02:00
community-scripts-pr-app[bot]
a79392149e Update .app files (#6937)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-18 16:29:33 +02:00
community-scripts-pr-app[bot]
f32647a3d3 Update CHANGELOG.md (#6936)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 14:26:56 +00:00
Chris
bb3c77f1b6 Immich: add message to indicate image-processing library update check (#6935) 2025-08-18 16:26:27 +02:00
community-scripts-pr-app[bot]
66a582dd09 Update CHANGELOG.md (#6932)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 12:32:22 +00:00
CanbiZ
06eb76c5d9 CopyParty (#6929)
* CopyParty

* add conf path in json

* change category to files
2025-08-18 14:32:00 +02:00
community-scripts-pr-app[bot]
a37f921aff Update versions.json (#6931)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 14:05:58 +02:00
community-scripts-pr-app[bot]
5c7e221efa Update .app files (#6925)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-18 09:50:06 +02:00
community-scripts-pr-app[bot]
7e00889967 Update CHANGELOG.md (#6927)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 07:49:51 +00:00
community-scripts-pr-app[bot]
f1d855e331 Update CHANGELOG.md (#6926)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 07:49:40 +00:00
Gabriel David Pragin
a33bbd603d fix: unbound env variable (#6922) 2025-08-18 09:49:29 +02:00
community-scripts-pr-app[bot]
472ad02d44 Update date in json (#6924)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-08-18 07:49:21 +00:00
push-app-to-main[bot]
aed2fbc4b1 Twingate-Connector (#6921) 2025-08-18 09:48:59 +02:00
community-scripts-pr-app[bot]
dabb49d7eb Update CHANGELOG.md (#6920)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 06:22:34 +00:00
Slaviša Arežina
61b7b96780 Refactor (#6916) 2025-08-18 08:22:09 +02:00
community-scripts-pr-app[bot]
a72885b4c1 Update CHANGELOG.md (#6918)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 00:17:01 +00:00
community-scripts-pr-app[bot]
58fe2df6b4 Update versions.json (#6917)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-18 02:16:37 +02:00
community-scripts-pr-app[bot]
5c8bd4b124 Update versions.json (#6914)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-17 14:04:58 +02:00
community-scripts-pr-app[bot]
b6d7ad7c38 Update CHANGELOG.md (#6910)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-17 00:15:44 +00:00
community-scripts-pr-app[bot]
dd4d518052 Update versions.json (#6909)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-17 02:15:22 +02:00
community-scripts-pr-app[bot]
a99650f969 Update CHANGELOG.md (#6905)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-16 20:54:02 +00:00
Slaviša Arežina
842d73de82 Refactor (#6902) 2025-08-16 22:53:43 +02:00
community-scripts-pr-app[bot]
65f731d88b Update CHANGELOG.md (#6904)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-16 20:40:43 +00:00
Slaviša Arežina
363685d3d3 Refactor (#6900) 2025-08-16 22:40:14 +02:00
community-scripts-pr-app[bot]
ff77960aa6 Update CHANGELOG.md (#6903)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-16 20:39:58 +00:00
Slaviša Arežina
8d4a81d28e Update wireguard.sh (#6898) 2025-08-16 22:39:38 +02:00
community-scripts-pr-app[bot]
faf10a9d5b Update versions.json (#6895)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-16 14:04:52 +02:00
community-scripts-pr-app[bot]
1b931becaa Update CHANGELOG.md (#6894)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-08-16 06:31:26 +00:00
WarLord185
905198116d Tandoor Images Fix (#6892) 2025-08-16 08:31:02 +02:00
358 changed files with 8487 additions and 5297 deletions

View File

@@ -67,6 +67,14 @@ body:
validations:
required: true
- type: input
id: pve_version
attributes:
label: 📈 Which Proxmox version are you on?
placeholder: "run pveversion in your PVE node console"
validations:
required: true
- type: textarea
id: issue_description
attributes:

View File

@@ -10,8 +10,401 @@
> [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-09-06
## 2025-09-05
### 🚀 Updated Scripts
- Tududi: Pin version to 0.80 [@vhsdream](https://github.com/vhsdream) ([#7420](https://github.com/community-scripts/ProxmoxVE/pull/7420))
- #### 🐞 Bug Fixes
- AdventureLog: Update dependencies [@tremor021](https://github.com/tremor021) ([#7404](https://github.com/community-scripts/ProxmoxVE/pull/7404))
### 🌐 Website
- refactor: Enhance ScriptAccordion and Sidebar components to support selectedCategory state [@BramSuurdje](https://github.com/BramSuurdje) ([#7405](https://github.com/community-scripts/ProxmoxVE/pull/7405))
## 2025-09-04
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- fix: Syntax error in Immich scripts [@henworth](https://github.com/henworth) ([#7398](https://github.com/community-scripts/ProxmoxVE/pull/7398))
- Netdata: Fix pve_check for 8 [@MickLesk](https://github.com/MickLesk) ([#7392](https://github.com/community-scripts/ProxmoxVE/pull/7392))
- #### 🔧 Refactor
- Immich: pin compiled photo library revisions [@vhsdream](https://github.com/vhsdream) ([#7395](https://github.com/community-scripts/ProxmoxVE/pull/7395))
## 2025-09-03
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Element-Synapse: Increase HDD size [@tremor021](https://github.com/tremor021) ([#7384](https://github.com/community-scripts/ProxmoxVE/pull/7384))
- Wizarr: fix uv lock issue; use correct output suppression [@vhsdream](https://github.com/vhsdream) ([#7378](https://github.com/community-scripts/ProxmoxVE/pull/7378))
- Netbox: Fix missing directory [@tremor021](https://github.com/tremor021) ([#7374](https://github.com/community-scripts/ProxmoxVE/pull/7374))
- #### 🔧 Refactor
- Enhanced IP-Tag installation script with interactive configuration, improved VM IP detection, and better visual indicators [@DesertGamer](https://github.com/DesertGamer) ([#7366](https://github.com/community-scripts/ProxmoxVE/pull/7366))
### 🌐 Website
- #### 🐞 Bug Fixes
- Fix navigation [@BramSuurdje](https://github.com/BramSuurdje) ([#7376](https://github.com/community-scripts/ProxmoxVE/pull/7376))
## 2025-09-02
### 🚀 Updated Scripts
- Increase default disk size for Apt-Cacher-NG [@MickLesk](https://github.com/MickLesk) ([#7352](https://github.com/community-scripts/ProxmoxVE/pull/7352))
- #### 🐞 Bug Fixes
- Snipe-IT: Fix Nginx configuration [@tremor021](https://github.com/tremor021) ([#7358](https://github.com/community-scripts/ProxmoxVE/pull/7358))
- booklore: remove folder before update [@MickLesk](https://github.com/MickLesk) ([#7351](https://github.com/community-scripts/ProxmoxVE/pull/7351))
- #### ✨ New Features
- Immich: bump version to 1.140.1 [@vhsdream](https://github.com/vhsdream) ([#7349](https://github.com/community-scripts/ProxmoxVE/pull/7349))
### 🌐 Website
- #### 📝 Script Information
- pbs: increase note on website for ipv6 [@MickLesk](https://github.com/MickLesk) ([#7339](https://github.com/community-scripts/ProxmoxVE/pull/7339))
## 2025-09-01
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Update configarr.sh to mv backep up .env correctly [@finkerle](https://github.com/finkerle) ([#7323](https://github.com/community-scripts/ProxmoxVE/pull/7323))
- #### ✨ New Features
- Refactor + Feature Bump: HomeAssistant OS [@MickLesk](https://github.com/MickLesk) ([#7336](https://github.com/community-scripts/ProxmoxVE/pull/7336))
- UmbrelOS: Refactor / use q35 / better import [@MickLesk](https://github.com/MickLesk) ([#7329](https://github.com/community-scripts/ProxmoxVE/pull/7329))
- Harmonize GH Release Check (excl. Pre-Releases & Migrate old "_version.txt" [@MickLesk](https://github.com/MickLesk) ([#7328](https://github.com/community-scripts/ProxmoxVE/pull/7328))
### 🌐 Website
- Bump next from 15.2.4 to 15.5.2 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#7309](https://github.com/community-scripts/ProxmoxVE/pull/7309))
- #### 📝 Script Information
- booklore: add note for start-up in frontend [@MickLesk](https://github.com/MickLesk) ([#7331](https://github.com/community-scripts/ProxmoxVE/pull/7331))
## 2025-08-31
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- n8n: Increase disk size [@tremor021](https://github.com/tremor021) ([#7320](https://github.com/community-scripts/ProxmoxVE/pull/7320))
## 2025-08-30
### 🚀 Updated Scripts
- Immich: bump version to 1.140.0 [@vhsdream](https://github.com/vhsdream) ([#7275](https://github.com/community-scripts/ProxmoxVE/pull/7275))
- #### 🔧 Refactor
- Refactor gitea-mirror env-file [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7240](https://github.com/community-scripts/ProxmoxVE/pull/7240))
## 2025-08-29
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- fix version check for pocket-id migration [@MickLesk](https://github.com/MickLesk) ([#7298](https://github.com/community-scripts/ProxmoxVE/pull/7298))
- fix: remove file creation at release fetching and version checking logic [@MickLesk](https://github.com/MickLesk) ([#7299](https://github.com/community-scripts/ProxmoxVE/pull/7299))
- Zitadel: Fix initial setup [@tremor021](https://github.com/tremor021) ([#7284](https://github.com/community-scripts/ProxmoxVE/pull/7284))
- post-pbs: increase enterprise recognition [@MickLesk](https://github.com/MickLesk) ([#7280](https://github.com/community-scripts/ProxmoxVE/pull/7280))
- Fix typo where install mode was changed instead of pinned version [@Brandsma](https://github.com/Brandsma) ([#7277](https://github.com/community-scripts/ProxmoxVE/pull/7277))
- #### ✨ New Features
- [core]: feature - check_for_gh_release - version pinning [@MickLesk](https://github.com/MickLesk) ([#7279](https://github.com/community-scripts/ProxmoxVE/pull/7279))
- [feat]: migrate all update_scripts to new version helper (gh) [@MickLesk](https://github.com/MickLesk) ([#7262](https://github.com/community-scripts/ProxmoxVE/pull/7262))
## 2025-08-28
### 🆕 New Scripts
- MediaManager ([#7238](https://github.com/community-scripts/ProxmoxVE/pull/7238))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- MMDL: add build-essential as dep [@vhsdream](https://github.com/vhsdream) ([#7266](https://github.com/community-scripts/ProxmoxVE/pull/7266))
- #### ✨ New Features
- add support for multiple ip addresses in monitor-all.sh [@moshekv](https://github.com/moshekv) ([#7244](https://github.com/community-scripts/ProxmoxVE/pull/7244))
- [core]: feature - check_for_gh_release as update-handler [@MickLesk](https://github.com/MickLesk) ([#7254](https://github.com/community-scripts/ProxmoxVE/pull/7254))
- #### 💥 Breaking Changes
- Flaresolverr: Pin to 3.3.25 (Python Issue) [@MickLesk](https://github.com/MickLesk) ([#7248](https://github.com/community-scripts/ProxmoxVE/pull/7248))
### 🌐 Website
- #### 📝 Script Information
- Keycloak: Update website [@tremor021](https://github.com/tremor021) ([#7256](https://github.com/community-scripts/ProxmoxVE/pull/7256))
## 2025-08-27
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- searxng: improve installation [@MickLesk](https://github.com/MickLesk) ([#7233](https://github.com/community-scripts/ProxmoxVE/pull/7233))
- Homebox: Fix Update Script [@MickLesk](https://github.com/MickLesk) ([#7232](https://github.com/community-scripts/ProxmoxVE/pull/7232))
## 2025-08-26
### 🆕 New Scripts
- tracktor ([#7190](https://github.com/community-scripts/ProxmoxVE/pull/7190))
- PBS: Upgrade Script for v4 [@MickLesk](https://github.com/MickLesk) ([#7214](https://github.com/community-scripts/ProxmoxVE/pull/7214))
### 🚀 Updated Scripts
- #### ✨ New Features
- Refactor: Post-PBS-Script [@MickLesk](https://github.com/MickLesk) ([#7213](https://github.com/community-scripts/ProxmoxVE/pull/7213))
- Refactor: Post-PMG-Script [@MickLesk](https://github.com/MickLesk) ([#7212](https://github.com/community-scripts/ProxmoxVE/pull/7212))
### 🌐 Website
- #### 📝 Script Information
- [website] Update documentation URLs [@tremor021](https://github.com/tremor021) ([#7201](https://github.com/community-scripts/ProxmoxVE/pull/7201))
## 2025-08-25
### 🆕 New Scripts
- Alpine-RustDesk Server [@tremor021](https://github.com/tremor021) ([#7191](https://github.com/community-scripts/ProxmoxVE/pull/7191))
- Alpine-Redlib ([#7178](https://github.com/community-scripts/ProxmoxVE/pull/7178))
- healthchecks ([#7177](https://github.com/community-scripts/ProxmoxVE/pull/7177))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- FileBrowser Quantum: safer update (tmp download + atomic replace + arch autodetect) [@CommanderPaladin](https://github.com/CommanderPaladin) ([#7174](https://github.com/community-scripts/ProxmoxVE/pull/7174))
- Immich: bump to v1.139.4 [@vhsdream](https://github.com/vhsdream) ([#7138](https://github.com/community-scripts/ProxmoxVE/pull/7138))
- Komodo: Fix compose.env path [@tremor021](https://github.com/tremor021) ([#7202](https://github.com/community-scripts/ProxmoxVE/pull/7202))
- Komodo: Fix update procedure and missing env var [@tremor021](https://github.com/tremor021) ([#7198](https://github.com/community-scripts/ProxmoxVE/pull/7198))
- SnipeIT: Update nginx config to v8.3 [@tremor021](https://github.com/tremor021) ([#7171](https://github.com/community-scripts/ProxmoxVE/pull/7171))
- Lidarr: Fix RELEASE variable fetching [@tremor021](https://github.com/tremor021) ([#7162](https://github.com/community-scripts/ProxmoxVE/pull/7162))
- #### ✨ New Features
- Komodo: Generate admin users password [@tremor021](https://github.com/tremor021) ([#7193](https://github.com/community-scripts/ProxmoxVE/pull/7193))
- [core]: uv uses now "update-shell" command [@MickLesk](https://github.com/MickLesk) ([#7172](https://github.com/community-scripts/ProxmoxVE/pull/7172))
- [core]: tools.func - better verbose for postgresql [@MickLesk](https://github.com/MickLesk) ([#7173](https://github.com/community-scripts/ProxmoxVE/pull/7173))
- n8n: Force update to NodeJS v22 [@tremor021](https://github.com/tremor021) ([#7176](https://github.com/community-scripts/ProxmoxVE/pull/7176))
### 🌐 Website
- #### 📝 Script Information
- 2FAuth: Fix website and docs URLs [@tremor021](https://github.com/tremor021) ([#7199](https://github.com/community-scripts/ProxmoxVE/pull/7199))
## 2025-08-24
### 🚀 Updated Scripts
- Kasm: Fix install log parsing [@tremor021](https://github.com/tremor021) ([#7140](https://github.com/community-scripts/ProxmoxVE/pull/7140))
- #### 🐞 Bug Fixes
- BookLore: Fix Nginx config [@tremor021](https://github.com/tremor021) ([#7155](https://github.com/community-scripts/ProxmoxVE/pull/7155))
- #### ✨ New Features
- Syncthing: Switch to v2 stable repository [@tremor021](https://github.com/tremor021) ([#7150](https://github.com/community-scripts/ProxmoxVE/pull/7150))
## 2025-08-23
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- qBittorrent: Fix file names [@tremor021](https://github.com/tremor021) ([#7136](https://github.com/community-scripts/ProxmoxVE/pull/7136))
- Tandoor: Fix env path [@tremor021](https://github.com/tremor021) ([#7130](https://github.com/community-scripts/ProxmoxVE/pull/7130))
- #### 💥 Breaking Changes
- Immich: v1.139.2 [@vhsdream](https://github.com/vhsdream) ([#7116](https://github.com/community-scripts/ProxmoxVE/pull/7116))
- #### 🔧 Refactor
- Refactor: Pf2eTools [@tremor021](https://github.com/tremor021) ([#7096](https://github.com/community-scripts/ProxmoxVE/pull/7096))
- Refactor: Prowlarr [@tremor021](https://github.com/tremor021) ([#7091](https://github.com/community-scripts/ProxmoxVE/pull/7091))
- Refactor: Radarr [@tremor021](https://github.com/tremor021) ([#7088](https://github.com/community-scripts/ProxmoxVE/pull/7088))
- Refactor: Snipe-IT [@tremor021](https://github.com/tremor021) ([#7081](https://github.com/community-scripts/ProxmoxVE/pull/7081))
## 2025-08-22
### 🚀 Updated Scripts
- Refactor: Prometheus [@tremor021](https://github.com/tremor021) ([#7093](https://github.com/community-scripts/ProxmoxVE/pull/7093))
- #### 🐞 Bug Fixes
- paperless: nltk fix [@MickLesk](https://github.com/MickLesk) ([#7098](https://github.com/community-scripts/ProxmoxVE/pull/7098))
- Tududi Fix: use correct tag parsing for release during update check [@vhsdream](https://github.com/vhsdream) ([#7072](https://github.com/community-scripts/ProxmoxVE/pull/7072))
- #### 🔧 Refactor
- Refactor: phpIPAM [@tremor021](https://github.com/tremor021) ([#7095](https://github.com/community-scripts/ProxmoxVE/pull/7095))
- Refactor: Prometheus Paperless NGX Exporter [@tremor021](https://github.com/tremor021) ([#7092](https://github.com/community-scripts/ProxmoxVE/pull/7092))
- Refactor: PS5-MQTT [@tremor021](https://github.com/tremor021) ([#7090](https://github.com/community-scripts/ProxmoxVE/pull/7090))
- Refactor: qBittorrent [@tremor021](https://github.com/tremor021) ([#7089](https://github.com/community-scripts/ProxmoxVE/pull/7089))
- Refactor: RDTClient [@tremor021](https://github.com/tremor021) ([#7086](https://github.com/community-scripts/ProxmoxVE/pull/7086))
- Refactor: Recyclarr [@tremor021](https://github.com/tremor021) ([#7085](https://github.com/community-scripts/ProxmoxVE/pull/7085))
- Refactor: RevealJS [@tremor021](https://github.com/tremor021) ([#7084](https://github.com/community-scripts/ProxmoxVE/pull/7084))
- Refactor: Rclone [@tremor021](https://github.com/tremor021) ([#7087](https://github.com/community-scripts/ProxmoxVE/pull/7087))
- Refactor: Semaphore [@tremor021](https://github.com/tremor021) ([#7083](https://github.com/community-scripts/ProxmoxVE/pull/7083))
- Refactor: Silverbullet [@tremor021](https://github.com/tremor021) ([#7082](https://github.com/community-scripts/ProxmoxVE/pull/7082))
- Refactor: Plant-it [@tremor021](https://github.com/tremor021) ([#7094](https://github.com/community-scripts/ProxmoxVE/pull/7094))
- Refactor: TasmoAdmin [@tremor021](https://github.com/tremor021) ([#7080](https://github.com/community-scripts/ProxmoxVE/pull/7080))
## 2025-08-21
### 🆕 New Scripts
- LiteLLM ([#7052](https://github.com/community-scripts/ProxmoxVE/pull/7052))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- tianji: add uv deps [@MickLesk](https://github.com/MickLesk) ([#7066](https://github.com/community-scripts/ProxmoxVE/pull/7066))
- Zitadel: installer for v4 [@MickLesk](https://github.com/MickLesk) ([#7058](https://github.com/community-scripts/ProxmoxVE/pull/7058))
- Paperless-NGX: create direction for nltk [@MickLesk](https://github.com/MickLesk) ([#7064](https://github.com/community-scripts/ProxmoxVE/pull/7064))
- Immich: hotfix - revert 7035 [@vhsdream](https://github.com/vhsdream) ([#7054](https://github.com/community-scripts/ProxmoxVE/pull/7054))
- duplicati: fix release pattern [@MickLesk](https://github.com/MickLesk) ([#7049](https://github.com/community-scripts/ProxmoxVE/pull/7049))
- technitiumdns: fix unbound variable [@MickLesk](https://github.com/MickLesk) ([#7047](https://github.com/community-scripts/ProxmoxVE/pull/7047))
- [core]: improve binary globbing for gh releases [@MickLesk](https://github.com/MickLesk) ([#7044](https://github.com/community-scripts/ProxmoxVE/pull/7044))
## 2025-08-20
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Post-Install, change pve-test for trixie [@MickLesk](https://github.com/MickLesk) ([#7031](https://github.com/community-scripts/ProxmoxVE/pull/7031))
- Immich: fix small issue with immich-admin "start" script [@vhsdream](https://github.com/vhsdream) ([#7035](https://github.com/community-scripts/ProxmoxVE/pull/7035))
- WasteBin: Small fixes [@tremor021](https://github.com/tremor021) ([#7018](https://github.com/community-scripts/ProxmoxVE/pull/7018))
- Komga: Fix update [@tremor021](https://github.com/tremor021) ([#7027](https://github.com/community-scripts/ProxmoxVE/pull/7027))
- Barcode Buddy: Fix missing dependency [@tremor021](https://github.com/tremor021) ([#7020](https://github.com/community-scripts/ProxmoxVE/pull/7020))
- PBS: ifupdown2 reload [@MickLesk](https://github.com/MickLesk) ([#7013](https://github.com/community-scripts/ProxmoxVE/pull/7013))
- #### ✨ New Features
- Feature: Netdata support PVE9 (Debian 13 Trixie) [@MickLesk](https://github.com/MickLesk) ([#7012](https://github.com/community-scripts/ProxmoxVE/pull/7012))
- #### 🔧 Refactor
- Refactor: RustDesk Server [@tremor021](https://github.com/tremor021) ([#7008](https://github.com/community-scripts/ProxmoxVE/pull/7008))
- ghost: fix: verbose [@CrazyWolf13](https://github.com/CrazyWolf13) ([#7023](https://github.com/community-scripts/ProxmoxVE/pull/7023))
- Refactor: Paperless-ngx [@MickLesk](https://github.com/MickLesk) ([#6938](https://github.com/community-scripts/ProxmoxVE/pull/6938))
## 2025-08-19
### 🆕 New Scripts
- Debian 13 VM [@MickLesk](https://github.com/MickLesk) ([#6970](https://github.com/community-scripts/ProxmoxVE/pull/6970))
- Swizzin ([#6962](https://github.com/community-scripts/ProxmoxVE/pull/6962))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- [core]: create_lxc - fix offline issue with alpine packages [@MickLesk](https://github.com/MickLesk) ([#6994](https://github.com/community-scripts/ProxmoxVE/pull/6994))
- OpenObserve: Fix release fetching [@tremor021](https://github.com/tremor021) ([#6961](https://github.com/community-scripts/ProxmoxVE/pull/6961))
- Update hev-socks5-server-install.sh [@iAzamat2](https://github.com/iAzamat2) ([#6953](https://github.com/community-scripts/ProxmoxVE/pull/6953))
- #### ✨ New Features
- Refactor: Glances (+ Feature Bump) [@MickLesk](https://github.com/MickLesk) ([#6976](https://github.com/community-scripts/ProxmoxVE/pull/6976))
- [core]: add new features to create_lxc [@MickLesk](https://github.com/MickLesk) ([#6979](https://github.com/community-scripts/ProxmoxVE/pull/6979))
- [core]: extend setup_uv to work with alpine [@MickLesk](https://github.com/MickLesk) ([#6978](https://github.com/community-scripts/ProxmoxVE/pull/6978))
- Immich: Bump version to 1.138.1 [@vhsdream](https://github.com/vhsdream) ([#6984](https://github.com/community-scripts/ProxmoxVE/pull/6984))
- #### 🔧 Refactor
- Refactor: Tdarr [@MickLesk](https://github.com/MickLesk) ([#6969](https://github.com/community-scripts/ProxmoxVE/pull/6969))
- Refactor: The Lounge [@tremor021](https://github.com/tremor021) ([#6958](https://github.com/community-scripts/ProxmoxVE/pull/6958))
- Refactor: TeddyCloud [@tremor021](https://github.com/tremor021) ([#6963](https://github.com/community-scripts/ProxmoxVE/pull/6963))
- Refactor: Technitium DNS [@tremor021](https://github.com/tremor021) ([#6968](https://github.com/community-scripts/ProxmoxVE/pull/6968))
### 🌐 Website
- #### 📝 Script Information
- [web]: update logos from reactive-resume & slskd [@MickLesk](https://github.com/MickLesk) ([#6990](https://github.com/community-scripts/ProxmoxVE/pull/6990))
## 2025-08-18
### 🆕 New Scripts
- CopyParty [@MickLesk](https://github.com/MickLesk) ([#6929](https://github.com/community-scripts/ProxmoxVE/pull/6929))
- Twingate-Connector ([#6921](https://github.com/community-scripts/ProxmoxVE/pull/6921))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Keycloak: fix update function [@MickLesk](https://github.com/MickLesk) ([#6943](https://github.com/community-scripts/ProxmoxVE/pull/6943))
- Immich: add message to indicate image-processing library update check [@vhsdream](https://github.com/vhsdream) ([#6935](https://github.com/community-scripts/ProxmoxVE/pull/6935))
- fix(uptimekuma): unbound env variable [@vidonnus](https://github.com/vidonnus) ([#6922](https://github.com/community-scripts/ProxmoxVE/pull/6922))
- #### 🔧 Refactor
- Refactor: Traefik [@tremor021](https://github.com/tremor021) ([#6940](https://github.com/community-scripts/ProxmoxVE/pull/6940))
- Refactor: Traccar [@tremor021](https://github.com/tremor021) ([#6942](https://github.com/community-scripts/ProxmoxVE/pull/6942))
- Refactor: Umami [@tremor021](https://github.com/tremor021) ([#6939](https://github.com/community-scripts/ProxmoxVE/pull/6939))
- Refactor: GoMFT [@tremor021](https://github.com/tremor021) ([#6916](https://github.com/community-scripts/ProxmoxVE/pull/6916))
### 🌐 Website
- #### 📝 Script Information
- OpenWRT: add info for VLAN-aware in frontend [@MickLesk](https://github.com/MickLesk) ([#6944](https://github.com/community-scripts/ProxmoxVE/pull/6944))
## 2025-08-17
## 2025-08-16
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Wireguard: Fix WGDashboard not updating [@tremor021](https://github.com/tremor021) ([#6898](https://github.com/community-scripts/ProxmoxVE/pull/6898))
- Tandoor Images Fix [@WarLord185](https://github.com/WarLord185) ([#6892](https://github.com/community-scripts/ProxmoxVE/pull/6892))
- #### 🔧 Refactor
- Refactor: Uptime Kuma [@tremor021](https://github.com/tremor021) ([#6902](https://github.com/community-scripts/ProxmoxVE/pull/6902))
- Refactor: Wallos [@tremor021](https://github.com/tremor021) ([#6900](https://github.com/community-scripts/ProxmoxVE/pull/6900))
## 2025-08-15
### 🚀 Updated Scripts

View File

@@ -28,12 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.2fauth 2>/dev/null)" ]] || [[ ! -f ~/.2fauth ]]; then
msg_info "Updating $APP to ${RELEASE}"
if check_for_gh_release "2fauth" "Bubka/2FAuth"; then
$STD apt-get update
$STD apt-get -y upgrade
@@ -64,18 +59,13 @@ function update_script() {
$STD systemctl restart nginx
msg_info "Cleaning Up"
rm -rf "v${RELEASE}.zip"
if dpkg -l | grep -q 'php8.2'; then
$STD apt-get remove --purge -y php8.2*
fi
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/2fauth_version.txt
msg_ok "Updated $APP to ${RELEASE}"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -27,9 +27,11 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.adventurelog 2>/dev/null)" ]] || [[ ! -f ~/.adventurelog ]]; then
if ! command -v memcached >/dev/null 2>&1; then
$STD apt-get update
$STD apt-get install -y memcached libmemcached-tools
fi
if check_for_gh_release "adventurelog" "seanmorley15/adventurelog"; then
msg_info "Stopping Services"
systemctl stop adventurelog-backend
systemctl stop adventurelog-frontend
@@ -42,7 +44,7 @@ function update_script() {
fetch_and_deploy_gh_release "adventurelog" "seanmorley15/adventurelog"
PYTHON_VERSION="3.12" setup_uv
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cp /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
cp -r /opt/adventurelog-backup/backend/server/media /opt/adventurelog/backend/server/media
cd /opt/adventurelog/backend/server
@@ -54,7 +56,7 @@ function update_script() {
$STD .venv/bin/python -m pip install -r requirements.txt
$STD .venv/bin/python -m manage collectstatic --noinput
$STD .venv/bin/python -m manage migrate
cp /opt/adventurelog-backup/frontend/.env /opt/adventurelog/frontend/.env
cd /opt/adventurelog/frontend
$STD pnpm i
@@ -70,10 +72,7 @@ function update_script() {
msg_info "Cleaning Up"
rm -rf /opt/adventurelog-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

56
ct/alpine-redlib.sh Normal file
View File

@@ -0,0 +1,56 @@
#!/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: andrej-kocijan (Andrej Kocijan)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/redlib-org/redlib
APP="Alpine-Redlib"
var_tags="${var_tags:-alpine;frontend}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-1}"
var_os="${var_os:-alpine}"
var_version="${var_version:-3.22}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_resources
if [[ ! -d /opt/redlib ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating Alpine Packages"
$STD apk -U upgrade
msg_ok "Updated Alpine Packages"
msg_info "Stopping ${APP} Service"
$STD rc-service redlib stop
msg_ok "Stopped ${APP} Service"
fetch_and_deploy_gh_release "redlib" "redlib-org/redlib" "prebuild" "latest" "/opt/redlib" "redlib-x86_64-unknown-linux-musl.tar.gz"
msg_info "Starting ${APP} Service"
$STD rc-service redlib start
msg_ok "Started ${APP} Service"
msg_ok "Update Successful"
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}:5252${CL}"

View File

@@ -0,0 +1,74 @@
#!/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://github.com/rustdesk/rustdesk-server
APP="Alpine-RustDeskServer"
var_tags="${var_tags:-alpine;monitoring}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
var_os="${var_os:-alpine}"
var_version="${var_version:-3.22}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
if [[ ! -d /opt/rustdesk-server ]]; then
msg_error "No ${APP} Installation Found!"
exit 1
fi
APIRELEASE=$(curl -s https://api.github.com/repos/lejianwen/rustdesk-api/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
RELEASE=$(curl -s https://api.github.com/repos/rustdesk/rustdesk-server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [ "${RELEASE}" != "$(cat ~/.rustdesk-server 2>/dev/null)" ] || [ ! -f ~/.rustdesk-server ]; then
msg_info "Updating RustDesk Server to v${RELEASE}"
$STD apk -U upgrade
$STD service rustdesk-server-hbbs stop
$STD service rustdesk-server-hbbr stop
temp_file1=$(mktemp)
curl -fsSL "https://github.com/rustdesk/rustdesk-server/releases/download/${RELEASE}/rustdesk-server-linux-amd64.zip" -o "$temp_file1"
$STD unzip "$temp_file1"
cp -r amd64/* /opt/rustdesk-server/
echo "${RELEASE}" >~/.rustdesk-server
$STD service rustdesk-server-hbbs start
$STD service rustdesk-server-hbbr start
rm -rf amd64
rm -f $temp_file1
msg_ok "Updated RustDesk Server successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
if [ "${APIRELEASE}" != "$(cat ~/.rustdesk-api)" ] || [ ! -f ~/.rustdesk-api ]; then
msg_info "Updating RustDesk API to v${APIRELEASE}"
$STD service rustdesk-api stop
temp_file2=$(mktemp)
curl -fsSL "https://github.com/lejianwen/rustdesk-api/releases/download/v${APIRELEASE}/linux-amd64.tar.gz" -o "$temp_file2"
$STD tar zxvf "$temp_file2"
cp -r release/* /opt/rustdesk-api
echo "${APIRELEASE}" >~/.rustdesk-api
$STD service rustdesk-api start
rm -rf release
rm -f $temp_file2
msg_ok "Updated RustDesk API"
else
msg_ok "No update required. RustDesk API is already at v${APIRELEASE}"
fi
exit 0
}
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 IP:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:21114${CL}"

View File

@@ -9,7 +9,7 @@ APP="Apt-Cacher-NG"
var_tags="${var_tags:-caching}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@@ -20,18 +20,18 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC"
header_info
check_container_storage
check_container_resources
if [[ ! -d /var ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP LXC"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC"
exit
}
start
@@ -41,4 +41,4 @@ 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}:3142/acng-report.html${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3142/acng-report.html${CL}"

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/release-argus/Argus/releases/latest | jq -r .tag_name | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.Argus 2>/dev/null)" ]] || [[ ! -f ~/.Argus ]]; then
if check_for_gh_release "argus" "release-argus/Argus"; then
msg_info "Stopping service"
systemctl stop argus
msg_ok "Service stopped"
@@ -39,11 +37,9 @@ function update_script() {
msg_info "Starting service"
systemctl start argus
msg_ok "Service started"
msg_ok "Updated ${APP} to ${RELEASE}"
else
msg_ok "${APP} is already up to date (${RELEASE})"
msg_ok "Updated Successfully"
fi
exit
}
start

View File

@@ -29,8 +29,8 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(/usr/bin/authelia -v | awk '{print substr($3, 2, length($2)) }')" ]]; then
if check_for_gh_release "authelia" "authelia/authelia"; then
$STD apt-get update
$STD apt-get -y upgrade
@@ -40,14 +40,10 @@ function update_script() {
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleanup Completed"
msg_ok "Updated $APP to ${RELEASE}"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}
start
build_container
description

View File

@@ -20,30 +20,26 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /root/.config/autobrr/config.toml ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
header_info
check_container_storage
check_container_resources
if [[ ! -f /root/.config/autobrr/config.toml ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/autobrr/autobrr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.autobrr 2>/dev/null)" ]] || [[ ! -f ~/.autobrr ]]; then
msg_info "Stopping ${APP} LXC"
systemctl stop autobrr
msg_ok "Stopped ${APP} LXC"
if check_for_gh_release "autobrr" "autobrr/autobrr"; then
msg_info "Stopping ${APP} LXC"
systemctl stop autobrr
msg_ok "Stopped ${APP} LXC"
fetch_and_deploy_gh_release "autobrr" "autobrr/autobrr" "prebuild" "latest" "/usr/local/bin" "autobrr_*_linux_x86_64.tar.gz"
fetch_and_deploy_gh_release "autobrr" "autobrr/autobrr" "prebuild" "latest" "/usr/local/bin" "autobrr_*_linux_x86_64.tar.gz"
msg_info "Starting ${APP} LXC"
systemctl start autobrr
msg_ok "Started ${APP} LXC"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
msg_info "Starting ${APP} LXC"
systemctl start autobrr
msg_ok "Started ${APP} LXC"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/babybuddy/babybuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.babybuddy 2>/dev/null)" ]] || [[ ! -f ~/.babybuddy ]]; then
if check_for_gh_release "babybuddy" "babybuddy/babybuddy"; then
setup_uv
msg_info "Stopping Services"
@@ -44,13 +43,13 @@ function update_script() {
fetch_and_deploy_gh_release "babybuddy" "babybuddy/babybuddy"
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/babybuddy
mv /tmp/production.py.bak /opt/babybuddy/babybuddy/settings/production.py
source .venv/bin/activate
$STD uv pip install -r requirements.txt
$STD python manage.py migrate
msg_ok "Updated ${APP} to v${RELEASE}"
msg_ok "Updated ${APP}"
msg_info "Fixing permissions"
chown -R www-data:www-data /opt/data
@@ -62,14 +61,10 @@ function update_script() {
systemctl start uwsgi
systemctl start nginx
msg_ok "Services Started"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}
start
build_container
description

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.baikal 2>/dev/null)" ]] || [[ ! -f ~/.baikal ]]; then
if check_for_gh_release "baikal" "sabre-io/Baikal"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_ok "Stopped Service"
@@ -58,8 +57,6 @@ function update_script() {
rm -rf /opt/baikal-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -29,11 +29,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE_MEILISEARCH=$(curl -fsSL https://api.github.com/repos/meilisearch/meilisearch/releases/latest | jq -r '.tag_name | sub("^v"; "")')
RELEASE_BARASSISTANT=$(curl -fsSL https://api.github.com/repos/karlomikus/bar-assistant/releases/latest | jq -r '.tag_name | sub("^v"; "")')
RELEASE_SALTRIM=$(curl -fsSL https://api.github.com/repos/karlomikus/vue-salt-rim/releases/latest | jq -r '.tag_name | sub("^v"; "")')
if [[ "${RELEASE_BARASSISTANT}" != "$(cat ~/.bar-assistant 2>/dev/null)" ]] || [[ ! -f ~/.bar-assistant ]]; then
if check_for_gh_release "bar-assistant" "karlomikus/bar-assistant"; then
msg_info "Stopping nginx"
systemctl stop nginx
msg_ok "Stopped nginx"
@@ -45,7 +41,7 @@ function update_script() {
fetch_and_deploy_gh_release "bar-assistant" "karlomikus/bar-assistant" "tarball" "latest" "/opt/bar-assistant"
setup_composer
msg_info "Updating ${APP} to ${RELEASE_BARASSISTANT}"
msg_info "Updating Bar-Assistant"
cp -r /opt/bar-assistant-backup/.env /opt/bar-assistant/.env
cp -r /opt/bar-assistant-backup/storage/bar-assistant /opt/bar-assistant/storage/bar-assistant
cd /opt/bar-assistant
@@ -58,7 +54,7 @@ function update_script() {
$STD php artisan route:cache
$STD php artisan event:cache
chown -R www-data:www-data /opt/bar-assistant
msg_ok "Updated $APP to ${RELEASE_BARASSISTANT}"
msg_ok "Updated Bar-Assistant"
msg_info "Starting nginx"
systemctl start nginx
@@ -67,11 +63,9 @@ function update_script() {
msg_info "Cleaning up"
rm -rf /opt/bar-assistant-backup
msg_ok "Cleaned"
else
msg_ok "No update required. ${APP} is already at ${RELEASE_BARASSISTANT}"
fi
if [[ "${RELEASE_SALTRIM}" != "$(cat ~/.vue-salt-rim 2>/dev/null)" ]] || [[ ! -f ~/.vue-salt-rim ]]; then
if check_for_gh_release "vue-salt-rim" "karlomikus/vue-salt-rim"; then
msg_info "Backing up Vue Salt Rim"
mv /opt/vue-salt-rim /opt/vue-salt-rim-backup
msg_ok "Backed up Vue Salt Rim"
@@ -82,12 +76,12 @@ function update_script() {
fetch_and_deploy_gh_release "vue-salt-rim" "karlomikus/vue-salt-rim" "tarball" "latest" "/opt/vue-salt-rim"
msg_info "Updating Salt Rim to ${RELEASE_SALTRIM}"
msg_info "Updating Vue Salt Rim"
cp /opt/vue-salt-rim-backup/public/config.js /opt/vue-salt-rim/public/config.js
cd /opt/vue-salt-rim
$STD npm install
$STD npm run build
msg_ok "Updated $APP to ${RELEASE_SALTRIM}"
msg_ok "Updated Vue Salt Rim"
msg_info "Starting nginx"
systemctl start nginx
@@ -96,12 +90,9 @@ function update_script() {
msg_info "Cleaning up"
rm -rf /opt/vue-salt-rim-backup
msg_ok "Cleaned"
msg_ok "Updated"
else
msg_ok "No update required. Salt Rim is already at ${RELEASE_SALTRIM}"
fi
if [[ "${RELEASE_MEILISEARCH}" != "$(cat ~/.meilisearch 2>/dev/null)" ]] || [[ ! -f ~/.meilisearch ]]; then
if check_for_gh_release "meilisearch" "meilisearch/meilisearch"; then
msg_info "Stopping Meilisearch"
systemctl stop meilisearch
msg_ok "Stopped Meilisearch"
@@ -111,10 +102,7 @@ function update_script() {
msg_info "Starting Meilisearch"
systemctl start meilisearch
msg_ok "Started Meilisearch"
msg_ok "Updated Meilisearch"
else
msg_ok "No update required. Meilisearch is already at ${RELEASE_MEILISEARCH}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,8 +28,8 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.barcodebuddy 2>/dev/null)" ]] || [[ ! -f ~/.barcodebuddy ]]; then
if check_for_gh_release "barcodebuddy" "Forceu/barcodebuddy"; then
msg_info "Stopping Service"
systemctl stop apache2
systemctl stop barcodebuddy
@@ -55,8 +55,6 @@ function update_script() {
rm -r /opt/barcodebuddy-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,14 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/morpheus65535/bazarr/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.bazarr 2>/dev/null)" ]] || [[ ! -f ~/.bazarr ]]; then
if check_for_gh_release "bazarr" "morpheus65535/bazarr"; then
PYTHON_VERSION="3.13" setup_uv
fetch_and_deploy_gh_release "bazarr" "morpheus65535/bazarr" "prebuild" "latest" "/opt/bazarr" "bazarr.zip"
@@ -44,10 +37,7 @@ function update_script() {
sed -i.bak 's/--only-binary=Pillow//g' /opt/bazarr/requirements.txt
$STD uv pip install -r /opt/bazarr/requirements.txt --system
msg_ok "Setup Bazarr"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -27,8 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/bitmagnet-io/bitmagnet/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.bitmagnet 2>/dev/null)" ]] || [[ ! -f ~/.bitmagnet ]]; then
if check_for_gh_release "bitmagnet" "bitmagnet-io/bitmagnet"; then
msg_info "Stopping Service"
systemctl stop bitmagnet-web
msg_ok "Stopped Service"
@@ -63,22 +62,19 @@ function update_script() {
rm -rf /opt/bitmagnet
fetch_and_deploy_gh_release "bitmagnet" "bitmagnet-io/bitmagnet"
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/bitmagnet
VREL=v$RELEASE
VREL=v$(curl -fsSL https://api.github.com/repos/bitmagnet-io/bitmagnet/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
$STD go build -ldflags "-s -w -X github.com/bitmagnet-io/bitmagnet/internal/version.GitTag=$VREL"
chmod +x bitmagnet
[ -f "/opt/.env" ] && cp "/opt/.env" /opt/bitmagnet/
[ -f "/opt/config.yml" ] && cp "/opt/config.yml" /opt/bitmagnet/
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting Service"
systemctl start bitmagnet-web
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -28,13 +28,15 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/booklore-app/BookLore/releases/latest | yq '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.booklore 2>/dev/null)" ]] || [[ ! -f ~/.booklore ]]; then
if check_for_gh_release "booklore" "booklore-app/BookLore"; then
msg_info "Stopping $APP"
systemctl stop booklore
msg_ok "Stopped $APP"
msg_info "backup old install"
mv /opt/booklore /opt/booklore_bak
msg_ok "backup done"
fetch_and_deploy_gh_release "booklore" "booklore-app/BookLore"
msg_info "Building Frontend"
@@ -60,11 +62,9 @@ function update_script() {
msg_info "Starting $APP"
systemctl start booklore
systemctl reload nginx
rm -rf /opt/booklore_bak
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.bookstack 2>/dev/null)" ]] || [[ ! -f ~/.bookstack ]]; then
if check_for_gh_release "bookstack" "BookStackApp/BookStack"; then
msg_info "Stopping Apache2"
systemctl stop apache2
msg_ok "Services Stopped"
@@ -58,7 +57,6 @@ function update_script() {
chmod -R 755 /opt/bookstack /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads /opt/bookstack/storage
chmod -R 775 /opt/bookstack/storage /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads
chmod -R 640 /opt/bookstack/.env
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Configured BookStack"
msg_info "Starting Apache2"
@@ -69,12 +67,9 @@ function update_script() {
rm -rf /opt/bookstack-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}
start
build_container
description

View File

@@ -28,9 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/jordan-dalby/ByteStash/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.bytestash 2>/dev/null)" ]] || [[ ! -f ~/.bytestash ]]; then
if check_for_gh_release "bytestash" "jordan-dalby/ByteStash"; then
read -rp "${TAB3}Did you make a backup via application WebUI? (y/n): " backuped
if [[ "$backuped" =~ ^[Yy]$ ]]; then
msg_info "Stopping Services"
@@ -57,10 +55,7 @@ function update_script() {
exit
fi
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}
start

View File

@@ -27,23 +27,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -Ev 'rc|b' | sort -V | tail -n 1)
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
if check_for_gh_release "checkmk" "checkmk/checkmk"; then
RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -Ev 'rc|b' | sort -V | tail -n 1)
msg_info "Updating ${APP} to v${RELEASE}"
$STD omd stop monitoring
$STD omd cp monitoring monitoringbackup
curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb"
curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb"
$STD apt-get install -y /opt/checkmk.deb
$STD omd --force -V ${RELEASE}.cre update --conflict=install monitoring
$STD omd start monitoring
$STD omd -f rm monitoringbackup
$STD omd cleanup
rm -rf /opt/checkmk.deb
msg_ok "Updated ${APP} to v${RELEASE}"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
msg_ok "Updated ${APP}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -20,32 +20,27 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /opt/cleanuparr/Cleanuparr ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Cleanuparr/Cleanuparr/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.Cleanuparr 2>/dev/null)" ]] || [[ ! -f ~/.Cleanuparr ]]; then
msg_info "Stopping ${APP}"
systemctl stop cleanuparr
msg_ok "Stopped ${APP}"
fetch_and_deploy_gh_release "Cleanuparr" "Cleanuparr/Cleanuparr" "prebuild" "latest" "/opt/cleanuparr" "*linux-amd64.zip"
msg_info "Starting ${APP}"
systemctl start cleanuparr
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
header_info
check_container_storage
check_container_resources
if [[ ! -f /opt/cleanuparr/Cleanuparr ]]; then
msg_error "No ${APP} Installation Found!"
exit
}
fi
if check_for_gh_release "cleanuparr" "Cleanuparr/Cleanuparr"; then
msg_info "Stopping ${APP}"
systemctl stop cleanuparr
msg_ok "Stopped ${APP}"
fetch_and_deploy_gh_release "Cleanuparr" "Cleanuparr/Cleanuparr" "prebuild" "latest" "/opt/cleanuparr" "*linux-amd64.zip"
msg_info "Starting ${APP}"
systemctl start cleanuparr
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
fi
exit
}
start
build_container
description

View File

@@ -28,9 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/cloudreve/cloudreve/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.cloudreve 2>/dev/null)" ]] || [[ ! -f ~/.cloudreve ]]; then
if check_for_gh_release "cloudreve" "cloudreve/cloudreve"; then
msg_info "Stopping $APP"
systemctl stop cloudreve
msg_ok "Stopped $APP"
@@ -40,10 +38,7 @@ function update_script() {
msg_info "Starting $APP"
systemctl start cloudreve
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
if [[ "${RELEASE}" != "$(cat ~/.commafeed 2>/dev/null)" ]] || [[ ! -f ~/.commafeed ]]; then
if check_for_gh_release "commafeed" "Athou/commafeed"; then
msg_info "Stopping ${APP}"
systemctl stop commafeed
msg_ok "Stopped ${APP}"
@@ -59,8 +58,6 @@ function update_script() {
systemctl start commafeed
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -27,31 +27,28 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/raydak-labs/configarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.configarr 2>/dev/null || cat /opt/configarr_version.txt 2>/dev/null)" ]]; then
if check_for_gh_release "configarr" "raydak-labs/configarr"; then
msg_info "Stopping $APP"
systemctl stop configarr-task.timer
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
msg_info "Updating $APP"
mkdir -p /opt/backup/
mv /opt/configarr/{config.yml,secrets.yml,.env} "/opt/backup/"
rm -rf /opt/configarr
fetch_and_deploy_gh_release "configarr" "raydak-labs/configarr"
mv /opt/backup/* /opt/configarr/
mv /opt/backup/{config.yml,secrets.yml,.env} "/opt/configarr/"
cd /opt/configarr
$STD pnpm install
$STD pnpm run build
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start configarr-task.timer
msg_ok "Started configarr"
rm -rf /opt/backup
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -27,8 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/C4illin/ConvertX/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.convertx 2>/dev/null)" ]] || [[ ! -f ~/.convertx ]]; then
if check_for_gh_release "ConvertX" "C4illin/ConvertX"; then
msg_info "Stopping $APP"
systemctl stop convertx
msg_ok "Stopped $APP"
@@ -41,25 +40,21 @@ function update_script() {
fetch_and_deploy_gh_release "ConvertX" "C4illin/ConvertX" "tarball" "latest" "/opt/convertx"
msg_info "Updating $APP to v${RELEASE}"
msg_info "Updating $APP"
if [[ -d /opt/data ]]; then
mv /opt/data /opt/convertx/data
fi
cd /opt/convertx
$STD bun install
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start convertx
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}
start
build_container
description

View File

@@ -33,52 +33,42 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
if ! command -v npm >/dev/null 2>&1; then
echo "Installing NPM..."
$STD apt-get install -y npm
echo "Installed NPM..."
fi
fi
NODE_VERSION="22" setup_nodejs
msg_info "Updating ${APP}"
$STD /opt/cronicle/bin/control.sh upgrade
msg_ok "Updated ${APP}"
exit
fi
if [ "$UPD" == "2" ]; then
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
if ! command -v npm >/dev/null 2>&1; then
echo "Installing NPM..."
$STD apt-get install -y npm
echo "Installed NPM..."
fi
fi
LATEST=$(curl -fsSL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
IP=$(hostname -I | awk '{print $1}')
msg_info "Installing Dependencies"
$STD apt-get install -y \
git \
build-essential \
ca-certificates \
gnupg2
msg_ok "Installed Dependencies"
NODE_VERSION="22" setup_nodejs
fetch_and_deploy_gh_release "cronicle" "jhuckaby/Cronicle"
if check_for_gh_release "cronicle" "jhuckaby/Cronicle"; then
IP=$(hostname -I | awk '{print $1}')
msg_info "Installing Dependencies"
$STD apt-get install -y \
git \
build-essential \
ca-certificates \
gnupg2
msg_ok "Installed Dependencies"
msg_info "Configuring Cronicle Worker"
cd /opt/cronicle
$STD npm install
$STD node bin/build.js dist
sed -i "s/localhost:3012/${IP}:3012/g" /opt/cronicle/conf/config.json
$STD /opt/cronicle/bin/control.sh start
$STD cp /opt/cronicle/bin/cronicled.init /etc/init.d/cronicled
chmod 775 /etc/init.d/cronicled
$STD update-rc.d cronicled defaults
msg_ok "Installed Cronicle Worker"
echo -e "\n Add Masters secret key to /opt/cronicle/conf/config.json \n"
exit
NODE_VERSION="22" setup_nodejs
fetch_and_deploy_gh_release "cronicle" "jhuckaby/Cronicle"
msg_info "Configuring Cronicle Worker"
cd /opt/cronicle
$STD npm install
$STD node bin/build.js dist
sed -i "s/localhost:3012/${IP}:3012/g" /opt/cronicle/conf/config.json
$STD /opt/cronicle/bin/control.sh start
$STD cp /opt/cronicle/bin/cronicled.init /etc/init.d/cronicled
chmod 775 /etc/init.d/cronicled
$STD update-rc.d cronicled defaults
msg_ok "Installed Cronicle Worker"
echo -e "\n Add Masters secret key to /opt/cronicle/conf/config.json \n"
exit
fi
fi
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/cryptpad/cryptpad/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.cryptpad 2>/dev/null)" ]] || [[ ! -f ~/.cryptpad ]]; then
if check_for_gh_release "cryptpad" "cryptpad/cryptpad"; then
msg_info "Stopping $APP"
systemctl stop cryptpad
msg_ok "Stopped $APP"
@@ -40,12 +39,12 @@ function update_script() {
fetch_and_deploy_gh_release "cryptpad" "cryptpad/cryptpad"
msg_info "Updating $APP to ${RELEASE}"
msg_info "Updating $APP"
cd /opt/cryptpad
$STD npm ci
$STD npm run install:components
$STD npm run build
msg_ok "Updated $APP to ${RELEASE}"
msg_ok "Updated $APP"
msg_info "Restoring configuration"
mv /opt/config.js /opt/cryptpad/config/
@@ -54,10 +53,7 @@ function update_script() {
msg_info "Starting $APP"
systemctl start cryptpad
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
if [[ "${RELEASE}" != "$(cat ~/.dashy 2>/dev/null)" ]] || [[ ! -f ~/.dashy ]]; then
if check_for_gh_release "dashy" "Lissy93/dashy"; then
msg_info "Stopping ${APP}"
systemctl stop dashy
msg_ok "Stopped ${APP}"
@@ -46,11 +44,11 @@ function update_script() {
rm -rf /opt/dashy
fetch_and_deploy_gh_release "dashy" "Lissy93/dashy"
msg_info "Updating ${APP} to ${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/dashy
npm install
npm run build
msg_ok "Updated ${APP} to ${RELEASE}"
msg_ok "Updated ${APP}"
msg_info "Restoring conf.yml"
cd ~
@@ -64,10 +62,7 @@ function update_script() {
msg_info "Starting Dashy"
systemctl start dashy
msg_ok "Started Dashy"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -30,8 +30,8 @@ function update_script() {
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
fi
export NODE_OPTIONS="--max_old_space_size=4096"
RELEASE=$(curl -fsSL https://api.github.com/repos/docmost/docmost/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.docmost 2>/dev/null)" ]] || [[ ! -f ~/.docmost ]]; then
if check_for_gh_release "docmost" "docmost/docmost"; then
msg_info "Stopping ${APP}"
systemctl stop docmost
msg_ok "${APP} Stopped"
@@ -44,7 +44,7 @@ function update_script() {
fetch_and_deploy_gh_release "docmost" "docmost/docmost"
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/docmost
mv /opt/.env /opt/docmost/.env
mv /opt/data /opt/docmost/data
@@ -55,10 +55,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start docmost
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -20,31 +20,27 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /usr/bin/duplicati-server ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/duplicati/duplicati/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}')
if [[ "${RELEASE}" != "$(cat ~/.duplicati)" ]] || [[ ! -f ~/.duplicati ]]; then
msg_info "Stopping $APP"
systemctl stop duplicati
msg_ok "Stopped $APP"
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "linux-x64-gui.deb"
msg_info "Starting $APP"
systemctl start duplicati
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
header_info
check_container_storage
check_container_resources
if [[ ! -f /usr/bin/duplicati-server ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "duplicati" "duplicati/duplicati"; then
msg_info "Stopping $APP"
systemctl stop duplicati
msg_ok "Stopped $APP"
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb"
msg_info "Starting $APP"
systemctl start duplicati
msg_ok "Started $APP"
msg_ok "Update Successful"
fi
exit
}
start

View File

@@ -9,7 +9,7 @@ APP="Element Synapse"
var_tags="${var_tags:-server}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_disk="${var_disk:-8}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
if [[ "${RELEASE}" != "$(cat ~/.emby 2>/dev/null)" ]] || [[ ! -f ~/.emby ]]; then
if check_for_gh_release "emby" "MediaBrowser/Emby.Releases"; then
msg_info "Stopping ${APP}"
systemctl stop emby-server
msg_ok "Stopped ${APP}"
@@ -39,10 +38,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start emby-server
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -26,10 +26,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\Kv\K[^"]+' | head -n1)
RELEASE_FFMPEG=$(curl -fsSL https://api.github.com/repos/ErsatzTV/ErsatzTV-ffmpeg/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1)
if [[ "${RELEASE}" != "$(cat ~/.ersatztv 2>/dev/null)" ]] || [[ ! -f ~/.ersatztv ]]; then
if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then
msg_info "Stopping ErsatzTV"
systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV"
@@ -41,11 +38,9 @@ function update_script() {
msg_ok "Started ErsatzTV"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
if [[ "${RELEASE_FFMPEG}" != "$(cat ~/.ersatztv-ffmpeg 2>/dev/null)" ]] || [[ ! -f ~/.ersatztv-ffmpeg ]]; then
if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then
msg_info "Stopping ErsatzTV"
systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV"
@@ -62,10 +57,7 @@ function update_script() {
msg_info "Starting ErsatzTV"
systemctl start ersatzTV
msg_ok "Started ErsatzTV"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ErsatzTV-ffmpeg is already at ${RELEASE_FFMPEG}"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.excalidraw 2>/dev/null)" ]] || [[ ! -f ~/.excalidraw ]]; then
if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then
msg_info "Stopping $APP"
systemctl stop excalidraw
msg_ok "Stopped $APP"
@@ -37,18 +36,15 @@ function update_script() {
rm -rf /opt/excalidraw
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Updating $APP to v${RELEASE}"
msg_info "Updating $APP"
cd /opt/excalidraw
$STD yarn
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start excalidraw
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/firefly-iii/firefly-iii/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}')
if [[ "${RELEASE}" != "$(cat ~/.firefly 2>/dev/null)" ]] || [[ ! -f ~/.firefly ]]; then
if check_for_gh_release "firefly" "firefly-iii/firefly-iii"; then
msg_info "Stopping Apache2"
systemctl stop apache2
msg_ok "Stopped Apache2"
@@ -42,11 +41,11 @@ function update_script() {
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
setup_composer
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
rm -rf /opt/firefly/storage
cp /opt/.env /opt/firefly/.env
cp -r /opt/storage /opt/firefly/storage
chown -R www-data:www-data /opt/firefly
find /opt/firefly/storage -type d -exec chmod 775 {} \;
find /opt/firefly/storage -type f -exec chmod 664 {} \;
@@ -58,15 +57,12 @@ function update_script() {
$STD php artisan view:clear
$STD php artisan firefly-iii:upgrade-database
$STD php artisan firefly-iii:laravel-passport-keys
msg_ok "Updated ${APP} to v${RELEASE}"
msg_ok "Updated ${APP}"
msg_info "Starting Apache2"
systemctl start apache2
msg_ok "Started Apache2"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -28,20 +28,17 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/FlareSolverr/FlareSolverr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}')
if [[ "${RELEASE}" != "$(cat ~/.flaresolverr 2>/dev/null)" ]] || [[ ! -f ~/.flaresolverr ]]; then
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "3.3.5"; then
msg_info "Stopping service"
systemctl stop flaresolverr
msg_ok "Stopped service"
rm -rf /opt/flaresolverr
fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "v3.3.25" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
msg_info "Starting service"
systemctl start flaresolverr
msg_ok "Started service"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.fluid-calendar 2>/dev/null)" ]] || [[ ! -f ~/.fluid-calendar ]]; then
if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then
msg_info "Stopping $APP"
systemctl stop fluid-calendar
msg_ok "Stopped $APP"
@@ -38,7 +37,7 @@ function update_script() {
rm -rf /opt/fluid-calendar
fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
msg_info "Updating $APP to v${RELEASE}"
msg_info "Updating $APP"
mv /opt/fluid.env /opt/fluid-calendar/.env
cd /opt/fluid-calendar
export NEXT_TELEMETRY_DISABLED=1
@@ -46,15 +45,12 @@ function update_script() {
$STD npm run prisma:generate
$STD npx prisma migrate deploy
$STD npm run build:os
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start fluid-calendar
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -28,10 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -s https://api.github.com/repos/TwiN/gatus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.gatus 2>/dev/null)" ]] || [[ ! -f ~/.gatus ]]; then
msg_info "Updating $APP"
if check_for_gh_release "gatus" "TwiN/gatus"; then
msg_info "Stopping $APP"
systemctl stop gatus
msg_ok "Stopped $APP"
@@ -40,21 +37,18 @@ function update_script() {
rm -rf /opt/gatus
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
msg_info "Updating $APP to v${RELEASE}"
msg_info "Updating $APP"
cd /opt/gatus
$STD go mod tidy
CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gatus .
setcap CAP_NET_RAW+ep gatus
mv /opt/config.yaml config
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start gatus
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -32,25 +32,54 @@ function update_script() {
APP_VERSION=$(grep -o '"version": *"[^"]*"' /opt/gitea-mirror/package.json | cut -d'"' -f4)
if [[ $APP_VERSION =~ ^2\. ]]; then
if ! whiptail --backtitle "Gitea Mirror Update" --title "⚠️ VERSION 2.x DETECTED" --yesno \
"WARNING: Version $APP_VERSION detected!\n\nUpdating from version 2.x will CLEAR ALL CONFIGURATION.\n\nThis includes:\n• API tokens\n• User settings\n• Repository configurations\n• All custom settings\n\nDo you want to continue with the update process?" 15 70 --defaultno
then
"WARNING: Version $APP_VERSION detected!\n\nUpdating from version 2.x will CLEAR ALL CONFIGURATION.\n\nThis includes:\n• API tokens\n• User settings\n• Repository configurations\n• All custom settings\n\nDo you want to continue with the update process?" 15 70 --defaultno; then
exit 0
fi
if ! whiptail --backtitle "Gitea Mirror Update" --title "⚠️ FINAL CONFIRMATION" --yesno \
"FINAL WARNING: This update WILL clear all configuration!\n\nBEFORE PROCEEDING, please:\n\n• Copy API tokens to a safe location\n• Backup any custom configurations\n• Note down repository settings\n\nThis action CANNOT be undone!" 18 70 --defaultno
then
whiptail --backtitle "Gitea Mirror Update" --title "Update Cancelled" --msgbox "Update process cancelled. Please backup your configuration before proceeding." 8 60
exit 0
"FINAL WARNING: This update WILL clear all configuration!\n\nBEFORE PROCEEDING, please:\n\n• Copy API tokens to a safe location\n• Backup any custom configurations\n• Note down repository settings\n\nThis action CANNOT be undone!" 18 70 --defaultno; then
whiptail --backtitle "Gitea Mirror Update" --title "Update Cancelled" --msgbox "Update process cancelled. Please backup your configuration before proceeding." 8 60
exit 0
fi
whiptail --backtitle "Gitea Mirror Update" --title "Proceeding with Update" --msgbox \
"Proceeding with version $APP_VERSION update.\n\nAll configuration will be cleared as warned." 8 50
"Proceeding with version $APP_VERSION update.\n\nAll configuration will be cleared as warned." 8 50
rm -rf /opt/gitea-mirror
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/RayLabsHQ/gitea-mirror/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.${APP} 2>/dev/null || cat /opt/${APP}_version.txt 2>/dev/null)" ]]; then
if [[ ! -f /opt/gitea-mirror.env ]]; then
msg_info "Detected old Enviroment, updating files"
APP_SECRET=$(openssl rand -base64 32)
HOST_IP=$(hostname -I | awk '{print $1}')
cat <<EOF >/opt/gitea-mirror.env
# See here for config options: https://github.com/RayLabsHQ/gitea-mirror/blob/main/docs/ENVIRONMENT_VARIABLES.md
NODE_ENV=production
HOST=0.0.0.0
PORT=4321
DATABASE_URL=sqlite://data/gitea-mirror.db
BETTER_AUTH_URL=http://${HOST_IP}:4321
BETTER_AUTH_SECRET=${APP_SECRET}
npm_package_version=${APP_VERSION}
EOF
rm /etc/systemd/system/gitea-mirror.service
cat <<EOF >/etc/systemd/system/gitea-mirror.service
[Unit]
Description=Gitea Mirror
After=network.target
[Service]
Type=simple
WorkingDirectory=/opt/gitea-mirror
ExecStart=/usr/local/bin/bun dist/server/entry.mjs
Restart=on-failure
RestartSec=10
EnvironmentFile=/opt/gitea-mirror.env
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
msg_ok "Old Enviroment fixed"
fi
if check_for_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"; then
msg_info "Stopping Services"
systemctl stop gitea-mirror
msg_ok "Services Stopped"
@@ -70,25 +99,23 @@ function update_script() {
rm -rf /opt/gitea-mirror
fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
msg_info "Updating and rebuilding ${APP} to v${RELEASE}"
msg_info "Updating and rebuilding ${APP}"
cd /opt/gitea-mirror
$STD bun run setup
$STD bun run build
APP_VERSION=$(grep -o '"version": *"[^"]*"' package.json | cut -d'"' -f4)
sudo sed -i.bak "s|^Environment=npm_package_version=.*|Environment=npm_package_version=${APP_VERSION}|" /etc/systemd/system/gitea-mirror.service
msg_ok "Updated and rebuilt ${APP} to v${RELEASE}"
sudo sed -i.bak "s|^npm_package_version=.*|npm_package_version=${APP_VERSION}|" /opt/gitea-mirror.env
msg_ok "Updated and rebuilt ${APP}"
msg_info "Restoring Data"
cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Restored Data"
msg_info "Starting Service"
systemctl daemon-reload
systemctl start gitea-mirror
msg_ok "Service Started"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Update Successfully"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://github.com/go-gitea/gitea/releases/latest | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.gitea 2>/dev/null)" ]] || [[ ! -f ~/.gitea ]]; then
if check_for_gh_release "gitea" "go-gitea/gitea"; then
msg_info "Stopping service"
systemctl stop gitea
msg_ok "Service stopped"
@@ -41,10 +40,7 @@ function update_script() {
msg_info "Starting service"
systemctl start gitea
msg_ok "Started service"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.glance 2>/dev/null)" ]] || [[ ! -f ~/.glance ]]; then
if check_for_gh_release "glance" "glanceapp/glance"; then
msg_info "Stopping Service"
systemctl stop glance
msg_ok "Stopped Service"
@@ -40,10 +39,7 @@ function update_script() {
msg_info "Starting Service"
systemctl start glance
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -28,8 +28,7 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/AlexxIT/go2rtc/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.go2rtc 2>/dev/null)" ]] || [[ ! -f ~/.go2rtc ]]; then
if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then
msg_info "Stopping service"
systemctl stop go2rtc
msg_ok "Stopped service"
@@ -39,10 +38,7 @@ function update_script() {
msg_info "Starting service"
systemctl start go2rtc
msg_ok "Started service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -20,19 +20,14 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/gokapi ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if [[ -f /opt/${APP}_version.txt ]]; then
mv /opt/${APP}_version ~/.gokapi
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/Gokapi/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.gokapi 2>/dev/null)" ]] || [[ ! -f ~/.gokapi ]]; then
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/gokapi ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "gokapi" "Forceu/Gokapi"; then
msg_info "Stopping ${APP}"
systemctl stop gokapi
msg_ok "Stopped ${APP}"
@@ -42,10 +37,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start gokapi
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -28,91 +28,17 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! dpkg -l | grep -q "^ii.*build-essential"; then
$STD apt-get install -y build-essential
fi
if [[ ! -f "/usr/bin/node" ]]; then
mkdir -p /etc/apt/keyrings
curl -fsSL "https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key" | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
$STD apt-get update
$STD apt-get install -y nodejs
fi
RELEASE=$(curl -fsSL "https://api.github.com/repos/StarFleetCPTN/GoMFT/releases/latest" | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
if check_for_gh_release "gomft" "StarFleetCPTN/GoMFT"; then
msg_info "Stopping $APP"
systemctl stop gomft
msg_ok "Stopped $APP"
msg_info "Updating $APP to ${RELEASE}"
if ! command -v git >/dev/null 2>&1; then
$STD apt-get install -y git
fi
rm -f /opt/gomft/gomft
temp_file=$(mktemp)
curl -fsSL "https://github.com/StarFleetCPTN/GoMFT/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar -xzf "$temp_file"
cp -rf "GoMFT-${RELEASE}"/* /opt/gomft/
cd /opt/gomft
$STD npm install
$STD npm run build
TEMPL_VERSION="$(awk '/github.com\/a-h\/templ/{print $2}' go.mod)"
$STD go install github.com/a-h/templ/cmd/templ@${TEMPL_VERSION}
# dirty hack to fix templ
cat <<'EOF' >/opt/gomft/components/file_metadata/search/file_metadata_search_content.templ
package search
import (
"context"
"github.com/starfleetcptn/gomft/components/file_metadata"
"github.com/starfleetcptn/gomft/components/file_metadata/list"
)
templ FileMetadataSearchContent(ctx context.Context, data file_metadata.FileMetadataSearchData) {
<!-- Search Results -->
<div id="search-results">
if len(data.Files) > 0 {
@list.FileMetadataListPartial(ctx, file_metadata.FileMetadataListData{
Files: data.Files,
Page: data.Page,
Limit: data.Limit,
TotalCount: data.TotalCount,
TotalPages: data.TotalPages,
Filter: data.Filter,
SortBy: data.SortBy,
SortDir: data.SortDir,
}, "/files/search/partial", "#search-results-container")
} else {
<div class="p-6 text-center text-gray-500 dark:text-gray-400">
<svg class="mx-auto mb-4 w-12 h-12 text-gray-400" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" />
</svg>
<p>No files found matching your search criteria.</p>
</div>
}
</div>
}
EOF
$STD "$HOME"/go/bin/templ generate
export CGO_ENABLED=1
export GOOS=linux
$STD go build -o gomft
chmod +x /opt/gomft/gomft
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to ${RELEASE}"
msg_info "Cleaning Up"
rm -f "$temp_file"
rm -rf "$HOME/GoMFT-v.${RELEASE}/"
msg_ok "Cleanup Complete"
fetch_and_deploy_gh_release "gomft" "StarFleetCPTN/GoMFT" "singlefile" "latest" "/opt/gomft" "gomft*linux-amd64"
msg_info "Starting $APP"
systemctl start gomft
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.gotify 2>/dev/null)" ]] || [[ ! -f ~/.gotify ]]; then
if check_for_gh_release "gotify" "gotify/server"; then
msg_info "Stopping ${APP}"
systemctl stop gotify
msg_ok "Stopped ${APP}"
@@ -40,10 +38,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start gotify
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -27,19 +27,14 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
php_ver=$(php -v | head -n 1 | awk '{print $2}')
if [[ ! $php_ver == "8.3"* ]]; then
PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/grocy/grocy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.grocy 2>/dev/null)" ]] || [[ ! -f ~/.grocy ]]; then
if check_for_gh_release "grocy" "grocy/grocy"; then
msg_info "Updating ${APP}"
bash /var/www/html/update.sh
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -29,9 +29,7 @@ function update_script() {
exit
fi
NODE_VERSION="20" NODE_MODULE="gulp-cli,mocha" setup_nodejs
RELEASE=$(curl -fsSL https://api.github.com/repos/HabitRPG/habitica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.habitica 2>/dev/null)" ]] || [[ ! -f ~/.habitica ]]; then
if check_for_gh_release "habitica" "HabitRPG/habitica"; then
msg_info "Stopping $APP"
systemctl stop habitica-mongodb
systemctl stop habitica
@@ -48,13 +46,13 @@ function update_script() {
fetch_and_deploy_gh_release "habitica" "HabitRPG/habitica" "tarball" "latest" "/opt/habitica"
msg_info "Updating $APP to ${RELEASE}"
msg_info "Updating $APP"
cd /opt/habitica
$STD npm i
$STD npm run postinstall
$STD npm run client:build
$STD gulp build:prod
msg_ok "Updated $APP to ${RELEASE}"
msg_ok "Updated $APP"
msg_info "Restoring configuration"
if [[ -f ~/config.json ]]; then
@@ -69,10 +67,7 @@ function update_script() {
systemctl start habitica
systemctl start habitica-client
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

6
ct/headers/alpine-redlib Normal file
View File

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

View File

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

6
ct/headers/healthchecks Normal file
View File

@@ -0,0 +1,6 @@
__ ____ __ __ __
/ /_ ___ ____ _/ / /_/ /_ _____/ /_ ___ _____/ /_______
/ __ \/ _ \/ __ `/ / __/ __ \/ ___/ __ \/ _ \/ ___/ //_/ ___/
/ / / / __/ /_/ / / /_/ / / / /__/ / / / __/ /__/ ,< (__ )
/_/ /_/\___/\__,_/_/\__/_/ /_/\___/_/ /_/\___/\___/_/|_/____/

View File

@@ -1,6 +0,0 @@
__ __ __
/ / / /___ ____ __________/ /__ _____
/ /_/ / __ \/ __ `/ ___/ __ / _ \/ ___/
/ __ / /_/ / /_/ / / / /_/ / __/ /
/_/ /_/\____/\__,_/_/ \__,_/\___/_/

6
ct/headers/litellm Normal file
View File

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

6
ct/headers/mediamanager Normal file
View File

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

6
ct/headers/swizzin Normal file
View File

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

6
ct/headers/tracktor Normal file
View File

@@ -0,0 +1,6 @@
__ __ __
/ /__________ ______/ /__/ /_____ _____
/ __/ ___/ __ `/ ___/ //_/ __/ __ \/ ___/
/ /_/ / / /_/ / /__/ ,< / /_/ /_/ / /
\__/_/ \__,_/\___/_/|_|\__/\____/_/

View File

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

View File

@@ -31,8 +31,7 @@ function update_script() {
mv /opt/"${APP}_version.txt" ~/.headscale
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.headscale 2>/dev/null)" ]] || [[ ! -f ~/.headscale ]]; then
if check_for_gh_release "headscale" "juanfont/headscale"; then
msg_info "Stopping ${APP}"
systemctl stop headscale
msg_ok "Stopped ${APP}"
@@ -41,12 +40,9 @@ function update_script() {
fetch_and_deploy_gh_release "headscale-admin" "GoodiesHQ/headscale-admin" "prebuild" "latest" "/opt/headscale-admin" "admin.zip"
msg_info "Starting ${APP}"
# Temporary fix until headscale project resolves service getting disabled on updates.
systemctl enable -q --now headscale
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

65
ct/healthchecks.sh Normal file
View File

@@ -0,0 +1,65 @@
#!/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: MickLesk (CanbiZ)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://healthchecks.io/
APP="healthchecks"
var_tags="${var_tags:-monitoring}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
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/healthchecks ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "healthchecks" "healthchecks/healthchecks"; then
msg_info "Stopping $APP"
systemctl stop healthchecks
msg_ok "Stopped $APP"
setup_uv
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks"
msg_info "Updating $APP"
cd /opt/healthchecks
mkdir -p /opt/healthchecks/static-collected/
$STD uv pip install wheel gunicorn -r requirements.txt --system
$STD uv run -- python manage.py makemigrations
$STD uv run -- python manage.py migrate --noinput
$STD uv run -- python manage.py collectstatic --noinput
$STD uv run -- python manage.py compress
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start healthchecks
systemctl restart caddy
msg_ok "Started $APP"
msg_ok "Update Successful"
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}https://${IP}${CL}"

View File

@@ -1,85 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck
# Author: MickLesk (Canbiz) & vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://hoarder.app/
APP="Hoarder"
var_tags="${var_tags:-bookmark}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
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/hoarder ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
PREV_RELEASE=$(cat /opt/${APP}_version.txt)
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "${PREV_RELEASE}" ]]; then
msg_info "Stopping Services"
systemctl stop hoarder-web hoarder-workers hoarder-browser
msg_ok "Stopped Services"
msg_info "Updating ${APP} to v${RELEASE}"
if [[ $(corepack -v) < "0.31.0" ]]; then
$STD npm install -g corepack@0.31.0
fi
if [[ "${PREV_RELEASE}" < 0.23.0 ]]; then
$STD apt-get install -y graphicsmagick ghostscript
fi
cd /opt
if [[ -f /opt/hoarder/.env ]] && [[ ! -f /etc/hoarder/hoarder.env ]]; then
mkdir -p /etc/hoarder
mv /opt/hoarder/.env /etc/hoarder/hoarder.env
fi
rm -rf /opt/hoarder
curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
$STD unzip v"${RELEASE}".zip
mv karakeep-"${RELEASE}" /opt/hoarder
cd /opt/hoarder/apps/web
$STD pnpm install --frozen-lockfile
$STD pnpm exec next build --experimental-build-mode compile
cp -r /opt/hoarder/apps/web/.next/standalone/apps/web/server.js /opt/hoarder/apps/web
cd /opt/hoarder/apps/workers
$STD pnpm install --frozen-lockfile
export DATA_DIR=/opt/hoarder_data
cd /opt/hoarder/packages/db
$STD pnpm migrate
sed -i "s/SERVER_VERSION=${PREV_RELEASE}/SERVER_VERSION=${RELEASE}/" /etc/hoarder/hoarder.env
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Starting Services"
systemctl start hoarder-browser hoarder-workers hoarder-web
msg_ok "Started Services"
msg_info "Cleaning up"
rm -R /opt/v"${RELEASE}".zip
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}."
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

@@ -81,9 +81,8 @@ EOF
msg_ok "Updated Services"
systemctl daemon-reload
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/homarr-labs/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.${APP} 2>/dev/null || cat /opt/${APP}_version.txt 2>/dev/null)" ]]; then
if check_for_gh_release "homarr" "homarr-labs/homarr"; then
msg_info "Stopping Services (Patience)"
systemctl stop homarr
msg_ok "Services Stopped"
@@ -98,7 +97,6 @@ EOF
$STD apt upgrade nodejs -y
msg_ok "Updated Nodejs"
$STD command -v jq || $STD apt-get update && $STD apt-get install -y jq
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.packageManager | split("@")[1]')"
setup_nodejs
@@ -106,7 +104,7 @@ EOF
rm -rf /opt/homarr
fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr"
msg_info "Updating and rebuilding ${APP} to v${RELEASE} (Patience)"
msg_info "Updating and rebuilding ${APP} (Patience)"
rm /opt/run_homarr.sh
cat <<'EOF' >/opt/run_homarr.sh
#!/bin/bash
@@ -153,7 +151,6 @@ EOF
mkdir /opt/homarr/build
cp ./node_modules/better-sqlite3/build/Release/better_sqlite3.node ./build/better_sqlite3.node
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP}"
msg_info "Starting Services"
@@ -164,8 +161,6 @@ EOF
if [[ "$choice" =~ ^[Yy]$ ]]; then
reboot
fi
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,18 +27,20 @@ function update_script() {
exit
fi
if [[ -x /opt/homebox ]]; then
sed -i 's|/opt\b|/opt/homebox|g' /etc/systemd/system/homebox.service
sed -i 's|^ExecStart=/opt/homebox$|ExecStart=/opt/homebox/homebox|' /etc/systemd/system/homebox.service
sed -i 's|WorkingDirectory=/opt$|WorkingDirectory=/opt/homebox|' /etc/systemd/system/homebox.service
sed -i 's|ExecStart=/opt/homebox$|ExecStart=/opt/homebox/homebox|' /etc/systemd/system/homebox.service
sed -i 's|EnvironmentFile=/opt/.env$|EnvironmentFile=/opt/homebox/.env|' /etc/systemd/system/homebox.service
systemctl daemon-reload
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.homebox 2>/dev/null)" ]] || [[ ! -f ~/.homebox ]]; then
if check_for_gh_release "homebox" "sysadminsmedia/homebox"; then
msg_info "Stopping ${APP}"
systemctl stop homebox
msg_ok "${APP} Stopped"
[ -x /opt/homebox ] && rm -f /opt/homebox
if [ -f /opt/homebox ] && [ -x /opt/homebox ]; then
rm -f /opt/homebox
fi
fetch_and_deploy_gh_release "homebox" "sysadminsmedia/homebox" "prebuild" "latest" "/opt/homebox" "homebox_Linux_x86_64.tar.gz"
chmod +x /opt/homebox/homebox
[ -f /opt/.env ] && mv /opt/.env /opt/homebox/.env
@@ -47,10 +49,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start homebox
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -27,8 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/danielbrendel/hortusfox-web/releases/latest | jq -r .tag_name | sed 's/^v//')
if [[ ! -f ~/.hortusfox ]] || [[ "${RELEASE}" != "$(cat ~/.hortusfox)" ]]; then
if check_for_gh_release "danielbrendel" "hortusfox-web"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_ok "Stopped Service"
@@ -58,8 +57,6 @@ function update_script() {
rm -r /opt/hortusfox-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -30,26 +30,24 @@ function update_script() {
fi
setup_uv
RELEASE=$(curl -fsSL https://api.github.com/repos/plexguide/Huntarr.io/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')
if [[ -f ~/.huntarr && "${RELEASE}" == "$(cat ~/.huntarr)" ]]; then
msg_ok "No update required. ${APP} is already at ${RELEASE}"
exit
if check_for_gh_release "huntarr" "plexguide/Huntarr.io"; then
msg_info "Stopping huntarr"
systemctl stop huntarr
msg_ok "Stopped huntarr"
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
msg_info "Configuring $APP"
cd /opt/huntarr
$STD uv pip install -r requirements.txt --python /opt/huntarr/.venv/bin/python
msg_ok "Configured $APP"
msg_info "Starting $APP"
systemctl start huntarr
msg_ok "Started $APP"
msg_ok "Updated $APP"
fi
msg_info "Stopping huntarr service"
systemctl stop huntarr
msg_ok "Stopped huntarr service"
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
msg_info "Configuring $APP"
cd /opt/huntarr
$STD uv pip install -r requirements.txt --python /opt/huntarr/.venv/bin/python
msg_ok "Configured $APP"
msg_info "Starting $APP"
systemctl start huntarr
msg_ok "Started $APP"
msg_ok "Updated $APP to v${RELEASE}"
exit
}

View File

@@ -29,6 +29,8 @@ function update_script() {
fi
setup_uv
PNPM_VERSION="$(curl -fsSL "https://raw.githubusercontent.com/immich-app/immich/refs/heads/main/package.json" | jq -r '.packageManager | split("@")[1]')"
NODE_VERSION="22" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
STAGING_DIR=/opt/staging
BASE_DIR=${STAGING_DIR}/base-images
@@ -52,147 +54,151 @@ function update_script() {
if [[ -f ~/.immich_library_revisions ]]; then
libraries=("libjxl" "libheif" "libraw" "imagemagick" "libvips")
cd "$BASE_DIR"
msg_info "Checking for updates to custom image-processing libraries"
$STD git pull
for library in "${libraries[@]}"; do
compile_"$library"
done
msg_ok "Image-processing libraries updated"
msg_ok "Image-processing libraries up to date"
fi
RELEASE="1.138.0"
#RELEASE=$(curl -fsSL https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ -f ~/.immich && "$RELEASE" == "$(cat ~/.immich)" ]]; then
msg_ok "No update required. ${APP} is already at v${RELEASE}"
exit
fi
msg_info "Stopping ${APP} services"
systemctl stop immich-web
systemctl stop immich-ml
msg_ok "Stopped ${APP}"
INSTALL_DIR="/opt/${APP}"
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
SRC_DIR="${INSTALL_DIR}/source"
APP_DIR="${INSTALL_DIR}/app"
ML_DIR="${APP_DIR}/machine-learning"
GEO_DIR="${INSTALL_DIR}/geodata"
VCHORD_RELEASE="0.4.3"
# VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
RELEASE="1.140.1"
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
msg_info "Stopping Services"
systemctl stop immich-web
systemctl stop immich-ml
msg_ok "Stopped ${APP}"
INSTALL_DIR="/opt/${APP}"
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
SRC_DIR="${INSTALL_DIR}/source"
APP_DIR="${INSTALL_DIR}/app"
ML_DIR="${APP_DIR}/machine-learning"
GEO_DIR="${INSTALL_DIR}/geodata"
VCHORD_RELEASE="0.4.3"
# VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
msg_info "Updating VectorChord"
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
-e "/vchordrq.prewarm_dim/d" |
sudo -u postgres psql
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
msg_info "Updating VectorChord"
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
-e "/vchordrq.prewarm_dim/d" |
sudo -u postgres psql
fi
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
$STD apt install -y ./vchord.deb
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
systemctl restart postgresql
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX face_index;"
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX clip_index;"
fi
echo "$VCHORD_RELEASE" >~/.vchord_version
rm ./vchord.deb
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
fi
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
$STD apt install -y ./vchord.deb
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
systemctl restart postgresql
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX face_index;"
$STD sudo -u postgres psql -d immich -c "REINDEX INDEX clip_index;"
fi
echo "$VCHORD_RELEASE" >~/.vchord_version
rm ./vchord.deb
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
fi
cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
if grep -qs "set -a" "$APP_DIR"/bin/start.sh; then
cp "$APP_DIR"/bin/start.sh "$INSTALL_DIR"
else
cat <<EOF >"$INSTALL_DIR"/start.sh
cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
if grep -qs "set -a" "$APP_DIR"/bin/start.sh; then
cp "$APP_DIR"/bin/start.sh "$INSTALL_DIR"
else
cat <<EOF >"$INSTALL_DIR"/start.sh
#!/usr/bin/env bash
set -a
. "$INSTALL_DIR"/.env
. ${INSTALL_DIR}/.env
set +a
/usr/bin/node "$APP_DIR"/dist/main.js "\$@"
/usr/bin/node ${APP_DIR}/dist/main.js "\$@"
EOF
chmod +x "$INSTALL_DIR"/start.sh
chmod +x "$INSTALL_DIR"/start.sh
fi
(
shopt -s dotglob
rm -rf "${APP_DIR:?}"/*
)
rm -rf "$SRC_DIR"
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
msg_info "Updating ${APP} web and microservices"
cd "$SRC_DIR"/server
if [[ "$RELEASE" == "1.135.1" ]]; then
rm ./src/schema/migrations/1750323941566-UnsetPrewarmDimParameter.ts
fi
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
export CI=1
corepack enable
# server build
export SHARP_IGNORE_GLOBAL_LIBVIPS=true
$STD pnpm --filter immich --frozen-lockfile build
unset SHARP_IGNORE_GLOBAL_LIBVIPS
export SHARP_FORCE_GLOBAL_LIBVIPS=true
$STD pnpm --filter immich --frozen-lockfile --prod --no-optional deploy "$APP_DIR"
cp "$APP_DIR"/package.json "$APP_DIR"/bin
sed -i 's|^start|./start|' "$APP_DIR"/bin/immich-admin
# openapi & web build
cd "$SRC_DIR"
$STD pnpm --filter @immich/sdk --filter immich-web --frozen-lockfile --force install
$STD pnpm --filter @immich/sdk --filter immich-web build
cp -a web/build "$APP_DIR"/www
cp LICENSE "$APP_DIR"
# cli build
$STD pnpm --filter @immich/sdk --filter @immich/cli --frozen-lockfile install
$STD pnpm --filter @immich/sdk --filter @immich/cli build
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
cd "$APP_DIR"
mv "$INSTALL_DIR"/start.sh "$APP_DIR"/bin
msg_ok "Updated ${APP} web and microservices"
cd "$SRC_DIR"/machine-learning
mkdir -p "$ML_DIR"
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
$STD /usr/local/bin/uv venv "$VIRTUAL_ENV"
if [[ -f ~/.openvino ]]; then
msg_info "Updating HW-accelerated machine-learning"
/usr/local/bin/uv -q sync --extra openvino --no-cache --active
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Updated HW-accelerated machine-learning"
else
msg_info "Updating machine-learning"
/usr/local/bin/uv -q sync --extra cpu --no-cache --active
msg_ok "Updated machine-learning"
fi
cd "$SRC_DIR"
cp -a machine-learning/{ann,immich_ml} "$ML_DIR"
mv "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
if [[ -f ~/.openvino ]]; then
sed -i "/intra_op/s/int = 0/int = os.cpu_count() or 0/" "$ML_DIR"/immich_ml/config.py
fi
ln -sf "$APP_DIR"/resources "$INSTALL_DIR"
cd "$APP_DIR"
grep -rl /usr/src | xargs -n1 sed -i "s|\/usr/src|$INSTALL_DIR|g"
grep -rlE "'/build'" | xargs -n1 sed -i "s|'/build'|'$APP_DIR'|g"
sed -i "s@\"/cache\"@\"$INSTALL_DIR/cache\"@g" "$ML_DIR"/immich_ml/config.py
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$APP_DIR"/upload
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$ML_DIR"/upload
ln -s "$GEO_DIR" "$APP_DIR"
chown -R immich:immich "$INSTALL_DIR"
if [[ ! -f ~/.debian_version.bak ]]; then
cp /etc/debian_version ~/.debian_version.bak
sed -i 's/.*/13.0/' /etc/debian_version
fi
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
systemctl restart immich-ml immich-web
fi
rm -rf "${APP_DIR:?}"/*
mkdir -p "$ML_DIR"
rm -rf "$SRC_DIR"
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
msg_info "Updating ${APP} web and microservices"
cd "$SRC_DIR"/server
if [[ "$RELEASE" == "1.135.1" ]]; then
rm ./src/schema/migrations/1750323941566-UnsetPrewarmDimParameter.ts
fi
$STD npm install -g node-gyp node-pre-gyp
$STD npm ci
$STD npm run build
$STD npm prune --omit=dev --omit=optional
cp -a {bin,dist,node_modules,resources,package*.json} "$APP_DIR"/
cp package.json "$APP_DIR"/bin
mv "$INSTALL_DIR"/start.sh "$APP_DIR"/bin
sed -i 's|^start|./start|' "$APP_DIR"/bin/immich-admin
cd "$SRC_DIR"/open-api/typescript-sdk
$STD npm ci
$STD npm run build
cd "$SRC_DIR"/web
$STD npm ci
$STD npm run build
cd "$SRC_DIR"
cp -a web/build "$APP_DIR"/www
cp LICENSE "$APP_DIR"
cd "$APP_DIR"
export SHARP_FORCE_GLOBAL_LIBVIPS=true
$STD npm install sharp
rm -rf "$APP_DIR"/node_modules/@img/sharp-{libvips*,linuxmusl-x64}
msg_ok "Updated ${APP} web and microservices"
cd "$SRC_DIR"/machine-learning
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
$STD /usr/local/bin/uv venv "$VIRTUAL_ENV"
if [[ -f ~/.openvino ]]; then
msg_info "Updating HW-accelerated machine-learning"
/usr/local/bin/uv -q sync --extra openvino --no-cache --active
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
msg_ok "Updated HW-accelerated machine-learning"
else
msg_info "Updating machine-learning"
/usr/local/bin/uv -q sync --extra cpu --no-cache --active
msg_ok "Updated machine-learning"
fi
cd "$SRC_DIR"
cp -a machine-learning/{ann,immich_ml} "$ML_DIR"
mv "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
if [[ -f ~/.openvino ]]; then
sed -i "/intra_op/s/int = 0/int = os.cpu_count() or 0/" "$ML_DIR"/immich_ml/config.py
fi
ln -sf "$APP_DIR"/resources "$INSTALL_DIR"
cd "$APP_DIR"
grep -rl /usr/src | xargs -n1 sed -i "s|\/usr/src|$INSTALL_DIR|g"
grep -rlE "'/build'" | xargs -n1 sed -i "s|'/build'|'$APP_DIR'|g"
sed -i "s@\"/cache\"@\"$INSTALL_DIR/cache\"@g" "$ML_DIR"/immich_ml/config.py
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$APP_DIR"/upload
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$ML_DIR"/upload
ln -s "$GEO_DIR" "$APP_DIR"
msg_info "Updating Immich CLI"
$STD npm i -g @immich/cli
msg_ok "Updated Immich CLI"
chown -R immich:immich "$INSTALL_DIR"
if [[ ! -f ~/.debian_version.bak ]]; then
cp /etc/debian_version ~/.debian_version.bak
sed -i 's/.*/13.0/' /etc/debian_version
fi
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
systemctl restart immich-ml immich-web
exit
}
@@ -200,7 +206,8 @@ function compile_libjxl() {
SOURCE=${SOURCE_DIR}/libjxl
JPEGLI_LIBJPEG_LIBRARY_SOVERSION="62"
JPEGLI_LIBJPEG_LIBRARY_VERSION="62.3.0"
: "${LIBJXL_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libjxl.json)}"
# : "${LIBJXL_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libjxl.json)}"
: "${LIBJXL_REVISION:=794a5dcf0d54f9f0b20d288a12e87afb91d20dfc}"
if [[ "${update:-}" ]] || [[ "$LIBJXL_REVISION" != "$(grep 'libjxl' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libjxl"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -247,7 +254,8 @@ function compile_libheif() {
$STD apt-get install -y libaom-dev
local update="required"
fi
: "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"
# : "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"
: "${LIBHEIF_REVISION:=35dad50a9145332a7bfdf1ff6aef6801fb613d68}"
if [[ "${update:-}" ]] || [[ "$LIBHEIF_REVISION" != "$(grep 'libheif' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libheif"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -279,7 +287,8 @@ function compile_libheif() {
function compile_libraw() {
SOURCE=${SOURCE_DIR}/libraw
local update
: "${LIBRAW_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libraw.json)}"
# : "${LIBRAW_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libraw.json)}"
: "${LIBRAW_REVISION:=09bea31181b43e97959ee5452d91e5bc66365f1f}"
if [[ "${update:-}" ]] || [[ "$LIBRAW_REVISION" != "$(grep 'libraw' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libraw"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -300,7 +309,8 @@ function compile_libraw() {
function compile_imagemagick() {
SOURCE=$SOURCE_DIR/imagemagick
: "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/imagemagick.json)}"
# : "${IMAGEMAGICK_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/imagemagick.json)}"
: "${IMAGEMAGICK_REVISION:=8289a3388a085ad5ae81aa6812f21554bdfd54f2}"
if [[ "${update:-}" ]] || [[ "$IMAGEMAGICK_REVISION" != "$(grep 'imagemagick' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling ImageMagick"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi
@@ -320,7 +330,8 @@ function compile_imagemagick() {
function compile_libvips() {
SOURCE=$SOURCE_DIR/libvips
: "${LIBVIPS_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libvips.json)}"
# : "${LIBVIPS_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libvips.json)}"
: "${LIBVIPS_REVISION:=8fa37a64547e392d3808eed8d72adab7e02b3d00}"
if [[ "${update:-}" ]] || [[ "$LIBVIPS_REVISION" != "$(grep 'libvips' ~/.immich_library_revisions | awk '{print $2}')" ]]; then
msg_info "Recompiling libvips"
if [[ -d "$SOURCE" ]]; then rm -rf "$SOURCE"; fi

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.inspircd 2>/dev/null)" ]] || [[ ! -f ~/.inspircd ]]; then
if check_for_gh_release "inspircd" "inspircd/inspircd"; then
msg_info "Stopping Service"
systemctl stop inspircd
msg_ok "Stopped Service"
@@ -39,10 +37,7 @@ function update_script() {
msg_info "Starting Service"
systemctl start inspircd
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -34,13 +34,18 @@ function update_script() {
DisableRootWarning=true
EOF
fi
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
msg_info "Stopping Service"
systemctl stop jackett
msg_ok "Stopped Service"
RELEASE=$(curl -s https://api.github.com/repos/Jackett/Jackett/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.jackett 2>/dev/null)" ]] || [[ ! -f ~/.jackett ]]; then
rm -rf /opt/Jackett
fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
msg_info "Starting Service"
systemctl start jackett
msg_ok "Started Service"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,10 +28,10 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -s https://api.github.com/repos/Casvt/Kapowarr/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat $HOME/.kapowarr)" ]] || [[ ! -f $HOME/.kapowarr ]]; then
setup_uv
setup_uv
if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then
msg_info "Stopping $APP"
systemctl stop kapowarr
msg_ok "Stopped $APP"
@@ -41,17 +41,15 @@ function update_script() {
msg_ok "Backup Created"
fetch_and_deploy_gh_release "kapowarr" "Casvt/Kapowarr"
msg_info "Updating $APP to ${RELEASE}"
msg_info "Updating $APP"
mv /opt/db /opt/kapowarr
msg_ok "Updated $APP to ${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start kapowarr
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -28,73 +28,71 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/karakeep-app/karakeep/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ -f ~/.karakeep && "$RELEASE" == "$(cat ~/.karakeep)" ]]; then
msg_ok "No update required. ${APP} is already at ${RELEASE}"
exit
if check_for_gh_release "karakeep" "karakeep-app/karakeep"; then
msg_info "Stopping Services"
systemctl stop karakeep-web karakeep-workers karakeep-browser
msg_ok "Stopped Services"
msg_info "Updating yt-dlp"
$STD yt-dlp --update-to nightly
msg_ok "Updated yt-dlp"
msg_info "Prepare update"
if [[ -f /opt/${APP}_version.txt && "$(cat /opt/${APP}_version.txt)" < "0.23.0" ]]; then
$STD apt-get install -y graphicsmagick ghostscript
fi
if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then
mkdir -p /etc/karakeep
mv /opt/karakeep/.env /etc/karakeep/karakeep.env
fi
rm -rf /opt/karakeep
msg_ok "Update prepared"
if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then
sed -i 's|^ExecStart=.*$|ExecStart=/usr/bin/node dist/index.mjs|' /etc/systemd/system/karakeep-workers.service
systemctl daemon-reload
fi
fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
if command -v corepack >/dev/null; then
$STD corepack disable
fi
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
msg_info "Updating ${APP}"
corepack enable
export PUPPETEER_SKIP_DOWNLOAD="true"
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
export NEXT_TELEMETRY_DISABLED=1
export CI="true"
cd /opt/karakeep/apps/web
$STD pnpm install --frozen-lockfile
$STD pnpm build
cd /opt/karakeep/apps/workers
$STD pnpm install --frozen-lockfile
$STD pnpm build
cd /opt/karakeep/apps/cli
$STD pnpm install --frozen-lockfile
$STD pnpm build
DATA_DIR="$(sed -n '/^DATA_DIR/p' /etc/karakeep/karakeep.env | awk -F= '{print $2}' | tr -d '="=')"
export DATA_DIR="${DATA_DIR:-/opt/karakeep_data}"
cd /opt/karakeep/packages/db
$STD pnpm migrate
$STD pnpm store prune
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env
msg_ok "Updated ${APP}"
msg_info "Starting Services"
systemctl start karakeep-browser karakeep-workers karakeep-web
msg_ok "Started Services"
msg_info "Cleaning up"
$STD apt-get autoremove -y
$STD apt-get autoclean -y
msg_ok "Cleaned"
msg_ok "Updated Successfully"
fi
msg_info "Stopping Services"
systemctl stop karakeep-web karakeep-workers karakeep-browser
msg_ok "Stopped Services"
msg_info "Updating yt-dlp"
$STD yt-dlp --update-to nightly
msg_ok "Updated yt-dlp"
msg_info "Prepare update"
if [[ -f /opt/${APP}_version.txt && "$(cat /opt/${APP}_version.txt)" < "0.23.0" ]]; then
$STD apt-get install -y graphicsmagick ghostscript
fi
if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then
mkdir -p /etc/karakeep
mv /opt/karakeep/.env /etc/karakeep/karakeep.env
fi
rm -rf /opt/karakeep
msg_ok "Update prepared"
if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then
sed -i 's|^ExecStart=.*$|ExecStart=/usr/bin/node dist/index.mjs|' /etc/systemd/system/karakeep-workers.service
systemctl daemon-reload
fi
fetch_and_deploy_gh_release "karakeep" "karakeep-app/karakeep"
if command -v corepack >/dev/null; then
$STD corepack disable
fi
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
msg_info "Updating ${APP} to v${RELEASE}"
corepack enable
export PUPPETEER_SKIP_DOWNLOAD="true"
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
export NEXT_TELEMETRY_DISABLED=1
export CI="true"
cd /opt/karakeep/apps/web
$STD pnpm install --frozen-lockfile
$STD pnpm build
cd /opt/karakeep/apps/workers
$STD pnpm install --frozen-lockfile
$STD pnpm build
cd /opt/karakeep/apps/cli
$STD pnpm install --frozen-lockfile
$STD pnpm build
DATA_DIR="$(sed -n '/^DATA_DIR/p' /etc/karakeep/karakeep.env | awk -F= '{print $2}' | tr -d '="=')"
export DATA_DIR="${DATA_DIR:-/opt/karakeep_data}"
cd /opt/karakeep/packages/db
$STD pnpm migrate
$STD pnpm store prune
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${RELEASE}/" /etc/karakeep/karakeep.env
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Starting Services"
systemctl start karakeep-browser karakeep-workers karakeep-web
msg_ok "Started Services"
msg_info "Cleaning up"
$STD apt-get autoremove -y
$STD apt-get autoclean -y
msg_ok "Cleaned"
msg_ok "Updated Successfully"
exit
}

View File

@@ -27,35 +27,39 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "keycloak" "keycloak/keycloak"; then
msg_info "Stopping Keycloak"
systemctl stop keycloak
msg_ok "Stopped Keycloak"
msg_info "Stopping Keycloak"
systemctl stop keycloak
msg_ok "Stopped Keycloak"
msg_info "Updating packages"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated packages"
msg_info "Updating packages"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated packages"
msg_info "Backup old Keycloak"
cd /opt
mv keycloak keycloak.old
msg_ok "Backup done"
msg_info "Backup old Keycloak"
cd /opt
mv keycloak keycloak.old
tar -czf keycloak_conf_backup.tar.gz keycloak.old/conf
msg_ok "Backup done"
fetch_and_deploy_gh_release "keycloak_app" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz"
fetch_and_deploy_gh_release "keycloak" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz"
msg_info "Updating ${APP}"
cd /opt
cp -a keycloak.old/conf/. keycloak/conf/
cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true
cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true
msg_ok "Updated ${APP} LXC"
msg_info "Updating ${APP}"
cd /opt
mv keycloak_conf_backup.tar.gz keycloak/conf
cp -r keycloak.old/providers keycloak
cp -r keycloak.old/themes keycloak
rm -rf keycloak.old
msg_ok "Updated ${APP} LXC"
msg_info "Restarting Keycloak"
systemctl restart keycloak
msg_ok "Restarted Keycloak"
msg_info "Restarting Keycloak"
systemctl restart keycloak
msg_ok "Restarted Keycloak"
msg_info "Cleaning up"
rm -rf keycloak.old
msg_ok "Cleanup complete"
msg_ok "Update Successful"
fi
exit
}

View File

@@ -27,8 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/benjaminjonard/koillection/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ ! -f ~/.koillection ]] || [[ "${RELEASE}" != "$(cat ~/.koillection)" ]]; then
if check_for_gh_release "koillection" "benjaminjonard/koillection"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_ok "Stopped Service"
@@ -36,10 +35,10 @@ function update_script() {
msg_info "Creating a backup"
mv /opt/koillection/ /opt/koillection-backup
msg_ok "Backup created"
fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection"
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/koillection
cp -r /opt/koillection-backup/.env.local /opt/koillection
cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/
@@ -51,7 +50,7 @@ function update_script() {
$STD yarn install
$STD yarn build
chown -R www-data:www-data /opt/koillection/public/uploads
msg_ok "Updated $APP to v${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting Service"
systemctl start apache2
@@ -60,10 +59,7 @@ function update_script() {
msg_info "Cleaning up"
rm -r /opt/koillection-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -28,12 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Kometa-Team/Kometa/releases/latest | jq -r '.tag_name | sub("^v";"")')
if [[ "${RELEASE}" != "$(cat ~/.kometa 2>/dev/null)" ]] || [[ ! -f ~/.kometa ]]; then
if check_for_gh_release "kometa" "Kometa-Team/Kometa"; then
msg_info "Stopping Service"
systemctl stop kometa
msg_ok "Stopped Service"
@@ -43,7 +38,6 @@ function update_script() {
msg_ok "Backup completed"
PYTHON_VERSION="3.12" setup_uv
$STD uv python update-shell
fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa"
msg_info "Updating Kometa"
@@ -56,8 +50,6 @@ function update_script() {
systemctl start kometa
msg_ok "Started Service"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ ! -f ~/.komga ]] || [[ "${RELEASE}" != "$(cat ~/.komga)" ]]; then
if check_for_gh_release "komga" "gotson/komga"; then
msg_info "Stopping ${APP}"
systemctl stop komga
msg_ok "Stopped ${APP}"
@@ -41,10 +39,7 @@ function update_script() {
msg_info "Starting ${APP}"
systemctl start komga
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}."
fi
exit
}

View File

@@ -56,6 +56,9 @@ function update_script() {
mv "$BACKUP_FILE" "$COMPOSE_FILE"
exit 1
fi
if ! grep -qxF 'COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env; then
sed -i '/^COMPOSE_KOMODO_IMAGE_TAG=latest$/a COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env
fi
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d
msg_ok "Updated ${APP}"
exit

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/ipfs/kubo/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.kubo)" ]] || [[ ! -f ~/.kubo ]]; then
if check_for_gh_release "kubo" "ipfs/kubo"; then
msg_info "Stopping service"
systemctl stop ipfs
msg_ok "Stopped service"
@@ -39,10 +37,7 @@ function update_script() {
msg_info "Starting service"
systemctl start ipfs
msg_ok "Service started"
msg_ok "Updated successfuly"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_ok "Updated successfully"
fi
exit
}

View File

@@ -27,9 +27,8 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/librespeed/speedtest-rust/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.librespeed 2>/dev/null)" ]] || [[ ! -f ~/.librespeed ]]; then
if check_for_gh_release "librespeed-rust" "librespeed/speedtest-rust"; then
msg_info "Stopping Services"
systemctl stop librespeed_rs
msg_ok "Services Stopped"
@@ -39,8 +38,7 @@ function update_script() {
msg_info "Starting Service"
systemctl start librespeed_rs
msg_ok "Started Service"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Updated Successfully"
fi
exit
}

View File

@@ -28,25 +28,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -s https://api.github.com/repos/LibreTranslate/LibreTranslate/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat $HOME/.libretranslate)" ]] || [[ ! -f $HOME/.libretranslate ]]; then
if check_for_gh_release "libretranslate" "LibreTranslate/LibreTranslate"; then
msg_info "Stopping $APP"
systemctl stop libretranslate
msg_ok "Stopped $APP"
msg_info "Updating $APP to ${RELEASE}"
msg_info "Updating $APP"
cd /opt/libretranslate
source .venv/bin/activate
$STD pip install -U libretranslate
msg_ok "Updated $APP to ${RELEASE}"
msg_ok "Updated $APP"
msg_info "Starting $APP"
systemctl start libretranslate
msg_ok "Started $APP"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -29,23 +29,18 @@ function update_script() {
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Lidarr/Lidarr/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.lidarr)" ]] || [[ ! -f ~/.lidarr ]]; then
if check_for_gh_release "lidarr" "Lidarr/Lidarr"; then
msg_info "Stopping service"
systemctl stop lidarr
msg_ok "Service stopped"
fetch_and_deploy_gh_release "lidarr" "Lidarr/Lidarr" "prebuild" "latest" "/opt/Lidarr" "Lidarr.master*linux-core-x64.tar.gz"
chmod 775 /opt/Lidarr
msg_info "Starting service"
systemctl start lidarr
msg_ok "Service started"
msg_ok "Updated successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -26,8 +26,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/linkwarden_version.txt)" ]] || [[ ! -f /opt/linkwarden_version.txt ]]; then
if check_for_gh_release "linkwarden" "linkwarden/linkwarden"; then
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
msg_info "Stopping ${APP}"
systemctl stop linkwarden
@@ -35,11 +34,15 @@ function update_script() {
RUST_CRATES="monolith" setup_rust
msg_info "Updating ${APP} to ${RELEASE}"
msg_info "Backing up data"
mv /opt/linkwarden/.env /opt/.env
[ -d /opt/linkwarden/data ] && mv /opt/linkwarden/data /opt/data.bak
rm -rf /opt/linkwarden
msg_ok "Backed up data"
fetch_and_deploy_gh_release "linkwarden" "linkwarden/linkwarden"
msg_info "Updating ${APP}"
cd /opt/linkwarden
$STD yarn
$STD npx playwright install-deps
@@ -49,7 +52,7 @@ function update_script() {
$STD yarn web:build
$STD yarn prisma:deploy
[ -d /opt/data.bak ] && mv /opt/data.bak /opt/linkwarden/data
msg_ok "Updated ${APP} to ${RELEASE}"
msg_ok "Updated ${APP}"
msg_info "Starting ${APP}"
systemctl start linkwarden
@@ -61,8 +64,6 @@ function update_script() {
rm -rf /opt/linkwarden/.next/cache
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}."
fi
exit
}

View File

@@ -27,12 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/knadh/listmonk/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.listmonk)" ]] || [[ ! -f ~/.listmonk ]]; then
if check_for_gh_release "listmonk" "knadh/listmonk"; then
msg_info "Stopping ${APP}"
systemctl stop listmonk
msg_ok "Stopped ${APP}"
@@ -56,10 +51,7 @@ function update_script() {
msg_info "Cleaning up"
rm -rf /opt/listmonk-backup/
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

60
ct/litellm.sh Normal file
View File

@@ -0,0 +1,60 @@
#!/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: stout01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/BerriAI/litellm
APP="LiteLLM"
var_tags="${var_tags:-ai;interface}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/litellm.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Stopping ${APP}"
systemctl stop litellm
msg_ok "Stopped ${APP}"
VENV_PATH="/opt/litellm/.venv"
PYTHON_VERSION="3.13" setup_uv
msg_info "Updating $APP"
$STD "$VENV_PATH/bin/python" -m pip install --upgrade litellm[proxy] prisma
msg_info "Updating DB Schema"
$STD uv --directory=/opt/litellm run litellm --config /opt/litellm/litellm.yaml --use_prisma_db_push --skip_server_startup
msg_ok "DB Schema Updated"
msg_info "Starting ${APP}"
systemctl start litellm
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
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}:4000${CL}"

View File

@@ -27,12 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/hargata/lubelog/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ ! -f ~/.lubelogger ]] || [[ "${RELEASE}" != "$(cat ~/.lubelogger)" ]]; then
if check_for_gh_release "lubelogger" "hargata/lubelog"; then
msg_info "Stopping Service"
systemctl stop lubelogger
msg_ok "Stopped Service"
@@ -67,10 +62,7 @@ function update_script() {
msg_info "Cleaning up"
rm -rf /tmp/lubeloggerData
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -27,30 +27,30 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.mafl 2>/dev/null)" ]] || [[ ! -f ~/.mafl ]]; then
if check_for_gh_release "mafl" "hywax/mafl"; then
msg_info "Stopping Mafl service"
systemctl stop mafl
msg_ok "Service stopped"
msg_info "Performing backup"
msg_info "Backing up data"
mkdir -p /opt/mafl-backup/data
mv /opt/mafl/data /opt/mafl-backup/data
rm -rf /opt/mafl
msg_ok "Backup complete"
fetch_and_deploy_gh_release "mafl" "hywax/mafl"
msg_info "Updating Mafl to v${RELEASE}"
msg_info "Updating Mafl"
cd /opt/mafl
yarn install
yarn build
$STD yarn install
$STD yarn build
mv /opt/mafl-backup/data /opt/mafl/data
msg_ok "Mafl updated"
msg_info "Starting Service"
systemctl start mafl
msg_ok "Updated Mafl to v${RELEASE}"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Service started"
msg_ok "Update successfully"
fi
exit
}

View File

@@ -27,12 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/MagicMirrorOrg/MagicMirror/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ ! -f ~/.magicmirror ]] || [[ "${RELEASE}" != "$(cat ~/.magicmirror)" ]]; then
if check_for_gh_release "magicmirror" "MagicMirrorOrg/MagicMirror"; then
msg_info "Stopping Service"
systemctl stop magicmirror
msg_ok "Stopped Service"
@@ -62,10 +57,7 @@ function update_script() {
msg_info "Starting Service"
systemctl start magicmirror
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -28,12 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/intri-in/manage-my-damn-life-nextjs/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.mmdl)" ]] || [[ ! -f ~/.mmdl ]]; then
if check_for_gh_release "mmdl" "intri-in/manage-my-damn-life-nextjs"; then
msg_info "Stopping service"
systemctl stop mmdl
msg_ok "Stopped service"
@@ -54,10 +49,7 @@ function update_script() {
msg_info "Starting service"
systemctl start mmdl
msg_ok "Started service"
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -28,10 +28,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/mealie-recipes/mealie/releases/latest | jq -r '.tag_name | sub("^v"; "")')
if [[ "${RELEASE}" != "$(cat ~/.mealie 2>/dev/null)" ]] || [[ ! -f ~/.mealie ]]; then
if check_for_gh_release "mealie" "mealie-recipes/mealie"; then
PYTHON_VERSION="3.12" setup_uv
NODE_MODULE="yarn" NODE_VERSION="20" setup_nodejs
@@ -79,10 +76,7 @@ function update_script() {
msg_info "Starting $APP"
systemctl start mealie
msg_ok "Started $APP"
msg_ok "Update to $RELEASE Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
msg_ok "Update Successful"
fi
exit
}

75
ct/mediamanager.sh Normal file
View File

@@ -0,0 +1,75 @@
#!/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: vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/maxdorninger/MediaManager
APP="MediaManager"
var_tags="${var_tags:-arr}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
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/mediamanager ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
setup_uv
if check_for_gh_release "mediamanager" "maxdorninger/MediaManager"; then
msg_info "Stopping Service"
systemctl stop mediamanager
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "MediaManager" "maxdorninger/MediaManager" "tarball" "latest" "/opt/mediamanager"
msg_info "Updating ${APP}"
MM_DIR="/opt/mm"
export CONFIG_DIR="${MM_DIR}/config"
export FRONTEND_FILES_DIR="${MM_DIR}/web/build"
export BASE_PATH=""
export PUBLIC_VERSION=""
export PUBLIC_API_URL="${BASE_PATH}/api/v1"
export BASE_PATH="${BASE_PATH}/web"
cd /opt/mediamanager/web
$STD npm ci
$STD npm run build
rm -rf "$FRONTEND_FILES_DIR"/build
cp -r build "$FRONTEND_FILES_DIR"
export BASE_PATH=""
export VIRTUAL_ENV="/opt/${MM_DIR}/venv"
cd /opt/mediamanager
rm -rf "$MM_DIR"/{media_manager,alembic*}
cp -r {media_manager,alembic*} "$MM_DIR"
$STD /usr/local/bin/uv sync --locked --active
msg_ok "Updated $APP"
msg_info "Starting Service"
systemctl start mediamanager
msg_ok "Started Service"
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}:8000${CL}"

View File

@@ -24,28 +24,21 @@ function update_script() {
check_container_storage
check_container_resources
if [[ ! -d /opt/mediamtx/ ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if ! command -v jq &>/dev/null; then
$STD apt-get install -y jq
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/bluenviron/mediamtx/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.mediamtx)" ]] || [[ ! -f ~/.mediamtx ]]; then
if check_for_gh_release "mediamtx" "bluenviron/mediamtx"; then
msg_info "Stopping service"
systemctl stop mediamtx
msg_ok "Service stopped"
fetch_and_deploy_gh_release "mediamtx" "bluenviron/mediamtx" "prebuild" "latest" "/opt/mediamtx" "mediamtx*linux_amd64.tar.gz"
msg_info "Starting service"
systemctl start mediamtx
msg_ok "Service started"
msg_ok "Updated successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -30,15 +30,18 @@ function update_script() {
3>&1 1>&2 2>&3)
if [ "$UPD" == "1" ]; then
msg_info "Stopping Meilisearch"
systemctl stop meilisearch
msg_ok "Stopped Meilisearch"
if check_for_gh_release "meilisearch" "meilisearch/meilisearch"; then
msg_info "Stopping Meilisearch"
systemctl stop meilisearch
msg_ok "Stopped Meilisearch"
fetch_and_deploy_gh_release "meilisearch" "meilisearch/meilisearch" "binary"
fetch_and_deploy_gh_release "meilisearch" "meilisearch/meilisearch" "binary"
msg_info "Starting Meilisearch"
systemctl start meilisearch
msg_ok "Started Meilisearch"
msg_info "Starting Meilisearch"
systemctl start meilisearch
msg_ok "Started Meilisearch"
msg_ok "Update Successfully"
fi
exit
fi
@@ -47,24 +50,27 @@ function update_script() {
msg_error "No Meilisearch-UI Installation Found!"
exit
fi
msg_info "Stopping Meilisearch-UI"
systemctl stop meilisearch-ui
msg_ok "Stopped Meilisearch-UI"
if check_for_gh_release "meilisearch-ui" "riccox/meilisearch-ui"; then
msg_info "Stopping Meilisearch-UI"
systemctl stop meilisearch-ui
msg_ok "Stopped Meilisearch-UI"
cp /opt/meilisearch-ui/.env.local /tmp/.env.local.bak
rm -rf /opt/meilisearch-ui
fetch_and_deploy_gh_release "meilisearch-ui" "riccox/meilisearch-ui" "tarball"
cp /opt/meilisearch-ui/.env.local /tmp/.env.local.bak
rm -rf /opt/meilisearch-ui
fetch_and_deploy_gh_release "meilisearch-ui" "riccox/meilisearch-ui" "tarball"
msg_info "Configuring Meilisearch-UI"
cd /opt/meilisearch-ui
sed -i 's|const hash = execSync("git rev-parse HEAD").toString().trim();|const hash = "unknown";|' /opt/meilisearch-ui/vite.config.ts
mv /tmp/.env.local.bak /opt/meilisearch-ui/.env.local
$STD pnpm install
msg_ok "Configured Meilisearch-UI"
msg_info "Configuring Meilisearch-UI"
cd /opt/meilisearch-ui
sed -i 's|const hash = execSync("git rev-parse HEAD").toString().trim();|const hash = "unknown";|' /opt/meilisearch-ui/vite.config.ts
mv /tmp/.env.local.bak /opt/meilisearch-ui/.env.local
$STD pnpm install
msg_ok "Configured Meilisearch-UI"
msg_info "Starting Meilisearch-UI"
systemctl start meilisearch-ui
msg_ok "Started Meilisearch-UI"
msg_info "Starting Meilisearch-UI"
systemctl start meilisearch-ui
msg_ok "Started Meilisearch-UI"
msg_ok "Update Successfully"
fi
exit
fi
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/usememos/memos/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.memos 2>/dev/null)" ]] || [[ ! -f ~/.memos ]]; then
if check_for_gh_release "memos" "usememos/memos"; then
msg_info "Stopping service"
systemctl stop memos
msg_ok "Service stopped"
@@ -39,10 +37,7 @@ function update_script() {
msg_info "Starting service"
systemctl start memos
msg_ok "Service started"
msg_ok "Updated successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/monicahq/monica/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f ~/.monica ]] || [[ "${RELEASE}" != "$(cat ~/.monica)" ]]; then
if check_for_gh_release "monica" "monicahq/monica"; then
msg_info "Stopping Service"
systemctl stop apache2
msg_ok "Stopped Service"
@@ -40,7 +38,7 @@ function update_script() {
fetch_and_deploy_gh_release "monica" "monicahq/monica" "prebuild" "latest" "/opt/monica" "monica-v*.tar.bz2"
msg_info "Configuring monica"
msg_info "Configuring monica"
cd /opt/monica/
cp -r /opt/monica-backup/.env /opt/monica
cp -r /opt/monica-backup/storage/* /opt/monica/storage/
@@ -59,10 +57,7 @@ function update_script() {
msg_info "Cleaning up"
rm -r /opt/monica-backup
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -27,11 +27,10 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://github.com/gnmyt/myspeed/releases/latest | grep "title>Release" | cut -d " " -f 5)
if [[ ! -f ~/.myspeed ]] || [[ "${RELEASE}" != "$(cat ~/.myspeed)" ]]; then
msg_info "Stopping ${APP} Service"
if check_for_gh_release "myspeed" "gnmyt/myspeed"; then
msg_info "Stopping Service"
systemctl stop myspeed
msg_ok "Stopped ${APP} Service"
msg_ok "Stopped Service"
msg_info "Creating backup"
cd /opt
@@ -41,22 +40,19 @@ function update_script() {
fetch_and_deploy_gh_release "myspeed" "gnmyt/myspeed" "prebuild" "latest" "/opt/myspeed" "MySpeed-*.zip"
msg_info "Updating ${APP} to ${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/myspeed
$STD npm install
if [[ -d /opt/myspeed_bak/data ]]; then
mkdir -p /opt/myspeed/data/
cp -r /opt/myspeed_bak/data/* /opt/myspeed/data/
fi
msg_ok "Updated ${APP} to ${RELEASE}"
msg_ok "Updated ${APP}"
msg_info "Starting ${APP} Service"
msg_info "Starting Service"
systemctl start myspeed
msg_ok "Started ${APP} Service"
msg_ok "Started Service"
msg_ok "Updated Successfully!\n"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
}

View File

@@ -9,7 +9,7 @@ APP="n8n"
var_tags="${var_tags:-automation}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}"
var_disk="${var_disk:-10}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
@@ -27,13 +27,6 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
if ! command -v npm >/dev/null 2>&1; then
echo "Installing NPM..."
$STD apt-get install -y npm
echo "Installed NPM..."
fi
fi
if [ ! -f /opt/n8n.env ]; then
sed -i 's|^Environment="N8N_SECURE_COOKIE=false"$|EnvironmentFile=/opt/n8n.env|' /etc/systemd/system/n8n.service
HOST_IP=$(hostname -I | awk '{print $1}')
@@ -45,6 +38,7 @@ N8N_PROTOCOL=http
N8N_HOST=$HOST_IP
EOF
fi
NODE_VERSION="22" setup_nodejs
msg_info "Updating ${APP} LXC"
$STD npm update -g n8n

View File

@@ -20,31 +20,27 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /var/lib/navidrome ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/navidrome/navidrome/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.navidrome 2>/dev/null)" ]] || [[ ! -f ~/.navidrome ]]; then
msg_info "Stopping Services"
systemctl stop navidrome
msg_ok "Services Stopped"
fetch_and_deploy_gh_release "navidrome" "navidrome/navidrome" "binary"
msg_info "Starting Services"
systemctl start navidrome
msg_ok "Started Services"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
header_info
check_container_storage
check_container_resources
if [[ ! -d /var/lib/navidrome ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "navidrome" "navidrome/navidrome"; then
msg_info "Stopping Services"
systemctl stop navidrome
msg_ok "Services Stopped"
fetch_and_deploy_gh_release "navidrome" "navidrome/navidrome" "binary"
msg_info "Starting Services"
systemctl start navidrome
msg_ok "Started Services"
msg_ok "Updated Successfully"
fi
exit
}
start

View File

@@ -20,16 +20,14 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/nocodb.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/nocodb/nocodb/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ ! -f ~/.nocodb ]] || [[ "${RELEASE}" != "$(cat ~/.nocodb)" ]]; then
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/nocodb.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "nocodb" "nocodb/nocodb"; then
msg_info "Stopping Service"
systemctl stop nocodb
msg_ok "Stopped Service"
@@ -39,10 +37,7 @@ function update_script() {
msg_info "Starting Service"
systemctl start nocodb
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}

View File

@@ -30,26 +30,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.nodebb)" ]] || [[ ! -f ~/.nodebb ]]; then
if check_for_gh_release "nodebb" "NodeBB/NodeBB"; then
msg_info "Stopping ${APP}"
systemctl stop nodebb
msg_ok "Stopped ${APP}"
msg_info "Updating ${APP} to v${RELEASE}"
msg_info "Updating ${APP}"
cd /opt/nodebb
$STD ./nodebb upgrade
echo "${RELEASE}" > ~/.nodebb
msg_ok "Updated ${APP} to v${RELEASE}"
echo "${CHECK_UPDATE_RELEASE}" >~/.nodebb
msg_ok "Updated ${APP}"
msg_info "Starting ${APP}"
systemctl start nodebb
msg_ok "Started ${APP}"
msg_ok "Updated Successfully\n"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -28,22 +28,17 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/oauth2-proxy/oauth2-proxy/releases/latest | jq -r .tag_name | sed 's/^v//')
if [[ ! -f ~/.oauth2-proxy ]] || [[ "${RELEASE}" != "$(cat ~/.oauth2-proxy)" ]]; then
msg_info "Stopping ${APP} services"
if check_for_gh_release "oauth2-proxy" "oauth2-proxy/oauth2-proxy"; then
msg_info "Stopping Service"
systemctl stop oauth2-proxy
msg_ok "Stopped ${APP} service"
msg_ok "Stopped Service"
fetch_and_deploy_gh_release "oauth2-proxy" "oauth2-proxy/oauth2-proxy" "prebuild" "latest" "/opt/oauth2-proxy" "oauth2-proxy*linux-amd64.tar.gz"
msg_info "Starting ${APP} service"
msg_info "Starting Service"
systemctl start oauth2-proxy
msg_ok "Started ${APP} service"
msg_ok "Started Service"
msg_ok "Updated successfully!\n"
else
msg_ok "${APP} is already up to date (${RELEASE})"
fi
}

View File

@@ -27,12 +27,10 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat ~/.ombi)" ]] || [[ ! -f ~/.ombi ]]; then
msg_info "Stopping ${APP} service"
if check_for_gh_release "ombi" "Ombi-app/Ombi"; then
msg_info "Stopping Service"
systemctl stop ombi
msg_ok "Stopped ${APP} service"
msg_ok "Stopped Service"
msg_info "Creating backup"
[[ -f /opt/ombi/Ombi.db ]] && mv /opt/ombi/Ombi.db /opt
@@ -46,13 +44,10 @@ function update_script() {
[[ -f /opt/OmbiExternal.db ]] && mv /opt/OmbiExternal.db /opt/ombi
[[ -f /opt/OmbiSettings.db ]] && mv /opt/OmbiSettings.db /opt/ombi
msg_info "Starting ${APP} service"
msg_info "Starting Service"
systemctl start ombi
msg_ok "Started ${APP} service"
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} ia already at ${RELEASE}."
fi
exit
}

View File

@@ -27,9 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/thomiceli/opengist/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f ~/.opengist ]] || [[ "${RELEASE}" != "$(cat ~/.opengist)" ]]; then
if check_for_gh_release "opengist" "thomiceli/opengist"; then
msg_info "Stopping Service"
systemctl stop opengist
msg_ok "Stopped Service"
@@ -37,20 +35,17 @@ function update_script() {
msg_info "Creating backup"
mv /opt/opengist /opt/opengist-backup
msg_ok "Backup created"
fetch_and_deploy_gh_release "opengist" "thomiceli/opengist" "prebuild" "latest" "/opt/opengist" "opengist*linux-amd64.tar.gz"
msg_info "Configuring ${APP}"
msg_info "Restoring Configuration"
mv /opt/opengist-backup/config.yml /opt/opengist/config.yml
msg_ok "Configured ${APP}"
msg_ok "Configuration Restored"
msg_info "Starting Service"
systemctl start opengist
msg_ok "Started Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}."
fi
exit
}

View File

@@ -30,7 +30,7 @@ function update_script() {
msg_info "Updating $APP"
systemctl stop openobserve
LATEST=$(curl -fsSL https://api.github.com/repos/openobserve/openobserve/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
tar zxvf <(curl -fsSL https://github.com/openobserve/openobserve/releases/download/$LATEST/openobserve-${LATEST}-linux-amd64.tar.gz) -C /opt/openobserve
$STD tar zxvf <(curl -fsSL https://downloads.openobserve.ai/releases/openobserve/$LATEST/openobserve-$LATEST-linux-amd64.tar.gz) -C /opt/openobserve
systemctl start openobserve
msg_ok "Updated $APP"
exit

View File

@@ -20,32 +20,28 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/ots ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/Luzifer/ots/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat ~/.ots 2>/dev/null)" ]] || [[ ! -f ~/.ots ]]; then
msg_info "Stopping ${APP} Service"
systemctl stop ots
systemctl stop nginx
msg_ok "Stopped ${APP} Service"
fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_amd64.tgz"
msg_info "Stopping ${APP} Service"
systemctl start ots
systemctl start nginx
msg_ok "Stopped ${APP} Service"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/ots ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if check_for_gh_release "ots" "Luzifer/ots"; then
msg_info "Stopping Services"
systemctl stop ots
systemctl stop nginx
msg_ok "Stopped Services"
fetch_and_deploy_gh_release "ots" "Luzifer/ots" "prebuild" "latest" "/opt/ots" "ots_linux_amd64.tgz"
msg_info "Starting Services"
systemctl start ots
systemctl start nginx
msg_ok "Started Services"
msg_ok "Updated Successfully"
fi
exit
}
start

Some files were not shown because too many files have changed in this diff Show More