2023-01-10 02:38:06 +01:00
|
|
|
# Configuration pieces included on all (nixos) hosts
|
2023-12-10 23:48:46 +01: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 = [
|
2023-12-10 23:48:46 +01:00
|
|
|
# {{{ flake inputs
|
2023-12-10 12:55:54 +01:00
|
|
|
# inputs.hyprland.nixosModules.default
|
2023-07-17 18:54:31 +02:00
|
|
|
inputs.disko.nixosModules.default
|
2023-03-12 05:24:25 +01:00
|
|
|
inputs.stylix.nixosModules.stylix
|
2023-03-07 15:19:18 +01:00
|
|
|
inputs.nur.nixosModules.nur
|
2023-06-15 20:08:20 +02:00
|
|
|
inputs.slambda.nixosModule
|
2024-01-31 20:03:00 +01:00
|
|
|
inputs.sops-nix.nixosModules.sops
|
2023-01-10 02:38:06 +01:00
|
|
|
|
2023-12-10 23:48:46 +01:00
|
|
|
# {{{ self management
|
2023-09-04 04:58:39 +02:00
|
|
|
# NOTE: using `pkgs.system` before `module.options` is evaluated
|
|
|
|
# leads to infinite recursion!
|
|
|
|
inputs.smos.nixosModules.x86_64-linux.default
|
|
|
|
inputs.tickler.nixosModules.x86_64-linux.default
|
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
|
2023-12-10 23:48:46 +01:00
|
|
|
./persistence.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-09-04 04:58:39 +02:00
|
|
|
# }}}
|
2023-02-09 23:55:36 +01:00
|
|
|
in
|
|
|
|
{
|
|
|
|
# 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
|
|
|
# }}}
|
|
|
|
|
2023-01-10 02:38:06 +01:00
|
|
|
nixpkgs = {
|
|
|
|
# Add all overlays defined in the overlays directory
|
2023-12-10 23:48:46 +01: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
|
|
|
};
|
|
|
|
}
|