mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-02-07 05:43:24 +01:00
Compare commits
30 Commits
tremor021-
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
599eb4652f | ||
|
|
84bfd4549e | ||
|
|
6175e7af57 | ||
|
|
aa1350d126 | ||
|
|
5965023d16 | ||
|
|
bb0188b38c | ||
|
|
46cf374426 | ||
|
|
2eb263c314 | ||
|
|
5d95a35980 | ||
|
|
ccb27cd7ab | ||
|
|
523ece1558 | ||
|
|
d3d2b0d85e | ||
|
|
650ef64649 | ||
|
|
ef8449e4da | ||
|
|
d6b6057cdc | ||
|
|
9c9771f684 | ||
|
|
465af25e00 | ||
|
|
e39ac43553 | ||
|
|
da0dfc9c7e | ||
|
|
f96892bf1d | ||
|
|
7973216438 | ||
|
|
5b01899434 | ||
|
|
c20923136c | ||
|
|
b8f4a722cb | ||
|
|
c296b9d985 | ||
|
|
3eadc02a3d | ||
|
|
70c9df24d9 | ||
|
|
15397e1bbe | ||
|
|
bb561172cf | ||
|
|
eecff9db6b |
2
.github/DISCUSSION_TEMPLATE/request-script.yml
generated
vendored
2
.github/DISCUSSION_TEMPLATE/request-script.yml
generated
vendored
@@ -32,6 +32,8 @@ body:
|
||||
required: true
|
||||
- label: "The application requested has 600+ stars on Github (if applicable), is older than 6 months, actively maintained and has release tarballs published."
|
||||
required: true
|
||||
- label: "I understand that not all applications will be accepted due to various reasons and criteria by the community-scripts ORG."
|
||||
required: true
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: "Thanks for submitting your request! The team will review it and reach out if we need more information."
|
||||
|
||||
37
CHANGELOG.md
37
CHANGELOG.md
@@ -398,23 +398,58 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
</details>
|
||||
|
||||
## 2026-02-07
|
||||
|
||||
## 2026-02-06
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- PVE LXC Apps Updater [@MickLesk](https://github.com/MickLesk) ([#11533](https://github.com/community-scripts/ProxmoxVE/pull/11533))
|
||||
- Nightscout ([#11621](https://github.com/community-scripts/ProxmoxVE/pull/11621))
|
||||
- PVE LXC Apps Updater [@MickLesk](https://github.com/MickLesk) ([#11533](https://github.com/community-scripts/ProxmoxVE/pull/11533))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Immich: supress startup messages for immich-admin [@vhsdream](https://github.com/vhsdream) ([#11635](https://github.com/community-scripts/ProxmoxVE/pull/11635))
|
||||
- Semaphore: Change Ubuntu release from 'jammy' to 'noble' [@MickLesk](https://github.com/MickLesk) ([#11625](https://github.com/community-scripts/ProxmoxVE/pull/11625))
|
||||
- Pangolin: replace build:sqlite with db:generate + build [@MickLesk](https://github.com/MickLesk) ([#11616](https://github.com/community-scripts/ProxmoxVE/pull/11616))
|
||||
- [FIX] OpenCloud: path issues [@vhsdream](https://github.com/vhsdream) ([#11593](https://github.com/community-scripts/ProxmoxVE/pull/11593))
|
||||
- [FIX] Homepage: preserve public/images & public/icons if they exist [@vhsdream](https://github.com/vhsdream) ([#11594](https://github.com/community-scripts/ProxmoxVE/pull/11594))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- Shelfmark: remove Chromedriver dep, add URL_BASE env [@vhsdream](https://github.com/vhsdream) ([#11619](https://github.com/community-scripts/ProxmoxVE/pull/11619))
|
||||
- Immich: pin to v2.5.5 [@vhsdream](https://github.com/vhsdream) ([#11598](https://github.com/community-scripts/ProxmoxVE/pull/11598))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- refactor: homepage [@CrazyWolf13](https://github.com/CrazyWolf13) ([#11605](https://github.com/community-scripts/ProxmoxVE/pull/11605))
|
||||
|
||||
### 💾 Core
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fix(core): spinner misalignment [@ls-root](https://github.com/ls-root) ([#11627](https://github.com/community-scripts/ProxmoxVE/pull/11627))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- [Fix] build.func: QOL grammar adjustment for Creating LXC message [@vhsdream](https://github.com/vhsdream) ([#11633](https://github.com/community-scripts/ProxmoxVE/pull/11633))
|
||||
|
||||
### 📚 Documentation
|
||||
|
||||
- [gh] Update to the New Script request template [@tremor021](https://github.com/tremor021) ([#11612](https://github.com/community-scripts/ProxmoxVE/pull/11612))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- #### 📝 Script Information
|
||||
|
||||
- Update LXC App Updater JSON to reflect tag override option [@vhsdream](https://github.com/vhsdream) ([#11626](https://github.com/community-scripts/ProxmoxVE/pull/11626))
|
||||
|
||||
### ❔ Uncategorized
|
||||
|
||||
- Opencloud: fix JSON [@vhsdream](https://github.com/vhsdream) ([#11617](https://github.com/community-scripts/ProxmoxVE/pull/11617))
|
||||
|
||||
## 2026-02-05
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
6
ct/headers/nightscout
Normal file
6
ct/headers/nightscout
Normal file
@@ -0,0 +1,6 @@
|
||||
_ ___ __ __ __
|
||||
/ | / (_)___ _/ /_ / /_______________ __ __/ /_
|
||||
/ |/ / / __ `/ __ \/ __/ ___/ ___/ __ \/ / / / __/
|
||||
/ /| / / /_/ / / / / /_(__ ) /__/ /_/ / /_/ / /_
|
||||
/_/ |_/_/\__, /_/ /_/\__/____/\___/\____/\__,_/\__/
|
||||
/____/
|
||||
11
ct/immich.sh
11
ct/immich.sh
@@ -105,8 +105,8 @@ EOF
|
||||
msg_ok "Image-processing libraries up to date"
|
||||
fi
|
||||
|
||||
RELEASE="2.5.3"
|
||||
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
||||
RELEASE="2.5.5"
|
||||
if check_for_gh_release "Immich" "immich-app/immich" "${RELEASE}"; then
|
||||
if [[ $(cat ~/.immich) > "2.5.1" ]]; then
|
||||
msg_info "Enabling Maintenance Mode"
|
||||
cd /opt/immich/app/bin
|
||||
@@ -140,7 +140,7 @@ EOF
|
||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||
|
||||
[[ -f "$ML_DIR"/ml_start.sh ]] && cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
|
||||
if grep -qs "set -a" "$APP_DIR"/bin/start.sh; then
|
||||
if grep -qs "set -a" "$APP_DIR"/bin/start.sh && grep -qs "warnings" "$APP_DIR"/bin/start.sh; then
|
||||
cp "$APP_DIR"/bin/start.sh "$INSTALL_DIR"
|
||||
else
|
||||
cat <<EOF >"$INSTALL_DIR"/start.sh
|
||||
@@ -150,7 +150,7 @@ set -a
|
||||
. ${INSTALL_DIR}/.env
|
||||
set +a
|
||||
|
||||
/usr/bin/node ${APP_DIR}/dist/main.js "\$@"
|
||||
/usr/bin/node --no-warnings ${APP_DIR}/dist/main.js "\$@"
|
||||
EOF
|
||||
chmod +x "$INSTALL_DIR"/start.sh
|
||||
fi
|
||||
@@ -161,7 +161,7 @@ EOF
|
||||
)
|
||||
|
||||
setup_uv
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "Immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
||||
PNPM_VERSION="$(jq -r '.packageManager | split("@")[1]' ${SRC_DIR}/package.json)"
|
||||
NODE_VERSION="24" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
|
||||
|
||||
@@ -248,6 +248,7 @@ EOF
|
||||
msg_ok "Disabled Maintenance Mode"
|
||||
fi
|
||||
systemctl restart immich-ml immich-web
|
||||
[[ -f /etc/systemd/system/immich-proxy.service ]] && systemctl restart immich-proxy
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
58
ct/nightscout.sh
Normal file
58
ct/nightscout.sh
Normal file
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: aendel
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/nightscout/cgm-remote-monitor
|
||||
|
||||
APP="Nightscout"
|
||||
var_tags="${var_tags:-health}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
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/nightscout ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "nightscout" "nightscout/cgm-remote-monitor"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop nightscout
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
fetch_and_deploy_gh_release "nightscout" "nightscout/cgm-remote-monitor" "tarball"
|
||||
|
||||
msg_info "Updating Nightscout"
|
||||
cd /opt/nightscout
|
||||
$STD npm install
|
||||
msg_ok "Updated Nightscout"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start nightscout
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:1337${CL}"
|
||||
@@ -48,8 +48,10 @@ function update_script() {
|
||||
$STD npm run set:sqlite
|
||||
$STD npm run set:oss
|
||||
rm -rf server/private
|
||||
$STD npm run build:sqlite
|
||||
$STD npm run db:generate
|
||||
$STD npm run build
|
||||
$STD npm run build:cli
|
||||
$STD npm run db:sqlite:push
|
||||
cp -R .next/standalone ./
|
||||
chmod +x ./dist/cli.mjs
|
||||
cp server/db/names.json ./dist/names.json
|
||||
|
||||
@@ -42,16 +42,19 @@ function update_script() {
|
||||
msg_info "Stopping FlareSolverr service"
|
||||
systemctl stop flaresolverr
|
||||
msg_ok "Stopped FlareSolverr service"
|
||||
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
|
||||
|
||||
|
||||
msg_info "Starting FlareSolverr Service"
|
||||
systemctl start flaresolverr
|
||||
msg_ok "Started FlareSolverr Service"
|
||||
msg_ok "Updated FlareSolverr"
|
||||
fi
|
||||
|
||||
|
||||
cp /opt/shelfmark/start.sh /opt/start.sh.bak
|
||||
if command -v chromedriver &>/dev/null; then
|
||||
$STD apt remove -y chromium-driver
|
||||
fi
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "shelfmark" "calibrain/shelfmark" "tarball" "latest" "/opt/shelfmark"
|
||||
RELEASE_VERSION=$(cat "$HOME/.shelfmark")
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"generated": "2026-02-06T06:19:41Z",
|
||||
"generated": "2026-02-07T00:21:04Z",
|
||||
"versions": [
|
||||
{
|
||||
"slug": "2fauth",
|
||||
@@ -256,9 +256,9 @@
|
||||
{
|
||||
"slug": "docmost",
|
||||
"repo": "docmost/docmost",
|
||||
"version": "v0.25.1",
|
||||
"version": "v0.25.2",
|
||||
"pinned": false,
|
||||
"date": "2026-02-04T15:19:51Z"
|
||||
"date": "2026-02-06T19:50:55Z"
|
||||
},
|
||||
{
|
||||
"slug": "domain-locker",
|
||||
@@ -480,9 +480,9 @@
|
||||
{
|
||||
"slug": "homarr",
|
||||
"repo": "homarr-labs/homarr",
|
||||
"version": "v1.52.0",
|
||||
"version": "v1.53.0",
|
||||
"pinned": false,
|
||||
"date": "2026-01-30T19:41:22Z"
|
||||
"date": "2026-02-06T19:42:58Z"
|
||||
},
|
||||
{
|
||||
"slug": "homebox",
|
||||
@@ -515,9 +515,9 @@
|
||||
{
|
||||
"slug": "huntarr",
|
||||
"repo": "plexguide/Huntarr.io",
|
||||
"version": "9.2.1",
|
||||
"version": "9.2.2",
|
||||
"pinned": false,
|
||||
"date": "2026-02-05T16:39:35Z"
|
||||
"date": "2026-02-06T22:01:36Z"
|
||||
},
|
||||
{
|
||||
"slug": "inspircd",
|
||||
@@ -781,9 +781,9 @@
|
||||
{
|
||||
"slug": "metube",
|
||||
"repo": "alexta69/metube",
|
||||
"version": "2026.02.04",
|
||||
"version": "2026.02.06",
|
||||
"pinned": false,
|
||||
"date": "2026-02-04T20:01:18Z"
|
||||
"date": "2026-02-06T14:20:34Z"
|
||||
},
|
||||
{
|
||||
"slug": "miniflux",
|
||||
@@ -841,6 +841,13 @@
|
||||
"pinned": false,
|
||||
"date": "2025-12-09T09:47:15Z"
|
||||
},
|
||||
{
|
||||
"slug": "nightscout",
|
||||
"repo": "nightscout/cgm-remote-monitor",
|
||||
"version": "15.0.3",
|
||||
"pinned": false,
|
||||
"date": "2025-05-08T22:12:34Z"
|
||||
},
|
||||
{
|
||||
"slug": "nocodb",
|
||||
"repo": "nocodb/nocodb",
|
||||
@@ -1250,9 +1257,9 @@
|
||||
{
|
||||
"slug": "signoz",
|
||||
"repo": "SigNoz/signoz-otel-collector",
|
||||
"version": "v0.129.13",
|
||||
"version": "v0.142.0",
|
||||
"pinned": false,
|
||||
"date": "2026-01-27T15:43:00Z"
|
||||
"date": "2026-02-06T11:40:30Z"
|
||||
},
|
||||
{
|
||||
"slug": "silverbullet",
|
||||
@@ -1306,9 +1313,9 @@
|
||||
{
|
||||
"slug": "stirling-pdf",
|
||||
"repo": "Stirling-Tools/Stirling-PDF",
|
||||
"version": "v2.4.4",
|
||||
"version": "v2.4.5",
|
||||
"pinned": false,
|
||||
"date": "2026-02-05T00:15:53Z"
|
||||
"date": "2026-02-06T23:12:20Z"
|
||||
},
|
||||
{
|
||||
"slug": "streamlink-webui",
|
||||
@@ -1607,9 +1614,9 @@
|
||||
{
|
||||
"slug": "yubal",
|
||||
"repo": "guillevc/yubal",
|
||||
"version": "v4.0.0",
|
||||
"version": "v0.4.0",
|
||||
"pinned": false,
|
||||
"date": "2026-02-05T22:42:02Z"
|
||||
"date": "2026-02-06T21:25:24Z"
|
||||
},
|
||||
{
|
||||
"slug": "zigbee2mqtt",
|
||||
|
||||
52
frontend/public/json/nightscout.json
Normal file
52
frontend/public/json/nightscout.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"name": "Nightscout",
|
||||
"slug": "nightscout",
|
||||
"categories": [
|
||||
0
|
||||
],
|
||||
"date_created": "2026-02-06",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 1337,
|
||||
"documentation": "https://nightscout.github.io/",
|
||||
"website": "http://www.nightscout.info/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/nightscout.webp",
|
||||
"config_path": "/opt/nightscout/my.env",
|
||||
"description": "Nightscout is an open source, DIY project that allows real time access to a CGM data via personal website, smartwatch watchers, or apps and widgets available for smartphones.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/nightscout.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 2048,
|
||||
"hdd": 10,
|
||||
"os": "debian",
|
||||
"version": "13"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "Nightscout requires configuring `my.env` with your Mongo connection string. API_SECRET has been generated and saved to `~/nightscout.creds`.",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "Edit `/opt/nightscout/my.env` to configure your CGM source (Dexcom/CareLink). Then run: `systemctl restart nightscout`",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "Official Configuration Guide: https://nightscout.github.io/nightscout/setup_variables/",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "Nightscout requires HTTPS for many features (security, tokens, PWA). Usage of a reverse proxy (e.g. Nginx Proxy Manager, Traefik, Caddy) is highly recommended.",
|
||||
"type": "warning"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -41,15 +41,15 @@
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "**Optional External Apps**: extract zip archives from App Store to `/etc/opencloud/assets/apps`",
|
||||
"text": "**Optional External Apps**: extract zip archives from App Store to `/etc/opencloud/web/assets/apps`",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "**Optional CalDAV and CardDAV**: requires separate Radicale install. Edit and rename `/opt/opencloud/proxy.yaml.bak` and change your Radicale config to use `http_x_remote_user` as the auth method",
|
||||
"text": "**Optional CalDAV and CardDAV**: requires separate Radicale install. Edit and rename `/etc/opencloud/proxy.yaml.bak` and change your Radicale config to use `http_x_remote_user` as the auth method",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "**Optional OpenID**: Authelia and PocketID supported. Uncomment relevant lines in `/opt/opencloud/opencloud.env` and consult OpenCloud GitHub discussions for configuration tips",
|
||||
"text": "**Optional OpenID**: Authelia and PocketID supported. Uncomment relevant lines in `/etc/opencloud/opencloud.env` and consult OpenCloud GitHub discussions for configuration tips",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -35,6 +35,10 @@
|
||||
{
|
||||
"text": "The configuration at `/etc/shelfmark/.env` is for bootstrapping the initial install. Customize the configuration via the Shelfmark UI.",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "This version of the application does not support routing through Tor (the `USING_TOR` env var).",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "Only containers with `community-script` or `proxmox-helper-scripts` tags are listed for update.",
|
||||
"text": "By default, only containers with `community-script` or `proxmox-helper-scripts` tags are listed for update. You can override this by using `var_tags='custom-tag|othertag'`.",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -289,7 +289,7 @@ ML_DIR="${APP_DIR}/machine-learning"
|
||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||
mkdir -p {"${APP_DIR}","${UPLOAD_DIR}","${GEO_DIR}","${INSTALL_DIR}"/cache}
|
||||
|
||||
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v2.5.3" "$SRC_DIR"
|
||||
fetch_and_deploy_gh_release "Immich" "immich-app/immich" "tarball" "v2.5.5" "$SRC_DIR"
|
||||
PNPM_VERSION="$(jq -r '.packageManager | split("@")[1]' ${SRC_DIR}/package.json)"
|
||||
NODE_VERSION="24" NODE_MODULE="pnpm@${PNPM_VERSION}" setup_nodejs
|
||||
|
||||
@@ -424,7 +424,7 @@ set -a
|
||||
. ${INSTALL_DIR}/.env
|
||||
set +a
|
||||
|
||||
/usr/bin/node ${APP_DIR}/dist/main.js "\$@"
|
||||
/usr/bin/node --no-warnings ${APP_DIR}/dist/main.js "\$@"
|
||||
EOF
|
||||
chmod +x "$ML_DIR"/ml_start.sh "$APP_DIR"/bin/start.sh
|
||||
ln -sf "$APP_DIR"/cli/bin/immich /usr/bin/immich
|
||||
|
||||
69
install/nightscout-install.sh
Normal file
69
install/nightscout-install.sh
Normal file
@@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: aendel
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/nightscout/cgm-remote-monitor
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
openssl
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
MONGO_VERSION="8.0" setup_mongodb
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
fetch_and_deploy_gh_release "nightscout" "nightscout/cgm-remote-monitor" "tarball"
|
||||
|
||||
msg_info "Installing Nightscout"
|
||||
$STD npm install --prefix /opt/nightscout
|
||||
msg_ok "Installed Nightscout"
|
||||
|
||||
msg_info "Creating Service"
|
||||
useradd -s /bin/bash -m nightscout
|
||||
chown -R nightscout:nightscout /opt/nightscout
|
||||
API_SECRET=$(openssl rand -hex 16)
|
||||
cat <<EOF >/opt/nightscout/my.env
|
||||
MONGO_CONNECTION=mongodb://127.0.0.1:27017/nightscout
|
||||
BASE_URL=http://localhost:1337
|
||||
API_SECRET=${API_SECRET}
|
||||
DISPLAY_UNITS=mg/dl
|
||||
ENABLE=careportal boluscalc food bwp cage sage iage iob cob basal ar2 rawbg pushover bgi pump openaps pvb linear custom
|
||||
INSECURE_USE_HTTP=true
|
||||
EOF
|
||||
chown nightscout:nightscout /opt/nightscout/my.env
|
||||
cat <<EOF >/etc/systemd/system/nightscout.service
|
||||
[Unit]
|
||||
Description=Nightscout CGM Service
|
||||
After=network.target mongodb.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=nightscout
|
||||
WorkingDirectory=/opt/nightscout
|
||||
EnvironmentFile=/opt/nightscout/my.env
|
||||
ExecStart=/usr/bin/npm start
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now nightscout
|
||||
msg_ok "Created Service"
|
||||
|
||||
{
|
||||
echo "Nightscout Credentials"
|
||||
echo "API_SECRET: ${API_SECRET}"
|
||||
} >> ~/nightscout.creds
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@@ -36,7 +36,8 @@ $STD npm ci
|
||||
$STD npm run set:sqlite
|
||||
$STD npm run set:oss
|
||||
rm -rf server/private
|
||||
$STD npm run build:sqlite
|
||||
$STD npm run db:generate
|
||||
$STD npm run build
|
||||
$STD npm run build:cli
|
||||
cp -R .next/standalone ./
|
||||
|
||||
@@ -177,7 +178,6 @@ http:
|
||||
servers:
|
||||
- url: "http://$LOCAL_IP:3000"
|
||||
EOF
|
||||
$STD npm run db:sqlite:generate
|
||||
$STD npm run db:sqlite:push
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
@@ -19,7 +19,7 @@ setup_deb822_repo \
|
||||
"ansible" \
|
||||
"https://keyserver.ubuntu.com/pks/lookup?fingerprint=on&op=get&search=0x6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367" \
|
||||
"http://ppa.launchpad.net/ansible/ansible/ubuntu" \
|
||||
"jammy"
|
||||
"noble"
|
||||
$STD apt install -y ansible
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
|
||||
@@ -14,14 +14,14 @@ network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y \
|
||||
unrar-free
|
||||
$STD apt install -y unrar-free
|
||||
ln -sf /usr/bin/unrar-free /usr/bin/unrar
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
mkdir -p /etc/shelfmark
|
||||
cat <<EOF >/etc/shelfmark/.env
|
||||
DOCKERMODE=false
|
||||
URL_BASE=""
|
||||
CONFIG_DIR=/etc/shelfmark
|
||||
TMP_DIR=/tmp/shelfmark
|
||||
ENABLE_LOGGING=true
|
||||
@@ -111,7 +111,6 @@ else
|
||||
ffmpeg \
|
||||
chromium-common \
|
||||
chromium \
|
||||
chromium-driver \
|
||||
python3-tk
|
||||
msg_ok "Installed internal bypasser dependencies"
|
||||
fi
|
||||
|
||||
@@ -2763,7 +2763,7 @@ Advanced:
|
||||
[[ -n "${CT_TIMEZONE:-}" ]] && echo -e "${INFO}${BOLD}${DGN}Timezone: ${BGN}$CT_TIMEZONE${CL}"
|
||||
[[ "$APT_CACHER" == "yes" ]] && echo -e "${INFO}${BOLD}${DGN}APT Cacher: ${BGN}$APT_CACHER_IP${CL}"
|
||||
echo -e "${SEARCH}${BOLD}${DGN}Verbose Mode: ${BGN}$VERBOSE${CL}"
|
||||
echo -e "${CREATING}${BOLD}${RD}Creating a ${APP} LXC using the above advanced settings${CL}"
|
||||
echo -e "${CREATING}${BOLD}${RD}Creating an LXC of ${APP} using the above advanced settings${CL}"
|
||||
}
|
||||
|
||||
# ==============================================================================
|
||||
|
||||
@@ -488,7 +488,7 @@ spinner() {
|
||||
local i=0
|
||||
while true; do
|
||||
local index=$((i++ % ${#chars[@]}))
|
||||
printf "\r\033[2K%s %b" "${CS_YWB}${chars[$index]}${CS_CL}" "${CS_YWB}${msg}${CS_CL}"
|
||||
printf "\r\033[2K%s %b" "${CS_YWB}${TAB}${chars[$index]}${TAB}${CS_CL}" "${CS_YWB}${msg}${CS_CL}"
|
||||
sleep 0.1
|
||||
done
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user