Merge pull request #141866 from chvp/qtile-wayland-backend

authored by

Sandro and committed by
GitHub
1363bb14 8cd0da00

+135
+3
pkgs/applications/window-managers/qtile/default.nix
··· 47 47 psutil 48 48 pyxdg 49 49 pygobject3 50 + pywayland 51 + pywlroots 52 + xkbcommon 50 53 ]; 51 54 52 55 doCheck = false; # Requires X server #TODO this can be worked out with the existing NixOS testing infrastructure.
+43
pkgs/development/python-modules/pywayland/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , python 5 + , cffi 6 + , pkg-config 7 + , wayland 8 + , pytestCheckHook 9 + }: 10 + 11 + buildPythonPackage rec { 12 + pname = "pywayland"; 13 + version = "0.4.7"; 14 + 15 + src = fetchPypi { 16 + inherit pname version; 17 + sha256 = "0IMNOPTmY22JCHccIVuZxDhVr41cDcKNkx8bp+5h2CU="; 18 + }; 19 + 20 + nativeBuildInputs = [ pkg-config ]; 21 + propagatedNativeBuildInputs = [ cffi ]; 22 + buildInputs = [ wayland ]; 23 + propagatedBuildInputs = [ cffi ]; 24 + checkInputs = [ pytestCheckHook ]; 25 + 26 + postBuild = '' 27 + ${python.interpreter} pywayland/ffi_build.py 28 + ''; 29 + 30 + # Tests need this to create sockets 31 + preCheck = '' 32 + export XDG_RUNTIME_DIR="$PWD" 33 + ''; 34 + 35 + pythonImportsCheck = [ "pywayland" ]; 36 + 37 + meta = with lib; { 38 + homepage = "https://github.com/flacjacket/pywayland"; 39 + description = "Python bindings to wayland using cffi"; 40 + license = licenses.ncsa; 41 + maintainers = with maintainers; [ chvp ]; 42 + }; 43 + }
+45
pkgs/development/python-modules/pywlroots/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , python 5 + , cffi 6 + , pkg-config 7 + , libxkbcommon 8 + , libinput 9 + , pixman 10 + , udev 11 + , wlroots 12 + , wayland 13 + , pywayland 14 + , xkbcommon 15 + , pytestCheckHook 16 + }: 17 + 18 + buildPythonPackage rec { 19 + pname = "pywlroots"; 20 + version = "0.14.9"; 21 + 22 + src = fetchPypi { 23 + inherit pname version; 24 + sha256 = "jzHh5ubonn6pCaOp+Dnr7tA9n5DdZ28hBM+03jZZlvc="; 25 + }; 26 + 27 + nativeBuildInputs = [ pkg-config ]; 28 + propagatedNativeBuildInputs = [ cffi ]; 29 + buildInputs = [ libinput libxkbcommon pixman udev wayland wlroots ]; 30 + propagatedBuildInputs = [ cffi pywayland xkbcommon ]; 31 + checkInputs = [ pytestCheckHook ]; 32 + 33 + postBuild = '' 34 + ${python.interpreter} wlroots/ffi_build.py 35 + ''; 36 + 37 + pythonImportsCheck = [ "wlroots" ]; 38 + 39 + meta = with lib; { 40 + homepage = "https://github.com/flacjacket/pywlroots"; 41 + description = "Python bindings to wlroots using cffi"; 42 + license = licenses.ncsa; 43 + maintainers = with maintainers; [ chvp ]; 44 + }; 45 + }
+38
pkgs/development/python-modules/xkbcommon/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , python 5 + , cffi 6 + , pkg-config 7 + , libxkbcommon 8 + , pytestCheckHook 9 + }: 10 + 11 + buildPythonPackage rec { 12 + pname = "xkbcommon"; 13 + version = "0.4"; 14 + 15 + src = fetchPypi { 16 + inherit pname version; 17 + sha256 = "V5LMaX5TPhk9x4ZA4MGFzDhUiC6NKPo4uTbW6Q7mdVw="; 18 + }; 19 + 20 + nativeBuildInputs = [ pkg-config ]; 21 + propagatedNativeBuildInputs = [ cffi ]; 22 + buildInputs = [ libxkbcommon ]; 23 + propagatedBuildInputs = [ cffi ]; 24 + checkInputs = [ pytestCheckHook ]; 25 + 26 + postBuild = '' 27 + ${python.interpreter} xkbcommon/ffi_build.py 28 + ''; 29 + 30 + pythonImportsCheck = [ "xkbcommon" ]; 31 + 32 + meta = with lib; { 33 + homepage = "https://github.com/sde1000/python-xkbcommon"; 34 + description = "Python bindings for libxkbcommon using cffi"; 35 + license = licenses.mit; 36 + maintainers = with maintainers; [ chvp ]; 37 + }; 38 + }
+6
pkgs/top-level/python-packages.nix
··· 7820 7820 7821 7821 pywavelets = callPackage ../development/python-modules/pywavelets { }; 7822 7822 7823 + pywayland = callPackage ../development/python-modules/pywayland { }; 7824 + 7823 7825 pywbem = callPackage ../development/python-modules/pywbem { 7824 7826 inherit (pkgs) libxml2; 7825 7827 }; ··· 7837 7839 pywinrm = callPackage ../development/python-modules/pywinrm { }; 7838 7840 7839 7841 pywizlight = callPackage ../development/python-modules/pywizlight { }; 7842 + 7843 + pywlroots = callPackage ../development/python-modules/pywlroots { }; 7840 7844 7841 7845 pyxattr = callPackage ../development/python-modules/pyxattr { }; 7842 7846 ··· 9962 9966 }; 9963 9967 9964 9968 xhtml2pdf = callPackage ../development/python-modules/xhtml2pdf { }; 9969 + 9970 + xkbcommon = callPackage ../development/python-modules/xkbcommon { }; 9965 9971 9966 9972 xkcdpass = callPackage ../development/python-modules/xkcdpass { }; 9967 9973