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 01-06-2020, 02:05 PM   #1
a.out
Member
 
Registered: Feb 2019
Location: Luxembourg
Distribution: Slackware on server, Bunsenlabs on desktop
Posts: 32

Rep: Reputation: Disabled
Package sets / categories


Because I do not want to further misuse the "PAM and Kerberos" thread, for an off-topic subject, I have opened a new thread.

As I have understood, "the package sets" are not an "dependency resolution system". Unfortunately the wording in the setup program, HOWTOs and READMEs are misleading and suggest partly otherwise, as they stem from the floppy disk days. If it expected (and not only recommended if you have enough disk space) to do a full installation, then this should be clearly mentioned.

While most of us know Slackware pretty well, are aware of some of the limitations, this is not necessarily the case for new users and I hope that Slackware still caters for them.

A new user might think, that he/she does not need "development packages", since he/she does not do software development, but may be unaware that for example Python may have become an essential system component. This was not always the case, but the "--enable-python" compilation flag is slowly creeping into the system, and this without adaptation of the documentation. AWK (gawk) and shell (bash) are system components since a very long time and Python is increasingly filling this role.
 
Old 01-06-2020, 02:27 PM   #2
hitest
Guru
 
Registered: Mar 2004
Location: Canada
Distribution: Void, Slackware, Debian, OpenBSD
Posts: 7,346

Rep: Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746Reputation: 3746
Quote:
Originally Posted by a.out View Post
If it expected (and not only recommended if you have enough disk space) to do a full installation, then this should be clearly mentioned.
A full installation of Slackware works out of the box with all dependencies met. We generally recommend that newcomers to Slackware do a full installation of Slackware. If you do a custom installation then you should know what you're doing.
Hard drives today are quite large and a full installation of Slackware does not take up a lot of disk space.
 
2 members found this post helpful.
Old 01-06-2020, 09:34 PM   #3
ehartman
Senior Member
 
Registered: Jul 2007
Location: Delft, The Netherlands
Distribution: Slackware
Posts: 1,674

Rep: Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888
Quote:
Originally Posted by a.out View Post
may be unaware that for example Python may have become an essential system component. This was not always the case, but the "--enable-python" compilation flag is slowly creeping into the system, and this without adaptation of the documentation.
Not Python itself, just the shared library is needed.
That could be added to the aaa_elflibs package, so to make sure that it always is there in a more minimal install. The problem, of course, with Python is that in -current you got 2 different, incompatible versions: libpython2.7.so and libpython3.so), so _which one_ does the package need?
The same thing could be done with the perl library that i.e. vim has a dependency for (libperl.so).
 
4 members found this post helpful.
Old 01-06-2020, 10:40 PM   #4
drgibbon
Senior Member
 
Registered: Nov 2014
Distribution: Slackware64 15.0
Posts: 1,221

Rep: Reputation: 943Reputation: 943Reputation: 943Reputation: 943Reputation: 943Reputation: 943Reputation: 943Reputation: 943
Quote:
Originally Posted by a.out View Post
A new user might think, that he/she does not need "development packages", since he/she does not do software development, but may be unaware that for example Python may have become an essential system component. This was not always the case, but the "--enable-python" compilation flag is slowly creeping into the system, and this without adaptation of the documentation. AWK (gawk) and shell (bash) are system components since a very long time and Python is increasingly filling this role.
I can't remember what the installer actually says, but couldn't this be routed around fairly simply by recommending that a full install be done unless the user knows what they're doing? For example, other options could be shifted behind an "Advanced/custom install" submenu , and if someone wants to do that and they get a broken install, then that comes with the territory.
 
1 members found this post helpful.
Old 01-06-2020, 10:43 PM   #5
individual
Member
 
Registered: Jul 2018
Posts: 315
Blog Entries: 1

