I've already discussed some of this on IRC, but it happened again. What exactly happened on IRC? I complained that there's a problem with media-libs/libsdl having a lot of USEFLAGS cut. It oddly matched media-libs/libsdl2. With some googling the kind users on IRC found out that it's because media-libs/libsdl-1.2.60 is a wrapper for SDL1 apps to work with SDL2. These are breaking changes for me because my systems are built with global USEFLAGS "-alsa pulseaudio" with per-package exceptions to ensure that whatever can use PulseAudio, does use it. That was set in stone for me before PipeWire existed, when there were 4 competing sound backends (ALSA, OSS, Jack, Pulse) for applications instead of 5. Now, when =media-libs/sdl2-mixer-2.6.2-r1 arrives, it has (-mad%) (-mikmod%) (-modplug%) in its USE. Coincidentally, =games-emulation/snes9x-1.62.1 is also introducing (-glslang%) (-opengl%*) (-png%*). This isn't exactly a bug report against software, but a bug report against lack of communication. What is happening? Why are there packages dropping out USEFLAGS left and right? When is this going to end? What mitigation actions should be prepared by end users? Why is nothing like this communicated through Portage news?
Note that we don't tend to(In reply to Michał Dec from comment #0) > I've already discussed some of this on IRC, but it happened again. > > What exactly happened on IRC? I complained that there's a problem with > media-libs/libsdl having a lot of USEFLAGS cut. It oddly matched > media-libs/libsdl2. With some googling the kind users on IRC found out that > it's because media-libs/libsdl-1.2.60 is a wrapper for SDL1 apps to work > with SDL2. Yes, and it's supposed to work transparently with USE flags being managed on sdl2. I think this is the first complaint we've had about it. We can only do things with which we're told. > > These are breaking changes for me because my systems are built with global > USEFLAGS "-alsa pulseaudio" with per-package exceptions to ensure that > whatever can use PulseAudio, does use it. That was set in stone for me > before PipeWire existed, when there were 4 competing sound backends (ALSA, > OSS, Jack, Pulse) for applications instead of 5. > > Now, when =media-libs/sdl2-mixer-2.6.2-r1 arrives, it has (-mad%) (-mikmod%) > (-modplug%) in its USE. Coincidentally, =games-emulation/snes9x-1.62.1 is > also introducing (-glslang%) (-opengl%*) (-png%*). In the case of sdl2-mixer, support upstream for mikmod is gone and they now unconditionally use modplug with USE=mod. snes9x is an emulator and emulators famously have a huge amount of churn. In this release, they (for unexplained reasons) switched back to Meson from CMake. > > This isn't exactly a bug report against software, but a bug report against > lack of communication. > > What is happening? Different things to different packages. You should ask about them individually, ideally before you get frustrated and need to ask about all of them together. > Why are there packages dropping out USEFLAGS left and right? For totally distinct reasons from each other. > When is this going to end? I think this is a bit dramatic. > What mitigation actions should be prepared by end users? > Why is nothing like this communicated through Portage news? Because we don't tend to give news items for every single USE flag dropped or added to a package unless we anticipate particular disruption. Especially if upstream drop support for something because *they* don't consider it important at all anymore.
Yeah snes9x there's not much to say, it migrated from meson to cmake upstream and some options are no longer optional (aka it doesn't have a -DUSE_OPENGL or -DSCREENSHOT (png) for the gui build). USE_SLANG exists, but it's currently forced on due to adding no dependencies and being broken if disabled. Essentially lost no features, these are just enabled.
sorry, I should've added: you are very welcome to come and ask us stuff either in the form of a bug or on IRC at #gentoo-games if you're wondering about something. It's just hard to sort of handle something productively when it gets to a tipping point.
>Yes, and it's supposed to work transparently with USE flags being managed on sdl2. I think this is the first complaint we've had about it. We can only do things with which we're told. That's fine. I've resolved this. I'd like to wait a bit before using the wrapper though, so it's masked on my end for now. Hopefully nothing bad will come from this. >In the case of sdl2-mixer, support upstream for mikmod is gone and they now unconditionally use modplug with USE=mod. >snes9x is an emulator and emulators famously have a huge amount of churn. In this release, they (for unexplained reasons) switched back to Meson from CMake. Understandable, probably had their reasons. >I think this is a bit dramatic. A bit maybe, yeah. When the issues with SDL first reared their head on my systems, I have thought this is a one-off. IIRC, the sdl2->sdl USE mapping wouldn't work for me because I needed one of those with ALSA for eduke32. But now that I see more changes in SDL in general, I was worried there is something more happening. >Yeah snes9x there's not much to say, it migrated from meson to cmake upstream and some options are no longer optional (aka it doesn't have a -DUSE_OPENGL or -DSCREENSHOT (png) for the gui build). >USE_SLANG exists, but it's currently forced on due to adding no dependencies and being broken if disabled. >Essentially lost no features, these are just enabled. Thank you, that's a big relief! >sorry, I should've added: you are very welcome to come and ask us stuff either in the form of a bug or on IRC at #gentoo-games if you're wondering about something. It's just hard to sort of handle something productively when it gets to a tipping point. Thank you!