aboutsummaryrefslogtreecommitdiff
path: root/form/configuration.nix
blob: f7703f8edbabb15b24e3e5b75e837623fc423aee (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
77
78
{
  config,
  lib,
  pkgs,
  inputs,
  ...
}:
{
  imports = [
    ../nixos
    ./hardware-configuration.nix
  ];

  config.nixos = {
    username = "stefan";
    hostname = "form";
    wifi = true;
    keyd.enable = false;
  };

  config = {
    system.stateVersion = "24.11";

    hardware.graphics.enable = true;
    hardware.graphics.enable32bit = true;
    boot.initrd.kernelModules = [
      "nvidia"
      "nvidia_uvm"
      "nvidia_drm"
    ];
    boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ];
    boot.kernelParams = ["module_blacklist=amdgpu"];
    boot.kernelPackages = lib.mkForce pkgs.linuxPackages;
    services.xserver.videoDrivers = [ "nvidia" ];
    # services.desktopManager.plasma6.enable = true;
    # services.displayManager.sddm = {
    #   enable = false;
    # };
    console.earlySetup = true;
    hardware.nvidia = {
      modesetting.enable = true;
      open = true;
      nvidiaSettings = true;
      package = config.boot.kernelPackages.nvidiaPackages.stable;
      powerManagement.enable = true;
    };
    hardware.opengl.extraPackages = with pkgs; [
      # libva-vdpau-driver
      nvidia-vaapi-driver
      vdpauinfo
      libva-utils
      libva-vdpau-driver
    ];
    # services.openssh.enable = true;

    services.xserver = {
      enable = true;
      displayManager = {
        defaultSession = "sway";
        # gdm.enable = true;
        sddm.enable = true;
      };
      desktopManager.plasma6.enable = true;
      desktopManager.gnome.enable = true;
    };
    programs.ssh.askPassword = pkgs.lib.mkForce "${pkgs.kdePackages.ksshaskpass.out}/bin/ksshaskpass";
    virtualisation.docker = {
      enable = true;
      rootless = {
        enable = true;
        setSocketVariable = true;
      };
    };
    nixos = {
      osu.enable = true;
    };
  };
}