A pure-Python tiling window manager

Edit Package qtile
https://github.com/qtile/qtile

* Extensible in that personal layouts, widgets and commands can be created.
* Configured in Python.
* Command shell that allows all aspects of Qtile to be managed and
inspected.
* Remote scriptability to set up workspaces,
manipulate windows, update status bar widgets and more.
* Qtile is unit-tested using this remote scriptability feature.

Refresh
Refresh
Source Files (show merged sources derived from linked package)
Filename Size Changed
qtile-0.24.0.tar.gz 0000560350 547 KB
qtile-portals.conf 0000000029 29 Bytes
qtile-rpmlintrc 0000000046 46 Bytes
qtile.changes 0000047781 46.7 KB
qtile.spec 0000006874 6.71 KB
Comments 31


Soc Virnyl Estela's avatar

I will SR later with a lowered version of wlroots for now as a workaround until the new API gets merged


John Vandenberg's avatar

It has broken again. I see two versions of libwlroots being installed, but only one of the devel. Maybe somehow it is picking the wrong version?

[ 24s] [403/482] cumulate libwlroots10-0.15.1-1.2

[ 24s] [404/482] cumulate libwlroots11-0.16.2-1.1

[ 24s] [473/482] cumulate wlroots10-devel-0.15.1-1.2


Soc Virnyl Estela's avatar

odd. are these two wlroots versions a workaround for other stuff that only requires older wlroots?


Soc Virnyl Estela's avatar

I am going to check python-pywlroots


Soc Virnyl Estela's avatar

Turns out, idk what is causing it. probably libwlroots10 and libwlroots11 got added because of a faulty specfile of wlroots? it seems they didn't specified a version in the specfile of the libwlroots sub-package

%package -n %{libname}
Summary:        Modular Wayland compositor library
Group:          System/Libraries

I think adding Version: %{version} will fix it. I will just send an SR here since < 0.16.0 is already been addressed anyway.


Soc Virnyl Estela's avatar

hmm there are many errors in the tests...

[  301s] test/layouts/test_common.py::test_remove[1-wayland-Tile] ERROR           [ 20%]
[  301s] test/layouts/test_common.py::test_remove[1-wayland-VerticalTile] ERROR   [ 20%]
[  301s] test/layouts/test_common.py::test_remove[1-wayland-Zoomy] ERROR          [ 20%]
[  306s] test/layouts/test_common.py::test_remove_floating[1-x11-Bsp] PASSED      [ 20%]
[  311s] test/layouts/test_common.py::test_remove_floating[1-x11-Columns] PASSED  [ 20%]
[  316s] test/layouts/test_common.py::test_remove_floating[1-x11-Floating] PASSED [ 20%]
[  321s] test/layouts/test_common.py::test_remove_floating[1-x11-Matrix] PASSED   [ 20%]
[  326s] test/layouts/test_common.py::test_remove_floating[1-x11-Max] PASSED      [ 20%]
[  331s] test/layouts/test_common.py::test_remove_floating[1-x11-MonadTall] PASSED [ 21%]
[  336s] test/layouts/test_common.py::test_remove_floating[1-x11-MonadThreeCol] PASSED [ 21%]
[  341s] test/layouts/test_common.py::test_remove_floating[1-x11-MonadWide] PASSED [ 21%]
[  347s] test/layouts/test_common.py::test_remove_floating[1-x11-RatioTile] PASSED [ 21%]
[  352s] test/layouts/test_common.py::test_remove_floating[1-x11-Spiral] PASSED   [ 21%]
[  357s] test/layouts/test_common.py::test_remove_floating[1-x11-Stack] PASSED    [ 21%]
[  363s] test/layouts/test_common.py::test_remove_floating[1-x11-Tile] PASSED     [ 21%]
[  367s] test/layouts/test_common.py::test_remove_floating[1-x11-VerticalTile] PASSED [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-x11-Zoomy] PASSED    [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Bsp] ERROR   [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Columns] ERROR [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Floating] ERROR [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Matrix] ERROR [ 21%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Max] ERROR   [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-MonadTall] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-MonadThreeCol] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-MonadWide] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-RatioTile] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Spiral] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Stack] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Tile] ERROR  [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-VerticalTile] ERROR [ 22%]
[  373s] test/layouts/test_common.py::test_remove_floating[1-wayland-Zoomy] ERROR [ 22%]
[  379s] test/layouts/test_common.py::test_desktop_notifications[1-x11-Bsp] PASSED [ 22%]
[  384s] test/layouts/test_common.py::test_desktop_notifications[1-x11-Columns] PASSED [ 22%]

