[SOLVED] Upgrading glibc in current: what I did and what should I have done?
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.
Upgrading glibc in current: what I did and what should I have done?
This is not a story about a disaster, merely a mild annoyance. But I do feel that I missed a trick somewhere and hope someone here will tell me what I should have done.
I have a partial Slackware-current system on /dev/sda10, which I regard as my new Slackware-15. I installed glibc-multilib on it because I will eventually need 32-bit glibc for my printer. I have the multilib repo uncommented in slackpkgplus.conf and I also have glibc blacklisted because I hoped this would force slackpkg to use the multilib version for updating (which turned out not to be the case).
Early this morning I did a monthly update and noticed that this included glibc. I've never had to do a glibc update in Slackware before (I assume it never happens in a release version) and so I was ultra-cautious. I unchecked glibc and did the update without it.
Then I ran slackpkg upgrade-all again. The ncurses interface now showed only one package, the normal glibc. At the bottom I could see a line of text with two packages named: glibc and glibc-multilib. Obviously it was the second one I wanted but only the first showed up in ncurses. So I said yes and it upgraded smoothly but my multilib setup is gone. Not that that's a problem; I'll reinstall it down the line when we finally have a stable release. But obviously I did something wrong because I didn't get the result I really wanted. So what should I have done?
I suspect you may have been caught by the new slackpkg blacklist behaviour.
Quote:
Mon Feb 8 05:13:26 UTC 2021
...
ap/slackpkg-15.0-noarch-1.txz: Upgraded.
These are some of the important changes (see the ChangeLog for more):
Note that this slackpkg release contains a backwards-incompatible change to
the blacklisting syntax (e.g. glibc ---> glibc-*). This changes the prior
behavior of the blacklist function; previously, adding "glibc" to the
blacklist would cause glibc, glibc-profile, glibc-zoneinfo, et al to be
ignored by slackpkg. The new behavior is that *only* the glibc package is
ignored. If you want to blacklist all packages whose names begin with glibc,
you would need to add "glibc.*" to the blacklist now. Also note that any
special characters, e.g. "+", will need to be escaped in the blacklist file.
To blacklist entire package sets, a trailing slash is now required: e.g. kde/
Another backwards-incompatibility warning: check-updates will now return 1 if
there are updates available - this will make it easier to use this feature
with cron (thanks to Peter Hyman).
Added support for Slackware-AArch64 (thanks to Stuart Winter).
Added aaa_glibc-solibs and aaa_libraries to the "do these first" routine.
Thanks to Robby Workman for the new slackpkg release!
This changes the prior behavior of the blacklist function; previously, adding "glibc" to the blacklist would cause glibc, glibc-profile, glibc-zoneinfo, et al to be
ignored by slackpkg. The new behavior is that *only* the glibc package is
ignored. If you want to blacklist all packages whose names begin with glibc,
you would need to add "glibc.*" to the blacklist now.
That would cause further hiccups, I think, and I shall certainly edit that file. But according to the above, glibc itself should have been blacklisted even with the old syntax. And it clearly wasn't.
Also I should like to know why only glibc appeared in the interactive part of the display when slackpkg clearly was aware of the glibc-multilib package as fulfilling the requirement.
PS: I think I know now what I did wrong. I've just checked the configuration file again; it was a new one because slackpkg+ itself got updated, and I edited it by hand afterwards but I think I didn't complete the edit. I uncommented the multilib repo but forgot to add it to REPOPLUS.
Funny how posing a question here clears the mind!
Last edited by hazel; 03-18-2021 at 07:26 AM.
Reason: Added postscript.
I have a partial Slackware-current system on /dev/sda10, which I regard as my new Slackware-15. I installed glibc multilib on it because I will eventually need 32-bit glibc for my printer. I have the multilib repo uncommented in slackpkgplus.conf and I also have glibc blacklisted because I hoped this would force slackpkg to use the multilib version for updating (which turned out not to be the case).
Since I have no idea what you have installed with this partial install, kind of hard to say. When you say installed glib multilib I am going with you installed these packages:
PS: I think I know now what I did wrong. I've just checked the configuration file again; it was a new one because slackpkg+ itself got updated, and I edited it by hand afterwards but I think I didn't complete the edit. I uncommented the multilib repo but forgot to add it to REPOPLUS.
Slackpkg and Slackpkg have wone me over from my default suspicions about automation, but I do wish there was a less cavalier attitude about replacing configuration files needlessly. Having to repeatedly revert to the same configuration manually when no substantive change was made is just busy work and a bit silly not to mention disrespectful. This too is a minor issue but I don't see any justification. It creates errors and extra work needlessly.
Having done some configuration edits, I'm going to mark this tentatively as solved. If I get further problems down the line, I can always unsolve it again.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.