Rep: Reputation: 233Reputation: 233Reputation: 233
Quote:
Originally Posted by drgibbon View Post
I can't remember what the installer actually says, but couldn't this be routed around fairly simply by recommending that a full install be done unless the user knows what they're doing? For example, other options could be shifted behind an "Advanced/custom install" submenu , and if someone wants to do that and they get a broken install, then that comes with the territory.
If I remember correctly, it says "RECOMMENDED FOR NEW USERS!" Or something to that effect.
 
Old 01-07-2020, 03:09 AM   #6
TheRealGrogan
Member
 
Registered: Oct 2010
Location: Ontario, Canada
Distribution: Slackware, LFS, Manjaro (for gaming)
Posts: 570

Rep: Reputation: 413Reputation: 413Reputation: 413Reputation: 413Reputation: 413
Most stuff just compiles Python bindings and/or drops modules into the appropriate sitepackages directory and it's not a hard dependency on python libraries (i.e. the software will still run, just without python scripting support).

There are some things that link against libpython* though of course, and there is software that's written in python that hooks graphical toolkit libraries and such. Such missing dependencies will not cause the system to be unstartable and it will be rather obvious that python is missing. What might not be so obvious are things like python-setup or pillow etc. but a quick web search for the error citing the missing module will be clueful.

While it's true that a new user might think they don't need development packages (especially if they have been familiar with one of those silly distros that split out a few kb of includes into separate -dev packages), a new user will be led by the nose to do a full install, as it's "(Recommended)" and the easiest choice in the installer, and it lists how many gigabytes they need to do it, which is pretty light. I don't really see this as much of a problem.

The Slackware packaging scheme and installer has worked for decades, and I'd hate to see it changed.
 
1 members found this post helpful.
Old 01-07-2020, 03:38 AM   #7
a.out
Member
 
Registered: Feb 2019
Location: Luxembourg
Distribution: Slackware on server, Bunsenlabs on desktop
Posts: 32

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by TheRealGrogan View Post
Most stuff just compiles Python bindings and/or drops modules into the appropriate sitepackages directory and it's not a hard dependency on python libraries (i.e. the software will still run, just without python scripting support).
The vim executable for example will not start without a Python library. It is a hard dependency.
 
1 members found this post helpful.
Old 01-07-2020, 03:39 AM   #8
a.out
Member
 
Registered: Feb 2019
Location: Luxembourg
Distribution: Slackware on server, Bunsenlabs on desktop
Posts: 32

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by ehartman View Post
That could be added to the aaa_elflibs package, so to make sure that it always is there in a more minimal install.
Good idea! This might be the solution! ;-)
 
Old 01-07-2020, 05:40 PM   #9
TheRealGrogan
Member
 
Registered: Oct 2010
Location: Ontario, Canada
Distribution: Slackware, LFS, Manjaro (for gaming)
Posts: 570

Rep: Reputation: 413Reputation: 413Reputation: 413Reputation: 413Reputation: 413
Quote:
Originally Posted by a.out View Post
The vim executable for example will not start without a Python library. It is a hard dependency.
Well then, there's one significant package (though I don't install Vim... I prefer elvis, and I set it up as my main vi editor on other distros too). There are others that need libpython, though I can't think of what at the moment.

I'm not sure just including the python library would be enough, would it? You'd still need the interpreter or at least the python modules to actually use Python through the library? (I'm asking, as I don't know)

Last edited by TheRealGrogan; 01-07-2020 at 05:41 PM.
 
Old 01-07-2020, 06:02 PM   #10
phantom_cyph
Senior Member
 
Registered: Feb 2007
Location: The Tropics
Distribution: Slackware & Derivatives
Posts: 2,472
Blog Entries: 1

Rep: Reputation: 128Reputation: 128
Including it in aaa_elflibs would not be ideal, and would probably never happen.

The reason for this (imo) is that you'd be including a portion (I.e. Just a library) rather than full install from the developer which generally isn't how things happen in Slackware. (Debian on the other hand...)

