chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / di / displaycal / package.nix
blob663668f9bfa3d6415368f95c24ea9ca1128b2bb7
1 { lib
2 , python311
3 , fetchPypi
4 , wrapGAppsHook3
5 , gtk3
6 , librsvg
7 , xorg
8 , argyllcms
9 }:
11 # wxPython-4.2.1 requires python < 3.12
12 python311.pkgs.buildPythonApplication rec {
13   pname = "displaycal";
14   version = "3.9.12";
15   format = "setuptools";
17   src = fetchPypi {
18     pname = "DisplayCAL";
19     inherit version;
20     hash = "sha256-0NZ+fr3ilnyWE6+Xa8xqpccNe7WVvvQfQEYvdQ8rf/Q=";
21   };
23   nativeBuildInputs = [
24     wrapGAppsHook3
25     gtk3
26   ];
28   propagatedBuildInputs = with python311.pkgs; [
29     build
30     certifi
31     wxpython
32     dbus-python
33     distro
34     numpy
35     pillow
36     pychromecast
37     send2trash
38     zeroconf
39   ];
41   buildInputs = [
42     gtk3
43     librsvg
44   ] ++ (with xorg; [
45     libX11
46     libXxf86vm
47     libXext
48     libXinerama
49     libXrandr
50   ]);
52   # Workaround for eoyilmaz/displaycal-py3#261
53   setupPyGlobalFlags = [ "appdata" ];
55   doCheck = false; # Tests try to access an X11 session and dbus in weird locations.
57   pythonImportsCheck = [ "DisplayCAL" ];
59   dontWrapGApps = true;
61   preFixup = ''
62     makeWrapperArgs+=(
63       ''${gappsWrapperArgs[@]}
64       --prefix PATH : ${lib.makeBinPath [ argyllcms ]}
65       --prefix PYTHONPATH : $PYTHONPATH
66     )
67   '';
69   meta = with lib; {
70     description = "Display calibration and characterization powered by Argyll CMS (Migrated to Python 3)";
71     homepage = "https://github.com/eoyilmaz/displaycal-py3";
72     license = licenses.gpl3Plus;
73     platforms = platforms.linux;
74     maintainers = with maintainers; [ toastal ];
75   };