NixOS configuration for Thor
This commit is contained in:
parent
8e3264376e
commit
77c516cec2
2 changed files with 137 additions and 24 deletions
|
|
@ -7,6 +7,8 @@
|
|||
{
|
||||
imports =
|
||||
[
|
||||
<nixos-hardware/common/cpu/amd>
|
||||
<nixos-hardware/common/pc/laptop/ssd>
|
||||
./base.nix
|
||||
];
|
||||
|
||||
|
|
@ -14,13 +16,6 @@
|
|||
|
||||
hardware.cpu.intel.updateMicrocode = config.hardware.enableRedistributableFirmware;
|
||||
|
||||
hardware.opengl.extraPackages = with pkgs; [
|
||||
vaapiIntel
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
intel-media-driver
|
||||
];
|
||||
|
||||
services.xserver = {
|
||||
videoDrivers = [ "nvidia" ];
|
||||
displayManager.sddm = {
|
||||
|
|
|
|||
148
nixos/thor.nix
148
nixos/thor.nix
|
|
@ -3,31 +3,149 @@
|
|||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
<nixos-hardware/common/cpu/amd>
|
||||
<nixos-hardware/common/pc/ssd>
|
||||
./base.nix
|
||||
/etc/nixos/hardware-configuration.nix
|
||||
];
|
||||
|
||||
hardware.enableRedistributableFirmware = true;
|
||||
boot = {
|
||||
binfmt.emulatedSystems = [ "armv7l-linux" "aarch64-linux" ];
|
||||
extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
|
||||
loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
};
|
||||
initrd = {
|
||||
checkJournalingFS = true;
|
||||
luks.devices = {
|
||||
root = {
|
||||
device = "/dev/nvme0n1p2";
|
||||
preLVM = true;
|
||||
allowDiscards = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.xserver = {
|
||||
videoDrivers = [ "nvidia" ];
|
||||
displayManager.sddm = {
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
keyMap = "us";
|
||||
};
|
||||
|
||||
environment = {
|
||||
pathsToLink = [ "/share/zsh" ];
|
||||
systemPackages = with pkgs; [
|
||||
kakoune
|
||||
tmux
|
||||
vim
|
||||
];
|
||||
};
|
||||
|
||||
hardware = {
|
||||
bluetooth.enable = true;
|
||||
enableRedistributableFirmware = true;
|
||||
pulseaudio.enable = false;
|
||||
};
|
||||
|
||||
i18n.defaultLocale = "it_IT.UTF-8";
|
||||
|
||||
programs = {
|
||||
dconf.enable = true;
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
autoNumlock = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
steam.enable = true;
|
||||
zsh = {
|
||||
enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
hardware.nvidia.prime = {
|
||||
offload.enable = false;
|
||||
sync.enable = true;
|
||||
intelBusId = "PCI:0:2:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
networking = {
|
||||
hostName = "thor"; # Define your hostname.
|
||||
interfaces = {
|
||||
eno1.useDHCP = true;
|
||||
wlp5s0.useDHCP = true;
|
||||
};
|
||||
# hardware.nvidia.modesetting.enable = true;
|
||||
# hardware.nvidia.package = pkgs.linuxPackages.nvidia_x11;
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
networkmanager.enable = true;
|
||||
useDHCP = false;
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Rome";
|
||||
|
||||
services = {
|
||||
avahi = { enable = true; nssmdns = true; };
|
||||
clamav = { daemon.enable = true; updater.enable = true; };
|
||||
dbus.packages = with pkgs; [ gnome.dconf ];
|
||||
gnome.gnome-keyring.enable = true;
|
||||
gvfs = { enable = true; package = pkgs.gnome3.gvfs; };
|
||||
openssh.enable = true;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
pulse.enable = true;
|
||||
jack.enable = true;
|
||||
alsa = {
|
||||
enable = true;
|
||||
support32Bit = true;
|
||||
};
|
||||
# media-session.enable = true;
|
||||
};
|
||||
power-profiles-daemon.enable = true;
|
||||
smartd = { enable = true; notifications.x11.enable = true; };
|
||||
snapper = {
|
||||
configs =
|
||||
let
|
||||
common = {
|
||||
extraConfig = ''
|
||||
ALLOW_USERS="bertof"
|
||||
TIMELINE_CREATE=yes
|
||||
TIMELINE_CLEANUP=yes
|
||||
'';
|
||||
};
|
||||
in
|
||||
{
|
||||
bertof_home = common // { subvolume = "/home/bertof"; };
|
||||
};
|
||||
};
|
||||
thermald.enable = true;
|
||||
xserver = {
|
||||
enable = true;
|
||||
desktopManager.gnome.enable = true;
|
||||
displayManager.gdm = { enable = true; wayland = false; };
|
||||
layout = "us";
|
||||
videoDrivers = [ "nvidia" ];
|
||||
xkbOptions = "eurosign:e";
|
||||
};
|
||||
zerotierone = { enable = true; joinNetworks = [ "8056c2e21cf9c753" ]; };
|
||||
};
|
||||
|
||||
security = {
|
||||
rtkit.enable = true;
|
||||
sudo.extraConfig = ''
|
||||
Defaults pwfeedback
|
||||
'';
|
||||
};
|
||||
|
||||
sound.enable = true;
|
||||
|
||||
users.users.bertof = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "audio" "input" "docker" "libvirtd" "network" "usb" "video" "wheel" ];
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
virtualisation = {
|
||||
docker.enable = true;
|
||||
kvmgt.enable = true;
|
||||
libvirtd.enable = true;
|
||||
podman.enable = true;
|
||||
virtualbox.host.enable = true;
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
system.stateVersion = "21.05"; # Did you read the comment?
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue