Files
vmimages/hosts/common.nix
2023-11-30 19:39:51 +00:00

62 lines
1.6 KiB
Nix

# This file (and the global directory) holds config that i use on all hosts
{
lib,
inputs,
pkgs,
config,
outputs,
...
}: {
imports =
[
# inputs.home-manager.nixosModules.home-manager
inputs.sops-nix.nixosModules.sops
] ++ (builtins.attrValues outputs.nixosModules);
config = {
system.stateVersion = "23.05";
sops = {
defaultSopsFile = ../secrets/host-secrets.yaml;
age.sshKeyPaths = ["/etc/ssh/ssh_host_ed25519_key"];
};
programs.fuse.userAllowOther = true;
security.sudo.wheelNeedsPassword = false;
virtualisation.docker.enable = true;
# nixpkgs.overlays = overlays;
# Enable nix flakes
nix.package = pkgs.nixFlakes;
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
# nix.nixPath = [ "nixpkgs=pkgs.outPath" ];
networking.search = ["node.dc1.consul" "service.dc1.consul"];
##VSCode
#services.vscode-server.enable = true;
#services.vscode-server.enableFHS = true;
#services.vscode-server.nodejsPackage = pkgs.nodejs-18_x;
#services.envfs.enable = true;
environment.systemPackages = [
pkgs.git
pkgs.home-manager
pkgs.sops
pkgs.ssh-to-age
pkgs.age
pkgs.bitwarden-cli
];
nix.gc = {
automatic = true; # Enable the automatic garbage collector
dates = "03:15"; # When to run the garbage collector
options = "-d"; # Arguments to pass to nix-collect-garbage
};
};
}