-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
Everything slacker reads is plain text under /etc/slacker/ (override the
directory with --config-dir). After installing the package these files are
already in place.
/etc/slacker/
├── slacker.conf KEY=value global settings
├── mirrors catalogue of official mirrors - uncomment exactly ONE
├── repos repo priorities/names + external repos + tag-priority lines
├── blacklist blacklist rules: [@repo] GLOB|REGEX | [@repo] series/
├── distro-upgrade.conf optional: DISTRO_UPGRADE_MIRROR for upgrade-dist
└── templates/ generated and user-created templates
KEY=value, one per line, # for comments.
| Key | Default | Meaning |
|---|---|---|
ARCH |
auto | Architecture, auto-detected from the installed aaa_base. Set only to force a specific arch (e.g. cross). |
ADM_DIR |
/var/adm |
Slackware pkgtools administrative root - holds packages/, removed_packages/, scripts/, setup/. The Package History command reads it. |
CACHE_DIR |
/var/cache/slacker |
Downloaded metadata and package files - all re-downloadable; safe to clear. |
STATE_DIR |
/var/lib/slacker |
Persistent security state: the GPG keyring, the TOFU fingerprint pins (*.fpr), and the repo quarantine/trust markers. Kept separate from the disposable CACHE_DIR so a cache wipe can't reset the trust anchors; existing state is migrated here automatically on first run. |
PKG_DB_DIR |
ADM_DIR/packages |
The installed-package database. Set explicitly only to override the derived location. |
RESOLVE_DEPS |
yes |
Whether .dep files are read to pull in dependencies. See Dependencies. |
IGNORE_TAGS |
(empty) | Space-separated build tags (e.g. _SBo cf alien) that clean-system must not treat as foreign. |
VERIFY |
all |
Package verification policy. See Security. |
MAX_PARALLEL |
4 |
How many packages download concurrently during install/upgrade/download (clamped to 1-16; 1 = serial). A failed download or verification is skipped and reported, never aborting the rest; a package that fails GPG/checksum is never installed. |
REVERT |
on |
Enables the revert-pkg rollback command. Set to off to disable it. |
CUMULATIVE_URL |
https://slackware.uk/cumulative/slackware64-current |
The cumulative -current archive revert-pkg fetches superseded official packages from - a revert-only source, never consulted by update/upgrade/install/check-updates, so its historical packages never enter the priority model. |
ADM_DIRdefaults to/var/admrather than/var/lib/pkgtoolson purpose: on a real boxremoved_packages/lives under/var/adm/pkgtools/...and is not exposed by name from/var/lib/pkgtools. Only/var/admexposes the whole set thathistoryneeds.
A slackpkg-style catalogue. Uncomment exactly one line. None is active by
default; two or more active lines is an error. http://, https://, and
file:// are all supported (the last for a local clone, NFS mount, or mounted
media); ftp:// is not. The shipped file already carries the right directory
for your arch and release - you only choose which mirror.
The directory segment follows arch + release:
| Arch / release | Directory segment | Example active line |
|---|---|---|
| x86_64 · -current | slackware64-current |
https://mirrors.slackware.com/slackware/slackware64-current/ |
| 32-bit · -current | slackware-current |
https://mirrors.slackware.com/slackware/slackware-current/ |
| x86_64 · 15.0 | slackware64-15.0 |
https://mirrors.slackware.com/slackware/slackware64-15.0/ |
| 32-bit · 15.0 | slackware-15.0 |
https://mirrors.slackware.com/slackware/slackware-15.0/ |
# /etc/slacker/mirrors - uncomment ONE line (the redirector is a good default)
https://mirrors.slackware.com/slackware/slackware64-current/
Not sure which to pick? slacker find-mirror probes the official list, drops
stale mirrors, and prints the fastest fresh one to paste here - it never edits
the file. Change your mirror by changing which line is uncommented.
Two kinds of line: binary repositories and tag-priority lines.
The installed repos comes with the official tree plus the three distribution
subtrees already enabled - note patches at the highest priority (200), so a
15.0 security/bugfix package always wins:
# [priority] [name] [url] [flags]
100 slackware mirror official
200 patches mirror/patches subtree immutable
90 extras mirror/extra subtree immutable
85 testing mirror/testing subtree immutable
Third-party repos ship commented out below that block, ready to uncomment and
retune - e.g. alienbob, conraid, restricted, multilib on -current/x86_64;
mate, cbs on 15.0/x86_64; a smaller set on 32-bit. Their URLs are already
matched to the build's arch and release (see the variants table below).
priority name url|mirror|mirror/<subpath> [official] [immutable] [subtree] [verify=...]
- priority - higher wins; must be distinct across binary repos (a duplicate is a fail-fast error).
-
url - a literal URL, the keyword
mirror(the active mirror, for the official repo), ormirror/<subpath>(the active mirror with a subpath appended, e.g.mirror/extra- tracks a subtree on whichever mirror you picked, without hardcoding the host). -
flags (any order):
official,immutable,subtree,verify=....
The full semantics of the flags, the priority model, and pinning are in Repositories and Priority.
priority name tag # e.g. 100 SBo _SBo
Gives packages carrying a build tag a priority on the same scale as repos, so
SBo/local/source packages are never silently migrated or downgraded by
upgrade-all. Tag-priority lines may share a priority.
Edit this file by hand, or let add-repo / del-repo / add-tag / del-tag do
it for you (validated, with a confirmation prompt).
slacker ships four ready-made /etc/slacker sets; the build for your platform
embeds the matching one, so the directory segments and example URLs already fit
your system. The differences are only in the URL/segment text:
| x86_64 · -current | 32-bit · -current | x86_64 · 15.0 | 32-bit · 15.0 | |
|---|---|---|---|---|
| mirror dir | slackware64-current |
slackware-current |
slackware64-15.0 |
slackware-15.0 |
alienbob example |
.../current/x86_64 |
.../current/x86 |
.../15.0/x86_64 |
.../15.0/x86 |
CUMULATIVE_URL |
.../slackware64-current |
.../slackware-current |
(revert is -current-only) | (revert is -current-only) |
ARCH hint |
x86_64 |
x86 |
x86_64 |
x86 |
The active default block (official + patches/extras/testing) is identical
across all four. You normally never touch this - it is chosen at install time.
One rule per line, [@repo] PATTERN. PATTERN is a Slackware series when it ends
in /, otherwise a glob or an unanchored regex matched against the full
package id name-version-arch-build (with no regex syntax it is a glob, so * is
any run of characters and a literal . stays literal). Full reference:
Blacklist.
Optional, and only consulted by upgrade-dist (see Distribution Upgrade). A
single key points a distribution upgrade at a local copy of the target
release instead of the network:
| Key | Meaning |
|---|---|
DISTRO_UPGRADE_MIRROR |
A local source for upgrade-dist: a local release tree (file:// or http://), an NFS clone, or a mounted install ISO. When set, the upgrade re-points to this base and validates it (release segment matches the target, PACKAGES.TXT reachable) before the point of no return. Absent or empty, upgrade-dist uses the configured mirrors. |
# /etc/slacker/distro-upgrade.conf
DISTRO_UPGRADE_MIRROR=file:///mnt/iso/
The local-source path is implemented but not yet tested end-to-end - treat it as experimental and keep backups. The network path is the tested one.
| Variable | Effect |
|---|---|
NO_COLOR |
Disables all coloured output (also auto-disabled when stdout is not a terminal). |
SLACKER_MERGE |
External merge tool for new-config's (M)erge action (default vimdiff). |
PAGER |
Pager for long output (history, show-changelog); defaults to less -FRX. |
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