2023-01-10 02:38:06 +01:00
|
|
|
# Configuration pieces included on all (nixos) hosts
|
2024-08-26 17:38:47 +02:00
|
|
|
{
|
|
|
|
inputs,
|
|
|
|
lib,
|
|
|
|
config,
|
|
|
|
outputs,
|
|
|
|
...
|
|
|
|
}:
|
2023-02-09 23:55:36 +01:00
|
|
|
let
|
2023-09-04 04:58:39 +02:00
|
|
|
# {{{ Imports
|
2023-01-10 02:38:06 +01:00
|
|
|
imports = [
|
2024-08-26 17:38:47 +02:00
|
|
|
# {{{ flake inputs
|
2023-07-17 18:54:31 +02:00
|
|
|
inputs.disko.nixosModules.default
|
2023-03-12 05:24:25 +01:00
|
|
|
inputs.stylix.nixosModules.stylix
|
2024-01-31 20:03:00 +01:00
|
|
|
inputs.sops-nix.nixosModules.sops
|
2023-12-10 23:48:46 +01:00
|
|
|
# }}}
|
|
|
|
# {{{ global configuration
|
|
|
|
./cli/fish.nix
|
|
|
|
./cli/htop.nix
|
|
|
|
./services/openssh.nix
|
|
|
|
./services/tailscale.nix
|
2023-01-10 02:38:06 +01:00
|
|
|
./nix.nix
|
|
|
|
./locale.nix
|
2024-07-26 20:18:26 +02:00
|
|
|
./unicode.nix
|
2023-12-10 23:48:46 +01:00
|
|
|
./persistence.nix
|
2024-06-13 15:47:36 +02:00
|
|
|
./ports.nix
|
2023-01-10 16:05:48 +01:00
|
|
|
./wireless
|
2023-12-10 23:48:46 +01:00
|
|
|
|
2023-03-12 05:24:25 +01:00
|
|
|
../../../../common
|
2023-12-10 23:48:46 +01:00
|
|
|
# }}}
|
2023-01-10 02:38:06 +01:00
|
|
|
];
|
2023-02-09 23:55:36 +01:00
|
|
|
in
|
2024-08-26 17:38:47 +02:00
|
|
|
# }}}
|
2023-02-09 23:55:36 +01:00
|
|
|
{
|
|
|
|
# Import all modules defined in modules/nixos
|
|
|
|
imports = builtins.attrValues outputs.nixosModules ++ imports;
|
2023-01-10 02:38:06 +01:00
|
|
|
|
2024-01-31 20:03:00 +01:00
|
|
|
# Tell sops-nix to use the host keys for decrypting secrets
|
|
|
|
sops.age.sshKeyPaths = [ "/persist/state/etc/ssh/ssh_host_ed25519_key" ];
|
|
|
|
|
2023-12-10 23:48:46 +01:00
|
|
|
# {{{ ad-hoc options
|
2023-07-22 16:21:29 +02:00
|
|
|
# Customize tty colors
|
|
|
|
stylix.targets.console.enable = true;
|
|
|
|
|
2023-12-10 23:48:46 +01:00
|
|
|
# Reduce the amount of storage spent for logs
|
|
|
|
services.journald.extraConfig = lib.mkDefault ''
|
|
|
|
SystemMaxUse=256M
|
|
|
|
'';
|
2024-01-17 08:31:33 +01:00
|
|
|
|
|
|
|
# Boot using systemd
|
|
|
|
boot.initrd.systemd.enable = true;
|
2023-12-10 23:48:46 +01:00
|
|
|
# }}}
|
2024-08-26 17:38:47 +02:00
|
|
|
# {{{ Disable sudo default lecture
|
|
|
|
security.sudo.extraConfig = ''
|
|
|
|
Defaults lecture = never
|
|
|
|
'';
|
|
|
|
# }}}
|
2023-12-10 23:48:46 +01:00
|
|
|
|
2023-01-10 02:38:06 +01:00
|
|
|
nixpkgs = {
|
|
|
|
# Add all overlays defined in the overlays directory
|
2024-08-26 17:38:47 +02:00
|
|
|
overlays =
|
|
|
|
builtins.attrValues outputs.overlays
|
|
|
|
++ lib.lists.optional config.satellite.toggles.neovim-nightly.enable inputs.neovim-nightly-overlay.overlay;
|
2023-01-10 02:38:06 +01:00
|
|
|
|
2023-12-10 23:48:46 +01:00
|
|
|
config.allowUnfree = true;
|
2023-01-10 02:38:06 +01:00
|
|
|
};
|
2024-07-08 03:06:27 +02:00
|
|
|
|
|
|
|
# Root domain used throughout my config
|
|
|
|
satellite.dns.domain = "moonythm.dev";
|
2023-01-10 02:38:06 +01:00
|
|
|
}
|