summaryrefslogtreecommitdiff
path: root/pc_t14.nix
blob: e1afb213a12197c4c228edcfc405852705b591ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
{ config, lib, pkgs, ... }:

{
    networking = {
        hostName = "nixT14s";

        interfaces.enp2s0f0.useDHCP = true;
        interfaces.wlp3s0.useDHCP = true;
    };

    networking = {
        # We want to NAT container traffic
        nat = {
            enable = true;
            internalInterfaces = [ "ve-test" ];
            externalInterface = "wlp3s0";
        };
    };

    boot = {
        kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "5.8") pkgs.linuxPackages_5_10;

        kernelParams = [ "amdgpu.dc=1" ];

        loader = {
            systemd-boot.enable = true;

            efi.canTouchEfiVariables = true;
            efi.efiSysMountPoint = "/boot";
        };
        initrd.luks.devices = {
            lvmroot = {
                device = "/dev/disk/by-uuid/3aa2923c-928d-4050-82dc-21be53b2af8e";
                preLVM = true;
            };
        };

        initrd.kernelModules = [ "amdgpu" ];
    };

    hardware = {
        acpilight.enable = true;

        opengl = {
            driSupport = true;
            driSupport32Bit = true;

            extraPackages = with pkgs; [
                amdvlk
            ];

            # extraPackages32 = with pkgs; [
            #     driversi686Linux.amdvlk
            # ];
        };
    };

    services = {
        tlp = {
            enable = true;
            settings = {
                START_CHARGE_THRESH_BAT0 = 90;
                STOP_CHARGE_THRESH_BAT0 = 95;
            };
        };
        xserver.videoDrivers = ["amdgpu"];
        fwupd.enable = true;
    };

    environment.systemPackages = with pkgs; [
        linuxPackages.acpi_call

        acpilight
    ];
}