View previous topic :: View next topic |
Author |
Message |
Princess Nell l33t
Joined: 15 Apr 2005 Posts: 925
|
Posted: Tue Sep 24, 2024 4:54 pm Post subject: wayland use flag |
|
|
Today's sync brought in a bunch of new ebuilds that I don't want or need, all from kde-frameworks. I don't use KDE. If I disable the wayland USE flag in make.conf, will I get into trouble at a later point?
If I decided to switch to Wayland at a later date, would I just have to suck it up or is there a way to avoid these KDE ebuilds?
I see that dev-libs/plasma-wayland-protocols is being pulled in, probably the reason for the above, but nothing in https://wiki.gentoo.org/wiki/Wayland suggests it is possible to build without Plasma protocol support. Is this something the devs are considering, e.g. new USE flag? |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9265
|
Posted: Tue Sep 24, 2024 5:00 pm Post subject: |
|
|
1. No problem.
2. Yes, well - some of your packages obviously have KDE Frameworks (?) as dependencies, but without any output, this would be just a guessing game. Do you think KDE libraries are bad?
3. I didn't understand that last bit. What do you think that package is?
Last edited by asturm on Tue Sep 24, 2024 5:28 pm; edited 2 times in total |
|
Back to top |
|
|
eschwartz Developer
Joined: 29 Oct 2023 Posts: 219
|
Posted: Tue Sep 24, 2024 5:12 pm Post subject: Re: wayland use flag |
|
|
Princess Nell wrote: | Today's sync brought in a bunch of new ebuilds that I don't want or need, all from kde-frameworks. I don't use KDE. If I disable the wayland USE flag in make.conf, will I get into trouble at a later point? |
USE defaults are simply defaults. If you actually get into trouble at a later point and that trouble is anything other than "emerge threw a USE dependency conflict and insisted it cannot proceed" it indicates a broken dependency.
Applications may, if upstream designs them that way, only support wayland. Perhaps you aren't using any of those either. Such packages might unconditionally require USE=wayland for their dependencies, inviting a fight with package.use -- but that's not a broken package, just an annoying dependency conflict.
It probably won't happen.
Princess Nell wrote: | If I decided to switch to Wayland at a later date, would I just have to suck it up or is there a way to avoid these KDE ebuilds? |
Suck what up? Forced recompiles? Installing packages at all?
If you switch to wayland and you want to use a KDE application on a non-KDE window manager, that application either needs to talk the wayland display protocol, which means building the frameworks with wayland support, or it needs to run via xwayland and speak the Xorg display protocol with xwayland translation in between.
In short, yeah, probably you have to reinstall including with some new framework dependencies for an application that previously got by with *fewer*.
Princess Nell wrote: | I see that dev-libs/plasma-wayland-protocols is being pulled in, probably the reason for the above, but nothing in https://wiki.gentoo.org/wiki/Wayland suggests it is possible to build without Plasma protocol support. Is this something the devs are considering, e.g. new USE flag? |
I, too, do not know what this means.
That being said, in general, USE flags can only be introduced if the upstream project supports a choice between two scenarios. The USE flag simply implements that upstream choice for Gentoo.
plasma-wayland-protocols provides some XML files that are used by build systems to generate headers and C code, it should never be installed if your packages are retrieved from Gentoo's official binhost. If you compile kde-frameworks/* packages from source, you can still depclean plasma-wayland-protocols as long as you use --with-bdeps=n. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9265
|
Posted: Tue Sep 24, 2024 5:14 pm Post subject: |
|
|
Also, if you pasted your emerge output, maybe we could tell you more. |
|
Back to top |
|
|
pjp Administrator
Joined: 16 Apr 2002 Posts: 20484
|
Posted: Tue Sep 24, 2024 5:57 pm Post subject: |
|
|
I think asturm's point "2" is key. I had 11 packages with the new wayland USE flag, none of them KDE / qt related.
Well, that and his point about posting output. _________________ Quis separabit? Quo animo? |
|
Back to top |
|
|
Princess Nell l33t
Joined: 15 Apr 2005 Posts: 925
|
Posted: Tue Sep 24, 2024 8:34 pm Post subject: |
|
|
Sorry, the list is quite long.
The point is: everything below with USE flag wayland is new since the previous sync. Along with that, everything kde and plasma is new. I do not use KDE and do not currently have any KDE ebuilds installed, so I'm trying to figure out why portage thinks I should install this stuff.
I found that dev-libs/plasma-wayland-protocols unconditionally pulls in kde-frameworks/extra-cmake-modules. That doesn't explain all the other kde-framework ebuilds, though, or why dev-libs/plasma-wayland-protocols is there in the first place.
Code: |
These are the packages that would be merged, in order:
Calculating dependencies ....... done!
Dependency resolution took 80.04 s (backtrack: 3/20).
[ebuild U ] media-libs/alsa-ucm-conf-1.2.12 [1.2.11]
[ebuild U ] media-libs/giflib-5.2.2 [5.2.1-r1]
[ebuild r U ] dev-lang/go-1.23.1 [1.22.6]
[ebuild U ] dev-libs/oniguruma-6.9.9 [6.9.8]
[ebuild U ] sys-apps/sandbox-2.39 [2.38]
[ebuild U ] sys-devel/binutils-config-5.5.2 [5.5]
[ebuild U ] net-wireless/iw-6.7 [5.19]
[ebuild rR ] net-p2p/syncthing-1.27.9
[ebuild U ] app-office/libreoffice-l10n-24.2.6.2 [24.2.5.2]
[ebuild U ] sys-devel/clang-common-18.1.8-r3 [18.1.8-r1]
[ebuild U ] app-admin/perl-cleaner-2.31-r2 [2.31]
[ebuild U ] media-libs/alsa-lib-1.2.12 [1.2.11]
[ebuild U ] dev-db/sqlite-3.46.1 [3.46.0]
[ebuild U ] media-gfx/potrace-1.16-r1 [1.16]
[ebuild R ] dev-debug/strace-6.9 USE="-verify-sig%"
[ebuild U ] media-sound/alsa-utils-1.2.12 [1.2.11]
[ebuild N ] dev-util/wayland-scanner-1.23.0
[ebuild U ] media-libs/dav1d-1.4.2 [1.3.0]
[ebuild N ] dev-libs/wayland-1.23.0-r1 USE="-doc -test" ABI_X86="(64) -32 (-x32)"
[ebuild N ] dev-libs/wayland-protocols-1.36 USE="-test"
[ebuild U ] perl-core/File-Temp-0.231.100-r1 [0.231.100]
[ebuild U ] dev-perl/Text-CSV_XS-1.540.0 [1.520.0]
[ebuild U ] dev-perl/ExtUtils-Helpers-0.27.0 [0.26.0-r1]
[ebuild U ] dev-perl/IO-Socket-SSL-2.88.0 [2.85.0]
[ebuild U ] dev-perl/Alien-Build-2.830.0 [2.800.0-r1]
[ebuild U ] dev-ruby/timeout-0.4.1 [0.3.2] RUBY_TARGETS="(-ruby33)"
[ebuild U ] dev-lang/rust-bin-1.80.1 [1.79.0]
[ebuild U ] virtual/rust-1.80.1 [1.79.0]
[ebuild U ] dev-util/cbindgen-0.27.0 [0.26.0] USE="-test%"
[ebuild U ] dev-libs/libixion-0.19.0-r1 [0.19.0]
[ebuild U ] net-libs/gnutls-3.8.7.1-r1 [3.8.0]
[ebuild r U ] app-crypt/rhash-1.4.4-r1 [1.4.3]
[ebuild U ] dev-libs/xmlsec-1.3.4 [1.3.3-r1]
[ebuild U ] dev-vcs/git-2.45.2 [2.44.2] PYTHON_SINGLE_TARGET="(-python3_13)"
[ebuild U ] dev-lang/python-3.12.6_p2 [3.12.3-r1]
[ebuild U ] media-libs/harfbuzz-9.0.0 [8.5.0]
[ebuild U ] app-arch/libarchive-3.7.5 [3.7.4]
[ebuild rR ] dev-build/cmake-3.30.2
[ebuild U ] media-libs/libjpeg-turbo-3.0.3-r1 [3.0.0]
[ebuild R ] x11-libs/libxkbcommon-1.7.0-r1 USE="wayland*"
[ebuild U ] x11-libs/libdrm-2.4.122-r1 [2.4.122] USE="-doc%"
[ebuild N ] kde-frameworks/extra-cmake-modules-6.5.0-r1 USE="-doc -test"
[ebuild r U ] dev-libs/protobuf-27.2 [25.3] USE="libprotoc%* protobuf%* protoc%* -conformance% -libupb%"
[ebuild U ] media-libs/libaom-3.9.1 [3.8.1]
[ebuild U ] sys-apps/gptfdisk-1.0.10-r1 [1.0.9-r3]
[ebuild r U ] dev-libs/tinyxml2-10.0.0 [9.0.0-r1]
[ebuild U ] net-libs/ngtcp2-1.7.0 [1.5.0]
[ebuild U ] sys-libs/libnvme-1.10 [1.9] PYTHON_TARGETS="(-python3_13)"
[ebuild U ] dev-libs/libfmt-9.1.0-r2 [9.1.0-r1] ABI_X86="(64%*) -32% (-x32)"
[ebuild U ] dev-libs/libxmlb-0.3.19 [0.3.14] USE="lzma%*"
[ebuild U ] media-libs/libgphoto2-2.5.31-r2 [2.5.31-r1]
[ebuild U ] dev-lang/python-3.11.10_p1 [3.11.9_p2]
[ebuild U ] app-portage/portage-utils-0.97 [0.96.1]
[ebuild U ] media-libs/openjpeg-2.5.2 [2.5.0-r6]
[ebuild R ] media-libs/vulkan-loader-1.3.290.0 USE="wayland*"
[ebuild U ] dev-libs/protobuf-c-1.5.0-r2 [1.4.1-r1]
[ebuild rR ] dev-util/android-tools-34.0.5
[ebuild rR ] media-libs/libmediainfo-23.10
[ebuild U ] media-libs/libraw-0.21.2 [0.21.1-r1]
[ebuild U ] sys-fs/cryptsetup-2.7.5 [2.7.2]
[ebuild U ] sys-boot/grub-2.12-r5 [2.12-r4] USE="-secureboot%"
[ebuild N ] kde-frameworks/kf-env-6
[ebuild U ] sys-libs/libblockdev-3.1.1 [3.0.4]
[ebuild U ] dev-python/lxml-5.3.0 [5.2.2]
[ebuild U ] dev-python/cffi-1.17.1 [1.17.0]
[ebuild U ] dev-python/configobj-5.0.9 [5.0.8]
[ebuild U ] app-portage/mirrorselect-2.5.0 [2.4.0]
[ebuild U ] dev-python/pefile-2024.8.26 [2023.2.7] PYTHON_TARGETS="(-python3_13)"
[ebuild U ] dev-python/zope-interface-7.0.3 [6.4_p2]
[ebuild U ] dev-python/cryptography-43.0.1 [43.0.0]
[ebuild R ] dev-qt/qtgui-5.15.14 USE="wayland*"
[ebuild N ] dev-qt/qtwayland-5.15.14 USE="vulkan -compositor -debug -test"
[ebuild U ] sys-libs/compiler-rt-18.1.8-r1 [18.1.8]
[ebuild U ] dev-util/intel_clc-24.1.7 [24.1.6]
[ebuild U ] media-libs/mesa-24.1.7 [24.1.6] USE="wayland*"
[ebuild U ] sys-libs/compiler-rt-sanitizers-18.1.8-r1 [18.1.8]
[ebuild R ] x11-libs/gtk+-3.24.41-r1 USE="wayland*"
[ebuild R ] media-libs/gst-plugins-base-1.22.11-r1 USE="wayland*"
[ebuild R ] media-libs/gst-plugins-bad-1.22.11-r1 USE="wayland*"
[ebuild N ] gui-libs/libdecor-0.2.2-r1 USE="dbus gtk -examples" ABI_X86="(64) -32 (-x32)"
[ebuild N ] gui-libs/gtk-layer-shell-0.8.2 USE="-examples -gtk-doc -introspection -test -vala"
[ebuild R ] dev-cpp/gtkmm-3.24.9 USE="wayland*"
[ebuild R ] gui-libs/gtk-4.14.4-r1 USE="wayland*"
[ebuild R ] x11-apps/mesa-progs-9.0.0 USE="wayland*"
[ebuild U ] x11-terms/terminator-2.1.4 [2.1.3]
[ebuild R ] mate-base/mate-panel-1.28.1 USE="wayland*"
[ebuild R ] net-libs/webkit-gtk-2.44.1-r410 USE="wayland*"
[ebuild U ] media-libs/imlib2-1.12.3 [1.11.0] USE="-raw%"
[ebuild R ] dev-libs/libportal-0.7.1-r1 USE="wayland*"
[ebuild U ] app-office/gnucash-5.8 [5.6]
[ebuild R ] dev-qt/qtbase-6.7.2-r4 USE="wayland*"
[ebuild N ] dev-qt/qtwayland-6.7.2-r3 USE="qml vulkan -accessibility -compositor -test"
[ebuild N ] kde-frameworks/breeze-icons-6.5.0 USE="-test"
[ebuild r U ] app-text/poppler-24.08.0 [24.06.1]
[ebuild N ] dev-libs/plasma-wayland-protocols-1.13.0
[ebuild U ] app-office/libreoffice-24.2.6.2 [24.2.4.2-r1] USE="qt6%* -qt5%"
[ebuild rR ] net-print/libcupsfilters-2.0.0-r5
[ebuild N ] kde-frameworks/kguiaddons-6.5.0-r1 USE="X dbus wayland -debug -doc -test"
[ebuild N ] kde-frameworks/kwindowsystem-6.5.0-r1 USE="X wayland -debug -doc -test"
[ebuild U ] media-libs/libv4l-1.28.1 [1.26.1] USE="qt6%*"
[ebuild R ] app-crypt/pinentry-1.3.0-r3 USE="wayland*"
[ebuild R ] x11-misc/mate-notification-daemon-1.28.0 USE="wayland*"
[ebuild R ] media-libs/libsdl2-2.28.5-r2 USE="gles2* wayland*"
[ebuild U ] media-video/smplayer-23.6.0-r1 [23.6.0]
[ebuild R ] sys-block/gparted-1.6.0-r1 USE="wayland*"
[ebuild rR ] net-wireless/kismet-2022.08.1-r2
WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:
...
|
|
|
Back to top |
|
|
eschwartz Developer
Joined: 29 Oct 2023 Posts: 219
|
Posted: Tue Sep 24, 2024 8:50 pm Post subject: |
|
|
Princess Nell wrote: | Sorry, the list is quite long.
The point is: everything below with USE flag wayland is new since the previous sync. Along with that, everything kde and plasma is new. I do not use KDE and do not currently have any KDE ebuilds installed, so I'm trying to figure out why portage thinks I should install this stuff.
I found that dev-libs/plasma-wayland-protocols unconditionally pulls in kde-frameworks/extra-cmake-modules. That doesn't explain all the other kde-framework ebuilds, though, or why dev-libs/plasma-wayland-protocols is there in the first place.
Code: |
[ebuild U ] media-libs/libv4l-1.28.1 [1.26.1] USE="qt6%*"
[ebuild R ] app-crypt/pinentry-1.3.0-r3 USE="wayland*"
|
|
You(r emerge --sync) are enabling qt6 USE on libv4l and wayland USE on pinentry, these seem pretty relevant as they yank in qt6 related stuff.
What's your USE flags for pinentry? If both qt6 and wayland are enabled for pinentry, then pinentry requires kde-frameworks/kguiaddons:6 kde-frameworks/kwindowsystem:6 to implement its qt6-based wayland-supporting GUI. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9265
|
Posted: Tue Sep 24, 2024 9:35 pm Post subject: |
|
|
There is no KDE Plasma package in your output. Only libraries that application devs use for not having to reinvent the wheel. |
|
Back to top |
|
|
Princess Nell l33t
Joined: 15 Apr 2005 Posts: 925
|
Posted: Tue Sep 24, 2024 10:43 pm Post subject: |
|
|
I have no custom USE flags for pinentry. eix says:
Code: |
[I] app-crypt/pinentry
Available versions: 1.2.1-r7 ~1.2.1-r8 1.3.0-r3 ~1.3.1 {X caps efl emacs gtk keyring ncurses qt5 qt6 verify-sig wayland}
Installed versions: 1.3.0-r3(23:01:13 14/09/24)(X gtk ncurses qt6 -caps -efl -emacs -keyring -qt5 -verify-sig -wayland)
Homepage: https://gnupg.org/related_software/pinentry/
Description: Simple passphrase entry dialogs which utilize the Assuan protocol
|
qt6 yes, wayland no. qt6 is not globally disabled and I have no ebuilds with custom qt6 flag, only those that have it enabled by default. Some of them certainly don't need it.
Code: |
* Searching for USE flag qt6 ...
[IP-] [ ] app-crypt/gpgme-1.23.2-r1:1/11.6.15.2
[IP-] [ ] app-crypt/pinentry-1.3.0-r3:0
[IP-] [ ] app-text/poppler-24.06.1:0/138
[IP-] [ ] dev-build/cmake-3.30.2:0
[IP-] [ ] dev-libs/appstream-1.0.3:0/5
[IP-] [ ] dev-libs/quazip-1.4-r1:0/1.4
[IP-] [ ] net-analyzer/wireshark-4.2.6:0/4.2.6
|
The changes you describe are made by portage, not me. I will go through the above list, plus libv4l, to disable qt6 explicitly. |
|
Back to top |
|
|
eschwartz Developer
Joined: 29 Oct 2023 Posts: 219
|
Posted: Tue Sep 24, 2024 11:33 pm Post subject: |
|
|
Princess Nell wrote: | I have no custom USE flags for pinentry.
[...]
The changes you describe are made by portage, not me. I will go through the above list, plus libv4l, to disable qt6 explicitly. |
Indeed, you'd have to have custom USE flags to disable it. The desktop profile enables qt6 by default now (it is generally preferable rather than qt5) as soon as the remaining blocker keeping many people on Qt5 was resolved, that being KDE 6 stabilization (this change was pretty recent, you should have seen pinentry be rebuilt for qt6 around September 1 unless you disabled it manually).
Of course in pinentry's case, USE=qt6 doesn't mean "the application has a choice between qt5 and qt6, choose qt6" but rather "the application has an optional qt6 gui, do you want to build the GUI at all". So in this particular case one might well want pinentry to not build any GUI. |
|
Back to top |
|
|
yayo Tux's lil' helper
Joined: 19 May 2014 Posts: 100
|
Posted: Wed Sep 25, 2024 2:26 pm Post subject: |
|
|
I noticed too some packages with the wayland useflag turned on by default during the last 2 days: vlc, libxkbcommon, mesa and gtk+ (so far).
When I've seen it on vlc yesterday I tought of disabling it locally, because I'm still on X, I don't see a reason for compiling and installing wayland if I'm not using it.
But if it's going to be enabled everywhere there's no point in fixing it locally.
Is there a reason for it being enabled on many packages right now?
I mean is it someway "required" for those packages from now on, or is it just a "wayland becoming default" normal process?
Can it be (temporarily) disabled globally without making a mess? : / |
|
Back to top |
|
|
eschwartz Developer
Joined: 29 Oct 2023 Posts: 219
|
Posted: Wed Sep 25, 2024 2:36 pm Post subject: |
|
|
yayo wrote: |
Is there a reason for it being enabled on many packages right now?
I mean is it someway "required" for those packages from now on, or is it just a "wayland becoming default" normal process?
|
Quoting from the discussion thread about making the change:
asturm wrote: |
1) overall small impact on binary size, no runtime implications for X users
2) desktop profile definition is "minimal" USE flags, not necessarily "legacy"
3) plenty of "minimal" gui-wm/* exist, so X WMs can't claim that space
4) KWin is not just used with Plasma, but also as LXQt default, and both
Plasma as well as Gnome have plenty of desktop profile users for some reason
(mostly no-multilib of course ...)
5) deduplication++
|
Reasons 2 and 3 feel very "whatever", reason 5 is incorrect as the same results can be achieved without modifying the "desktop" profile.
Reason 1 explains why it might not actually make a difference other than triggering a recompile.
Reason 4 is interesting, and surprised me to hear (that plasma and gnome users run the base desktop profile).
In short, it's about "becoming default". There are effectively no implications to manually disabling it if you wish to avoid it. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 9265
|
Posted: Wed Sep 25, 2024 8:16 pm Post subject: |
|
|
eschwartz wrote: | Reasons 2 and 3 feel very "whatever" |
You're saying that as someone outside that group, but in 2024, gui-wm/* users have equal rights to the desktop profile as "X" users do, and arguably, "their" dependency burden is much lower than the X stack. Basically not even worth the discussion.
eschwartz wrote: | Reason 4 is interesting, and surprised me to hear |
Enough to make it a real support burden. Even the amount of non-desktop usage for lack of better knowledge and resulting in - completely avoidable - problems is saddening.
eschwartz wrote: | reason 5 is incorrect as the same results can be achieved without modifying the "desktop" profile. |
While it was made somewhat in jest, it is easy for you just putting that out there without having to implement that alternative, which is not going to happen.
Of course, the unspoken truth here is that we are in the midst of a transition phase and X is well past its expiry date by now, but we all know how the mailing list thread would have gone after that ... |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|