Используемые файлы и директории
Stapler использует различные файлы и директории в системе для своей работы. Понимание этих путей может быть полезно для отладки.
Конфигурационные файлы
/etc/stplr/stplr.toml
Основной конфигурационный файл Stapler. Подробнее о настройках можно прочитать в документации по конфигурации.
Конфигурационные файлы репозиториев
Репозитории хранятся в отдельных .toml-файлах в нескольких директориях. Подробнее о схеме хранения читайте в документации по хранению репозиториев.
/usr/lib/stplr/repos.d/ # системные репозитории (только для чтения)
│ └── <name>.toml
/etc/stplr/
├── repos.d/ # пользовательские репозитории (repo add/rm)
│ └── <name>.toml
└── repo-overrides.d/ # переопределения параметров (set-disabled, set-url, set-ref)
└── <name>.toml
Системные директории кэша
Stapler использует директорию /var/cache/stplr/ для хранения системных кэшированных данных.
Общая структура
/var/cache/stplr/
├── db # sqlite база данных
├── dl # Кэш загрузок
├── pkgs # Директория для сборки пакетов
└── repo # Скачанные репозитории
При запуске команды build от имени обычного пользователя (не root) используется пользовательская директория кэша:
$HOME/.cache/stplr
├── dl
└── pkgs
Структура пользовательской директории кэша аналогична системной, но используется для сборок, запущенных обычным пользователем.
Подробное описание
/var/cache/stplr/pkgs
Директория pkgs используется для сборки пакетов. Внутри этой директории создаются поддиректории для каждого пакета, содержащие:
src- исходные файлы пакетаpkg- директория для упаковки файлов (pkgdir)
Эта структура соответствует переменным $srcdir и $pkgdir, используемым в Staplerfile.
Пример структуры:
pkgs/
└── foo/
├── pkg/
└── src/
/var/cache/stplr/repo
Директория repo содержит клонированные репозитории Stapler. Каждый подкаталог соответствует одному репозиторию. Внутри каждого репозитория хранятся файлы Staplerfile и другие данные, необходимые для сборки пакетов.
Управление кэшем
Для управления кэшем Stapler предоставляет команду fix, которая может помочь в случае проблем с кэшем. Эта команда удаляет и пересобирает кэш Stapler.
Пример использования:
stplr fix
Также можно вручную очистить кэш, удалив содержимое директории /var/cache/stplr/, но это следует делать с осторожностью.