4 Installation.ru
Anagnostakis Ioannis edited this page 2026-06-30 21:10:06 +03:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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.