1{
2 pkgs,
3 system,
4 inputs,
5 ...
6}:
7{
8 disabledModules = [
9 "services/mail/stalwart-mail.nix"
10 ];
11 imports = [
12 "${inputs.nixpkgs-stalwart-fix}/nixos/modules/services/mail/stalwart-mail.nix"
13 # Machine-specific configurations.
14 ./bootloader.nix
15 ./firewall.nix
16 ./networking.nix
17 ./hardware.nix
18 ./packages.nix
19
20 # DN42 Services
21 ./dn42/default.nix
22
23 # Running Services
24 ./services/acme.nix
25 # ./services/blog-update.nix
26 ./services/caddy.nix
27 # ./services/dn42-peerfinder.nix
28 ./services/fail2ban.nix
29 # ./services/headscale.nix
30 # ./services/mailserver
31 ./services/mailserver/stalwart
32 # ./services/netdata.nix
33 # ./services/nginx
34 ./services/prometheus.nix
35 ./services/secrets.nix
36 ./services/tailscale.nix
37 # ./services/zerotier.nix
38 ];
39 fileSystems = {
40 "/" = {
41 fsType = "ext4";
42 device = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_21170924-part1";
43 };
44 };
45
46 nix.settings.max-jobs = 2;
47 nix.settings.cores = 2;
48
49 programs.fish.enable = true;
50 programs.fish.interactiveShellInit = ''
51 ${pkgs.direnv}/bin/direnv hook fish | source
52 '';
53 py = {
54 profiles.server.enable = true;
55 users.default.enable = true;
56 programs = {
57 fish.enable = true;
58 neovim.enable = true;
59 };
60 services.scrutiny.collector.enable = false;
61 };
62}