diff --git a/modules/amd-drivers.nix b/modules/amd-drivers.nix new file mode 100644 index 0000000..bab6b70 --- /dev/null +++ b/modules/amd-drivers.nix @@ -0,0 +1,23 @@ +{ lib, pkgs, config, ... }: + +with lib; +let + cfg = config.drivers.amdgpu; +in +{ + options.drivers.amdgpu = { + enable = mkEnableOption "enable amd drivers"; + }; + + config = mkIf cfg.enable { + systemd.tmpfiles.rules = [ "L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}" ]; + services.xserver.videoDrivers = [ "amdgpu" ]; + + # opengl + hardware.graphics = { + extraPackages = with pkgs; [ + libva-utils + ]; + }; + }; +} \ No newline at end of file diff --git a/modules/intel-drivers.nix b/modules/intel-drivers.nix new file mode 100644 index 0000000..5207420 --- /dev/null +++ b/modules/intel-drivers.nix @@ -0,0 +1,27 @@ +{ lib, pkgs, config, ... }: + +with lib; +let + cfg = config.drivers.intel; +in +{ + options.drivers.intel = { + enable = mkEnableOption "enable intel graphics drivers"; + }; + + config = mkIf cfg.enable { + nixpkgs.config.packageOverrides = pkgs: { + vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; + }; + + # opengl + hardware.graphics = { + extraPackages = with pkgs; [ + intel-media-driver + libvdpau-media-driver + libva + libva-utils + ]; + }; + }; +} \ No newline at end of file