Re: [gentoo-user] Portage cleaning up 32bit preserved libs (x86_64/amd64)
On Saturday 07 Nov 2015 18:19:22 bitlord wrote: > # emerge @preserved-rebuild > which did nothing, so currently I don't need those libs, and don't know > what is a proper way to get rid of them. You should also run 'revdep-rebuild -p' which may catch something that 'emerge @preserved-rebuild' missed. > Here is the list: > app-arch/bzip2-1.0.6-r6 /usr/lib32/libbz2.so.1.0.6 /usr/lib32/libbz2.so.1 > dev-libs/glib-2.44.1 /usr/lib32/libglib-2.0.so.0.4400.1 > /usr/lib32/libglib-2.0.so.0 media-gfx/graphite2-1.2.4-r1 > /usr/lib32/libgraphite2.so.3.0.1 /usr/lib32/libgraphite2.so.3 > media-libs/freetype-2.5.5 /usr/lib32/libfreetype.so.6.11.4 > /usr/lib32/libfreetype.so.6 media-libs/harfbuzz-0.9.41 > /usr/lib32/libharfbuzz.so.0.941.0 /usr/lib32/libharfbuzz.so.0 > media-libs/libpng-1.6.18 /usr/lib32/libpng16.so.16.18.0 > /usr/lib32/libpng16.so.16 sys-libs/zlib-1.2.8-r1 /lib32/libz.so.1.2.8 > /lib32/libz.so.1 You could unmerge each one of them and then run 'emerge -uatDv world' and/or rerun 'emerge @preserved-rebuild', which will rebuild any libraries portage thinks your system needs. The former will show you what is pulling them in. -- Regards, Mick signature.asc Description: This is a digitally signed message part.
[gentoo-user] Portage cleaning up 32bit preserved libs (x86_64/amd64)
Hi list, I have a problem with cleaning/removing 32bit libraries on my x86_64 system (amd64 multilib). At one point I needed skype for something, and it needs a lot of 32bit libs (abi_x86_32) everything was fine, little fight with freetype+harfbuz (circular dep). And after some time I'm happy again without need for proprietary closed source software, so I wanted to remove it, first thing I did was: # emerge -C skype It was fine, next I wanted to remove unneeded dependencies # emerge --depclean and after that I removed package.use file which contained all dependencies with USE="abi_x86_32", and did world update # emerge -uND world everything was "fine" except it left 'preserved-libs', and told me to run # emerge @preserved-rebuild which did nothing, so currently I don't need those libs, and don't know what is a proper way to get rid of them. Here is the list: app-arch/bzip2-1.0.6-r6 /usr/lib32/libbz2.so.1.0.6 /usr/lib32/libbz2.so.1 dev-libs/glib-2.44.1 /usr/lib32/libglib-2.0.so.0.4400.1 /usr/lib32/libglib-2.0.so.0 media-gfx/graphite2-1.2.4-r1 /usr/lib32/libgraphite2.so.3.0.1 /usr/lib32/libgraphite2.so.3 media-libs/freetype-2.5.5 /usr/lib32/libfreetype.so.6.11.4 /usr/lib32/libfreetype.so.6 media-libs/harfbuzz-0.9.41 /usr/lib32/libharfbuzz.so.0.941.0 /usr/lib32/libharfbuzz.so.0 media-libs/libpng-1.6.18 /usr/lib32/libpng16.so.16.18.0 /usr/lib32/libpng16.so.16 sys-libs/zlib-1.2.8-r1 /lib32/libz.so.1.2.8 /lib32/libz.so.1 and this is how they relate to each other: !!! existing preserved libs: >>> package: media-libs/harfbuzz-0.9.41 * - /usr/lib32/libharfbuzz.so.0 * - /usr/lib32/libharfbuzz.so.0.941.0 * used by /usr/lib32/libfreetype.so.6 (preserved) * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) >>> package: dev-libs/glib-2.44.1 * - /usr/lib32/libglib-2.0.so.0 * - /usr/lib32/libglib-2.0.so.0.4400.1 * used by /usr/lib32/libharfbuzz.so.0 (preserved) * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) >>> package: media-libs/freetype-2.5.5 * - /usr/lib32/libfreetype.so.6 * - /usr/lib32/libfreetype.so.6.11.4 * used by /usr/lib32/libharfbuzz.so.0 (preserved) * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) >>> package: sys-libs/zlib-1.2.8-r1 * - /lib32/libz.so.1 * - /lib32/libz.so.1.2.8 * used by /usr/lib32/libfreetype.so.6 (preserved) * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) * used by /usr/lib32/libpng16.so.16 (preserved) * used by /usr/lib32/libpng16.so.16.18.0 (preserved) >>> package: app-arch/bzip2-1.0.6-r6 * - /usr/lib32/libbz2.so.1 * - /usr/lib32/libbz2.so.1.0.6 * used by /usr/lib32/libfreetype.so.6 (preserved) * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) >>> package: media-libs/libpng-1.6.18 * - /usr/lib32/libpng16.so.16 * - /usr/lib32/libpng16.so.16.18.0 * used by /usr/lib32/libfreetype.so.6 (preserved) * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) >>> package: media-gfx/graphite2-1.2.4-r1 * - /usr/lib32/libgraphite2.so.3 * - /usr/lib32/libgraphite2.so.3.0.1 * used by /usr/lib32/libharfbuzz.so.0 (preserved) * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) Use emerge @preserved-rebuild to rebuild packages using these libraries So I think this is because of that harfbuzz<->freetype circular dependency, which some people/devs on IRC confirm. " bitlord: Yes, it seems to be related to that circular dependency. libfreetype is being preserved due to libharfbuzz and vice-versa." So don't know if this is a portage bug (considering circular dependencies I guess it is really hard to manage them, so maybe not a bug really?). In the end I don't need those libs in /usr/lib32 (probably just those listed, others are there intentionally (multilib)), if I remove them I won't break anything (except maybe package manager being confused?). Does anyone know how to manage this? :-)
Re: [gentoo-user] Portage cleaning up 32bit preserved libs (x86_64/amd64)
On Saturday, November 07, 2015 7:19:22 PM bitlord wrote: > Hi list, > I have a problem with cleaning/removing 32bit libraries on my x86_64 > system (amd64 multilib). At one point I needed skype for something, and > it needs a lot of 32bit libs (abi_x86_32) everything was fine, little > fight with freetype+harfbuz (circular dep). And after some time I'm > happy again without need for proprietary closed source software, so I > wanted to remove it, first thing I did was: > # emerge -C skype > It was fine, next I wanted to remove unneeded dependencies > # emerge --depclean > and after that I removed package.use file which contained all > dependencies with USE="abi_x86_32", and did world update > # emerge -uND world > everything was "fine" except it left 'preserved-libs', and told me to > run > # emerge @preserved-rebuild > which did nothing, so currently I don't need those libs, and don't know > what is a proper way to get rid of them. > > Here is the list: > app-arch/bzip2-1.0.6-r6 /usr/lib32/libbz2.so.1.0.6 /usr/lib32/libbz2.so.1 > dev-libs/glib-2.44.1 /usr/lib32/libglib-2.0.so.0.4400.1 /usr/lib32/libglib-2.0.so.0 > media-gfx/graphite2-1.2.4-r1 /usr/lib32/libgraphite2.so.3.0.1 /usr/lib32/libgraphite2.so.3 > media-libs/freetype-2.5.5 /usr/lib32/libfreetype.so.6.11.4 /usr/lib32/libfreetype.so.6 > media-libs/harfbuzz-0.9.41 /usr/lib32/libharfbuzz.so.0.941.0 /usr/lib32/libharfbuzz.so.0 > media-libs/libpng-1.6.18 /usr/lib32/libpng16.so.16.18.0 /usr/lib32/libpng16.so.16 > sys-libs/zlib-1.2.8-r1 /lib32/libz.so.1.2.8 /lib32/libz.so.1 > > > and this is how they relate to each other: > !!! existing preserved libs: > >>> package: media-libs/harfbuzz-0.9.41 > * - /usr/lib32/libharfbuzz.so.0 > * - /usr/lib32/libharfbuzz.so.0.941.0 > * used by /usr/lib32/libfreetype.so.6 (preserved) > * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) > >>> package: dev-libs/glib-2.44.1 > * - /usr/lib32/libglib-2.0.so.0 > * - /usr/lib32/libglib-2.0.so.0.4400.1 > * used by /usr/lib32/libharfbuzz.so.0 (preserved) > * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) > >>> package: media-libs/freetype-2.5.5 > * - /usr/lib32/libfreetype.so.6 > * - /usr/lib32/libfreetype.so.6.11.4 > * used by /usr/lib32/libharfbuzz.so.0 (preserved) > * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) > >>> package: sys-libs/zlib-1.2.8-r1 > * - /lib32/libz.so.1 > * - /lib32/libz.so.1.2.8 > * used by /usr/lib32/libfreetype.so.6 (preserved) > * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) > * used by /usr/lib32/libpng16.so.16 (preserved) > * used by /usr/lib32/libpng16.so.16.18.0 (preserved) > >>> package: app-arch/bzip2-1.0.6-r6 > * - /usr/lib32/libbz2.so.1 > * - /usr/lib32/libbz2.so.1.0.6 > * used by /usr/lib32/libfreetype.so.6 (preserved) > * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) > >>> package: media-libs/libpng-1.6.18 > * - /usr/lib32/libpng16.so.16 > * - /usr/lib32/libpng16.so.16.18.0 > * used by /usr/lib32/libfreetype.so.6 (preserved) > * used by /usr/lib32/libfreetype.so.6.11.4 (preserved) > >>> package: media-gfx/graphite2-1.2.4-r1 > * - /usr/lib32/libgraphite2.so.3 > * - /usr/lib32/libgraphite2.so.3.0.1 > * used by /usr/lib32/libharfbuzz.so.0 (preserved) > * used by /usr/lib32/libharfbuzz.so.0.941.0 (preserved) > Use emerge @preserved-rebuild to rebuild packages using these libraries > > > So I think this is because of that harfbuzz<->freetype circular > dependency, which some people/devs on IRC confirm. > " bitlord: Yes, it seems to be related to that circular > dependency. libfreetype is being preserved due to libharfbuzz and > vice-versa." > > So don't know if this is a portage bug (considering circular > dependencies I guess it is really hard to manage them, so maybe not a > bug really?). In the end I don't need those libs in /usr/lib32 > (probably just those listed, others are there intentionally (multilib)), > if I remove them I won't break anything (except maybe package manager > being confused?). > > Does anyone know how to manage this? :-) Delete them. I think they're also recorded on /var/lib/portage so delete them from there too or they may just get removed from there next time you emerge something. I think revdep-rebuild/preserved-libs could do better at detecting false positives like this and a few other cases but I wouldn't call it a bug. You could file one as an improvement request against portage though. Another case where it messes up is when two packages have the same libraries outside the search directories and preload them manually, like firefox and thunderbird. -- Fernando Rodriguez