1
Fork 0
satellite/hosts/nixos/common/global/default.nix

71 lines
1.5 KiB
Nix
Raw Normal View History

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,
...
}:
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
./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
];
in
2024-08-26 17:38:47 +02: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
}