Compare commits

..

14 Commits

Author SHA1 Message Date
CanbiZ
8984dbf601 Asterisk: add interactive version selection to installer
The install script now fetches available Asterisk versions (Standard, LTS, Certified) from the official website and prompts the user to select which version to install. The download and installation process adapts based on the user's choice. Also updated package management commands from 'apt-get' to 'apt' for consistency.
2025-10-29 16:27:28 +01:00
CanbiZ
5a01dd2ec9 Add protobuf dependencies to installation script 2025-10-29 15:52:17 +01:00
community-scripts-pr-app[bot]
7aaaa9a71f Update CHANGELOG.md (#8723)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 14:44:38 +00:00
Tobias
cbc2ba1832 tracktor: refactor envfile (#8711)
* tracktor: refactor enfile

* tracktor: fix: update links

* tracktor: add: mechanic to update envfile
2025-10-29 15:44:10 +01:00
CanbiZ
ee02bc1977 Add missing dependencies to libretranslate-install.sh
Added missing dependencies for LibreTranslate installation.
2025-10-29 15:37:42 +01:00
CanbiZ
fda22e8890 typo 2025-10-29 14:33:22 +01:00
community-scripts-pr-app[bot]
6f52a6cff9 Update CHANGELOG.md (#8719)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 12:09:45 +00:00
CanbiZ
be539981f8 Dispatcharr: add folders in installer / add more build ressources (#8708) 2025-10-29 13:09:23 +01:00
community-scripts-pr-app[bot]
2009da9a79 Update versions.json (#8718)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 13:06:58 +01:00
community-scripts-pr-app[bot]
a5fb2c0fb6 Update CHANGELOG.md (#8717)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 12:06:51 +00:00
CanbiZ
ac32d7a304 LibreTranslate: bump torch version (#8710) 2025-10-29 13:06:31 +01:00
community-scripts-pr-app[bot]
3fe234b021 Update CHANGELOG.md (#8716)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-10-29 12:06:26 +00:00
CanbiZ
b9404efc57 Kimai / Ghost / ManageMyDamnLife: Switch to MariaDB (#8712)
Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-10-29 13:06:03 +01:00
CanbiZ
304de66ec1 Remove: MySQL (#8709) 2025-10-29 12:53:27 +01:00
12 changed files with 230 additions and 113 deletions

View File

@@ -12,6 +12,18 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
## 2025-10-29 ## 2025-10-29
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Dispatcharr: add folders in installer / add more build ressources [@MickLesk](https://github.com/MickLesk) ([#8708](https://github.com/community-scripts/ProxmoxVE/pull/8708))
- LibreTranslate: bump torch version [@MickLesk](https://github.com/MickLesk) ([#8710](https://github.com/community-scripts/ProxmoxVE/pull/8710))
- #### 🔧 Refactor
- tracktor: refactor envfile [@CrazyWolf13](https://github.com/CrazyWolf13) ([#8711](https://github.com/community-scripts/ProxmoxVE/pull/8711))
- Kimai / Ghost / ManageMyDamnLife: Switch to MariaDB [@MickLesk](https://github.com/MickLesk) ([#8712](https://github.com/community-scripts/ProxmoxVE/pull/8712))
## 2025-10-28 ## 2025-10-28
### 🚀 Updated Scripts ### 🚀 Updated Scripts

View File

@@ -7,7 +7,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
APP="Dispatcharr" APP="Dispatcharr"
var_tags="${var_tags:-media;arr}" var_tags="${var_tags:-media;arr}"
var_cpu="${var_cpu:-1}" var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"

View File

@@ -28,21 +28,24 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
setup_uv
if check_for_gh_release "libretranslate" "LibreTranslate/LibreTranslate"; then if check_for_gh_release "libretranslate" "LibreTranslate/LibreTranslate"; then
msg_info "Stopping $APP" msg_info "Stopping Service"
systemctl stop libretranslate systemctl stop libretranslate
msg_ok "Stopped $APP" msg_ok "Stopped Service"
msg_info "Updating $APP" msg_info "Updating LibreTranslate"
cd /opt/libretranslate cd /opt/libretranslate
source .venv/bin/activate source .venv/bin/activate
$STD pip install -U libretranslate $STD pip install -U libretranslate
msg_ok "Updated $APP" msg_ok "Updated LibreTranslate"
msg_info "Starting $APP" msg_info "Starting Service"
systemctl start libretranslate systemctl start libretranslate
msg_ok "Started $APP" msg_ok "Started Service"
msg_ok "Update Successful" msg_ok "Update Successfully!"
fi fi
exit exit
} }

View File

@@ -40,6 +40,29 @@ function update_script() {
sed -i 's|^EnvironmentFile=.*|EnvironmentFile=/opt/tracktor.env|' /etc/systemd/system/tracktor.service sed -i 's|^EnvironmentFile=.*|EnvironmentFile=/opt/tracktor.env|' /etc/systemd/system/tracktor.service
systemctl daemon-reload systemctl daemon-reload
fi fi
if [ ! -d "/opt/tracktor-data/uploads" ]; then
mkdir -p /opt/tracktor-data/{uploads,logs}
EXISTING_AUTH_PIN=$(grep '^AUTH_PIN=' /opt/tracktor.env 2>/dev/null | cut -d'=' -f2)
AUTH_PIN=${EXISTING_AUTH_PIN:-123456}
cat <<EOF >/opt/tracktor.env
NODE_ENV=production
DB_PATH=/opt/tracktor-data/tracktor.db
UPLOADS_DIR="/opt/tracktor-data/uploads"
LOG_DIR="/opt/tracktor-data/logs"
# If server host is not set by default it will run on all interfaces - 0.0.0.0
# SERVER_HOST=""
SERVER_PORT=3000
# Set this if you want to secure your endpoints otherwise default will be "*"
CORS_ORIGINS="*"
# Set this if you are using backend and frontend separately.
# PUBLIC_API_BASE_URL=""
LOG_REQUESTS=true
LOG_LEVEL="info"
AUTH_PIN=${AUTH_PIN}
# PUBLIC_DEMO_MODE=false
# FORCE_DATA_SEED=false
EOF
fi
msg_ok "Corrected Services" msg_ok "Corrected Services"
setup_nodejs setup_nodejs

View File

@@ -19,7 +19,7 @@
"type": "default", "type": "default",
"script": "ct/dispatcharr.sh", "script": "ct/dispatcharr.sh",
"resources": { "resources": {
"cpu": 1, "cpu": 2,
"ram": 2048, "ram": 2048,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",

View File

@@ -9,9 +9,9 @@
"updateable": true, "updateable": true,
"privileged": false, "privileged": false,
"interface_port": 3000, "interface_port": 3000,
"documentation": "https://tracktor.bytedge.in/introduction.html", "documentation": "https://github.com/javedh-dev/tracktor/tree/main/docs",
"config_path": "/opt/tracktor.env", "config_path": "/opt/tracktor.env",
"website": "https://tracktor.bytedge.in/", "website": "https://github.com/javedh-dev/tracktor",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tracktor.webp", "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tracktor.webp",
"description": "Tracktor is an open-source web application for comprehensive vehicle management.\nEasily track fuel consumption, maintenance, insurance, and regulatory documents for all your vehicles in one place.", "description": "Tracktor is an open-source web application for comprehensive vehicle management.\nEasily track fuel consumption, maintenance, insurance, and regulatory documents for all your vehicles in one place.",
"install_methods": [ "install_methods": [

View File

@@ -1,4 +1,84 @@
[ [
{
"name": "element-hq/synapse",
"version": "v1.141.0",
"date": "2025-10-29T11:45:43Z"
},
{
"name": "zitadel/zitadel",
"version": "v4.6.1",
"date": "2025-10-29T10:15:50Z"
},
{
"name": "cockpit-project/cockpit",
"version": "350",
"date": "2025-10-29T09:51:00Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.14.2",
"date": "2025-10-29T08:37:03Z"
},
{
"name": "evcc-io/evcc",
"version": "0.209.4",
"date": "2025-10-29T08:06:31Z"
},
{
"name": "apache/cassandra",
"version": "cassandra-5.0.6",
"date": "2025-10-29T07:40:47Z"
},
{
"name": "fuma-nama/fumadocs",
"version": "create-fumadocs-app@16.0.7",
"date": "2025-10-29T06:44:29Z"
},
{
"name": "SigNoz/signoz",
"version": "v0.99.0",
"date": "2025-10-29T06:32:09Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.24.206",
"date": "2025-10-29T05:53:41Z"
},
{
"name": "henrygd/beszel",
"version": "v0.15.2",
"date": "2025-10-29T05:26:32Z"
},
{
"name": "openobserve/openobserve",
"version": "v0.15.3",
"date": "2025-10-29T05:15:45Z"
},
{
"name": "outline/outline",
"version": "v1.0.1",
"date": "2025-10-29T03:25:13Z"
},
{
"name": "ollama/ollama",
"version": "v0.12.6-rc1",
"date": "2025-10-16T16:36:25Z"
},
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-10-29T00:27:05Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{ {
"name": "runtipi/runtipi", "name": "runtipi/runtipi",
"version": "v4.5.5", "version": "v4.5.5",
@@ -34,10 +114,15 @@
"version": "v0.18.4", "version": "v0.18.4",
"date": "2025-04-05T19:12:57Z" "date": "2025-04-05T19:12:57Z"
}, },
{
"name": "keycloak/keycloak",
"version": "26.4.2",
"date": "2025-10-23T06:59:32Z"
},
{ {
"name": "javedh-dev/tracktor", "name": "javedh-dev/tracktor",
"version": "0.4.4", "version": "0.4.3",
"date": "2025-10-28T17:39:14Z" "date": "2025-10-28T17:32:48Z"
}, },
{ {
"name": "pi-hole/pi-hole", "name": "pi-hole/pi-hole",
@@ -49,11 +134,6 @@
"version": "v0.107.68", "version": "v0.107.68",
"date": "2025-10-23T14:26:29Z" "date": "2025-10-23T14:26:29Z"
}, },
{
"name": "fuma-nama/fumadocs",
"version": "fumadocs-openapi@9.7.1",
"date": "2025-10-28T16:09:45Z"
},
{ {
"name": "PrivateBin/PrivateBin", "name": "PrivateBin/PrivateBin",
"version": "2.0.2", "version": "2.0.2",
@@ -89,11 +169,6 @@
"version": "v2.16.36", "version": "v2.16.36",
"date": "2025-10-28T13:05:28Z" "date": "2025-10-28T13:05:28Z"
}, },
{
"name": "element-hq/synapse",
"version": "v1.140.0",
"date": "2025-10-14T15:57:12Z"
},
{ {
"name": "jenkinsci/jenkins", "name": "jenkinsci/jenkins",
"version": "jenkins-2.534", "version": "jenkins-2.534",
@@ -134,26 +209,11 @@
"version": "v1.8.1", "version": "v1.8.1",
"date": "2025-10-28T08:07:33Z" "date": "2025-10-28T08:07:33Z"
}, },
{
"name": "Jackett/Jackett",
"version": "v0.24.200",
"date": "2025-10-28T05:55:30Z"
},
{ {
"name": "gtsteffaniak/filebrowser", "name": "gtsteffaniak/filebrowser",
"version": "v0.8.11-beta", "version": "v0.8.11-beta",
"date": "2025-10-28T01:15:42Z" "date": "2025-10-28T01:15:42Z"
}, },
{
"name": "jeedom/core",
"version": "4.4.20",
"date": "2025-10-28T00:27:04Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.0.1",
"date": "2025-10-15T16:53:55Z"
},
{ {
"name": "OliveTin/OliveTin", "name": "OliveTin/OliveTin",
"version": "3000.2.1", "version": "3000.2.1",
@@ -174,16 +234,6 @@
"version": "v4.2.0", "version": "v4.2.0",
"date": "2025-10-27T16:56:40Z" "date": "2025-10-27T16:56:40Z"
}, },
{
"name": "keycloak/keycloak",
"version": "nightly",
"date": "2025-10-27T16:45:48Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.14.1",
"date": "2025-10-27T13:19:13Z"
},
{ {
"name": "Graylog2/graylog2-server", "name": "Graylog2/graylog2-server",
"version": "7.0.0-rc.2", "version": "7.0.0-rc.2",
@@ -204,11 +254,6 @@
"version": "e6.0.1-alpha.2", "version": "e6.0.1-alpha.2",
"date": "2025-10-27T09:36:30Z" "date": "2025-10-27T09:36:30Z"
}, },
{
"name": "zitadel/zitadel",
"version": "v4.5.0",
"date": "2025-10-27T08:29:32Z"
},
{ {
"name": "syncthing/syncthing", "name": "syncthing/syncthing",
"version": "v2.0.10", "version": "v2.0.10",
@@ -244,21 +289,11 @@
"version": "v1.30.4", "version": "v1.30.4",
"date": "2025-10-26T17:22:46Z" "date": "2025-10-26T17:22:46Z"
}, },
{
"name": "outline/outline",
"version": "v1.0.0",
"date": "2025-10-26T16:27:19Z"
},
{ {
"name": "wizarrrr/wizarr", "name": "wizarrrr/wizarr",
"version": "v2025.10.7", "version": "v2025.10.7",
"date": "2025-10-26T15:31:18Z" "date": "2025-10-26T15:31:18Z"
}, },
{
"name": "henrygd/beszel",
"version": "v0.15.0",
"date": "2025-10-26T15:20:23Z"
},
{ {
"name": "openhab/openhab-core", "name": "openhab/openhab-core",
"version": "5.1.0.M2", "version": "5.1.0.M2",
@@ -434,16 +469,6 @@
"version": "release-1.24.1", "version": "release-1.24.1",
"date": "2025-10-22T10:28:00Z" "date": "2025-10-22T10:28:00Z"
}, },
{
"name": "SigNoz/signoz",
"version": "v0.98.0",
"date": "2025-10-22T06:49:36Z"
},
{
"name": "morpheus65535/bazarr",
"version": "v1.5.3",
"date": "2025-09-20T12:12:33Z"
},
{ {
"name": "bluenviron/mediamtx", "name": "bluenviron/mediamtx",
"version": "v1.15.3", "version": "v1.15.3",
@@ -474,26 +499,11 @@
"version": "v1.36.3", "version": "v1.36.3",
"date": "2025-10-21T12:53:58Z" "date": "2025-10-21T12:53:58Z"
}, },
{
"name": "apache/cassandra",
"version": "5.0.6-tentative",
"date": "2025-10-21T11:42:35Z"
},
{
"name": "evcc-io/evcc",
"version": "0.209.3",
"date": "2025-10-21T10:53:07Z"
},
{ {
"name": "VictoriaMetrics/VictoriaMetrics", "name": "VictoriaMetrics/VictoriaMetrics",
"version": "pmm-6401-v1.128.0", "version": "pmm-6401-v1.128.0",
"date": "2025-10-21T08:30:52Z" "date": "2025-10-21T08:30:52Z"
}, },
{
"name": "openobserve/openobserve",
"version": "v0.16.0-rc1",
"date": "2025-10-21T00:37:47Z"
},
{ {
"name": "coder/code-server", "name": "coder/code-server",
"version": "v4.105.1", "version": "v4.105.1",
@@ -609,11 +619,6 @@
"version": "v1.5.0", "version": "v1.5.0",
"date": "2025-10-16T23:14:45Z" "date": "2025-10-16T23:14:45Z"
}, },
{
"name": "ollama/ollama",
"version": "v0.12.6",
"date": "2025-10-16T20:07:41Z"
},
{ {
"name": "minio/minio", "name": "minio/minio",
"version": "RELEASE.2025-10-15T17-29-55Z", "version": "RELEASE.2025-10-15T17-29-55Z",
@@ -659,11 +664,6 @@
"version": "2.3.3", "version": "2.3.3",
"date": "2025-10-15T13:18:27Z" "date": "2025-10-15T13:18:27Z"
}, },
{
"name": "cockpit-project/cockpit",
"version": "349",
"date": "2025-10-15T11:43:12Z"
},
{ {
"name": "blakeblackshear/frigate", "name": "blakeblackshear/frigate",
"version": "v0.14.1", "version": "v0.14.1",

View File

@@ -13,8 +13,65 @@ setting_up_container
network_check network_check
update_os update_os
ASTERISK_VERSIONS_URL="https://www.asterisk.org/downloads/asterisk/all-asterisk-versions/"
html=$(curl -fsSL "$ASTERISK_VERSIONS_URL")
LTS_VERSION=""
for major in 20 22 24 26; do
block=$(echo "$html" | awk "/Asterisk $major - LTS/,/<ul>/")
ver=$(echo "$block" | grep -oE 'Download Latest - [0-9]+\.[0-9]+(\.[0-9]+)?' | head -n1 | sed -E 's/.* - //')
if [ -n "$ver" ]; then
LTS_VERSION="$LTS_VERSION $ver"
fi
unset ver block
done
LTS_VERSION=$(echo "$LTS_VERSION" | xargs | tr ' ' '\n' | sort -V | tail -n1)
STD_VERSION=""
for major in 21 23 25 27; do
block=$(echo "$html" | awk "/Asterisk $major</,/<ul>/")
ver=$(echo "$block" | grep -oE 'Download (Latest - )?[0-9]+\.[0-9]+(\.[0-9]+)?' | head -n1 | sed -E 's/.* - //;s/Download //')
if [ -n "$ver" ]; then
STD_VERSION="$STD_VERSION $ver"
fi
unset ver block
done
STD_VERSION=$(echo "$STD_VERSION" | xargs | tr ' ' '\n' | sort -V | tail -n1)
cert_block=$(echo "$html" | awk '/Certified Asterisk/,/<ul>/')
CERT_VERSION=$(echo "$cert_block" | grep -oE 'Download Latest - [0-9]+\.[0-9]+-cert[0-9]+' | head -n1 | sed -E 's/.* - //')
cat <<EOF
Choose Asterisk version to install:
1) Latest Standard ($STD_VERSION)
2) Latest LTS ($LTS_VERSION)
3) Latest Certified ($CERT_VERSION)
EOF
read -rp "Enter choice [1-3]: " ASTERISK_CHOICE
case "$ASTERISK_CHOICE" in
2)
ASTERISK_VERSION="$LTS_VERSION"
;;
3)
ASTERISK_VERSION="$CERT_VERSION"
CERTIFIED=1
;;
*)
ASTERISK_VERSION="$STD_VERSION"
;;
esac
if [[ "$CERTIFIED" == "1" ]]; then
RELEASE="certified-asterisk-${ASTERISK_VERSION}.tar.gz"
DOWNLOAD_URL="https://downloads.asterisk.org/pub/telephony/certified-asterisk/$RELEASE"
else
RELEASE="asterisk-${ASTERISK_VERSION}.tar.gz"
DOWNLOAD_URL="https://downloads.asterisk.org/pub/telephony/asterisk/$RELEASE"
fi
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y \
libsrtp2-dev \ libsrtp2-dev \
build-essential \ build-essential \
libedit-dev \ libedit-dev \
@@ -25,13 +82,12 @@ $STD apt-get install -y \
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Downloading Asterisk" msg_info "Downloading Asterisk"
RELEASE=$(curl -fsSL https://downloads.asterisk.org/pub/telephony/asterisk/ | grep -o 'asterisk-[0-9]\+-current\.tar\.gz' | sort -V | tail -n1)
temp_file=$(mktemp) temp_file=$(mktemp)
curl -fsSL "https://downloads.asterisk.org/pub/telephony/asterisk/${RELEASE}" -o "$temp_file" curl -fsSL "$DOWNLOAD_URL" -o "$temp_file"
mkdir -p /opt/asterisk mkdir -p /opt/asterisk
tar zxf "$temp_file" --strip-components=1 -C /opt/asterisk tar zxf "$temp_file" --strip-components=1 -C /opt/asterisk
cd /opt/asterisk cd /opt/asterisk
msg_ok "Downloaded Asterisk" msg_ok "Downloaded Asterisk ($RELEASE)"
msg_info "Installing Asterisk" msg_info "Installing Asterisk"
$STD ./contrib/scripts/install_prereq install $STD ./contrib/scripts/install_prereq install
@@ -51,6 +107,7 @@ customize
msg_info "Cleaning up" msg_info "Cleaning up"
rm -f "$temp_file" rm -f "$temp_file"
$STD apt-get -y autoremove $STD apt -y autoremove
$STD apt-get -y autoclean $STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@@ -57,6 +57,11 @@ $STD uv pip install gunicorn gevent celery redis daphne
msg_ok "Installed Python Dependencies" msg_ok "Installed Python Dependencies"
msg_info "Configuring Dispatcharr" msg_info "Configuring Dispatcharr"
install -d -m 755 \
/data/{logos,recordings,plugins,db} \
/data/uploads/{m3us,epgs} \
/data/{m3us,epgs}
chown -R root:root /data
export DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}" export DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}"
export POSTGRES_DB=$DB_NAME export POSTGRES_DB=$DB_NAME
export POSTGRES_USER=$DB_USER export POSTGRES_USER=$DB_USER

View File

@@ -14,10 +14,14 @@ network_check
update_os update_os
msg_info "Installing dependencies" msg_info "Installing dependencies"
$STD apt install -y --no-install-recommends \ $STD apt install -y \
pkg-config \ pkg-config \
gcc \ build-essential \
g++ \ g++ \
cmake \
libprotobuf-dev \
protobuf-compiler \
libsentencepiece-dev \
libicu-dev libicu-dev
msg_ok "Installed dependencies" msg_ok "Installed dependencies"
@@ -32,13 +36,18 @@ setup_uv
fetch_and_deploy_gh_release "libretranslate" "LibreTranslate/LibreTranslate" fetch_and_deploy_gh_release "libretranslate" "LibreTranslate/LibreTranslate"
msg_info "Setup LibreTranslate (Patience)" msg_info "Setup LibreTranslate (Patience)"
TORCH_VERSION=$(grep -Eo '"torch ==[0-9]+\.[0-9]+\.[0-9]+' /opt/libretranslate/pyproject.toml | \
tail -n1 | sed 's/.*==//')
if [[ -z "$TORCH_VERSION" ]]; then
TORCH_VERSION="2.5.0"
fi
cd /opt/libretranslate cd /opt/libretranslate
$STD uv venv .venv $STD uv venv .venv
$STD source .venv/bin/activate $STD source .venv/bin/activate
$STD uv pip install --upgrade pip setuptools $STD uv pip install --upgrade pip setuptools
$STD uv pip install Babel==2.12.1 $STD uv pip install Babel==2.12.1
$STD .venv/bin/python scripts/compile_locales.py $STD .venv/bin/python scripts/compile_locales.py
$STD uv pip install torch==2.2.0 --extra-index-url https://download.pytorch.org/whl/cpu $STD uv pip install "torch==${TORCH_VERSION}" --extra-index-url https://download.pytorch.org/whl/cpu
$STD uv pip install "numpy<2" $STD uv pip install "numpy<2"
$STD uv pip install . $STD uv pip install .
$STD uv pip install libretranslate $STD uv pip install libretranslate

View File

@@ -20,18 +20,26 @@ msg_info "Configuring Tracktor"
cd /opt/tracktor cd /opt/tracktor
$STD npm install $STD npm install
$STD npm run build $STD npm run build
mkdir /opt/tracktor-data mkdir -p /opt/tracktor-data/{uploads,logs}
HOST_IP=$(hostname -I | awk '{print $1}') HOST_IP=$(hostname -I | awk '{print $1}')
cat <<EOF >/opt/tracktor.env cat <<EOF >/opt/tracktor.env
NODE_ENV=production NODE_ENV=production
PUBLIC_DEMO_MODE=false
DB_PATH=/opt/tracktor-data/tracktor.db DB_PATH=/opt/tracktor-data/tracktor.db
# Replace this URL if using behind reverse proxy for https traffic. Though it is optional and should work without changing UPLOADS_DIR="/opt/tracktor-data/uploads"
PUBLIC_API_BASE_URL=http://$HOST_IP:3000 LOG_DIR="/opt/tracktor-data/logs"
# Here add the reverse proxy url as well to avoid cross errors from the app. # If server host is not set by default it will run on all interfaces - 0.0.0.0
CORS_ORIGINS=http://$HOST_IP:3000 # SERVER_HOST=""
SERVER_PORT=3000
PORT=3000 PORT=3000
# Set this if you want to secure your endpoints otherwise default will be "*"
# CORS_ORIGINS="*"
# Set this if you are using backend and frontend separately. For lxc installation this is not needed
# PUBLIC_API_BASE_URL=""
LOG_REQUESTS=true
LOG_LEVEL="info"
AUTH_PIN=123456 AUTH_PIN=123456
# PUBLIC_DEMO_MODE=false
# FORCE_DATA_SEED=false
EOF EOF
msg_ok "Configured Tracktor" msg_ok "Configured Tracktor"