Files
numbus-server/templates/nix-config/misc/activation.nix
T

52 lines
1.6 KiB
Nix

{ config, pkgs, ... }:
{
systemd.services.numbus-activation-chowned = {
description = "Numbus-Server activation : Correct permissions";
wantedBy = [ "multi-user.target" "traefik.service" ];
after = [ "network.target" "local-fs.target" ];
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
#!/usr/bin/env bash
if [[ -e /home/numbus-admin/.numbus-server/chowned.true ]]; then
exit 0
fi
${pkgs.coreutils}/bin/mkdir -p /mnt/config/ /mnt/data/ /home/numbus-admin/.numbus-server/
${pkgs.coreutils}/bin/chown -R numbus-admin:users /mnt/config/
${pkgs.coreutils}/bin/chown -R numbus-admin:users /mnt/data/
${pkgs.coreutils}/bin/chown -R numbus-admin:users /home/numbus-admin/.numbus-server/
${pkgs.coreutils}/bin/touch /home/numbus-admin/.numbus-server/chowned.true
'';
};
systemd.services.numbus-activation-networked = {
description = "Numbus-Server activation : Create podman networks";
wantedBy = [ "multi-user.target" "traefik.service" ];
before = [ "traefik.service" ];
after = [ "network.target" "local-fs.target" ];
serviceConfig = {
User = "numbus-admin";
Environment = [ "XDG_RUNTIME_DIR=/run/user/1000" ];
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
#!/usr/bin/env bash
if [[ -e /home/numbus-admin/.numbus-server/networked.true ]]; then
exit 0
fi
$PODMAN_NETWORKS
${pkgs.coreutils}/bin/mkdir -p /home/numbus-admin/.numbus-server/
${pkgs.coreutils}/bin/touch /home/numbus-admin/.numbus-server/networked.true
'';
};
}