feat: matrix-cluster: shared users

This commit is contained in:
2026-05-27 12:54:15 +00:00
parent a8dd82d05f
commit 8625000952
2 changed files with 36 additions and 40 deletions

View File

@@ -3,46 +3,40 @@
flake,
self,
}: {
lib,
config,
...
}: {
hectic.generic.matrix-cluster.users = {
yukkop = {
passwordFile = config.sops.secrets."matrix/users/yukkop/password".path;
admin = true;
};
liquiz = {
passwordFile = config.sops.secrets."matrix/users/liquiz/password".path;
};
vismajor = {
passwordFile = config.sops.secrets."matrix/users/vismajor/password".path;
};
lvgkcfjl = {
passwordFile = config.sops.secrets."matrix/users/lvgkcfjl/password".path;
};
};
}: let
userNames = [
"yukkop"
"liquiz"
"vismajor"
"lvgkcfjl"
"MrAlex0O"
"Антоша"
];
sops.secrets."matrix/users/yukkop/password" = {
key = "matrix/users/yukkop/password";
owner = "matrix-synapse";
sopsFile = "${flake}/sus/matrix-cluster.yaml";
};
adminNames = [ "yukkop" ];
in {
hectic.generic.matrix-cluster.users = builtins.listToAttrs (
map (name: {
inherit name;
value = {
passwordFile = config.sops.secrets."matrix/users/${name}/password".path;
} // lib.optionalAttrs (builtins.elem name adminNames) {
admin = true;
};
}) userNames
);
sops.secrets."matrix/users/liquiz/password" = {
key = "matrix/users/liquiz/password";
owner = "matrix-synapse";
sopsFile = "${flake}/sus/matrix-cluster.yaml";
};
sops.secrets."matrix/users/vismajor/password" = {
key = "matrix/users/vismajor/password";
owner = "matrix-synapse";
sopsFile = "${flake}/sus/matrix-cluster.yaml";
};
sops.secrets."matrix/users/lvgkcfjl/password" = {
key = "matrix/users/lvgkcfjl/password";
owner = "matrix-synapse";
sopsFile = "${flake}/sus/matrix-cluster.yaml";
};
sops.secrets = builtins.listToAttrs (
map (name: {
name = "matrix/users/${name}/password";
value = {
key = "matrix/users/${name}/password";
owner = "matrix-synapse";
sopsFile = "${flake}/sus/matrix-cluster.yaml";
};
}) userNames
);
}