LinuxQuestions.org
Share your knowledge at the LQ Wiki.
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 08-12-2014, 09:49 PM   #1
Thomas Groman
LQ Newbie
 
Registered: Aug 2014
Posts: 8

Rep: Reputation: Disabled
Looking for package manager for Slackware that automatically installs dependencies


Are there any package managers out there that can automatically resolve package dependencies? As you can imagine installing each dependencies for a package can become quite hectic and time consuming especially on large scales. Is there any package manager out there that works similarly to APT for slackware?
 
Old 08-12-2014, 10:01 PM   #2
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Um... there's not that many unfortunately and most are still somewhat manual. Slackware by nature is a teach you to resolve dependencies manually distribution.

There are packages like sbopkg, slackpkg+, gslapt, and such that can work off some level of dependency resolution, but mostly, those are better suited for local repositories and slackpkg+ is a plugin for usage with 3rd party repositories, though sbopkg will work with SlackBuilds.org provided you sequence the installs correctly.

Other than that... it's just swallow your pride, learn, and do.

Last edited by ReaperX7; 08-12-2014 at 10:03 PM.
 
Old 08-12-2014, 10:31 PM   #3
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,223

Rep: Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320
There were projects like that (such as slapt-get), but they never caught on with regular Slackware users. SalixOS uses slapt-get though.

We do have something close. Sbopkg, a frontend for SlackBuilds.org, allows you to build queues of packages to install in order. It includes a queuefile generator, sqg, to create those queues for you. Once a queue for, say, ffmpeg has been generated, you can install it and all of its dependencies with:

Code:
sbopkg -i ffmpeg
Or, if you don't want to rebuild the packages you already have,

Code:
sbopkg -i ffmpeg -k
http://slackblogs.blogspot.ca/2014/0...es-easily.html

Quote:
As you can imagine installing each dependencies for a package can become quite hectic and time consuming especially on large scales.
This has really not been true since sbopkg came out. It's even less so in the light of the above.

Last edited by dugan; 08-12-2014 at 10:33 PM.
 
3 members found this post helpful.
Old 08-12-2014, 10:54 PM   #4
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
There is also the problem where some dependencies needed by some packages may not have a SlackBuild, so you have to manually install things using make.

It's handy to learn dependency resolution manually because when you get that random package that isn't in any repository and exists as source only, you'll know what to do for yourself, by yourself.
 
Old 08-13-2014, 12:32 AM   #5
1337_powerslacker
Member
 
Registered: Nov 2009
Location: Kansas, USA
Distribution: Slackware64-15.0
Posts: 862
Blog Entries: 9

Rep: Reputation: 592Reputation: 592Reputation: 592Reputation: 592Reputation: 592Reputation: 592
Quote:
Originally Posted by ReaperX7 View Post
There is also the problem where some dependencies needed by some packages may not have a SlackBuild, so you have to manually install things using make.

It's handy to learn dependency resolution manually because when you get that random package that isn't in any repository and exists as source only, you'll know what to do for yourself, by yourself.
That's true. I've installed packages that had no native SlackBuilds by a) adapting an existing SlackBuild and changing lines as appropriate; b) using Alien BOB's SlacBuild Toolkit, or c) using the tried-and-true configure;make;make install incantation. Works every time. And you learn a lot in the process, like how to become an effective system administrator.
 
Old 08-13-2014, 01:20 AM   #6
mrclisdue
Senior Member
 
Registered: Dec 2005
Distribution: Slackware
Posts: 1,134

Rep: Reputation: 277Reputation: 277Reputation: 277
+1 to dugan's post.

sbopkg and queuefiles = package manager

And, as is the case with slackware, it doesn't get any simpler than that, because ultimately YOU, and only YOU, are the package manager, and what can be better than that?

cheers,
 
Old 08-13-2014, 01:55 AM   #7
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 2,557

Rep: Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761
Dependency management is not necessarily an issue. Nor is it particularly tricky to deal with, honestly! Whilst it is possible to completely customise the selection of installed packages, users who are new to Slackware are recommended (by the accompanying documentation) to start with a full install (i.e. every package).

The two most common arguments I have seen for not wanting to do a full install are, “it wastes space” and “it bloats the system, slowing it down”. The reason for assuming these will be issues, is often based on experiences with other distros.

A full install of Slackware is around the 7Gb mark. This is not excessive in modern terms, considering modern computer disk drives. Additionally it is substantially smaller than a Windows or Mac install and yet it comes with a good deal more software.

Additionally you will experience no slow down from having a full install. On Slackware a full install running a lightweight window manager like Fluxbox will run every bit as fast a slimmed down install running Fluxbox. On most distros if you install some application that runs as a daemon/service, the install scripts in the post install of that package will typically start it immediately after installation finishes. On Slackware, unless you enabled a service during the Slackware install, or later manually, most of the software installed just sits on your disk doing nothing and hence has no affect on the speed of your running system at all.

The supposed advantage of a tool like apt-get is that you can easily locate and install some package at a moments notice. A full install of Slackware takes that one step further. If I want to try some program or utility I quite often find it is already there, negating the need to search via the package manager and then install it. This is particularly nice when installing an application would have pulled down hundreds of Mbs of extra dependencies. I might not care about some used disk space but I do care about wasting my networking connection if I am in the middle of using it or I am on a slow network.

Of course Slackware's full install does not contain every package out there but this is where SlackBuilds, in combination with sbopkg/sqg, come into play. As dugan explains above, using these tools will allow you to handle third party package dependencies simply.

Last edited by ruario; 08-13-2014 at 01:58 AM.
 
2 members found this post helpful.
Old 08-13-2014, 02:04 AM   #8
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 2,557

