Skip to content

Installation.ru

Anagnostakis Ioannis edited this page Sep 19, 2026 · 6 revisions

EN · EL · FR · ES · IT · RU · ZH · AR · HI · PT · DE

Установка

Простой путь: бинарный пакет

В Slackware вы устанавливаете бинарный пакет, собранный из SlackBuild. Он расставляет всё по местам за вас:

  • исполняемый файл slacker (/usr/bin/slacker),
  • man-страницу (man slacker),
  • текстовые файлы конфигурации в /etc/slacker/,
  • автодополнение для bash, zsh и fish,
  • slacker-gui (/usr/bin/slacker-gui) с ярлыком рабочего стола, значками и правилом polkit, через которое он выполняет изменения от root.

Вы ничего не копируете. После установки пакета единственная настройка — это отредактировать два файла (выбрать зеркало в 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/bin/slacker
install -m0644 man/slacker.8 /usr/man/man8/slacker.8
mkdir -p /etc/slacker
for f in slacker.conf distro-upgrade.conf mirrors repos blacklist; do
  install -m0644 CONF/etc-slacker/current/$(uname -m)/$f /etc/slacker/$f
done

(/etc/slacker/templates/ slacker создаёт сам при первом generate-template.)

Для сборки и запуска набора тестов root не нужен; root требуется только командам, изменяющим систему.

cargo build
cargo test            # все тесты проходят; сборка без предупреждений

Зависимости

slacker намеренно лёгок по зависимостям. Прямые крейты: clap, ureq, md-5, regex, rusqlite. Всё тяжёлое вынесено во внешние инструменты, которые Slackware уже поставляет:

  • installpkg / upgradepkg / removepkg — для собственно операций с пакетами,
  • gpg2 (или gpg, если его нет) — для проверки подписей,
  • bzip2 — для MANIFEST,
  • sha256sum — для контрольных сумм SHA,
  • diff — для new-config.

TLS обрабатывается внутри процесса библиотекой rustls (через feature tls крейта ureq), а SQLite (её читает resolve-stock) встроена в бинарник через feature bundled крейта rusqlite, поэтому slacker не линкуется ни с системным OpenSSL, ни с системной SQLite. От системы бинарнику нужно немногим больше, чем библиотека C.

slacker-gui

Графический интерфейс отделён от slacker и не лёгок по зависимостям: он линкуется с GTK4 и libadwaita (>= 1.5) и требует polkit (pkexec) с агентом аутентификации в сеансе для действий, изменяющих систему. Сам slacker от него не зависит.

Заметки по упаковке

Если вы собираете распространяемый пакет, сначала зафиксируйте версии зависимостей, чтобы сборка оставалась воспроизводимой. См. Building and Releasing.

Проверить, что работает

slacker --version
slacker status        # проверка состояния всей настройки

Далее: Quick Start.

Clone this wiki locally