mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-12-14 11:13:27 +01:00
Compare commits
9 Commits
2025-09-26
...
2025-09-27
| Author | SHA1 | Date | |
|---|---|---|---|
| 7ddc50bfe7 | |||
| 484a46beb1 | |||
| b85d1e5062 | |||
| 05e41f67e1 | |||
| bfe6445c64 | |||
| ffde3a731c | |||
| d5b9da8f5f | |||
| 1b8d790a14 | |||
| 175b925ae4 |
10
CHANGELOG.md
10
CHANGELOG.md
@ -10,8 +10,18 @@
|
||||
> [!CAUTION]
|
||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||
|
||||
## 2025-09-28
|
||||
|
||||
## 2025-09-27
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- GoAway: Make admin password aquisition more reliable [@tremor021](https://github.com/tremor021) ([#7946](https://github.com/community-scripts/ProxmoxVE/pull/7946))
|
||||
- MeTube: Various fixes [@vhsdream](https://github.com/vhsdream) ([#7936](https://github.com/community-scripts/ProxmoxVE/pull/7936))
|
||||
- Oddo: Fix typo in update procedure [@tremor021](https://github.com/tremor021) ([#7941](https://github.com/community-scripts/ProxmoxVE/pull/7941))
|
||||
|
||||
## 2025-09-26
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
119
ct/metube.sh
119
ct/metube.sh
@ -29,59 +29,53 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Stopping ${APP} Service"
|
||||
systemctl stop metube
|
||||
msg_ok "Stopped ${APP} Service"
|
||||
|
||||
msg_info "Backing up Old Installation"
|
||||
if [[ -d /opt/metube_bak ]]; then
|
||||
rm -rf /opt/metube_bak
|
||||
if [[ $(echo ":$PATH:" != *":/usr/local/bin:"*) ]]; then
|
||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc
|
||||
source ~/.bashrc
|
||||
if ! command -v deno &>/dev/null; then
|
||||
export DENO_INSTALL="/usr/local"
|
||||
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
||||
else
|
||||
$STD deno upgrade
|
||||
fi
|
||||
fi
|
||||
mv /opt/metube /opt/metube_bak
|
||||
msg_ok "Backup created"
|
||||
|
||||
msg_info "Cloning Latest ${APP} Release"
|
||||
$STD git clone https://github.com/alexta69/metube /opt/metube
|
||||
msg_ok "Cloned ${APP}"
|
||||
if check_for_gh_release "metube" "alexta69/metube"; then
|
||||
msg_info "Stopping ${APP} Service"
|
||||
systemctl stop metube
|
||||
msg_ok "Stopped ${APP} Service"
|
||||
|
||||
msg_info "Building Frontend"
|
||||
cd /opt/metube/ui
|
||||
$STD npm install
|
||||
$STD node_modules/.bin/ng build
|
||||
msg_ok "Built Frontend"
|
||||
msg_info "Backing up Old Installation"
|
||||
if [[ -d /opt/metube_bak ]]; then
|
||||
rm -rf /opt/metube_bak
|
||||
fi
|
||||
mv /opt/metube /opt/metube_bak
|
||||
msg_ok "Backup created"
|
||||
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
fetch_and_deploy_gh_release "metube" "alexta69/metube" "tarball" "latest"
|
||||
|
||||
msg_info "Setting up Python Environment (uv)"
|
||||
$STD uv venv /opt/metube/.venv
|
||||
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
|
||||
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
|
||||
$STD /opt/metube/.venv/bin/python -m pip install pipenv
|
||||
msg_ok "Python Environment Ready"
|
||||
msg_info "Building Frontend"
|
||||
cd /opt/metube/ui
|
||||
$STD npm install
|
||||
$STD node_modules/.bin/ng build
|
||||
msg_ok "Built Frontend"
|
||||
|
||||
msg_info "Installing Backend Requirements"
|
||||
cd /opt/metube
|
||||
$STD /opt/metube/.venv/bin/pipenv install
|
||||
msg_ok "Installed Backend"
|
||||
|
||||
msg_info "Restoring Environment File"
|
||||
if [[ -f /opt/metube_bak/.env ]]; then
|
||||
cp /opt/metube_bak/.env /opt/metube/.env
|
||||
fi
|
||||
msg_ok "Restored .env"
|
||||
|
||||
if [[ ! -d /opt/metube/.venv ]]; then
|
||||
msg_info "Migrating to uv-based environment"
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
$STD uv venv /opt/metube/.venv
|
||||
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
|
||||
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
|
||||
$STD /opt/metube/.venv/bin/python -m pip install pipenv
|
||||
$STD /opt/metube/.venv/bin/pipenv install
|
||||
$STD /opt/metube/.venv/bin/pipenv update yt-dlp
|
||||
|
||||
msg_info "Patching systemd Service"
|
||||
cat <<EOF >/etc/systemd/system/metube.service
|
||||
msg_info "Installing Backend Requirements"
|
||||
cd /opt/metube
|
||||
$STD uv sync --frozen --no-dev
|
||||
msg_ok "Installed Backend"
|
||||
|
||||
msg_info "Restoring Environment File"
|
||||
if [[ -f /opt/metube_bak/.env ]]; then
|
||||
cp /opt/metube_bak/.env /opt/metube/.env
|
||||
fi
|
||||
msg_ok "Restored .env"
|
||||
|
||||
if grep -q 'pipenv' /etc/systemd/system/metube.service; then
|
||||
msg_info "Patching systemd Service"
|
||||
cat <<EOF >/etc/systemd/system/metube.service
|
||||
[Unit]
|
||||
Description=Metube - YouTube Downloader
|
||||
After=network.target
|
||||
@ -90,30 +84,31 @@ After=network.target
|
||||
Type=simple
|
||||
WorkingDirectory=/opt/metube
|
||||
EnvironmentFile=/opt/metube/.env
|
||||
ExecStart=/opt/metube/.venv/bin/pipenv run python3 app/main.py
|
||||
ExecStart=/opt/metube/.venv/bin/python3 app/main.py
|
||||
Restart=always
|
||||
User=root
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
msg_ok "Patched systemd Service"
|
||||
msg_ok "Patched systemd Service"
|
||||
fi
|
||||
$STD systemctl daemon-reload
|
||||
msg_ok "Service Updated"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/metube_bak
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleaned Up"
|
||||
|
||||
msg_info "Starting ${APP} Service"
|
||||
systemctl start metube
|
||||
sleep 1
|
||||
msg_ok "Started ${APP} Service"
|
||||
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
$STD systemctl daemon-reload
|
||||
msg_ok "Service Updated"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf /opt/metube_bak
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
msg_ok "Cleaned Up"
|
||||
|
||||
msg_info "Starting ${APP} Service"
|
||||
systemctl enable -q --now metube
|
||||
sleep 1
|
||||
msg_ok "Started ${APP} Service"
|
||||
|
||||
msg_ok "Updated Successfully!"
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@ -29,7 +29,7 @@ function update_script() {
|
||||
exit 1
|
||||
fi
|
||||
if ! [[ $(dpkg -s python3-lxml-html-clean 2>/dev/null) ]]; then
|
||||
$STD apt-get install python-lxml
|
||||
$STD apt-get install python3-lxml
|
||||
curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/universe/l/lxml-html-clean/python3-lxml-html-clean_0.1.1-1_all.deb" -o /opt/python3-lxml-html-clean.deb
|
||||
$STD dpkg -i /opt/python3-lxml-html-clean.deb
|
||||
rm -f /opt/python3-lxml-html-clean.deb
|
||||
|
||||
@ -1,8 +1,123 @@
|
||||
[
|
||||
{
|
||||
"name": "jellyfin/jellyfin",
|
||||
"version": "v10.10.7",
|
||||
"date": "2025-04-05T19:14:59Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.5",
|
||||
"date": "2025-09-27T20:59:46Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.77.3-stable",
|
||||
"date": "2025-09-27T18:17:59Z"
|
||||
},
|
||||
{
|
||||
"name": "Luligu/matterbridge",
|
||||
"version": "3.2.9",
|
||||
"date": "2025-09-27T17:58:53Z"
|
||||
},
|
||||
{
|
||||
"name": "wizarrrr/wizarr",
|
||||
"version": "v2025.9.6",
|
||||
"date": "2025-09-26T22:38:58Z"
|
||||
"version": "v2025.9.7",
|
||||
"date": "2025-09-27T17:52:44Z"
|
||||
},
|
||||
{
|
||||
"name": "raydak-labs/configarr",
|
||||
"version": "v1.16.0",
|
||||
"date": "2025-09-27T16:19:27Z"
|
||||
},
|
||||
{
|
||||
"name": "kimai/kimai",
|
||||
"version": "2.40.0",
|
||||
"date": "2025-09-27T16:19:26Z"
|
||||
},
|
||||
{
|
||||
"name": "FreshRSS/FreshRSS",
|
||||
"version": "1.27.1",
|
||||
"date": "2025-09-27T13:07:26Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v13.0.3",
|
||||
"date": "2025-09-26T13:53:41Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.208.1",
|
||||
"date": "2025-09-27T12:57:22Z"
|
||||
},
|
||||
{
|
||||
"name": "pommee/goaway",
|
||||
"version": "v0.62.3",
|
||||
"date": "2025-09-27T12:37:26Z"
|
||||
},
|
||||
{
|
||||
"name": "javedh-dev/tracktor",
|
||||
"version": "0.3.18",
|
||||
"date": "2025-09-27T10:32:09Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-ui@15.8.1",
|
||||
"date": "2025-09-27T09:57:41Z"
|
||||
},
|
||||
{
|
||||
"name": "lazy-media/Reactive-Resume",
|
||||
"version": "v1.2.5",
|
||||
"date": "2025-09-27T09:28:11Z"
|
||||
},
|
||||
{
|
||||
"name": "jupyter/notebook",
|
||||
"version": "v7.4.7",
|
||||
"date": "2025-09-27T08:00:30Z"
|
||||
},
|
||||
{
|
||||
"name": "Kozea/Radicale",
|
||||
"version": "v3.5.7",
|
||||
"date": "2025-09-27T06:16:00Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.23.71",
|
||||
"date": "2025-09-27T06:00:26Z"
|
||||
},
|
||||
{
|
||||
"name": "silverbulletmd/silverbullet",
|
||||
"version": "2.1.5",
|
||||
"date": "2025-09-27T04:43:40Z"
|
||||
},
|
||||
{
|
||||
"name": "firefly-iii/firefly-iii",
|
||||
"version": "v6.4.0",
|
||||
"date": "2025-09-13T16:38:21Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.37.0",
|
||||
"date": "2025-08-27T20:03:52Z"
|
||||
},
|
||||
{
|
||||
"name": "Dolibarr/dolibarr",
|
||||
"version": "22.0.2",
|
||||
"date": "2025-09-27T01:43:20Z"
|
||||
},
|
||||
{
|
||||
"name": "cross-seed/cross-seed",
|
||||
"version": "v6.13.5",
|
||||
"date": "2025-09-27T01:10:59Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.4.20",
|
||||
"date": "2025-09-27T00:27:06Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v3.6.2",
|
||||
"date": "2025-07-17T12:08:03Z"
|
||||
},
|
||||
{
|
||||
"name": "coder/code-server",
|
||||
@ -19,20 +134,15 @@
|
||||
"version": "2025.9.4",
|
||||
"date": "2025-09-19T21:09:39Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.208.0",
|
||||
"date": "2025-09-26T21:26:14Z"
|
||||
},
|
||||
{
|
||||
"name": "Ombi-app/Ombi",
|
||||
"version": "v4.47.1",
|
||||
"date": "2025-01-05T21:14:23Z"
|
||||
},
|
||||
{
|
||||
"name": "firefly-iii/firefly-iii",
|
||||
"version": "v6.4.0",
|
||||
"date": "2025-09-13T16:38:21Z"
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.3.5",
|
||||
"date": "2025-09-25T06:23:28Z"
|
||||
},
|
||||
{
|
||||
"name": "bastienwirtz/homer",
|
||||
@ -49,16 +159,6 @@
|
||||
"version": "v3.5.0-1.rc.1",
|
||||
"date": "2025-09-26T18:34:22Z"
|
||||
},
|
||||
{
|
||||
"name": "javedh-dev/tracktor",
|
||||
"version": "0.3.16",
|
||||
"date": "2025-09-26T16:33:48Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v13.0.3",
|
||||
"date": "2025-09-26T13:53:41Z"
|
||||
},
|
||||
{
|
||||
"name": "bunkerity/bunkerweb",
|
||||
"version": "v1.6.4",
|
||||
@ -69,11 +169,6 @@
|
||||
"version": "n8n@1.112.6",
|
||||
"date": "2025-09-26T10:56:27Z"
|
||||
},
|
||||
{
|
||||
"name": "silverbulletmd/silverbullet",
|
||||
"version": "2.1.4",
|
||||
"date": "2025-09-26T10:20:10Z"
|
||||
},
|
||||
{
|
||||
"name": "traefik/traefik",
|
||||
"version": "v3.5.3",
|
||||
@ -84,21 +179,11 @@
|
||||
"version": "v4.13.1",
|
||||
"date": "2025-09-25T15:43:49Z"
|
||||
},
|
||||
{
|
||||
"name": "jupyter/notebook",
|
||||
"version": "v7.4.6",
|
||||
"date": "2025-09-26T06:40:06Z"
|
||||
},
|
||||
{
|
||||
"name": "emqx/emqx",
|
||||
"version": "e6.0.0-beta.1",
|
||||
"date": "2025-09-26T06:28:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.23.69",
|
||||
"date": "2025-09-26T05:55:57Z"
|
||||
},
|
||||
{
|
||||
"name": "nzbgetcom/nzbget",
|
||||
"version": "v25.3",
|
||||
@ -106,18 +191,8 @@
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.12.2",
|
||||
"date": "2025-09-24T21:19:20Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.4.20",
|
||||
"date": "2025-09-26T00:27:15Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v3.6.2",
|
||||
"date": "2025-07-17T12:08:03Z"
|
||||
"version": "v0.12.3",
|
||||
"date": "2025-09-26T05:08:26Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
@ -159,16 +234,6 @@
|
||||
"version": "v3.2.2-beta",
|
||||
"date": "2025-09-25T18:44:52Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.3.5",
|
||||
"date": "2025-09-25T06:23:28Z"
|
||||
},
|
||||
{
|
||||
"name": "pommee/goaway",
|
||||
"version": "v0.62.2",
|
||||
"date": "2025-09-25T17:21:23Z"
|
||||
},
|
||||
{
|
||||
"name": "Threadfin/Threadfin",
|
||||
"version": "1.2.39",
|
||||
@ -229,11 +294,6 @@
|
||||
"version": "v4.1.4",
|
||||
"date": "2025-09-02T14:26:24Z"
|
||||
},
|
||||
{
|
||||
"name": "jellyfin/jellyfin",
|
||||
"version": "v10.10.7",
|
||||
"date": "2025-04-05T19:14:59Z"
|
||||
},
|
||||
{
|
||||
"name": "MediaBrowser/Emby.Releases",
|
||||
"version": "4.9.1.2",
|
||||
@ -249,11 +309,6 @@
|
||||
"version": "v0.10.2",
|
||||
"date": "2025-09-24T18:23:36Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.77.4-nightly",
|
||||
"date": "2025-09-24T18:23:13Z"
|
||||
},
|
||||
{
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.26.3",
|
||||
@ -274,11 +329,6 @@
|
||||
"version": "v1.9.10",
|
||||
"date": "2025-09-24T13:49:53Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-typescript@4.0.9",
|
||||
"date": "2025-09-24T12:52:59Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v11.3.1",
|
||||
@ -429,11 +479,6 @@
|
||||
"version": "v1.11.0",
|
||||
"date": "2025-09-21T02:53:18Z"
|
||||
},
|
||||
{
|
||||
"name": "Luligu/matterbridge",
|
||||
"version": "3.2.8",
|
||||
"date": "2025-09-20T22:08:35Z"
|
||||
},
|
||||
{
|
||||
"name": "fallenbagel/jellyseerr",
|
||||
"version": "preview-fix-watchlist-error",
|
||||
@ -444,11 +489,6 @@
|
||||
"version": "v1.11.2",
|
||||
"date": "2025-09-20T20:15:40Z"
|
||||
},
|
||||
{
|
||||
"name": "cross-seed/cross-seed",
|
||||
"version": "v6.13.4",
|
||||
"date": "2025-09-20T20:03:29Z"
|
||||
},
|
||||
{
|
||||
"name": "traccar/traccar",
|
||||
"version": "v6.10.0",
|
||||
@ -464,11 +504,6 @@
|
||||
"version": "v0.17.0",
|
||||
"date": "2025-09-19T22:23:28Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.37.0",
|
||||
"date": "2025-08-27T20:03:52Z"
|
||||
},
|
||||
{
|
||||
"name": "hargata/lubelog",
|
||||
"version": "v1.5.2",
|
||||
@ -629,11 +664,6 @@
|
||||
"version": "v1.3.4",
|
||||
"date": "2025-09-15T20:48:02Z"
|
||||
},
|
||||
{
|
||||
"name": "Kozea/Radicale",
|
||||
"version": "v3.5.6",
|
||||
"date": "2025-09-15T18:43:31Z"
|
||||
},
|
||||
{
|
||||
"name": "apache/tika",
|
||||
"version": "3.2.0",
|
||||
@ -664,11 +694,6 @@
|
||||
"version": "flowise@3.0.7",
|
||||
"date": "2025-09-15T16:08:09Z"
|
||||
},
|
||||
{
|
||||
"name": "Dolibarr/dolibarr",
|
||||
"version": "22.0.1",
|
||||
"date": "2025-09-15T16:01:02Z"
|
||||
},
|
||||
{
|
||||
"name": "linuxserver/Heimdall",
|
||||
"version": "v2.7.6",
|
||||
@ -699,11 +724,6 @@
|
||||
"version": "v4.5.4",
|
||||
"date": "2025-09-15T00:49:53Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.4",
|
||||
"date": "2025-09-14T19:51:50Z"
|
||||
},
|
||||
{
|
||||
"name": "ErsatzTV/ErsatzTV",
|
||||
"version": "v25.6.0",
|
||||
@ -829,11 +849,6 @@
|
||||
"version": "v4.5.1",
|
||||
"date": "2025-09-04T16:02:49Z"
|
||||
},
|
||||
{
|
||||
"name": "raydak-labs/configarr",
|
||||
"version": "v1.15.1",
|
||||
"date": "2025-09-04T14:00:59Z"
|
||||
},
|
||||
{
|
||||
"name": "plankanban/planka",
|
||||
"version": "planka-1.0.4",
|
||||
@ -944,11 +959,6 @@
|
||||
"version": "v2.10.2",
|
||||
"date": "2025-08-23T03:10:31Z"
|
||||
},
|
||||
{
|
||||
"name": "lazy-media/Reactive-Resume",
|
||||
"version": "v1.2.4",
|
||||
"date": "2025-08-22T07:40:01Z"
|
||||
},
|
||||
{
|
||||
"name": "karlomikus/bar-assistant",
|
||||
"version": "v5.8.0",
|
||||
@ -964,11 +974,6 @@
|
||||
"version": "v1.1.07",
|
||||
"date": "2025-08-18T16:13:54Z"
|
||||
},
|
||||
{
|
||||
"name": "FreshRSS/FreshRSS",
|
||||
"version": "1.27.0",
|
||||
"date": "2025-08-18T16:03:26Z"
|
||||
},
|
||||
{
|
||||
"name": "redis/redis",
|
||||
"version": "8.2.1",
|
||||
@ -1029,11 +1034,6 @@
|
||||
"version": "1012-08-09",
|
||||
"date": "2025-08-10T13:50:58Z"
|
||||
},
|
||||
{
|
||||
"name": "kimai/kimai",
|
||||
"version": "2.38.0",
|
||||
"date": "2025-08-08T21:47:19Z"
|
||||
},
|
||||
{
|
||||
"name": "MariaDB/server",
|
||||
"version": "mariadb-12.0.2",
|
||||
|
||||
@ -40,7 +40,11 @@ WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now goaway
|
||||
sleep 10
|
||||
ADMIN_PASS=$(awk -F': ' '/Randomly generated admin password:/ {print $2}' /var/log/goaway.log | tail -n1)
|
||||
for i in {1..30}; do
|
||||
ADMIN_PASS=$(awk -F': ' "/Randomly generated admin password:/ {print \$2; exit}" /var/log/goaway.log)
|
||||
[ -n "$ADMIN_PASS" ] && break
|
||||
sleep 1
|
||||
done
|
||||
{
|
||||
echo "GoAway Credentials"
|
||||
echo "Admin User: admin"
|
||||
|
||||
@ -22,7 +22,6 @@ $STD apt-get install -y --no-install-recommends \
|
||||
g++ \
|
||||
musl-dev \
|
||||
ffmpeg \
|
||||
git \
|
||||
make \
|
||||
ca-certificates
|
||||
msg_ok "Installed Dependencies"
|
||||
@ -30,25 +29,29 @@ msg_ok "Installed Dependencies"
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
|
||||
msg_info "Installing Deno"
|
||||
export DENO_INSTALL="/usr/local"
|
||||
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
||||
[[ ":$PATH:" != *":/usr/local/bin:"* ]] &&
|
||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc &&
|
||||
source ~/.bashrc
|
||||
msg_ok "Installed Deno"
|
||||
|
||||
fetch_and_deploy_gh_release "metube" "alexta69/metube" "tarball" "latest"
|
||||
|
||||
msg_info "Installing MeTube"
|
||||
$STD git clone https://github.com/alexta69/metube /opt/metube
|
||||
cd /opt/metube/ui
|
||||
$STD npm install
|
||||
$STD node_modules/.bin/ng build
|
||||
cd /opt/metube
|
||||
$STD uv venv /opt/metube/.venv
|
||||
$STD /opt/metube/.venv/bin/python -m ensurepip --upgrade
|
||||
$STD /opt/metube/.venv/bin/python -m pip install --upgrade pip
|
||||
$STD /opt/metube/.venv/bin/python -m pip install pipenv
|
||||
$STD /opt/metube/.venv/bin/pipenv install
|
||||
$STD /opt/metube/.venv/bin/pipenv update yt-dlp
|
||||
$STD uv sync --frozen --no-dev
|
||||
|
||||
mkdir -p /opt/metube_downloads /opt/metube_downloads/.metube /opt/metube_downloads/music /opt/metube_downloads/videos
|
||||
cat <<EOF >/opt/metube/.env
|
||||
DOWNLOAD_DIR=/opt/metube_downloads
|
||||
STATE_DIR=/opt/metube_downloads/.metube
|
||||
TEMP_DIR=/opt/metube_downloads
|
||||
YTDL_OPTIONS={"trim_file_name":10}
|
||||
YTDL_OPTIONS={"trim_file_name":10,"extractor_args":{"youtube":{"player_client":["default","-tv_simply"]}}}
|
||||
EOF
|
||||
msg_ok "Installed MeTube"
|
||||
|
||||
@ -62,7 +65,7 @@ After=network.target
|
||||
Type=simple
|
||||
WorkingDirectory=/opt/metube
|
||||
EnvironmentFile=/opt/metube/.env
|
||||
ExecStart=/opt/metube/.venv/bin/pipenv run python3 app/main.py
|
||||
ExecStart=/opt/metube/.venv/bin/python3 app/main.py
|
||||
Restart=always
|
||||
User=root
|
||||
|
||||
|
||||
Reference in New Issue
Block a user