1 Common Workflows
Anagnostakis Ioannis edited this page 2026-06-25 03:12:30 +03:00

Common Workflows

The recipes you will actually use. All mutating commands need root.


Keep the system up to date

slacker update            # refresh metadata (verifies GPG), pick which repos
slacker install-new       # adopt packages newly added to the distribution
slacker upgrade-all       # upgrade everything with a newer revision
slacker clean-system      # drop packages the distro no longer ships
slacker new-config        # reconcile any leftover *.new config files

Want to know first whether anything changed?

slacker check-updates ; echo "exit=$?"   # exit 100 means updates are pending

Find and install something

slacker search firefox            # exact name
slacker info ffmpeg               # which repo wins, plus all candidates
slacker install mozilla-firefox
slacker install vlc mpv obs-studio        # several at once
slacker install alienbob:vlc              # force a specific repo (pin)
slacker --dry-run install vlc             # preview only, change nothing

If a pattern matches several packages you get a numbered chooser (Enter = all, 1 3 5 or 2-4 = a subset, n = cancel).


Install or remove a whole repo / tag

slacker install @gnome            # every package in the gnome repo
slacker remove  @gnome            # the installed packages that came from it
slacker remove  @_SBo             # every installed SlackBuilds.org package

Protect your SBo / local / third-party packages

Two complementary tools:

  1. Tag priority — give your source tag a high priority so upgrade-all never migrates or downgrades it:
    # in /etc/slacker/repos
    100  SBo    _SBo
    100  local  _rtz
    
  2. Blacklist (frozen) — freeze a specific package or pattern outright:
    slacker frozen "@alienbob vlc-[0-9]"     # freeze alienbob's vlc only
    slacker frozen kde/                       # freeze the whole kde series
    

See Repositories and Priority and Blacklist.


Keep extra / testing / patches without them being "cleaned"

Mark those repos immutable (and subtree) in repos, and clean-system will leave their installed packages alone — no per-package blacklisting needed:

90  extras   mirror/extra    subtree immutable
91  testing  mirror/testing  subtree immutable

Audit what happened on this machine

slacker history --last 30                  # the 30 most recent changes
slacker history vlc                        # one package's whole story
slacker history --installed --since 2026-06-01
slacker history --removed                  # what left, and when

Reconstructed from the pkgtools admin dirs, so it includes changes made by slackpkg, sbopkg, or plain installpkg too. See Package History.


Clone a machine's package set

# on the source machine
slacker generate-template snapshot
# copy /etc/slacker/templates/snapshot.template to the target machine, then:
slacker install-template snapshot

See Templates.


Download without installing (e.g. to inspect or carry)

slacker download -o /tmp vlc
slacker download @alienbob          # confirms before >10 files

clean-cache later frees the space; metadata and keys are never touched.