NAME
sbozyp - A package manager for Slackware's SlackBuilds.org
DESCRIPTION
Sbozyp is a command-line package manager for the SlackBuilds.org package repository. SlackBuilds.org is a collection of third-party SlackBuild scripts used to build Slackware packages.
Sbozyp assumes its users have an understanding of SlackBuilds and the SlackBuilds.org repository. While sbozyp provides conveniences to make it easier to build, install, and remove packages, users should always understand every package they consider installing by reading its README file.
Sbozyp does not handle optional dependencies or setting build-time options, so users must deal with these special cases manually.
OVERVIEW
Usage: sbozyp [global_opts] <command> [command_opts] <command_args>
Every command has its own options, these are just the global ones:
-C Re-clone SBo repository before running the command
-F FILE Use FILE as the configuration file
-R REPO_NAME Use SBo repository REPO_NAME instead of REPO_PRIMARY
-S Sync SBo repository before running the command
-T Exit if the SBo repository hasn't been cloned yet
-W Use the current directory as the working SBo tree
Commands:
install|in Install or update packages
build|bu Build but don't install packages
remove|rm Remove packages
query|qr Query for information about a package
search|se Search for a package using a Perl regex
null|nu Do nothing, useful in conjunction with -C or -S opts
Examples:
sbozyp --help
sbozyp --version
sbozyp install --help
sbozyp install -S -R $REPO -f xclip system/password-store
sbozyp -T build -f mu
sbozyp remove xclip password-store
sbozyp query -q password-store
sbozyp search -n system/.+
sbozyp -R $REPO -C null
CONFIGURATION
Sbozyp is configured via the /etc/sbozyp/sbozyp.conf file. An alternative configuration file can be specified with the -F option.
REPOSITORY DEFINITIONS
You can define as many repositories as you want in the configuration file. A repository definition requires these 3 variables to be set ($N is any non-negative integer):
REPO_$N_NAME
REPO_$N_GIT_URL
REPO_$N_GIT_BRANCH
Example:
REPO_7_NAME=fifteenpoint0
REPO_7_GIT_URL=git://git.slackbuilds.org/slackbuilds.git
REPO_7_GIT_BRANCH=15.0
This defines a repository that will be downloaded with git with a command like: git clone --branch $REPO_7_GIT_BRANCH $REPO_7_GIT_URL.
You can use this repository with sbozyp by specifying its name (fifteenpoint0) with the -R option. You can also make this repository the default (used when -R is omitted) by setting REPO_PRIMARY=fifteenpoint0 in your configuration file.
Repo names should never contain any forward slash characters (/).
OTHER CONFIGURATION VARIABLES
REPO_PRIMARY
The name of the repo to use by default when not specifying one with the -R flag. There is no default value for this variable.
REPO_ROOT
The directory to store local copies of SBo.
Defaults to REPO_ROOT=/var/lib/sbozyp/SBo.
TMPDIR
The directory used for placing working files.
Defaults to TMPDIR=/tmp.
SRCDIR
The directory used to save downloaded source files for reuse when using the install and build commands -z flag.
Defaults to SRCDIR=/var/lib/sbozyp/source-cache.
WORKING TREES
A package argument may be a package name or a SlackBuild package directory:
sbozyp in -r ./office/mu
sbozyp in system/foo ./office/mu
cd office/mu
sbozyp in -r .
The directory must be CATEGORY/PRGNAM and contain matching PRGNAM.info and PRGNAM.SlackBuild files. The tree need not be a Git or configured repository. If any package argument is a SlackBuild directory, its tree is used for the entire command, regardless of argument order. All other packages and dependencies come from that tree.
Use -W from the tree root when giving package names:
sbozyp -W in -r office/mu
-W cannot be combined with -C, -R, or -S.
COMMANDS
INSTALL
Usage: sbozyp <install|in> [-h] [-b FILE] [-f] [-k] [-n] [-r] [-y] [-z] <pkgname...>
Install or update packages.
Options are:
-h|--help Print help message and exit
-b FILE Use FILE as blacklist instead of /etc/sbozyp/sbozyp.blacklist
-f Force install/update even if package is up to date or blacklisted
-k Keep the built package (resides in TMPDIR)
-n Skip md5sum verification of downloaded sources
-r Install package dependencies recursively
-y No interactive prompt
-z Keep and reuse downloaded sources (reside in SRCDIR)
Examples:
sbozyp install --help
sbozyp in password-store
sbozyp in -r xclip mu password-store
sbozyp in -k -r system/password-store
sbozyp in -f -y -r password-store
sbozyp -S -R $REPO in -f -r password-store
sbozyp in -r ./office/mu
sbozyp in -r $(sbozyp -S qr -u) ### update all packages
BUILD
Usage: sbozyp <build|bu> [-h] [-f] [-n] [-y] [-z] <pkgname...>
Build but don't install packages.
Options are:
-h|--help Print help message and exit
-f Force rebuilding the package even if it's already built
-n Skip md5sum verification of downloaded sources
-y No confirmation prompt
-z Keep and reuse downloaded sources (reside in SRCDIR)
Examples:
sbozyp build --help
sbozyp bu password-store
sbozyp bu -f password-store
sbozyp bu -f -y system/password-store
sbozyp -S -R $REPO bu password-store
sbozyp bu -y system/password-store xclip mu
sbozyp bu ./office/mu
REMOVE
Usage: sbozyp <remove|rm> [-h] [-f] [-r] [-y] <pkgname...>
Remove packages.
Options are:
-h|--help Print help message and exit
-f Disable removal safety check (DANGEROUS)
-r Recursively remove package dependencies that are safe to remove
-y No confirmation prompt
Examples:
sbozyp remove --help
sbozyp rm xclip mu system/password-store
sbozyp rm -y -r password-store
sbozyp -S -R $REPO rm password-store
sbozyp rm ./office/mu
QUERY
Usage: sbozyp <query|qr> [-h] [-a] [-b] [-c] [-d] [-i] [-m] [-n] [-o] [-p] [-q] [-r] [-s] [-u] [-v] [-x] PKGNAME?
Query for package related information.
Exactly one option must be used in a single query command.
Options are:
-h|--help Print help message and exit
-a Print all installed packages
-b Print the path to PKGNAME's local package directory
-c Print the path to the current repositories directory
-d Print PKGNAME's slack-desc file
-i Print PKGNAME's info file
-m Print all installed SBo packages with no dependents
-n Print PKGNAME's recursive dependents
-o Print PKGNAME'S direct dependents
-p If PKGNAME is installed print the installed version number
-q Print PKGNAME's installation queue (finds PKGNAMES dependencies)
-r Print PKGNAME's README file
-s Print PKGNAME's .SlackBuild file
-u Print all packages that have updates available
-v Like -u, but also print the version information
-x Print all installed SBo packages not in the current repo
Examples:
sbozyp query --help
sbozyp qr -q password-store
sbozyp qr -m
sbozyp -S qr -u
cd $(sbozyp qr -b password-store)
removepkg $(sbozyp qr -x) # remove packages not in current repo
sbozyp -S -R $REPO qr -r password-store
sbozyp qr -q ./office/mu
SEARCH
Usage: sbozyp <search|se> [-h] [-c] [-n] [-p] [-q] <regex>
Search for packages using a Perl regex.
Options are:
-h|--help Print help message and exit
-c Match case sensitive
-n Match against CATEGORY/PRGNAM instead of just PRGNAM
-p Print just the PRGNAM of matched packages
-q Suppress output if no matches are found
Examples:
sbozyp search --help
sbozyp se password-store
sbozyp se -p -q password.+
sbozyp se -c -n system/.+
sbozyp -S -R $REPO se password-store
sbozyp -W se mu
NULL
Usage: sbozyp <null|nu> [-h]
Do nothing. Useful if you just want to re-clone (with global -C option) or sync (with global -S option) a repository.
Options are:
-h|--help Print help message and exit
Examples:
sbozyp null --help
sbozyp nu
sbozyp -R $REPO -S nu
sbozyp -S nu
AUTHOR
Nicholas B. Hubbard (nicholashubbard@posteo.net)
COPYRIGHT
Copyright (c) 2023-2026 by Nicholas B. Hubbard (nicholashubbard@posteo.net)
LICENSE
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with sbozyp. If not, see http://www.gnu.org/licenses/.