1{
2 config,
3 pkgs,
4 lib,
5 ...
6}:
7
8let
9 cfg = config.services.gnome.tinysparql;
10in
11{
12 meta = {
13 maintainers = lib.teams.gnome.members;
14 };
15
16 imports = [
17 (lib.mkRemovedOptionModule
18 [
19 "services"
20 "gnome"
21 "tracker"
22 "subcommandPackages"
23 ]
24 ''
25 This option is broken since 3.7 and since 3.8 tracker (tinysparql) no longer expect
26 CLI to be extended by external projects, note that tracker-miners (localsearch) now
27 provides its own CLI tool.
28 ''
29 )
30 (lib.mkRenamedOptionModule
31 [
32 "services"
33 "gnome"
34 "tracker"
35 "enable"
36 ]
37 [
38 "services"
39 "gnome"
40 "tinysparql"
41 "enable"
42 ]
43 )
44 ];
45
46 options = {
47 services.gnome.tinysparql = {
48 enable = lib.mkOption {
49 type = lib.types.bool;
50 default = false;
51 description = ''
52 Whether to enable TinySPARQL services, a search engine,
53 search tool and metadata storage system.
54 '';
55 };
56 };
57 };
58
59 config = lib.mkIf cfg.enable {
60 environment.systemPackages = [ pkgs.tinysparql ];
61
62 services.dbus.packages = [ pkgs.tinysparql ];
63
64 systemd.packages = [ pkgs.tinysparql ];
65 };
66}