nix-dotfiles/hosts/tsuki/configuration.nix

107 lines
2.3 KiB
Nix
Raw Normal View History

{ secrets, ... }:
2022-03-07 16:01:52 +01:00
{
imports = [
2022-06-22 20:16:57 +02:00
./hardware-configuration.nix
./extra-hardware-configuration.nix
2022-03-07 16:01:52 +01:00
# ./services/calibre.nix
./services/gitea
./services/grafana
2023-01-16 17:16:07 +01:00
./services/headscale.nix
./services/hydra.nix
# ./services/jitsi.nix
2022-11-05 22:49:54 +01:00
./services/jupyter.nix
# ./services/keycloak.nix
2022-06-22 20:16:57 +02:00
./services/matrix
2023-01-16 16:06:34 +01:00
./services/minecraft
./services/nginx
2023-01-04 14:32:11 +01:00
./services/osuchan.nix
./services/plex.nix
2022-06-22 20:16:57 +02:00
./services/postgres.nix
./services/vscode-server.nix
2022-06-22 20:16:57 +02:00
];
2022-03-07 16:01:52 +01:00
# TODO: See ../common.nix
services.xserver.enable = false;
services.xserver.displayManager.lightdm.enable = false;
machineVars = {
headless = true;
dataDrives = {
2022-06-22 20:16:57 +02:00
drives = {
backup = "/data2/backup";
momiji = "/data2/momiji";
cirno = "/data2/cirno";
media = "/data2/media";
postgres = "/data2/postgres";
home = "/data2/home";
2022-06-22 20:16:57 +02:00
};
default = "/data2/momiji";
2022-06-22 20:16:57 +02:00
};
};
2022-03-07 16:01:52 +01:00
systemd.targets = {
sleep.enable = false;
suspend.enable = false;
hibernate.enable = false;
hybrid-sleep.enable = false;
};
# security.pam.services.login.unixAuth = true;
boot.loader = {
grub = {
enable = true;
version = 2;
efiSupport = true;
fsIdentifier = "label";
device = "nodev";
efiInstallAsRemovable = true;
};
# efi.efiSysMountPoint = "/boot/efi";
# efi.canTouchEfiVariables = true;
};
networking = {
hostName = "Tsuki";
networkmanager.enable = true;
interfaces.ens18.useDHCP = true;
firewall.enable=true;
};
services = {
openssh.enable = true;
2022-03-07 16:01:52 +01:00
printing.enable = true;
cron = {
enable = true;
systemCronJobs = [
# "*/5 * * * * root date >> /tmp/cron.log"
];
};
};
2022-06-02 16:33:21 +02:00
users = {
users = {
media = {
description = "User responsible for owning all sorts of server media files";
isSystemUser = true;
group = "media";
};
nix-builder = {
description = "User for executing distributed builds via SSH";
isSystemUser = true;
group = "nix-builder";
openssh.authorizedKeys.keyFiles = [ secrets.keys.ssh.nixBuilders.tsuki.public ];
};
};
groups = {
media = {};
nix-builder = {};
2022-03-07 16:01:52 +01:00
};
};
virtualisation = {
docker.enable = true;
};
}