about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/screeninfo
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-09-27 16:00:58 +0000
committerAlyssa Ross <hi@alyssa.is>2021-09-27 16:00:58 +0000
commitc504e5d19d940926b3ddcf62c983d66f49f3cbb2 (patch)
treeec955e58bcac2cb93b9f8c10786b23f61d40cd7e /nixpkgs/pkgs/development/python-modules/screeninfo
parent72789cefce7b17419815f600fbd18238d89afcc9 (diff)
parent1737f98af6667560e3e4f930312f9b5002649d04 (diff)
downloadnixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar.gz
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar.bz2
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar.lz
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar.xz
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.tar.zst
nixlib-c504e5d19d940926b3ddcf62c983d66f49f3cbb2.zip
Merge commit '1737f98af6667560e3e4f930312f9b5002649d04'
Conflicts:
	nixpkgs/nixos/modules/services/networking/ssh/sshd.nix
	nixpkgs/pkgs/applications/networking/irc/weechat/scripts/default.nix
	nixpkgs/pkgs/development/node-packages/default.nix
	nixpkgs/pkgs/development/python-modules/priority/deadline.patch
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/screeninfo')
-rw-r--r--nixpkgs/pkgs/development/python-modules/screeninfo/default.nix52
1 files changed, 33 insertions, 19 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/screeninfo/default.nix b/nixpkgs/pkgs/development/python-modules/screeninfo/default.nix
index 80933043b3b9..21b3f30e1323 100644
--- a/nixpkgs/pkgs/development/python-modules/screeninfo/default.nix
+++ b/nixpkgs/pkgs/development/python-modules/screeninfo/default.nix
@@ -1,36 +1,50 @@
-{ lib, buildPythonApplication, fetchPypi, isPy27, isPy36, dataclasses, libX11, libXinerama, libXrandr }:
+{ lib
+, buildPythonApplication
+, dataclasses
+, fetchPypi
+, libX11
+, libXinerama
+, libXrandr
+, pytestCheckHook
+, pythonOlder
+}:
 
 buildPythonApplication rec {
   pname = "screeninfo";
-  version = "0.6.7";
-  disabled = isPy27; # dataclasses isn't available for python2
+  version = "0.7";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1c4bac1ca329da3f68cbc4d2fbc92256aa9bb8ff8583ee3e14f91f0a7baa69cb";
+    sha256 = "12a97c3527e3544ac5dbd7c1204283e2653d655cbd15844c990a83b1b13ef500";
   };
 
-  # dataclasses is a compatibility shim for python 3.6 ONLY
-  patchPhase = if isPy36 then "" else ''
-    substituteInPlace setup.py \
-      --replace "\"dataclasses\"," ""
-  '' + ''
-    substituteInPlace screeninfo/enumerators/xinerama.py \
-      --replace "load_library(\"X11\")" "ctypes.cdll.LoadLibrary(\"${libX11}/lib/libX11.so\")" \
-      --replace "load_library(\"Xinerama\")" "ctypes.cdll.LoadLibrary(\"${libXinerama}/lib/libXinerama.so\")"
-    substituteInPlace screeninfo/enumerators/xrandr.py \
-      --replace "load_library(\"X11\")" "ctypes.cdll.LoadLibrary(\"${libX11}/lib/libX11.so\")" \
-      --replace "load_library(\"Xrandr\")" "ctypes.cdll.LoadLibrary(\"${libXrandr}/lib/libXrandr.so\")"
-  '';
+  propagatedBuildInputs = lib.optionals (pythonOlder "3.7") [
+    dataclasses
+  ];
+
+  buildInputs = [
+    libX11
+    libXinerama
+    libXrandr
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
 
-  propagatedBuildInputs = lib.optional isPy36 dataclasses;
+  disabledTestPaths = [
+    # We don't have a screen
+    "screeninfo/test_screeninfo.py"
+  ];
 
-  buildInputs = [ libX11 libXinerama libXrandr];
+  pythonImportsCheck = [ "screeninfo" ];
 
   meta = with lib; {
     description = "Fetch location and size of physical screens";
     homepage = "https://github.com/rr-/screeninfo";
     license = licenses.mit;
-    maintainers = [ maintainers.nickhu ];
+    maintainers = with maintainers; [ nickhu ];
   };
 }