138 lines
4 KiB
Nix
138 lines
4 KiB
Nix
# Edit this configuration file to define what should be installed on
|
||
# your system. Help is available in the configuration.nix(5) man page
|
||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||
{ pkgs
|
||
, config
|
||
, inputs
|
||
, ...
|
||
}:
|
||
|
||
{
|
||
imports = [
|
||
# Include the results of the hardware scan.
|
||
./hardware-configuration.nix
|
||
./disko.nix
|
||
../../modules/moritz/default.nix
|
||
../../modules/shared.nix
|
||
];
|
||
|
||
# This is your user login name.
|
||
users.users.user.name = "moritz";
|
||
|
||
users.users.root.openssh.authorizedKeys.keys = [
|
||
''
|
||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDHlemuKagHwz2T5rEwgJNlVUdUdOXyPtCEzD73CrwY2zmpR4AMj7y9u3Rm7HwHUDjLap1ZFwg+53bAsVP6HFZccCXoIfO/8BL0WDGQJrfgb+A+UiRhSqSvyZ77bGJkadbBkadguz3qR3PHcb41DOlhuqVcHxsY8ceHMxAuyb0pLJVJLeytMD+CHS/r7hoj2hckTNAZ+VhCXBtdZfZ7uPUBxLfluYRNNMmdwCglsg3RUS242nJUzy3A84+CXIGeWmNG9Fu45IDkwMthxSW9klyU9R38R9DBDcugkyb6vz+JKSuRVAa47qh/kmtsYekfL3ul9D2JN32P8S+6ZoXx+gXupGJ0ltwJWAFkhLJ+yeXj9kCOv/mIUmCB14jMGsvKiSwV25O/twyjqe2LEkMVgimgrjEYoHu+ZTyp0iFtUvSrFo4tsAhfWPV9yj4F/hUksW7xKIwq5Niyx7he5M/XddudtnAximyiBDGCdJm1Ejl0UaGa6ZQv7y6VZdx0PyZuraT7l9ub8so6JlE4cVgSSU9vE0IS2QqBuHhsIjh8RVksoTR2NQbeDdGaGpGnq2C8y0rDXwE/EJA4LK45khX/GPn73n8F0kBG8dBrWgRDAEODpmebScO7d5mCeM0z3lPcRmh+3e3DPnVVOl+uR7udlc7NauLzl7q913UtxZaF1PlD7Q== cardno:15_584_308
|
||
''
|
||
];
|
||
|
||
# Set this for clan commands use ssh i.e. `clan machines update`
|
||
# If you change the hostname, you need to update this line to root@<new-hostname>
|
||
# This only works however if you have avahi running on your admin machine else use IP
|
||
clan.core.networking.targetHost = "root@192.168.0.14";
|
||
|
||
my = {
|
||
ai.enable = true;
|
||
profiles = {
|
||
desktop.enable = true;
|
||
gaming.enable = true;
|
||
personal.enable = true;
|
||
personal.mail = true;
|
||
impermanence.enable = true;
|
||
webis.enable = true;
|
||
};
|
||
programs.prismlauncher.enable = true;
|
||
programs.aider.enable = true;
|
||
services.wallpaper.enable = true;
|
||
};
|
||
|
||
home-manager.users.moritz.home.packages = with pkgs; [
|
||
anki
|
||
stable.calibre # NOTE: breaks often in unstable
|
||
];
|
||
|
||
home-manager.users.moritz.services.kanshi.settings = [
|
||
{
|
||
profile.name = "default";
|
||
profile.outputs = [
|
||
{
|
||
adaptiveSync = true;
|
||
criteria = "*";
|
||
scale = 1.2;
|
||
}
|
||
];
|
||
}
|
||
];
|
||
|
||
hardware = {
|
||
keyboard.qmk.enable = true;
|
||
nvidia = {
|
||
modesetting.enable = true;
|
||
open = true;
|
||
};
|
||
nvidia-container-toolkit.enable = true;
|
||
graphics = {
|
||
enable = true;
|
||
enable32Bit = true;
|
||
};
|
||
|
||
bluetooth.enable = true;
|
||
};
|
||
|
||
boot = {
|
||
# BOOT
|
||
supportedFilesystems = [ "zfs" "btrfs" "ntfs" ];
|
||
loader = {
|
||
systemd-boot.enable = true;
|
||
efi.canTouchEfiVariables = true;
|
||
};
|
||
};
|
||
|
||
# NETWORKING
|
||
networking = {
|
||
defaultGateway = {
|
||
address = "192.168.0.1";
|
||
interface = "enp6s0";
|
||
};
|
||
nameservers = [ "192.168.0.4" ];
|
||
useDHCP = false;
|
||
interfaces.enp6s0 = {
|
||
ipv4.addresses = [
|
||
{
|
||
address = "192.168.0.14";
|
||
prefixLength = 24;
|
||
}
|
||
];
|
||
ipv6.addresses = [
|
||
{
|
||
address = "fe80::60fb:ffc:df6f:e29e";
|
||
prefixLength = 64;
|
||
}
|
||
];
|
||
};
|
||
networkmanager.enable = true;
|
||
};
|
||
|
||
services = {
|
||
xserver.videoDrivers = [ "nvidia" ];
|
||
xserver.xrandrHeads = [
|
||
{ output = "HDMI-1"; }
|
||
{
|
||
output = "HDMI-0";
|
||
primary = true;
|
||
}
|
||
];
|
||
|
||
# Powersaving
|
||
tlp.enable = true;
|
||
};
|
||
|
||
powerManagement.enable = true;
|
||
|
||
# This value determines the NixOS release from which the default
|
||
# settings for stateful data, like file locations and database versions
|
||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||
# this value at the release version of the first install of this system.
|
||
# Before changing this value read the documentation for this option
|
||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||
system.stateVersion = "22.05"; # Did you read the comment?
|
||
}
|