From 4e8f82616d2222d210eef91ff1dc5c593aac75f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D0=B4=D1=80=D0=B5=D0=B9=20=D0=91=D0=BE=D0=B1?= =?UTF-8?q?=D1=8B=D1=80=D0=B5=D0=B2?= Date: Fri, 15 May 2026 04:55:05 +0300 Subject: [PATCH] docs(readme): private repo install PAT + Bearer on raw Co-authored-by: Cursor --- README.md | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 009c035..ac09469 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,27 @@ ## Установка одной командой -На сервере под **root** (или через `sudo`), когда репозиторий уже опубликован на GitHub: +Репозиторий **`amnezia_web-PRO`** на GitHub **приватный**: без авторизации API и CDN ответят **`404`** (GitHub маскирует недоступ), а установщик внутри скачивает архив через **`api.github.com/repos/…/tarball`** только если задан **`GITHUB_TOKEN`** или **`GH_TOKEN`** с доступом **`Contents` read** к этому репозиторию. Код можно пушить с машины аккаунта с правами на запись без ограничений; вопрос касается только **первая установка / апдейты с голого VPS** у тех, кому нужен доступ через GitHub API. + +### Рекомендуемый вариант: PAT и одна строка + +```bash +export GITHUB_TOKEN='ghp_…' # или fine-grained github_pat_… → только нужный repo, Contents Read +curl -fsSL \ + -H "Authorization: Bearer ${GITHUB_TOKEN}" \ + https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh \ +| sudo -E bash +``` + +Первый **`curl`** авторизует выгрузку **приватного** `install.sh` по **raw**. Флаг **`sudo -E`** передаёт **`GITHUB_TOKEN`** в root-оболочку: тогда и сам **`install.sh`**, когда качнет тарбол, подставит **`Authorization: Bearer`** (то же уже реализовано в скрипте). + +Под **root** без `sudo` достаточно **`curl … | bash`** при том же **`export GITHUB_TOKEN`**. + +**Иначе:** клонируйте репозиторий по SSH или HTTPS+PAT на **`/opt/amnezia-admin`**, затем обновление без скачивания токеном см. ниже блок **«Уже скачали проект вручную»**. + +### Если репозиторий у вас публичный (форк или зеркало) + +Тогда токен не обязателен: ```bash curl -fsSL https://raw.githubusercontent.com/andrey271192/amnezia_web-PRO/main/scripts/install.sh | sudo bash