1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
{ stdenv
, lib
, fetchurl
, asciidoc
, docbook-xsl-nons
, docbook_xml_dtd_45
, gettext
, itstool
, libxslt
, gexiv2
, tracker
, meson
, mesonEmulatorHook
, ninja
, pkg-config
, vala
, wrapGAppsNoGuiHook
, bzip2
, dbus
, exempi
, giflib
, glib
, gnome
, gst_all_1
, icu
, json-glib
, libcue
, libexif
, libgsf
, libgxps
, libiptcdata
, libjpeg
, libosinfo
, libpng
, libseccomp
, libtiff
, libuuid
, libxml2
, networkmanager
, poppler
, systemd
, taglib
, upower
, totem-pl-parser
, e2fsprogs
}:
stdenv.mkDerivation rec {
pname = "tracker-miners";
version = "3.7.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
hash = "sha256-UKOr5Az7CzXO1D7HFtvxNomS5ETvegur8gLHrGqy9vQ=";
};
nativeBuildInputs = [
asciidoc
docbook-xsl-nons
docbook_xml_dtd_45
gettext
glib
itstool
libxslt
meson
ninja
pkg-config
vala
wrapGAppsNoGuiHook
] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
mesonEmulatorHook
];
# TODO: add libenca, libosinfo
buildInputs = [
bzip2
dbus
exempi
giflib
gexiv2
totem-pl-parser
tracker
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-ugly
gst_all_1.gstreamer
gst_all_1.gst-libav
icu
json-glib
libcue
libexif
libgsf
libgxps
libiptcdata
libjpeg
libosinfo
libpng
libtiff
libuuid
libxml2
poppler
taglib
] ++ lib.optionals stdenv.isLinux [
libseccomp
networkmanager
systemd
upower
] ++ lib.optionals stdenv.isDarwin [
e2fsprogs
];
mesonFlags = [
# TODO: tests do not like our sandbox
"-Dfunctional_tests=false"
# libgrss is unmaintained and has no new releases since 2015, and an open
# security issue since then. Despite a patch now being availab, we're opting
# to be safe due to the general state of the project
"-Dminer_rss=false"
] ++ lib.optionals (!stdenv.isLinux) [
"-Dbattery_detection=none"
"-Dnetwork_manager=disabled"
"-Dsystemd_user_services=false"
];
postInstall = ''
glib-compile-schemas "$out/share/glib-2.0/schemas"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
};
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/tracker-miners";
description = "Desktop-neutral user information store, search tool and indexer";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.unix;
};
}
|