nixos-option: rewrite as a nix script, 2nd try (#369151)
[NixPkgs.git] / nixos / modules / services / desktops / gnome / tinysparql.nix
blob551b5800e84c99dcef8d14c2ffa26d98dbc9859f
2   config,
3   pkgs,
4   lib,
5   ...
6 }:
8 let
9   cfg = config.services.gnome.tinysparql;
12   meta = {
13     maintainers = lib.teams.gnome.members;
14   };
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   ];
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   };
59   config = lib.mkIf cfg.enable {
60     environment.systemPackages = [ pkgs.tinysparql ];
62     services.dbus.packages = [ pkgs.tinysparql ];
64     systemd.packages = [ pkgs.tinysparql ];
65   };