LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 02-16-2017, 10:51 AM   #1
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
slackrepo vs sbopkg & sbotools


Only because of this thread I am put into a state of what is this all about and stuff.

as @bassmadrigal stated in that post up there, he states that using slackrepo is a better choice of application for getting things installed on Slackwhere to cut out all of the typing to install everything to do with a package.

before I go further, I got a know. does this require a full cloning of the slackbuild.org sight just to install a few items off of it, or, is is pulling off of the slackbuild-git clone whatever is needed at the time of wanting to build and install a single package?

one package at a time then storing that on to the system as well as the finished product?

because it looks like it is only doing one thing at a time per this page
but per this statmeant here (for example, a clone of SlackBuilds.org),

it leads me to think I got a have it all to get a little.

even using https://github.com/Ponce/slackbuilds for current slack which is what I got set up ...

it looks like one needs to have everything cloned in side of ones own system and it keeps it updated for changes. which is good and dandy but I do not want the entire sight on my system just for a few items that I use out of slackbuilds.


that is over kill to me.

so I am just tying to get this straight in my head before I go to downloading and installing that or the other one first and learning how to use either one of them or it too looks like that Slackrepo can utilize (e.g. with slackpkg+). as well.

I am sure it is all simple and easy to use whence one has it figured out and all.

I just do not want a entire website on my system, that voids and nulls having it off my system and only having to go there to use whatever I need off of it.
 
Old 02-16-2017, 12:00 PM   #2
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 8,792

Rep: Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656Reputation: 6656
slackrepo is really designed for usage on a multi-computer system. It is designed to be installed on a clean Slackware installation, and to properly do what it's supposed to, that installation needs to remain clean. Because I don't have other machines that can remain clean, I use it in a VM. How it works is it will create a chroot environment using overlayfs for each and every program build. It will run installpkg on all the dependencies that the compiling program needs, then compile it, and store the package. When it is done, it destroys the chroot and the system remains clean. It will go and find all dependencies needed for a program and will create a dependency tree to know what order to compile/install things.

Code:
multimedia/kdenlive (ok)
  multimedia/xvidcore (ok)
  multimedia/x264 (ok)
  multimedia/schroedinger (ok)
  multimedia/mlt (ok)
    multimedia/ffmpeg (ok)
      multimedia/xvidcore (ok)
      multimedia/x265 (ok)
      multimedia/x264 (ok)
      multimedia/schroedinger (ok)
      multimedia/rtmpdump (ok)
      libraries/vid.stab (ok)
      libraries/libwebp (ok)
      libraries/libquvi (ok)
        libraries/libquvi-scripts (ok)
          development/lua (ok)
      libraries/libilbc (ok)
      libraries/libiec61883 (ok)
      libraries/libgme (ok)
      libraries/libfdk-aac (ok)
      libraries/libdc1394 (ok)
      libraries/libavc1394 (ok)
      libraries/libass (ok)
        libraries/enca (ok)
          perl/perl-Unicode-Map8 (ok)
            perl/perl-Unicode-String (ok)
          perl/perl-Unicode-Map (ok)
          misc/recode (ok)
      libraries/lame (ok)
      libraries/frei0r (ok)
      libraries/OpenAL (ok)
      development/snappy (ok)
      audio/twolame (ok)
      audio/speex (ok)
      audio/opus (ok)
      audio/opencore-amr (ok)
      audio/faac (ok)
        libraries/libmp4v2 (ok)
    libraries/libquicktime (ok)
      multimedia/x264 (ok)
      multimedia/schroedinger (ok)
      multimedia/ffmpeg (ok)
        multimedia/xvidcore (ok)
        multimedia/x265 (ok)
        multimedia/x264 (ok)
        multimedia/schroedinger (ok)
        multimedia/rtmpdump (ok)
        libraries/vid.stab (ok)
        libraries/libwebp (ok)
        libraries/libquvi (ok)
          libraries/libquvi-scripts (ok)
            development/lua (ok)
        libraries/libilbc (ok)
        libraries/libiec61883 (ok)
        libraries/libgme (ok)
        libraries/libfdk-aac (ok)
        libraries/libdc1394 (ok)
        libraries/libavc1394 (ok)
        libraries/libass (ok)
          libraries/enca (ok)
            perl/perl-Unicode-Map8 (ok)
              perl/perl-Unicode-String (ok)
            perl/perl-Unicode-Map (ok)
            misc/recode (ok)
        libraries/lame (ok)
        libraries/frei0r (ok)
        libraries/OpenAL (ok)
        development/snappy (ok)
        audio/twolame (ok)
        audio/speex (ok)
        audio/opus (ok)
        audio/opencore-amr (ok)
        audio/faac (ok)
          libraries/libmp4v2 (ok)
      libraries/lame (ok)
      audio/faad2 (ok)
      audio/faac (ok)
        libraries/libmp4v2 (ok)
    libraries/libdv (ok)
  multimedia/dvgrab (ok)
    libraries/libquicktime (ok)
      multimedia/x264 (ok)
      multimedia/schroedinger (ok)
      multimedia/ffmpeg (ok)
        multimedia/xvidcore (ok)
        multimedia/x265 (ok)
        multimedia/x264 (ok)
        multimedia/schroedinger (ok)
        multimedia/rtmpdump (ok)
        libraries/vid.stab (ok)
        libraries/libwebp (ok)
        libraries/libquvi (ok)
          libraries/libquvi-scripts (ok)
            development/lua (ok)
        libraries/libilbc (ok)
        libraries/libiec61883 (ok)
        libraries/libgme (ok)
        libraries/libfdk-aac (ok)
        libraries/libdc1394 (ok)
        libraries/libavc1394 (ok)
        libraries/libass (ok)
          libraries/enca (ok)
            perl/perl-Unicode-Map8 (ok)
              perl/perl-Unicode-String (ok)
            perl/perl-Unicode-Map (ok)
            misc/recode (ok)
        libraries/lame (ok)
        libraries/frei0r (ok)
        libraries/OpenAL (ok)
        development/snappy (ok)
        audio/twolame (ok)
        audio/speex (ok)
        audio/opus (ok)
        audio/opencore-amr (ok)
        audio/faac (ok)
          libraries/libmp4v2 (ok)
      libraries/lame (ok)
      audio/faad2 (ok)
      audio/faac (ok)
        libraries/libmp4v2 (ok)
    libraries/libiec61883 (ok)
    libraries/libdv (ok)
    libraries/libavc1394 (ok)
  multimedia/dvdauthor (ok)
  libraries/lame (ok)
  libraries/gsm (ok)
  audio/faad2 (ok)
  audio/faac (ok)
    libraries/libmp4v2 (ok)
  audio/amrnb (ok)
