Slackware package dependency tracking add on tools
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.
Slackware package dependency tracking add on tools
Attention!
This is not a trolling thread, nor a dead horse beating thread.
Those who came for that go elsewhere, please.
This is about addons and assessing their dependencies in day to day Slackware administration.
This is important IMHO. I might run a pool based on the feedback on this thread.
In the early days of Mplayer (mplayerhq) and my affairs on Mandrake Linux, i did make it from source and by hand:
1. ./configure
2. check whats missing still
3. find, download and build the missing lib form tarball
4. loop to "1."
5. run make - fails -> goto "1."
so I know (and painstakingly remember) there can be manual dependency tracking - been there; done that.
Nowdays I use Slackware and enjoy it quite well.
But when I have to add and external package I like to:
1. find out the exact name of the missing/desired package
2. assess it's recommended dependencies
3. decide which ones to resolve alongside the package install
4. optionally omit or add some of the undesired dependencies
so far i found I'm best served with following tools:
hoorex - assessing package dependencies back and forth on top of an local SBo repository (works with sbopkg and sbotools) sbotools - track dependencies and allow for user managed installation of them from SBo scripts and sources (informed choice) slackpkg+ - the flexible add on to the shipped package manager - allows searching and group based management of packages
The question:
What package dependency resolving tool do You use?
Did You try other resolver tools? Why?
I usually use depfinder: https://github.com/gapan/depfinder I have considered trying other tools but didn't take the time to do that yet. depfinder can find binary dependencies and in most cases python ones (python 2 or python3), not yet perl or ruby ones. My usage of depfinder is mostly to write the .dep files used by slapt-get in Slint. I always review and often manually edit the results.
If a SlackBuild is available @SBo on occasion I also use sqg.
Very important: dependency tracking results are always context-dependent. Practically speaking that means that for instance the .dep files in the Slint repos will probably not be accurate if used in another distribution. Among context factors, the options chosen to configure the software are obviously a major one. That's why in the source dirs I now include configuration summaries.
Don't mix apples and oranges, in other words don't confuse flat (first level) and full (all levels) dependencies.
Please note that core components of a Linux system are practically always needed to run a software, although generally not mentioned in dependencies files: a "core" set of software is implicitly assumed to be already installed, like e.g. those found in the A series of packages in Slackware, or the "core" set of packages in Salix.
And of course we need to distinguish between build-time and run-time dependencies.
Last edited by Didier Spaier; 09-22-2018 at 04:07 AM.
i use slackrepo to create my own slapt-get compatible repository from the scripts at SBo. The virtual machine where I build the packages also runs as a home repository server. I use Gslapt/slapt-get on my laptop to install from there.
It took sometime to set up slackrepo and the hint files to my linking, simply because I had no experience. Things are more clear now and I described the steps I took here:
I honestly have never found manual dependency checking all that difficult. If you need tools to track this, why do you want to use Slackware?
While i might agree that is not that difficult, and Slackware really is shipping with most that matters at hand (and quite so), there are cases where it might be, if not outright tedious, then at least repetitive and and fun depriving task.
An exercise for the reader, on a clean Slackware system :
1. Install Inkscape
2. Install VLC player
and yes, I've had it on manual for quite a while back then.
Distribution: Slackware/Salix while testing others
Posts: 1,718
Rep:
Quote:
Originally Posted by SCerovec
While i might agree that is not that difficult, and Slackware really is shipping with most that matters at hand (and quite so), there are cases where it might be, if not outright tedious, then at least repetitive and and fun depriving task.
An exercise for the reader, on a clean Slackware system :
1. Install Inkscape
2. Install VLC player
and yes, I've had it on manual for quite a while back then.
Distribution: Slackware/Salix while testing others
Posts: 1,718
Rep:
sbopkg, sbotools, slapt-get, manual method...
PS: I use sbopkg for most programs I need that are not in Slackware, for large programs I use slackpkg+ and pull from Alienbob and Salix. On the boxes with Salix its slapt-get and slapt-src (or the GUI equivalent gslapt and sourcery).
I honestly have never found manual dependency checking all that difficult. If you need tools to track this, why do you want to use Slackware?
I spent several months when I first started using Slackware manually working through dependency chains with SBo packages. I found that task to be utterly boring and completely automatable. I also started using Midnight Commander around that time and decided that I really liked that type of interface, so I wrote one kind of like it to manage SBo packages (including resolving dependencies, keeping track of build options, and other stuff that is useful to me). That's one thing I really like about Slackware: you can make it whatever you want it to be. Besides, I don't think I could call really myself a "slacker" if I chose to put in the most effort possible for every task.
Last edited by montagdude; 09-23-2018 at 09:51 PM.
I downloaded the most recent UNIX specification and couldn't find anything about dependency tracking among its 3904 pages. Could you please elaborate?
Yes ,
1. Maybe UNIX isn't what it used to be? Or they call it otherwise (they call bytesoctets now, right? and hexadecimal is sedecimal or should be for them?)
2. I was referring to the nature of UNIX not the procedure itself:
The low powered PCs have an excuse of low power consumption - so i tend to let them chew away for hours - even days at times.
slapt-get is also very functional and capable slackpkg+ is an addon for OEM package manager - I also like it sbopkg can be run standalone and accepts command line parameters - also likeable
but dependency tracking tools (our topic here ) - only two mentioned so far: hoorex - works ontop both sbopkg and sbotools sqg - i didn't try out yet (please promote it here in more detail )
IIRC there where at least two more?
but dependency tracking tools (our topic here ) - only two mentioned so far: hoorex - works ontop both sbopkg and sbotools sqg - i didn't try out yet (please promote it here in more detail )
IIRC there where at least two more?
Others (some were mentioned directly or indirectly):
sbotools - ports-like interface for SlackBuilds.org
slackrepo - automated tool to manage package repositories
slapt-src - slapt-get-like tool for SlackBuilds source repositories
sboui - ncurses interface for sbopkg, sbotools, or custom SBo package managers. It also has a built-in manager.
slapt-get - APT-like package management system for Slackware. Supports dependency resolution for compatible repositories (the main Slackware repository is not one of these).
sbbdep - tool for exploring binary runtime dependencies on Slackware and Slackware based systems
depfinder - scans Slackware packages and outputs a list of their dependencies
I may have missed some.
Last edited by montagdude; 09-24-2018 at 11:16 AM.
Reason: add depfinder
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.