Compare commits

..

195 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
fc780646d2 Update CHANGELOG.md (#4883)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-01 01:18:20 +01:00
community-scripts-pr-app[bot]
5f175b4f7b Update versions.json (#4882)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-06-01 02:17:38 +02:00
community-scripts-pr-app[bot]
afaeadd77e Update CHANGELOG.md (#4878)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 21:19:32 +01:00
CanbiZ
72c7abeb69 Silverbullet: Fix Installation (wrong path) (#4873) 2025-05-31 22:19:08 +02:00
community-scripts-pr-app[bot]
12723c33d0 Update CHANGELOG.md (#4877)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 21:17:26 +01:00
CanbiZ
7af6bf3fe7 ActualBudget: fix update check (file instead of folder check) (#4874) 2025-05-31 22:16:52 +02:00
community-scripts-pr-app[bot]
e56436d3f2 Update CHANGELOG.md (#4875)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 20:48:33 +01:00
Slaviša Arežina
25de119cad Remove Authentik script (#4867) 2025-05-31 21:48:08 +02:00
community-scripts-pr-app[bot]
c8308da95e Update CHANGELOG.md (#4871)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 18:33:52 +01:00
community-scripts-pr-app[bot]
9923094a54 Update CHANGELOG.md (#4870)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 18:33:37 +01:00
Slaviša Arežina
463cc62443 Fix libssl url (#4868) 2025-05-31 19:33:19 +02:00
Bram Suurd
92227fb9bf Revert "Update package dependencies in package.json and package-lock.json (#4845)" (#4869)
This reverts commit 809bc6c302.
2025-05-31 19:33:01 +02:00
community-scripts-pr-app[bot]
18a9c524ae Update versions.json (#4865)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 14:07:11 +02:00
community-scripts-pr-app[bot]
d925ae0f04 Update CHANGELOG.md (#4860)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 01:15:09 +01:00
community-scripts-pr-app[bot]
cb0d0bd83e Update versions.json (#4859)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-31 02:14:28 +02:00
community-scripts-pr-app[bot]
9fcfb2fe49 Update CHANGELOG.md (#4854)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 15:55:41 +01:00
Chris
d23aa3fda0 slskd: add space in sed command (#4853) 2025-05-30 16:55:05 +02:00
community-scripts-pr-app[bot]
131f83505c Update versions.json (#4850)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 14:07:17 +02:00
community-scripts-pr-app[bot]
5a95a745ff Update CHANGELOG.md (#4849)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 12:52:52 +01:00
Jainil Prajapati 🪐
809bc6c302 Update package dependencies in package.json and package-lock.json (#4845) 2025-05-30 13:52:16 +02:00
community-scripts-pr-app[bot]
4fba20d80b Update CHANGELOG.md (#4847)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 07:03:23 +01:00
Slaviša Arežina
42a7614d15 Fix working directory and plugins (#4838) 2025-05-30 08:02:57 +02:00
community-scripts-pr-app[bot]
2dd7ebda2c Update CHANGELOG.md (#4841)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 01:15:40 +01:00
community-scripts-pr-app[bot]
e388ce82a1 Update versions.json (#4840)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-30 02:14:58 +02:00
community-scripts-pr-app[bot]
ac902f2098 Update .app files (#4835)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-29 21:37:15 +02:00
community-scripts-pr-app[bot]
a23b83dfc5 Update CHANGELOG.md (#4836)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 20:36:28 +01:00
Tobias
85975fbe15 SearXNG fix limiter (#4834)
* fix limiter

* apply to existing lxc
2025-05-29 21:35:54 +02:00
community-scripts-pr-app[bot]
23e33c5cb6 Update CHANGELOG.md (#4833)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 20:02:53 +01:00
CanbiZ
e39e5d5b7d Docmost: add jq before nodejs install (#4831)
special for docmost - because they used an fixed pnpm
2025-05-29 21:02:17 +02:00
community-scripts-pr-app[bot]
1619d6a093 Update CHANGELOG.md (#4832)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 19:33:03 +01:00
Slaviša Arežina
f23b688d55 Fix Dashboard not beign accessible (#4828) 2025-05-29 20:32:30 +02:00
community-scripts-pr-app[bot]
b6319b5dd3 Update CHANGELOG.md (#4830)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 18:26:14 +01:00
community-scripts-pr-app[bot]
030e6344d2 Update CHANGELOG.md (#4829)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 18:26:05 +01:00
CanbiZ
85837d8099 Update mysql-install.sh (#4820) 2025-05-29 19:25:36 +02:00
CanbiZ
5295ed8cf2 Docker-VM: set individual Hostname / Disk-Space formatting (#4821)
* Docker-VM: Refactor (Hostname / Disk-Space)

* Update docker-vm.json
2025-05-29 19:25:25 +02:00
CanbiZ
85ae0e2f74 change node Version 2025-05-29 17:53:00 +02:00
CanbiZ
b406921c1a fix pulse 2025-05-29 15:29:33 +02:00
community-scripts-pr-app[bot]
5a16b5995d Update versions.json (#4822)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 14:07:26 +02:00
community-scripts-pr-app[bot]
fd637c8819 Update CHANGELOG.md (#4819)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 07:44:17 +01:00
Götz Görisch
6d40ca9cd6 docs: fix casing of OpenWrt (#4805)
* reason: https://openwrt.org/trademark

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Co-authored-by: Goetz Goerisch <ggoerisch@gmail.com>
2025-05-29 08:43:39 +02:00
community-scripts-pr-app[bot]
48979104d7 Update CHANGELOG.md (#4814)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 01:15:30 +01:00
community-scripts-pr-app[bot]
964950c82c Update versions.json (#4813)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-29 02:14:45 +02:00
community-scripts-pr-app[bot]
0677af31c4 Update CHANGELOG.md (#4811)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 20:41:17 +01:00
xb00tt
4495ffee6a Update pulse.json (#4809)
Proxmox-API-Token link had a rogue blank space after https://
2025-05-28 21:40:53 +02:00
CanbiZ
6745dad963 fix missing header after ved migration 2025-05-28 21:35:09 +02:00
CanbiZ
e9470ab1af remove old ved links in source 2025-05-28 21:32:23 +02:00
CanbiZ
5abcb47051 Umbrel: Fix MachineType (#4810)
* Umbrel: Fix MachineType

* Update umbrel-os-vm.sh

* Update umbrel-os-vm.sh
2025-05-28 21:23:30 +02:00
CanbiZ
709a899f8f fix Basename cleanup 2025-05-28 20:46:01 +02:00
community-scripts-pr-app[bot]
b9ff7513a4 Update CHANGELOG.md (#4806)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 19:04:27 +01:00
CanbiZ
7a963a76b7 fix wrong dev/null 2025-05-28 20:03:58 +02:00
community-scripts-pr-app[bot]
13506d92fb Update .app files (#4802)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-28 15:45:24 +02:00
community-scripts-pr-app[bot]
36f859c062 Update CHANGELOG.md (#4801)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 14:44:32 +01:00
CanbiZ
adc8225ed2 Umbrel-OS (#4788) 2025-05-28 15:44:05 +02:00
community-scripts-pr-app[bot]
640dca8d8b Update .app files (#4798)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-28 14:57:21 +02:00
community-scripts-pr-app[bot]
3b0713b812 Update CHANGELOG.md (#4800)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 13:56:27 +01:00
community-scripts-pr-app[bot]
d20165f25c Update CHANGELOG.md (#4799)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 13:55:58 +01:00
CanbiZ
c79d05ca5f Habitica: Use Node20 (#4796) 2025-05-28 14:55:35 +02:00
Stavros
f0dd1c264d refactor: use binary and randomize credentials in tinyauth (#4632) 2025-05-28 14:55:14 +02:00
community-scripts-pr-app[bot]
951782d8f2 Update CHANGELOG.md (#4797)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 13:46:29 +01:00
CanbiZ
5e8ee6baa8 MariaDB CLI Update, Go Install Helper & Minor Cleanup (#4793)
* .

* switch mysql to mariadb

* fix some basenames

* remove basename to correct filename

* merge firefly from main
2025-05-28 14:45:53 +02:00
community-scripts-pr-app[bot]
7bb9fb09ba Update versions.json (#4794)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 14:07:37 +02:00
community-scripts-pr-app[bot]
eb04327aa9 Update CHANGELOG.md (#4792)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 12:36:49 +01:00
community-scripts-pr-app[bot]
ce39e7c87e Update CHANGELOG.md (#4791)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 12:35:19 +01:00
community-scripts-pr-app[bot]
0e75a57582 Update date in json (#4790)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-28 12:35:06 +01:00
push-app-to-main[bot]
8765b7ac1d oauth2-proxy (#4784)
* 'Add new script'

* change cleaning

* change cleaning

---------

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-05-28 13:34:38 +02:00
community-scripts-pr-app[bot]
56e316b849 Update CHANGELOG.md (#4789)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 12:32:56 +01:00
CanbiZ
79a5624905 Alpine-Node-RED: add service to rc (#4783) 2025-05-28 13:32:32 +02:00
CanbiZ
a4dee03140 optimize mariadb check 2025-05-28 13:25:03 +02:00
CanbiZ
8787ef57b5 Update tools.func 2025-05-28 13:17:28 +02:00
CanbiZ
86674ef376 quickfix: remove apple hints in tarball extraction 2025-05-28 12:00:59 +02:00
community-scripts-pr-app[bot]
1e195cac1e Update CHANGELOG.md (#4782)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 10:43:20 +01:00
CanbiZ
8e8e09668b Pulse: use prebuild tarball file / remove unneeded npm actions (#4776)
* Pulse: use new tarball file

* Update pulse.sh

* Update pulse-install.sh

* remove npm packages
2025-05-28 11:42:46 +02:00
CanbiZ
6ef1c99f65 quickfix: node-red 2025-05-28 11:35:19 +02:00
community-scripts-pr-app[bot]
e2a8b8b799 Update CHANGELOG.md (#4781)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 10:25:49 +01:00
CanbiZ
c356f77efe Refactor: Remove redundant dependencies & unify unzip usage (#4780)
* refactor unzip / remove dep

* remove deps from alpine packages

* remove gnupg

* remove gnupg
2025-05-28 11:25:13 +02:00
community-scripts-pr-app[bot]
dcfe80e069 Update CHANGELOG.md (#4779)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 09:54:27 +01:00
CanbiZ
010928fee2 Refactor: Remove gpg / gnupg from script base (#4775)
* Refactor: Remove gpg / gnupg from

* push more

* add more

* Update reactive-resume-install.sh

* Revert: add unzip

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-05-28 10:54:01 +02:00
CanbiZ
aed2c0e5bf Merge branch 'main' of https://github.com/community-scripts/ProxmoxVE 2025-05-28 10:46:55 +02:00
CanbiZ
9e2d66266a node-red (alpine): remove unneeded service file 2025-05-28 10:46:47 +02:00
community-scripts-pr-app[bot]
da406b5ce8 Update CHANGELOG.md (#4777)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 09:30:59 +01:00
CanbiZ
a7bf2679de Refactor: Linkwarden + OS Upgrade (#4756)
* Refactor: Linkwarden + OS Upgrade

* update fetch_and_deploy function

* Update linkwarden.sh
2025-05-28 10:30:33 +02:00
community-scripts-pr-app[bot]
7079f428ca Update CHANGELOG.md (#4774)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 01:15:36 +01:00
community-scripts-pr-app[bot]
121bd8e557 Update versions.json (#4773)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-28 02:14:57 +02:00
Slaviša Arežina
d9c4ff9867 Update alpine-vaultwarden.sh (#4772) 2025-05-27 21:13:36 +02:00
community-scripts-pr-app[bot]
7db94ad73a Update date in json (#4769)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-27 16:21:42 +01:00
community-scripts-pr-app[bot]
56c2682601 Update CHANGELOG.md (#4768)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 16:21:33 +01:00
push-app-to-main[bot]
11a7c2e410 'Add new script' (#4766)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-27 17:21:07 +02:00
community-scripts-pr-app[bot]
ed9d8e995d Update CHANGELOG.md (#4765)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 15:31:53 +01:00
Saif
3b67e8dcc1 Alpine-Vaultwarden: Increase min disk requirements to 1GB (#4764)
* Increase var_disk size

0.5 > 1

* Update alpine-warden frontend hdd size

hdd: 0.5 > 1
2025-05-27 16:31:24 +02:00
community-scripts-pr-app[bot]
f09e57c200 Update CHANGELOG.md (#4763)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 15:10:23 +01:00
Théophile Diot
72c24d5147 Increase default RAM allocation for BunkerWeb to 8192MB in script and JSON configuration (#4762) 2025-05-27 16:09:55 +02:00
community-scripts-pr-app[bot]
93a179c201 Update CHANGELOG.md (#4761)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 14:32:47 +01:00
CanbiZ
ac2f0e66ae merge MariaDB to tools.func Installer (#4753)
* merge MariaDB to tools.func Installer

* add more mariadb migrations
2025-05-27 15:32:22 +02:00
community-scripts-pr-app[bot]
5ccf8a7cd6 Update CHANGELOG.md (#4760)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 14:28:58 +01:00
community-scripts-pr-app[bot]
db82285b95 Update CHANGELOG.md (#4759)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 14:28:30 +01:00
CanbiZ
58586cbfc8 merge PostgreSQL to tools.func Installer (#4752)
* Update tools.func

* Merge PostgreSQL to tools.func Installer
2025-05-27 15:28:05 +02:00
community-scripts-pr-app[bot]
8708980786 Update CHANGELOG.md (#4754)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 13:30:17 +01:00
CanbiZ
943fa7b7aa tools.func: little bugfixes | add rust install | add adminer install (#4750)
* tools.func: little bugfixes | add rust install | add adminer install

* Update tools.func

* fiix mongodb for ubuntu

* merge pg_modules function
2025-05-27 14:29:50 +02:00
community-scripts-pr-app[bot]
5085547f39 Update versions.json (#4751)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 14:07:26 +02:00
community-scripts-pr-app[bot]
5685e7e088 Update CHANGELOG.md (#4749)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 12:49:10 +01:00
CanbiZ
72db97b226 Big NodeJS Update: Use Helper Function on all Install-Scripts (#4744)
* Big NodeJS Update: Use Helper Function on all Install-Scripts

* add jq in node_function

* add more
2025-05-27 13:48:34 +02:00
community-scripts-pr-app[bot]
e6805db9f5 Update CHANGELOG.md (#4743)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 09:45:51 +01:00
CanbiZ
97073be5e2 lldap: fix update-check (#4742) 2025-05-27 10:45:16 +02:00
Tobias
82228189a7 Update pulse.json (#4740) 2025-05-27 10:06:35 +02:00
community-scripts-pr-app[bot]
53bdedfc08 Update CHANGELOG.md (#4739)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 08:06:20 +01:00
community-scripts-pr-app[bot]
92ff5a9881 Update date in json (#4738)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-27 08:04:41 +01:00
push-app-to-main[bot]
0bb4509cd7 Pulse (#4728)
* 'Add new script'

* Update pulse.sh

---------

Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-05-27 09:04:00 +02:00
community-scripts-pr-app[bot]
f339b7df10 Update CHANGELOG.md (#4735)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 01:15:09 +01:00
community-scripts-pr-app[bot]
a23a6a3da1 Update versions.json (#4734)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-27 02:14:29 +02:00
community-scripts-pr-app[bot]
3c12773956 Update CHANGELOG.md (#4727)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 13:08:04 +01:00
community-scripts-pr-app[bot]
d79ac98a31 Update versions.json (#4726)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 14:07:14 +02:00
CanbiZ
17654c2006 quickfix: tag for argus 2025-05-26 10:54:47 +02:00
community-scripts-pr-app[bot]
575443fac5 Update CHANGELOG.md (#4723)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 09:49:43 +01:00
community-scripts-pr-app[bot]
f38225d52f Update date in json (#4722)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-26 10:48:51 +02:00
community-scripts-pr-app[bot]
cef451c42c Update date in json (#4724)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-26 09:43:54 +01:00
community-scripts-pr-app[bot]
2a5856db03 Update CHANGELOG.md (#4721)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 09:43:27 +01:00
push-app-to-main[bot]
47abe248d0 'Add new script' (#4717)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-26 10:43:11 +02:00
push-app-to-main[bot]
98c64ffae9 'Add new script' (#4716)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-26 10:42:50 +02:00
CanbiZ
c136133b7c Excalidraw: increase HDD to 10GB (#4718) 2025-05-26 10:42:40 +02:00
Slaviša Arežina
1e5395d21b InspIRCd: Fix release name in release url (#4720)
* Update inspircd-install.sh

* Update
2025-05-26 10:29:44 +02:00
community-scripts-pr-app[bot]
dfb98698f3 Update CHANGELOG.md (#4715)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 06:31:05 +01:00
Chris
ff5b793e1e BREAKING CHANGE: Fix PocketID for v1.0.0 (#4711) 2025-05-26 07:30:24 +02:00
community-scripts-pr-app[bot]
4044790e5e Update CHANGELOG.md (#4713)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 01:15:51 +01:00
community-scripts-pr-app[bot]
e64b10bf99 Update versions.json (#4712)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-26 02:15:07 +02:00
community-scripts-pr-app[bot]
bf2b36f095 Update versions.json (#4707)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 14:06:48 +02:00
community-scripts-pr-app[bot]
15b606c019 Update CHANGELOG.md (#4706)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 12:15:35 +01:00
community-scripts-pr-app[bot]
16740ece38 Update CHANGELOG.md (#4705)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 12:15:17 +01:00
Bas van den Berg
d2d9a59e35 Back-up database if using sqlite (#4700) 2025-05-25 13:14:46 +02:00
community-scripts-pr-app[bot]
7d7664f12a Update CHANGELOG.md (#4703)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 12:14:32 +01:00
Bas van den Berg
98c1136d8e Fix typo (#4701) 2025-05-25 13:14:09 +02:00
Slaviša Arežina
2f1f0393b6 Update grafana.json (#4696) 2025-05-25 12:25:23 +02:00
community-scripts-pr-app[bot]
0cdde92556 Update CHANGELOG.md (#4698)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 01:16:38 +01:00
community-scripts-pr-app[bot]
85b638169d Update versions.json (#4697)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-25 02:16:06 +02:00
community-scripts-pr-app[bot]
1c186b5087 Update versions.json (#4695)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-24 14:06:48 +02:00
Slaviša Arežina
21efb1a2ec Update cloudflare-ddns-install.sh (#4694) 2025-05-24 13:44:43 +02:00
community-scripts-pr-app[bot]
9de702c301 Update CHANGELOG.md (#4691)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-24 01:14:44 +01:00
community-scripts-pr-app[bot]
a47d6efe41 Update versions.json (#4690)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-24 02:14:11 +02:00
community-scripts-pr-app[bot]
36253b0045 Update CHANGELOG.md (#4687)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 20:23:57 +01:00
Michel Roegl-Brunner
34e7c33e05 Remove rtsptoweb (deprecated) (#4686)
* Delete ct/rtsptoweb.sh

* Delete install/rtsptoweb-install.sh

* Delete ct/headers/rtsptoweb
2025-05-23 21:23:21 +02:00
Slaviša Arežina
e0a47f0aa3 Update zammad.json (#4682) 2025-05-23 15:06:28 +02:00
community-scripts-pr-app[bot]
bce10d447e Update versions.json (#4683)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 14:07:25 +02:00
community-scripts-pr-app[bot]
0d9804fcfe Update CHANGELOG.md (#4681)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 12:07:39 +01:00
CanbiZ
3b7c63183b Update Icons to selfhst/icons (#4680)
FreePBX & Configarr
2025-05-23 13:07:10 +02:00
community-scripts-pr-app[bot]
2d323d94ec Update CHANGELOG.md (#4675)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 06:43:43 +01:00
Stoufiler
ab0ed91c4f TYPO: Fix nexcloud to nextcloud (#4670) 2025-05-23 07:43:15 +02:00
community-scripts-pr-app[bot]
31e99bc49b Update CHANGELOG.md (#4672)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 01:15:17 +01:00
community-scripts-pr-app[bot]
5b27942981 Update versions.json (#4671)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-23 02:14:43 +02:00
Slaviša Arežina
161bafa818 Paperless-AI: Upscale the resources (#4668)
* Upscale the resources

* Update

* Update
2025-05-22 20:17:03 +02:00
community-scripts-pr-app[bot]
a5241ef1c5 Update CHANGELOG.md (#4666)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 18:35:37 +01:00
diemade
bf3f7dc3b1 Update commafeed.json (#4665) 2025-05-22 19:34:59 +02:00
community-scripts-pr-app[bot]
7264934136 Update .app files (#4658)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-22 15:37:52 +02:00
community-scripts-pr-app[bot]
a0745de096 Update CHANGELOG.md (#4661)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:30:45 +01:00
community-scripts-pr-app[bot]
4f4ec7d477 Update CHANGELOG.md (#4660)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:29:10 +01:00
community-scripts-pr-app[bot]
ba3de8d080 Update date in json (#4659)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:28:33 +01:00
community-scripts-pr-app[bot]
0f8932b125 Update CHANGELOG.md (#4657)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:27:23 +01:00
push-app-to-main[bot]
348354079b 'Add new script' (#4648)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-22 15:27:18 +02:00
push-app-to-main[bot]
48db08192a cloudflare-ddns (#4647)
* 'Add new script'

* Update cloudflare-ddns.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-05-22 15:26:39 +02:00
community-scripts-pr-app[bot]
b6f410e895 Update CHANGELOG.md (#4656)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:34:12 +01:00
community-scripts-pr-app[bot]
1221fec5ab Update CHANGELOG.md (#4655)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:57 +01:00
community-scripts-pr-app[bot]
faa805547c Update CHANGELOG.md (#4654)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:38 +01:00
Chris
fe0ac37ff1 slskd: fix #4649 (#4651) 2025-05-22 14:33:20 +02:00
community-scripts-pr-app[bot]
eed391917c Update CHANGELOG.md (#4653)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:33:05 +01:00
community-scripts-pr-app[bot]
76da24386d Update CHANGELOG.md (#4652)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 13:32:47 +01:00
CanbiZ
8e7caf4cd9 enable FUSE and TUN Handling (#4644) 2025-05-22 14:32:27 +02:00
CanbiZ
7d3040ab76 [gh]: Feature: Header-Generation for vm | tools | addon (#4643) 2025-05-22 14:32:21 +02:00
community-scripts-pr-app[bot]
6a3bf770fb Update versions.json (#4650)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 14:07:25 +02:00
CanbiZ
6805b01df2 Update alpine-node-red-install.sh 2025-05-22 11:17:26 +02:00
community-scripts-pr-app[bot]
7520917dcc Update CHANGELOG.md (#4641)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 08:08:56 +01:00
Slaviša Arežina
ec186b0288 Paperless-AI: Add RAG chat (#4635)
* Add RAG

* Oops
2025-05-22 09:08:19 +02:00
CanbiZ
c7afd9c427 quickfix json babybuddy 2025-05-22 08:30:50 +02:00
community-scripts-pr-app[bot]
bd3b022b08 Update CHANGELOG.md (#4638)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 01:15:11 +01:00
community-scripts-pr-app[bot]
49fcd68f42 Update versions.json (#4637)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-22 02:14:33 +02:00
community-scripts-pr-app[bot]
1382742c26 Update CHANGELOG.md (#4634)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 20:12:29 +01:00
Jason Bolla
9e2441ff53 Tandoor Recipes: Capture version information when installing (#4633)
* Capture version information when installing Tandoor

When installing Tandoor, run the version.py script to record version information.

* Set up Tandoor version earlier

Move Tandoor's version script execution into main install block.
2025-05-21 21:12:03 +02:00
community-scripts-pr-app[bot]
490dbc725e Update CHANGELOG.md (#4629)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 14:03:16 +01:00
CanbiZ
d9201e2cac Alpine-Node-RED: Update Service File (#4628)
* Update alpine-node-red-install.sh

* Update alpine-node-red-install.sh
2025-05-21 15:02:38 +02:00
community-scripts-pr-app[bot]
52c09646b2 Update versions.json (#4626)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 14:07:43 +02:00
community-scripts-pr-app[bot]
b5d70d5201 Update CHANGELOG.md (#4625)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 12:01:04 +01:00
community-scripts-pr-app[bot]
7089b9ef7b Update CHANGELOG.md (#4624)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 12:00:45 +01:00
community-scripts-pr-app[bot]
034d7df9cd Update date in json (#4623)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:40 +01:00
community-scripts-pr-app[bot]
f41ac673a3 Update CHANGELOG.md (#4622)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:26 +01:00
community-scripts-pr-app[bot]
a7382f9273 Update date in json (#4621)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-05-21 11:59:20 +01:00
push-app-to-main[bot]
cb1465544d 'Add new script' (#4620)
Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com>
2025-05-21 12:59:12 +02:00
push-app-to-main[bot]
796c31eae4 babybuddy (#4619)
* 'Add new script'

* Update babybuddy.sh

* add license

---------

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-05-21 12:58:47 +02:00
community-scripts-pr-app[bot]
047c2c44d6 Update CHANGELOG.md (#4618)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 07:02:38 +01:00
Slaviša Arežina
1baa841963 Fix update for older installs (#4612) 2025-05-21 08:02:03 +02:00
community-scripts-pr-app[bot]
7d40ee4aa9 Update CHANGELOG.md (#4616)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 01:15:37 +01:00
community-scripts-pr-app[bot]
f9a8925f64 Update versions.json (#4615)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-21 02:14:52 +02:00
community-scripts-pr-app[bot]
c62a0b149d Update versions.json (#4608)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-20 14:07:37 +02:00
community-scripts-pr-app[bot]
513402b099 Update CHANGELOG.md (#4606)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-20 12:05:27 +01:00
Slaviša Arežina
a39354f8f3 Update fetch_and_deploy function (#4605) 2025-05-20 13:05:02 +02:00
community-scripts-pr-app[bot]
3814e51d3f Update CHANGELOG.md (#4604)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-20 10:51:46 +01:00
CanbiZ
326f5e9151 Website: harmonize all Logos | use jsDelivr CDN links for icons from selfhst/icons repo (#4603)
* Update jsons

* push

* more

* Switch to CDN

* push new Icons into Branch

* Update dotnetaspwebapi.json

* add proxmox logo

* Update wger.json

* switch to webp

* Update apt-cacher-ng.json

* Update homarr.json

* finalize

* Update sqlserver2022.json

* fixes

* merge

---------

Co-authored-by: tremor021 <arezina.slavisa@gmail.com>
Co-authored-by: Michel Roegl-Brunner <73236783+michelroegl-brunner@users.noreply.github.com>
2025-05-20 11:51:20 +02:00
community-scripts-pr-app[bot]
1e2fda29b7 Update CHANGELOG.md (#4602)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-20 10:01:35 +01:00
Michel Roegl-Brunner
222db46cac [core] New Features for Config File function (#4601)
* New Features for Config File function

* New Features for Config File function
2025-05-20 11:00:58 +02:00
668 changed files with 8288 additions and 7250 deletions

View File

@@ -1,34 +1,50 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# Base directory for headers # Function for generating Figlet headers
headers_dir="./ct/headers" generate_headers() {
local base_dir=$1
local target_subdir=$2
local search_pattern=$3
# Ensure the headers directory exists and clear it local headers_dir="${base_dir}/headers"
mkdir -p "$headers_dir" mkdir -p "$headers_dir"
rm -f "$headers_dir"/* rm -f "$headers_dir"/*
# Find all .sh files in ./ct directory, sorted alphabetically # Recursive or non-recursive search
find ./ct -type f -name "*.sh" | sort | while read -r script; do if [[ "$search_pattern" == "**" ]]; then
# Extract the APP name from the APP line shopt -s globstar nullglob
app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null) file_list=("${base_dir}"/**/*.sh)
shopt -u globstar
if [[ -n "$app_name" ]]; then
# Define the output file name in the headers directory
output_file="${headers_dir}/$(basename "${script%.*}")"
# Generate figlet output
figlet_output=$(figlet -w 500 -f slant "$app_name")
# Check if figlet output is not empty
if [[ -n "$figlet_output" ]]; then
echo "$figlet_output" > "$output_file"
echo "Generated: $output_file"
else
echo "Figlet failed for $app_name in $script"
fi
else else
echo "No APP name found in $script, skipping." file_list=("${base_dir}"/*.sh)
fi fi
done
echo "Completed processing .sh files." for script in "${file_list[@]}"; do
[[ -f "$script" ]] || continue
app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null)
if [[ -n "$app_name" ]]; then
output_file="${headers_dir}/$(basename "${script%.*}")"
figlet_output=$(figlet -w 500 -f slant "$app_name")
if [[ -n "$figlet_output" ]]; then
echo "$figlet_output" >"$output_file"
echo "Generated: $output_file"
else
echo "Figlet failed for $app_name in $script"
fi
else
echo "No APP name found in $script, skipping."
fi
done
}
# ct
generate_headers "./ct" "headers" "*"
# tools (addon, pve, ...)
generate_headers "./tools" "headers" "**"
# vm
generate_headers "./vm" "headers" "*"
echo "Completed processing all sections."

View File

@@ -14,8 +14,232 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment. All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
## 2025-06-01
## 2025-05-31
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Silverbullet: Fix Installation (wrong path) [@MickLesk](https://github.com/MickLesk) ([#4873](https://github.com/community-scripts/ProxmoxVE/pull/4873))
- ActualBudget: fix update check (file instead of folder check) [@MickLesk](https://github.com/MickLesk) ([#4874](https://github.com/community-scripts/ProxmoxVE/pull/4874))
- Omada Controller: Fix libssl url [@tremor021](https://github.com/tremor021) ([#4868](https://github.com/community-scripts/ProxmoxVE/pull/4868))
### 🌐 Website
- #### 🐞 Bug Fixes
- Revert "Update package dependencies in package.json and package-lock.json (#4845) [@BramSuurdje](https://github.com/BramSuurdje) ([#4869](https://github.com/community-scripts/ProxmoxVE/pull/4869))
### 💥 Breaking Changes
- Remove Authentik script [@tremor021](https://github.com/tremor021) ([#4867](https://github.com/community-scripts/ProxmoxVE/pull/4867))
## 2025-05-30
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- slskd: add space in sed command [@vhsdream](https://github.com/vhsdream) ([#4853](https://github.com/community-scripts/ProxmoxVE/pull/4853))
- Alpine Traefik: Fix working directory and plugins [@tremor021](https://github.com/tremor021) ([#4838](https://github.com/community-scripts/ProxmoxVE/pull/4838))
### 🌐 Website
- #### 🐞 Bug Fixes
- Update package dependencies in package.json and package-lock.json [@enough-jainil](https://github.com/enough-jainil) ([#4845](https://github.com/community-scripts/ProxmoxVE/pull/4845))
## 2025-05-29
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- SearXNG fix limiter [@CrazyWolf13](https://github.com/CrazyWolf13) ([#4834](https://github.com/community-scripts/ProxmoxVE/pull/4834))
- Docmost: add jq before nodejs install [@MickLesk](https://github.com/MickLesk) ([#4831](https://github.com/community-scripts/ProxmoxVE/pull/4831))
- Alpine Traefik: Fix Dashboard not beign accessible [@tremor021](https://github.com/tremor021) ([#4828](https://github.com/community-scripts/ProxmoxVE/pull/4828))
- MySQL: Fix Wrong Command [@MickLesk](https://github.com/MickLesk) ([#4820](https://github.com/community-scripts/ProxmoxVE/pull/4820))
- docs: fix casing of OpenWrt [@GoetzGoerisch](https://github.com/GoetzGoerisch) ([#4805](https://github.com/community-scripts/ProxmoxVE/pull/4805))
- #### ✨ New Features
- Docker-VM: set individual Hostname / Disk-Space formatting [@MickLesk](https://github.com/MickLesk) ([#4821](https://github.com/community-scripts/ProxmoxVE/pull/4821))
## 2025-05-28
### 🆕 New Scripts
- Umbrel-OS [@MickLesk](https://github.com/MickLesk) ([#4788](https://github.com/community-scripts/ProxmoxVE/pull/4788))
- oauth2-proxy ([#4784](https://github.com/community-scripts/ProxmoxVE/pull/4784))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Habitica: Use Node20 [@MickLesk](https://github.com/MickLesk) ([#4796](https://github.com/community-scripts/ProxmoxVE/pull/4796))
- Alpine-Node-RED: add service to rc [@MickLesk](https://github.com/MickLesk) ([#4783](https://github.com/community-scripts/ProxmoxVE/pull/4783))
- #### ✨ New Features
- Pulse: use prebuild tarball file / remove unneeded npm actions [@MickLesk](https://github.com/MickLesk) ([#4776](https://github.com/community-scripts/ProxmoxVE/pull/4776))
- #### 💥 Breaking Changes
- Refactor: Linkwarden + OS Upgrade [@MickLesk](https://github.com/MickLesk) ([#4756](https://github.com/community-scripts/ProxmoxVE/pull/4756))
- #### 🔧 Refactor
- refactor: use binary and randomize credentials in tinyauth [@steveiliop56](https://github.com/steveiliop56) ([#4632](https://github.com/community-scripts/ProxmoxVE/pull/4632))
- MariaDB CLI Update, Go Install Helper & Minor Cleanup [@MickLesk](https://github.com/MickLesk) ([#4793](https://github.com/community-scripts/ProxmoxVE/pull/4793))
- Refactor: Remove redundant dependencies & unify unzip usage [@MickLesk](https://github.com/MickLesk) ([#4780](https://github.com/community-scripts/ProxmoxVE/pull/4780))
- Refactor: Remove gpg / gnupg from script base [@MickLesk](https://github.com/MickLesk) ([#4775](https://github.com/community-scripts/ProxmoxVE/pull/4775))
### 🌐 Website
- #### 📝 Script Information
- pulse: correct url in note [@xb00tt](https://github.com/xb00tt) ([#4809](https://github.com/community-scripts/ProxmoxVE/pull/4809))
## 2025-05-27
### 🆕 New Scripts
- Backrest ([#4766](https://github.com/community-scripts/ProxmoxVE/pull/4766))
- Pulse ([#4728](https://github.com/community-scripts/ProxmoxVE/pull/4728))
### 🚀 Updated Scripts
- Alpine-Vaultwarden: Increase min disk requirements to 1GB [@neyzm](https://github.com/neyzm) ([#4764](https://github.com/community-scripts/ProxmoxVE/pull/4764))
- #### 🐞 Bug Fixes
- lldap: fix update-check [@MickLesk](https://github.com/MickLesk) ([#4742](https://github.com/community-scripts/ProxmoxVE/pull/4742))
- #### ✨ New Features
- Big NodeJS Update: Use Helper Function on all Install-Scripts [@MickLesk](https://github.com/MickLesk) ([#4744](https://github.com/community-scripts/ProxmoxVE/pull/4744))
- #### 🔧 Refactor
- merge MariaDB to tools.func Installer [@MickLesk](https://github.com/MickLesk) ([#4753](https://github.com/community-scripts/ProxmoxVE/pull/4753))
- merge PostgreSQL to tools.func Installer [@MickLesk](https://github.com/MickLesk) ([#4752](https://github.com/community-scripts/ProxmoxVE/pull/4752))
### 🌐 Website
- #### 📝 Script Information
- Increase default RAM allocation for BunkerWeb to 8192MB [@TheophileDiot](https://github.com/TheophileDiot) ([#4762](https://github.com/community-scripts/ProxmoxVE/pull/4762))
## 2025-05-26
### 🆕 New Scripts
- Argus ([#4717](https://github.com/community-scripts/ProxmoxVE/pull/4717))
- Kasm ([#4716](https://github.com/community-scripts/ProxmoxVE/pull/4716))
### 🚀 Updated Scripts
- Excalidraw: increase HDD to 10GB [@MickLesk](https://github.com/MickLesk) ([#4718](https://github.com/community-scripts/ProxmoxVE/pull/4718))
- #### 🐞 Bug Fixes
- BREAKING CHANGE: Fix PocketID for v1.0.0 [@vhsdream](https://github.com/vhsdream) ([#4711](https://github.com/community-scripts/ProxmoxVE/pull/4711))
- InspIRCd: Fix release name in release url [@tremor021](https://github.com/tremor021) ([#4720](https://github.com/community-scripts/ProxmoxVE/pull/4720))
## 2025-05-25
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Pelican-panel: back-up database if using sqlite [@bvdberg01](https://github.com/bvdberg01) ([#4700](https://github.com/community-scripts/ProxmoxVE/pull/4700))
- #### 🔧 Refactor
- Pterodactyl panel read typo [@bvdberg01](https://github.com/bvdberg01) ([#4701](https://github.com/community-scripts/ProxmoxVE/pull/4701))
## 2025-05-24
## 2025-05-23
### 🚀 Updated Scripts
- #### 🔧 Refactor
- TYPO: Fix nexcloud to nextcloud (VM) [@Stoufiler](https://github.com/Stoufiler) ([#4670](https://github.com/community-scripts/ProxmoxVE/pull/4670))
### 🌐 Website
- #### 📝 Script Information
- Update Icons to selfhst/icons (FreePBX & Configarr) [@MickLesk](https://github.com/MickLesk) ([#4680](https://github.com/community-scripts/ProxmoxVE/pull/4680))
### 💥 Breaking Changes
- Remove rtsptoweb (deprecated) [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#4686](https://github.com/community-scripts/ProxmoxVE/pull/4686))
## 2025-05-22
### 🆕 New Scripts
- FreePBX ([#4648](https://github.com/community-scripts/ProxmoxVE/pull/4648))
- cloudflare-ddns ([#4647](https://github.com/community-scripts/ProxmoxVE/pull/4647))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- slskd: fix #4649 [@vhsdream](https://github.com/vhsdream) ([#4651](https://github.com/community-scripts/ProxmoxVE/pull/4651))
- #### ✨ New Features
- Paperless-AI: Add RAG chat [@tremor021](https://github.com/tremor021) ([#4635](https://github.com/community-scripts/ProxmoxVE/pull/4635))
### 🧰 Maintenance
- #### 📂 Github
- [gh]: Feature: Header-Generation for vm | tools | addon [@MickLesk](https://github.com/MickLesk) ([#4643](https://github.com/community-scripts/ProxmoxVE/pull/4643))
### 🌐 Website
- #### 📝 Script Information
- Commafeed: move to Documents category [@diemade](https://github.com/diemade) ([#4665](https://github.com/community-scripts/ProxmoxVE/pull/4665))
## 2025-05-21
### 🆕 New Scripts
- configarr ([#4620](https://github.com/community-scripts/ProxmoxVE/pull/4620))
- babybuddy ([#4619](https://github.com/community-scripts/ProxmoxVE/pull/4619))
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Alpine-Node-RED: Update Service File [@MickLesk](https://github.com/MickLesk) ([#4628](https://github.com/community-scripts/ProxmoxVE/pull/4628))
- RustDesk Server: Fix update for older installs [@tremor021](https://github.com/tremor021) ([#4612](https://github.com/community-scripts/ProxmoxVE/pull/4612))
- #### ✨ New Features
- Tandoor Recipes: Capture version information when installing [@jbolla](https://github.com/jbolla) ([#4633](https://github.com/community-scripts/ProxmoxVE/pull/4633))
## 2025-05-20 ## 2025-05-20
### 🚀 Updated Scripts
- [tools.func]: Update fetch_and_deploy_gh_release function [@tremor021](https://github.com/tremor021) ([#4605](https://github.com/community-scripts/ProxmoxVE/pull/4605))
- [core] New Features for Config File function [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#4601](https://github.com/community-scripts/ProxmoxVE/pull/4601))
### 🌐 Website
- #### 📝 Script Information
- Website: harmonize all Logos | use jsDelivr CDN links for icons from selfhst/icons repo [@MickLesk](https://github.com/MickLesk) ([#4603](https://github.com/community-scripts/ProxmoxVE/pull/4603))
## 2025-05-19 ## 2025-05-19
### 🆕 New Scripts ### 🆕 New Scripts

View File

@@ -20,79 +20,79 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
# Check if installation is present | -f for file, -d for folder # Check if installation is present | -f for file, -d for folder
if [[ ! -d "/opt/2fauth" ]]; then if [[ ! -d "/opt/2fauth" ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
# Crawling the new version and checking whether an update is required
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/2fauth_version.txt)" ]] || [[ ! -f /opt/2fauth_version.txt ]]; then
msg_info "Updating $APP to ${RELEASE}"
$STD apt-get update
$STD apt-get -y upgrade
# Creating Backup
msg_info "Creating Backup"
mv "/opt/2fauth" "/opt/2fauth-backup"
if ! dpkg -l | grep -q 'php8.3'; then
cp /etc/nginx/conf.d/2fauth.conf /etc/nginx/conf.d/2fauth.conf.bak
fi
msg_ok "Backup Created"
# Upgrade PHP
if ! dpkg -l | grep -q 'php8.3'; then
$STD apt-get install -y \
lsb-release \
gpg
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
$STD apt-get update
$STD apt-get install -y php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,mbstring,mysql,xml,cli,intl}
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/2fauth.conf
fi
# Execute Update
curl -fsSL -o "${RELEASE}.zip" "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip"
unzip -q "${RELEASE}.zip"
mv "2FAuth-${RELEASE//v/}/" "/opt/2fauth"
mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
cd "/opt/2fauth" || return
chown -R www-data: "/opt/2fauth"
chmod -R 755 "/opt/2fauth"
export COMPOSER_ALLOW_SUPERUSER=1
$STD composer install --no-dev --prefer-source
php artisan 2fauth:install
$STD systemctl restart nginx
# Cleaning up
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"
# Last Action
echo "${RELEASE}" >/opt/2fauth_version.txt
msg_ok "Updated $APP to ${RELEASE}"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit exit
fi
# Crawling the new version and checking whether an update is required
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ "${RELEASE}" != "$(cat /opt/2fauth_version.txt)" ]] || [[ ! -f /opt/2fauth_version.txt ]]; then
msg_info "Updating $APP to ${RELEASE}"
$STD apt-get update
$STD apt-get -y upgrade
# Creating Backup
msg_info "Creating Backup"
mv "/opt/2fauth" "/opt/2fauth-backup"
if ! dpkg -l | grep -q 'php8.3'; then
cp /etc/nginx/conf.d/2fauth.conf /etc/nginx/conf.d/2fauth.conf.bak
fi
msg_ok "Backup Created"
# Upgrade PHP
if ! dpkg -l | grep -q 'php8.3'; then
$STD apt-get install -y \
lsb-release \
gpg
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/php.list
$STD apt-get update
$STD apt-get install -y php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,mbstring,mysql,xml,cli,intl}
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/2fauth.conf
fi
# Execute Update
curl -fsSL -o "${RELEASE}.zip" "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip"
$STD unzip "${RELEASE}.zip"
mv "2FAuth-${RELEASE//v/}/" "/opt/2fauth"
mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
cd "/opt/2fauth" || return
chown -R www-data: "/opt/2fauth"
chmod -R 755 "/opt/2fauth"
export COMPOSER_ALLOW_SUPERUSER=1
$STD composer install --no-dev --prefer-source
php artisan 2fauth:install
$STD systemctl restart nginx
# Cleaning up
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"
# Last Action
echo "${RELEASE}" >/opt/2fauth_version.txt
msg_ok "Updated $APP to ${RELEASE}"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
} }
start start
@@ -102,4 +102,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}"

View File

@@ -24,7 +24,7 @@ function update_script() {
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/actualbudget ]]; then if [[ ! -f /opt/actualbudget_version.txt ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi

View File

@@ -37,7 +37,7 @@ function update_script() {
msg_info "Updating ${APP} to ${RELEASE}" msg_info "Updating ${APP} to ${RELEASE}"
mv /opt/adventurelog/ /opt/adventurelog-backup/ mv /opt/adventurelog/ /opt/adventurelog-backup/
curl -fsSL -o /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" curl -fsSL -o /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
unzip -q /opt/v${RELEASE}.zip -d /opt/ $STD unzip /opt/v${RELEASE}.zip -d /opt/
mv /opt/AdventureLog-${RELEASE} /opt/adventurelog mv /opt/AdventureLog-${RELEASE} /opt/adventurelog
mv /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env mv /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
@@ -78,4 +78,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"

View File

@@ -36,7 +36,7 @@ function update_script() {
curl -fsSL -o it-tools.zip "$DOWNLOAD_URL" curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
mkdir -p /usr/share/nginx/html mkdir -p /usr/share/nginx/html
rm -rf /usr/share/nginx/html/* rm -rf /usr/share/nginx/html/*
unzip -q it-tools.zip -d /tmp/it-tools $STD unzip it-tools.zip -d /tmp/it-tools
cp -r /tmp/it-tools/dist/* /usr/share/nginx/html cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
rm -rf /tmp/it-tools rm -rf /tmp/it-tools
rm -f it-tools.zip rm -f it-tools.zip

View File

@@ -32,10 +32,6 @@ function update_script() {
$STD npm install -g --unsafe-perm node-red $STD npm install -g --unsafe-perm node-red
msg_ok "Updated Node-RED" msg_ok "Updated Node-RED"
msg_info "Restarting Node-RED"
$STD rc-service nodered restart
msg_ok "Restarted Node-RED"
exit 0 exit 0
} }

View File

@@ -1,15 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG # Copyright (c) 2021-2025 community-scripts ORG
# Author: Slaviša Arežina (tremor021) # Author: Slaviša Arežina (tremor021) | Co-Author: Stavros (steveiliop56)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/steveiliop56/tinyauth # Source: https://github.com/steveiliop56/tinyauth
APP="Alpine-tinyauth" APP="Alpine-Tinyauth"
var_tags="${var_tags:-alpine;auth}" var_tags="${var_tags:-alpine;auth}"
var_cpu="${var_cpu:-1}" var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-256}"
var_disk="${var_disk:-3}" var_disk="${var_disk:-2}"
var_os="${var_os:-alpine}" var_os="${var_os:-alpine}"
var_version="${var_version:-3.21}" var_version="${var_version:-3.21}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
@@ -25,34 +25,23 @@ function update_script() {
exit 1 exit 1
fi fi
msg_info "Updating Alpine Packages" msg_info "Updating packages"
$STD apk -U upgrade $STD apk -U upgrade
msg_ok "Updated Alpine Packages" msg_ok "Updated packages"
msg_info "Updating tinyauth" msg_info "Updating Tinyauth"
RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [ "${RELEASE}" != "$(cat /opt/tinyauth_version.txt)" ] || [ ! -f /opt/tinyauth_version.txt ]; then if [ "${RELEASE}" != "$(cat /opt/tinyauth_version.txt)" ] || [ ! -f /opt/tinyauth_version.txt ]; then
$STD service tinyauth stop $STD service tinyauth stop
temp_file=$(mktemp) rm -f /opt/tinyauth/tinyauth
cp /opt/tinyauth/.env /opt curl -fsSL "https://github.com/steveiliop56/tinyauth/releases/download/v${RELEASE}/tinyauth-amd64" -o /opt/tinyauth/tinyauth
rm -rf /opt/tinyauth chmod +x /opt/tinyauth/tinyauth
mkdir -p /opt/tinyauth echo "${RELEASE}" > /opt/tinyauth_version.txt
curl -fsSL "https://github.com/steveiliop56/tinyauth/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file" msg_info "Restarting Tinyauth"
tar -xzf "$temp_file" -C /opt/tinyauth --strip-components=1
cd /opt/tinyauth/frontend
$STD bun install
$STD bun run build
mv dist /opt/tinyauth/internal/assets/
cd /opt/tinyauth
$STD go mod download
CGO_ENABLED=0 go build -ldflags "-s -w"
cp /opt/.env /opt/tinyauth
echo "${RELEASE}" >/opt/tinyauth_version.txt
rm -f "$temp_file"
msg_info "Restarting tinyauth"
$STD service tinyauth start $STD service tinyauth start
msg_ok "Restarted tinyauth" msg_ok "Restarted Tinyauth"
msg_ok "Updated tinyauth" msg_ok "Updated Tinyauth"
else else
msg_ok "No update required. ${APP} is already at ${RELEASE}" msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi fi

View File

@@ -9,7 +9,7 @@ APP="Alpine-Vaultwarden"
var_tags="${var_tags:-alpine;vault}" var_tags="${var_tags:-alpine;vault}"
var_cpu="${var_cpu:-1}" var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-256}" var_ram="${var_ram:-256}"
var_disk="${var_disk:-0.5}" var_disk="${var_disk:-1}"
var_os="${var_os:-alpine}" var_os="${var_os:-alpine}"
var_version="${var_version:-3.21}" var_version="${var_version:-3.21}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
@@ -66,4 +66,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${APP} should be reachable by going to the following URL. echo -e "${APP} should be reachable by going to the following URL.
${BL}http://${IP}:8000${CL} \n" ${BL}https://${IP}:8000${CL} \n"

53
ct/argus.sh Normal file
View File

@@ -0,0 +1,53 @@
#!/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://release-argus.io/
APP="Argus"
var_tags="${var_tags:-watcher}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
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/argus ]]; then
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 [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Updating $APP to ${RELEASE}"
rm -f /opt/argus/Argus
curl -fsSL "https://github.com/release-argus/Argus/releases/download/${RELEASE}/Argus-${RELEASE}.linux-amd64" -o /opt/argus/Argus
chmod +x /opt/argus/Argus
systemctl restart argus
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to ${RELEASE}"
else
msg_ok "${APP} is already up to date (${RELEASE})"
fi
}
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}:8080${CL}"

View File

@@ -1,91 +0,0 @@
#!/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: remz1337
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://goauthentik.io/
APP="Authentik"
var_tags="${var_tags:-identity-provider}"
var_disk="${var_disk:-12}"
var_cpu="${var_cpu:-6}"
var_ram="${var_ram:-10240}"
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/authentik-server.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}')
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
NODE_VERSION="22"
PG_VERSION="16"
setup_uv
install_postgresql
install_node_and_modules
install_go
msg_info "Stopping ${APP}"
systemctl stop authentik-server
systemctl stop authentik-worker
msg_ok "Stopped ${APP}"
msg_info "Building ${APP} website"
mkdir -p /opt/authentik
curl -fsSL "${RELEASE}" -o "authentik.tar.gz"
tar -xzf authentik.tar.gz -C /opt/authentik --strip-components 1 --overwrite
rm -rf authentik.tar.gz
cd /opt/authentik/website
$STD npm install
$STD npm run build-bundled
cd /opt/authentik/web
$STD npm install
$STD npm run build
msg_ok "Built ${APP} website"
msg_info "Building ${APP} server"
cd /opt/authentik
go mod download
go build -o /go/authentik ./cmd/server
go build -o /opt/authentik/authentik-server /opt/authentik/cmd/server/
msg_ok "Built ${APP} server"
msg_info "Building Authentik"
cd /opt/authentik
$STD uv sync --frozen --no-install-project --no-dev
uv run python -m lifecycle.migrate
ln -s /opt/authentik/.venv/bin/gunicorn /usr/local/bin/gunicorn
ln -s /opt/authentik/.venv/bin/celery /usr/local/bin/celery
msg_ok "Authentik built"
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Starting ${APP}"
systemctl start authentik-server
systemctl start authentik-worker
msg_ok "Started ${APP}"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}
start
build_container
description
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}:9000/if/flow/initial-setup/${CL}"

86
ct/babybuddy.sh Normal file
View File

@@ -0,0 +1,86 @@
#!/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://github.com/babybuddy/babybuddy
APP="Baby Buddy"
var_tags="${var_tags:-baby}"
var_disk="${var_disk:-5}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}"
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/babybuddy ]]; then
msg_error "No ${APP} Installation Found!"
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 [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/babybuddy_version.txt)" ]]; then
setup_uv
msg_info "Stopping Services"
systemctl stop nginx
systemctl stop uwsgi
msg_ok "Services Stopped"
msg_info "Cleaning old files"
cp babybuddy/settings/production.py /tmp/production.py.bak
find . -mindepth 1 -maxdepth 1 ! -name '.venv' -exec rm -rf {} +
msg_ok "Cleaned old files"
msg_info "Updating ${APP} to v${RELEASE}"
temp_file=$(mktemp)
curl -fsSL "https://github.com/babybuddy/babybuddy/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
cd /opt/babybuddy
tar zxf "$temp_file" --strip-components=1 -C /opt/babybuddy
mv /tmp/production.py.bak babybuddy/settings/production.py
cd /opt/babybuddy
source .venv/bin/activate
$STD uv pip install -r requirements.txt
$STD python manage.py migrate
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Fixing permissions"
chown -R www-data:www-data /opt/data
chmod 640 /opt/data/db.sqlite3
chmod 750 /opt/data
msg_ok "Permissions fixed"
msg_info "Starting Services"
systemctl start uwsgi
systemctl start nginx
msg_ok "Services Started"
msg_info "Cleaning up"
rm -f "$temp_file"
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
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}${CL}"

66
ct/backrest.sh Normal file
View File

@@ -0,0 +1,66 @@
#!/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: ksad (enirys31)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://garethgeorge.github.io/backrest/
APP="Backrest"
var_tags="${var_tags:-backup}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-8}"
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/backrest ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/garethgeorge/backrest/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping ${APP}"
systemctl stop backrest
msg_ok "Stopped ${APP}"
msg_info "Updating ${APP} to ${RELEASE}"
temp_file=$(mktemp)
rm -f /opt/backrest/bin/backrest
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
tar xzf $temp_file -C /opt/backrest/bin
chmod +x /opt/backrest/bin/backrest
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to ${RELEASE}"
msg_info "Starting ${APP}"
systemctl start backrest
msg_ok "Started ${APP}"
msg_info "Cleaning up"
rm -f "$temp_file"
msg_ok "Cleaned up"
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}:9898${CL}"

View File

@@ -37,7 +37,7 @@ function update_script() {
cd /opt cd /opt
curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip") curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip")
mv /opt/baikal /opt/baikal-backup mv /opt/baikal /opt/baikal-backup
unzip -o -q "baikal-${RELEASE}.zip" $STD unzip -o "baikal-${RELEASE}.zip"
cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/ cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/
cp -r /opt/baikal-backup/Specific/ /opt/baikal/ cp -r /opt/baikal-backup/Specific/ /opt/baikal/
chown -R www-data:www-data /opt/baikal/ chown -R www-data:www-data /opt/baikal/

View File

@@ -38,7 +38,7 @@ function update_script() {
cd /opt cd /opt
mv /opt/barcodebuddy/ /opt/barcodebuddy-backup mv /opt/barcodebuddy/ /opt/barcodebuddy-backup
curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip")
unzip -q "v${RELEASE}.zip" $STD unzip "v${RELEASE}.zip"
mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy
cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data
chown -R www-data:www-data /opt/barcodebuddy/data chown -R www-data:www-data /opt/barcodebuddy/data

View File

@@ -36,7 +36,7 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
mv /opt/bookstack /opt/bookstack-backup mv /opt/bookstack /opt/bookstack-backup
curl -fsSL "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -o "/opt/BookStack-${RELEASE}.zip" curl -fsSL "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -o "/opt/BookStack-${RELEASE}.zip"
unzip -q "/opt/BookStack-${RELEASE}.zip" -d /opt $STD unzip "/opt/BookStack-${RELEASE}.zip" -d /opt
mv "/opt/BookStack-${RELEASE}" /opt/bookstack mv "/opt/BookStack-${RELEASE}" /opt/bookstack
cp /opt/bookstack-backup/.env /opt/bookstack/.env cp /opt/bookstack-backup/.env /opt/bookstack/.env
[[ -d /opt/bookstack-backup/public/uploads ]] && cp -a /opt/bookstack-backup/public/uploads/. /opt/bookstack/public/uploads/ [[ -d /opt/bookstack-backup/public/uploads ]] && cp -a /opt/bookstack-backup/public/uploads/. /opt/bookstack/public/uploads/

View File

@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="BunkerWeb" APP="BunkerWeb"
var_tags="${var_tags:-webserver}" var_tags="${var_tags:-webserver}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-8192}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-12}"
@@ -55,4 +55,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/setup${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/setup${CL}"

37
ct/cloudflare-ddns.sh Normal file
View File

@@ -0,0 +1,37 @@
#!/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: edoardop13
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/favonia/cloudflare-ddns
APP="Cloudflare-DDNS"
var_tags="${var_tags:-network}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
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/cloudflare-ddns.service ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "There is no update function for ${APP}."
exit
}
start
build_container
description
msg_ok "Completed Successfully!\n"

View File

@@ -42,7 +42,7 @@ function update_script() {
msg_info "Updating ${APP} to ${RELEASE}" msg_info "Updating ${APP} to ${RELEASE}"
curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -o $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip") curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -o $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip")
unzip -q commafeed-"${RELEASE}"-h2-jvm.zip $STD unzip commafeed-"${RELEASE}"-h2-jvm.zip
rsync -a --exclude 'data/' commafeed-"${RELEASE}"-h2/ /opt/commafeed/ rsync -a --exclude 'data/' commafeed-"${RELEASE}"-h2/ /opt/commafeed/
rm -rf commafeed-"${RELEASE}"-h2 commafeed-"${RELEASE}"-h2-jvm.zip rm -rf commafeed-"${RELEASE}"-h2 commafeed-"${RELEASE}"-h2-jvm.zip
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt

66
ct/configarr.sh Normal file
View File

@@ -0,0 +1,66 @@
#!/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: finkerle
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/raydak-labs/configarr
APP="Configarr"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
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/configarr ]]; then
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 /opt/configarr_version.txt)" ]] || [[ ! -f /opt/configarr_version.txt ]]; then
msg_info "Stopping $APP"
systemctl stop configarr-task.timer
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
mkdir -p /opt/backup/
mv /opt/configarr/{config.yml,secrets.yml,.env} "/opt/backup/"
rm -rf /opt/configarr
fetch_and_deploy_gh_release "raydak-labs/configarr"
mv /opt/backup/* /opt/configarr/
cd /opt/configarr
$STD pnpm install
$STD pnpm run build
msg_ok "Updated $APP to v${RELEASE}"
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}"
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 (no web-ui):${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8989${CL}"

View File

@@ -46,7 +46,7 @@ function update_script() {
msg_info "Updating Crafty-Controller to v${RELEASE}" msg_info "Updating Crafty-Controller to v${RELEASE}"
curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -o $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip") curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -o $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip")
unzip -q crafty-4-v${RELEASE}.zip $STD unzip crafty-4-v${RELEASE}.zip
cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/ cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/
rm -rf crafty-4-v${RELEASE} rm -rf crafty-4-v${RELEASE}
cd /opt/crafty-controller/crafty/crafty-4 cd /opt/crafty-controller/crafty/crafty-4

View File

@@ -38,7 +38,7 @@ function update_script() {
rm -rf /opt/documenso rm -rf /opt/documenso
cd /opt cd /opt
curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
unzip -q v${RELEASE}.zip $STD unzip v${RELEASE}.zip
mv documenso-${RELEASE} /opt/documenso mv documenso-${RELEASE} /opt/documenso
cd /opt/documenso cd /opt/documenso
mv /opt/.env /opt/documenso/.env mv /opt/.env /opt/documenso/.env

View File

@@ -9,7 +9,7 @@ APP="Excalidraw"
TAGS="diagrams" TAGS="diagrams"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}" var_ram="${var_ram:-3072}"
var_disk="${var_disk:-6}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
@@ -20,46 +20,46 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/excalidraw ]]; then if [[ ! -d /opt/excalidraw ]]; then
msg_error "No ${APP} Installation Found!" 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 /opt/excalidraw_version.txt)" ]] || [[ ! -f /opt/excalidraw_version.txt ]]; then
msg_info "Stopping $APP"
systemctl stop excalidraw
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
cd /tmp
temp_file=$(mktemp)
curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar xzf $temp_file
rm -rf /opt/excalidraw
mv excalidraw-${RELEASE} /opt/excalidraw
cd /opt/excalidraw
$STD yarn
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP"
systemctl start excalidraw
msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -rf $temp_file
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/excalidraw_version.txt
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit 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 /opt/excalidraw_version.txt)" ]] || [[ ! -f /opt/excalidraw_version.txt ]]; then
msg_info "Stopping $APP"
systemctl stop excalidraw
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
cd /tmp
temp_file=$(mktemp)
curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar xzf $temp_file
rm -rf /opt/excalidraw
mv excalidraw-${RELEASE} /opt/excalidraw
cd /opt/excalidraw
$STD yarn
msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP"
systemctl start excalidraw
msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -rf $temp_file
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/excalidraw_version.txt
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
} }
start start
@@ -69,4 +69,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"

View File

@@ -47,7 +47,7 @@ function update_script() {
msg_info "Updating $APP to latest version" msg_info "Updating $APP to latest version"
temp_file=$(mktemp) temp_file=$(mktemp)
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file" curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
unzip -oq -d /opt/fileflows "$temp_file" $STD unzip -o -d /opt/fileflows "$temp_file"
msg_ok "Updated $APP to latest version" msg_ok "Updated $APP to latest version"
msg_info "Starting $APP" msg_info "Starting $APP"

View File

@@ -39,8 +39,8 @@ function update_script() {
cp /opt/fluid-calendar/.env /opt/fluid.env cp /opt/fluid-calendar/.env /opt/fluid.env
rm -rf /opt/fluid-calendar rm -rf /opt/fluid-calendar
tmp_file=$(mktemp) tmp_file=$(mktemp)
curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file" curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
unzip -q $tmp_file $STD unzip $tmp_file
mv ${APP}-${RELEASE}/ /opt/fluid-calendar mv ${APP}-${RELEASE}/ /opt/fluid-calendar
mv /opt/fluid.env /opt/fluid-calendar/.env mv /opt/fluid.env /opt/fluid-calendar/.env
cd /opt/fluid-calendar cd /opt/fluid-calendar
@@ -74,4 +74,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"

View File

@@ -1,15 +1,15 @@
#!/usr/bin/env bash #!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck # Copyright (c) 2021-2025 community-scripts ORG
# Author: tteck (tteckster) # Author: Arian Nasr (arian-nasr)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/deepch/RTSPtoWeb # Source: https://www.freepbx.org/
APP="RTSPtoWeb" APP="FreePBX"
var_tags="${var_tags:-media}" var_tags="pbx;voip;telephony"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
@@ -23,14 +23,12 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /var ]]; then
if [[ ! -f /lib/systemd/system/freepbx.service ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating $APP LXC" msg_error "Currently we don't provide an update function for this ${APP}."
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC"
exit exit
} }
@@ -41,4 +39,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8083${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"

View File

@@ -37,7 +37,7 @@ function update_script() {
msg_info "Updating ${APP} to ${RELEASE}" msg_info "Updating ${APP} to ${RELEASE}"
cd /opt/gotify cd /opt/gotify
curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -o $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip") curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -o $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip")
unzip -oq gotify-linux-amd64.zip $STD unzip -o gotify-linux-amd64.zip
rm -rf gotify-linux-amd64.zip rm -rf gotify-linux-amd64.zip
chmod +x gotify-linux-amd64 chmod +x gotify-linux-amd64
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt

View File

@@ -39,7 +39,7 @@ function update_script() {
rm -rf grist_bak rm -rf grist_bak
mv grist grist_bak mv grist grist_bak
curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip")
unzip -q v$RELEASE.zip $STD unzip v$RELEASE.zip
mv grist-core-${RELEASE} grist mv grist-core-${RELEASE} grist
mkdir -p grist/docs mkdir -p grist/docs

View File

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

6
ct/headers/argus Normal file
View File

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

View File

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

6
ct/headers/babybuddy Normal file
View File

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

6
ct/headers/backrest Normal file
View File

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

View File

@@ -0,0 +1,6 @@
________ ________ ____ ____ _ _______
/ ____/ /___ __ ______/ / __/ /___ _________ / __ \/ __ \/ | / / ___/
/ / / / __ \/ / / / __ / /_/ / __ `/ ___/ _ \______/ / / / / / / |/ /\__ \
/ /___/ / /_/ / /_/ / /_/ / __/ / /_/ / / / __/_____/ /_/ / /_/ / /| /___/ /
\____/_/\____/\__,_/\__,_/_/ /_/\__,_/_/ \___/ /_____/_____/_/ |_//____/

6
ct/headers/configarr Normal file
View File

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

6
ct/headers/freepbx Normal file
View File

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

6
ct/headers/kasm Normal file
View File

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

6
ct/headers/oauth2-proxy Normal file
View File

@@ -0,0 +1,6 @@
__ __ ___
____ ____ ___ __/ /_/ /_ |__ \ ____ _________ _ ____ __
/ __ \/ __ `/ / / / __/ __ \__/ /_____/ __ \/ ___/ __ \| |/_/ / / /
/ /_/ / /_/ / /_/ / /_/ / / / __/_____/ /_/ / / / /_/ /> </ /_/ /
\____/\__,_/\__,_/\__/_/ /_/____/ / .___/_/ \____/_/|_|\__, /
/_/ /____/

6
ct/headers/pulse Normal file
View File

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

View File

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

View File

@@ -1,6 +0,0 @@
__ __ __ __
/ / / /___ ___ / /_ ________ / /
/ / / / __ `__ \/ __ \/ ___/ _ \/ /
/ /_/ / / / / / / /_/ / / / __/ /
\____/_/ /_/ /_/_.___/_/ \___/_/

View File

@@ -47,7 +47,7 @@ function update_script() {
fi fi
rm -rf /opt/hoarder rm -rf /opt/hoarder
curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip" curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
unzip -q v"${RELEASE}".zip $STD unzip v"${RELEASE}".zip
mv karakeep-"${RELEASE}" /opt/hoarder mv karakeep-"${RELEASE}" /opt/hoarder
cd /opt/hoarder/apps/web cd /opt/hoarder/apps/web
$STD pnpm install --frozen-lockfile $STD pnpm install --frozen-lockfile

View File

@@ -104,7 +104,6 @@ function update_script() {
if [ "$UPD" == "2" ]; then if [ "$UPD" == "2" ]; then
msg_info "Installing Home Assistant Community Store (HACS)" msg_info "Installing Home Assistant Community Store (HACS)"
$STD apt update $STD apt update
$STD apt install -y unzip
cd /root/.homeassistant cd /root/.homeassistant
$STD bash <(curl -fsSL https://get.hacs.xyz) $STD bash <(curl -fsSL https://get.hacs.xyz)
msg_ok "Installed Home Assistant Community Store (HACS)" msg_ok "Installed Home Assistant Community Store (HACS)"

View File

@@ -62,7 +62,6 @@ function update_script() {
if [ "$UPD" == "3" ]; then if [ "$UPD" == "3" ]; then
msg_info "Installing Home Assistant Community Store (HACS)" msg_info "Installing Home Assistant Community Store (HACS)"
$STD apt update $STD apt update
$STD apt install unzip
cd /var/lib/docker/volumes/hass_config/_data cd /var/lib/docker/volumes/hass_config/_data
$STD bash <(curl -fsSL https://get.hacs.xyz) $STD bash <(curl -fsSL https://get.hacs.xyz)
msg_ok "Installed Home Assistant Community Store (HACS)" msg_ok "Installed Home Assistant Community Store (HACS)"

View File

@@ -35,8 +35,8 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
cd /opt cd /opt
curl -fsSL "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb" -o $(basename "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb") curl -fsSL "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u2_amd64.deb" -o $(basename "https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u2_amd64.deb")
$STD apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y $STD apt-get install "./inspircd_${RELEASE}.deb12u2_amd64.deb" -y
echo "${RELEASE}" >"/opt/${APP}_version.txt" echo "${RELEASE}" >"/opt/${APP}_version.txt"
msg_ok "Updated ${APP} to v${RELEASE}" msg_ok "Updated ${APP} to v${RELEASE}"
@@ -45,7 +45,7 @@ function update_script() {
msg_ok "Started Service" msg_ok "Started Service"
msg_info "Cleaning up" msg_info "Cleaning up"
rm -rf /opt/inspircd_${RELEASE}.deb12u1_amd64.deb rm -rf /opt/inspircd_${RELEASE}.deb12u2_amd64.deb
msg_ok "Cleaned" msg_ok "Cleaned"
msg_ok "Updated Successfully" msg_ok "Updated Successfully"
else else

View File

@@ -50,7 +50,7 @@ function update_script() {
fi fi
rm -rf /opt/karakeep rm -rf /opt/karakeep
curl -fsSL "https://github.com/karakeep-app/karakeep/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip" curl -fsSL "https://github.com/karakeep-app/karakeep/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
unzip -q "v${RELEASE}.zip" $STD unzip "v${RELEASE}.zip"
mv karakeep-"${RELEASE}" /opt/karakeep mv karakeep-"${RELEASE}" /opt/karakeep
cd /opt/karakeep/apps/web cd /opt/karakeep/apps/web
$STD pnpm install --frozen-lockfile $STD pnpm install --frozen-lockfile

View File

@@ -1,18 +1,20 @@
#!/usr/bin/env bash #!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck # Copyright (c) 2021-2025 community-scripts ORG
# Author: tteck (tteckster) # Author: Omar Minaya
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://umbrel.com/ # Source: https://www.kasmweb.com/docs/latest/index.html
APP="Umbrel" APP="Kasm"
var_tags="${var_tags:-os}" var_tags="${var_tags:-os}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-4192}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-30}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
var_fuse="${var_fuse:-yes}"
var_tun="${var_tun:-yes}"
header_info "$APP" header_info "$APP"
variables variables
@@ -20,14 +22,18 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
msg_info "Updating ${APP} LXC" if [[ ! -d /var ]]; then
$STD apt-get update msg_error "No ${APP} Installation Found!"
$STD apt-get -y upgrade
msg_ok "Updated ${APP} LXC"
exit exit
fi
msg_info "Updating $APP LXC"
$STD apt-get update
$STD apt-get -y upgrade
msg_ok "Updated $APP LXC"
exit
} }
start start
@@ -35,6 +41,6 @@ build_container
description description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized! (manual reboot is required!)${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" echo -e "${TAB}${GATEWAY}${BGN}https://${IP}${CL}"

View File

@@ -64,7 +64,7 @@ function update_script() {
trap "echo Unable to download release file for version ${RELEASE}; try again later" ERR trap "echo Unable to download release file for version ${RELEASE}; try again later" ERR
set -e set -e
curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip")
unzip -q "${RELEASE}".zip $STD unzip "${RELEASE}".zip
set +e set +e
trap - ERR trap - ERR
rm -rf /opt/kimai rm -rf /opt/kimai

View File

@@ -37,7 +37,7 @@ function update_script() {
cd /opt cd /opt
mv /opt/koillection/ /opt/koillection-backup mv /opt/koillection/ /opt/koillection-backup
curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip")
unzip -q "${RELEASE}.zip" $STD unzip "${RELEASE}.zip"
mv "/opt/koillection-${RELEASE}" /opt/koillection mv "/opt/koillection-${RELEASE}" /opt/koillection
cd /opt/koillection cd /opt/koillection
cp -r /opt/koillection-backup/.env.local /opt/koillection cp -r /opt/koillection-backup/.env.local /opt/koillection

View File

@@ -1,17 +1,17 @@
#!/usr/bin/env bash #!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 tteck # Copyright (c) 2021-2025 community-scripts ORG
# Author: tteck (tteckster) # Author: MickLesk (CanbiZ)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://linkwarden.app/ # Source: https://linkwarden.app/
APP="Linkwarden" APP="Linkwarden"
var_tags="${var_tags:-bookmark}" var_tags="${var_tags:-bookmark}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-12}" var_disk="${var_disk:-12}"
var_os="${var_os:-ubuntu}" var_os="${var_os:-ubuntu}"
var_version="${var_version:-22.04}" var_version="${var_version:-24.04}"
header_info "$APP" header_info "$APP"
variables variables
@@ -27,48 +27,36 @@ function update_script() {
exit exit
fi fi
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') 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/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then if [[ "${RELEASE}" != "$(cat /opt/linkwarden_version.txt)" ]] || [[ ! -f /opt/linkwarden_version.txt ]]; then
NODE_VERSION="22" NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
NODE_MODULE="yarn@latest"
install_node_and_modules
msg_info "Stopping ${APP}" msg_info "Stopping ${APP}"
systemctl stop linkwarden systemctl stop linkwarden
msg_ok "Stopped ${APP}" msg_ok "Stopped ${APP}"
msg_info "Updating Rust" RUST_CRATES="monolith" install_rust_and_crates
$STD apt-get install -y build-essential
$STD curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source $HOME/.cargo/env
echo 'export PATH=/usr/local/cargo/bin:$PATH' >>/etc/profile
source /etc/profile
$STD cargo install monolith
msg_ok "Updated Rust"
msg_info "Updating ${APP} to ${RELEASE}" msg_info "Updating ${APP} to ${RELEASE}"
cd /opt
mv /opt/linkwarden/.env /opt/.env mv /opt/linkwarden/.env /opt/.env
rm -rf /opt/linkwarden rm -rf /opt/linkwarden
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') fetch_and_deploy_gh_release "linkwarden/linkwarden"
curl -fsSL "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" -o ${RELEASE}.zip
unzip -q ${RELEASE}.zip
mv linkwarden-${RELEASE:1} /opt/linkwarden
cd /opt/linkwarden cd /opt/linkwarden
$STD yarn $STD yarn
$STD npx playwright install-deps $STD npx playwright install-deps
$STD yarn playwright install $STD yarn playwright install
cp /opt/.env /opt/linkwarden/.env mv /opt/.env /opt/linkwarden/.env
$STD yarn prisma:generate $STD yarn prisma:generate
$STD yarn web:build $STD yarn web:build
$STD yarn prisma:deploy $STD yarn prisma:deploy
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to ${RELEASE}" msg_ok "Updated ${APP} to ${RELEASE}"
msg_info "Starting ${APP}" msg_info "Starting ${APP}"
systemctl start linkwarden systemctl start linkwarden
msg_ok "Started ${APP}" msg_ok "Started ${APP}"
msg_info "Cleaning up" msg_info "Cleaning up"
rm -rf /opt/${RELEASE}.zip rm -rf ~/.cargo/registry ~/.cargo/git ~/.cargo/.package-cache ~/.rustup
rm -rf /root/.cache/yarn
rm -rf /opt/linkwarden/.next/cache
msg_ok "Cleaned" msg_ok "Cleaned"
msg_ok "Updated Successfully" msg_ok "Updated Successfully"
else else

View File

@@ -23,7 +23,7 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -f /etc/systemd/system/lldap.service ]]; then if [[ ! -f /lib/systemd/system/lldap.service ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
@@ -41,4 +41,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:17170${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:17170${CL}"

View File

@@ -50,7 +50,7 @@ function update_script() {
[[ -e /opt/lubelogger/wwwroot/temp ]] && cp -r /opt/lubelogger/wwwroot/temp /tmp/lubeloggerData/data/ [[ -e /opt/lubelogger/wwwroot/temp ]] && cp -r /opt/lubelogger/wwwroot/temp /tmp/lubeloggerData/data/
[[ -e /opt/lubelogger/log ]] && cp -r /opt/lubelogger/log /tmp/lubeloggerData/ [[ -e /opt/lubelogger/log ]] && cp -r /opt/lubelogger/log /tmp/lubeloggerData/
rm -rf /opt/lubelogger rm -rf /opt/lubelogger
unzip -qq LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip -d lubelogger $STD unzip LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip -d lubelogger
chmod 700 /opt/lubelogger/CarCareTracker chmod 700 /opt/lubelogger/CarCareTracker
cp -rf /tmp/lubeloggerData/* /opt/lubelogger/ cp -rf /tmp/lubeloggerData/* /opt/lubelogger/
echo "${RELEASE}" >"/opt/${APP}_version.txt" echo "${RELEASE}" >"/opt/${APP}_version.txt"

View File

@@ -69,7 +69,7 @@ function update_script() {
rm -rf /opt/meilisearch-ui rm -rf /opt/meilisearch-ui
mkdir -p /opt/meilisearch-ui mkdir -p /opt/meilisearch-ui
curl -fsSL "https://github.com/riccox/meilisearch-ui/archive/refs/tags/${RELEASE_UI}.zip" -o $tmp_file curl -fsSL "https://github.com/riccox/meilisearch-ui/archive/refs/tags/${RELEASE_UI}.zip" -o $tmp_file
unzip -q "$tmp_file" -d "$tmp_dir" $STD unzip "$tmp_file" -d "$tmp_dir"
mv "$tmp_dir"/*/* /opt/meilisearch-ui/ mv "$tmp_dir"/*/* /opt/meilisearch-ui/
cd /opt/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 sed -i 's|const hash = execSync("git rev-parse HEAD").toString().trim();|const hash = "unknown";|' /opt/meilisearch-ui/vite.config.ts

View File

@@ -39,7 +39,7 @@ function update_script() {
rm -rf myspeed_bak rm -rf myspeed_bak
mv myspeed myspeed_bak mv myspeed myspeed_bak
curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -o $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip") curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -o $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip")
unzip -q MySpeed-$RELEASE.zip -d myspeed $STD unzip MySpeed-$RELEASE.zip -d myspeed
cd myspeed cd myspeed
$STD npm install $STD npm install
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt

View File

@@ -39,7 +39,7 @@ function update_script() {
mv /opt/netbox/ /opt/netbox-backup mv /opt/netbox/ /opt/netbox-backup
cd /opt cd /opt
curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip")
unzip -q "v${RELEASE}.zip" $STD unzip "v${RELEASE}.zip"
mv /opt/netbox-${RELEASE}/ /opt/netbox/ mv /opt/netbox-${RELEASE}/ /opt/netbox/
cp -r /opt/netbox-backup/netbox/netbox/configuration.py /opt/netbox/netbox/netbox/ cp -r /opt/netbox-backup/netbox/netbox/configuration.py /opt/netbox/netbox/netbox/

64
ct/oauth2-proxy.sh Normal file
View File

@@ -0,0 +1,64 @@
#!/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: bvdberg01
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/oauth2-proxy/oauth2-proxy/
APP="oauth2-proxy"
var_tags="${var_tags:-os}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}"
var_disk="${var_disk:-3}"
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/oauth2-proxy ]]; then
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 /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping ${APP} services"
systemctl stop oauth2-proxy
msg_ok "Stopped ${APP}"
msg_info "Updating $APP to ${RELEASE}"
rm -f /opt/oauth2-proxy/oauth2-proxy
curl -fsSL "https://github.com/oauth2-proxy/oauth2-proxy/releases/download/v${RELEASE}/oauth2-proxy-v${RELEASE}.linux-amd64.tar.gz" -o /opt/oauth2-proxy.tar.gz
tar -xzf /opt/oauth2-proxy.tar.gz
mv /opt/oauth2-proxy-v${RELEASE}.linux-amd64/oauth2-proxy /opt/oauth2-proxy
systemctl start oauth2-proxy
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP} to ${RELEASE}"
msg_info "Cleaning up"
rm -f "/opt/oauth2-proxy.tar.gz"
rm -rf "/opt/oauth2-proxy-v${RELEASE}.linux-amd64"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"
else
msg_ok "${APP} is already up to date (${RELEASE})"
fi
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Now you can modify /opt/oauth2-proxy/config.toml with your needed config.${CL}"

View File

@@ -9,7 +9,7 @@ APP="Paperless-AI"
var_tags="${var_tags:-ai;document}" var_tags="${var_tags:-ai;document}"
var_cpu="${var_cpu:-2}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-12}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
@@ -27,6 +27,9 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
if ! dpkg -s python3-pip >/dev/null 2>&1; then
$STD apt-get install -y python3-pip
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/clusterzx/paperless-ai/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -fsSL https://api.github.com/repos/clusterzx/paperless-ai/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 [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
msg_info "Stopping $APP" msg_info "Stopping $APP"
@@ -37,11 +40,30 @@ function update_script() {
cd /opt cd /opt
mv /opt/paperless-ai /opt/paperless-ai_bak mv /opt/paperless-ai /opt/paperless-ai_bak
curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip")
unzip -q v${RELEASE}.zip $STD unzip v${RELEASE}.zip
mv paperless-ai-${RELEASE} /opt/paperless-ai mv paperless-ai-${RELEASE} /opt/paperless-ai
mkdir -p /opt/paperless-ai/data mkdir -p /opt/paperless-ai/data
cp -a /opt/paperless-ai_bak/data/. /opt/paperless-ai/data/ cp -a /opt/paperless-ai_bak/data/. /opt/paperless-ai/data/
cd /opt/paperless-ai cd /opt/paperless-ai
if [[ ! -f /etc/systemd/system/paperless-rag.service ]]; then
cat <<EOF >/etc/systemd/system/paperless-rag.service
[Unit]
Description=PaperlessAI-RAG Service
After=network.target
[Service]
WorkingDirectory=/opt/paperless-ai
ExecStart=/usr/bin/python3 main.py --host 0.0.0.0 --port 8000 --initialize
Restart=always
[Install]
WantedBy=multi-user.target
EOF
echo "RAG_SERVICE_URL=http://localhost:8000" >>/opt/paperless-ai/data/.env
echo "RAG_SERVICE_ENABLED=true" >>/opt/paperless-ai/data/.env
fi
$STD pip install --no-cache-dir -r requirements.txt
mkdir -p data/chromadb
$STD npm install $STD npm install
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"

View File

@@ -37,7 +37,7 @@ function update_script() {
cd /opt cd /opt
mv /opt/partdb/ /opt/partdb-backup mv /opt/partdb/ /opt/partdb-backup
curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip")
unzip -q "v${RELEASE}.zip" $STD unzip "v${RELEASE}.zip"
mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb
cd /opt/partdb/ cd /opt/partdb/

View File

@@ -40,7 +40,6 @@ function update_script() {
php8.4 \ php8.4 \
php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm} \ php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm} \
libapache2-mod-php8.4 libapache2-mod-php8.4
msg_ok "Migrated PHP $CURRENT_PHP to 8.4" msg_ok "Migrated PHP $CURRENT_PHP to 8.4"
fi fi
@@ -53,10 +52,13 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
cp -r /opt/pelican-panel/.env /opt/ cp -r /opt/pelican-panel/.env /opt/
SQLITE_INSTALL=$(ls /opt/pelican-panel/database/*.sqlite 1> /dev/null 2>&1 && echo "true" || echo "false")
$SQLITE_INSTALL && cp -r /opt/pelican-panel/database/*.sqlite /opt/
rm -rf * .* rm -rf * .*
curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -o $(basename "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz") curl -fsSL "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz" -o $(basename "https://github.com/pelican-dev/panel/releases/download/v${RELEASE}/panel.tar.gz")
tar -xzf "panel.tar.gz" tar -xzf "panel.tar.gz"
mv /opt/.env /opt/pelican-panel/ mv /opt/.env /opt/pelican-panel/
$SQLITE_INSTALL && mv /opt/*.sqlite /opt/pelican-panel/database/
$STD composer install --no-dev --optimize-autoloader --no-interaction $STD composer install --no-dev --optimize-autoloader --no-interaction
$STD php artisan p:environment:setup $STD php artisan p:environment:setup
$STD php artisan view:clear $STD php artisan view:clear

View File

@@ -19,20 +19,20 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/Petio ]]; then if [[ ! -d /opt/Petio ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating $APP"
systemctl stop petio.service
curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip
unzip petio-latest.zip -d /opt/Petio
systemctl start petio.service
msg_ok "Updated $APP"
exit exit
fi
msg_info "Updating $APP"
systemctl stop petio.service
curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip
$STD unzip petio-latest.zip -d /opt/Petio
systemctl start petio.service
msg_ok "Updated $APP"
exit
} }
start start

View File

@@ -39,7 +39,7 @@ function update_script() {
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
cd /opt cd /opt
curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip")
unzip -q ${RELEASE}.zip $STD unzip ${RELEASE}.zip
rm -rf "/opt/${APP}" rm -rf "/opt/${APP}"
mv ${APP}-${RELEASE:1} /opt/${APP} mv ${APP}-${RELEASE:1} /opt/${APP}
cd /opt/Pf2eTools cd /opt/Pf2eTools

View File

@@ -37,7 +37,7 @@ function update_script() {
cd /opt cd /opt
mv /opt/phpipam/ /opt/phpipam-backup mv /opt/phpipam/ /opt/phpipam-backup
curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -o $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip") curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -o $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip")
unzip -q "phpipam-v${RELEASE}.zip" $STD unzip "phpipam-v${RELEASE}.zip"
cp /opt/phpipam-backup/config.php /opt/phpipam cp /opt/phpipam-backup/config.php /opt/phpipam
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"

View File

@@ -38,7 +38,7 @@ function update_script() {
msg_info "Updating Pingvin Share to v${RELEASE}" msg_info "Updating Pingvin Share to v${RELEASE}"
cd /opt cd /opt
curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip")
unzip -q v${RELEASE}.zip $STD unzip v${RELEASE}.zip
cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share
cd /opt/pingvin-share cd /opt/pingvin-share
cd backend cd backend

View File

@@ -20,63 +20,62 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/pocket-id ]]; then if [[ ! -d /opt/pocket-id ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/pocket-id/pocket-id/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
msg_info "Updating $APP"
msg_info "Stopping $APP"
systemctl stop pocketid-backend.service
systemctl stop pocketid-frontend.service
systemctl stop caddy.service
msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
cd /opt
cp -r /opt/pocket-id/backend/data /opt/data
cp /opt/pocket-id/backend/.env /opt/backend.env
cp /opt/pocket-id/frontend/.env /opt/frontend.env
rm -r /opt/pocket-id
curl -fsSL "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/pocket-id/pocket-id/archive/refs/tags/v${RELEASE}.zip")
unzip -q v${RELEASE}.zip
mv pocket-id-${RELEASE} /opt/pocket-id
mv /opt/data /opt/pocket-id/backend/data
mv /opt/backend.env /opt/pocket-id/backend/.env
mv /opt/frontend.env /opt/pocket-id/frontend/.env
cd /opt/pocket-id/backend/cmd
go build -o ../pocket-id-backend
cd ../../frontend
npm install
npm run build
msg_ok "Updated $APP to ${RELEASE}"
msg_info "Starting $APP"
systemctl start pocketid-backend.service
systemctl start pocketid-frontend.service
systemctl start caddy.service
sleep 2
msg_ok "Started $APP"
# Cleaning up
msg_info "Cleaning Up"
rm -f /opt/v${RELEASE}.zip
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/pocket-id/pocket-id/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 [[ "$(cat /opt/${APP}_version.txt)" < "1.0.0" ]]; then
msg_info "Migrating ${APP} to v${RELEASE}"
systemctl -q disable --now pocketid-backend pocketid-frontend caddy
mv /etc/caddy/Caddyfile ~/Caddyfile.bak
$STD apt remove --purge caddy nodejs -y
$STD apt autoremove -y
rm /etc/apt/{keyrings/nodesource.gpg,sources.list.d/nodesource.list}
rm -r /usr/local/go
cp -r /opt/pocket-id/backend/data /opt/data
cp /opt/pocket-id/backend/.env /opt/env
sed -i -e 's/PUBLIC_//g' \
-e '/^SQLITE_DB_PATH/d' \
-e '/^POSTGRES/s/^/# /' \
-e '/^UPLOAD_PATH/d' \
-e 's/8080/1411/' /opt/env
rm -r /opt/pocket-id
rm /etc/systemd/system/pocketid-frontend.service
BACKEND="/etc/systemd/system/pocketid-backend.service"
sed -i -e 's/Backend/Service/' \
-e 's/\/backend\|-backend//g' "$BACKEND"
mv "$BACKEND" ${BACKEND//-backend/}
systemctl daemon-reload
systemctl -q enable pocketid
mkdir /opt/pocket-id
mv /opt/data /opt/pocket-id
msg_ok "Migration complete. The reverse proxy port has been changed to 1411."
else
msg_info "Updating $APP to v${RELEASE}"
systemctl stop pocketid
cp /opt/pocket-id/.env /opt/env
fi
curl -fsSL "https://github.com/pocket-id/pocket-id/releases/download/v${RELEASE}/pocket-id-linux-amd64" -o /opt/pocket-id/pocket-id
chmod u+x /opt/pocket-id/pocket-id
mv /opt/env /opt/pocket-id/.env
msg_info "Starting $APP"
systemctl start pocketid
msg_ok "Started $APP"
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Update Successful"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
} }
start start
@@ -85,6 +84,6 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Configure your reverse proxy to point to:${BGN} ${IP}:80${CL}" echo -e "${INFO}${YW} Configure your reverse proxy to point to:${BGN} ${IP}:1411${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}https://{PUBLIC_URL}/login/setup${CL}" echo -e "${TAB}${GATEWAY}${BGN}https://{PUBLIC_URL}/login/setup${CL}"

View File

@@ -58,7 +58,6 @@ function update_script() {
if [ "$UPD" == "2" ]; then if [ "$UPD" == "2" ]; then
msg_info "Installing Home Assistant Community Store (HACS)" msg_info "Installing Home Assistant Community Store (HACS)"
$STD apt update $STD apt update
$STD apt install unzip
cd /var/lib/containers/storage/volumes/hass_config/_data cd /var/lib/containers/storage/volumes/hass_config/_data
$STD bash <(curl -fsSL https://get.hacs.xyz) $STD bash <(curl -fsSL https://get.hacs.xyz)
msg_ok "Installed Home Assistant Community Store (HACS)" msg_ok "Installed Home Assistant Community Store (HACS)"
@@ -110,4 +109,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8123${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8123${CL}"

View File

@@ -33,7 +33,7 @@ function update_script() {
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt
cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak
curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip")
unzip -q ${RELEASE}.zip $STD unzip ${RELEASE}.zip
rm -rf /opt/privatebin/* rm -rf /opt/privatebin/*
mv PrivateBin-${RELEASE}/* /opt/privatebin/ mv PrivateBin-${RELEASE}/* /opt/privatebin/
mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php

View File

@@ -36,7 +36,7 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
cd /opt cd /opt
curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -o $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip") curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -o $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip")
unzip -o -q "projectsend-r${RELEASE}.zip" -d projectsend $STD unzip -o "projectsend-r${RELEASE}.zip" -d projectsend
chown -R www-data:www-data /opt/projectsend chown -R www-data:www-data /opt/projectsend
chmod -R 775 /opt/projectsend chmod -R 775 /opt/projectsend
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt

73
ct/pulse.sh Normal file
View File

@@ -0,0 +1,73 @@
#!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: rcourtman
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/rcourtman/Pulse
APP="Pulse"
var_tags="${var_tags:-monitoring,proxmox}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
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/pulse-proxmox ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/rcourtman/Pulse/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping ${APP}"
systemctl stop pulse-monitor
msg_ok "Stopped ${APP}"
msg_info "Updating Pulse"
if [[ -f /opt/pulse-proxmox/.env ]]; then
cp /opt/pulse-proxmox/.env /tmp/.env.backup.pulse
fi
temp_file=$(mktemp)
mkdir -p /opt/pulse-proxmox
rm -rf /opt/pulse-proxmox/*
curl -fsSL "https://github.com/rcourtman/Pulse/releases/download/v${RELEASE}/pulse-v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf "$temp_file" --strip-components=1 -C /opt/pulse-proxmox
if [[ -f /tmp/.env.backup.pulse ]]; then
mv /tmp/.env.backup.pulse /opt/pulse-proxmox/.env
fi
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated Pulse to ${RELEASE}"
msg_info "Setting permissions for /opt/pulse-proxmox..."
chown -R pulse:pulse "/opt/pulse-proxmox"
find "/opt/pulse-proxmox" -type d -exec chmod 755 {} \;
find "/opt/pulse-proxmox" -type f -exec chmod 644 {} \;
chmod 600 /opt/pulse-proxmox/.env
msg_ok "Set permissions."
msg_info "Starting ${APP}"
systemctl start pulse-monitor
msg_ok "Started ${APP}"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}."
fi
}
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}(:your_port)${CL}"

View File

@@ -20,38 +20,38 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/rdtc/ ]]; then if [[ ! -d /opt/rdtc/ ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Stopping ${APP}"
systemctl stop rdtc
msg_ok "Stopped ${APP}"
msg_info "Updating ${APP}"
if dpkg-query -W dotnet-sdk-8.0 >/dev/null 2>&1; then
$STD apt-get remove --purge -y dotnet-sdk-8.0
$STD apt-get install -y dotnet-sdk-9.0
fi
mkdir -p rdtc-backup
cp -R /opt/rdtc/appsettings.json rdtc-backup/
curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -o $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip")
unzip -oqq RealDebridClient.zip -d /opt/rdtc
cp -R rdtc-backup/appsettings.json /opt/rdtc/
msg_ok "Updated ${APP}"
msg_info "Starting ${APP}"
systemctl start rdtc
msg_ok "Started ${APP}"
msg_info "Cleaning Up"
rm -rf rdtc-backup RealDebridClient.zip
msg_ok "Cleaned"
msg_ok "Updated Successfully"
exit exit
fi
msg_info "Stopping ${APP}"
systemctl stop rdtc
msg_ok "Stopped ${APP}"
msg_info "Updating ${APP}"
if dpkg-query -W dotnet-sdk-8.0 >/dev/null 2>&1; then
$STD apt-get remove --purge -y dotnet-sdk-8.0
$STD apt-get install -y dotnet-sdk-9.0
fi
mkdir -p rdtc-backup
cp -R /opt/rdtc/appsettings.json rdtc-backup/
curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -o $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip")
$STD unzip -o RealDebridClient.zip -d /opt/rdtc
cp -R rdtc-backup/appsettings.json /opt/rdtc/
msg_ok "Updated ${APP}"
msg_info "Starting ${APP}"
systemctl start rdtc
msg_ok "Started ${APP}"
msg_info "Cleaning Up"
rm -rf rdtc-backup RealDebridClient.zip
msg_ok "Cleaned"
msg_ok "Updated Successfully"
exit
} }
start start

View File

@@ -39,7 +39,7 @@ function update_script() {
res_tmp=$(mktemp) res_tmp=$(mktemp)
rm -rf /opt/${APP} rm -rf /opt/${APP}
curl -fsSL "https://github.com/AmruthPillai/Reactive-Resume/archive/refs/tags/v${RELEASE}.zip" -O $res_tmp curl -fsSL "https://github.com/AmruthPillai/Reactive-Resume/archive/refs/tags/v${RELEASE}.zip" -O $res_tmp
unzip -q $res_tmp $STD unzip $res_tmp
mv ${APP}-${RELEASE}/ /opt/${APP} mv ${APP}-${RELEASE}/ /opt/${APP}
cd /opt/${APP} cd /opt/${APP}
export PUPPETEER_SKIP_DOWNLOAD="true" export PUPPETEER_SKIP_DOWNLOAD="true"
@@ -66,7 +66,7 @@ function update_script() {
brwsr_tmp=$(mktemp) brwsr_tmp=$(mktemp)
TAG=$(curl -fsSL https://api.github.com/repos/browserless/browserless/tags?per_page=1 | grep "name" | awk '{print substr($2, 3, length($2)-4) }') TAG=$(curl -fsSL https://api.github.com/repos/browserless/browserless/tags?per_page=1 | grep "name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL https://github.com/browserless/browserless/archive/refs/tags/v${TAG}.zip -O $brwsr_tmp curl -fsSL https://github.com/browserless/browserless/archive/refs/tags/v${TAG}.zip -O $brwsr_tmp
unzip -q $brwsr_tmp $STD unzip $brwsr_tmp
mv browserless-${TAG}/ /opt/browserless mv browserless-${TAG}/ /opt/browserless
cd /opt/browserless cd /opt/browserless
$STD npm install $STD npm install

View File

@@ -38,7 +38,9 @@ function update_script() {
msg_info "Stopping $APP" msg_info "Stopping $APP"
systemctl stop rustdesk-hbbr systemctl stop rustdesk-hbbr
systemctl stop rustdesk-hbbs systemctl stop rustdesk-hbbs
systemctl stop rustdesk-api if [[ -f /lib/systemd/system/rustdesk-api.service ]]; then
systemctl stop rustdesk-api
fi
msg_ok "Stopped $APP" msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}" msg_info "Updating $APP to v${RELEASE}"

View File

@@ -27,6 +27,7 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
sed -i 's/^\([[:space:]]*limiter:\)[[:space:]]*true/\1 false/' /etc/searxng/settings.yml
if cd /usr/local/searxng/searxng-src && git pull | grep -q 'Already up to date'; then if cd /usr/local/searxng/searxng-src && git pull | grep -q 'Already up to date'; then
msg_ok "There is currently no update available." msg_ok "There is currently no update available."
fi fi
@@ -39,4 +40,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8888${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8888${CL}"

View File

@@ -34,7 +34,7 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -o $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip") curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -o $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip")
unzip -q silverbullet-server-linux-x86_64.zip $STD unzip silverbullet-server-linux-x86_64.zip
mv silverbullet /opt/silverbullet/bin/ mv silverbullet /opt/silverbullet/bin/
chmod +x /opt/silverbullet/bin/silverbullet chmod +x /opt/silverbullet/bin/silverbullet
echo "${RELEASE}" >/opt/silverbullet/${APP}_version.txt echo "${RELEASE}" >/opt/silverbullet/${APP}_version.txt

View File

@@ -38,7 +38,7 @@ function update_script() {
msg_info "Updating $APP to v${RELEASE}" msg_info "Updating $APP to v${RELEASE}"
tmp_file=$(mktemp) tmp_file=$(mktemp)
curl -fsSL "https://github.com/slskd/slskd/releases/download/${RELEASE}/slskd-${RELEASE}-linux-x64.zip" -o $tmp_file curl -fsSL "https://github.com/slskd/slskd/releases/download/${RELEASE}/slskd-${RELEASE}-linux-x64.zip" -o $tmp_file
unzip -q -oj $tmp_file slskd -d /opt/${APP} $STD unzip -oj $tmp_file slskd -d /opt/${APP}
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"
@@ -55,7 +55,7 @@ function update_script() {
cd /tmp cd /tmp
rm -rf /opt/soularr rm -rf /opt/soularr
curl -fsSL -o main.zip https://github.com/mrusse/soularr/archive/refs/heads/main.zip curl -fsSL -o main.zip https://github.com/mrusse/soularr/archive/refs/heads/main.zip
unzip -q main.zip $STD unzip main.zip
mv soularr-main /opt/soularr mv soularr-main /opt/soularr
cd /opt/soularr cd /opt/soularr
$STD pip install -r requirements.txt $STD pip install -r requirements.txt

View File

@@ -39,7 +39,7 @@ function update_script() {
rm -rf spoolman_bak rm -rf spoolman_bak
mv spoolman spoolman_bak mv spoolman spoolman_bak
curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip" -o $(basename "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip") curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip" -o $(basename "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip")
unzip -q spoolman.zip -d spoolman $STD unzip spoolman.zip -d spoolman
cd spoolman cd spoolman
$STD pip3 install -r requirements.txt $STD pip3 install -r requirements.txt
curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env" curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env"

View File

@@ -37,7 +37,7 @@ function update_script() {
cd /opt cd /opt
mv /opt/teddycloud /opt/teddycloud_bak mv /opt/teddycloud /opt/teddycloud_bak
curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -o $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip") curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -o $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip")
unzip -q -d /opt/teddycloud teddycloud.amd64.release_v${VERSION}.zip $STD unzip -d /opt/teddycloud teddycloud.amd64.release_v${VERSION}.zip
cp -R /opt/teddycloud_bak/certs /opt/teddycloud_bak/config /opt/teddycloud_bak/data /opt/teddycloud cp -R /opt/teddycloud_bak/certs /opt/teddycloud_bak/config /opt/teddycloud_bak/data /opt/teddycloud
echo "${VERSION}" >"/opt/${APP}_version.txt" echo "${VERSION}" >"/opt/${APP}_version.txt"
msg_ok "Updated ${APP} to v${VERSION}" msg_ok "Updated ${APP} to v${VERSION}"

View File

@@ -50,7 +50,7 @@ function update_script() {
cp /opt/tianji/src/server/.env /opt/.env cp /opt/tianji/src/server/.env /opt/.env
mv /opt/tianji /opt/tianji_bak mv /opt/tianji /opt/tianji_bak
curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip")
unzip -q v${RELEASE}.zip $STD unzip v${RELEASE}.zip
mv tianji-${RELEASE} /opt/tianji mv tianji-${RELEASE} /opt/tianji
cd tianji cd tianji
export NODE_OPTIONS="--max_old_space_size=4096" export NODE_OPTIONS="--max_old_space_size=4096"

View File

@@ -35,7 +35,7 @@ function update_script() {
mkdir -p /opt/logos mkdir -p /opt/logos
mv /opt/wallos/db/wallos.db /opt/wallos.db mv /opt/wallos/db/wallos.db /opt/wallos.db
mv /opt/wallos/images/uploads/logos /opt/logos/ mv /opt/wallos/images/uploads/logos /opt/logos/
unzip -q v${RELEASE}.zip $STD unzip v${RELEASE}.zip
rm -rf /opt/wallos rm -rf /opt/wallos
mv Wallos-${RELEASE} /opt/wallos mv Wallos-${RELEASE} /opt/wallos
rm -rf /opt/wallos/db/wallos.empty.db rm -rf /opt/wallos/db/wallos.empty.db

View File

@@ -20,28 +20,28 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/wastebin ]]; then if [[ ! -d /opt/wastebin ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(curl -fsSL https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
# Dirty-Fix 03/2025 for missing APP_version.txt on old installations, set to pre-latest release # Dirty-Fix 03/2025 for missing APP_version.txt on old installations, set to pre-latest release
msg_info "Running Migration" msg_info "Running Migration"
if [[ ! -f /opt/${APP}_version.txt ]]; then if [[ ! -f /opt/${APP}_version.txt ]]; then
echo "2.7.1" >/opt/${APP}_version.txt echo "2.7.1" >/opt/${APP}_version.txt
mkdir -p /opt/wastebin-data mkdir -p /opt/wastebin-data
cat <<EOF >/opt/wastebin-data/.env cat <<EOF >/opt/wastebin-data/.env
WASTEBIN_DATABASE_PATH=/opt/wastebin-data/wastebin.db WASTEBIN_DATABASE_PATH=/opt/wastebin-data/wastebin.db
WASTEBIN_CACHE_SIZE=1024 WASTEBIN_CACHE_SIZE=1024
WASTEBIN_HTTP_TIMEOUT=30 WASTEBIN_HTTP_TIMEOUT=30
WASTEBIN_SIGNING_KEY=$(openssl rand -hex 32) WASTEBIN_SIGNING_KEY=$(openssl rand -hex 32)
WASTEBIN_PASTE_EXPIRATIONS=0,600,3600=d,86400,604800,2419200,29030400 WASTEBIN_PASTE_EXPIRATIONS=0,600,3600=d,86400,604800,2419200,29030400
EOF EOF
systemctl stop wastebin systemctl stop wastebin
cat <<EOF >/etc/systemd/system/wastebin.service cat <<EOF >/etc/systemd/system/wastebin.service
[Unit] [Unit]
Description=Wastebin Service Description=Wastebin Service
After=network.target After=network.target
@@ -54,35 +54,35 @@ EnvironmentFile=/opt/wastebin-data/.env
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target
EOF EOF
systemctl daemon-reload systemctl daemon-reload
fi fi
msg_ok "Migration Done" msg_ok "Migration Done"
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Wastebin" msg_info "Stopping Wastebin"
systemctl stop wastebin systemctl stop wastebin
msg_ok "Wastebin Stopped" msg_ok "Wastebin Stopped"
msg_info "Updating Wastebin" msg_info "Updating Wastebin"
temp_file=$(mktemp) temp_file=$(mktemp)
curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file" curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file"
unzip -o -q $temp_file $STD unzip -o $temp_file
cp -f wastebin /opt/wastebin/ cp -f wastebin /opt/wastebin/
chmod +x /opt/wastebin/wastebin chmod +x /opt/wastebin/wastebin
echo "${RELEASE}" >/opt/${APP}_version.txt echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated Wastebin" msg_ok "Updated Wastebin"
msg_info "Starting Wastebin" msg_info "Starting Wastebin"
systemctl start wastebin systemctl start wastebin
msg_ok "Started Wastebin" msg_ok "Started Wastebin"
msg_info "Cleaning Up" msg_info "Cleaning Up"
rm -f $temp_file rm -f $temp_file
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
msg_ok "Updated Successfully" msg_ok "Updated Successfully"
else else
msg_ok "No update required. ${APP} is already at v${RELEASE}" msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi fi
exit exit
} }
start start
@@ -92,4 +92,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8088${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8088${CL}"

View File

@@ -41,7 +41,7 @@ function update_script() {
cp /opt/wavelog/assets/js/sections/custom.js /opt/custom.js cp /opt/wavelog/assets/js/sections/custom.js /opt/custom.js
fi fi
curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip")
unzip -q ${RELEASE}.zip $STD unzip ${RELEASE}.zip
rm -rf /opt/wavelog rm -rf /opt/wavelog
mv wavelog-${RELEASE}/ /opt/wavelog mv wavelog-${RELEASE}/ /opt/wavelog
rm -rf /opt/wavelog/install rm -rf /opt/wavelog/install

View File

@@ -47,7 +47,7 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
cd /opt cd /opt
curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip") curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip")
unzip -q ${RELEASE}.zip $STD unzip ${RELEASE}.zip
rm -rf /opt/zigbee2mqtt rm -rf /opt/zigbee2mqtt
mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt
rm -rf /opt/zigbee2mqtt/data rm -rf /opt/zigbee2mqtt/data

View File

@@ -43,7 +43,7 @@ function update_script() {
mkdir -p /opt/zipline-upload mkdir -p /opt/zipline-upload
cp -R /opt/zipline/upload/* /opt/zipline-upload/ cp -R /opt/zipline/upload/* /opt/zipline-upload/
curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip") curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip")
unzip -q v"${RELEASE}".zip $STD unzip v"${RELEASE}".zip
rm -R /opt/zipline rm -R /opt/zipline
mv zipline-"${RELEASE}" /opt/zipline mv zipline-"${RELEASE}" /opt/zipline
cd /opt/zipline cd /opt/zipline

View File

@@ -37,7 +37,7 @@ function update_script() {
rm -rf /opt/zwave-js-ui/* rm -rf /opt/zwave-js-ui/*
cd /opt/zwave-js-ui cd /opt/zwave-js-ui
curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -o $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip") curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -o $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip")
unzip -q zwave-js-ui-${RELEASE}-linux.zip $STD unzip zwave-js-ui-${RELEASE}-linux.zip
msg_ok "Updated Z-Wave JS UI" msg_ok "Updated Z-Wave JS UI"
msg_info "Starting Service" msg_info "Starting Service"

View File

@@ -1,44 +1,44 @@
{ {
"name": "2FAuth", "name": "2FAuth",
"slug": "2fauth", "slug": "2fauth",
"categories": [ "categories": [
6 6
], ],
"date_created": "2024-12-20", "date_created": "2024-12-20",
"type": "ct", "type": "ct",
"updateable": true, "updateable": true,
"privileged": false, "privileged": false,
"interface_port": 80, "interface_port": 80,
"documentation": null, "documentation": null,
"website": "https://docs.2fauth.app/", "website": "https://docs.2fauth.app/",
"logo": "https://raw.githubusercontent.com/Bubka/2FAuth/refs/heads/master/public/logo.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/2fauth.webp",
"config_path": "cat /opt/2fauth/.env", "config_path": "cat /opt/2fauth/.env",
"description": "2FAuth is a web based self-hosted alternative to One Time Passcode (OTP) generators like Google Authenticator, designed for both mobile and desktop. It aims to ease you perform your 2FA authentication steps whatever the device you handle, with a clean and suitable interface.", "description": "2FAuth is a web based self-hosted alternative to One Time Passcode (OTP) generators like Google Authenticator, designed for both mobile and desktop. It aims to ease you perform your 2FA authentication steps whatever the device you handle, with a clean and suitable interface.",
"install_methods": [ "install_methods": [
{ {
"type": "default", "type": "default",
"script": "ct/2fauth.sh", "script": "ct/2fauth.sh",
"resources": { "resources": {
"cpu": 1, "cpu": 1,
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "12" "version": "12"
}
} }
], }
"default_credentials": { ],
"username": null, "default_credentials": {
"password": null "username": null,
"password": null
},
"notes": [
{
"text": "Database credentials: `cat ~/2FAuth.creds`",
"type": "info"
}, },
"notes": [ {
{ "text": "The very first account created is automatically set up as an administrator account.",
"text": "Database credentials: `cat ~/2FAuth.creds`", "type": "info"
"type": "info" }
}, ]
{ }
"text": "The very first account created is automatically set up as an administrator account.",
"type": "info"
}
]
}

View File

@@ -12,7 +12,7 @@
"documentation": "https://github.com/community-scripts/ProxmoxVE/discussions/807", "documentation": "https://github.com/community-scripts/ProxmoxVE/discussions/807",
"website": "https://actualbudget.org/", "website": "https://actualbudget.org/",
"config_path": "/opt/actualbudget-data/config.json", "config_path": "/opt/actualbudget-data/config.json",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/actual-budget.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/actual-budget.webp",
"description": "Actual Budget is a super fast and privacy-focused app for managing your finances. At its heart is the well proven and much loved Envelope Budgeting methodology.", "description": "Actual Budget is a super fast and privacy-focused app for managing your finances. At its heart is the well proven and much loved Envelope Budgeting methodology.",
"install_methods": [ "install_methods": [
{ {

View File

@@ -1,7 +1,9 @@
{ {
"name": "Proxmox VE LXC IP-Tag", "name": "Proxmox VE LXC IP-Tag",
"slug": "add-lxc-iptag", "slug": "add-lxc-iptag",
"categories": [1], "categories": [
1
],
"date_created": "2024-12-16", "date_created": "2024-12-16",
"type": "pve", "type": "pve",
"updateable": false, "updateable": false,
@@ -9,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": null, "documentation": null,
"website": null, "website": null,
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/proxmox.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
"config_path": "/opt/lxc-iptag/iptag.conf", "config_path": "/opt/lxc-iptag/iptag.conf",
"description": "This script automatically adds IP address as tags to LXC containers using a Systemd service. The service also updates the tags if a LXC IP address is changed.", "description": "This script automatically adds IP address as tags to LXC containers using a Systemd service. The service also updates the tags if a LXC IP address is changed.",
"install_methods": [ "install_methods": [
@@ -40,4 +42,3 @@
} }
] ]
} }

View File

@@ -11,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": "https://docs.netbird.io/", "documentation": "https://docs.netbird.io/",
"website": "https://netbird.io/", "website": "https://netbird.io/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/netbird.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/netbird.webp",
"config_path": "", "config_path": "",
"description": "NetBird combines a configuration-free peer-to-peer private network and a centralized access control system in a single platform, making it easy to create secure private networks for your organization or home.", "description": "NetBird combines a configuration-free peer-to-peer private network and a centralized access control system in a single platform, making it easy to create secure private networks for your organization or home.",
"install_methods": [ "install_methods": [

View File

@@ -11,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": "https://tailscale.com/kb/1017/install", "documentation": "https://tailscale.com/kb/1017/install",
"website": "https://tailscale.com/", "website": "https://tailscale.com/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/tailscale.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tailscale.webp",
"config_path": "", "config_path": "",
"description": "Tailscale is a software-defined networking solution that enables secure communication between devices over the internet. It creates a virtual private network (VPN) that enables devices to communicate with each other as if they were on the same local network. Tailscale works even when the devices are separated by firewalls or subnets, and provides secure and encrypted communication between devices. With Tailscale, users can connect devices, servers, computers, and cloud instances to create a secure network, making it easier to manage and control access to resources. Tailscale is designed to be easy to set up and use, providing a streamlined solution for secure communication between devices over the internet.", "description": "Tailscale is a software-defined networking solution that enables secure communication between devices over the internet. It creates a virtual private network (VPN) that enables devices to communicate with each other as if they were on the same local network. Tailscale works even when the devices are separated by firewalls or subnets, and provides secure and encrypted communication between devices. With Tailscale, users can connect devices, servers, computers, and cloud instances to create a secure network, making it easier to manage and control access to resources. Tailscale is designed to be easy to set up and use, providing a streamlined solution for secure communication between devices over the internet.",
"install_methods": [ "install_methods": [

View File

@@ -11,7 +11,7 @@
"interface_port": 3000, "interface_port": 3000,
"documentation": "https://github.com/AdguardTeam/AdGuardHome/wiki/Getting-Started", "documentation": "https://github.com/AdguardTeam/AdGuardHome/wiki/Getting-Started",
"website": "https://adguard.com/en/adguard-home/overview.html", "website": "https://adguard.com/en/adguard-home/overview.html",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/adguard-home.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/adguard-home.webp",
"config_path": "/opt/AdGuardHome/AdGuardHome.yaml", "config_path": "/opt/AdGuardHome/AdGuardHome.yaml",
"description": "AdGuard Home is an open-source, self-hosted network-wide ad blocker. It blocks advertisements, trackers, phishing and malware websites, and provides protection against online threats. AdGuard Home is a DNS-based solution, which means it blocks ads and malicious content at the network level, before it even reaches your device. It runs on your home network and can be easily configured and managed through a web-based interface. It provides detailed statistics and logs, allowing you to see which websites are being blocked, and why. AdGuard Home is designed to be fast, lightweight, and easy to use, making it an ideal solution for home users who want to block ads, protect their privacy, and improve the speed and security of their online experience.", "description": "AdGuard Home is an open-source, self-hosted network-wide ad blocker. It blocks advertisements, trackers, phishing and malware websites, and provides protection against online threats. AdGuard Home is a DNS-based solution, which means it blocks ads and malicious content at the network level, before it even reaches your device. It runs on your home network and can be easily configured and managed through a web-based interface. It provides detailed statistics and logs, allowing you to see which websites are being blocked, and why. AdGuard Home is designed to be fast, lightweight, and easy to use, making it an ideal solution for home users who want to block ads, protect their privacy, and improve the speed and security of their online experience.",
"install_methods": [ "install_methods": [
@@ -49,4 +49,3 @@
} }
] ]
} }

View File

@@ -11,7 +11,7 @@
"interface_port": 3000, "interface_port": 3000,
"documentation": "https://adventurelog.app/docs/intro/adventurelog_overview.html", "documentation": "https://adventurelog.app/docs/intro/adventurelog_overview.html",
"website": "https://adventurelog.app/", "website": "https://adventurelog.app/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/adventurelog.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/adventurelog.webp",
"config_path": "/opt/adventurelog/backend/server/.env", "config_path": "/opt/adventurelog/backend/server/.env",
"description": "Adventure Log is an app designed to track outdoor activities and personal achievements, allowing users to log their adventures with photos, notes, and location data. It focuses on enhancing outdoor experiences by preserving memories and sharing them with others.", "description": "Adventure Log is an app designed to track outdoor activities and personal achievements, allowing users to log their adventures with photos, notes, and location data. It focuses on enhancing outdoor experiences by preserving memories and sharing them with others.",
"install_methods": [ "install_methods": [

View File

@@ -11,7 +11,7 @@
"interface_port": 8090, "interface_port": 8090,
"documentation": "https://www.ispyconnect.com/docs/agent/about", "documentation": "https://www.ispyconnect.com/docs/agent/about",
"website": "https://www.ispyconnect.com/", "website": "https://www.ispyconnect.com/",
"logo": "https://ispycontent.azureedge.net/img/ispy2.png?raw=true", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/agent-dvr.webp",
"config_path": "/opt/agentdvr/agent/Media/XML/config.json", "config_path": "/opt/agentdvr/agent/Media/XML/config.json",
"description": "AgentDVR a new video surveillance solution for the Internet Of Things.", "description": "AgentDVR a new video surveillance solution for the Internet Of Things.",
"install_methods": [ "install_methods": [

View File

@@ -1,7 +1,9 @@
{ {
"name": "All Templates", "name": "All Templates",
"slug": "all-templates", "slug": "all-templates",
"categories": [1], "categories": [
1
],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "addon", "type": "addon",
"updateable": false, "updateable": false,
@@ -9,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": null, "documentation": null,
"website": null, "website": null,
"logo": "https://raw.githubusercontent.com/loganmarchione/homelab-svg-assets/main/assets/proxmox.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/proxmox.webp",
"config_path": "", "config_path": "",
"description": "A script designed to allow for the creation of one of the many free LXC templates. Great for creating system LXCs.\r\nThe script creates a `*.creds` file in the Proxmox root directory with the password of the newly created LXC.\r\nPlease take note that if you plan to use this script for creating TurnKey LXCs, you'll need to modify the hostname after creation.", "description": "A script designed to allow for the creation of one of the many free LXC templates. Great for creating system LXCs.\r\nThe script creates a `*.creds` file in the Proxmox root directory with the password of the newly created LXC.\r\nPlease take note that if you plan to use this script for creating TurnKey LXCs, you'll need to modify the hostname after creation.",
"install_methods": [ "install_methods": [
@@ -36,4 +38,3 @@
} }
] ]
} }

View File

@@ -11,7 +11,7 @@
"interface_port": 80, "interface_port": 80,
"documentation": null, "documentation": null,
"website": "https://it-tools.tech/", "website": "https://it-tools.tech/",
"logo": "https://raw.githubusercontent.com/CorentinTh/it-tools/08d977b8cdb7ffb76adfa18ba6eb4b73795ec814/public/safari-pinned-tab.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/it-tools.webp",
"config_path": "", "config_path": "",
"description": "IT-Tools is a web-based suite of utilities designed to streamline and simplify various IT tasks, providing tools for developers and system administrators to manage their workflows efficiently.", "description": "IT-Tools is a web-based suite of utilities designed to streamline and simplify various IT tasks, providing tools for developers and system administrators to manage their workflows efficiently.",
"install_methods": [ "install_methods": [

View File

@@ -1,5 +1,5 @@
{ {
"name": "Alpine-tinyauth", "name": "Alpine-Tinyauth",
"slug": "alpine-tinyauth", "slug": "alpine-tinyauth",
"categories": [ "categories": [
6 6
@@ -9,11 +9,11 @@
"updateable": true, "updateable": true,
"privileged": false, "privileged": false,
"interface_port": 3000, "interface_port": 3000,
"documentation": "https://tinyauth.app/docs/getting-started.html", "documentation": "https://tinyauth.app",
"website": "https://tinyauth.app/",
"logo": "https://raw.githubusercontent.com/steveiliop56/tinyauth/refs/heads/main/frontend/public/android-chrome-192x192.png",
"config_path": "/opt/tinyauth/.env", "config_path": "/opt/tinyauth/.env",
"description": "Tinyauth is a simple authentication middleware that adds simple username/password login or OAuth with Google, Github and any generic provider to all of your docker apps. It is designed for traefik but it can be extended to work with all reverse proxies like caddy and nginx.", "website": "https://tinyauth.app",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tinyauth.webp",
"description": "Tinyauth is a simple authentication middleware that adds simple username/password login or OAuth with Google, Github and any generic provider to all of your docker apps.",
"install_methods": [ "install_methods": [
{ {
"type": "default", "type": "default",
@@ -21,7 +21,7 @@
"resources": { "resources": {
"cpu": 1, "cpu": 1,
"ram": 256, "ram": 256,
"hdd": 3, "hdd": 2,
"os": "alpine", "os": "alpine",
"version": "3.21" "version": "3.21"
} }
@@ -32,7 +32,7 @@
"resources": { "resources": {
"cpu": 1, "cpu": 1,
"ram": 256, "ram": 256,
"hdd": 3, "hdd": 2,
"os": "alpine", "os": "alpine",
"version": "3.21" "version": "3.21"
} }
@@ -44,8 +44,8 @@
}, },
"notes": [ "notes": [
{ {
"type": "info", "text": "The default credentials are located in `/opt/tinyauth/credentials.txt`.",
"text": "`cat ~/tinyauth.creds` to view login credentials" "type": "info"
} }
] ]
} }

View File

@@ -11,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": null, "documentation": null,
"website": "https://www.alpinelinux.org/", "website": "https://www.alpinelinux.org/",
"logo": "https://raw.githubusercontent.com/loganmarchione/homelab-svg-assets/main/assets/alpinelinux.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/alpine-linux.webp",
"config_path": "", "config_path": "",
"description": "A security-oriented, lightweight Linux distribution based on musl and BusyBox.\r\nBy default, the root password is set to alpine. If you choose to use advanced settings, you will need to define a password, autologin is currently unavailable.", "description": "A security-oriented, lightweight Linux distribution based on musl and BusyBox.\r\nBy default, the root password is set to alpine. If you choose to use advanced settings, you will need to define a password, autologin is currently unavailable.",
"install_methods": [ "install_methods": [
@@ -25,17 +25,6 @@
"os": "alpine", "os": "alpine",
"version": "3.21" "version": "3.21"
} }
},
{
"type": "alpine",
"script": "ct/alpine.sh",
"resources": {
"cpu": 1,
"ram": 512,
"hdd": 0.5,
"os": "alpine",
"version": "3.21"
}
} }
], ],
"default_credentials": { "default_credentials": {

View File

@@ -11,7 +11,7 @@
"interface_port": null, "interface_port": null,
"documentation": "https://cassandra.apache.org/doc/latest/", "documentation": "https://cassandra.apache.org/doc/latest/",
"website": "https://cassandra.apache.org/", "website": "https://cassandra.apache.org/",
"logo": "https://raw.githubusercontent.com/loganmarchione/homelab-svg-assets/main/assets/apachecassandra.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/apache-cassandra.webp",
"config_path": "/etc/cassandra/cassandra.yaml", "config_path": "/etc/cassandra/cassandra.yaml",
"description": "Apache-Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance.", "description": "Apache-Cassandra is an open source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance.",
"install_methods": [ "install_methods": [

View File

@@ -11,7 +11,7 @@
"interface_port": 5984, "interface_port": 5984,
"documentation": "https://docs.couchdb.org/en/stable/", "documentation": "https://docs.couchdb.org/en/stable/",
"website": "https://couchdb.apache.org/", "website": "https://couchdb.apache.org/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/couchdb.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/couchdb.webp",
"config_path": "etc/default.ini", "config_path": "etc/default.ini",
"description": "Apache-CouchDB Seamless multi-master sync, that scales from Big Data to Mobile, with an Intuitive HTTP/JSON API and designed for Reliability.", "description": "Apache-CouchDB Seamless multi-master sync, that scales from Big Data to Mobile, with an Intuitive HTTP/JSON API and designed for Reliability.",
"install_methods": [ "install_methods": [

View File

@@ -2,7 +2,7 @@
"name": "Apache Guacamole", "name": "Apache Guacamole",
"slug": "apache-guacamole", "slug": "apache-guacamole",
"categories": [ "categories": [
0 0
], ],
"date_created": "2024-12-19", "date_created": "2024-12-19",
"type": "ct", "type": "ct",
@@ -11,7 +11,7 @@
"interface_port": 8080, "interface_port": 8080,
"documentation": null, "documentation": null,
"website": "https://guacamole.apache.org/", "website": "https://guacamole.apache.org/",
"logo": "https://guacamole.apache.org/images/logos/guac-tricolor-logo.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/apache-guacamole.webp",
"config_path": "/etc/guacamole/guacd.conf", "config_path": "/etc/guacamole/guacd.conf",
"description": "Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.", "description": "Apache Guacamole is a clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH.",
"install_methods": [ "install_methods": [
@@ -33,4 +33,3 @@
}, },
"notes": [] "notes": []
} }

View File

@@ -11,7 +11,7 @@
"interface_port": 9998, "interface_port": 9998,
"documentation": "https://cwiki.apache.org/confluence/display/tika", "documentation": "https://cwiki.apache.org/confluence/display/tika",
"website": "https://tika.apache.org/", "website": "https://tika.apache.org/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/apache-tika.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/apache-tika.webp",
"config_path": "/opt/apache-tika/tika-config.xml", "config_path": "/opt/apache-tika/tika-config.xml",
"description": "The Apache Tika™ toolkit detects and extracts metadata and text from over a thousand different file types (such as PPT, XLS, and PDF). All of these file types can be parsed through a single interface, making Tika useful for search engine indexing, content analysis, translation, and much more.", "description": "The Apache Tika™ toolkit detects and extracts metadata and text from over a thousand different file types (such as PPT, XLS, and PDF). All of these file types can be parsed through a single interface, making Tika useful for search engine indexing, content analysis, translation, and much more.",
"install_methods": [ "install_methods": [

View File

@@ -11,7 +11,7 @@
"interface_port": 8080, "interface_port": 8080,
"documentation": "https://cwiki.apache.org/confluence/display/TOMCAT", "documentation": "https://cwiki.apache.org/confluence/display/TOMCAT",
"website": "https://tomcat.apache.org/", "website": "https://tomcat.apache.org/",
"logo": "https://upload.wikimedia.org/wikipedia/commons/f/fe/Apache_Tomcat_logo.svg", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/apache-tomcat.webp",
"config_path": "", "config_path": "",
"description": "Apache Tomcat is an open-source application server that runs Java Servlets and JavaServer Pages (JSP). It allows developers to deploy and manage Java web applications by handling HTTP requests and serving dynamic content. Tomcat is widely used for lightweight web applications and supports various Java EE features like WebSockets and JNDI.", "description": "Apache Tomcat is an open-source application server that runs Java Servlets and JavaServer Pages (JSP). It allows developers to deploy and manage Java web applications by handling HTTP requests and serving dynamic content. Tomcat is widely used for lightweight web applications and supports various Java EE features like WebSockets and JNDI.",
"install_methods": [ "install_methods": [
@@ -38,4 +38,3 @@
} }
] ]
} }

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