v1.4.2: move to git.bobyrev.com (GitHub account suspended), README photo + install command
Some checks failed
Publish Pro image to GHCR / build-push (push) Has been cancelled
Some checks failed
Publish Pro image to GHCR / build-push (push) Has been cancelled
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
|---|---|
|
||||
| Папка проекта | `/Volumes/ssd/Мои проекты/Открытые проекты/amnezia_web-PRO/` |
|
||||
| Заметки | Apple Notes → `МОИ ПРОЕКТЫ` → папка `amnezia_web-PRO` |
|
||||
| GitHub (публичный) | https://github.com/andrey271192/amnezia_web-PRO |
|
||||
| GitHub (публичный) | https://git.bobyrev.com/PCA/amnezia_web-PRO |
|
||||
| Ветка прода | `main` |
|
||||
| Старая закрытая панель (архив, не развивается) | `/Volumes/ssd/Мои проекты/Архив/amnezia_web-PRO_test/` |
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
## Установка
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Первый вход: `admin` / `admin`, пароль сменить сразу.
|
||||
|
||||
48
README.md
48
README.md
@@ -2,6 +2,22 @@
|
||||
|
||||
Полностью открытая веб-панель для сервера Amnezia: все функции бесплатны, без платных или закрытых редакций. Один репозиторий, один установщик.
|
||||
|
||||
<img src="docs/screenshots/panel-1.4.png" alt="Панель amnezia_web-PRO 1.4: пользователи AmneziaWG, Xray VLESS-Reality, протоколы и инстансы" width="780"/>
|
||||
|
||||
**Что умеет:** клиенты AmneziaWG (создать, выключить, дата отключения, .conf), установка протоколов из браузера (AmneziaWG 1.x/2.0/3.0/3.1, WireGuard), Xray VLESS‑Reality, Cloudflare WARP и каскад через другой сервер, Telegram MTProto‑прокси, домен сервера в конфигах, светлая/тёмная тема.
|
||||
|
||||
**Установка** (Ubuntu 22.04/24.04, Debian 12, под root; Docker поставится сам):
|
||||
|
||||
```bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Панель: `http://IP:8080`, вход — пароль `admin` (смените сразу). Код — [git.bobyrev.com/PCA/amnezia_web-PRO](https://git.bobyrev.com/PCA/amnezia_web-PRO) (GitHub-аккаунт заблокирован, старые ссылки raw.githubusercontent.com больше не работают).
|
||||
|
||||
## Что нового в 1.4.2
|
||||
|
||||
- **Проект переехал на [git.bobyrev.com/PCA/amnezia_web-PRO](https://git.bobyrev.com/PCA/amnezia_web-PRO)** — GitHub-аккаунт заблокирован. Установщик и обновление качают код оттуда. Старая команда с `raw.githubusercontent.com` больше не работает — используйте новую (выше).
|
||||
|
||||
## Что нового в 1.4.0
|
||||
|
||||
- **Xray VLESS‑Reality** — раздел «Xray VLESS‑Reality»: установка с выбором TCP‑порта и сайта‑маскировки, клиенты (создать, выключить/включить, удалить), ссылка `vless://` для Amnezia VPN, v2rayNG, Hiddify, Streisand, Happ. Файлы в `/opt/amnezia/xray` в том же формате, что у приложения Amnezia.
|
||||
@@ -33,7 +49,7 @@
|
||||
**1. Установите панель.** Зайдите на сервер по SSH и выполните:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
В конце будет строка `Админ-панель: http://IP:8080`.
|
||||
@@ -101,7 +117,7 @@ sudo ufw allow 8080/tcp && sudo ufw allow 41010/udp # пример, если u
|
||||
### Public install from GitHub
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Панель после установки открывается по **`http://IP:HOST_PORT`** (по умолчанию `:8080`). Первый вход: **логин `admin`, пароль `admin`**. Смените пароль сразу после входа.
|
||||
@@ -111,13 +127,13 @@ curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/s
|
||||
Если `/opt/amnezia-admin` не git-репозиторий, это нормально: установщик скачивает свежий архив с GitHub, делает backup старой папки, сохраняет текущий порт и текущий Docker volume `/data`, затем пересобирает только контейнер панели **`amnezia-admin`**. Контейнеры AmneziaWG (`amnezia-awg`, `amnezia-awg2` и т.д.) не удаляются и не пересоздаются.
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Если не нужен лендинг на порту 80:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo env SKIP_LANDING=1 bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo env SKIP_LANDING=1 bash
|
||||
```
|
||||
|
||||
### Переменные окружения и `sudo`
|
||||
@@ -129,7 +145,7 @@ curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/s
|
||||
1. **`sudo -E bash`** вместо `sudo bash` (для большинства VPS достаточно):
|
||||
|
||||
```bash
|
||||
AWG_PROFILES='[{"id":"awg",…}]' curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo -E bash
|
||||
AWG_PROFILES='[{"id":"awg",…}]' curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo -E bash
|
||||
```
|
||||
|
||||
2. **Файл на VPS** (способ без `-E`): записать JSON **одной строкой** в **`/root/amnezia-admin.awg-profiles.json`** (например `umask 077; printf '%s\n' '[{"id":"awg",…}]' > /root/amnezia-admin.awg-profiles.json`), затем обычный **`curl … | sudo bash`** — установщик подставит профили из файла (см. абзац про снимок ниже таблицы).
|
||||
@@ -157,7 +173,7 @@ cd /opt/amnezia-admin && chmod +x scripts/install.sh && sudo SKIP_DOWNLOAD=1 bas
|
||||
|
||||
| Переменная | По умолчанию | Назначение |
|
||||
|------------|--------------|------------|
|
||||
| `GITHUB_REPO` | `andrey271192/amnezia_web-PRO` | Откуда качать архив |
|
||||
| `GITHUB_REPO` | `PCA/amnezia_web-PRO` | Откуда качать архив |
|
||||
| `BRANCH` | `main` | Ветка |
|
||||
| `INSTALL_DIR` | `/opt/amnezia-admin` | Куда распаковать исходники |
|
||||
| `DATA_DIR` | `/opt/amnezia-admin-data` | Том с `password.hash` и сессией |
|
||||
@@ -205,14 +221,14 @@ cd /opt/amnezia-admin && chmod +x scripts/install.sh && sudo SKIP_DOWNLOAD=1 bas
|
||||
|
||||
```bash
|
||||
AWG_PROFILES='[{"id":"awg","label":"AmneziaWG","container":"amnezia-awg","confPath":"/opt/amnezia/awg/awg0.conf","clientsPath":"/opt/amnezia/awg/clientsTable","iface":"awg0","wgBinary":"awg","pskPath":"/opt/amnezia/awg/wireguard_psk.key"},{"id":"legacy","label":"AmneziaWG Legacy","container":"amnezia-wg0","confPath":"/opt/amnezia/wireguard/wg0.conf","clientsPath":"/opt/amnezia/wireguard/clientsTable","iface":"wg0","wgBinary":"wg","pskPath":"/opt/amnezia/wireguard/wireguard_psk.key"}]' \
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo -E bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo -E bash
|
||||
```
|
||||
|
||||
**Пример 2** — оба конфигурационных набора внутри контейнера **`amnezia-awg`** (файл `wg0.conf` рядом с `awg0.conf` в `/opt/amnezia/awg/`):
|
||||
|
||||
```bash
|
||||
AWG_PROFILES='[{"id":"awg","label":"AmneziaWG","container":"amnezia-awg","confPath":"/opt/amnezia/awg/awg0.conf","clientsPath":"/opt/amnezia/awg/clientsTable","iface":"awg0","wgBinary":"awg","pskPath":"/opt/amnezia/awg/wireguard_psk.key"},{"id":"legacy","label":"AmneziaWG Legacy","container":"amnezia-awg","confPath":"/opt/amnezia/awg/wg0.conf","clientsPath":"/opt/amnezia/awg/clientsTable","iface":"wg0","wgBinary":"wg","pskPath":"/opt/amnezia/awg/wireguard_psk.key"}]' \
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo -E bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo -E bash
|
||||
```
|
||||
|
||||
Для **Legacy** часто используется обычный `wg`, для новой AmneziaWG — **`awg`**; поле **`pskPath`** желательно указывать явно, если путь к `wireguard_psk.key` нестандартный.
|
||||
@@ -299,7 +315,7 @@ cd /opt/amnezia-admin
|
||||
Пример установки / обновления с частично пустой панелью:
|
||||
|
||||
```bash
|
||||
UI_HIDE_SECTIONS=warp,cascade curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo -E bash
|
||||
UI_HIDE_SECTIONS=warp,cascade curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo -E bash
|
||||
```
|
||||
|
||||
Отдельные флаги **`UI_HIDE_USERS`**, **`UI_HIDE_WARP`**, **`UI_HIDE_CASCADE`**, **`UI_HIDE_MTPROTO`** (`1` или `true`) дублируют соответствующий токен.
|
||||
@@ -338,13 +354,13 @@ UI_HIDE_SECTIONS=warp,cascade curl -fsSL https://raw.githubusercontent.com/andre
|
||||
Проще всего для пути из исходников — та же команда, что при установке (данные в `DATA_DIR`, пароль и `AWG_PROFILES` сохранятся — профили подтягиваются из файла на VPS или из старого контейнера). Скрипт **подставит прежний внешний порт** контейнера `amnezia-admin`, если вы не передавали `HOST_PORT` и в коде по умолчанию стоит `8080`:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Если интерфейс после этого всё ещё старый — принудительно без кэша слоёв Docker:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo NO_CACHE=1 bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo NO_CACHE=1 bash
|
||||
```
|
||||
|
||||
Если проект уже лежит в `/opt/amnezia-admin` через git и вы подтянули изменения (`git pull`), пересоберите без повторной загрузки архива:
|
||||
@@ -370,13 +386,13 @@ sudo docker run --rm amnezia-admin:latest grep -Eo 'Новый клиент по
|
||||
## Удаление одной командой
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/uninstall.sh | sudo bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/uninstall.sh | sudo bash
|
||||
```
|
||||
|
||||
Полная очистка (контейнер, образ, данные панели и каталог `/opt/amnezia-admin`):
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/uninstall.sh | sudo REMOVE_IMAGE=1 REMOVE_DATA=1 REMOVE_SRC=1 bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/uninstall.sh | sudo REMOVE_IMAGE=1 REMOVE_DATA=1 REMOVE_SRC=1 bash
|
||||
```
|
||||
|
||||
---
|
||||
@@ -395,7 +411,7 @@ curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/s
|
||||
### Свой пароль при установке
|
||||
|
||||
```bash
|
||||
ADMIN_PASSWORD='ВашНадёжныйПароль' curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo -E bash
|
||||
ADMIN_PASSWORD='ВашНадёжныйПароль' curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo -E bash
|
||||
```
|
||||
|
||||
После первого успешного старта переменную `ADMIN_PASSWORD` из команды `docker run` убирайте — пароль уже в томе `DATA_DIR`.
|
||||
@@ -427,7 +443,7 @@ ADMIN_PASSWORD=localtest node server.js
|
||||
|
||||
| Способ | Ссылка |
|
||||
|--------|--------|
|
||||
| GitHub | [amnezia_web-PRO](https://github.com/andrey271192/amnezia_web-PRO) |
|
||||
| GitHub | [amnezia_web-PRO](https://git.bobyrev.com/PCA/amnezia_web-PRO) |
|
||||
| Boosty | [boosty.to/andrey27/donate](https://boosty.to/andrey27/donate) |
|
||||
| Ozon СБП | [Ozon СБП](https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798) |
|
||||
| Telegram | [@lot_andrey](https://t.me/lot_andrey) |
|
||||
@@ -450,7 +466,7 @@ MIT, см. [LICENSE](LICENSE).
|
||||
|
||||
---
|
||||
|
||||
- ⭐ **GitHub:** [andrey271192/amnezia_web-PRO](https://github.com/andrey271192/amnezia_web-PRO)
|
||||
- ⭐ **GitHub:** [PCA/amnezia_web-PRO](https://git.bobyrev.com/PCA/amnezia_web-PRO)
|
||||
- 💖 **Boosty:** [boosty.to/andrey27/donate](https://boosty.to/andrey27/donate)
|
||||
- 💳 **Ozon Bank (СБП):** [ссылка](https://finance.ozon.ru/apps/sbp/ozonbankpay/019dc200-2a5d-7931-a619-782d285f6798)
|
||||
- ✉️ **Telegram:** [@lot_andrey](https://t.me/lot_andrey)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
```
|
||||
2. Если строки нет, но `docker ps` показывает два контейнера вида `amnezia-awg*`, переустановите панель свежим установщиком из GitHub:
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo env SKIP_LANDING=1 bash
|
||||
curl -fsSL https://git.bobyrev.com/PCA/amnezia_web-PRO/raw/branch/main/scripts/install.sh | sudo env SKIP_LANDING=1 bash
|
||||
```
|
||||
Установщик сам создаст **`AWG_PROFILES`** и сохранит **`/root/amnezia-admin.awg-profiles.json`**.
|
||||
3. Ручной JSON нужен только при нестандартных путях внутри AWG-контейнеров.
|
||||
|
||||
BIN
docs/screenshots/panel-1.4.png
Normal file
BIN
docs/screenshots/panel-1.4.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 225 KiB |
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "amnezia-admin",
|
||||
"version": "1.4.1",
|
||||
"version": "1.4.2",
|
||||
"private": false,
|
||||
"description": "amnezia_web-PRO — веб-панель AmneziaWG: несколько инстансов, WARP, каскад/Endpoint, экспорт .conf (Docker)",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;700&family=JetBrains+Mono:wght@400;600&display=swap" rel="stylesheet">
|
||||
<script>try{var t=localStorage.getItem("theme")||(matchMedia("(prefers-color-scheme: light)").matches?"light":"dark");document.documentElement.dataset.theme=t}catch(e){}</script>
|
||||
<link rel="stylesheet" href="/styles.css?v=1.4.1">
|
||||
<link rel="stylesheet" href="/styles.css?v=1.4.2">
|
||||
</head>
|
||||
<body class="page">
|
||||
<aside class="panel-promo-strip" role="complementary" aria-label="Поддержка и донат">
|
||||
<div class="panel-promo-strip-inner">
|
||||
<p class="panel-promo-subtitle muted">Поддержите проект через Boosty, Ozon СБП и Telegram — ниже те же ссылки в подвале.</p>
|
||||
<div class="panel-promo-links">
|
||||
<a class="panel-promo-a" href="https://github.com/andrey271192/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">⭐ GitHub</a>
|
||||
<a class="panel-promo-a" href="https://git.bobyrev.com/PCA/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">⭐ Git</a>
|
||||
<span class="panel-promo-sep" aria-hidden="true">·</span>
|
||||
<a class="panel-promo-a" href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">💖 Boosty</a>
|
||||
<span class="panel-promo-sep" aria-hidden="true">·</span>
|
||||
@@ -39,7 +39,7 @@
|
||||
</form>
|
||||
<nav class="gate-donate muted" aria-label="Поддержка и донат">
|
||||
Поддержка веб‑панелей (вне этого сервера):<br/>
|
||||
<a href="https://github.com/andrey271192/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">GitHub</a>
|
||||
<a href="https://git.bobyrev.com/PCA/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">GitHub</a>
|
||||
<span class="gate-donate-dot" aria-hidden="true">·</span>
|
||||
<a href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">Boosty</a>
|
||||
<span class="gate-donate-dot" aria-hidden="true">·</span>
|
||||
@@ -413,7 +413,7 @@
|
||||
<div class="support-line">
|
||||
<strong class="support-title">amnezia_web-PRO</strong>
|
||||
<span class="support-sep" aria-hidden="true">·</span>
|
||||
<a href="https://github.com/andrey271192/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">⭐ GitHub · amnezia_web-PRO</a>
|
||||
<a href="https://git.bobyrev.com/PCA/amnezia_web-PRO" target="_blank" rel="noopener noreferrer">⭐ Git · amnezia_web-PRO</a>
|
||||
<span class="support-sep" aria-hidden="true">·</span>
|
||||
<a href="https://boosty.to/andrey27/donate" target="_blank" rel="noopener noreferrer">💖 Boosty</a>
|
||||
<span class="support-sep" aria-hidden="true">·</span>
|
||||
@@ -460,6 +460,6 @@
|
||||
</div>
|
||||
</dialog>
|
||||
|
||||
<script src="/app.js?v=1.4.1" type="module"></script>
|
||||
<script src="/app.js?v=1.4.2" type="module"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
# Установка Amnezia Admin WebUI одной командой (см. README).
|
||||
set -euo pipefail
|
||||
|
||||
GITHUB_REPO="${GITHUB_REPO:-andrey271192/amnezia_web-PRO}"
|
||||
GITHUB_REPO="${GITHUB_REPO:-PCA/amnezia_web-PRO}"
|
||||
GIT_BASE="${GIT_BASE:-https://git.bobyrev.com}"
|
||||
BRANCH="${BRANCH:-main}"
|
||||
INSTALL_DIR="${INSTALL_DIR:-/opt/amnezia-admin}"
|
||||
DATA_DIR="${DATA_DIR:-/opt/amnezia-admin-data}"
|
||||
@@ -66,26 +67,24 @@ fi
|
||||
|
||||
if [[ "${SKIP_DOWNLOAD:-}" != "1" ]]; then
|
||||
echo "→ Клонирование релиза ${GITHUB_REPO} (${BRANCH})..."
|
||||
echo "→ Скачивание tar.gz с GitHub (вывода может не быть 1–10 мин.; при блокировках задайте зеркало GITHUB_REPO_URL_OVERRIDE или см. CURL_MAX_TIME ниже)."
|
||||
echo "→ Скачивание tar.gz с ${GIT_BASE} (вывода может не быть 1–10 мин.; при блокировках задайте зеркало GITHUB_REPO_URL_OVERRIDE или см. CURL_MAX_TIME ниже)."
|
||||
TMP=$(mktemp -d)
|
||||
CURL_OPTS=(
|
||||
-fsSL
|
||||
-H 'Cache-Control: no-cache'
|
||||
-H 'Pragma: no-cache'
|
||||
--connect-timeout "${CURL_CONNECT_TIMEOUT:-30}"
|
||||
--connect-timeout "${CURL_CONNECT_TIMEOUT:-15}"
|
||||
--max-time "${CURL_MAX_TIME:-900}"
|
||||
--retry "${CURL_RETRY:-2}"
|
||||
--retry-delay "${CURL_RETRY_DELAY:-5}"
|
||||
--retry-connrefused
|
||||
)
|
||||
if [[ "${INSTALL_SCRIPT_VERBOSE:-}" == "1" ]]; then CURL_OPTS+=(--progress-bar); fi
|
||||
CURL_URL="${GITHUB_REPO_URL_OVERRIDE:-}"
|
||||
if [[ -z "${CURL_URL}" ]]; then
|
||||
CURL_URL="https://github.com/${GITHUB_REPO}/archive/refs/heads/${BRANCH}.tar.gz"
|
||||
fi
|
||||
# ponytail: GitHub-аккаунт заблокирован (10.2026), код живёт на git.bobyrev.com.
|
||||
CURL_URL="${GITHUB_REPO_URL_OVERRIDE:-${GIT_BASE}/${GITHUB_REPO}/archive/${BRANCH}.tar.gz}"
|
||||
if ! curl "${CURL_OPTS[@]}" "${CURL_URL}" | tar xz -C "${TMP}"; then
|
||||
echo "Ошибка: не удалось скачать или распаковать архив (${CURL_URL})."
|
||||
echo "Подсказка: проверьте доступ к github.com, branch/repo, при необходимости export GITHUB_REPO_URL_OVERRIDE='…' или INSTALL_SCRIPT_VERBOSE=1."
|
||||
echo "Подсказка: проверьте доступ к git.bobyrev.com, при необходимости export GITHUB_REPO_URL_OVERRIDE='…' или INSTALL_SCRIPT_VERBOSE=1."
|
||||
exit 1
|
||||
fi
|
||||
echo "→ Перенос распакованного дерева в ${INSTALL_DIR}…"
|
||||
@@ -355,4 +354,4 @@ if [[ -f "${PASS_FILE}" ]]; then
|
||||
echo "Первый пароль: $(cat "${PASS_FILE}")"
|
||||
fi
|
||||
echo ""
|
||||
echo "Удаление: curl -fsSL https://raw.githubusercontent.com/${GITHUB_REPO}/${BRANCH}/scripts/uninstall.sh | sudo bash"
|
||||
echo "Удаление: curl -fsSL ${GIT_BASE}/${GITHUB_REPO}/raw/branch/${BRANCH}/scripts/uninstall.sh | sudo bash"
|
||||
|
||||
Reference in New Issue
Block a user