···11+{ config, pkgs, ... }:
22+{
33+ imports = [
44+ ./hardware.nix
55+ ./packages.nix
66+ # There are secrets here I haven't put into sops yet
77+ # ./services/esquid.nix
88+ # ./services/starbound.nix
99+ ./services/openssh.nix
1010+ ];
1111+1212+ sops = {
1313+ defaultSopsFile = ../secrets/lily.yaml;
1414+ defaultSopsFormat = "yaml";
1515+ age.keyFile = "/home/mou/.config/sops/age/keys.txt";
1616+ secrets = {
1717+ "passwordHashes/root".neededForUsers = true;
1818+ "passwordHashes/mou".neededForUsers = true;
1919+ };
2020+ };
2121+2222+ networking.hostName = "lily";
2323+ time.timeZone = "America/New_York";
2424+2525+ services = {
2626+ acpid.enable = true;
2727+ fail2ban.enable = true;
2828+ fwupd.enable = true;
2929+ smartd.enable = true;
3030+ thermald.enable = true;
3131+ };
3232+3333+ environment = {
3434+ sessionVariables = {
3535+ XDG_CACHE_HOME = "$HOME/.cache";
3636+ XDG_CONFIG_HOME = "$HOME/.config";
3737+ XDG_DATA_HOME = "$HOME/.local/share";
3838+ XDG_STATE_HOME = "$HOME/.local/state";
3939+ };
4040+ loginShellInit = ''
4141+ if [ -e /etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh ]
4242+ then
4343+ . /etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh
4444+ fi
4545+ '';
4646+ };
4747+4848+ users = {
4949+ groups.mou = {
5050+ gid = 1000;
5151+ };
5252+ users = {
5353+ root.hashedPasswordFile = config.sops.secrets."passwordHashes/root".path;
5454+ mou = {
5555+ isNormalUser = true;
5656+ group = "mou";
5757+ extraGroups = [ "users" "wheel" ];
5858+ shell = pkgs.loksh;
5959+ hashedPasswordFile = config.sops.secrets."passwordHashes/mou".path;
6060+ };
6161+ };
6262+ };
6363+6464+ nix = {
6565+ optimise.automatic = true;
6666+ gc.automatic = true;
6767+ settings = {
6868+ use-xdg-base-directories = true;
6969+ auto-optimise-store = true;
7070+ experimental-features = [ "nix-command" "flakes" ];
7171+ };
7272+ };
7373+7474+ # This option defines the first version of NixOS you have installed on this particular machine,
7575+ # and is used to maintain compatibility with application data (e.g. databases) created on older
7676+ # NixOS versions. Most users should NEVER change this value after the initial install, for any
7777+ # reason, even if you've upgraded your system to a new NixOS release. This value does NOT affect
7878+ # the Nixpkgs version your packages and OS are pulled from, so changing it will NOT upgrade your
7979+ # system. This value being lower than the current NixOS release does NOT mean your system is out
8080+ # of date, out of support, or vulnerable. Do NOT change this value unless you have manually
8181+ # inspected all the changes it would make to your configuration, and migrated your data
8282+ # accordingly. For more information, see `man configuration.nix` or
8383+ # https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
8484+ system.stateVersion = "24.05"; # Did you read the comment?
8585+}