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