infra/puter/030-vm-nixos-neru/specific-aspect/repo-website/forgejo-admin.nix
2025-12-05 22:24:36 +07:00

21 lines
No EOL
775 B
Nix

{
den.aspects = {
neru = {
nixos =
{ lib, pkgs, config, ... }:
{
sops.secrets.forgejo-admin-password.owner = "forgejo";
systemd.services.forgejo.preStart =
let
adminCmd = "${lib.getExe config.services.forgejo.package} admin user";
pwd = config.sops.secrets.forgejo-admin-password;
user = "exp";
in ''
${adminCmd} create --admin --email "root@localhost" --username ${user} --password "$(tr -d '\n' < ${pwd.path})" || true
## uncomment this line to change an admin user which was already created
# ${adminCmd} change-password --username ${user} --password "$(tr -d '\n' < ${pwd.path})" || true
'';
};
};
};
}