# sboconfig

[NAME](#name)\
[SYNOPSIS](#synopsis)\
[DESCRIPTION](#description)\
[OPTIONS](#options)\
[SBOTEST](#sbotest)\
[EXIT CODES](#exit-codes)\
[BUGS](#bugs)\
[SEE ALSO](#see-also)\
[AUTHORS](#authors)\
[MAINTAINER](#maintainer)

------------------------------------------------------------------------

## NAME

**sboconfig** - set **sbotools** configuration options

## SYNOPSIS

    sboconfig [-h|-v]

    sboconfig [-l|-n]

    sboconfig [--reset]

    sboconfig [-CFKINOPRSXYcbdegw TRUE|FALSE] [-Zj #|FALSE] [-DLpo
/path\|FALSE] \
              [-s /path|/var/lib/sbotools] [-B branch_name|FALSE] [-V
#.#\|FALSE] \
              [-r url|FALSE]

## DESCRIPTION

**sboconfig** is a front-end for managing **sbotools** configuration
options. Using **sboconfig** without any flags enters the **Settings**
menu within [sbotool(1)](sbotool.1.md), provided that **dialog(1)** is installed. If
running as root, settings changes can be done here.

The [sbotools.conf(5)](sbotools.conf.5.md) file can also be edited manually; any fields
not relevant to **sbotools** configuration are ignored. To use a
configuration directory other than */etc/sbotools*, export an
environment variable **SBOTOOLS_CONF_DIR** with an absolute path.

*/root*, */home*, */*, possible top-level directories under */home* and
paths under *SBO_HOME/distfiles* or *SBO_HOME/manual_downloads* are not
permitted as directory settings.

Non-root users can only call **sboconfig** with the **\--list**,
**\--non-default**, **\--help** and **\--version** flags.

## OPTIONS

All values default to **FALSE** except for **SBO_HOME**. Recommended
non-default settings include **TRUE** for:

• **ETC_PROFILE**

• **GPG_VERIFY**, provided the upstream repository is regularly signed
with **gpg(1)**.

**-l\|\--list**

List the current configuration options, including unmodified defaults.
**\--list** also shows the **sboconfig** flag used to set each option
for reference. The **\--list** flag can be used without root privileges.

**-n\|\--non-default**

List non-default configuration options. **\--non-default** also shows
the **sboconfig** flag used to set each option for reference. The
**\--non-default** flag can be used without root privileges.

**\--reset**

Restore the default configuration to */etc/sbotools/sbotools.conf*.

**-B\|\--branch (FALSE\|branch_name)**

**GIT_BRANCH**: If **FALSE**, use the default git branch for the
Slackware version, if any. If **branch_name**, attempt to change
branches to **branch_name** when using [sbocheck(1)](sbocheck.1.md) with an upstream
git repository.

**-b\|\--build-ignore (FALSE\|TRUE)**

**BUILD_IGNORE**: If **TRUE**, do not perform upgrades unless the
version number differs. By default, upgrades also occur when the build
number differs.

**-C\|\--classic (FALSE\|TRUE)**

**CLASSIC**: If **TRUE**, automatically enable **RSYNC_DEFAULT**,
**BUILD_IGNORE** and **NOCOLOR** (overriding the contents of
[sbotools.conf(5)](sbotools.conf.5.md)). Build increment, out-of-tree SlackBuild and
orphaned SlackBuild checks by [sbocheck(1)](sbocheck.1.md) are disabled, and
previously-used build options are not displayed. This provides a more
traditional **sbotools** look and feel for those who want it.

**-c\|\--noclean (FALSE\|TRUE)**

**NOCLEAN**: If **TRUE**, do not clean working directories after
building. These are the build and *package-(sbo)* directories under
*/tmp/SBo* (or *\$TMP*).

**-D\|\--dialogrc (FALSE\|/path)**

DIALOGRC: If set to an **absolute path**, use that file as *dialogrc*
when running [sbotool(1)](sbotool.1.md).

**-d\|\--distclean (FALSE\|TRUE)**

**DISTCLEAN**: If **TRUE**, remove the package and source archives after
building. Source archives are otherwise retained in md5sum-designated
directories under */var/lib/sbotools/distfiles* (with default
**SBO_HOME**). If **PKG_DIR** is set, package archives are saved there
regardless of **DISTCLEAN**.

**-e\|\--etc-profile (FALSE\|TRUE)**

**ETC_PROFILE**: If **TRUE**, source any executable scripts in
*/etc/profile.d* named *\*.sh* before running each SlackBuild in the
build queue.

Recommended value: **TRUE**

**-F\|\--force-obsolete (FALSE\|TRUE)**

**FORCE_OBSOLETE**: If **TRUE**, treat the obsolete script list at
*/etc/sbotools/obsolete* as a supplementary blacklist on Slackware
-current. Do not set to **TRUE** unless you are using a repository that
does not remove outdated scripts.

**-g\|\--gpg-verify (FALSE\|TRUE)**

**GPG_VERIFY**: If **TRUE**, use **gpg(1)** to verify the contents of
the local repository (and, if applicable, */etc/sbotools/obsolete*) when
running [sbocheck(1)](sbocheck.1.md), [sboinstall(1)](sboinstall.1.md) and [sboupgrade(1)](sboupgrade.1.md).
Missing public keys are detected, and a download from
[keyserver.ubuntu.com](keyserver.ubuntu.com) on port 80 is offered if
available.

Recommended value: **TRUE** if the upstream repository is usually
signed.

**-I\|\--instant-stop (FALSE\|TRUE)**

**INSTANT_STOP**: If **TRUE**, offer to stop the queue as soon as one
build fails. If non-interactive, stop immediately. Otherwise, builds
continue, skipping any SlackBuild that depends on a previously-failed
build.

**-j\|\--jobs (FALSE\|#)**

**JOBS**: If **numerical**, pass to the **-j** argument when a
SlackBuild invoking **make** is run.

**-K\|\--nocolor (FALSE\|TRUE)**

**NOCOLOR**: If **TRUE**, disable **sbotools** color output. To
customize color output, edit the */etc/sbotools/sbotools.colors* file
directly. See [sbotools.colors(5)](sbotools.colors.5.md) for details.

**-L\|\--log-dir (FALSE\|/path)**

**LOG_DIR**: If set to an **absolute path**, save build logs here. Logs
are saved with the name of the script and a timestamp. Please note that
because **standard error** must be redirected for a complete log, colors
and formatting may differ when running some SlackBuilds unless
**LOG_DIR** is **FALSE**.

**-N\|\--nonet (FALSE\|TRUE)**

**NONET**: If **TRUE**, do not allow network access when running
SlackBuilds.

**-O\|\--obsolete-check (FALSE\|TRUE)**

**OBSOLETE_CHECK**: If **TRUE**, download updated copies of the obsolete
script list and the perl version history file to
*/etc/sbotools/obsolete* and */etc/sbotools/perl_vers*, respectively,
from the **sbotools** home page at
<https://pghvlaans.github.io/sbotools> when running [sbocheck(1)](sbocheck.1.md) in
Slackware -current.

**-P\|\--cpan-ignore (FALSE\|TRUE)**

**CPAN_IGNORE**: If **TRUE**, install scripts even if they are already
installed from the CPAN.

**-p\|\--pkg-dir (FALSE\|/path)**

**PKG_DIR**: If set to an **absolute path**, packages are stored there
after installation. This overrides the **DISTCLEAN** setting for saved
packages.

**-s\|\--sbo-home (/var/lib/sbotools\|/path)**

**SBO_HOME**: If set to a **path**, this is where the
**SlackBuilds.org** tree is stored. The default setting is
*/var/lib/sbotools*. The tree must be re-downloaded if the **SBO_HOME**
setting changes.

**-o\|\--local-overrides (FALSE\|/path)**

**LOCAL_OVERRIDES**: If set to an **absolute path**, any directory name
in the top level under that path matching a SlackBuild name is used in
preference to the in-tree version. This works even if the SlackBuild is
out-of-tree. Scripts installing packages not marked with the *\_SBo* tag
are neither upgradable with [sboupgrade(1)](sboupgrade.1.md) nor removable with
[sboremove(1)](sboremove.1.md). *slack-desc*, an *info* file and a SlackBuild must all
be present.

**-V\|\--slackware-version (FALSE\|#.#)**

**SLACKWARE_VERSION**: If set to a **version number**, use the
**SlackBuilds.org** repository for that version of Slackware rather than
the one specified in */etc/slackware-version*.

**-r\|\--repo (FALSE\|url)**

**REPO**: If set to a git or rsync **URL**, use that repository instead
of the **sbotools** default for your **SLACKWARE_VERSION**. The default
repositories are under rsync://slackbuilds.org/slackbuilds if
**RSYNC_DEFAULT** is **TRUE**, <https://github.com/Ponce/slackbuilds/>
if running Slackware -current and
<https://gitlab.com/SlackBuilds.org/slackbuilds/> otherwise. The
repository must be laid out in the same manner as one found at
<https://git.slackbuilds.org/slackbuilds> such that SlackBuild
directories are under the category directories.

**-R\|\--rsync (FALSE\|TRUE)**

**RSYNC_DEFAULT**: If set to **TRUE**, use rsync default mirrors except
for Slackware -current.

**-S\|\--strict-upgrades (FALSE\|TRUE)**

**STRICT_UPGRADES**: If set to **TRUE**, upgrades are only attempted if
the incoming version or build number is greater. This has no effect on
scripts in the local overrides directory or when reinstalling with
[sboinstall(1)](sboinstall.1.md).

**-w\|\--nowrap (FALSE\|TRUE)**

**NOWRAP**: If set to **TRUE**, do not wrap **sbotools** output.

**-X\|\--no-socheck (FALSE\|TRUE)**

**NO_SOCHECK**: If set to **TRUE**, do not check for missing first-order
shared object (solib) dependencies among *\_SBo* packages when running
[sbocheck(1)](sbocheck.1.md) and [sboupgrade(1)](sboupgrade.1.md). Additionally, [sbocheck(1)](sbocheck.1.md)
does not search for incompatible **perl**, **python** and **ruby**
*\_SBo* packages.

**-Y\|\--idle-build (FALSE\|TRUE)**

**IDLE_BUILD**: If **TRUE**, use the *idle* IO priority class when
building and installng packages. If **FALSE**, use the incoming
**ionice(1)** settings, generally class *none*. See **ionice(1)** for
more information.

**-Z\|\--niceness (FALSE\|-20..19)**

**NICENESS**: If set to a **number** from -20 through 19, use that as
the absolute niceness value for [sboinstall(1)](sboinstall.1.md) and [sboupgrade(1)](sboupgrade.1.md)
during the building and installation phase. If **FALSE**, simply use the
niceness value that the script started with, generally *0* without user
intervention. A lower niceness value gives a process greater priority.
Use with caution.

**-h\|\--help**

Show help information.

**-v\|\--version**

Show version information.

## SBOTEST

**sboconfig** is called when running **sbotest config**; the following
default values change in this situation:

**-A\|\--sbo-archive**

Defaults to */var/lib/sbotest/archive*. This setting is specific to
**sbotest**.

**-e\|\--etc-profile**

Defaults to **TRUE**.

**-L\|\--log-dir**

Defaults to */var/lib/sbotest/logs*.

**-P\|\--cpan-ignore**

Defaults to **TRUE**.

**-p\|\--pkg-dir**

Defaults to */var/lib/sbotest/tests*.

**-s\|\--sbo-home**

Defaults to */var/lib/sbotest*.

Running **sbotest config** without options is ineffective.

## EXIT CODES

**sboconfig** can exit with the following codes:

0: all operations were successful.\
1: a usage error occurred (e.g. passing invalid option specifications)\
2: a script or module error occurred.\
6: a required file handle could not be obtained.\
16: reading keyboard input failed.

## BUGS

None known. If found, Issues and Pull Requests to
<https://github.com/pghvlaans/sbotools/> are always welcome.

## SEE ALSO

[sbocheck(1)](sbocheck.1.md), [sboclean(1)](sboclean.1.md), [sbocutleaves(1)](sbocutleaves.1.md), [sbofind(1)](sbofind.1.md), [sbohints(1)](sbohints.1.md),
[sboinstall(1)](sboinstall.1.md), [sboremove(1)](sboremove.1.md), [sbotool(1)](sbotool.1.md), [sboupgrade(1)](sboupgrade.1.md), [sbotool(1)](sbotool.1.md),
[sbotools.colors(5)](sbotools.colors.5.md), [sbotools.conf(5)](sbotools.conf.5.md), [sbotools.hints(5)](sbotools.hints.5.md), dialog(1),
gpg(1)

## AUTHORS

Jacob Pipkin \<jacob.pipkin (at) icloud (dot) com\>

Luke Williams \<xocel (at) iquidus (dot) org\>

Andreas Guldstrand \<andreas (dot) guldstrand (at) gmail (dot) com\>

## MAINTAINER

K. Eugene Carlson \<kvngncrlsn (at) gmail (dot) com\>

------------------------------------------------------------------------
