104 lines
3.2 KiB
Nix
104 lines
3.2 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’).
|
||
|
||
{
|
||
lib,
|
||
inputs,
|
||
config,
|
||
pkgs,
|
||
...
|
||
}:
|
||
{
|
||
imports = [ ./disko-config.nix ];
|
||
|
||
disko.devices.disk.main.device = "/dev/sda";
|
||
|
||
networking.networkmanager.enable = true;
|
||
networking.hostName = "pianonix"; # Define your hostname.
|
||
|
||
# Set your time zone.
|
||
time.timeZone = "Europe/Berlin";
|
||
|
||
modules = {
|
||
nix-settings.enable = true;
|
||
xserver-defaults.enable = true;
|
||
keymap.enable = true;
|
||
builder.enable = false;
|
||
system.boot-efi.enable = true;
|
||
sound.enable = true;
|
||
|
||
locales.enable = true;
|
||
pcmanfm.enable = true;
|
||
|
||
# i3.enable = true;
|
||
# gdm.enable = true;
|
||
redshift.enable = true;
|
||
|
||
wayland.enable = true;
|
||
# hyprland.enable = true;
|
||
# tuigreet.enable = true;
|
||
|
||
# virtualbox.enable = true;
|
||
users-julian.enable = true;
|
||
# syncthing.enable = true;
|
||
xdg-portal.enable = true;
|
||
polkit.enable = true;
|
||
keyring.enable = true;
|
||
};
|
||
|
||
users.mutableUsers = false;
|
||
users.users.root.hashedPassword = "$y$j9T$mDQgl0GARH9fKg01akW1V0$2E5Z4TVra0RbY.tO2B6rW2YnVtJ6tbzZkJRvGWciSkB";
|
||
# no password
|
||
users.users.julian.hashedPassword = "$y$j9T$khuv2ubKt48fkWS754jkL1$/YSqi4mWV9ccfnMAWCF0yumnwZrJ/ddg2TZTuZaDsi8";
|
||
|
||
# Enable the Desktop Environment.
|
||
# services.xserver.displayManager.lightdm.enable = true;
|
||
services.displayManager.autoLogin = {
|
||
enable = true;
|
||
user = "julian";
|
||
};
|
||
|
||
services.xserver.desktopManager = {
|
||
# xterm.enable = false;
|
||
lxqt = {
|
||
enable = true;
|
||
};
|
||
};
|
||
xdg.portal.lxqt.enable = true;
|
||
|
||
services.openssh = {
|
||
enable = true;
|
||
# require public key authentication for better security
|
||
settings.PasswordAuthentication = false;
|
||
settings.KbdInteractiveAuthentication = false;
|
||
settings.PermitRootLogin = "yes";
|
||
};
|
||
users.users."root".openssh.authorizedKeys.keys = [
|
||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDVk/m4ydcYXzHxTWeNw2MlwxKU+JirTVOeHsYR4wdTokwYyNWZ3/zPcU4+XekSRatwJW1LJYrZ1Y5IJkobzgnOvYVI7SXZ1Tbzb1kAcnChSt+Dp/pKdMPZ8yY3PTFZh+R5F3rWFA/YZqTRhh0vuxPIVbLl7zOPExWwYGn9crkZaYZvKHVvgE5660hXo9pxbUKsSs+DIy/AE7gfKiZLusY95nk9T/jZ7Vmhl0UsF0RiDsfxgE664/vEKe8b+82kKCDt5nJVe8THSrjaw4+NUhef6R8UoUO1/Pn4TKq3Gil3Z36wPEPdkw2lYzX+d1EFyaC3hZJedSUfdFliPOejIbNvvhPBBD1wAGxxyuJZB5KLwWN7/efwCgw45buLbVfUuwwug7K7GK84A3yzqClbZKKv8rYdO04UG64A+Taq2LeyxQIDjygTgGk/1j/0Neb1RO0FbjlbTeNMZ54P+u7BTEcikJCsbFeseWDtYzupQtLt96KMbcdRgHy0CTGqFHE+my8= julian@julian-aspi"
|
||
];
|
||
|
||
# Packages needed as root
|
||
environment.systemPackages = with pkgs; [
|
||
vim
|
||
htop
|
||
mc
|
||
];
|
||
|
||
## Raspberry pi specific config
|
||
# Prevent host becoming unreachable on wifi after some time (for raspberry pi)
|
||
networking.networkmanager.wifi.powersave = false;
|
||
# Enable audio devices on raspberry pi
|
||
boot.kernelParams = [
|
||
"snd_bcm2835.enable_hdmi=1"
|
||
"snd_bcm2835.enable_headphones=1"
|
||
];
|
||
boot.loader.raspberryPi.firmwareConfig = ''
|
||
dtparam=audio=on
|
||
'';
|
||
|
||
# ======================== DO NOT CHANGE THIS ========================
|
||
system.stateVersion = "22.11";
|
||
# ======================== DO NOT CHANGE THIS ========================
|
||
}
|