mirror of
https://github.com/Stunkymonkey/nixos.git
synced 2025-05-24 09:54:40 +02:00
Compare commits
No commits in common. "ca9a3149a5388f8e48722f504832c4290e4a2142" and "11a32bf462df6e9ba81f5ba36057a2c1097850f7" have entirely different histories.
ca9a3149a5
...
11a32bf462
6 changed files with 28 additions and 45 deletions
18
flake.lock
generated
18
flake.lock
generated
|
@ -207,11 +207,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1746341346,
|
||||
"narHash": "sha256-WjupK5Xpc+viJlJWiyPHp/dF4aJItp1BPuFsEdv2/fI=",
|
||||
"lastModified": 1745955289,
|
||||
"narHash": "sha256-mmV2oPhQN+YF2wmnJzXX8tqgYmUYXUj3uUUBSTmYN5o=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "0833dc8bbc4ffa9cf9b0cbfccf1c5ec8632fc66e",
|
||||
"rev": "72081c9fbbef63765ae82bff9727ea79cc86bd5b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -222,11 +222,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1746183838,
|
||||
"narHash": "sha256-kwaaguGkAqTZ1oK0yXeQ3ayYjs8u/W7eEfrFpFfIDFA=",
|
||||
"lastModified": 1746055187,
|
||||
"narHash": "sha256-3dqArYSMP9hM7Qpy5YWhnSjiqniSaT2uc5h2Po7tmg0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "bf3287dac860542719fe7554e21e686108716879",
|
||||
"rev": "3e362ce63e16b9572d8c2297c04f7c19ab6725a5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -276,11 +276,11 @@
|
|||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1746232882,
|
||||
"narHash": "sha256-MHmBH2rS8KkRRdoU/feC/dKbdlMkcNkB5mwkuipVHeQ=",
|
||||
"lastModified": 1745930157,
|
||||
"narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7a2622e2c0dbad5c4493cb268aba12896e28b008",
|
||||
"rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -85,7 +85,6 @@
|
|||
enable = true;
|
||||
settings.noLambdaPatternNames = true;
|
||||
};
|
||||
flake-checker.enable = true;
|
||||
markdownlint.enable = true;
|
||||
nixfmt-rfc-style.enable = true;
|
||||
shellcheck.enable = true;
|
||||
|
|
|
@ -13,6 +13,7 @@ _: {
|
|||
];
|
||||
|
||||
kernelModules = [
|
||||
"dm-snapshot"
|
||||
"e1000e"
|
||||
"nvme"
|
||||
];
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
"virtio_pci"
|
||||
"virtio_scsi"
|
||||
];
|
||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
@ -17,15 +17,14 @@ in
|
|||
my.hardware = {
|
||||
bluetooth.enable = true;
|
||||
debug.enable = true;
|
||||
drive-monitor.enable = true;
|
||||
drive-monitor = {
|
||||
enable = true;
|
||||
};
|
||||
firmware = {
|
||||
enable = true;
|
||||
inherit cpuFlavor;
|
||||
};
|
||||
graphics = {
|
||||
enable = true;
|
||||
inherit cpuFlavor;
|
||||
};
|
||||
graphics.cpuFlavor = cpuFlavor;
|
||||
id-card.enable = true;
|
||||
keychron.enable = true;
|
||||
monitor.enable = true;
|
||||
|
|
|
@ -9,46 +9,29 @@ let
|
|||
in
|
||||
{
|
||||
options.my.hardware.graphics = with lib; {
|
||||
enable = mkEnableOption "graphics configuration";
|
||||
cpuFlavor = mkOption {
|
||||
type =
|
||||
with types;
|
||||
nullOr (enum [
|
||||
"amd"
|
||||
"intel"
|
||||
]);
|
||||
type = with types; nullOr (enum [ "intel" ]);
|
||||
default = null;
|
||||
example = "intel";
|
||||
description = "Which kind of GPU";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable (
|
||||
lib.mkMerge [
|
||||
{
|
||||
hardware.graphics.enable = true;
|
||||
}
|
||||
# Intel GPU
|
||||
(lib.mkIf (cfg.cpuFlavor == "intel") {
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
||||
};
|
||||
hardware.graphics.extraPackages = with pkgs; [
|
||||
config = lib.mkMerge [
|
||||
# Intel GPU
|
||||
(lib.mkIf (cfg.cpuFlavor == "intel") {
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
|
||||
};
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
intel-media-driver # LIBVA_DRIVER_NAME=iHD
|
||||
vaapiIntel # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
];
|
||||
})
|
||||
|
||||
(lib.mkIf (cfg.cpuFlavor == "amd") {
|
||||
hardware.graphics.extraPackages = with pkgs; [
|
||||
amdvlk
|
||||
];
|
||||
hardware.graphics.extraPackages32 = with pkgs; [
|
||||
driversi686Linux.amdvlk
|
||||
];
|
||||
})
|
||||
]
|
||||
);
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue