1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 pkg-config,
6 meson,
7 ninja,
8 vala,
9 wrapGAppsHook4,
10 desktop-file-utils,
11 gtk3,
12 libgee,
13 pantheon,
14 libxml2,
15 libhandy,
16 libportal-gtk4,
17}:
18
19stdenv.mkDerivation (finalAttrs: {
20 pname = "annotator";
21 version = "2.0.0";
22
23 src = fetchFromGitHub {
24 owner = "phase1geo";
25 repo = "annotator";
26 tag = finalAttrs.version;
27 hash = "sha256-mv3fMlYB4XcAWI6O6wN8ujNRDLZlX3ef/gKdOMYEHq0=";
28 };
29
30 postPatch = ''
31 substituteInPlace src/Application.vala \
32 --replace-fail 'Environment.set_variable( "GDK_BACKEND", "x11", true );' ""
33 '';
34
35 nativeBuildInputs = [
36 pkg-config
37 meson
38 ninja
39 vala
40 wrapGAppsHook4
41 desktop-file-utils
42 ];
43
44 buildInputs = [
45 libgee
46 pantheon.granite7
47 libportal-gtk4
48 libxml2
49 libhandy
50 gtk3
51 ];
52
53 meta = {
54 description = "Image annotation for Elementary OS";
55 homepage = "https://github.com/phase1geo/Annotator";
56 license = lib.licenses.gpl3Plus;
57 mainProgram = "com.github.phase1geo.annotator";
58 maintainers = with lib.maintainers; [ aleksana ];
59 platforms = lib.platforms.linux;
60 };
61})