LinuxQuestions.org
Review your favorite Linux distribution.
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 07-20-2018, 11:22 PM   #1
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Rep: Reputation: 253Reputation: 253Reputation: 253
Slackpkg 'replace-with-substibutes' suggestion


Hello, everyone.

As many of you do, I guess, I update my Slackware installation with slackpkg once in a while.

What shall I do when packages get replaced with packages with different names?
(As an example, the changelog from the 2018-07-20:

Code:
x/igt-gpu-tools-1.23-x86_64-1.txz:  Added.
x/intel-gpu-tools-1.22-x86_64-3.txz:  Removed.
)

I cannot just do slackpkg clean-system, because it would remove a lot of SBo and custom-built packages.

Maybe Patrick could add some additional lines in the changelog, like
'intel-gpu-tools-1.22-x86_6-3.txz: Replaced with igt-gpu-tools-1.23-x86_64.txz' ?

And I could bodge a patch for slackpkg to support these replacements?
Say, make an option called 'upgrade-all-replace-with-replacements-and-install-new'?
 
Old 07-20-2018, 11:39 PM   #2
Darth Vader
Senior Member
 
Registered: May 2008
Location: Romania
Distribution: DARKSTAR Linux 2008.1
Posts: 2,727

Rep: Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247Reputation: 1247
Quote:
Originally Posted by Lockywolf View Post
What shall I do when packages get replaced with packages with different names?
I for one, usually I will remove first the replaced package from system. I.e.
Code:
removepkg intel-gpu-tools
IF I consider is the case (for a package which is critical for system), I will go first the recommended way:
Code:
upgradepkg intel-gpu-tools%igt-gpu-tools-1.23-x86_64-1.txz
These package replacements are a very unusual event after all, so I do not think that is worth to complicate the slackpkg to handle that.

Anyways, these automated "replacements" you suggest are in fact a "package dependencies resolving" feature (igt-gpu-tools replaces intel-gpu-tools), and I guess that our BDFL will not like it.

See for details: http://ftp.rpm.org/max-rpm/ch-rpm-upgrade.html

Last edited by Darth Vader; 07-21-2018 at 12:56 AM.
 
Old 07-21-2018, 12:06 AM   #3
bormant
Member
 
Registered: Jan 2008
Posts: 426

Rep: Reputation: 240Reputation: 240Reputation: 240
Quote:
Originally Posted by Lockywolf View Post
I cannot just do slackpkg clean-system, because it would remove a lot of SBo and custom-built packages.
Why not to blacklist SBo and your custom tags?
 
Old 07-21-2018, 12:07 AM   #4
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Original Poster
Rep: Reputation: 253Reputation: 253Reputation: 253
Well, the RPM thing is a mess. I know that according to LSB, we must actually ship rpm in any Linux distribution, but actually using it always brings more trouble than saves effort.

I don't like the idea of 'hard' dependency tracking too, because essentially it induces too much unnecessary coupling in the system. I mean, in the actual life we have dependencies between 'features', not 'packages', but since formalizing the concept of a 'feature' is too hard, it's not really worth bothering. Like, if the only 'feature' of a package you need is a man page, hell, who cares about the dependencies.

Saying that, I don't think that 'soft' dependency tracking is a bad thing. Essentially, since 'upgradepkg' already supports this tiny part of 'soft' tracking (i.e. renaming a package with a per-cent sign), why shouldn't slackpkg do that too? I mean, the package IS the same. I't just the name that changes.

Last edited by Lockywolf; 07-21-2018 at 12:32 AM.
 
Old 07-21-2018, 12:15 AM   #5
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Original Poster
Rep: Reputation: 253Reputation: 253Reputation: 253
Quote:
Originally Posted by bormant View Post
Why not to blacklist SBo and your custom tags?
Blacklist anything related to SBo in slackpkg completely?
Well, sometimes SBo packages get introduced into the main tree.

I just read it as slackpkg clean-system is used to actually clean the system from anything external. Sort of, used as a last resort in the case when 'nothing works'.
 
Old 07-21-2018, 05:14 AM   #6
EYo
Member
 
Registered: Jun 2009
Distribution: Slackware
Posts: 190

Rep: Reputation: 153Reputation: 153
Quote:
Originally Posted by Lockywolf View Post
Blacklist anything related to SBo in slackpkg completely?
I think blacklist is the Slackware way. The slackpkg manual says:
Quote:
clean-system
This action removes all of the packages that don't belong to a standard Slackware installation. With this option, you can clean up your system, removing third-party packages as well as any packages that were removed from the official Slackware package set.

If you have some third party (or custom built) packages that you would like to keep, you can temporarily add them to the list of blacklisted packages before you run the 'clean-system' action.
A hint from Pat in the default blacklist file:
Quote:
# This one will blacklist all SBo packages:
#[0-9]+_SBo
I use sbopkg to help keep track of extras on 14.2, there is a current version too. You might also look at slackpkg+ for more control over priority of individual packages, and repos. That's my two centavos. Have fun.

Last edited by EYo; 07-21-2018 at 05:15 AM. Reason: copy pasta fix
 
Old 07-21-2018, 05:24 AM   #7
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Original Poster
Rep: Reputation: 253Reputation: 253Reputation: 253
Well, I have many packages, not just sbo's.
 
Old 07-21-2018, 05:33 AM   #8
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,055