Rep: Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761
Quote:
Originally Posted by ReaperX7 View Post
There are packages like sbopkg, slackpkg+, gslapt, and such that can work off some level of dependency resolution
Slackpkg+ does nothing to assist with dependency resolution, neither does gslapt without the addition of dependency lists.

Quote:
Originally Posted by ReaperX7 View Post
Other than that... it's just swallow your pride, learn, and do.
Just my opinion of course but I think you are making this out to be harder than it is.
 
Old 08-13-2014, 02:09 AM   #9
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 2,557

Rep: Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761
Quote:
Originally Posted by Thomas Groman View Post
As you can imagine installing each dependencies for a package can become quite hectic and time consuming especially on large scales.
Unless you have already tried Slackware, you are the one who is currently imagining it. Most of the rest of us reading this thread run Slackware, so we do not need to imagine.

If you do a full install, then use the scripts provided to work with SlackBuilds.org, pretty much all the hard work is done for you.

Last edited by ruario; 08-13-2014 at 02:12 AM.
 
4 members found this post helpful.
Old 08-13-2014, 02:21 AM   #10
ReaperX7
LQ Guru
 
Registered: Jul 2011
Location: California
Distribution: Slackware64-15.0 Multilib
Posts: 6,558
Blog Entries: 15

Rep: Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097Reputation: 2097
Quote:
Originally Posted by ruario View Post
Slackpkg+ does nothing to assist with dependency resolution, neither does gslapt without the addition of dependency lists.

Just my opinion of course but I think you are making this out to be harder than it is.
How? Dependency resolution is as easy as:

Scenaro A: ./configure stops and demands package abc be installed.

Solution is google search what package that comes with, download it, and install it, and try again.

Scenario B: the SlackBuild list says it requires package XYZ and provides a link.

Solution is click the link, follow the instructions.

That's basics and it's easy. The only thing dependency resolution is... Is tedious. Other than that, it's one of the easiest skills in Linux to learn.
 
Old 08-13-2014, 02:56 AM   #11
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 2,557

Rep: Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761Reputation: 1761
Quote:
Originally Posted by ReaperX7 View Post
That's basics and it's easy.
Yep, I agree, my point was that you were the one making it like hard work when you say things like:

Quote:
it's just swallow your pride, learn, and do.
IMHO at least, this makes it sound like a big deal. Perhaps you don't agree (I would guess not since you wrote it) but that was my point.

Quote:
Originally Posted by ReaperX7 View Post
The only thing dependency resolution is... Is tedious.
A full install and getting extra packages from SlackBuilds.org (and making use of sbopkg with sqg), it needn't be that tedious. If you need to step outside that, sure it can be a little tedious but really I don't believe most people need to do that very often.

Last edited by ruario; 08-13-2014 at 03:03 AM.
 
Old 08-13-2014, 05:47 AM   #12
MadMaverick9
Member
 
Registered: Aug 2010
Posts: 353
Blog Entries: 4

Rep: Reputation: Disabled
Quote:
Originally Posted by dugan View Post
There were projects like that (such as slapt-get) ....
were?? Excuse me. Slapt-get is actively developed.
http://software.jaos.org/git/slapt-get/plain/ChangeLog
http://software.jaos.org/git/slapt-get/

And it works well:
Code:
slapt-get --no-upgrade --install kernel-generic kernel-generic-smp kernel-huge kernel-huge-smp kernel-modules kernel-modules-smp kernel-source
slapt-get --install kernel-firmware kernel-headers
With these two simple commands I can install an upgrade of the kernel without throwing away the previous one. Was useful when the kernel was upgraded in Slackware 14.0 on 31-May-2013.
 
1 members found this post helpful.
Old 08-13-2014, 07:56 AM   #13
lems
Member
 
Registered: May 2004
Distribution: BSD
Posts: 269

Rep: Reputation: 119Reputation: 119
Quote:
Originally Posted by MadMaverick9 View Post
[…]
Code:
slapt-get --no-upgrade --install kernel-generic kernel-generic-smp kernel-huge kernel-huge-smp kernel-modules kernel-modules-smp kernel-source
slapt-get --install kernel-firmware kernel-headers
With these two simple commands I can install an upgrade of the kernel without throwing away the previous one. Was useful when the kernel was upgraded in Slackware 14.0 on 31-May-2013.
In case anyone's interested, slackroll does this too, though it does not resolve dependencies. Still a nice and fast program.
 
1 members found this post helpful.
Old 08-13-2014, 08:05 AM   #14
lems
Member
 
Registered: May 2004
Distribution: BSD
Posts: 269

Rep: Reputation: 119Reputation: 119
Quote:
Originally Posted by ruario View Post
Slackpkg+ does nothing to assist with dependency resolution [...]
While this is not wrong, I will quote Matteo Rossini from Alien BOB's blog:

Quote:
slackpkg+, as slackpkg, does not have the dependency support, but some repository (as slacky and other) contains that information in metadata and slackpkg store that information in its database. So by typing “slackpkg info pkgname” you can see what package you must also install.
PS: Sorry for the double post.
 
1 members found this post helpful.
Old 08-13-2014, 11:29 AM   #15
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,223

Rep: Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320
And for the few packages that aren't available on SBo, there's src2pkg.

Last edited by dugan; 08-13-2014 at 11:30 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
I broke my package manager / broken package blocks installs [Debian Wheezy] arthoc Linux - Software 4 06-20-2014 03:57 AM
Slackware first impressions: package manager and dependencies dreamwalking Slackware 38 08-21-2010 03:26 PM
[SOLVED] why does slackware's package manager purposely not resolve dependencies? Cultist Slackware 93 06-25-2010 04:02 AM
How can I install a rpm package and get the dependencies installed automatically? sceadu Fedora 10 01-06-2006 04:10 PM

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

All times are GMT -5. The time now is 05:24 AM.

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