odd


Soc Virnyl Estela's avatar

Alright. they clarified in their docs. Going to just use 0.15.0 then

Note

The currently supported wlroots and pylwroots > versions are 0.15.x.


Soc Virnyl Estela's avatar

Can you open a bugzilla report on this one? Or even just email the packager for wlroots? That may cause some issues in the future.


Soc Virnyl Estela's avatar

Nvm! found the issue. :D python pywlroots. i lowered the version along the wlroots-devel


John Vandenberg's avatar

trying to add myself as a maintainer of the old one https://build.opensuse.org/request/show/1071892

for the new one, one of us can send an SR there to fix it.


Soc Virnyl Estela's avatar

What's annoying is this message

nothing provides python38-pywlroots < 0.16.0, (got version 0.16.0-1.1)

sigh... like how does the lower versions don't exist..



Soc Virnyl Estela's avatar

I have a feeling that I should have based the wlroots version along with the pywlroots version. it seems I may have updated the package to 0.16.0 while 0.15.24 didn't build before.


llyyr's avatar

You can submit a pywlroots10 just like we had to submit wlroots10 to keep supporting some older compositors, not a wlroots/wlroots10 bug in any case


Soc Virnyl Estela's avatar

i will do this next week. very old message but yeah. tired of the build errors. I had to disable the tests entirely.


llyyr's avatar

It's broken because it's trying to pull wlroots10-devel when it wants wlroots-devel, it's failing on #include <wlr/types/wlr_damage_ring.h> which only exists on wlroots 0.16 or later


Soc Virnyl Estela's avatar

we know. it's kind of weird why it pulls wlroots10?


llyyr's avatar

It pulls wlroot10 because that's the version qtile wants, which is correct. You need a pywlroots10 to build qtile, or make the necessary changes to qtile to make it support libwlroots11


Soc Virnyl Estela's avatar

I think the reason is python-pywlroots. maybe a workaround is adding multiple versions for that ? not sure though


John Vandenberg's avatar

Having multiple versions of python-pywlroots isnt worth it, when only qtile uses python-pywlroots . It should be the version that qtile needs.


Soc Virnyl Estela's avatar

testing with wlroots10-devel on my branch right now.

EDIT: it still pulls the latest wlroots because of pywlroots hmm


llyyr's avatar

You could instead patch qtile with this PR and use the latest wlroots instead https://github.com/qtile/qtile/pull/3985


Soc Virnyl Estela's avatar

The only issue is that it's not yet merged upstream. We will use that as last resort then? What do you think @jayvdb?


John Vandenberg's avatar

IMO that PR is too big to be a patch. I am very confident that when it is merged, a new release will be cut.


Soc Virnyl Estela's avatar

I guess we have to wait? My only problem is that if it is even feasible to wait for the new release with 0.16.0 support. And there are users of qtile, I do hope they have read our issues here 😬


llyyr's avatar

Build it without the Wayland backend then until the upstream PR is merged


Soc Virnyl Estela's avatar

Yeah. Adding a condition should be fine. I will just wait for jayvdb's decision on this one since he is the primary packager after all.


John Vandenberg's avatar

sounds good to me


Soc Virnyl Estela's avatar

I am not sure now. This package requires some package im not familiar with to work 🙃 but it builds correctly now 🥳 but i dont use this package 😰 so I am not sure who is going to lick it

EDIT: https://github.com/qtile/qtile/commit/266a43c1326fa529389d9eb49480253b3a2e62cc pushing an update :)


Soc Virnyl Estela's avatar

FIXED now :) freaky 🥴

openSUSE Build Service is sponsored by