oizys/hosts/algiz/default.nix

54 lines
1.2 KiB
Nix
Raw Normal View History

2024-01-23 11:51:13 -06:00
{
inputs,
pkgs,
...
2024-01-29 09:24:41 -06:00
}: let
gitea-shim = pkgs.writeShellScriptBin "gitea" ''
ssh -p 2222 -o StrictHostKeyChecking=no git@127.0.0.1 "SSH_ORIGINAL_COMMAND=\"$SSH_ORIGINAL_COMMAND\" $0 $@"
'';
in {
2024-01-23 11:51:13 -06:00
imports = with inputs.self.nixosModules; [
docker
];
2024-01-23 15:50:42 -06:00
languages = {
2024-01-25 13:59:33 -06:00
nim = true;
python = true;
2024-01-23 15:50:42 -06:00
};
2024-01-23 19:13:42 -06:00
cli.enable = true;
2024-01-23 15:50:42 -06:00
2024-01-23 11:51:13 -06:00
environment.systemPackages = with pkgs; [
rclone
2024-01-29 09:24:41 -06:00
gitea-shim
2024-01-23 11:51:13 -06:00
];
2024-01-23 15:50:42 -06:00
2024-01-23 11:51:13 -06:00
# https://francis.begyn.be/blog/nixos-restic-backups
# TODO: parameterize to use on algiz AND othalan ...
services.restic.backups.gdrive = {
# directories created by gitea and soft-serve aren't world readable
user = "root";
rcloneConfigFile = "/home/daylin/.config/rclone/rclone.conf";
repository = "rclone:g:archives/algiz";
passwordFile = "/home/daylin/.config/restic/algiz-pass";
paths = ["/home/daylin/services/git/" "/home/daylin/services/gotosocial/" "home/daylin/services/caddy"];
};
security.sudo.wheelNeedsPassword = false;
2024-01-28 13:09:34 -06:00
users.users = {
2024-01-23 11:51:13 -06:00
daylin = {
2024-01-28 13:09:34 -06:00
extraGroups = ["docker"];
2024-01-23 11:51:13 -06:00
};
git = {
isNormalUser = true;
};
};
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
}