SlackOnly as a main third-party repository

I decided to try using SlackOnly as my primary source of third-party software. My system is Slackware64 -multilib and all settings below take this into account. I manage the official Slackware updates and AlienBob’s multilib layer with slackpkg, complemented by it’s extension slackpkg+.

The default Slackware64 14.1 mirror that slackpkg uses is set in /etc/slackpkg/mirrors. Configuration of slackpkg+ is done in /etc/slackpkg/slackpkgplus.conf. In my case, I just wanted a multilib system, therefore I made the following modifications:

# Configuration for slackpkg+. See /usr/doc/slackpkg+-*/README for more details

# Enable (on) / Disable (off) slackpkg+

# set to '0' to never show the download progress bar
# set to '1' to show the bar only in download packages (default)
# set to '2' to always show the download bar
# set to '3' for a debug mode

# By default slackpkg+ deny to install 32bit packages.
# Set this flag to 'on' allow slackpkg+ to install 32bit packages on a 64bit slackware
# installation (possibly unsafe). Please, do not install both 32 and 64bit of the same
# package to avoid problems, and NEVER upgrade existant 64bit packages with relative 32bit package.
# Do not forget to install the multilibs.

# Enable (1) / Disable (0) the official slackpkg blacklist. May be useful to temporarily skip
# the slackware blacklist. You can also override it from command line:
# 'USEBL=0 slackpkg upgrade-all'

# Add custom option to 'wget'.
# You can solve the repository indisponibility issue by set a timeout here
WGETOPTS="--timeout=20 --tries=2"

# Enable (on) / Disable (off) notification events (see notifymsg.conf)

# Enable (on) / Disable (off) the greylist feature. See /etc/slackpkg/greylist

# If two or more repositories contains some same packages, you can specify
# from which repository you prefer to search it.
# The syntax is "<repository_name>:<package_name>"
# Accepts regular expressions. To give priority to an entire repository use "<repository_name>"

# Examples:
#PKGS_PRIORITY=( restricted:vlc )
# OR
#PKGS_PRIORITY=( myrepo )
# if you have two reporitories to give priority you must set both in the same line
#PKGS_PRIORITY=( myrepo restricted:vlc )
# if you want to install 'ktown' repository you must set it here
#PKGS_PRIORITY=( ktown )
# and read special instruction on /usr/doc/slackpkg+-*/repositories.txt
# If you want a multilib system, uncomment the multilib repository and set:
PKGS_PRIORITY=( multilib )
# (Use /usr/doc/slackpkg+-*/ to setup a multilib configuration)
# For both multilib and ktown set
#PKGS_PRIORITY=( multilib ktown )

# Otherwise you can try to upgrade a package from a repository that contains a package with the
# same tag of the already installed package. Tipically that means to upgrade a package from the
# same author of the already installed package.
# Note that this method may not works properly where two repositories contains a package with the
# same tag.
# Set TAG_PRIORITY to 'on' to enable this function

# List repositories you want to use (defined below)
# remember to launch 'slackpkg update' if you modify that row.
REPOPLUS=( slackpkgplus multilib )

# Define mirrors (uncomment one or more mirror; remember to add it to REPOPLUS)
# GPG Note: after adding a repository, you must to run 'slackpkg update gpg'
#           some repositories as salixos or slackel, have a partial GPG support;
#           for that repositories you may need to run slackpkg with 'slackpkg -checkgpg=off ...'

# Slackware 14.1 - x86_64

# use this to keep the slackpkg+ package updated

# Slackware current - x86_64

# Local repository:
# Local packages (you do not need metadata nor 'slackpkg update' command):

# Supported Repositories (see /usr/doc/slackpkg+-* for details and notes):

#Supports GPG
#msb: {14.0,14.1}/{1.6,1.8,1.10}/{x86,x86_64}/
#Does NOT support GPG

You may notice that the SlackOnly repository is listed in the configuration file of slackpkg+. However, the SlackOnly repository is rather big, so having a dependency resolution for it is something that I need.

Therefore, I decided to use slapt-get to manage the installation of third party packages from SlackOnly 14.1-x86_64. It even has a nice graphical front end called gslapt, which can be used to specify mirrors with different priority. I set Slackware64 14.1 mirror as OFFICIAL, AlienBob’s multilib as PREFERRED and SlackOnly as DEFAULT:


In this way, slapt-get will not insist on upgrading the multilib versions of glibc-* and gcc-* with the official ones. The first mirror in the list is deselected, because it points to, which can be slow. Instead, I specified the same mirror that I had selected for slackpkg from /etc/slackpkg/mirrors. The mirror keeps slapt-get and gslapt updated.

Since some of my packages are compiled from SBo, I do not want slapt-get to replace them with their SlackOnly versions. Therefore, I added the _SBo tag to the excludes list:


The above settings are stored in /etc/slapt-get/slapt-getrc:


At the moment, some packages at SlackOnly (those built prior to March 2015) lack dependencies information. In such case, I follow the dependencies from, but I hope this will be fixed in the near future.

In conclusion, I continue using slackpkg(+) to manage what I consider to be my ‘stock’ system: Slackware64 -multilib. Separately, slapt-get does an excellent job with the packages from SlackOnly. I continue to build packages from SBo by sbopkg, however now I install most (if not all) of their dependencies from SlackOnly.


Filed under SlackBuilds, system

7 responses to “SlackOnly as a main third-party repository

  1. Anonymous

    After adding the slackonly repo I’m getting a lot of ‘regex failed package name’ strings when I run ‘slapt-get –update’. Is it because of that the PACKAGES.TXT contains a lot of blank package names actually or what?
    And another Q: I have no official repos in slapt-getrc but I still see all official packages when run ‘slapt-get –list’. Does it look somewhere in the package cache? Thank you in advance.

  2. I really do not know about the ‘regex failed package name’. Could you post the error as an example?

    about the official packages: you mean that you see also the non-installed ones?

  3. The ‘regex failed package name’ is because some meta files missing the field of package name. This is happening only in 14.1-x86 repo. Thanks for reporting i will fix this right now.

  4. Pingback: Precompiled third-party packages | slackalaxy

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s