2024-06-12 18:09:56 +07:00
|
|
|
{ ... }:
|
|
|
|
{
|
|
|
|
imports = [
|
|
|
|
../options
|
|
|
|
];
|
|
|
|
|
|
|
|
profile = {
|
|
|
|
hostname = "homeserver";
|
2024-06-14 14:30:52 +07:00
|
|
|
networking.externalInterface = "enp9s0";
|
2024-07-02 14:06:20 +07:00
|
|
|
networking.disableWaitOnline = true;
|
2024-06-12 18:09:56 +07:00
|
|
|
user = {
|
|
|
|
name = "homeserver";
|
|
|
|
fullName = "Homeserver";
|
2024-06-17 20:44:51 +07:00
|
|
|
getty.autoLogin = true;
|
2024-06-12 18:09:56 +07:00
|
|
|
};
|
|
|
|
system.stateVersion = "24.05";
|
|
|
|
|
|
|
|
grub.enable = false;
|
|
|
|
# There is no GUI on the server. No need for audio.
|
|
|
|
audio.enable = false;
|
|
|
|
security.sudo.wheelNeedsPassword = false;
|
|
|
|
|
|
|
|
openssh.enable = true;
|
2024-06-12 19:25:36 +07:00
|
|
|
go.enable = true;
|
2024-06-12 20:25:30 +07:00
|
|
|
networking.firewall.enable = true;
|
|
|
|
networking.firewall.allowedTCPPorts = [ 80 443 ];
|
2024-06-13 00:50:38 +07:00
|
|
|
podman = {
|
2024-06-17 01:06:03 +07:00
|
|
|
enable = true;
|
|
|
|
pihole.enable = true;
|
2024-06-17 19:54:36 +07:00
|
|
|
suwayomi.enable = true;
|
2024-06-17 21:49:20 +07:00
|
|
|
ytptube.enable = true;
|
2024-06-18 19:18:44 +07:00
|
|
|
redmage.enable = true;
|
|
|
|
redmage-demo.enable = true;
|
2024-06-18 20:24:28 +07:00
|
|
|
qbittorrent.enable = true;
|
2024-06-25 22:45:00 +07:00
|
|
|
servarr.enable = true;
|
2024-07-04 15:46:21 +07:00
|
|
|
servarr.recyclarr.enable = true;
|
2024-06-26 19:25:28 +07:00
|
|
|
servarr.real-debrid-manager.enable = false;
|
|
|
|
servarr.rdtclient.enable = true;
|
2024-07-15 15:16:53 +07:00
|
|
|
openobserve.enable = true;
|
2024-07-20 18:46:31 +07:00
|
|
|
minecraft.enable = true;
|
2024-07-28 22:18:27 +07:00
|
|
|
memos.enable = true;
|
2024-08-09 22:10:25 +07:00
|
|
|
morphos.enable = true;
|
2024-08-20 21:32:35 +07:00
|
|
|
soulseek.enable = true;
|
2024-06-15 16:45:38 +07:00
|
|
|
};
|
|
|
|
|
|
|
|
docker = {
|
2024-06-17 01:06:03 +07:00
|
|
|
enable = false;
|
2024-06-12 23:37:10 +07:00
|
|
|
};
|
2024-06-13 14:04:10 +07:00
|
|
|
|
2024-07-25 22:28:38 +07:00
|
|
|
home.programs.zellij = {
|
|
|
|
enable = true;
|
|
|
|
autoAttach = true;
|
2024-08-04 15:53:51 +07:00
|
|
|
mod = "Ctrl b";
|
2024-08-04 16:38:40 +07:00
|
|
|
zjstatus.theme = ../home/programs/zellij/themes/zjstatus/gruvbox-dark.nix;
|
2024-07-25 22:28:38 +07:00
|
|
|
};
|
|
|
|
|
2024-06-13 14:04:10 +07:00
|
|
|
services = {
|
|
|
|
caddy.enable = true;
|
|
|
|
cockpit.enable = true;
|
2024-06-13 16:08:33 +07:00
|
|
|
forgejo.enable = true;
|
|
|
|
kavita.enable = true;
|
|
|
|
samba.enable = true;
|
2024-08-21 21:20:54 +07:00
|
|
|
nextcloud.enable = false;
|
2024-06-14 10:04:29 +07:00
|
|
|
syncthing.enable = true;
|
2024-06-23 20:01:24 +07:00
|
|
|
openvpn.enable = false;
|
2024-06-14 19:42:14 +07:00
|
|
|
stubby.enable = true;
|
2024-06-17 23:28:22 +07:00
|
|
|
jellyfin.enable = true;
|
2024-06-20 15:48:18 +07:00
|
|
|
rust-motd.enable = true;
|
2024-06-23 20:01:24 +07:00
|
|
|
wireguard.enable = true;
|
2024-06-23 21:04:27 +07:00
|
|
|
photoprism.enable = true;
|
2024-08-20 21:32:35 +07:00
|
|
|
navidrome.enable = true;
|
2024-06-13 14:04:10 +07:00
|
|
|
};
|
2024-06-12 18:09:56 +07:00
|
|
|
};
|
|
|
|
}
|