nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 fetchFromGitHub,
4 buildPythonPackage,
5 meson,
6 ninja,
7 psutil,
8 pygobject3,
9 gtk3,
10 gobject-introspection,
11 xapp,
12 polkit,
13 gitUpdater,
14}:
15
16buildPythonPackage rec {
17 pname = "python-xapp";
18 version = "3.0.2";
19
20 pyproject = false;
21
22 src = fetchFromGitHub {
23 owner = "linuxmint";
24 repo = "python-xapp";
25 rev = version;
26 hash = "sha256-+wN4BYAS7KYQT0vhyOSdyrJpOhGyv+2FAloClgZOyH0=";
27 };
28
29 nativeBuildInputs = [
30 meson
31 ninja
32 ];
33
34 propagatedBuildInputs = [
35 psutil
36 pygobject3
37 gtk3
38 gobject-introspection
39 xapp
40 polkit
41 ];
42
43 postPatch = ''
44 substituteInPlace "xapp/os.py" \
45 --replace-fail "/usr/bin/pkexec" "${polkit}/bin/pkexec"
46
47 # We actually want the localedir provided by the caller.
48 substituteInPlace "xapp/util/__init__.py" \
49 --replace-fail "/usr/share/locale" "/run/current-system/sw/share/locale"
50 '';
51
52 doCheck = false;
53 pythonImportsCheck = [ "xapp" ];
54
55 passthru = {
56 updateScript = gitUpdater { ignoredVersions = "^master.*"; };
57 skipBulkUpdate = true; # This should be bumped as part of Cinnamon update.
58 };
59
60 meta = {
61 homepage = "https://github.com/linuxmint/python-xapp";
62 description = "Cross-desktop libraries and common resources for python";
63 license = lib.licenses.lgpl2Plus;
64 platforms = lib.platforms.linux;
65 teams = [ lib.teams.cinnamon ];
66 };
67}