Rep: Reputation: Disabled
There is no need to change anything:
  • This kind of renaming only occurs in Slackware-current.
  • Folks running Slackware-current are expected to read the ChangeLog before updating.
  • Folks running Slackware-current are not supposed to blindly apply provided updates.
  • In case of renaming, just run:
    Code:
    slackpkg install-new
    slackpkg remove <package to be removed>
 
2 members found this post helpful.
Old 07-21-2018, 05:35 AM   #9
EYo
Member
 
Registered: Jun 2009
Distribution: Slackware
Posts: 190

Rep: Reputation: 153Reputation: 153
Quote:
Originally Posted by Lockywolf View Post
Well, I have many packages, not just sbo's.
It's a hint, not a demand. You need to add your own ingredients, but that is a different topic I think. How To read and write regular expressions if you want to get fancy, I'm not that smart.

I can't tell you how to read, only that it is a good thing to do all over the place inside of a Slackware installation. After a decade or so it feels quite natural, and fun. I am still having fun anyway. Good luck with your request.

cheers
 
Old 07-21-2018, 07:05 AM   #10
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Original Poster
Rep: Reputation: 253Reputation: 253Reputation: 253
Quote:
Originally Posted by Didier Spaier View Post
There is no need to change anything:
  • This kind of renaming only occurs in Slackware-current.
  • Folks running Slackware-current are expected to read the ChangeLog before updating.
  • Folks running Slackware-current are not supposed to blindly apply provided updates.
  • In case of renaming, just run:
    Code:
    slackpkg install-new
    slackpkg remove <package to be removed>
It also happens if you're upgrading from 14.2 to 15. And "not apply blindly" doesn't mean "do everything quick and ad-hoc". Packages are routinely replaced one with another, just as libc was replaced with glibc.

And, more importantly, in this particular case it was obvious that one package replaces another, but in general there may be no resemblance between the package names whatsoever. This may be especially annoying if there happens to be a longer list of "packages to remove".
 
Old 07-21-2018, 07:29 AM   #11
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,055

Rep: Reputation: Disabled
Quote:
Originally Posted by Lockywolf View Post
It also happens if you're upgrading from 14.2 to 15. And "not apply blindly" doesn't mean "do everything quick and ad-hoc"
When this will happen, you will most probably be given instructions to upgrade like those.
Quote:
Packages are routinely replaced one with another, just as libc was replaced with glibc.
No update is done routinely in Slackware-current, beyond the security fixes.

Quote:
And, more importantly, in this particular case it was obvious that one package replaces another, but in general there may be no resemblance between the package names whatsoever. This may be especially annoying if there happens to be a longer list of "packages to remove".
Again, if you carefully read the ChangeLog you will find out. If you don't and encounter issues, that doesn't mean there be a missing feature, in my opinion.

Of course you are entitled to modify slackpkg locally or script something to fit your needs. But doing such a modification upstream is another story.

Bottom line it's your machine, so nobody forbids you to use Slackware-current as it it were a stable release. But I very much doubt that Patrick Volkerding will make a change only targeting this specific use case. I could be wrong though, so good luck.
 
Old 07-21-2018, 07:59 AM   #12
Lockywolf
Member
 
Registered: Jul 2007
Posts: 683

Original Poster
Rep: Reputation: 253Reputation: 253Reputation: 253
Hmm... maybe I just need to implement a 'remove-obsolete' option? Now that I'm thinking of it, maybe I don't actually need the 'replacement' information... since I can just keep track of the packages removed since the last update, and I also need to be sure that 'upgrade-all' has been run before I'm removing anything...
 
Old 07-21-2018, 10:29 AM   #13
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,967

Rep: Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545Reputation: 1545
Quote:
Originally Posted by Lockywolf View Post
I cannot just do slackpkg clean-system, because it would remove a lot of SBo and custom-built packages.
Blacklist those packages. That is what I would do. My custom build all have my own tags

Example:
[0-9]+cgs
[0-9]+_SBo

I don't blacklist them any more because I now use slackpkg+ to handle non-slackware packages. The only packages in Slackware (in my opinion) that should not have tags are Slackware packages all other should end with a tag.

Last edited by chrisretusn; 07-21-2018 at 10:34 AM.
 
Old 07-21-2018, 12:56 PM   #14
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,367

Rep: Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748
Quote:
I cannot just do slackpkg clean-system, because it would remove a lot of SBo and custom-built packages.
Actually, you can, _but_ you need to deselect your SBo and custom-built packages.
This can be tedious, hence the suggestion to blacklist those packages, _but_ as the OP has pointed out, this can fail.
Quote:
Well, sometimes SBo packages get introduced into the main tree.
I have been caught by this in the past.
As I do not have a huge number of third party packages installed, my personal preference is to keep blacklisting to a minimum and live with the tedium of working through the deselection of packages when using 'slackpkg clean-system'.
The combination of 'slackpkg install-new' followed by 'slackpkg clean-system' will catch package updates with name changes, so no new functionality is needed.
As always, the ChangeLog is your friend.
 
  


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
Suggestion: In slackpkg, disable LILO prompting after each kernel update sombragris Slackware 8 05-16-2016 06:59 AM
How to replace the official slackpkg repo? qweasd Slackware 10 11-13-2014 02:28 PM
[SOLVED] [SUGGESTION] - Small modification to slackpkg samac Slackware 6 01-19-2014 11:58 AM
Need suggestion on filesystem to replace ext4 tux_dude Slackware 14 04-03-2013 08:32 AM
Suggestion: Modify /etc/slackpkg/blacklist samac Slackware 2 01-09-2010 03:36 PM

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

All times are GMT -5. The time now is 05:37 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