Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 878029

Summary: emerge @preserved-rebuild behaves strangely after uninstalling wine/steam
Product: Portage Development Reporter: cpu <cpuandroidmarket>
Component: UnclassifiedAssignee: Portage team <dev-portage>
Status: UNCONFIRMED ---    
Severity: normal CC: bog, gentoo
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=215242
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge --info

Description cpu 2022-10-22 21:35:12 UTC
Created attachment 825061 [details]
emerge --info

After updating the system or building any package, portage writes the following:

!!! existing preserved libs:
>>> package: app-arch/bzip2-1.0.8-r3
 *  - /usr/lib/libbz2.so.1
 *  - /usr/lib/libbz2.so.1.0.8
 *      used by /usr/lib/libfreetype.so.6 (preserved)
 *      used by /usr/lib/libfreetype.so.6.18.3 (preserved)
>>> package: dev-libs/glib-2.72.3
 *  - /usr/lib/libglib-2.0.so.0
 *  - /usr/lib/libglib-2.0.so.0.7200.3
 *      used by /usr/lib/libharfbuzz.so.0 (preserved)
 *      used by /usr/lib/libharfbuzz.so.0.50100.0 (preserved)
>>> package: dev-libs/libpcre-8.45-r1
 *  - /usr/lib/libpcre.so.1
 *  - /usr/lib/libpcre.so.1.2.13
 *      used by /usr/lib/libglib-2.0.so.0 (preserved)
 *      used by /usr/lib/libglib-2.0.so.0.7200.3 (preserved)
>>> package: media-gfx/graphite2-1.3.14_p20210810-r1
 *  - /usr/lib/libgraphite2.so.3
 *  - /usr/lib/libgraphite2.so.3.2.1
 *      used by /usr/lib/libharfbuzz.so.0 (preserved)
 *      used by /usr/lib/libharfbuzz.so.0.50100.0 (preserved)
>>> package: media-libs/freetype-2.12.1-r1
 *  - /usr/lib/libfreetype.so.6
 *  - /usr/lib/libfreetype.so.6.18.3
 *      used by /usr/lib/libharfbuzz.so.0 (preserved)
 *      used by /usr/lib/libharfbuzz.so.0.50100.0 (preserved)
>>> package: media-libs/harfbuzz-5.1.0
 *  - /usr/lib/libharfbuzz.so.0
 *  - /usr/lib/libharfbuzz.so.0.50100.0
 *      used by /usr/lib/libfreetype.so.6 (preserved)
 *      used by /usr/lib/libfreetype.so.6.18.3 (preserved)
>>> package: sys-libs/zlib-1.2.12-r3
 *  - /usr/lib/libz.so.1
 *  - /usr/lib/libz.so.1.2.12
 *      used by /usr/lib/libfreetype.so.6 (preserved)
 *      used by /usr/lib/libfreetype.so.6.18.3 (preserved)
Use emerge @preserved-rebuild to rebuild packages using these libraries

But after typing emerge @preserved-rebuild nothing happens:

These are the packages that would be merged, in order:

Calculating dependencies... done!

Nothing to merge; quitting.

I noticed that this happens after installing and uninstalling steam or wine. When installed on many packages the use abi_x86_32 is enabled. After deletion, this use is disabled. After rebuilding the world, the problem described above occurs.
Comment 1 Mike Gilbert gentoo-dev 2022-10-29 15:15:31 UTC
Probably related to bug 215242.
Comment 2 Khumba 2023-01-29 01:32:04 UTC
Hi, I went through this about a year ago on one of my systems after purging Wine.

If you've removed abi_x86_32 and are expecting those 32-bit libraries to be cleaned up, then this is bug 652382.  There is a dependency cycle between the 32-bit libraries: libharfbuzz.so.0.50100.0 and libfreetype.so.6.18.3 depend on each other.  Portage is currently unable to clean this up.  You can work around that by explicitly rebuilding 32-bit freetype without the harfbuzz dependency, which will break the cycle.  Use something like:

# ABI_X86=32 USE=-harfbuzz emerge -av1 media-libs/freetype

I can't recall if I had to emerge any other packages after that for Portage to remove the preserved libs, but I don't think I did.