[SOLVED] why does slackware's package manager purposely not resolve dependencies?
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
@darksaurian - No one. It is an old argument, and you come down on the side of your personal preference.
It is a bit like electric windows in cars. Some people find them a convenience and an improvement but they add to the complexity and introduce further points of failure. Other people like the old manual window window winders because they work, are easy to fine tune and are easier to fix, but require a little extra effort.
Personally, package dependencies are not obvious for me, for example if i build an mplayer package and later want to install it on another machine, i don't know what are the library dependencies for the given package, so i often just prefer to recompile it again. There are third party programs like depfinder, tracepkg, maybe some more. But i'd like to see that dependency information could be queried wiht an official tool - with slackpkg or something.
I know, i can point slapt-get/gslapt to salix or slacky repositories and have dependency resolution available. But this doesn't help much with packages compiled from slackbuilds. Also if slackware installations are not identical on different machines then README files from slackbuilds.org may not contain adequate info on required dependencies of an app.
Hardly a showstopping issue, but still sometimes bugs me a bit.
It may have been mentioned already, but slapt-get (which just uses Slackware's built in package management tools) does do dependency resolution. It works well enough, but with no large central repo it only goes so far. I just thought I'd mention it. Time to duck and cover now.
It may have been mentioned already, but slapt-get (which just uses Slackware's built in package management tools) does do dependency resolution. It works well enough, but with no large central repo it only goes so far. I just thought I'd mention it. Time to duck and cover now.
Yeah, thats one of the main things that convinced me to come over. Not that I don't mind doing my own dependency resolution, but I'd like something to back me up when I mess everything up trying to learn the regular Slackware way lol
Keep in mind that slapt-get offers dependency resolution only with repositories that include dependency information, which is not the case with slackware repositories.
Yeah, thats one of the main things that convinced me to come over. Not that I don't mind doing my own dependency resolution, but I'd like something to back me up when I mess everything up trying to learn the regular Slackware way lol
If you start with a full install (from another thread you don't look short on disk space!), then Slackbuilds.org will have 99% of what you want/need and they specify the dependencies and generally have them available as well. Once you get slackbuilds (it's worth your time to learn how to edit them) then SBopkg, if installed, will search for the slackbuilds, download the source, and install packages based on a queue so it just takes time to run. It's not (usually) the nightmare it's made out to be sometimes.
So, suppose I find PackageA.tar.gz on some random source site. I try to compile and install, but it requires packageB, packageC, packageD, and packageE as dependencies to work. Will it tell me this when I try to compile it, or will I have to dig around the site that I downloaded from and hope that it lists the required dependencies? Or can I just expect most tarballs to have dependencies listed inside? I've relied mostly on apt-get in Debian for my software, only compiled a few things and they've never required dependencies I didn't already have
So, suppose I find PackageA.tar.gz on some random source site. I try to compile and install, but it requires packageB, packageC, packageD, and packageE as dependencies to work. Will it tell me this when I try to compile it, or will I have to dig around the site that I downloaded from and hope that it lists the required dependencies? Or can I just expect most tarballs to have dependencies listed inside? I've relied mostly on apt-get in Debian for my software, only compiled a few things and they've never required dependencies I didn't already have
Usually it will tell you that the build failed because libXYTJAH.so is missing or whatever. Not guaranteed. But as I said, slackbuilds.org is pretty extensive as is a full install of slackware.
If you want to add software to your Slackware installation quickly and easily, I can highly recommend a little program called sbopkg.
It 'syncs' with the SlackBuilds website and lets you create queues of packages to install and builds & installs them for you. It also enables you to track updates for the packages it has built for you.
There are a couple of limitations with it: Firstly, it doesn't do automatic dependancy resolution, which, as you've already been made aware, is the "Slackware way." However, once you know what dependancies are required by a particular package, you can create an installation queue which will build things in the order you tell it. This requires a bit of research and planning, but sbopkg makes the rest of the job easy.
The second disadvantage is that your choices are limited to software in the SlackBuilds database, but the list is extensive and growing daily. It has all of my needs covered!
Enjoy!
P.S. To answer your question: Dependancy resolution is too complicated. This is Linux for slackers. We don't complicate things here.
Simple...Slackware...many packaging tools...but mind your own (minor) dependencies........
Like the philosophy.....great!
Want more automated tracking tools...Linux affords you many other avenues
I understand it like electric window vs. manual window but I don't know why anyone care. But on internet forum it all the time like, "You like electric window, you are a fool! I hate you!" all the time. I not understand. If someone want to use electric window what it have to do with me.
I understand it like electric window vs. manual window but I don't know why anyone care. But on internet forum it all the time like, "You like electric window, you are a fool! I hate you!" all the time. I not understand. If someone want to use electric window what it have to do with me.
LOL! I am one of those people that refuses to buy a car (truck actually because it's utilitarian) with electric windows. I also buy manual transmissions because when something goes wrong I can at least get the vehicle home! I guess Slackware was predestined for me!
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.