]>
Commit | Line | Data |
---|---|---|
8a964143 | 1 | { lib, pkgs, config, myconfig, ... }: |
4ff90563 IB |
2 | let |
3 | cfg = config.services.myDatabases; | |
4 | in { | |
5 | options.services.myDatabases = { | |
6 | redis = { | |
7 | enable = lib.mkOption { | |
8 | default = cfg.enable; | |
9 | example = true; | |
10 | description = "Whether to enable redis database"; | |
11 | type = lib.types.bool; | |
12 | }; | |
13 | }; | |
14 | }; | |
15 | ||
16 | config = lib.mkIf cfg.enable { | |
17 | ids.uids.redis = myconfig.env.users.redis.uid; | |
18 | ids.gids.redis = myconfig.env.users.redis.gid; | |
19 | users.users.redis.uid = config.ids.uids.redis; | |
20 | users.groups.redis.gid = config.ids.gids.redis; | |
21 | services.redis = rec { | |
22 | enable = config.services.myDatabases.redis.enable; | |
23 | bind = "127.0.0.1"; | |
24 | unixSocket = myconfig.env.databases.redis.socket; | |
25 | extraConfig = '' | |
26 | unixsocketperm 777 | |
27 | maxclients 1024 | |
28 | ''; | |
29 | }; | |
81b9ff89 IB |
30 | systemd.services.redis.serviceConfig.RuntimeDirectory = |
31 | assert myconfig.env.databases.redis.socket == "/run/redis/redis.sock"; | |
32 | "redis"; | |
4ff90563 IB |
33 | }; |
34 | } | |
35 |