new nixos dotfile layout

Signed-off-by: Michał Czyż <mike@c2yz.com>
This commit is contained in:
2024-11-04 13:21:48 +01:00
parent cbfbe20592
commit 720c05f9b0
119 changed files with 3895 additions and 4549 deletions

View File

@@ -1,43 +0,0 @@
# 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).
{
inputs,
outputs,
lib,
config,
pkgs,
...
}: {
# You can import other NixOS modules here
imports = [
# If you want to use modules your own flake exports (from modules/nixos):
# outputs.nixosModules.example
# Or modules from other flakes (such as nixos-hardware):
# inputs.hardware.nixosModules.common-cpu-amd
# inputs.hardware.nixosModules.common-ssd
# You can also split up your configuration and import pieces of it here:
# ./users.nix
../common
./gui.nix
# nvidia drivers
./nvidia.nix
# Import your generated (nixos-generate-config) hardware configuration
./hardware-configuration.nix
];
# Hostname
networking.hostName = "zion";
# 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. Its 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 = "23.11"; # Did you read the comment?
}

View File

@@ -1,95 +0,0 @@
{
inputs,
outputs,
lib,
config,
pkgs,
...
}: {
# X Server settings
services.xserver = {
enable = true;
layout = "pl";
xkbVariant = "";
dpi = 100;
displayManager = {
lightdm = {
enable = false;
};
startx = {
enable = true;
};
setupCommands = ''
LEFT='HDMI-0'
CENTER='DP-2'
RIGHT='DP-0'
${pkgs.xorg.xrandr}/bin/xrandr \
--output $LEFT --mode 1920x1080 --rate 60.00 --pos 0x360 \
--output $CENTER --primary --mode 2560x1440 --rate 74.92 --pos 1920x0 \
--output $RIGHT --mode 2560x1440 --rate 74.92 --pos 4480x0
'';
};
windowManager = {
dwm = {
enable = true;
package = pkgs.dwm-customized;
};
};
desktopManager = {
xfce = {
enable = false;
};
};
xrandrHeads = [
{
output = "HDMI-0";
}
{
output = "DP-2";
primary = true;
}
{
output = "DP-0";
}
];
};
services.autorandr = {
enable = true;
defaultTarget = "zion";
profiles = {
"zion" = {
fingerprint = {
HDMI-0 = "00ffffffffffff004c2db30a000000003416010380301b780a2621a65555a0280d5054bdef80714f81c0810081809500a9c0b3000101023a801871382d40582c4500dd0c1100001e662156aa51001e30468f3300dd0c1100001e000000fd00184b0f5117000a202020202020000000fc00543232433330300a202020202001dc020325f14d901f04130514031220212207162309070783010000e2000f67030c001000b82d011d007251d01e206e285500dd0c1100001e011d00bc52d01e20b8285540dd0c1100001e011d8018711c1620582c2500dd0c1100009e011d80d0721c1620102c2580dd0c1100009e000000000000000000000000000000000000ec";
DP-2 = "00ffffffffffff000472c90672bb9004311e0104b53c22783f0c95ab554ca0240d5054bfef80714f8140818081c081009500b300d1c0565e00a0a0a029503020350055502100001a000000fd00304b70701e010a202020202020000000fc005647323730550a202020202020000000ff005445484545303034383532430a0146020318f14b010203040590111213141f23090707830100009774006ea0a034501720680855502100001a2a4480a0703827403020350055502100001a023a801871382d40582c450055502100001e011d8018711c1620582c250055502100009e011d007251d01e206e28550055502100001e0000000000000000000000000040";
DP-0 = "00ffffffffffff000472c9064bbc9004311e0104b53c22783f0c95ab554ca0240d5054bfef80714f8140818081c081009500b300d1c0565e00a0a0a029503020350055502100001a000000fd00304b70701e010a202020202020000000fc005647323730550a202020202020000000ff005445484545303034383532430a016c020318f14b010203040590111213141f23090707830100009774006ea0a034501720680855502100001a2a4480a0703827403020350055502100001a023a801871382d40582c450055502100001e011d8018711c1620582c250055502100009e011d007251d01e206e28550055502100001e0000000000000000000000000040";
};
config = {
HDMI-0 = {
enable = true;
position = "0x360";
mode = "1920x1080";
rate = "60.00";
};
DP-2 = {
enable = true;
primary = true;
position = "1920x0";
mode = "2560x1440";
rate = "74.92";
};
DP-0 = {
enable = true;
position = "4480x0";
mode = "2560x1440";
rate = "74.92";
};
};
};
};
};
}

View File

@@ -1,43 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
fileSystems."/" = {
device = "/dev/disk/by-uuid/8af14034-1aec-4b6f-b8c4-de13e6987ac5";
fsType = "ext4";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/CEC7-B082";
fsType = "vfat";
};
swapDevices = [
{device = "/dev/disk/by-uuid/00a782e1-71c2-4121-8608-9ed1104d6aa5";}
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp34s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@@ -1,49 +0,0 @@
{
inputs,
outputs,
lib,
config,
pkgs,
...
}: {
# Enable OpenGL
hardware.opengl = {
enable = true;
driSupport = true;
driSupport32Bit = true;
};
# Load nvidia driver for Xorg and Wayland
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
# Currently alpha-quality/buggy, so false is currently the recommended setting.
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
}