generated from john/nix-docker
37 lines
1001 B
Nix
37 lines
1001 B
Nix
{ pkgs, userSettings, systemSettings, ... }:
|
|
{
|
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
# (pkgs.writeShellScriptBin "nrbs" "sudo nixos-rebuild switch")
|
|
# (pkgs.writeShellScriptBin "nrbsu" "sudo nix-channel --update && sudo nixos-rebuild switch")
|
|
bash
|
|
busybox
|
|
git
|
|
eza
|
|
];
|
|
|
|
# For SSH access
|
|
services.openssh.enable = true;
|
|
|
|
# Networking stuff
|
|
services.avahi = { enable = true; nssmdns4 = true; };
|
|
|
|
# Uses rust-based sudo
|
|
security.sudo-rs = {
|
|
enable = true;
|
|
execWheelOnly = false;
|
|
wheelNeedsPassword = false; # allows sudo without password for those in the wheel group
|
|
};
|
|
|
|
users.users.${userSettings.username} = {
|
|
isNormalUser = true;
|
|
uid = 1000;
|
|
extraGroups = [ "wheel" "networkmanager" ];
|
|
openssh.authorizedKeys.keyFiles = [ /root/.ssh/authorized_keys ];
|
|
};
|
|
|
|
time.timeZone = "${systemSettings.timeZone}";
|
|
networking.hostName = systemSettings.hostname;
|
|
}
|