nixos/hosts/kim/default.nix

102 lines
2.7 KiB
Nix
Raw Normal View History

2024-05-27 12:20:39 -04:00
# kim
# System configuration for a vm on my desktop
2024-05-17 07:48:51 -04:00
{ inputs, globals, ... }:
2024-05-17 07:48:51 -04:00
with inputs;
inputs.nixpkgs.lib.nixosSystem {
2024-05-17 07:48:51 -04:00
system = "x86_64-linux";
modules = [
globals
lix-module.nixosModules.default
2024-05-17 07:48:51 -04:00
home-manager.nixosModules.home-manager
2024-05-19 19:45:26 -04:00
sops-nix.nixosModules.sops
2024-05-21 11:34:41 -04:00
./hardware-configuration.nix
./audio.nix
./netbird.nix
../../modules/common
../../modules/nixos
2024-05-17 07:48:51 -04:00
{
2024-05-27 12:37:47 -04:00
home-manager.useGlobalPkgs = true;
2024-05-17 07:48:51 -04:00
# something with overlays, I don't get those yet.
nixpkgs.config.permittedInsecurePackages = [
"jitsi-meet-1.0.8043"
];
2024-05-17 07:48:51 -04:00
# Hardware
physical = true;
networking.hostName = "kim";
networking.useDHCP = nixpkgs.lib.mkDefault true;
networking.networkmanager.unmanaged = [ "tailscale0" ];
2024-05-17 07:48:51 -04:00
# TODO: identityFile = "/home/${globals.user}/.ssh/id_ed2519";
# TODO: passwordHash = nixpkgs.lib.fileContents ../../password.sha512;
# Theming?
2024-05-19 19:33:20 -04:00
sops = {
defaultSopsFile = ../../secrets/secrets.yaml;
defaultSopsFormat = "yaml";
age.keyFile = "/home/annika/.config/sops/age/keys.txt";
age.sshKeyPaths = [
"/home/annika/.ssh/id_ed25519"
];
2024-05-19 19:33:20 -04:00
};
# TODO: Temporary, remove eventually!
# networking.networkmanager.enable = true;
time.timeZone = "America/New_York";
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nixpkgs.config.allowUnfree = true;
system.stateVersion = "23.11";
home-manager.backupFileExtension = "backup";
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
# Enable hardware features
audio.enable = true;
2024-05-25 09:03:59 -04:00
gui.enable = true;
2024-05-25 08:43:28 -04:00
services.openssh.enable = true;
services.flatpak.enable = true;
# Apps
discord.enable = true;
element.enable = true;
firefox.enable = true;
2024-07-31 13:21:09 -04:00
kcalc.enable = true;
2024-05-27 10:21:53 -04:00
kitty.enable = true;
# netbird.enable = true; See netbird.nix (I can't access the sops stuff from here?)
openrgb.enable = true;
prusa-slicer.enable = true;
2024-05-19 19:33:20 -04:00
spotifyd.enable = true;
2024-05-26 13:07:54 -04:00
thunderbird.enable = true;
2024-05-21 11:50:54 -04:00
# Gaming
steam.enable = true;
# Programming Stuff
nixpkgs-fmt.enable = true;
2024-08-17 11:18:22 -04:00
platformio.enable = true;
python3.enable = true;
vscode.enable = true;
2024-08-27 14:37:35 -04:00
virt-manager.enable = true;
# Utilities
# git is not optional
2024-05-28 10:01:49 -04:00
docker.enable = true;
2024-05-27 09:36:51 -04:00
yubikey.enable = true;
2024-07-13 10:38:06 -04:00
kdeconnect.enable = true;
2024-07-15 20:36:54 -04:00
tailscale.enable = true;
2024-05-27 12:37:47 -04:00
# TODO: Move this out
2024-07-13 13:19:41 -04:00
nix.gc = {
automatic = true;
randomizedDelaySec = "14m";
options = "--delete-older-than 10d";
};
2024-05-17 07:48:51 -04:00
}
];
}