106 lines
3.0 KiB
Nix
106 lines
3.0 KiB
Nix
|
{
|
||
|
lib,
|
||
|
pkgs,
|
||
|
config,
|
||
|
modulesPath,
|
||
|
agenix,
|
||
|
mySSHKeys,
|
||
|
nix-index-database,
|
||
|
...
|
||
|
}:
|
||
|
|
||
|
{
|
||
|
imports = [
|
||
|
./packages.nix
|
||
|
./hardware-configuration.nix # Include the results of the hardware scan.
|
||
|
# TODO: Generate actual hw-cfg for chimchar as current one is piplup's
|
||
|
];
|
||
|
|
||
|
networking.hostName = "chimchar";
|
||
|
|
||
|
boot.loader.systemd-boot = {
|
||
|
enable = true;
|
||
|
editor = false;
|
||
|
};
|
||
|
|
||
|
services.openssh = {
|
||
|
enable = true;
|
||
|
settings = {
|
||
|
PasswordAuthentication = false;
|
||
|
KbdInteractiveAuthentication = false;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
users.users.whovian = {
|
||
|
openssh.authorizedKeys.keys = mySSHKeys;
|
||
|
};
|
||
|
|
||
|
environment.shells = [
|
||
|
pkgs.zsh
|
||
|
];
|
||
|
|
||
|
# Enable nix flakes
|
||
|
nix.settings.experimental-features = [
|
||
|
"nix-command"
|
||
|
"flakes"
|
||
|
];
|
||
|
|
||
|
time.timeZone = "America/New_York";
|
||
|
|
||
|
home-manager = {
|
||
|
useGlobalPkgs = true;
|
||
|
useUserPackages = true;
|
||
|
users = {
|
||
|
whovian = {
|
||
|
imports = [
|
||
|
../../home/home.nix
|
||
|
agenix.homeManagerModules.default
|
||
|
nix-index-database.hmModules.nix-index
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
environment.pathsToLink = [
|
||
|
"/share/zsh"
|
||
|
];
|
||
|
|
||
|
/*
|
||
|
Add environment.pathsToLink for auto-completion for system packages (e.g. systemd).
|
||
|
Appears to be required due to [GitHub - nix-community/home-manager]:
|
||
|
https://github.com/nix-community/home-manager/blob/c781b28add41b74423ab2e64496d4fc91192e13a/modules/programs/zsh.nix#L348-L358
|
||
|
[/modules/programs/zsh.nix]
|
||
|
https://github.com/nix-community/home-manager/issues/3521#issuecomment-1367197995
|
||
|
[Issue #3521]
|
||
|
|
||
|
06 June 2024:
|
||
|
Appears to be handled by "programs.zsh.enableCompletion" being enabled.
|
||
|
https://github.com/NixOS/nixpkgs/blob/49f6869f71fb2724674ccc18670bbde70843d43f/nixos/modules/programs/zsh/zsh.nix#L305
|
||
|
I appear to have "programs.zsh.enableCompletion" disabled for some reason?
|
||
|
Need to look into this again at some point, I suppose.
|
||
|
*/
|
||
|
|
||
|
##############################################################################
|
||
|
|
||
|
/*
|
||
|
This option defines the first version of NixOS you have installed on this particular machine,
|
||
|
and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
|
||
|
|
||
|
Most users should NEVER change this value after the initial install, for any reason,
|
||
|
even if you've upgraded your system to a new NixOS release.
|
||
|
|
||
|
This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
|
||
|
so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
|
||
|
to actually do that.
|
||
|
|
||
|
This value being lower than the current NixOS release does NOT mean your system is
|
||
|
out of date, out of support, or vulnerable.
|
||
|
|
||
|
Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
||
|
and migrated your data accordingly.
|
||
|
|
||
|
For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
||
|
*/
|
||
|
system.stateVersion = "24.11";
|
||
|
}
|