-
Notifications
You must be signed in to change notification settings - Fork 0
Installation.ru
EN · EL · FR · ES · IT · RU · ZH · AR · HI · PT · DE
В Slackware вы устанавливаете бинарный пакет, собранный из SlackBuild. Он расставляет всё по местам за вас:
- исполняемый файл
slacker(/usr/local/sbin/slacker), - man-страницу (
man slacker), - текстовые файлы конфигурации в
/etc/slacker/.
Вы ничего не копируете. После установки пакета единственная настройка — это
отредактировать два файла (выбрать зеркало в mirrors и задать приоритеты
репозиториев в repos), а затем выполнить slacker status (он проверяет
настройку и подсказывает дальнейшее), slacker update gpg и slacker update. См.
Quick Start.
При обновлениях Slackware доставляет изменённые файлы конфигурации как
*.new, чтобы ваши правки никогда не затирались;slacker new-configпомогает их согласовать.
Для сборки нужен Rust 1.85.1 или новее — фактическая минимальная
поддерживаемая версия Rust. Текущая Slackware поставляет Rust 1.96, что подходит.
(Сам крейт — edition 2021, но зависимость clap_lex написана на edition 2024,
именно она задаёт порог 1.85.1, а не код самого slacker.)
cargo build --release
install -m0755 target/release/slacker /usr/sbin/slacker
install -m0644 slacker.8 /usr/man/man8/slacker.8
mkdir -p /etc/slacker/templates
for f in slacker.conf mirrors repos blacklist; do
install -m0644 examples/etc-slacker/current/$f /etc/slacker/$f
doneДля сборки и запуска набора тестов root не нужен; root требуется только командам, изменяющим систему.
cargo build
cargo test # все тесты проходят; сборка без предупрежденийslacker намеренно лёгок по зависимостям. Прямые крейты: clap, ureq, md-5,
regex. Всё тяжёлое вынесено во внешние инструменты, которые Slackware уже
поставляет:
-
installpkg/upgradepkg/removepkg— для собственно операций с пакетами, -
gpg— для проверки подписей, -
bzip2— для MANIFEST, -
sha256sum— для контрольных сумм SHA.
TLS обрабатывается внутри процесса библиотекой rustls (через feature tls
крейта ureq), так что у slacker вовсе нет зависимости от libssl/системного
OpenSSL. Это сделано намеренно: бинарник, которому не нужен libssl, продолжает
работать на более старой базе, чем та, на которой он был собран, — именно это
позволяет slacker, собранному на -current, провести обновление дистрибутива на
машине 15.0 (см. Distribution Upgrade).
Если вы собираете распространяемый пакет, сначала зафиксируйте версии зависимостей, чтобы сборка оставалась воспроизводимой. См. Building and Releasing.
slacker --version
slacker status # проверка состояния всей настройкиДалее: Quick Start.
slacker - slackpkg + slackpkg+ in one - Apache-2.0 - by Ioannis Anagnostakis (rizitis) - beta / WIP, for Slackware -current (64-bit & 32-bit)
Getting started
Using slacker
- Commands
- Common Workflows
- Distribution Upgrade
- Repositories and Priority
- Package History
- Dependencies
- Docker
- Templates
- Blacklist
Trust & safety
Reference
For contributors