2024-04-03 17:50:53 -05:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
pkgs,
|
2024-04-04 18:44:59 -05:00
|
|
|
inputs,
|
|
|
|
outputs,
|
2024-06-04 23:33:32 -05:00
|
|
|
lib,
|
2024-04-03 17:50:53 -05:00
|
|
|
...
|
|
|
|
}: {
|
|
|
|
nix = {
|
|
|
|
package = pkgs.nixFlakes;
|
|
|
|
extraOptions = ''
|
|
|
|
experimental-features = nix-command flakes
|
|
|
|
'';
|
2024-05-06 19:05:40 -05:00
|
|
|
optimise.automatic = true;
|
|
|
|
settings = {
|
|
|
|
auto-optimise-store = true;
|
|
|
|
};
|
|
|
|
gc = {
|
|
|
|
automatic = true;
|
|
|
|
dates = "weekly";
|
|
|
|
options = "--delete-older-than 30d";
|
|
|
|
};
|
2024-04-03 17:50:53 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
# Allow unfree packages
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
|
2024-06-04 23:33:32 -05:00
|
|
|
time.timeZone = lib.mkDefault "America/Chicago";
|
|
|
|
# Select internationalisation properties.
|
|
|
|
i18n.defaultLocale = lib.mkDefault "en_US.UTF-8";
|
|
|
|
|
|
|
|
# Configure keymap in X11
|
|
|
|
services.xserver = {
|
|
|
|
xkb.layout = lib.mkDefault "us";
|
|
|
|
xkb.variant = lib.mkDefault "";
|
|
|
|
};
|
|
|
|
|
2024-04-03 17:50:53 -05:00
|
|
|
# packages that should be on every system.
|
2024-06-05 13:39:25 -05:00
|
|
|
environment.systemPackages = [pkgs.neovim];
|
|
|
|
|
|
|
|
programs.zsh.enable = lib.mkDefault true;
|
|
|
|
environment.shells = lib.mkDefault [pkgs.zsh];
|
|
|
|
users.users.${config.host.user} = {
|
|
|
|
isNormalUser = true;
|
|
|
|
description = config.host.fullName;
|
|
|
|
shell = pkgs.zsh;
|
|
|
|
extraGroups = ["wheel"];
|
|
|
|
};
|
2024-04-04 18:44:59 -05:00
|
|
|
|
2024-05-31 12:01:32 -05:00
|
|
|
imports = [
|
|
|
|
../../modules/hostopts.nix
|
|
|
|
];
|
|
|
|
|
2024-04-04 18:44:59 -05:00
|
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
home-manager.extraSpecialArgs = {inherit inputs outputs;};
|
2024-04-03 17:50:53 -05:00
|
|
|
}
|