Jump to content






Photo
- - - - -

HOWTO use sbopkg for Slackware

Posted by notKlaatu , 30 March 2008 · 2,908 views

What This Documentation Covers:Part 0 - Introduction to sbopkgPart 1 - Introduction to SlackBuilds.org Part 2 - sbopkg overview a. Download & Install b. First RunPart 3 - Walk-ThroughPart 4 - Command-Line UsagePart 5 - Configuration File** Please read Chess Griffin's official documentation **man sbopkgman sbopkg.confPart 0 - Introduction to sbopkgSlackware has a package manager and it is you.Luckily, you have lots of tools that can help you manage your packages. One resource you have are SlackBuilds at slackbuilds.org (often abbreviated as sbo). A new tool has been written by Chess Griffin and a number of Fine Contributors called sbopkg.As Chess describes it:Sbopkg is a command-line and dialog-based tool to synchronize with the SlackBuilds.org repository.....Sbopkg will allow the user to browse his or her local copy of the repository, read the ChangeLog, and view the README, SlackBuild, .info, and slack-desc files for each package. Sbopkg will also allow the user to select packages to build and it will download the source code, check the md5sum, and build a Slackware package.What does sbopkg NOT do?It will not check dependenciesIt will not automatically install the packageIt will not track what has been installedHow does a SlackBuild work?I don't know. It just does.Part 1 - Introduction to SlackBuilds.orgTo better understand how sbopkg will help you, it is good to understand how a SlackBuild traditionally works.Traditionally, you would do this:1. Download the SlackBuild2. tar -xzvf SomeProgramScript.tar.gz4. Download the Source Code for someprogram4. tar -xzvf SomeProgramSource.tar.gz5. mv SomeProgramSource/ SomeProgramScript/ 6. cd SomeProgramScript/7. su(password)9. chmod +x someprogram.SlackBuild 10. ./someprogram.SlackBuild11. cd /tmp12/ installpkg someprogram_sbo.tgzHow would you like to skip steps 1 - 10? Well, that's what sbopkg does!Part 2 - sbopkg overviewa. Download & InstallCurrently, sbopkg can be found at http://code.google.com/p/sbopkg/Download the latest version (let's assume it's sbopkg-0.0.4-noarch-1.tgz) to your Desktop. Open a terminal:% su(password)# installpkg sbopkg-0.0.4-noarchAnd now it's installed!In /etc/sbopkg/ there is a file called sbopkg.conf.sample which you should edit to suit your machine.Since it's wise to keep a good sample file around, make a copy of this before editing it, and rename it sbopkg.confNow open sbopkg.conf in your favourite text editor. The manditory change is the default location for your local SlackBuilds.org repository, which is initially set to /home/sbo. You will need to set this to something more like /home/username/sboOther settings can be tweaked as well; if you wish the Slackpkgs that you will be building with sbopkg to be stored somewhere other than in /tmp then you can set TMP= to whatever folder you'd rather store them to. And so on. If you have no special requirements, however, most of the defaults can be kept.Save the changes and quit the text editor.b. First RunTo start sbopkg, simply become root and type In sbopkgAn ncurses interface will appear.RsyncThe first selection will synchronize a local folder on your computer (made during installation) with what packages are currently available on the SlackBuilds.org website.ChangelogThis displays the most recent updates and changes made to the packages in the SlackBuilds repository.BrowseHere you are able to browse through all of the packages available in the SlackBuild repository. The packages are subdivided into general categories, like Academic, Desktop, Development, Games, Graphics, Libraries, Misc, Multimedia, Network, Office, and System.Within each category you'll find a plentiful selection of applications you might want to install. Cache[/]Holds the source tarballs that are downloaded and saved when a package is built. NOte taht this does not hold the actual packages; these are built and saved in /tmpLogThis shows you the exact verbose feedback of the packages you have or have attempted to create with sbopkg. You can read your logs at any time, and you may also choose to delete them or not.ExitPredictably enough, this quits the sbopkg program.Part 3 - Walk-ThroughThe best way to learn how to do this is to do it. So let's take a fairly complex example, such as the vector graphics application Inkscape, and install it step by step.To begin, we run sbopkg as root:% su(password)# sbopkgIf this is the first time we are running sbopkg, we'll want to start with Rsync. This will update our local copy of the SlackBuilds. We also may want to look at the ChangeLog to judge whether or not an Rsync is in order.The next step will be to select the package we want to install. Select Browse, and then the Category you wish to peruse. In this case we'll choose Graphics.In the Graphics category, locate Inkscape and hit Return. You'll be taken to an information screen about that package. The first option is the README file; skip over this; no one ever reads them anyway. Oh wait, actually, don't skip it. Read it! Read it carefully! This file tells you what your system needs to have on it before attempting an installation of the software you really want to install.From the README file, we see that Inkscape requires libsigc++, glibmm, gtkmm (which in turn depends upon cairomm), gc, and PyXMLFrequently, a packages dependencies are also found as packages in SlackBuilds. So we'll leave Inkscape alone for a moment and go install the dependencies first.To navigate out of the Inkscape information screen, his return to Exit, and then Cancel to return to Graphics, the Cancel again to return to the list of Categories.Now that we're in Categories, navigate to Libraries. Here, you will find all the Inkscape dependencies you need. It's a good rule of thumb to install the dependencies in the order they are listed in the README file.This means that first we'll select Libsigc++, listed here as libsigcxx. Press Return to go to the information screen. Read the README. You can also look at the .info file on this item, which will give you version and maintainer information.You can both view and edit the SlackBuild script itself. To view it, select SlackBuild. To Edit it, select Edit. Be aware that this will create a libsigcxx.SlackBuild.sbopkg file in your local copy of the SlackBuild. This is so that any edits you make are easily deleted with the Delete option.Finally, there is the option to Build a package. This will run the libsigcxx.SlackBuild (or your edited libsigcxx.SlackBuild.sbopkg if one exists).Once this is finished, you may continue to do the same process for each dependency, but in this case, since even the dependency gtkmm has a dependency (cairomm), it's not a bad idea to go and actually install the resulting package before continuing on to the next dependency.Installing a Slackpkg is as easy as opening a new tab in your terminal or changing to a new virtual terminal and using the Installpkg tool:% cd /tmp ; ls% su(password)# installpkg nameofpackage_SBo.tgzSlackware installs the package for you, and you can continue to resolve dependencies.If you come across a dependency that is not available via SlackBuilds.org, you may have to use a little known internet tool known among the elite hackers as Google. :^) This should help you find the dependency, which you can download and install manually with the typical ./configure and make && make install commands. You may also want to visit the software's official site, often given in the README in the Information window in sbopkg.After you have installed all dependencies, you are ready to resume the SlackBuild of Inkscape.Return to the Graphics category, find Inkscape again, and select Build.This will create a Slackpkg in your /tmp directory. Once the build is confirmed by sbopkg, you may Exit sbopkg.At this point all you have left to do is cd into /tmp and installpkg. That's it!Now go find another cool free app to install, and have fun! Part 4 - Command Line UsageIf that the fancy ncurses interface is just too much eye candy for your text-only console sensibilities, you may also use sbopkg straight from the command line. This is well documented by Chess Griffin in the sbopkg man page, accessible via this command:% man sbopkgThe syntax for the CLI version of sbopkg is:sbopkg [options]To do an rsync from SlackBuilds.org to your local SBo repository, use this command:# sbo -rTo view the most recent SlackBuilds.org changelog, use this:% sbopkg -lTo find a package and read its README file, use this command:% sbopkg -s NameOfPackageShould you wish to search for and build a package from your local SBo repository (ie, after you have done an rsync of SlackBuilds.org to your local system) use this command:# sbopkg -b NameOfPackageIf you need to manually specify where the directory containing your local SBo repository is, then use this flag:-d /path/to/directoryShould you need to override your default configuration file and point sbopkg to a different configuration file, use this:-f /path/to/non-default/config/file[b]Part 5 - Configuration FileThe default installation of sbopkg installation looks for a local repository in /home/user/sbo with the version of Slackware set to the latest stable version of Slackware (12.0 at this time).However, should you wish to modify these settings, it is as simple as editing /etc/sbopkg/sbopkg.configThis is very well documented by Chess Griffin here:% man sbopkg.configYou can also use the command line option (-f /path/to/non-default/config/file) to direct sbopkg to a different configuration file.[EOF]

Attached Images

  • Attached Image: sbo_penguin.png





Just to let you know, in Opera 9.64 (the current release), the above appears as one huge paragraph without any line-breaks. Some sentences are bold and the marking overflows onto subsequent sentences (e.g. from 'Cache' to 'Part 5').

It's pretty much unreadable in its current form.

Thanks.
  • Report

December 2014

S M T W T F S
 123456
78910111213
14151617181920
212223242526 27
28293031   

Recent Entries

Recent Comments

Search My Blog

BinRev is hosted by the great people at Lunarpages!