Re: [gentoo-user] world update problem again
On 30/11/2021 14:18, Rich Freeman wrote: On Tue, Nov 30, 2021 at 8:27 AM Arve Barsnes wrote: On Tue, 30 Nov 2021 at 14:20, John Covici wrote: Hi. So, on my latest attempt at a world update today, I am getting a crazy problem with libpng, with some packages insisting on the use flag -apng (portage made me put it in), but other packages insisting on the use flag apng. Thanks in advance for any suggestions. That is a direct conflict between chromium and firefox/thunderbird. You can avoid it by removing the system-png flag from chromium. That issue will probably never hit stable, and I would make a note to revisit it in a few weeks. The next Council agenda includes resolving the conflict, though that isn't a guarantee it will happen. Once the change is settled you'll probably want to revert all your USE flag changes to the new defaults unless you have a strong personal preference. I know we're encouraged to use a directory for package.use nowadays, and this is a perfect example why. Create a file called "chromium" or "firefox" (whicever makes most sense to you), and put all the assorted flags you need to fix the issue in there. So when you decide you want to revert all those changes, you can just delete that file, and bingo ... Or just make all those changes dependent on the current version of chromium/firefox. So when you update you may have to re-visit the problem, or it may just solve itself. Cheers, Wol
Re: [gentoo-user] world update problem again
On Tue, Nov 30, 2021 at 9:59 AM Matt Connell (Gmail) wrote: > > On Tue, 2021-11-30 at 09:18 -0500, Rich Freeman wrote: > > A little background for the curious, and I'll just try to stick to the > > factual narrative and what the main opinions are: > > Gentoo is in an awkward position here: as was discussed in the bug, it > isn't simply a matter of setting libpng[-apng] by default, letting > Mozilla bundle their own libpng, and moving on with life. Other > programs on Gentoo systems, built against libpng over the years with > apng support, will suddenly *not* have it, and this situation could > cause problems and data loss for users. > So now we're getting more into personal opinion. Those same users will suffer data loss if they open the same files on any other linux distro or likely windows/OSX/etc versions of the same software, because they don't use the patched version of libpng. I certainly don't have any objection to a heads-up news item when the change hits, but do we REALLY want to package system libraries that have behavior that is unique to Gentoo, and not the same as even what the upstream devs expect? We had a similar situation when it came out that our version of an Etherium client (I think that was it) had some custom patches by default, which were eventually turned off by default. The patches were somewhat controversial, and while I think anybody should be free to use them (they didn't create compatibility issues with the blockchain per se), it is surprising behavior. This is the same reason that we don't go putting affiliate links into search boxes on our browsers like many distros do (which can be a significant source of revenue). Sure, we could patch our browsers to basically give Gentoo a small cut anytime a user searches for anything, or charge search engines to be the default in all our packaged browsers, but it just isn't the way we normally do things (and those changes are IMO more transparent anway - at least the affiliate links are). Now, if somebody wants to run that patch by upstream libpng and it shows signs of getting accepted then by all means hold off until that is settled. The goal is to stick to upstream, and we can always release the change ahead of them (in this case more than a decade ahead of them). Really though this issue has been going on forever so there is no reason to go breaking stuff until a final decision is made and we can do an orderly transition. I think the change is a good one, but it would have been a good one in 2010 too. -- Rich
Re: [gentoo-user] world update problem again
On Tue, 2021-11-30 at 09:18 -0500, Rich Freeman wrote: > A little background for the curious, and I'll just try to stick to the > factual narrative and what the main opinions are: Thank you for a good, objective breakdown. Gentoo is in an awkward position here: as was discussed in the bug, it isn't simply a matter of setting libpng[-apng] by default, letting Mozilla bundle their own libpng, and moving on with life. Other programs on Gentoo systems, built against libpng over the years with apng support, will suddenly *not* have it, and this situation could cause problems and data loss for users. I'm not a (Gentoo) dev, and I don't have strong feelings either way, but it is an unenviable position to be in. Regardless, I have trust that things will be resolved reasonably in the end.
Re: [gentoo-user] world update problem again
On Tue, Nov 30, 2021 at 8:27 AM Arve Barsnes wrote: > > On Tue, 30 Nov 2021 at 14:20, John Covici wrote: > > > > Hi. So, on my latest attempt at a world update today, I am getting a > > crazy problem with libpng, with some packages insisting on the use > > flag -apng (portage made me put it in), but other packages insisting > > on the use flag apng. > > > > Thanks in advance for any suggestions. > > That is a direct conflict between chromium and firefox/thunderbird. > You can avoid it by removing the system-png flag from chromium. That issue will probably never hit stable, and I would make a note to revisit it in a few weeks. The next Council agenda includes resolving the conflict, though that isn't a guarantee it will happen. Once the change is settled you'll probably want to revert all your USE flag changes to the new defaults unless you have a strong personal preference. A little background for the curious, and I'll just try to stick to the factual narrative and what the main opinions are: Apng is an extension for the png file format that apparently adds support for animation, and may also have other improvements. Mozilla products ship with a bundled version of libpng that includes a patch for apng support. Chromium ships with a bundled version of libpng that is just the vanilla upstream version. The apng patch was submitted to libpng ages ago and was not accepted at that time. There is debate about whether it might be accepted in the near future. Some distros shipped the apng patch with libpng, and Gentoo has done so by default for a while. Over time every other distro seems to have removed this patch, and Gentoo is the only distro patching libpng for apng support. Right now Gentoo's mozilla packages build against the system libpng and not the bundled one, which means they don't work right if the apng patch isn't in the system library. Chromium has a use flag that toggles whether it uses the system libpng, and if it is using the system version it won't work unless the system libpng DOESN'T include the apng patch. So, without further patching (likely significant) you can't have both packages use the system libpng at the same time. That's basically it for the facts - I don't think any of the above is disputed. Now onto the implications/policy side: Obviously everybody prefers system libraries over bundled libraries, and everybody prefers unpatched upstream packages over patches not likely to be accepted by upstream. Of course, both of those cannot be satisfied at the same time here. Council has been asked to approve removing the apng patch by default from libpng, using bundled libpng by default on mozilla, and using system libpng by default on chromium. The argument here is that having a system library with non-standard patches that no other distro applies could cause other issues and generally deviates from the Gentoo way, and since at least one of the browsers will have to use bundled libs by default it might as well be the one that uses non-standard versions of those libs (which is already a common issue with bundled libs in browsers - or at least it is with chromium though in this case it is mozilla doing it). The main counterargument is that neither option is ideal and so we should maintain the current state, and maybe see if those apng patches get accepted upstream. The reason you're getting the USE flag conflicts is because chromium has started to implement the change that they asked the council to approve, but since they can only touch their own package we end up with a conflict. I doubt we'll see that make it to stable (unless council approves the change and the other packages are modified to eliminate the conflict) but anybody running the latest and greatest gets to deal with the conflict in the meantime. The gory details are in this bug - please do not comment there just to offer opinions: https://bugs.gentoo.org/824018 -- Rich
Re: [gentoo-user] world update problem again
On Tue, 30 Nov 2021 08:27:14 -0500, Arve Barsnes wrote: > > On Tue, 30 Nov 2021 at 14:20, John Covici wrote: > > > > Hi. So, on my latest attempt at a world update today, I am getting a > > crazy problem with libpng, with some packages insisting on the use > > flag -apng (portage made me put it in), but other packages insisting > > on the use flag apng. > > > > Thanks in advance for any suggestions. > > That is a direct conflict between chromium and firefox/thunderbird. > You can avoid it by removing the system-png flag from chromium. Thanks, that did it!! This seems to have been a new flag, not seen before -- thanks again. -- Your life is like a penny. You're going to lose it. The question is: How do you spend it? John Covici wb2una cov...@ccs.covici.com
Re: [gentoo-user] world update problem again
On Tue, 2021-11-30 at 14:27 +0100, Arve Barsnes wrote: > > Hi. So, on my latest attempt at a world update today, I am getting a > > crazy problem with libpng, with some packages insisting on the use > > flag -apng (portage made me put it in), but other packages insisting > > on the use flag apng. > > > > Thanks in advance for any suggestions. > > That is a direct conflict between chromium and firefox/thunderbird. > You can avoid it by removing the system-png flag from chromium. This has been a hotly debated topic recently. For more backstory, see this bug: https://bugs.gentoo.org/824018
Re: [gentoo-user] world update problem again
On Tue, 30 Nov 2021 at 14:20, John Covici wrote: > > Hi. So, on my latest attempt at a world update today, I am getting a > crazy problem with libpng, with some packages insisting on the use > flag -apng (portage made me put it in), but other packages insisting > on the use flag apng. > > Thanks in advance for any suggestions. That is a direct conflict between chromium and firefox/thunderbird. You can avoid it by removing the system-png flag from chromium. Regards, Arve
[gentoo-user] world update problem again
Hi. So, on my latest attempt at a world update today, I am getting a crazy problem with libpng, with some packages insisting on the use flag -apng (portage made me put it in), but other packages insisting on the use flag apng. Here is the actual portage output: Total: 232 packages (198 upgrades, 2 downgrades, 2 new, 6 in new slots, 24 reinstalls, 2 uninstalls), Size of downloads: 3,451,440 KiB^M Conflict: 3 blocks (all satisfied)^M ^M !!! Multiple package instances within a single package slot have been pulled^M !!! into the dependency graph, resulting in a slot conflict:^M ^M media-libs/libpng:0^M ^M (media-libs/libpng-1.6.37-r2:0/16::gentoo, ebuild scheduled for merge) USE="-apng -static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse" pulled in by^M media-libs/libpng:=[-apng] required by (www-client/chromium-98.0.4710.4-r1:0/dev::gentoo, ebuild scheduled for merge) USE="cups hangouts js-type-check official (pic) proprietary-codecs suid system-harfbuzz system-png (-component-build)\ -custom-cflags -debug (-headless) -kerberos -pulseaudio -screencast (-selinux) (-system-ffmpeg) -system-icu -vaapi -wayland -widevine" ABI_X86="(64)" L10N="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he hi hr hu id it ja\ kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv sw ta te th tr uk vi zh-CN zh-TW"^M ^ \ \ ^M ^M (media-libs/libpng-1.6.37-r2:0/16::gentoo, installed) USE="apng -abi_riscv_ilp32 -abi_riscv_ilp32d -abi_riscv_lp64 -abi_riscv_lp64d -static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse" pulled in by^M >=media-libs/libpng-1.6.35:0=[apng] required by (www-client/firefox-94.0.2:0/94::gentoo, ebuild scheduled for merge) USE="clang dbus gmp-autoupdate openh264 system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-webp \-debug -eme-free -geckodriver -hardened -hwaccel -jack -lto -pgo -pulseaudio -screencast (-selinux) -sndio -system-libvpx -wayland -wifi" ABI_X86="(64)" L10N="-ach -af -an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs -cy -da \-de -dsb -el -en-CA -en-GB -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi -fr -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja -ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -ne -nl -nn -oc -pa -pl -pt-B\R -pt-PT -rm -ro -ru -sco -si -sk -sl -son -sq -sr -sv -szl -ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh -zh-CN -zh-TW"^M \ \