41 lines
1.1 KiB
Nix
Executable file
41 lines
1.1 KiB
Nix
Executable file
{ config, lib, pkgs, ... }:
|
|
|
|
{
|
|
environment = {
|
|
# As of the 1st of May 2023, the default packages are nano, perl, rsync and strace
|
|
# I don't need any of them, so I just empty the list
|
|
defaultPackages = [];
|
|
variables = {
|
|
# Environment variables go here
|
|
EDITOR = "micro";
|
|
};
|
|
};
|
|
|
|
# Set up /tmp
|
|
boot.tmp = {
|
|
useTmpfs = lib.mkDefault true;
|
|
# Cleaning out /tmp at boot if it's a tmpfs is quite stupid
|
|
cleanOnBoot = !config.boot.tmp.useTmpfs;
|
|
};
|
|
|
|
# Set up secrets
|
|
age = {
|
|
identityPaths = [
|
|
"/etc/ssh/ssh_host_rsa_key"
|
|
"/etc/ssh/ssh_host_ed25519_key"
|
|
# This key has a passcode, so if you need to use it you'll have to
|
|
# enter the password A LOT of times. Only on the first setup tho
|
|
"/tmp/id_ed25519_bootstrap"
|
|
];
|
|
};
|
|
|
|
/*
|
|
I used to keep the host keys in the repo as a secret, but since I use the
|
|
host keys for decrypting too I'm not sure encrypting a key with itself
|
|
is a good idea. Now the host keys will need to be placed manually where they are needed
|
|
For first time installs they are generated by services.openssh.hostKeys on servers, and
|
|
manually on everything else
|
|
*/
|
|
|
|
system.stateVersion = "23.05";
|
|
}
|