From 9991465b0b90d77b2a8a2ae833b6ecd99e6b5101 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 8 Jan 2025 06:41:21 +0000 Subject: gentoo auto-resync : 08:01:2025 - 06:41:21 --- x11-wm/Manifest.gz | Bin 9133 -> 9132 bytes x11-wm/mutter/Manifest | 6 +- x11-wm/mutter/mutter-46.4-r1.ebuild | 234 ++++++++++++++++++++++++++++++++++++ x11-wm/mutter/mutter-46.4.ebuild | 233 ----------------------------------- x11-wm/mutter/mutter-46.7-r1.ebuild | 233 +++++++++++++++++++++++++++++++++++ x11-wm/mutter/mutter-46.7.ebuild | 233 ----------------------------------- x11-wm/mutter/mutter-9999.ebuild | 25 ++-- x11-wm/qtile/Manifest | 2 + x11-wm/qtile/qtile-0.30.0.ebuild | 117 ++++++++++++++++++ 9 files changed, 602 insertions(+), 481 deletions(-) create mode 100644 x11-wm/mutter/mutter-46.4-r1.ebuild delete mode 100644 x11-wm/mutter/mutter-46.4.ebuild create mode 100644 x11-wm/mutter/mutter-46.7-r1.ebuild delete mode 100644 x11-wm/mutter/mutter-46.7.ebuild create mode 100644 x11-wm/qtile/qtile-0.30.0.ebuild (limited to 'x11-wm') diff --git a/x11-wm/Manifest.gz b/x11-wm/Manifest.gz index 98ace8a60065..f7cd8ded4368 100644 Binary files a/x11-wm/Manifest.gz and b/x11-wm/Manifest.gz differ diff --git a/x11-wm/mutter/Manifest b/x11-wm/mutter/Manifest index c9d762aaae78..6d4ded1c6294 100644 --- a/x11-wm/mutter/Manifest +++ b/x11-wm/mutter/Manifest @@ -5,7 +5,7 @@ DIST mutter-46.4.tar.xz 6752800 BLAKE2B 330c8fd1537c6eea93af4413ec7ccf8c0ea478c5 DIST mutter-46.7.tar.xz 6755308 BLAKE2B 69cb8457ec9ab905c8764ffa8fbd44050431b359e349697615b90d201402dffd2bd850e3fb0f393ab75800d148c2805ac791f69d356c6bfb26007a2394cbbd48 SHA512 0d9b159805b79f90d2cb06582c859b10e56bc22001d1e1b0090821914e18085749a54eb117b94788578b17894e4d28ec408144a09b29f94b7785f7538c4613a8 EBUILD mutter-45.5.ebuild 7074 BLAKE2B be4c19f9fcea03f64e8faba3364b751f380c2fd865e0096cf5af32c17370f143467ab69e51827528cb7659a7e980afbd82f6222e279dd39e292d80e959940640 SHA512 fdc80858095dcb1122e79775fa7e6756cc0816bd9f75250b5630359b96b260ddc4db38bd6bc81b0937db955369d94f7afbb69c55e03ffd09474961282f18f7f7 EBUILD mutter-45.6.ebuild 7329 BLAKE2B 0f1f364a4f9b549e606bddf92546d12361521c5e4c48e9ca2e55e45f2f7bf28ace17b1a1eb598d44157be76d10c22549d09bbbeaa2c84b42b880ab30d7015fc1 SHA512 428844a68e1b23bbb1639e7f615ddb24dc64634bbaf3c7cd053a9c5ed6cbe815f3588082bc6d69003c5b28cbd6e034586cfee3a76d9a713c314b32c9bf09c7f6 -EBUILD mutter-46.4.ebuild 7001 BLAKE2B e59f591d7f9ea67368c68de0d67e7b5b286c1d3928eca87c1d7876272e3d2f17402c12446f5aed32a293d054c01b57047ca9e6cebc7a12c669591ad805021b7b SHA512 84333dbb2d47a65d0e559012d00b644ee3056b29a95098e455ac228b250b117bde7e2f20da37c9caccd29d55dd9193eb67f540d49644038b979b9ea15ee56722 -EBUILD mutter-46.7.ebuild 6998 BLAKE2B aed4b2f5a0d20eb194db1071b8f35a39288892fda8e521251100c027becd2e169d6b3fef76da9b9dc2fa1489103663d8ab66680d3771989fa4b21e7cf6c75157 SHA512 bf1ecbb221275ad721a786a4cc3e6eac59d2ba1a697e8a082654944a9776585e0482feba32fcaed29e1c0e669f85304ad9273de613a91a2a25e5812057bc4456 -EBUILD mutter-9999.ebuild 7001 BLAKE2B e59f591d7f9ea67368c68de0d67e7b5b286c1d3928eca87c1d7876272e3d2f17402c12446f5aed32a293d054c01b57047ca9e6cebc7a12c669591ad805021b7b SHA512 84333dbb2d47a65d0e559012d00b644ee3056b29a95098e455ac228b250b117bde7e2f20da37c9caccd29d55dd9193eb67f540d49644038b979b9ea15ee56722 +EBUILD mutter-46.4-r1.ebuild 7034 BLAKE2B ee9c601e6fa869252814fbd0a029e28c57a0db7a104b9763d15e6f655fac0c8c26a9e9431980a1df37dfd78e4a60fce2844ecffb0220b5a4cd747e33aa9ed280 SHA512 f45fd2fe82970f3e588c68dc786676a71eccc4dd47c7672b1866bc9d8f2b8ca5723344fe1fd6101b607e6e85a921b9ddf3697a885b7c475573399cda96f821ea +EBUILD mutter-46.7-r1.ebuild 7031 BLAKE2B 95fef7af3e152829d3fee048a2ec6d9b5af29f5799b3d6f96a5bf3917eeb0ea2576812d21c1005bbcf3a8e3c0fa550ea5f168d191b71a2b9417c845c913119ae SHA512 3a728e3a716b3f8435eac52466fd0a551fc9592ac66be1bd6e990f367d9adaff5132885bc7e3e11251d1b835ba91b0d8d081b22a12f5a7b96f3ef1bfecb62eaa +EBUILD mutter-9999.ebuild 7030 BLAKE2B 9aaf67210d835429cc7c2141dc708c145da5cd9ee13c04b2beb05aa54d4d6279f5a909b6b744bbd67bedb3915e656e734825d7d3189415aeeb3fd25e40be0006 SHA512 28cc8d90edc97e4fde931890dc829f40371f34f6e7af33b1d347567f0d2ad478f00021b844f50b243fb9640d70dbc0f75f1f470a687c1870a8d20ab1f5f45219 MISC metadata.xml 584 BLAKE2B 8c15ff1bc0bbadd7fe37f4a903d90c49f10aee6fd8cd83bcd81d486113397607f30b0a9c3aa43ee0b0f8e0cea8e8caaebac8560da70090fd0dbfbba8f8c0250d SHA512 924fc21a5378dc447e36c21f09ce45ebb61ea4de1dc1f541cb45ce139352616983141e8e1466fcc34dceaf1a5ea0f8e87023b25291e6796ef3f2163777e00a87 diff --git a/x11-wm/mutter/mutter-46.4-r1.ebuild b/x11-wm/mutter/mutter-46.4-r1.ebuild new file mode 100644 index 000000000000..c923d571f568 --- /dev/null +++ b/x11-wm/mutter/mutter-46.4-r1.ebuild @@ -0,0 +1,234 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..13} ) +inherit gnome.org gnome2-utils meson python-any-r1 udev xdg + +DESCRIPTION="GNOME compositing window manager based on Clutter" +HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/" +LICENSE="GPL-2+" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/mutter.git" + SRC_URI="" + SLOT="0/14" # This can get easily out of date, but better than 9967 +else + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + SLOT="0/$(($(ver_cut 1) - 32))" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-.pc) should use the subslot +fi + +IUSE="debug elogind gnome gtk-doc input_devices_wacom +introspection screencast sysprof systemd test udev wayland video_cards_nvidia" +# native backend requires gles3 for hybrid graphics blitting support, udev and a logind provider +REQUIRED_USE=" + gtk-doc? ( introspection ) + wayland? ( ^^ ( elogind systemd ) udev ) + test? ( wayland )" +RESTRICT="!test? ( test )" + +# gnome-settings-daemon is build checked, but used at runtime only for org.gnome.settings-daemon.peripherals.keyboard gschema +# USE=libei was first introduced in xwayland-23.2.1; we min dep on that to ensure the [libei(+)] works right, as missing USE flag with +# previous versions meant that it's not there, while the intention seems to be to make it always enabled without USE flag in the future; +# this ensures have_enable_ei_portal is always there in xwayland.pc, which affects how Xwayland is launched, thus if it were toggled off +# in Xwayland after mutter is installed, Xwayland would fail to be started by mutter. mutter already hard-depends on libei, so there's +# really no extra deps here (besides xdg-desktop-portal, but we want that too, anyhow). +# v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via dependency() call order +RDEPEND=" + >=media-libs/graphene-1.10.2[introspection?] + x11-libs/gdk-pixbuf:2 + >=x11-libs/pango-1.46[introspection?] + >=x11-libs/cairo-1.14[X] + >=x11-libs/pixman-0.42 + >=dev-libs/fribidi-1.0.0 + >=gnome-base/gsettings-desktop-schemas-42.0[introspection?] + >=dev-libs/glib-2.75.1:2 + gnome-base/gnome-settings-daemon + >=x11-libs/libxkbcommon-0.4.3 + x11-libs/libICE + >=app-accessibility/at-spi2-core-2.46:2[introspection?] + sys-apps/dbus + >=x11-misc/colord-1.4.5:= + >=media-libs/lcms-2.6:2 + >=media-libs/harfbuzz-2.6.0:= + >=dev-libs/libei-1.0.901 + media-libs/libdisplay-info:= + + gnome? ( gnome-base/gnome-desktop:4= ) + + >=media-libs/libcanberra-0.26 + + media-libs/libglvnd[X] + + wayland? ( + >=dev-libs/wayland-protocols-1.33 + >=dev-libs/wayland-1.22.0 + + >=x11-libs/libdrm-2.4.118 + media-libs/mesa[gbm(+)] + >=dev-libs/libinput-1.19.0:= + + elogind? ( sys-auth/elogind ) + >=x11-base/xwayland-23.2.1[libei(+)] + video_cards_nvidia? ( gui-libs/egl-wayland ) + ) + udev? ( + >=virtual/libudev-232-r1:= + >=dev-libs/libgudev-232 + ) + systemd? ( sys-apps/systemd ) + x11-libs/libSM + input_devices_wacom? ( >=dev-libs/libwacom-0.13:= ) + >=x11-libs/startup-notification-0.7 + screencast? ( >=media-video/pipewire-0.3.33:= ) + introspection? ( >=dev-libs/gobject-introspection-1.54:= ) + test? ( + >=x11-libs/gtk+-3.19.8:3[X,introspection?] + gnome-extra/zenity + ) + sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 >=dev-util/sysprof-3.46.0 ) +" +# for now upstream has "have_x11 = true" in the meson.build, but sooner or later upstream is going to make X optional. +# X? ( +RDEPEND+=" + >=gui-libs/gtk-4.0.0:4[X,introspection?] + >=x11-libs/libX11-1.7.0 + >=x11-libs/libXcomposite-0.4 + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + >=x11-libs/libXfixes-6 + >=x11-libs/libXi-1.7.4 + x11-libs/libXtst + x11-libs/libxkbfile + x11-misc/xkeyboard-config + >=x11-libs/libxkbcommon-0.4.3[X] + x11-libs/libXrender + >=x11-libs/libXrandr-1.5.0 + x11-libs/libxcb:= + x11-libs/libXinerama + x11-libs/libXau +" +# )" + +DEPEND="${RDEPEND} + x11-base/xorg-proto + sysprof? ( >=dev-util/sysprof-common-3.38.0 ) +" +BDEPEND=" + dev-util/wayland-scanner + dev-util/gdbus-codegen + dev-util/glib-utils + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) + test? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + >=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}] + ') + app-text/docbook-xml-dtd:4.5 + x11-misc/xvfb-run + ) + wayland? ( + >=sys-kernel/linux-headers-4.4 + x11-libs/libxcvt + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-43.0-Disable-anonymous-file-test.patch +) + +python_check_deps() { + if use test; then + python_has_version ">=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}]" + fi +} + +src_configure() { + use debug && EMESON_BUILDTYPE=debug + local emesonargs=( + # Mutter X11 renderer only supports gles2 and GLX, thus do NOT pass + # + # -Dopengl_libname=libOpenGL.so.0 + # + # while we build the x11 renderer, as we currently enable gles2 only + # with USE=wayland and x11 renderer wouldn't find the needed GLX symbols + # in a configuration where wayland is disabled, as libOpenGL doesn't + # include them. + # + # See + # - https://bugs.gentoo.org/835786 + # - https://forums.gentoo.org/viewtopic-p-8695669.html + + -Dopengl=true + $(meson_use wayland gles2) + #gles2_libname + -Degl=true + -Dglx=true + $(meson_use wayland) + $(meson_use wayland xwayland) + $(meson_use systemd) + $(meson_use wayland native_backend) + $(meson_use screencast remote_desktop) + $(meson_use gnome libgnome_desktop) + $(meson_use udev) + -Dudev_dir=$(get_udevdir) + $(meson_use input_devices_wacom libwacom) + -Dsound_player=true + -Dpango_ft2=true + -Dstartup_notification=true + -Dsm=true + $(meson_use introspection) + $(meson_use gtk-doc docs) + $(meson_use test cogl_tests) + $(meson_use wayland core_tests) # core tests require wayland; overall -Dtests option is honored on top, so no extra conditional needed + -Dnative_tests=false + $(meson_use test clutter_tests) + $(meson_use test tests) + -Dkvm_tests=false + -Dtty_tests=false + $(meson_use sysprof profiler) + -Dinstalled_tests=false + + #verbose # Let upstream choose default for verbose mode + #xwayland_path + # TODO: relies on default settings, but in Gentoo we might have some more packages we want to give Xgrab access (mostly virtual managers and remote desktops) + #xwayland_grab_default_access_rules + ) + + if use wayland && use video_cards_nvidia; then + emesonargs+=( + -Degl_device=true + -Dwayland_eglstream=true + ) + else + emesonargs+=( + -Degl_device=false + -Dwayland_eglstream=false + ) + fi + + meson_src_configure +} + +src_test() { + # Reset variables to avoid issues from /etc/profile.d/flatpak.sh file + gnome2_environment_reset + export XDG_DATA_DIRS="${EPREFIX}"/usr/share + glib-compile-schemas "${BUILD_DIR}"/data + GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data meson_src_test --setup=CI +} + +pkg_postinst() { + use udev && udev_reload + xdg_pkg_postinst + gnome2_schemas_update +} + +pkg_postrm() { + use udev && udev_reload + xdg_pkg_postrm + gnome2_schemas_update +} diff --git a/x11-wm/mutter/mutter-46.4.ebuild b/x11-wm/mutter/mutter-46.4.ebuild deleted file mode 100644 index 69fca7491985..000000000000 --- a/x11-wm/mutter/mutter-46.4.ebuild +++ /dev/null @@ -1,233 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_COMPAT=( python3_{10..13} ) -inherit gnome.org gnome2-utils meson python-any-r1 udev xdg - -DESCRIPTION="GNOME compositing window manager based on Clutter" -HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/" -LICENSE="GPL-2+" - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/mutter.git" - SRC_URI="" - SLOT="0/14" # This can get easily out of date, but better than 9967 -else - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" - SLOT="0/$(($(ver_cut 1) - 32))" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-.pc) should use the subslot -fi - -IUSE="debug elogind gnome gtk-doc input_devices_wacom +introspection screencast sysprof systemd test udev wayland video_cards_nvidia" -# native backend requires gles3 for hybrid graphics blitting support, udev and a logind provider -REQUIRED_USE=" - gtk-doc? ( introspection ) - wayland? ( ^^ ( elogind systemd ) udev ) - test? ( wayland )" -RESTRICT="!test? ( test )" - -# gnome-settings-daemon is build checked, but used at runtime only for org.gnome.settings-daemon.peripherals.keyboard gschema -# USE=libei was first introduced in xwayland-23.2.1; we min dep on that to ensure the [libei(+)] works right, as missing USE flag with -# previous versions meant that it's not there, while the intention seems to be to make it always enabled without USE flag in the future; -# this ensures have_enable_ei_portal is always there in xwayland.pc, which affects how Xwayland is launched, thus if it were toggled off -# in Xwayland after mutter is installed, Xwayland would fail to be started by mutter. mutter already hard-depends on libei, so there's -# really no extra deps here (besides xdg-desktop-portal, but we want that too, anyhow). -# v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via dependency() call order -DEPEND=" - >=media-libs/graphene-1.10.2[introspection?] - x11-libs/gdk-pixbuf:2 - >=x11-libs/pango-1.46[introspection?] - >=x11-libs/cairo-1.14[X] - >=x11-libs/pixman-0.42 - >=dev-libs/fribidi-1.0.0 - >=gnome-base/gsettings-desktop-schemas-42.0[introspection?] - >=dev-libs/glib-2.75.1:2 - gnome-base/gnome-settings-daemon - >=x11-libs/libxkbcommon-0.4.3 - x11-libs/libICE - >=app-accessibility/at-spi2-core-2.46:2[introspection?] - sys-apps/dbus - >=x11-misc/colord-1.4.5:= - >=media-libs/lcms-2.6:2 - >=media-libs/harfbuzz-2.6.0:= - >=dev-libs/libei-1.0.901 - - gnome? ( gnome-base/gnome-desktop:4= ) - - >=media-libs/libcanberra-0.26 - - media-libs/libglvnd[X] - - wayland? ( - >=dev-libs/wayland-protocols-1.33 - >=dev-libs/wayland-1.22.0 - - >=x11-libs/libdrm-2.4.118 - media-libs/mesa[gbm(+)] - >=dev-libs/libinput-1.19.0:= - - elogind? ( sys-auth/elogind ) - >=x11-base/xwayland-23.2.1[libei(+)] - video_cards_nvidia? ( gui-libs/egl-wayland ) - ) - udev? ( - >=virtual/libudev-232-r1:= - >=dev-libs/libgudev-232 - ) - systemd? ( sys-apps/systemd ) - x11-libs/libSM - input_devices_wacom? ( >=dev-libs/libwacom-0.13:= ) - >=x11-libs/startup-notification-0.7 - screencast? ( >=media-video/pipewire-0.3.33:= ) - introspection? ( >=dev-libs/gobject-introspection-1.54:= ) - test? ( - >=x11-libs/gtk+-3.19.8:3[X,introspection?] - gnome-extra/zenity - ) - sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 >=dev-util/sysprof-3.46.0 ) -" -# for now upstream has "have_x11 = true" in the meson.build, but sooner or later upstream is going to make X optional. -# X? ( -DEPEND+=" - >=gui-libs/gtk-4.0.0:4[X,introspection?] - >=x11-libs/libX11-1.7.0 - >=x11-libs/libXcomposite-0.4 - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - >=x11-libs/libXfixes-6 - >=x11-libs/libXi-1.7.4 - x11-libs/libXtst - x11-libs/libxkbfile - x11-misc/xkeyboard-config - >=x11-libs/libxkbcommon-0.4.3[X] - x11-libs/libXrender - >=x11-libs/libXrandr-1.5.0 - x11-libs/libxcb:= - x11-libs/libXinerama - x11-libs/libXau -" -# )" - -DEPEND="${DEPEND} - x11-base/xorg-proto - sysprof? ( >=dev-util/sysprof-common-3.38.0 ) -" -BDEPEND=" - dev-util/wayland-scanner - dev-util/gdbus-codegen - dev-util/glib-utils - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) - test? ( - ${PYTHON_DEPS} - $(python_gen_any_dep ' - >=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}] - ') - app-text/docbook-xml-dtd:4.5 - x11-misc/xvfb-run - ) - wayland? ( - >=sys-kernel/linux-headers-4.4 - x11-libs/libxcvt - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-43.0-Disable-anonymous-file-test.patch -) - -python_check_deps() { - if use test; then - python_has_version ">=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}]" - fi -} - -src_configure() { - use debug && EMESON_BUILDTYPE=debug - local emesonargs=( - # Mutter X11 renderer only supports gles2 and GLX, thus do NOT pass - # - # -Dopengl_libname=libOpenGL.so.0 - # - # while we build the x11 renderer, as we currently enable gles2 only - # with USE=wayland and x11 renderer wouldn't find the needed GLX symbols - # in a configuration where wayland is disabled, as libOpenGL doesn't - # include them. - # - # See - # - https://bugs.gentoo.org/835786 - # - https://forums.gentoo.org/viewtopic-p-8695669.html - - -Dopengl=true - $(meson_use wayland gles2) - #gles2_libname - -Degl=true - -Dglx=true - $(meson_use wayland) - $(meson_use wayland xwayland) - $(meson_use systemd) - $(meson_use wayland native_backend) - $(meson_use screencast remote_desktop) - $(meson_use gnome libgnome_desktop) - $(meson_use udev) - -Dudev_dir=$(get_udevdir) - $(meson_use input_devices_wacom libwacom) - -Dsound_player=true - -Dpango_ft2=true - -Dstartup_notification=true - -Dsm=true - $(meson_use introspection) - $(meson_use gtk-doc docs) - $(meson_use test cogl_tests) - $(meson_use wayland core_tests) # core tests require wayland; overall -Dtests option is honored on top, so no extra conditional needed - -Dnative_tests=false - $(meson_use test clutter_tests) - $(meson_use test tests) - -Dkvm_tests=false - -Dtty_tests=false - $(meson_use sysprof profiler) - -Dinstalled_tests=false - - #verbose # Let upstream choose default for verbose mode - #xwayland_path - # TODO: relies on default settings, but in Gentoo we might have some more packages we want to give Xgrab access (mostly virtual managers and remote desktops) - #xwayland_grab_default_access_rules - ) - - if use wayland && use video_cards_nvidia; then - emesonargs+=( - -Degl_device=true - -Dwayland_eglstream=true - ) - else - emesonargs+=( - -Degl_device=false - -Dwayland_eglstream=false - ) - fi - - meson_src_configure -} - -src_test() { - # Reset variables to avoid issues from /etc/profile.d/flatpak.sh file - gnome2_environment_reset - export XDG_DATA_DIRS="${EPREFIX}"/usr/share - glib-compile-schemas "${BUILD_DIR}"/data - GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data meson_src_test --setup=CI -} - -pkg_postinst() { - use udev && udev_reload - xdg_pkg_postinst - gnome2_schemas_update -} - -pkg_postrm() { - use udev && udev_reload - xdg_pkg_postrm - gnome2_schemas_update -} diff --git a/x11-wm/mutter/mutter-46.7-r1.ebuild b/x11-wm/mutter/mutter-46.7-r1.ebuild new file mode 100644 index 000000000000..aac907e2ac69 --- /dev/null +++ b/x11-wm/mutter/mutter-46.7-r1.ebuild @@ -0,0 +1,233 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..13} ) +inherit gnome.org gnome2-utils meson python-any-r1 udev xdg + +DESCRIPTION="GNOME compositing window manager based on Clutter" +HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/" +LICENSE="GPL-2+" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/mutter.git" + SRC_URI="" + SLOT="0/14" # This can get easily out of date, but better than 9967 +else + KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" + SLOT="0/$(($(ver_cut 1) - 32))" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-.pc) should use the subslot +fi + +IUSE="debug elogind gnome gtk-doc input_devices_wacom +introspection screencast sysprof systemd test udev wayland video_cards_nvidia" +# native backend requires gles3 for hybrid graphics blitting support, udev and a logind provider +REQUIRED_USE=" + gtk-doc? ( introspection ) + wayland? ( ^^ ( elogind systemd ) udev ) + test? ( wayland )" +RESTRICT="!test? ( test )" + +# gnome-settings-daemon is build checked, but used at runtime only for org.gnome.settings-daemon.peripherals.keyboard gschema +# USE=libei was first introduced in xwayland-23.2.1; we min dep on that to ensure the [libei(+)] works right, as missing USE flag with +# previous versions meant that it's not there, while the intention seems to be to make it always enabled without USE flag in the future; +# this ensures have_enable_ei_portal is always there in xwayland.pc, which affects how Xwayland is launched, thus if it were toggled off +# in Xwayland after mutter is installed, Xwayland would fail to be started by mutter. mutter already hard-depends on libei, so there's +# really no extra deps here (besides xdg-desktop-portal, but we want that too, anyhow). +# v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via wdependency() call order +RDEPEND=" + >=media-libs/graphene-1.10.2[introspection?] + x11-libs/gdk-pixbuf:2 + >=x11-libs/pango-1.46[introspection?] + >=x11-libs/cairo-1.14[X] + >=x11-libs/pixman-0.42 + >=dev-libs/fribidi-1.0.0 + >=gnome-base/gsettings-desktop-schemas-42.0[introspection?] + >=dev-libs/glib-2.75.1:2 + gnome-base/gnome-settings-daemon + >=x11-libs/libxkbcommon-0.4.3 + x11-libs/libICE + >=app-accessibility/at-spi2-core-2.46:2[introspection?] + sys-apps/dbus + >=x11-misc/colord-1.4.5:= + >=media-libs/lcms-2.6:2 + >=media-libs/harfbuzz-2.6.0:= + >=dev-libs/libei-1.0.901 + media-libs/libdisplay-info:= + + gnome? ( gnome-base/gnome-desktop:4= ) + + >=media-libs/libcanberra-0.26 + + media-libs/libglvnd[X] + + wayland? ( + >=dev-libs/wayland-protocols-1.33 + >=dev-libs/wayland-1.22.0 + + >=x11-libs/libdrm-2.4.118 + media-libs/mesa[gbm(+)] + >=dev-libs/libinput-1.19.0:= + + elogind? ( sys-auth/elogind ) + >=x11-base/xwayland-23.2.1[libei(+)] + video_cards_nvidia? ( gui-libs/egl-wayland ) + ) + udev? ( + >=virtual/libudev-232-r1:= + >=dev-libs/libgudev-238 + ) + systemd? ( sys-apps/systemd ) + x11-libs/libSM + input_devices_wacom? ( >=dev-libs/libwacom-0.13:= ) + >=x11-libs/startup-notification-0.7 + screencast? ( >=media-video/pipewire-0.3.33:= ) + introspection? ( >=dev-libs/gobject-introspection-1.54:= ) + test? ( + >=x11-libs/gtk+-3.19.8:3[X,introspection?] + gnome-extra/zenity + ) + sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 >=dev-util/sysprof-3.46.0 ) +" +# for now upstream has "have_x11 = true" in the meson.build, but sooner or later upstream is going to make X optional. +# X? ( +RDEPEND+=" + >=gui-libs/gtk-4.0.0:4[X,introspection?] + >=x11-libs/libX11-1.7.0 + >=x11-libs/libXcomposite-0.4 + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + >=x11-libs/libXfixes-6 + >=x11-libs/libXi-1.7.4 + x11-libs/libXtst + x11-libs/libxkbfile + x11-misc/xkeyboard-config + >=x11-libs/libxkbcommon-0.4.3[X] + x11-libs/libXrender + >=x11-libs/libXrandr-1.5.0 + x11-libs/libxcb:= + x11-libs/libXinerama + x11-libs/libXau +" +# )" +DEPEND="${RDEPEND} + x11-base/xorg-proto + sysprof? ( >=dev-util/sysprof-common-3.38.0 ) +" +BDEPEND=" + dev-util/wayland-scanner + dev-util/gdbus-codegen + dev-util/glib-utils + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) + test? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + >=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}] + ') + app-text/docbook-xml-dtd:4.5 + x11-misc/xvfb-run + ) + wayland? ( + >=sys-kernel/linux-headers-4.4 + x11-libs/libxcvt + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-43.0-Disable-anonymous-file-test.patch +) + +python_check_deps() { + if use test; then + python_has_version ">=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}]" + fi +} + +src_configure() { + use debug && EMESON_BUILDTYPE=debug + local emesonargs=( + # Mutter X11 renderer only supports gles2 and GLX, thus do NOT pass + # + # -Dopengl_libname=libOpenGL.so.0 + # + # while we build the x11 renderer, as we currently enable gles2 only + # with USE=wayland and x11 renderer wouldn't find the needed GLX symbols + # in a configuration where wayland is disabled, as libOpenGL doesn't + # include them. + # + # See + # - https://bugs.gentoo.org/835786 + # - https://forums.gentoo.org/viewtopic-p-8695669.html + + -Dopengl=true + $(meson_use wayland gles2) + #gles2_libname + -Degl=true + -Dglx=true + $(meson_use wayland) + $(meson_use wayland xwayland) + $(meson_use systemd) + $(meson_use wayland native_backend) + $(meson_use screencast remote_desktop) + $(meson_use gnome libgnome_desktop) + $(meson_use udev) + -Dudev_dir=$(get_udevdir) + $(meson_use input_devices_wacom libwacom) + -Dsound_player=true + -Dpango_ft2=true + -Dstartup_notification=true + -Dsm=true + $(meson_use introspection) + $(meson_use gtk-doc docs) + $(meson_use test cogl_tests) + $(meson_use wayland core_tests) # core tests require wayland; overall -Dtests option is honored on top, so no extra conditional needed + -Dnative_tests=false + $(meson_use test clutter_tests) + $(meson_use test tests) + -Dkvm_tests=false + -Dtty_tests=false + $(meson_use sysprof profiler) + -Dinstalled_tests=false + + #verbose # Let upstream choose default for verbose mode + #xwayland_path + # TODO: relies on default settings, but in Gentoo we might have some more packages we want to give Xgrab access (mostly virtual managers and remote desktops) + #xwayland_grab_default_access_rules + ) + + if use wayland && use video_cards_nvidia; then + emesonargs+=( + -Degl_device=true + -Dwayland_eglstream=true + ) + else + emesonargs+=( + -Degl_device=false + -Dwayland_eglstream=false + ) + fi + + meson_src_configure +} + +src_test() { + # Reset variables to avoid issues from /etc/profile.d/flatpak.sh file + gnome2_environment_reset + export XDG_DATA_DIRS="${EPREFIX}"/usr/share + glib-compile-schemas "${BUILD_DIR}"/data + GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data meson_src_test --setup=CI +} + +pkg_postinst() { + use udev && udev_reload + xdg_pkg_postinst + gnome2_schemas_update +} + +pkg_postrm() { + use udev && udev_reload + xdg_pkg_postrm + gnome2_schemas_update +} diff --git a/x11-wm/mutter/mutter-46.7.ebuild b/x11-wm/mutter/mutter-46.7.ebuild deleted file mode 100644 index 6136cb52f942..000000000000 --- a/x11-wm/mutter/mutter-46.7.ebuild +++ /dev/null @@ -1,233 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -PYTHON_COMPAT=( python3_{10..13} ) -inherit gnome.org gnome2-utils meson python-any-r1 udev xdg - -DESCRIPTION="GNOME compositing window manager based on Clutter" -HOMEPAGE="https://gitlab.gnome.org/GNOME/mutter/" -LICENSE="GPL-2+" - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/mutter.git" - SRC_URI="" - SLOT="0/14" # This can get easily out of date, but better than 9967 -else - KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" - SLOT="0/$(($(ver_cut 1) - 32))" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-.pc) should use the subslot -fi - -IUSE="debug elogind gnome gtk-doc input_devices_wacom +introspection screencast sysprof systemd test udev wayland video_cards_nvidia" -# native backend requires gles3 for hybrid graphics blitting support, udev and a logind provider -REQUIRED_USE=" - gtk-doc? ( introspection ) - wayland? ( ^^ ( elogind systemd ) udev ) - test? ( wayland )" -RESTRICT="!test? ( test )" - -# gnome-settings-daemon is build checked, but used at runtime only for org.gnome.settings-daemon.peripherals.keyboard gschema -# USE=libei was first introduced in xwayland-23.2.1; we min dep on that to ensure the [libei(+)] works right, as missing USE flag with -# previous versions meant that it's not there, while the intention seems to be to make it always enabled without USE flag in the future; -# this ensures have_enable_ei_portal is always there in xwayland.pc, which affects how Xwayland is launched, thus if it were toggled off -# in Xwayland after mutter is installed, Xwayland would fail to be started by mutter. mutter already hard-depends on libei, so there's -# really no extra deps here (besides xdg-desktop-portal, but we want that too, anyhow). -# v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via dependency() call order -DEPEND=" - >=media-libs/graphene-1.10.2[introspection?] - x11-libs/gdk-pixbuf:2 - >=x11-libs/pango-1.46[introspection?] - >=x11-libs/cairo-1.14[X] - >=x11-libs/pixman-0.42 - >=dev-libs/fribidi-1.0.0 - >=gnome-base/gsettings-desktop-schemas-42.0[introspection?] - >=dev-libs/glib-2.75.1:2 - gnome-base/gnome-settings-daemon - >=x11-libs/libxkbcommon-0.4.3 - x11-libs/libICE - >=app-accessibility/at-spi2-core-2.46:2[introspection?] - sys-apps/dbus - >=x11-misc/colord-1.4.5:= - >=media-libs/lcms-2.6:2 - >=media-libs/harfbuzz-2.6.0:= - >=dev-libs/libei-1.0.901 - - gnome? ( gnome-base/gnome-desktop:4= ) - - >=media-libs/libcanberra-0.26 - - media-libs/libglvnd[X] - - wayland? ( - >=dev-libs/wayland-protocols-1.33 - >=dev-libs/wayland-1.22.0 - - >=x11-libs/libdrm-2.4.118 - media-libs/mesa[gbm(+)] - >=dev-libs/libinput-1.19.0:= - - elogind? ( sys-auth/elogind ) - >=x11-base/xwayland-23.2.1[libei(+)] - video_cards_nvidia? ( gui-libs/egl-wayland ) - ) - udev? ( - >=virtual/libudev-232-r1:= - >=dev-libs/libgudev-238 - ) - systemd? ( sys-apps/systemd ) - x11-libs/libSM - input_devices_wacom? ( >=dev-libs/libwacom-0.13:= ) - >=x11-libs/startup-notification-0.7 - screencast? ( >=media-video/pipewire-0.3.33:= ) - introspection? ( >=dev-libs/gobject-introspection-1.54:= ) - test? ( - >=x11-libs/gtk+-3.19.8:3[X,introspection?] - gnome-extra/zenity - ) - sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 >=dev-util/sysprof-3.46.0 ) -" -# for now upstream has "have_x11 = true" in the meson.build, but sooner or later upstream is going to make X optional. -# X? ( -DEPEND+=" - >=gui-libs/gtk-4.0.0:4[X,introspection?] - >=x11-libs/libX11-1.7.0 - >=x11-libs/libXcomposite-0.4 - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - >=x11-libs/libXfixes-6 - >=x11-libs/libXi-1.7.4 - x11-libs/libXtst - x11-libs/libxkbfile - x11-misc/xkeyboard-config - >=x11-libs/libxkbcommon-0.4.3[X] - x11-libs/libXrender - >=x11-libs/libXrandr-1.5.0 - x11-libs/libxcb:= - x11-libs/libXinerama - x11-libs/libXau -" -# )" - -DEPEND="${DEPEND} - x11-base/xorg-proto - sysprof? ( >=dev-util/sysprof-common-3.38.0 ) -" -BDEPEND=" - dev-util/wayland-scanner - dev-util/gdbus-codegen - dev-util/glib-utils - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - gtk-doc? ( >=dev-util/gi-docgen-2021.1 ) - test? ( - ${PYTHON_DEPS} - $(python_gen_any_dep ' - >=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}] - ') - app-text/docbook-xml-dtd:4.5 - x11-misc/xvfb-run - ) - wayland? ( - >=sys-kernel/linux-headers-4.4 - x11-libs/libxcvt - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-43.0-Disable-anonymous-file-test.patch -) - -python_check_deps() { - if use test; then - python_has_version ">=dev-python/python-dbusmock-0.28[${PYTHON_USEDEP}]" - fi -} - -src_configure() { - use debug && EMESON_BUILDTYPE=debug - local emesonargs=( - # Mutter X11 renderer only supports gles2 and GLX, thus do NOT pass - # - # -Dopengl_libname=libOpenGL.so.0 - # - # while we build the x11 renderer, as we currently enable gles2 only - # with USE=wayland and x11 renderer wouldn't find the needed GLX symbols - # in a configuration where wayland is disabled, as libOpenGL doesn't - # include them. - # - # See - # - https://bugs.gentoo.org/835786 - # - https://forums.gentoo.org/viewtopic-p-8695669.html - - -Dopengl=true - $(meson_use wayland gles2) - #gles2_libname - -Degl=true - -Dglx=true - $(meson_use wayland) - $(meson_use wayland xwayland) - $(meson_use systemd) - $(meson_use wayland native_backend) - $(meson_use screencast remote_desktop) - $(meson_use gnome libgnome_desktop) - $(meson_use udev) - -Dudev_dir=$(get_udevdir) - $(meson_use input_devices_wacom libwacom) - -Dsound_player=true - -Dpango_ft2=true - -Dstartup_notification=true - -Dsm=true - $(meson_use introspection) - $(meson_use gtk-doc docs) - $(meson_use test cogl_tests) - $(meson_use wayland core_tests) # core tests require wayland; overall -Dtests option is honored on top, so no extra conditional needed - -Dnative_tests=false - $(meson_use test clutter_tests) - $(meson_use test tests) - -Dkvm_tests=false - -Dtty_tests=false - $(meson_use sysprof profiler) - -Dinstalled_tests=false - - #verbose # Let upstream choose default for verbose mode - #xwayland_path - # TODO: relies on default settings, but in Gentoo we might have some more packages we want to give Xgrab access (mostly virtual managers and remote desktops) - #xwayland_grab_default_access_rules - ) - - if use wayland && use video_cards_nvidia; then - emesonargs+=( - -Degl_device=true - -Dwayland_eglstream=true - ) - else - emesonargs+=( - -Degl_device=false - -Dwayland_eglstream=false - ) - fi - - meson_src_configure -} - -src_test() { - # Reset variables to avoid issues from /etc/profile.d/flatpak.sh file - gnome2_environment_reset - export XDG_DATA_DIRS="${EPREFIX}"/usr/share - glib-compile-schemas "${BUILD_DIR}"/data - GSETTINGS_SCHEMA_DIR="${BUILD_DIR}"/data meson_src_test --setup=CI -} - -pkg_postinst() { - use udev && udev_reload - xdg_pkg_postinst - gnome2_schemas_update -} - -pkg_postrm() { - use udev && udev_reload - xdg_pkg_postrm - gnome2_schemas_update -} diff --git a/x11-wm/mutter/mutter-9999.ebuild b/x11-wm/mutter/mutter-9999.ebuild index 69fca7491985..eba453454d90 100644 --- a/x11-wm/mutter/mutter-9999.ebuild +++ b/x11-wm/mutter/mutter-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]]; then SRC_URI="" SLOT="0/14" # This can get easily out of date, but better than 9967 else - KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86" SLOT="0/$(($(ver_cut 1) - 32))" # 0/libmutter_api_version - ONLY gnome-shell (or anything using mutter-clutter-.pc) should use the subslot fi @@ -34,15 +34,15 @@ RESTRICT="!test? ( test )" # in Xwayland after mutter is installed, Xwayland would fail to be started by mutter. mutter already hard-depends on libei, so there's # really no extra deps here (besides xdg-desktop-portal, but we want that too, anyhow). # v3.32.2 has many excessive or unused *_req variables declared, thus currently the dep order ignores those and goes via dependency() call order -DEPEND=" +RDEPEND=" >=media-libs/graphene-1.10.2[introspection?] x11-libs/gdk-pixbuf:2 >=x11-libs/pango-1.46[introspection?] >=x11-libs/cairo-1.14[X] >=x11-libs/pixman-0.42 >=dev-libs/fribidi-1.0.0 - >=gnome-base/gsettings-desktop-schemas-42.0[introspection?] - >=dev-libs/glib-2.75.1:2 + >=gnome-base/gsettings-desktop-schemas-47.0[introspection?] + >=dev-libs/glib-2.81.1:2 gnome-base/gnome-settings-daemon >=x11-libs/libxkbcommon-0.4.3 x11-libs/libICE @@ -52,6 +52,7 @@ DEPEND=" >=media-libs/lcms-2.6:2 >=media-libs/harfbuzz-2.6.0:= >=dev-libs/libei-1.0.901 + media-libs/libdisplay-info:= gnome? ( gnome-base/gnome-desktop:4= ) @@ -60,12 +61,12 @@ DEPEND=" media-libs/libglvnd[X] wayland? ( - >=dev-libs/wayland-protocols-1.33 - >=dev-libs/wayland-1.22.0 + >=dev-libs/wayland-protocols-1.38 + >=dev-libs/wayland-1.23.0 >=x11-libs/libdrm-2.4.118 media-libs/mesa[gbm(+)] - >=dev-libs/libinput-1.19.0:= + >=dev-libs/libinput-1.26.0:= elogind? ( sys-auth/elogind ) >=x11-base/xwayland-23.2.1[libei(+)] @@ -73,13 +74,13 @@ DEPEND=" ) udev? ( >=virtual/libudev-232-r1:= - >=dev-libs/libgudev-232 + >=dev-libs/libgudev-238 ) systemd? ( sys-apps/systemd ) x11-libs/libSM input_devices_wacom? ( >=dev-libs/libwacom-0.13:= ) >=x11-libs/startup-notification-0.7 - screencast? ( >=media-video/pipewire-0.3.33:= ) + screencast? ( >=media-video/pipewire-1.2.0:= ) introspection? ( >=dev-libs/gobject-introspection-1.54:= ) test? ( >=x11-libs/gtk+-3.19.8:3[X,introspection?] @@ -89,7 +90,7 @@ DEPEND=" " # for now upstream has "have_x11 = true" in the meson.build, but sooner or later upstream is going to make X optional. # X? ( -DEPEND+=" +RDEPEND+=" >=gui-libs/gtk-4.0.0:4[X,introspection?] >=x11-libs/libX11-1.7.0 >=x11-libs/libXcomposite-0.4 @@ -110,7 +111,7 @@ DEPEND+=" " # )" -DEPEND="${DEPEND} +DEPEND="${RDEPEND} x11-base/xorg-proto sysprof? ( >=dev-util/sysprof-common-3.38.0 ) " diff --git a/x11-wm/qtile/Manifest b/x11-wm/qtile/Manifest index 9ddfd7473b43..ee2c5af0a506 100644 --- a/x11-wm/qtile/Manifest +++ b/x11-wm/qtile/Manifest @@ -1,6 +1,8 @@ AUX qtile-session-r1 1860 BLAKE2B fb9345d3acc5e0fc5694065f12e2759e02aebc765925cb0ffcb1a776ec82e959503d8a8039238e4e48a5045a3118f2e37201a88d5255fd0a0782d2f8291d8a77 SHA512 41b37ba034b5dd7f3126142d2cfc5cf8986b521fc419d47e420582fc8b516df87249bd8e14c12d77691b93205ec3cd1249bfa040ef0691e0751c669f742570ee DIST qtile-0.28.1.tar.gz 601217 BLAKE2B 04f24c5b628e1c3d0eca395135ef0d0093af5a57d23aea751e76197da4f148ae679a9fb650e2589e5f2e253673cab86642e3f0695ac219641c65192eb9a37274 SHA512 95b4d95206aeac4bb59d47c94eb93b55ac413681050345a0d61cdb19b71dd785bb6c13c0161757b9bfa5e8d0ce345fcf64eea04fc44b2f596a65b70f5da5d32e DIST qtile-0.29.0.tar.gz 607026 BLAKE2B 71a282b08b6d15e08f616e28a59a632a76ef4a180788177606873dec7870d715fa96403ece6745de8898716e863b7462a745426f59fb13fd40ba87207be30d24 SHA512 745a9a79209c0dbac5e49b8ee90d567204fd022c63e9321afbb6a3a064f8e9376fdbbe67a5115e50b251d28129f4907761cbbd3e0b3d2e0676e047ef8369c92c +DIST qtile-0.30.0.tar.gz 617632 BLAKE2B c26d51d7e31ef058a5a08ef8ef47ccce19bc59b9337d0dc1d874b2c4047ea2e1827cc694a9199ea808d22b7845a8bb019eb85a1912ddfb00801763b43e62b0f2 SHA512 218b7ba42315884faf11460c18a9fa8f34a3284d3fd4632c24997657e7ec659e337be9b0845e00dc7d4106828d7e5efcfd401ea7d031e0725598e60ad4172147 EBUILD qtile-0.28.1.ebuild 2622 BLAKE2B 693eab081037d8b368495fd7959e04fba1da29a2bbdf3b1c9cc4e340a34252771bcb2626fe6fe7950b2227c7d03f22d4f3e77be74f3f755b3a038d33d39b81c7 SHA512 9c3520cf721e9a6fb940bb82b62f158a2b2c908698ae273d46b47cb03b7266706595c5c333ef9683cc0b9b197e4a4f97b573b4c6bc19a8fb49239d8f09717181 EBUILD qtile-0.29.0.ebuild 2670 BLAKE2B f9b187e16ac3a18ec370814ed6018c30b2dfbe02e27d53a8364f7f9658165d1096c4482b1cfb41abb32feff929ea1e974f3e97e5e00a9a7d20071acacc220a3b SHA512 52f82c218efb70b4ce75cf04e26fbb8fe0e6ecfc18b1fdd1190a201d2322833c261561c84d3e41f6c78e074a392c8e6b277b24c2eacacbfb2a4abd1de2193f61 +EBUILD qtile-0.30.0.ebuild 2663 BLAKE2B df06748de3841f8a6b05d513e666d486aead0c94fda9bc81129b06b8d465dc85d19431a92e0e874130e5d1067aee21834c8253d7e6dbc617e6e712ed39e91cdc SHA512 24fa976082ac1e875aad86162f486c17c0cf964a323cdc2fd7be2569901b489a4fe26c1e70366985b94a155216e15c9ccd2df0211c70b6f3fce14f403b93e30b MISC metadata.xml 422 BLAKE2B 10ddda5d4485b4a3c76ff658a41e2b4ea6004413ea3d2d9d4b088a7a25de36e167ae70505c195467c2401df0396a40e2301cc29a25e7e4097ed20cc6335e8956 SHA512 5f5aeecab841345abe98b87180644e60f8e52a12fc2c354cdd3678d8ad5c8c1ba13790a1bc6fa5662587714f3af9566f6adbdbc355b18d632d0ffa3eb4e83106 diff --git a/x11-wm/qtile/qtile-0.30.0.ebuild b/x11-wm/qtile/qtile-0.30.0.ebuild new file mode 100644 index 000000000000..75008ae99ce6 --- /dev/null +++ b/x11-wm/qtile/qtile-0.30.0.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=standalone +PYTHON_COMPAT=( python3_{10..13} ) + +inherit distutils-r1 pypi virtualx + +DESCRIPTION="A full-featured, hackable tiling window manager written in Python" +HOMEPAGE=" + https://qtile.org/ + https://github.com/qtile/qtile/ + https://pypi.org/project/qtile/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="pulseaudio wayland" + +DEPEND=" + >=dev-python/cairocffi-1.6.0[${PYTHON_USEDEP}] + >=dev-python/cffi-1.1.0:=[${PYTHON_USEDEP}] +" +RDEPEND=" + ${DEPEND} + dev-python/dbus-fast[${PYTHON_USEDEP}] + dev-python/pygobject[${PYTHON_USEDEP}] + >=dev-python/xcffib-1.4.0[${PYTHON_USEDEP}] + x11-libs/cairo[X,xcb(+)] + x11-libs/libnotify[introspection] + x11-libs/pango + pulseaudio? ( + dev-python/pulsectl-asyncio[${PYTHON_USEDEP}] + media-libs/libpulse + ) + wayland? ( + >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] + >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + dev-python/libcst[${PYTHON_USEDEP}] + media-gfx/imagemagick[X] + x11-base/xorg-server[xephyr,xvfb] + ) + wayland? ( + >=dev-python/pywayland-0.4.17[${PYTHON_USEDEP}] + >=dev-python/pywlroots-0.17[${PYTHON_USEDEP}] + ) +" + +: ${EPYTEST_TIMEOUT:=180} +distutils_enable_tests pytest + +python_prepare_all() { + distutils-r1_python_prepare_all + + sed -e "s/can_import(\"wlroots.ffi_build\")/$(usex wayland True False)/" \ + -i setup.py || die + + mkdir bin || die +} + +src_compile() { + local -x CFFI_TMPDIR=${T} + distutils-r1_src_compile +} + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # mypy stuff + test/test_check.py + test/migrate/test_check_migrations.py + # TODO: this test clearly requires x11 — so why is wayland + # variant being run? + 'test/backend/x11/test_window.py::test_urgent_hook_fire[wayland-2]' + # TODO + test/test_hook.py::test_net_wm_icon_change + ) + + # force usage of built module + rm -rf libqtile || die + + # some tests expect bin/qtile + ln -fs "$(type -P qtile)" bin/qtile || die + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x TZ=UTC + nonfatal epytest -p rerunfailures --reruns=5 \ + --backend=x11 $(usev wayland '--backend=wayland') || + die -n "Tests failed with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( CHANGELOG README.rst ) + distutils-r1_python_install_all + + insinto /usr/share/xsessions + doins resources/qtile.desktop + + insinto /usr/share/wayland-sessions + doins resources/qtile-wayland.desktop + + exeinto /etc/X11/Sessions + newexe "${FILESDIR}"/${PN}-session-r1 ${PN} +} -- cgit v1.2.3