commit:     12a5d8578ec2ea7fdd8fea12d02d4a18e8c6cdd4
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 11 05:26:03 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jun 11 07:27:37 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12a5d857

x11-wm/qtile: Bump to 0.32.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 x11-wm/qtile/Manifest            |   1 +
 x11-wm/qtile/qtile-0.32.0.ebuild | 122 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 123 insertions(+)

diff --git a/x11-wm/qtile/Manifest b/x11-wm/qtile/Manifest
index 2e496de2b686..2f553f0ea6f2 100644
--- a/x11-wm/qtile/Manifest
+++ b/x11-wm/qtile/Manifest
@@ -1 +1,2 @@
 DIST qtile-0.31.0.tar.gz 619301 BLAKE2B 
0fb4cce53f986c7c427e9044e4ca99cab33b7722f178d5c9a6082f03b0b54ddb0696bd647a4d7c0ca8b853b5f9db38391e9bba2f28b81cd803e8622b81956602
 SHA512 
3a85bb9133427b74e3dcedd7c2f774387dc5b698d6e69923c282b98eb21c0d13a747dd77a0b30b86b73c94d2d525d11c65692bcc8bb83895bcadf99ea6e00ed2
+DIST qtile-0.32.0.tar.gz 623435 BLAKE2B 
955958d9c08cec4d61cd80d3fe2fd8f7273547e19a058a38531d3efadb753b889daf37d6fe2b43f14cf27e9462c48472a3c0baf91666eab291e4ae3fa2844cdf
 SHA512 
02f7eb8966fbd1b6855be29ad68818115ee4ad96eaa6d4dd3ce2a6e023e20e0b05118b9e0363909f62713f185e0b8f99fd5c90321a6a4398f64aea4c2747b851

diff --git a/x11-wm/qtile/qtile-0.32.0.ebuild b/x11-wm/qtile/qtile-0.32.0.ebuild
new file mode 100644
index 000000000000..f5271180914e
--- /dev/null
+++ b/x11-wm/qtile/qtile-0.32.0.ebuild
@@ -0,0 +1,122 @@
+# 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_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 ~riscv"
+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/isort[${PYTHON_USEDEP}]
+               dev-python/libcst[${PYTHON_USEDEP}]
+               dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+               media-gfx/imagemagick[X]
+               x11-base/xorg-server[xephyr,xvfb]
+               x11-terms/xterm
+       )
+       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
+               test/widgets/test_vertical_clock.py::test_vclock_default
+               test/widgets/test_vertical_clock.py::test_vclock_extra_lines
+       )
+
+       # 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}
+}

Reply via email to