Then you can use various repo programs to install the packages. It does list the dependencies, so if you have a tool that will track dependencies (slackpkg+ doesn't), if you were to just install one program, it would install all the required dependencies (and they'd all be built because everything had already been done through slackrepo). However, slackpkg+ is supported, but you will need to install all the packages you built or specify each one for the dependencies of that program.

For many users who use single systems, slackrepo may introduce unneeded complexity, however, depending on your needs, it may still be worth it (I really like the way it handles updates, which I would hardly ever update my packages when I used sbopkg -- and I really like using hintfiles to manage all my custom requirements).

As for cloning the repo, most tools will actually do this. It will keep a local copy of the repo and if a program needs to be built, it will then download the source and build it. But it will clone the repo and update it automatically for you, behind the scenes, so you don't have to worry about it manually. In case you weren't understanding, slackrepo will only clone the repo. It does have the capability of building all the packages from the repo, but it doesn't do it unless you type the command (just slackrepo build).

sbopkg was my tool of choice before I found slackrepo, mainly because it is relatively simple and with sqg, it handles dependencies. It is also relatively easy to edit SlackBuilds or add additional dependencies through the interface. This works great for someone only managing a single system. However, I found I hardly ever updated programs in there, because I was bitten once when a library was updated and it broke several other packages that relied on it. Since it didn't track all the programs that had been installed that required that dependency, it was quite the work to figure it all out. After that, I just never updated unless it was a specific program for a specific reason (youtube-dl was a frequently updated program since youtube would change the backends frequently, breaking the script).

sbopkg does also provide the ability to edit the slackbuild queue file (sqf) to pass options and additional dependencies, but if you run sqg and rebuild that queue file (which could add new requirements the maintainer added in an update), all your customization would be gone and you'd have to redo it. An example I have is my ffmpeg.sgf file I had. It passed all the options to ffmpeg needed to include support for all the optional dependencies I included. If I remember right, the @ symbol in front of the packages tell sbopkg to process any sqf files for those packages as well, allowing you to have multiple options for multiple programs. I don't think I ever went that big into it (although, I have with slackrepo).