If building a program from source against a python library, and you have python installed, which library is used? Does the full install overwrite the library? If so, removing python would also mean that you'd need to reinstall the elflib package to get the first back. In addition to this, the maintainer of the the elflib package (Pat) would need to rebuild elflibs every time he upgraded python to insure that both packages supplied the same version of the library in question..

Things get messy fast when you start splitting up code to make it fit your system. You want a python library? Install python. Problem solved..

Last edited by phantom_cyph; 01-07-2020 at 06:08 PM.
 
1 members found this post helpful.
Old 01-07-2020, 06:24 PM   #11
ehartman
Senior Member
 
Registered: Jul 2007
Location: Delft, The Netherlands
Distribution: Slackware
Posts: 1,674

Rep: Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888
Quote:
Originally Posted by TheRealGrogan View Post
though I don't install Vim... I prefer elvis, and I set it up as my main vi editor on other distros too
But elvis seems to have problems in a utf-8 setting, as it doesn't recognize multi-byte characters. It's getting long-in-the-tooth too:
Quote:
In October 2003, four years after the previous release, Kirkendall released Elvis 2.2,
(skipped)
As of November 2015, there has been no official new release of Elvis since 2.2.
(from the wikipedia entry for elvis)
As far as I know that still is true in 2020 too.

Quote:
I'm not sure just including the python library would be enough, would it? You'd still need the interpreter or at least the python modules to actually use Python through the library? (I'm asking, as I don't know)
When you are really using those features: yes. But applications, linked against the Python library will not even start when that library isn't there, they will fail at startup.
 
1 members found this post helpful.
Old 01-07-2020, 06:33 PM   #12
Geist
Member
 
Registered: Jul 2013
Distribution: Slackware 14 / current
Posts: 442

Rep: Reputation: 196Reputation: 196
The fact that Slackware recommends a full install is why I keep suggesting it to newbies, because it worked for me when I was a newbie, too.
I didn't know any software for Linux, I installed it out of desperation after Windows wouldn't boot.
In fact, I kind of awkwardly inched my way to it, at first I had to use some secret menu on an Avira antivirus live cd, of all things, which had a bash prompt...where I could check my partitions, they were there but Windows was resolute in not letting me boot anymore.

