Конфигурация

From docs/ru/CONFIGURATION.md at b5eedc6 View on GitHub

~/.ketch/config.toml; переменные окружения имеют приоритет:

КлючПеременная окруженияПо умолчанию
apps_dirKETCH_APPS_DIR/Applications
github_tokenKETCH_GITHUB_TOKEN, GITHUB_TOKEN, GH_TOKENнет
prereleaseKETCH_PRERELEASEfalse
allow_emulationKETCH_ALLOW_EMULATIONtrue
link_appsKETCH_LINK_APPSfalse
require_checksumsKETCH_REQUIRE_CHECKSUMSfalse
strip_quarantineKETCH_STRIP_QUARANTINEtrue
auto_updateKETCH_AUTO_UPDATEtrue
emojiKETCH_EMOJItrue
registryKETCH_REGISTRYpyrlyn/ketch-registry
self_repoKETCH_SELF_REPOpyrlyn/ketch
jobsKETCH_JOBS4 (не больше 16)
log_levelKETCH_LOG_LEVELinfo
log_formatKETCH_LOG_FORMATtext
max_download_mibKETCH_MAX_DOWNLOAD_MIB4096

self_repo и registry, указывающие на прежние имена репозиториев до переезда, listepo/ketch и listepo/ketch-registry, читаются как имена в pyrlyn; то же относится к старым именам в файле состояния и в lock-файлах.

docs/config.schema.json — JSON Schema этого файла, сгенерированная из типов, в которые ketch его читает; она нужна редакторам и линтерам.

Чтобы начать заново, ketch config reset записывает config.toml с этими значениями по умолчанию (после вопроса, если не указан --yes). Существующий файл сохраняется рядом как config.toml.bak-<unix-seconds>, если он есть и ещё не совпадает с соседней резервной копией:

ketch config reset          # спросить, сохранить копию, записать значения по умолчанию
ketch config reset --yes    # для скриптов и CI

auto_update (по умолчанию true) запускает ketch update в начале install и upgrade. Установите false или KETCH_AUTO_UPDATE=false, чтобы не обновлять реестр.

emoji (по умолчанию true) ставит значок перед каждой строкой статуса в терминале: 📦 установка, ⏫ обновление, 🧹 удаление, ⏬ загрузка, 🔗 ссылка, ⏪ откат, ✅ успех, ❗ предупреждение, ❌ ошибка, 💡 примечание. Установите false, KETCH_EMOJI=0 или передайте --no-emoji, чтобы обойтись без них. Значки никогда не попадают в пайп, TERM=dumb, вывод --json или журнал.

Сам корень задаётся KETCH_ROOT или --root; в файле конфигурации его задать нельзя, потому что файл лежит внутри корня. KETCH_GITHUB_API переопределяет базовый URL API GitHub (для Enterprise); его тоже нельзя задать в файле конфигурации. jobs и --jobs больше 16 ограничиваются значением 16.

max_download_mib — самая большая одиночная загрузка, которую записывает ketch, в МиБ. Загрузка, которая объявляет больший размер или молча его превышает, останавливается и не оставляет файла; увеличьте значение для пакета, который действительно больше.

Токен не обязателен, но заметно повышает лимит запросов GitHub.