mirror of
https://github.com/deltathetawastaken/dotfiles.git
synced 2025-12-06 07:16:37 +03:00
157 lines
4.9 KiB
Nix
157 lines
4.9 KiB
Nix
# 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.
|
||
{ stable, unstable, config, lib, pkgs, modulesPath, ... }:
|
||
|
||
{
|
||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||
|
||
boot.initrd.prepend = lib.mkOrder 0 [ "${pkgs.fetchurl {
|
||
url = "https://gitlab.freedesktop.org/drm/amd/uploads/9fe228c7aa403b78c61fb1e29b3b35e3/slim7-ssdt";
|
||
sha256 = "sha256-Ef4QTxdjt33OJEPLAPEChvvSIXx3Wd/10RGvLfG5JUs=";
|
||
name = "slim7-ssdt";
|
||
}}" ];
|
||
|
||
hardware.firmware = [
|
||
(pkgs.runCommandNoCC "subwoofer" { } ''
|
||
mkdir -p $out/lib/firmware/
|
||
cp ${pkgs.fetchurl {
|
||
url = "https://raw.githubusercontent.com/darinpp/yoga-slim-7/main/lib/firmware/TAS2XXX38BB.bin";
|
||
sha256 = "sha256-qyZxBlnWEnrgbh0crgFf//pKZMTtCqh+CkA+pUNU/+E=";
|
||
name = "TAS2XXX38BB.bin";
|
||
}} $out/lib/firmware/TAS2XXX38BB.bin
|
||
cp ${pkgs.fetchurl {
|
||
url = "https://raw.githubusercontent.com/darinpp/yoga-slim-7/main/lib/firmware/TIAS2781RCA4.bin";
|
||
sha256 = "sha256-Zj7mwS8DsBinZ8BYvcySc753Aq/xid7vAeQOH/oir6Q=";
|
||
name = "TIAS2781RCA4.bin";
|
||
}} $out/lib/firmware/TIAS2781RCA4.bin
|
||
'')
|
||
pkgs.wireless-regdb
|
||
];
|
||
|
||
# 5 GHZ wifi
|
||
boot.extraModprobeConfig = ''
|
||
options cfg80211 ieee80211_regdom="RU"
|
||
'';
|
||
|
||
|
||
services.fstrim = {
|
||
enable = true;
|
||
interval = "weekly";
|
||
};
|
||
|
||
programs.nh = {
|
||
enable = true;
|
||
clean.enable = true;
|
||
clean.extraArgs = "--keep-since 7d --keep 4";
|
||
};
|
||
|
||
boot.loader.systemd-boot.enable = true;
|
||
|
||
boot.kernelParams = [
|
||
"rtc_cmos.use_acpi_alarm=1"
|
||
"ideapad_laptop.allow_v4_dytc=1"
|
||
"amd_pstate=active"
|
||
"initcall_blacklist=acpi_cpufreq_init"
|
||
"nowatchdog"
|
||
"amd_pstate.shared_mem=1"
|
||
];
|
||
|
||
boot.kernelModules = [ "amd-pstate" "acpi_call" "amdgpu" "kvm-amd" "vfat" "nls_cp437" "nls_iso8859-1" ];
|
||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "usbhid" "sd_mod" "vfat" "nls_cp437" "nls_iso8859-1" ];
|
||
boot.loader.efi.canTouchEfiVariables = true;
|
||
boot.loader.efi.efiSysMountPoint = "/boot";
|
||
boot.initrd.kernelModules = [ ];
|
||
boot.kernelPackages = unstable.linuxPackages_xanmod_latest;
|
||
boot.extraModulePackages = with config.boot.kernelPackages; [ usbip.out ];
|
||
boot.kernelPackages =
|
||
with builtins; with lib; let
|
||
latestCompatibleVersion = config.boot.zfs.package.latestCompatibleLinuxPackages.kernel.version;
|
||
xanPackages = filterAttrs (name: packages: hasSuffix "_xanmod" name && (tryEval packages).success) pkgs.linuxKernel.packages;
|
||
compatiblePackages = filter (packages: compareVersions packages.kernel.version latestCompatibleVersion <= 0) (attrValues xanPackages);
|
||
orderedCompatiblePackages = sort (x: y: compareVersions x.kernel.version y.kernel.version > 0) compatiblePackages;
|
||
in head orderedCompatiblePackages;
|
||
|
||
boot.plymouth.enable = false;
|
||
|
||
boot.supportedFilesystems = [ "zfs" ];
|
||
|
||
boot.initrd.extraUtilsCommands = ''
|
||
copy_bin_and_libs ${pkgs.multipath-tools}/bin/kpartx
|
||
'';
|
||
|
||
boot.initrd.luks = {
|
||
yubikeySupport = true;
|
||
devices."cryptroot0" = {
|
||
device = "/dev/nvme0n1p2";
|
||
postOpenCommands = "
|
||
kpartx -u /dev/mapper/cryptroot0
|
||
kpartx -u /dev/mapper/cryptroot0p1
|
||
kpartx -u /dev/mapper/cryptroot0p2
|
||
";
|
||
yubikey = {
|
||
slot = 2;
|
||
gracePeriod = 7;
|
||
keyLength = 64;
|
||
saltLength = 16;
|
||
twoFactor = false;
|
||
storage = {
|
||
device = "/dev/nvme0n1p1";
|
||
fsType = "vfat";
|
||
path = "/crypt-storage/default";
|
||
};
|
||
};
|
||
};
|
||
};
|
||
|
||
fileSystems."/boot" = {
|
||
device = "/dev/disk/by-uuid/4E0B-6C2F";
|
||
fsType = "vfat";
|
||
};
|
||
|
||
|
||
fileSystems."/" =
|
||
{ device = "zroot/ROOT/default";
|
||
fsType = "zfs";
|
||
};
|
||
|
||
fileSystems."/nix/store" =
|
||
{ device = "zroot/nix/store";
|
||
fsType = "zfs";
|
||
};
|
||
|
||
fileSystems."/var/log" =
|
||
{ device = "zroot/var/log";
|
||
fsType = "zfs";
|
||
};
|
||
|
||
swapDevices =
|
||
[ { device = "/dev/disk/by-uuid/a2ff20bd-56f3-4c83-b1b4-933ba0c82f36"; }
|
||
];
|
||
|
||
hardware.opengl = {
|
||
enable = true;
|
||
driSupport = true;
|
||
driSupport32Bit = true;
|
||
extraPackages = [ pkgs.amdvlk ];
|
||
extraPackages32 = [ pkgs.driversi686Linux.amdvlk ];
|
||
|
||
# package = inputs.hyprland.inputs.nixpkgs.legacyPackages."x86_64-linux".mesa.drivers;
|
||
# package32 = inputs.hyprland.inputs.nixpkgs.legacyPackages."x86_64-linux".pkgsi686Linux.mesa.drivers;
|
||
};
|
||
|
||
networking.useDHCP = lib.mkDefault true;
|
||
networking.hostId = "11C0FFEE";
|
||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||
|
||
#services.logind = {
|
||
# lidSwitch = "suspend";
|
||
# lidSwitchDocked = "ignore";
|
||
# lidSwitchExternalPower = "ignore";
|
||
# powerKey = "ignore";
|
||
# powerKeyLongPress = "reboot";
|
||
#};
|
||
|
||
}
|