Compare commits

..

20 Commits

Author SHA1 Message Date
ea9f91036e Update CHANGELOG.md (#4198)
Some checks failed
Auto Update .app-files / update-app-files (push) Has been cancelled
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-03 19:14:32 +02:00
783e7518f8 Fix access URL (#4199) 2025-05-03 18:48:07 +02:00
64595b08ce Vaultwarden: Enable HTTPS by default (#4197) 2025-05-03 14:48:55 +02:00
43d67cff58 Update versions.json (#4192) 2025-05-03 14:48:16 +02:00
4ae2eb2bfa Swith updatable to true (#4186) 2025-05-03 14:24:50 +02:00
6220e272af Update CHANGELOG.md (#4185)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-02 23:37:53 +02:00
dc36ba409c Changed the random script button to be the same as all the other buttons (#4183)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
2025-05-02 17:40:37 +02:00
15deb9c658 Update versions.json (#4175) 2025-05-02 17:38:49 +02:00
07d87334d5 Update CHANGELOG.md (#4182)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-02 16:13:13 +02:00
39300b2b6e Fix typo in sed command (#4179) 2025-05-02 13:08:56 +02:00
3b2aa30d48 Fix habitica config path (#4181)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
2025-05-02 11:36:14 +02:00
0c7052ae58 Update CHANGELOG.md (#4173)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Auto Update .app-files / update-app-files (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-01 22:35:38 +02:00
fa7aead863 Readeck: Fix release crawling (#4172)
* Update release crawling

* Fix update procedure release crawling

* Update
2025-05-01 22:34:54 +02:00
b5dc4bdf59 Update CHANGELOG.md (#4169)
Some checks failed
Auto Update .app-files / update-app-files (push) Has been cancelled
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Build and Publish Docker Image / build (push) Has been cancelled
Create Daily Release / create-daily-release (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-01 19:20:30 +02:00
9905012cd7 Add build time var (#4167) 2025-05-01 19:17:16 +02:00
abfe9114c7 Update CHANGELOG.md (#4163)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-01 14:10:50 +02:00
f65409be75 Update versions.json (#4165)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-05-01 14:10:19 +02:00
JJ
3fd0bdbf40 Grafana: add config path & documentation (#4162)
Some checks failed
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
* Fix config path

"conf.d" in config path was wrong, removed it.

* add grafana documentation link

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>

---------

Co-authored-by: Slaviša Arežina <58952836+tremor021@users.noreply.github.com>
2025-05-01 11:05:25 +02:00
8d7ce2e84e Update versions.json (#4160) 2025-05-01 09:34:27 +02:00
0d5a697e99 Bump vite from 6.2.6 to 6.3.4 in /frontend (#4159) 2025-05-01 09:34:11 +02:00
17 changed files with 486 additions and 343 deletions

View File

@ -14,6 +14,60 @@ 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.
## 2025-05-03
### 🚀 Updated Scripts
- Vaultwarden: Enable HTTPS by default [@tremor021](https://github.com/tremor021) ([#4197](https://github.com/community-scripts/ProxmoxVE/pull/4197))
- #### 🐞 Bug Fixes
- Vaultwarden: Fix access URL [@tremor021](https://github.com/tremor021) ([#4199](https://github.com/community-scripts/ProxmoxVE/pull/4199))
### 🌐 Website
- #### 📝 Script Information
- SFTPGo: Switch updatable to true on website [@tremor021](https://github.com/tremor021) ([#4186](https://github.com/community-scripts/ProxmoxVE/pull/4186))
## 2025-05-02
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- NetBox: Fix typo in sed command, preventing install [@tremor021](https://github.com/tremor021) ([#4179](https://github.com/community-scripts/ProxmoxVE/pull/4179))
### 🌐 Website
- #### 🐞 Bug Fixes
- Changed the random script button to be the same as all the other buttons [@BramSuurdje](https://github.com/BramSuurdje) ([#4183](https://github.com/community-scripts/ProxmoxVE/pull/4183))
- #### 📝 Script Information
- Habitica: correct config path [@DrDonoso](https://github.com/DrDonoso) ([#4181](https://github.com/community-scripts/ProxmoxVE/pull/4181))
## 2025-05-01
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Readeck: Fix release crawling [@tremor021](https://github.com/tremor021) ([#4172](https://github.com/community-scripts/ProxmoxVE/pull/4172))
- #### ✨ New Features
- homepage: Add build time var [@burgerga](https://github.com/burgerga) ([#4167](https://github.com/community-scripts/ProxmoxVE/pull/4167))
### 🌐 Website
- Bump vite from 6.2.6 to 6.3.4 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#4159](https://github.com/community-scripts/ProxmoxVE/pull/4159))
- #### 📝 Script Information
- Grafana: add config path & documentation [@JamborJan](https://github.com/JamborJan) ([#4162](https://github.com/community-scripts/ProxmoxVE/pull/4162))
## 2025-04-30
### 🚀 Updated Scripts

View File

@ -35,6 +35,15 @@ function update_script() {
echo "Installed NPM..."
fi
fi
# ensure that jq is installed
if ! command -v jq &>/dev/null; then
$STD msg_info "Installing jq..."
$STD apt-get update -qq &>/dev/null
$STD apt-get install -y jq &>/dev/null || {
msg_error "Failed to install jq"
exit
}
fi
LOCAL_IP=$(hostname -I | awk '{print $1}')
RELEASE=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/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
@ -50,6 +59,7 @@ function update_script() {
$STD npx --yes update-browserslist-db@latest
export NEXT_PUBLIC_VERSION="v$RELEASE"
export NEXT_PUBLIC_REVISION="source"
export NEXT_PUBLIC_BUILDTIME=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | jq -r '.published_at')
export NEXT_TELEMETRY_DISABLED=1
$STD pnpm build
if [[ ! -f /opt/homepage/.env ]]; then

View File

@ -20,23 +20,23 @@ color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/readeck ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating ${APP}"
LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1)
systemctl stop readeck.service
rm -rf /opt/readeck/readeck
cd /opt/readeck
curl -fsSL "https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64" -o "readeck"
chmod a+x readeck
systemctl start readeck.service
msg_ok "Updated ${APP}"
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/readeck ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating ${APP}"
LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '/releases/tag/\K\d+\.\d+\.\d+' | head -1)
systemctl stop readeck.service
rm -rf /opt/readeck/readeck
cd /opt/readeck
curl -fsSL "https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64" -o "readeck"
chmod a+x readeck
systemctl start readeck.service
msg_ok "Updated ${APP}"
exit
}
start
@ -46,4 +46,4 @@ description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"

View File

@ -76,12 +76,12 @@ function update_script() {
msg_ok "Stopped Vaultwarden"
msg_info "Updating Web-Vault to $WVRELEASE"
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/$WVRELEASE/bw_web_$WVRELEASE.tar.gz
$STD tar -zxf bw_web_$WVRELEASE.tar.gz -C /opt/vaultwarden/
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/"$WVRELEASE"/bw_web_"$WVRELEASE".tar.gz
$STD tar -zxf bw_web_"$WVRELEASE".tar.gz -C /opt/vaultwarden/
msg_ok "Updated Web-Vault"
msg_info "Cleaning up"
rm bw_web_$WVRELEASE.tar.gz
rm bw_web_"$WVRELEASE".tar.gz
msg_ok "Cleaned"
msg_info "Starting Vaultwarden"
@ -94,7 +94,7 @@ function update_script() {
if NEWTOKEN=$(whiptail --backtitle "Proxmox VE Helper Scripts" --passwordbox "Set the ADMIN_TOKEN" 10 58 3>&1 1>&2 2>&3); then
if [[ -z "$NEWTOKEN" ]]; then exit; fi
if ! command -v argon2 >/dev/null 2>&1; then $STD apt-get install -y argon2; fi
TOKEN=$(echo -n ${NEWTOKEN} | argon2 "$(openssl rand -base64 32)" -t 2 -m 16 -p 4 -l 64 -e)
TOKEN=$(echo -n "${NEWTOKEN}" | argon2 "$(openssl rand -base64 32)" -t 2 -m 16 -p 4 -l 64 -e)
sed -i "s|ADMIN_TOKEN=.*|ADMIN_TOKEN='${TOKEN}'|" /opt/vaultwarden/.env
if [[ -f /opt/vaultwarden/data/config.json ]]; then
sed -i "s|\"admin_token\":.*|\"admin_token\": \"${TOKEN}\"|" /opt/vaultwarden/data/config.json
@ -112,4 +112,4 @@ description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000${CL}"
echo -e "${TAB}${GATEWAY}${BGN}https://${IP}:8000${CL}"

View File

@ -3611,7 +3611,7 @@
"version": "19.0.0-rc.1",
"resolved": "https://registry.npmjs.org/types-react/-/types-react-19.0.0-rc.1.tgz",
"integrity": "sha512-RshndUfqTW6K3STLPis8BtAYCGOkMbtvYsi90gmVNDZBXUyUc5juf2PE9LfS/JmOlUIRO8cWTS/1MTnmhjDqyQ==",
"dev": true,
"devOptional": true,
"dependencies": {
"csstype": "^3.0.2"
}
@ -3621,7 +3621,7 @@
"version": "19.0.0-rc.1",
"resolved": "https://registry.npmjs.org/types-react-dom/-/types-react-dom-19.0.0-rc.1.tgz",
"integrity": "sha512-VSLZJl8VXCD0fAWp7DUTFUDCcZ8DVXOQmjhJMD03odgeFmu14ZQJHCXeETm3BEAhJqfgJaFkLnGkQv88sRx0fQ==",
"dev": true,
"devOptional": true,
"dependencies": {
"@types/react": "*"
}
@ -8207,7 +8207,6 @@
"version": "3.5.3",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz",
"integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==",
"dev": true,
"license": "MIT",
"bin": {
"prettier": "bin/prettier.cjs"
@ -9655,6 +9654,51 @@
"dev": true,
"license": "MIT"
},
"node_modules/tinyglobby": {
"version": "0.2.13",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz",
"integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==",
"dev": true,
"license": "MIT",
"dependencies": {
"fdir": "^6.4.4",
"picomatch": "^4.0.2"
},
"engines": {
"node": ">=12.0.0"
},
"funding": {
"url": "https://github.com/sponsors/SuperchupuDev"
}
},
"node_modules/tinyglobby/node_modules/fdir": {
"version": "6.4.4",
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz",
"integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==",
"dev": true,
"license": "MIT",
"peerDependencies": {
"picomatch": "^3 || ^4"
},
"peerDependenciesMeta": {
"picomatch": {
"optional": true
}
}
},
"node_modules/tinyglobby/node_modules/picomatch": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/tinypool": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz",
@ -9898,7 +9942,6 @@
"version": "5.8.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
"integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
"dev": true,
"license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",
@ -10023,15 +10066,18 @@
"license": "MIT"
},
"node_modules/vite": {
"version": "6.2.6",
"resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz",
"integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==",
"version": "6.3.4",
"resolved": "https://registry.npmjs.org/vite/-/vite-6.3.4.tgz",
"integrity": "sha512-BiReIiMS2fyFqbqNT/Qqt4CVITDU9M9vE+DKcVAsB+ZV0wvTKd+3hMbkpxz1b+NmEDMegpVbisKiAZOnvO92Sw==",
"dev": true,
"license": "MIT",
"dependencies": {
"esbuild": "^0.25.0",
"fdir": "^6.4.4",
"picomatch": "^4.0.2",
"postcss": "^8.5.3",
"rollup": "^4.30.1"
"rollup": "^4.34.9",
"tinyglobby": "^0.2.13"
},
"bin": {
"vite": "bin/vite.js"
@ -10137,6 +10183,34 @@
}
}
},
"node_modules/vite/node_modules/fdir": {
"version": "6.4.4",
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz",
"integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==",
"dev": true,
"license": "MIT",
"peerDependencies": {
"picomatch": "^3 || ^4"
},
"peerDependenciesMeta": {
"picomatch": {
"optional": true
}
}
},
"node_modules/vite/node_modules/picomatch": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/vitest": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-3.1.1.tgz",

View File

@ -9,10 +9,10 @@
"updateable": true,
"privileged": false,
"interface_port": 3000,
"documentation": null,
"documentation": "https://grafana.com/docs/grafana/latest/",
"website": "https://grafana.com/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/grafana.svg",
"config_path": "/etc/conf.d/grafana",
"config_path": "/etc/grafana",
"description": "Grafana is a data visualization and monitoring platform that enables users to query, visualize, alert on and understand metrics, logs, and other data sources. It integrates with various data sources, including Prometheus, InfluxDB, Elasticsearch, and many others, to present a unified view of the data and enable users to create insightful and interactive dashboards.",
"install_methods": [
{

View File

@ -12,7 +12,7 @@
"documentation": "https://github.com/HabitRPG/habitica/wiki",
"website": "https://habitica.com/",
"logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/habitica.svg",
"config_path": "/etc/headscale/config.yaml",
"config_path": "/opt/habitica/config.json",
"description": "Habitica is an open-source habit-building program that treats your life like a role-playing game. Level up as you succeed, lose HP as you fail, and earn Gold to buy weapons and armor!",
"install_methods": [
{
@ -35,11 +35,6 @@
{
"text": "It takes a minute or two after installation for web UI to start, please be patient.",
"type": "info"
},
{
"text": "Config file is at `/opt/habitica/config.json`",
"type": "info"
}
]
}

View File

@ -6,7 +6,7 @@
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": false,
"updateable": true,
"privileged": false,
"interface_port": 8080,
"documentation": "https://docs.sftpgo.com/latest/",

View File

@ -1,56 +1,55 @@
{
"name": "Vaultwarden",
"slug": "vaultwarden",
"categories": [
6
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8000,
"documentation": null,
"website": "https://github.com/dani-garcia/vaultwarden/",
"logo": "https://raw.githubusercontent.com/dani-garcia/vaultwarden/main/resources/vaultwarden-icon-white.svg",
"config_path": "/opt/vaultwarden/.env",
"description": "Vaultwarden is a self-hosted password manager which provides secure and encrypted password storage. It uses client-side encryption and provides access to passwords through a web interface and mobile apps.",
"install_methods": [
{
"type": "default",
"script": "ct/vaultwarden.sh",
"resources": {
"cpu": 4,
"ram": 6144,
"hdd": 6,
"os": "debian",
"version": "12"
}
},
{
"type": "alpine",
"script": "ct/alpine-vaultwarden.sh",
"resources": {
"cpu": 1,
"ram": 256,
"hdd": 0.5,
"os": "alpine",
"version": "3.21"
}
}
],
"default_credentials": {
"username": null,
"password": null
"name": "Vaultwarden",
"slug": "vaultwarden",
"categories": [
6
],
"date_created": "2024-05-02",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8000,
"documentation": "https://github.com/dani-garcia/vaultwarden/wiki",
"website": "https://github.com/dani-garcia/vaultwarden/",
"logo": "https://raw.githubusercontent.com/dani-garcia/vaultwarden/main/resources/vaultwarden-icon-white.svg",
"config_path": "/opt/vaultwarden/.env",
"description": "Vaultwarden is a self-hosted password manager which provides secure and encrypted password storage. It uses client-side encryption and provides access to passwords through a web interface and mobile apps.",
"install_methods": [
{
"type": "default",
"script": "ct/vaultwarden.sh",
"resources": {
"cpu": 4,
"ram": 6144,
"hdd": 6,
"os": "debian",
"version": "12"
}
},
"notes": [
{
"text": "Vaultwarden needs to be behind a proxy (Nginx Proxy Manager, Caddy, etc) to obtain HTTPS and to allow clients to connect. If you try to open the web page directly on the new container, the web site will not load",
"type": "warning"
},
{
"text": "To set the Admin Token, run the command below (or type update) in the LXC Console.",
"type": "info"
}
]
{
"type": "alpine",
"script": "ct/alpine-vaultwarden.sh",
"resources": {
"cpu": 1,
"ram": 256,
"hdd": 0.5,
"os": "alpine",
"version": "3.21"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Application uses self-signed certificate for HTTPS to work and is enabled by default. If you need a different setup, please read the documentation.",
"type": "warning"
},
{
"text": "To set the Admin Token, run the command below (or type update) in the LXC Console.",
"type": "info"
}
]
}

View File

@ -1,23 +1,233 @@
[
{
"name": "Prowlarr/Prowlarr",
"version": "v1.35.1.5034",
"date": "2025-04-30T11:02:36Z"
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
"date": "2024-08-29T22:32:51Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.4.1",
"date": "2025-04-30T10:09:14Z"
"name": "kimai/kimai",
"version": "2.33.0",
"date": "2025-05-03T10:33:49Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.1857",
"date": "2025-05-03T05:54:00Z"
},
{
"name": "theonedev/onedev",
"version": "v11.9.1",
"date": "2025-05-03T02:48:33Z"
},
{
"name": "Brandawg93/PeaNUT",
"version": "v5.7.4",
"date": "2025-05-02T23:41:08Z"
},
{
"name": "documenso/documenso",
"version": "v1.10.3",
"date": "2025-05-02T23:23:25Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.19.0",
"date": "2025-05-02T19:15:25Z"
},
{
"name": "coder/code-server",
"version": "v4.99.4",
"date": "2025-05-02T18:33:09Z"
},
{
"name": "prometheus/prometheus",
"version": "v0.304.0-rc.0",
"date": "2025-05-02T17:29:18Z"
},
{
"name": "influxdata/influxdb",
"version": "v3.0.2",
"date": "2025-05-02T18:11:39Z"
},
{
"name": "forgejo/forgejo",
"version": "v11.0.1",
"date": "2025-05-02T17:10:30Z"
},
{
"name": "jhuckaby/Cronicle",
"version": "v0.9.80",
"date": "2025-05-02T16:48:15Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.2",
"date": "2025-04-30T06:14:22Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.5.4",
"date": "2025-05-02T13:42:06Z"
},
{
"name": "zitadel/zitadel",
"version": "v2.71.9",
"date": "2025-05-02T12:48:14Z"
},
{
"name": "nzbgetcom/nzbget",
"version": "v24.8",
"date": "2025-03-18T07:33:51Z"
},
{
"name": "motioneye-project/motioneye",
"version": "0.42.1",
"date": "2020-06-07T07:27:04Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.20.8",
"date": "2025-05-02T11:37:05Z"
},
{
"name": "redis/redis",
"version": "8.0.0",
"date": "2025-05-02T11:20:31Z"
},
{
"name": "emqx/emqx",
"version": "e5.9.0",
"date": "2025-05-02T11:07:10Z"
},
{
"name": "semaphoreui/semaphore",
"version": "v2.14.7",
"date": "2025-05-02T07:57:33Z"
},
{
"name": "apache/couchdb",
"version": "3.5.0-RC1",
"date": "2025-05-02T04:34:23Z"
},
{
"name": "syncthing/syncthing",
"version": "v2.0.0-rc.14",
"date": "2025-05-01T23:50:42Z"
},
{
"name": "home-assistant/core",
"version": "2025.4.4",
"date": "2025-04-25T07:47:57Z"
},
{
"name": "stackblitz-labs/bolt.diy",
"version": "v0.0.7-hf1",
"date": "2025-03-10T20:49:39Z"
},
{
"name": "Koenkk/zigbee2mqtt",
"version": "2.3.0",
"date": "2025-05-01T18:24:31Z"
},
{
"name": "netbox-community/netbox",
"version": "v4.3.0",
"date": "2025-05-01T16:46:17Z"
},
{
"name": "runtipi/runtipi",
"version": "v4.0.2",
"date": "2025-05-01T16:10:58Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-typeorm-fix",
"date": "2025-05-01T14:47:45Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.91.0",
"date": "2025-04-28T15:38:56Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.3.0",
"date": "2025-05-01T04:13:41Z"
},
{
"name": "ollama/ollama",
"version": "v0.6.7-rc2",
"date": "2025-04-30T20:57:45Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.36.1",
"date": "2025-04-30T19:44:44Z"
},
{
"name": "readeck/readeck",
"version": "0.18.1",
"date": "2025-04-30T17:44:46Z"
},
{
"name": "ellite/Wallos",
"version": "v3.0.1",
"date": "2025-04-30T17:16:36Z"
},
{
"name": "WordPress/WordPress",
"version": "6.8.1",
"date": "2025-04-30T16:44:16Z"
},
{
"name": "benjaminjonard/koillection",
"version": "1.6.13",
"date": "2025-04-30T16:38:35Z"
},
{
"name": "element-hq/synapse",
"version": "v1.129.0rc1",
"date": "2025-04-16T15:18:13Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.3.0-alpha.2",
"date": "2025-04-30T14:55:15Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.504.1",
"date": "2025-04-30T14:33:59Z"
},
{
"name": "cloudflare/cloudflared",
"version": "2025.4.2",
"date": "2025-04-30T14:16:11Z"
},
{
"name": "docmost/docmost",
"version": "v0.20.4",
"date": "2025-04-30T14:15:16Z"
},
{
"name": "goauthentik/authentik",
"version": "version/2025.4.0",
"date": "2025-04-30T12:34:14Z"
},
{
"name": "Prowlarr/Prowlarr",
"version": "v1.35.1.5034",
"date": "2025-04-30T11:02:36Z"
},
{
"name": "Checkmk/checkmk",
"version": "v2.4.0-rc1",
"date": "2025-04-30T11:01:56Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w17-4.12.0",
"date": "2025-04-16T11:20:57Z"
"version": "coverity-w18-4.12.0",
"date": "2025-04-30T09:30:26Z"
},
{
"name": "mattermost/mattermost",
@ -34,16 +244,6 @@
"version": "3.0.0",
"date": "2025-04-30T06:24:07Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.2",
"date": "2025-04-30T06:14:22Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.1836",
"date": "2025-04-30T06:07:27Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.1",
@ -69,41 +269,11 @@
"version": "v1.5.2",
"date": "2025-04-29T20:42:32Z"
},
{
"name": "emqx/emqx",
"version": "e5.9.0-rc.1",
"date": "2025-04-29T20:30:20Z"
},
{
"name": "goauthentik/authentik",
"version": "version/2025.4.0",
"date": "2025-04-29T19:16:32Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.36.0",
"date": "2025-04-29T19:14:25Z"
},
{
"name": "ollama/ollama",
"version": "v0.6.6",
"date": "2025-04-17T04:34:58Z"
},
{
"name": "MediaBrowser/Emby.Releases",
"version": "4.8.11.0",
"date": "2025-03-10T06:39:11Z"
},
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.508",
"date": "2025-04-29T15:34:02Z"
},
{
"name": "semaphoreui/semaphore",
"version": "v2.14.6",
"date": "2025-04-29T15:18:03Z"
},
{
"name": "hargata/lubelog",
"version": "v1.4.7",
@ -139,11 +309,6 @@
"version": "v6.12.2",
"date": "2025-04-28T17:44:49Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.90.0",
"date": "2025-04-22T08:58:15Z"
},
{
"name": "immich-app/immich",
"version": "v1.132.3",
@ -164,11 +329,6 @@
"version": "pmm-6401-v1.116.0",
"date": "2025-04-28T11:30:10Z"
},
{
"name": "redis/redis",
"version": "8.0-rc2-int",
"date": "2025-04-28T09:56:36Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v0.51.0",
@ -184,11 +344,6 @@
"version": "v0.24.1",
"date": "2025-04-28T08:21:37Z"
},
{
"name": "Graylog2/graylog2-server",
"version": "6.2.0",
"date": "2025-04-28T08:12:45Z"
},
{
"name": "firefly-iii/firefly-iii",
"version": "v6.2.12",
@ -204,16 +359,6 @@
"version": "v2.21.0",
"date": "2025-04-27T16:31:14Z"
},
{
"name": "ellite/Wallos",
"version": "v3.0.0",
"date": "2025-04-27T15:31:26Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.18.1",
"date": "2025-04-27T15:17:35Z"
},
{
"name": "evcc-io/evcc",
"version": "0.203.4",
@ -279,26 +424,11 @@
"version": "v0.16.0",
"date": "2025-04-25T12:44:34Z"
},
{
"name": "zitadel/zitadel",
"version": "v2.71.8",
"date": "2025-04-25T11:50:04Z"
},
{
"name": "home-assistant/core",
"version": "2025.4.4",
"date": "2025-04-25T07:47:57Z"
},
{
"name": "donaldzou/WGDashboard",
"version": "v4.2.2",
"date": "2025-04-25T07:42:03Z"
},
{
"name": "docmost/docmost",
"version": "v0.20.3",
"date": "2025-04-24T22:33:32Z"
},
{
"name": "mongodb/mongo",
"version": "r7.0.19",
@ -314,21 +444,11 @@
"version": "v1.4.0",
"date": "2025-04-24T16:20:17Z"
},
{
"name": "jhuckaby/Cronicle",
"version": "v0.9.79",
"date": "2025-04-24T15:53:43Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.14.6-rc8",
"date": "2025-04-24T15:39:41Z"
},
{
"name": "Checkmk/checkmk",
"version": "v2.3.0p31",
"date": "2025-04-24T15:08:03Z"
},
{
"name": "glpi-project/glpi",
"version": "10.0.18",
@ -344,31 +464,11 @@
"version": "0.17.11",
"date": "2025-04-24T05:25:55Z"
},
{
"name": "syncthing/syncthing",
"version": "v2.0.0-beta.9",
"date": "2025-04-12T13:58:29Z"
},
{
"name": "netbox-community/netbox",
"version": "v4.2.8",
"date": "2025-04-22T19:44:49Z"
},
{
"name": "Kozea/Radicale",
"version": "v3.5.2",
"date": "2025-04-23T18:41:46Z"
},
{
"name": "runtipi/runtipi",
"version": "v3.10.0-beta.9",
"date": "2025-04-17T11:46:08Z"
},
{
"name": "NodeBB/NodeBB",
"version": "v4.2.2",
"date": "2025-04-22T16:33:53Z"
},
{
"name": "grafana/grafana",
"version": "v11.6.1",
@ -449,16 +549,6 @@
"version": "v2.15.3",
"date": "2025-04-19T23:02:17Z"
},
{
"name": "msgbyte/tianji",
"version": "v1.20.7",
"date": "2025-04-19T20:35:09Z"
},
{
"name": "theonedev/onedev",
"version": "v11.8.7",
"date": "2025-04-19T11:19:29Z"
},
{
"name": "caddyserver/caddy",
"version": "v2.10.0",
@ -469,11 +559,6 @@
"version": "v1.0.4",
"date": "2025-04-18T16:08:02Z"
},
{
"name": "prometheus/prometheus",
"version": "v3.3.0",
"date": "2025-04-18T13:46:38Z"
},
{
"name": "dgtlmoon/changedetection.io",
"version": "0.49.15",
@ -494,11 +579,6 @@
"version": "v0.93.0",
"date": "2025-04-17T20:05:25Z"
},
{
"name": "coder/code-server",
"version": "v4.99.3",
"date": "2025-04-17T18:33:11Z"
},
{
"name": "benzino77/tasmocompiler",
"version": "v12.6.1",
@ -509,76 +589,31 @@
"version": "v2.35.1",
"date": "2025-04-17T14:29:11Z"
},
{
"name": "influxdata/influxdb",
"version": "v3.0.1",
"date": "2025-04-17T14:06:09Z"
},
{
"name": "documenso/documenso",
"version": "v1.10.0-rc.5",
"date": "2025-04-17T13:01:43Z"
},
{
"name": "neo4j/neo4j",
"version": "2025.04.0",
"date": "2025-04-17T11:13:20Z"
},
{
"name": "prometheus-pve/prometheus-pve-exporter",
"version": "v3.5.3",
"date": "2025-04-17T10:40:47Z"
},
{
"name": "IceWhaleTech/CasaOS",
"version": "v0.4.15",
"date": "2024-12-19T03:19:49Z"
},
{
"name": "forgejo/forgejo",
"version": "v11.0.0",
"date": "2025-04-16T19:25:53Z"
},
{
"name": "element-hq/synapse",
"version": "v1.129.0rc1",
"date": "2025-04-16T15:18:13Z"
},
{
"name": "rabbitmq/rabbitmq-server",
"version": "v4.1.0",
"date": "2025-04-15T16:18:29Z"
},
{
"name": "Brandawg93/PeaNUT",
"version": "v5.7.2",
"date": "2025-04-15T15:44:49Z"
},
{
"name": "WordPress/WordPress",
"version": "6.8",
"date": "2025-04-15T15:41:16Z"
},
{
"name": "slskd/slskd",
"version": "0.22.5",
"date": "2025-04-15T02:52:26Z"
},
{
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
"date": "2024-08-29T22:32:51Z"
},
{
"name": "home-assistant/operating-system",
"version": "15.2",
"date": "2025-04-14T15:37:12Z"
},
{
"name": "stackblitz-labs/bolt.diy",
"version": "v0.0.7-hf1",
"date": "2025-03-10T20:49:39Z"
},
{
"name": "bluenviron/mediamtx",
"version": "v1.12.0",
@ -609,11 +644,6 @@
"version": "v0.2.11",
"date": "2025-04-12T21:13:08Z"
},
{
"name": "readeck/readeck",
"version": "0.18.0",
"date": "2025-04-12T08:55:32Z"
},
{
"name": "Bubka/2FAuth",
"version": "v5.5.2",
@ -659,11 +689,6 @@
"version": "v1.10.0",
"date": "2025-04-07T14:32:15Z"
},
{
"name": "fallenbagel/jellyseerr",
"version": "preview-back-to-axios",
"date": "2025-04-07T09:23:08Z"
},
{
"name": "Dolibarr/dolibarr",
"version": "21.0.1",
@ -679,11 +704,6 @@
"version": "2.0.3",
"date": "2025-04-06T17:35:41Z"
},
{
"name": "kimai/kimai",
"version": "2.32.0",
"date": "2025-04-06T09:43:51Z"
},
{
"name": "jellyfin/jellyfin",
"version": "v10.10.7",
@ -714,11 +734,6 @@
"version": "v25.4.0",
"date": "2025-04-05T04:14:57Z"
},
{
"name": "Koenkk/zigbee2mqtt",
"version": "2.2.1",
"date": "2025-04-04T20:15:48Z"
},
{
"name": "Athou/commafeed",
"version": "5.7.0",
@ -859,11 +874,6 @@
"version": "v0.22.1",
"date": "2025-03-18T21:01:22Z"
},
{
"name": "apache/couchdb",
"version": "3.4.3.post1",
"date": "2025-03-18T09:44:59Z"
},
{
"name": "authelia/authelia",
"version": "v4.39.1",
@ -894,11 +904,6 @@
"version": "1.21.2",
"date": "2025-03-12T04:19:30Z"
},
{
"name": "benjaminjonard/koillection",
"version": "1.6.12",
"date": "2025-03-11T15:04:43Z"
},
{
"name": "excalidraw/excalidraw",
"version": "v0.18.0",
@ -1204,11 +1209,6 @@
"version": "3.1.1",
"date": "2024-05-30T17:20:53Z"
},
{
"name": "motioneye-project/motioneye",
"version": "0.42.1",
"date": "2020-06-07T07:27:04Z"
},
{
"name": "gnmyt/MySpeed",
"version": "v1.0.9",

View File

@ -16,7 +16,10 @@ import React from "react";
import { Badge } from "./ui/badge";
import { Button } from "./ui/button";
import { DialogTitle } from "./ui/dialog";
import { Sparkles } from "lucide-react"; // <- Hinzugefügt
import { Sparkles } from "lucide-react";
import { TooltipContent, TooltipProvider } from "./ui/tooltip";
import { TooltipTrigger } from "./ui/tooltip";
import { Tooltip } from "./ui/tooltip";
export const formattedBadge = (type: string) => {
switch (type) {
@ -111,16 +114,19 @@ export default function CommandMenu() {
</kbd>
</Button>
<Button
variant="outline"
size="icon"
onClick={openRandomScript}
title="Open random script"
disabled={isLoading}
className="h-9 w-9"
>
<Sparkles className="h-5 w-5" />
</Button>
<TooltipProvider>
<Tooltip delayDuration={100}>
<TooltipTrigger asChild>
<Button variant="outline" size="icon" onClick={openRandomScript} disabled={isLoading} className="hidden lg:flex">
<Sparkles className="size-4" />
<span className="sr-only">Open Random Script</span>
</Button>
</TooltipTrigger>
<TooltipContent>
<p>Open Random Script</p>
</TooltipContent>
</Tooltip>
</TooltipProvider>
</div>
<CommandDialog open={open} onOpenChange={setOpen}>

View File

@ -41,8 +41,8 @@ export default function CodeCopyButton({
return (
<div className="mt-4 flex">
<Card className="flex items-center overflow-x-auto bg-primary-foreground pl-4">
<div className="overflow-x-auto whitespace-pre-wrap text-nowrap break-all pr-4 text-sm">
<Card className="flex items-center overflow-x-auto bg-primary-foreground pl-4 [&::-webkit-scrollbar]:h-1.5 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/20">
<div className="overflow-x-auto whitespace-pre-wrap text-nowrap break-all pr-4 text-sm [&::-webkit-scrollbar]:h-1.5 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/20">
{!isMobile && children ? children : "Copy install command"}
</div>
<button

View File

@ -28,6 +28,11 @@ $STD apk add vaultwarden
sed -i -e 's|export WEB_VAULT_ENABLED=.*|export WEB_VAULT_ENABLED=true|' /etc/conf.d/vaultwarden
echo -e "export ADMIN_TOKEN=''" >>/etc/conf.d/vaultwarden
echo -e "export ROCKET_ADDRESS=0.0.0.0" >>/etc/conf.d/vaultwarden
echo -e "export ROCKET_TLS='{certs=\"/etc/ssl/certs/vaultwarden-selfsigned.crt\",key=\"/etc/ssl/private/vaultwarden-selfsigned.key\"}'"
$STD openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/ssl/private/vaultwarden-selfsigned.key -out /etc/ssl/certs/vaultwarden-selfsigned.crt -subj "/C=US/O=Vaultwarden/O
U=Domain Control Validated/CN=localhost"
chown vaultwarden:vaultwarden /etc/ssl/certs/vaultwarden-selfsigned.crt
chown vaultwarden:vaultwarden /etc/ssl/private/vaultwarden-selfsigned.key
msg_ok "Installed Alpine-Vaultwarden"
msg_info "Installing Web-Vault"

View File

@ -14,7 +14,7 @@ network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get install -y gpg
$STD apt-get install -y gpg jq
msg_ok "Installed Dependencies"
msg_info "Setting up Node.js Repository"
@ -43,6 +43,7 @@ cp /opt/homepage/src/skeleton/* /opt/homepage/config
$STD pnpm install
export NEXT_PUBLIC_VERSION="v$RELEASE"
export NEXT_PUBLIC_REVISION="source"
export NEXT_PUBLIC_BUILDTIME=$(curl -fsSL https://api.github.com/repos/gethomepage/homepage/releases/latest | jq -r '.published_at')
export NEXT_TELEMETRY_DISABLED=1
$STD pnpm build
echo "HOMEPAGE_ALLOWED_HOSTS=localhost:3000,${LOCAL_IP}:3000" >/opt/homepage/.env

View File

@ -33,7 +33,7 @@ $STD apt-get install -y \
python3-pip \
python3-venv \
python3-dev
msg_ok "Installed Python"
msg_ok "Installed Python"
msg_info "Setting up PostgreSQL"
DB_NAME=netbox
@ -54,7 +54,7 @@ cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/netbox-community/netbox/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
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"
mv /opt/netbox-${RELEASE}/ /opt/netbox
mv /opt/netbox-"${RELEASE}"/ /opt/netbox
$STD adduser --system --group netbox
chown --recursive netbox /opt/netbox/netbox/media/
@ -68,8 +68,8 @@ ESCAPED_SECRET_KEY=$(printf '%s\n' "$SECRET_KEY" | sed 's/[&/\]/\\&/g')
sed -i 's/ALLOWED_HOSTS = \[\]/ALLOWED_HOSTS = ["*"]/' /opt/netbox/netbox/netbox/configuration.py
sed -i "s|SECRET_KEY = ''|SECRET_KEY = '${ESCAPED_SECRET_KEY}'|" /opt/netbox/netbox/netbox/configuration.py
sed -i "/DATABASE = {/,/}/s/'USER': '[^']*'/'USER': '$DB_USER'/" /opt/netbox/netbox/netbox/configuration.py
sed -i "/DATABASE = {/,/}/s/'PASSWORD': '[^']*'/'PASSWORD': '$DB_PASS'/" /opt/netbox/netbox/netbox/configuration.py
sed -i "/DATABASES = {/,/}/s/'USER': '[^']*'/'USER': '$DB_USER'/" /opt/netbox/netbox/netbox/configuration.py
sed -i "/DATABASES = {/,/}/s/'PASSWORD': '[^']*'/'PASSWORD': '$DB_PASS'/" /opt/netbox/netbox/netbox/configuration.py
$STD /opt/netbox/upgrade.sh
ln -s /opt/netbox/contrib/netbox-housekeeping.sh /etc/cron.daily/netbox-housekeeping
@ -85,7 +85,7 @@ mv /opt/netbox/contrib/*.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable -q --now netbox netbox-rq
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
echo "${RELEASE}" >/opt/"${APPLICATION}"_version.txt
echo -e "Netbox Secret: \e[32m$SECRET_KEY\e[0m" >>~/netbox.creds
msg_ok "Installed NetBox"

View File

@ -14,7 +14,7 @@ network_check
update_os
msg_info "Installing Readeck"
LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1)
LATEST=$(curl -fsSL https://codeberg.org/readeck/readeck/releases/ | grep -oP '/releases/tag/\K\d+\.\d+\.\d+' | head -1)
mkdir -p /opt/readeck
cd /opt/readeck
curl -fsSL "https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64" -o "readeck"

View File

@ -15,28 +15,23 @@ update_os
msg_info "Installing Dependencies"
$STD apt-get update
$STD apt-get -qqy install \
git \
$STD apt-get install -y git \
build-essential \
pkgconf \
libssl-dev \
libmariadb-dev-compat \
libpq-dev \
argon2
argon2 \
ssl-cert
msg_ok "Installed Dependencies"
WEBVAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest |
grep "tag_name" |
awk '{print substr($2, 2, length($2)-3) }')
VAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest |
grep "tag_name" |
awk '{print substr($2, 2, length($2)-3) }')
WEBVAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
VAULT=$(curl -fsSL https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
msg_info "Installing Rust"
curl -fsSL https://sh.rustup.rs -o rustup-init.sh
$STD bash rustup-init.sh -y --profile minimal
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >>~/.bashrc
export PATH="$HOME/.cargo/bin:$PATH"
rm rustup-init.sh
msg_ok "Installed Rust"
@ -54,19 +49,23 @@ mkdir -p /opt/vaultwarden/data
cp target/release/vaultwarden /opt/vaultwarden/bin/
msg_info "Downloading Web-Vault ${WEBVAULT}"
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/$WEBVAULT/bw_web_$WEBVAULT.tar.gz
$STD tar -xzf bw_web_$WEBVAULT.tar.gz -C /opt/vaultwarden/
$STD curl -fsSLO https://github.com/dani-garcia/bw_web_builds/releases/download/"$WEBVAULT"/bw_web_"$WEBVAULT".tar.gz
$STD tar -xzf bw_web_"$WEBVAULT".tar.gz -C /opt/vaultwarden/
msg_ok "Downloaded Web-Vault ${WEBVAULT}"
cat <<EOF >/opt/vaultwarden/.env
ADMIN_TOKEN=''
ROCKET_ADDRESS=0.0.0.0
ROCKET_TLS='{certs="/opt/vaultwarden/ssl-cert-snakeoil.pem",key="/opt/vaultwarden/ssl-cert-snakeoil.key"}'
DATA_FOLDER=/opt/vaultwarden/data
DATABASE_MAX_CONNS=10
WEB_VAULT_FOLDER=/opt/vaultwarden/web-vault
WEB_VAULT_ENABLED=true
EOF
mv /etc/ssl/certs/ssl-cert-snakeoil.pem /opt/vaultwarden/
mv /etc/ssl/private/ssl-cert-snakeoil.key /opt/vaultwarden/
msg_info "Creating Service"
chown -R vaultwarden:vaultwarden /opt/vaultwarden/
chown root:root /opt/vaultwarden/bin/vaultwarden