pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / by-name / pi / pix / package.nix
blob854b4559165ad5aaa6a9135d293e251bba865aef
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , pkg-config
5 , meson
6 , ninja
7 , brasero
8 , colord
9 , exiv2
10 , libheif
11 , libjpeg
12 , libjxl
13 , libtiff
14 , gst_all_1
15 , libraw
16 , libsecret
17 , glib
18 , gtk3
19 , gsettings-desktop-schemas
20 , librsvg
21 , libwebp
22 , libX11
23 , lcms2
24 , bison
25 , flex
26 , wrapGAppsHook3
27 , shared-mime-info
28 , python3
29 , desktop-file-utils
30 , itstool
31 , xapp
34 stdenv.mkDerivation rec {
35   pname = "pix";
36   version = "3.4.3";
38   src = fetchFromGitHub {
39     owner = "linuxmint";
40     repo = pname;
41     rev = version;
42     hash = "sha256-WL9EW7oKeQwufw1VYDigbqAt52GQTpc5RgDEmnKO6vc=";
43   };
45   nativeBuildInputs = [
46     bison
47     desktop-file-utils
48     flex
49     itstool
50     meson
51     ninja
52     pkg-config
53     python3
54     wrapGAppsHook3
55   ];
57   buildInputs = [
58     brasero
59     colord
60     exiv2
61     glib
62     gsettings-desktop-schemas
63     gst_all_1.gst-plugins-base
64     (gst_all_1.gst-plugins-good.override { gtkSupport = true; })
65     gst_all_1.gst-libav
66     gst_all_1.gst-plugins-bad
67     gst_all_1.gst-plugins-ugly
68     gtk3
69     lcms2
70     libheif
71     libjpeg
72     libjxl
73     libraw
74     librsvg
75     libsecret
76     libtiff
77     libwebp
78     libX11
79     xapp
80   ];
82   postPatch = ''
83     chmod +x pix/make-pix-h.py
85     patchShebangs data/gschemas/make-enums.py \
86       pix/make-pix-h.py \
87       po/make-potfiles-in.py \
88       postinstall.py \
89       pix/make-authors-tab.py
90   '';
92   # Avoid direct dependency on webkit2gtk-4.0
93   # https://fedoraproject.org/wiki/Changes/Remove_webkit2gtk-4.0_API_Version
94   mesonFlags = [ "-Dwebservices=false" ];
96   preFixup = ''
97     gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
98   '';
100   meta = with lib; {
101     description = "Generic image viewer from Linux Mint";
102     mainProgram = "pix";
103     homepage = "https://github.com/linuxmint/pix";
104     license = licenses.gpl2Only;
105     platforms = platforms.linux;
106     maintainers = teams.cinnamon.members;
107   };