I tried Ubuntu and Debian before and they both let me down in various ways, Ubuntu and internet connections (I had no router, only a direct DSL modem connection and I just couldn't grok PPP and ifconfig at that point to reliably, or at least, consciously control connections, it was magic to me), and Debian had weird stability issues (...yeah...)

I heard of Slackware before, and I enjoyed some Subgenius humor things before, and thought, welp, why not. I downloaded Slackware via another Live CD, burned it, and the installer worked right away.
Fast forward, I'm in KDE (after marveling at the various DE/WM choices in the login manager) and I'm inching my way through mounting knowledge to see if I could rescue my data, and I could, all while using various applications and games to pass the time and keep me sane.
Software I would probably never have heard about for who knows how long if it hadn't been in Slackware.

There was no 'apt-get' but, still being quite new despite the short forays, I didn't know what to 'apt-get' for anyway, especially after seeing the menu chock full of software.
I had a stable, friendly and incredibly diverse operating system that didn't let me down...and that rescued all my data.

Nothing was prettier to my eyes than seeing my picture and art collections again after messing with windows for three days, always the dark terminals, always uncertainity.
Listening to my music, my projects, etc.

Thus began my inevitable fall to the light side.
(Btw, it turned out that a single scandisk run would have fixed it, cause it did fix it, hahahahaha, but at that point I was already fixed myself, fixed by Slackware)

10/10 would always recommend, as long as the user can read and comprehend English at a, in my opinion, basic level.
Even if they change distros later, I cannot overstate the emotional (yes, emotional) impact of Slackware having my back like that. No need to rely on the internet because the software was all there, and redundant too, several solutions to a task, I had so much fun exploring.

It was great, it's gonna take some cataclysmic event for me to ever switch.

P.S.:
There's also a tool chntpw, which allowed me to save Windowses sorry hide once more later (granted, PEBKAC, scheduled scandisc and it was behind the graphical windows boot, etc pp, I was 'locked out' until I changed the registry to not want the check anymore, completely sealing the deal.
I was so impressed.
Eat your heart out, Bill.

Last edited by Geist; 01-07-2020 at 06:39 PM.
 
1 members found this post helpful.
Old 01-07-2020, 06:35 PM   #13
ehartman
Senior Member
 
Registered: Jul 2007
Location: Delft, The Netherlands
Distribution: Slackware
Posts: 1,674

Rep: Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888Reputation: 888
Quote:
Originally Posted by phantom_cyph View Post
The reason for this (imo) is that you'd be including a portion (I.e. Just a library)
Yeah, but aaa_elflibs isn't meant to replace those full packages, it is just there to satisfy hard dependancies for other packages you may want to install (or even the installer itself).

Quote:
If building a program from source against a python library, and you have python installed, which library is used? Does the full install overwrite the library? If so, removing python would also mean that you'd need to reinstall the elflib package to get the first back.
At a release, the libraries are the same, so installing the full package will just provide another link TO the same library. When Python gets UPdated it may provide a newer version but the "older" one then does NOT get removed then because it still is present in this package, so only the symlink gets updated (and you've got two versions OF the library installed).
That's how it works for ALL of the libraries in aaa_elflibs, that's why you should never upgrade this aaa_elflibs package (as you may get older links replacing the newer ones).
At the moment, in -current, aaa_elflibs gets updated all of the time to keep the versions synchronized:
Code:
Sat Dec 21 01:04:26 UTC 2019
a/aaa_elflibs-15.0-<arch>-17.txz:  Rebuilt.
  Upgraded:  libcap.so.2.28, libelf-0.178.so, libglib-2.0.so.0.6200.4,
  libgmodule-2.0.so.0.6200.4, libgobject-2.0.so.0.6200.4,
  libgthread-2.0.so.0.6200.4, libidn2.so.0.3.7, libpcre2-8.so.0.9.0,
  libtdb.so.1.4.3.
(from -current's ChangeLog.txt)
to make sure versions aren't different.

Last edited by ehartman; 01-07-2020 at 06:37 PM.
 
2 members found this post helpful.
Old 01-08-2020, 04:21 PM   #14
TheRealGrogan
Member
 
Registered: Oct 2010
Location: Ontario, Canada
Distribution: Slackware, LFS, Manjaro (for gaming)
Posts: 570

Rep: Reputation: 413Reputation: 413Reputation: 413Reputation: 413Reputation: 413
Quote:
Originally Posted by ehartman View Post
But elvis seems to have problems in a utf-8 setting, as it doesn't recognize multi-byte characters. It's getting long-in-the-tooth too:

(from the wikipedia entry for elvis)
As far as I know that still is true in 2020 too.


When you are really using those features: yes. But applications, linked against the Python library will not even start when that library isn't there, they will fail at startup.
Thanks, that's what I suspected. If Python functionality isn't essential to the program, having the library would at least allow it to run.

As for elvis, I use UTF-8 but only English (en_US.UTF-8), so I haven't seen any problem.
 
  


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] No package 'x11' found No package 'xext' found No package 'xdamage' found No package 'xfixes' found No package 'x11-xcb' found Jigsaw Linux From Scratch 14 02-23-2021 08:35 PM
new man-db package sets MANPAGER to most RandomTroll Slackware 13 01-12-2019 01:00 PM
Slackware specific tools and package sets? coralfang Slackware 18 07-17-2014 03:12 PM
Package install categories in text mode ? Vilius Red Hat 1 08-23-2010 02:07 AM
Package kit error - comp categories could not be loaded bmartin220 Linux - Newbie 2 11-20-2008 11:39 PM

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