Code:
@lame
@x264
@libass
@libbluray
@celt
@libdc1394
@faac
@frei0r
@gsm
@libiec61883
@libavc1394
libilbc
@openjpeg
@ladspa_sdk
@lame
@libmodplug
@OpenAL
@opencore-amr
@opus
@rtmpdump
@schroedinger
@speex
@twolame
@libvpx
@xvidcore
ffmpeg | ASS=yes BLURAY=yes CELT=yes DC1394=yes FAAC=yes FREI0R=yes GSM=yes IEC61883=yes ILBC=yes JP2=yes LADSPA=yes LAME=yes MODPLUG=yes OPENAL=yes OPENCORE=yes OPENSSL=yes OPUS=yes RTMP=yes SCHROEDINGER=yes SPEEX=yes TWOLAME=yes VPX=yes X264=yes XVID=yes
I know both sbopkg and slackrepo will clone the repo to your computer... I imagine sbotools does it as well. If I remember right, the SBo repo is around 200MB, so it doesn't really take up that much space. And I don't think SBo has a publicly available search API that would allow these programs to search the website and download the needed files (although, someone could probably hack something together, but it probably wouldn't be worth their time to save 200MB).

I can't comment on sbotools since I've never used it.

Clear as mud?
 
1 members found this post helpful.
Old 02-16-2017, 12:04 PM   #3
montagdude
Senior Member
 
Registered: Apr 2016
Distribution: Slackware
Posts: 2,011

Rep: Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619
Can't spare a couple hundred megabytes?

AFAIK, all the different tools (slackrepo, sbopkg, sbotools) download the entire repository in one way or another. It is just much more efficient for those tools to have a local copy of all the files in order to tell what is installed, upgradable, resolve dependencies, etc. Since SBo does not include source code, the entire software repository of 6000+ entries is still very light to mirror locally.
 
1 members found this post helpful.
Old 02-16-2017, 12:31 PM   #4
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
@bassmadrigal thanks for that detailed discription of how slackrepo works and a example of how to run it in a VM.

@montagdude "Can't spare a couple hundred megabytes?"

not knowing I just put Windows and its two other partitions it says it needs, and Void and Slack and /home on a 256GB sdd. 42GB left on /home to play with and 30GB on slack / without having installed everything I use with it yet. Same for Void they both are fresh installs with just a little bit of what I install on them in the form of applications and tools I use.

I have been known to use more than 30GB for slack / before. so yeah I have no idea how much room I have to play with at this point.

Still just taking my time, as I inadvertently lost every one of my txz and tgz files I had saved from previous installs of Slack, and my fingers are tired (lol not really) but it makes for a lot of typing and downloading everything all over again to install everything again.

then I seen that one post in here about sbopkg, and sbotools, then slackrepo.

I am currently using (trying) sbotools.
which seemed so far at this moment easy to use as I just tried it with vlc .

I just ran
Code:
sboinstall vlc
and it ran something else fetch and pulled everything VLC needed ran the options on all of the depends, giving me a chance to go default setting or custom settings with each depends, it is currently still compiling because I said why not use all of the options, except for just a few.

so yeah still waiting for the end point to try something else too and see how it goes.

I tried vlc first because I know it has lots of depends.

Last edited by BW-userx; 02-16-2017 at 12:46 PM.
 
Old 02-16-2017, 12:37 PM   #5
montagdude
Senior Member
 
Registered: Apr 2016
Distribution: Slackware
Posts: 2,011

Rep: Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619Reputation: 1619
Quote:
Originally Posted by BW-userx View Post
@montagdude "Can't spare a couple hundred megabytes?"
not knowing I just put Windows and its two other partitions it says it needs, and Void and Slack and /home on a 256GB sdd. 42GB left on /home to play with and 30GB on slack / without having installed everything I use with it yet. Same for Void they both are fresh installs with just a little bit of what I install on them in the form of applications and tools I use.

I have been known to use more than 30GB for slack / before. so yeah I have no idea how much room I have to play with at this point.
I have only used sbotools and sbopkg a little bit, mainly just to try them out, but I'm pretty sure that with both of them you can set a custom location for where the repo will be stored. That means you could have it point to somewhere on your home partition, in case you are running out of space on /. You might want to look into that.
 
Old 02-16-2017, 01:04 PM   #6
55020
Senior Member
 
Registered: Sep 2009
Location: Yorks. W.R. 167397
Distribution: Slackware
Posts: 1,307
Blog Entries: 4

Rep: Reputation: Disabled
Hi, let's put this officially on the record: slackrepo is heavyweight by design. Both sbopkg and sbotools are excellent choices ... and they are both better maintained than slackrepo
 
1 members found this post helpful.
Old 02-16-2017, 01:21 PM   #7
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by montagdude View Post
I have only used sbotools and sbopkg a little bit, mainly just to try them out, but I'm pretty sure that with both of them you can set a custom location for where the repo will be stored. That means you could have it point to somewhere on your home partition, in case you are running out of space on /. You might want to look into that.
good point: I could too just clean it out and save the completed task when I am done too.

Code:
 libavutil versions 55 and later are not supported.
does not work got a look into it for vlc

Code:
Executing install script for pcmanfm-1.2.5-x86_64-1_SBo.tgz.
Package pcmanfm-1.2.5-x86_64-1_SBo.tgz installed.


Cleaning for pcmanfm-1.2.5...
no problems so yeah cool

Last edited by BW-userx; 02-16-2017 at 01:23 PM.
 
Old 02-16-2017, 10:30 PM   #8
drgibbon
Senior Member
 
Registered: Nov 2014
Distribution: Slackware64 15.0
Posts: 1,220

Rep: Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942
For me sbotools hits a nice sweet spot between taking care of some tiresome things (like manually handling dependencies), but still giving me control over what I'm doing. VLC is a bit of a strange one though, because of the way the info file is set up. In vlc.info, the REQUIRES lists a whole bunch of thing which sbotools interprets as being required for installation. But they're not actually hard dependencies, and the VLC build process will just detect whatever is in the system and compile in support (or not) depending on availability. If you wanted to pick and choose with VLC, you'd need to do;
Code:
sboinstall -R vlc
and then it will build in whatever deps you have installed (ignoring the listed requirements in vlc.info). If you want VLC with everything, a straight
Code:
sboinstall vlc
will do that.

I don't have any experience with slackrepo, but the way dependencies are managed sounds very good (at present sbotools will not sort out upgrades for packages whose dependencies have been upgraded separately).

Last edited by drgibbon; 02-16-2017 at 10:33 PM.
 
Old 02-16-2017, 10:33 PM   #9
drgibbon
Senior Member
 
Registered: Nov 2014
Distribution: Slackware64 15.0
Posts: 1,220

Rep: Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942Reputation: 942
Quote:
Originally Posted by BW-userx View Post
Code:
 libavutil versions 55 and later are not supported.
does not work got a look into it for vlc
Probably ffmpeg related. If you have ffmpeg installed from SBo, then VLC should build.
 
Old 02-17-2017, 07:02 AM   #10
chris.willing
Member
 
Registered: Jun 2014
Location: Brisbane, Australia
Distribution: Slackware,LFS
Posts: 915

Rep: Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619
Quote:
Originally Posted by BW-userx View Post
Code:
 libavutil versions 55 and later are not supported.
does not work got a look into it for vlc
The problem is that the SBo SlackBuilds are for 14.2 but you are on -current. The SBo ffmpeg SlackBuild (for 14.2) has libavutil version 54; your -current has its own ffmpeg already with libavutil version 55. That version is not usable by the vlc (2.2.4) specified in the SBo SlackBuild.

To build vlc on -current, you'll need use a 3.0.0 series vlc from https://nightlies.videolan.org/build/source/. You can use the vlc.SlackBuild from SBo; just comment out the patch commands in there. Also, either add '--disable-libva' to the configuration options or update your libva version to 1.7.3 as discussed here.

chris

Last edited by chris.willing; 02-17-2017 at 07:05 AM. Reason: Add link
 
2 members found this post helpful.
Old 02-17-2017, 08:33 AM   #11
BW-userx
LQ Guru
 
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342

Original Poster
Rep: Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242Reputation: 2242
Quote:
Originally Posted by drgibbon View Post
Probably ffmpeg related. If you have ffmpeg installed from SBo, then VLC should build.
and @chris.willing

naw didn't do that, googled it. found where someone modded the script to deal with the version numbers, said haha don't want to do that I am using sboinstall. so I just bounced over to BOB Allen sight and downloaded that already made install of VLC and well it is done. easy peasy.

Last edited by BW-userx; 02-17-2017 at 08:35 AM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Backspace produces ^H after running slackrepo slalik Slackware 28 05-28-2017 04:22 AM
slackrepo and custom SlackBuild atelszewski Slackware 4 11-01-2016 06:42 PM
sbopkg/sqg vs sbotools? Didier Spaier Slackware 2 11-11-2015 04:39 AM
[SOLVED] Is sbopkg & slackbuild for Slackware 13.37 stable or current? gabytf Slackware 3 03-16-2012 03:31 AM
[SOLVED] Used sbopkg to download & install Wine - it's been 'installing' for over 1 hr... Robert.Thompson Slackware 6 03-05-2011 03:22 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:04 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration