1 { lib, pkgs, config, myconfig, mylibs, ... }:
3 cfg = config.services.myDatabases;
5 options.services.myDatabases = {
7 enable = lib.mkOption {
10 description = "Whether to enable redis database";
11 type = lib.types.bool;
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;
24 unixSocket = myconfig.env.databases.redis.socket;
30 system.activationScripts.redis = ''
31 mkdir -p $(dirname ${myconfig.env.databases.redis.socket})
32 chown redis $(dirname ${myconfig.env.databases.redis.socket})