Advanced

Installing sbopkg with Slackware 14.1

Posted by jdixon on · 12 comments
lxer.com; By James Dixon
Mail this story
Print this story

How to install the sbopkg Slackbuids.org package manager with Slackware 14.1.

One of the more frequently voiced complaints you will hear about Slackware is that it has a limited number of software packages available. There is a fair amount of truth in this claim, as my full install of Slackware 14.1 has just over 1200 packages installed.

That said, Slackware has, in my experience, one of the best environments for compiling your own software, and the site Slackbuilds.org has scripts for compiling a large number of packages which are not included in Slackware.

The problem with Slackbuilds.org is that it is not integrated into Slackware in anyway. You have to manually download the slackbuilds script for your software, manually download the source code from another location, and manually compile the software. This is not, by most people standards, a particularly user friendly process.

For those Slackware users not feeling up to this process, there is a command line tool to automate it for you. That tool is sbopkg, and it provides a dialog/ncurses interface to Slackbuilds.org which automates the building and installation of packages for you.

Here are the steps for installing the latest version of sbopkg with Slackware 14.1.

1) Download the latest Slackware package from https://www.sbopkg.org/downloads.php using whatever method you find most convenient. At the time of this article, the latest version is 0.37.1 and the package filename is sbopkg-0.37.1-noarch-1_wsr.tgz. I will use that version in the commands below. If the version has changed, you would use the new filename in the commands.

2) Open your favorite terminal and su to root.

3) Change to the directory where you downloaded the package.

4) Run the command installpkg sbopkg-0.37.1-noarch-1_wsr.tgz

And if all goes well, sbopkg will now be installed.

To run sbopkg, open your favorite terminal, su - to root (while the sbopkg authors recommend using the - argument, I've never had a problem not using it. YMMV), and type sbopkg.

Note that the current version of sbopkg defaults to the Slackware 14.1 Slackbuilds repository. If you are running an older version of Slackware, you will probably want to change to repository for that version. To do so from within sbopkg, select Utilities from the main menu, then select Repository and select the desired Slackbuilds repository. I've never had a reason to change any of the other configuration options.

Once your repository is set you will want to sync your local repository with the remote one. You do this by selecting Sync from the main menu.

With sbopkg installed and synced you can browse or search the repository for packages to install, you can list and uninstall installed packages, and you can search for updates to your installed packages.

Once you find a package you wish to examine you can select it and the various menus will allow you to view the enclosed readme file (which lists the package dependencies), view the info file, view the Slackbuild file, pass build options to the package, and build the package. It also allows you to add the package to a queue, which is useful if your building a set of packages (like a package with its dependencies).

Slackbuilds.org greatly expands the number of packages available for Slackware, and sbopkg makes compiling and installing those packages comparatively easy. If you're a Slackware user and haven't tried sbopkg, I hope you will find this article useful.

  Nav
» Read more about: Story Type: LXer Features; Groups: Linux, Slackware

» Get new stories by e-mail: nightly or as they are published

« Return to the newswire homepage

  Related stories
» More like this

Comments (12)

Command line equivalents too

frankiej ·
sbopkg also has command line options for a lot of its functionality as well (it could be "most" but I haven't done a comparison). Those can be useful to quickly download and build packages without having to navigate through the menus to do so.
jdixon ·
> ... sbopkg also has command line options for a lot of its functionality

I believe almost all of it's functionality is available from the command line. The man pages covers the details.

However, this article was intended as a quick why and how guide for those who don't have the time or inclination to compile their own packages, but would like to expand the range of packages available for Slackware. Those people probably will prefer the dialog/ncurses interface.

This is the first of what I hope to be several Slackware oriented articles, and since some of them will cover software available via Slackbuilds.org, I thought it best to start with a quick write up on sbopkg.
seatex ·
Being only an occassional Slackware user - occassionally setting up Slackware systems for a client - I find sbopkg to be a great time-saver. I have also used Salix instead of Slackware as well, as it is compatible and even simpler to setup.
jdixon ·
> I have also used Salix instead of Slackware as well, as it is compatible and even simpler to setup.

Salix is a very good Slackware derivative which includes sbopkg and integrates it into their package installation options.
frankiej ·
> However, this article was intended as a quick why and how guide

Completely understood, I was just adding the comment because I had been using sbopkg for so long and never read the man page until recently and realized I had options :)

> This is the first of what I hope to be several Slackware oriented articles,

Looking forward to them!

richarson ·
@jdxon, my case is exactly the reverse, I've been using sbopkg for over a year and only recently found out it has a ncurses interface :)

Looking forward to more Slack articles!

Number of packages

richarson ·
Just to point out that in Slackware one binary package usually contains everything said package provides, but in other distros one source package is divided in several sub-packages so comparing binary packages is a little unfair.

For example, in Slackware you have exaclty one package for python, in CentOS 7 one python source package becomes 7 binary packages.

But yes, in general Slackware tends to be in the 'fewer packages' category of distros.
jdixon ·
> in Slackware one binary package usually contains everything said package provides, but in other distros one source package is divided in several sub-packages so comparing binary packages is a little unfair.

Yes. And what is this _dev package other distro's keep talking about? :)
penguinist ·
Fedora/CentOS/RHEL use the naming convention:

package_name.rpm # for the binary

package_name-devel.rpm # for the build environment. i.e. - all the .h header files that are required if you need to build against this package

package_name.src.rpm # for the full source
jdixon ·
> ...package_name-devel.rpm # for the build environment. i.e. - all the .h header files that are required if you need to build against this package

Yes, so does Debian, though I don't think they use the same naming convention. Slackware doesn't do that.
gus3 ·
I will call point left to Debian/RH for separating the -devel packages, which made sense for embedded development. Given that flash-friendly storage is still a work in progress, minimizing filesystem pollution from lots of /usr/include/*.h can be advisable.

But that's the only advantage that comes to mind.
richarson ·
> I will call point left to Debian/RH for separating the -devel packages, which made sense for embedded development

Yes, and Debian goes to even greater lenghts to split a source package (foo, libfoo, libfoo-bin, foo-dev, libfoo-dev, foo-doc, etc) which is specially nice to make a really tiny installation.

Post a comment

A free account is needed to post. Write your comment here first: your text is kept in this browser while you sign up or log in, and is waiting for you when you come back.

Your message:
|||||
10
Markdown: **bold**, *italic*, [text](https://link), - lists, > quotes, $x^2$ for math. Formatting help

Sign up and post (it is free)  or  Log in and post