Skip to content

Installation.zh

Anagnostakis Ioannis edited this page Sep 19, 2026 · 5 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 的 shell 补全,
  • slacker-gui/usr/bin/slacker-gui),以及它的桌面条目、图标和它用来以 root 身份执行更改的 polkit 策略。

你无需复制任何东西。 安装软件包之后,唯一的配置就是编辑两个文件 —— 在 mirrors 中选一个镜像,在 repos 中设定仓库优先级 —— 然后运行 slacker status(它会检查 配置并告诉你接下来该做什么)、slacker update gpgslacker update。参见 Quick Start

在升级时,Slackware 会以 *.new 的形式投递有变更的配置文件,使你的修改永不被 覆盖;slacker new-config 可帮你将它们调和。

从源码构建(面向开发者)

构建需要 Rust 1.85.1 或更新版本 —— 即实际支持的最低 Rust 版本。当前的 Slackware 附带 Rust 1.96,完全可用。(crate 本身是 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 在依赖上刻意保持精简。直接 crate:clapureqmd-5regexrusqlite。一切 繁重的工作都交给 Slackware 本就附带的工具:

  • installpkg / upgradepkg / removepkg —— 实际的软件包操作,
  • gpg2(缺失时用 gpg)—— 签名校验,
  • bzip2 —— MANIFEST,
  • sha256sum —— SHA 校验和,
  • diff —— new-config

TLS 由 rustls 在进程内处理(通过 ureqtls feature),SQLite(供 resolve-stock 读取)则通过 rusqlitebundled feature 编译进二进制,因此 slacker 既不链接系统 OpenSSL,也不链接系统 SQLite。除了 C 库之外,这个二进制 几乎不需要系统提供别的东西。

slacker-gui

图形前端与 slacker 相互独立,并不精简依赖:它链接 GTK4libadwaita(>= 1.5),并且需要 polkitpkexec)以及会话中的认证代理, 用于执行会改动系统的操作。slacker 本身不依赖它。

打包说明

如果你要构建可分发的软件包,请先冻结依赖版本,以使构建保持可复现。参见 Building and Releasing

验证是否正常工作

slacker --version
slacker status        # 对整套配置做健康检查

下一步:Quick Start

Clone this wiki locally