Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

Exclude package from preserverd-libs

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
15 posts • Page 1 of 1
Author
Message
nitm
n00b
n00b
Posts: 63
Joined: Mon Dec 27, 2004 3:14 pm

Exclude package from preserverd-libs

  • Quote

Post by nitm » Sat Sep 05, 2015 6:48 pm

I have one very big binary package that has many dependencies.
This packages causes preserved rebuilds after almost every system update.
This means that I have to re-emerge it, which means reinstalling 1gb of files.

Thus I think it will be best if I mark this package as not-preserving-libs, because it depends on the binary interface of all its libraries and rebuilding it won't make it work if it is broken.
Can I achieve this somehow?
I'm fine if I have to edit the ebuild.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Sun Sep 06, 2015 8:04 am

You can use the --exclude=cat/pkg parameter to emerge when you're doing the @preserved-rebuild run.
You can use either a package name, or add a :slot to the end.
If you need to exclude several, you can do it in one parameter if you quote: --exclude='cat/foo cat/bar:1'

Technically, you cannot mark the package itself as "not preserving libs" since it doesn't preserve them; other packages do.
Not sure if there's a binary flag you can set in the ebuild, to tell emerge not to track its linkage (which is what you're saying.)

Interesting though, as it sounds like we should add an "exclude from preserved libs" config setting to update.
Top
Genone
Retired Dev
Retired Dev
User avatar
Posts: 9657
Joined: Fri Mar 14, 2003 6:02 pm
Location: beyond the rim

  • Quote

Post by Genone » Mon Sep 07, 2015 8:47 am

You can simply remove the preserved libraries manually if you're sure you don't need them anymore, portage should automatically pick it up on the next run and not bother you anymore about it. If you want to keep the libraries you could also remove their entries from the preserved-libs registry, though this might require some non-trivial hacking (I'm out of touch with Gentoo stuff for a couple years, so can't really tell you how to do this).
Top
nitm
n00b
n00b
Posts: 63
Joined: Mon Dec 27, 2004 3:14 pm

  • Quote

Post by nitm » Mon Sep 07, 2015 7:13 pm

Is this last solution something I should do after every bigger system update?
I need a solution that is kind of automatic, set it once and forget about it.
If the binary package break, I'll have to deal with it somehow anyway.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Tue Sep 08, 2015 11:28 am

No, as your binpkg does in fact need the preserved-libs.
Top
hasufell
Retired Dev
Retired Dev
Posts: 429
Joined: Sat Oct 29, 2011 8:21 am

  • Quote

Post by hasufell » Tue Sep 08, 2015 11:41 am

@preserved-rebuild is a huge hack that doesn't work very well. I'd just advise to stop using it. If you are concerned about broken linkage on production servers, you should create your own binpkg host anyway. For desktop systems, it doesn't really matter anyway.
Top
nitm
n00b
n00b
Posts: 63
Joined: Mon Dec 27, 2004 3:14 pm

  • Quote

Post by nitm » Tue Sep 08, 2015 5:54 pm

@steveL: It doesn't, it has runtime deps on libs that have stable interfaces. If the interfaces are not stable then program will fail the next time I install it anyway

@hasufell: I'm on a desktop machine. Why do you thing that it doesn't matter?
Top
hasufell
Retired Dev
Retired Dev
Posts: 429
Joined: Sat Oct 29, 2011 8:21 am

  • Quote

Post by hasufell » Tue Sep 08, 2015 5:57 pm

nitm wrote:@hasufell: I'm on a desktop machine. Why do you thing that it doesn't matter?
Because we've done fine without it for over a decade. I'm not saying the feature is not interesting per se, but IMO it's not worth it in its current state, so I'd think it over if I really need it.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Wed Sep 09, 2015 8:49 am

nitm wrote:@steveL: It doesn't, it has runtime deps on libs that have stable interfaces. If the interfaces are not stable then program will fail the next time I install it anyway
And those interfaces are being provided by libraries that have been upgraded to new versions.

If you're saying it doesn't need the older versions, and can use the newer ones, then unmerge it, mv the old libfiles away, and remerge it.

I'm not sure if you can simply set FEATURES=-preserve-libs in a package.env conf for binpkgs; see man portage.
hasufell wrote:IMO it's not worth it in its current state
Multilib-in-bash is much more along those lines; paludis will never be worth it.
Top
nitm
n00b
n00b
Posts: 63
Joined: Mon Dec 27, 2004 3:14 pm

  • Quote

Post by nitm » Wed Sep 09, 2015 6:25 pm

steveL wrote:If you're saying it doesn't need the older versions, and can use the newer ones, then unmerge it, mv the old libfiles away, and remerge it.
Why should I do this manually?
I have an ebuild for the binary package and it is correctly suggested that it should be re-emerge by emerge @preserved-rebuild.
I just don't want to re-emerge a 2gb package every time I do a system update.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Thu Sep 10, 2015 12:39 am

I don't buy that it will work with newer lib versions; it likely specifies particular sonames, so first prove your point.

It's not like you have to download it again, and it is a binpkg, so it's not like you have to compile it.

Additionally you're going to need to test if turning off the feature, means portage no longer tracks linkage for that package, or it means it doesn't preserve its libs for others, or both.
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Thu Sep 10, 2015 1:50 am

I've gone back to revdep-rebuild. To many times @preserved-rebuild has re-emerged packages that I've unmerged.
Top
nitm
n00b
n00b
Posts: 63
Joined: Mon Dec 27, 2004 3:14 pm

  • Quote

Post by nitm » Thu Sep 10, 2015 6:39 pm

steveL wrote:I don't buy that it will work with newer lib versions; it likely specifies particular sonames, so first prove your point.
My point is that sometimes I re-emerge it to clear the preserved libs.
After I do this the program will use the new libs, thus it will either break or continue working.

But yes, preserved-libs will delay the breakage to the point in time when I have time to fix it, but I don't care that much about this anyway.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Sat Sep 12, 2015 10:13 am

nitm wrote:My point is that sometimes I re-emerge it to clear the preserved libs.
After I do this the program will use the new libs, thus it will either break or continue working.
OK: so I'd definitely try turning off the feature in a package.env .conf file, then.
But yes, preserved-libs will delay the breakage to the point in time when I have time to fix it, but I don't care that much about this anyway.
Whatever works for you.
Top
krinn
Watchman
Watchman
User avatar
Posts: 7476
Joined: Fri May 02, 2003 6:14 am

  • Quote

Post by krinn » Sat Sep 12, 2015 10:56 am

I have myself set -preserve-libs in FEATURES, living happy with it like in old days.
portage provide the feature, but also provide way to disable it (the protection is good but comes with portage is annoying to death), making anyone happy.
Top
Post Reply

15 posts • Page 1 of 1

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic