From 8a41a675074e9ba417ba18b17770c7c1e0dc354a Mon Sep 17 00:00:00 2001
From: Chris Cochrun <chris@cochrun.xyz>
Date: Wed, 11 May 2022 05:59:46 -0500
Subject: [PATCH] adding hardware decoding on syl

---
 README.org                                | 13 +++++++++++++
 system/kaladin/configuration.nix          |  4 ----
 system/kaladin/hardware-configuration.nix |  3 ---
 system/syl/configuration.nix              | 13 +++++++++++++
 4 files changed, 26 insertions(+), 7 deletions(-)

diff --git a/README.org b/README.org
index cea3482..f964f55 100644
--- a/README.org
+++ b/README.org
@@ -120,6 +120,19 @@ Notice how I am including all of my software here. It may be a big file, but hav
 
   hardware.uinput.enable = true;
 
+  nixpkgs.config.packageOverrides = pkgs: {
+    vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
+  };
+
+  hardware.opengl = {
+    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
+    ];
+  };
   # Enable the X11 windowing system.
   services.xserver = {
     enable = true;
diff --git a/system/kaladin/configuration.nix b/system/kaladin/configuration.nix
index 8e3f6bc..58c6668 100644
--- a/system/kaladin/configuration.nix
+++ b/system/kaladin/configuration.nix
@@ -1,7 +1,3 @@
-# Edit this configuration file to define what should be installed on
-# your system.  Help is available in the configuration.nix(5) man page
-# and in the NixOS manual (accessible by running ‘nixos-help’).
-
 { config, pkgs, ... }:
 
 {
diff --git a/system/kaladin/hardware-configuration.nix b/system/kaladin/hardware-configuration.nix
index b7f1048..1c94260 100644
--- a/system/kaladin/hardware-configuration.nix
+++ b/system/kaladin/hardware-configuration.nix
@@ -1,6 +1,3 @@
-# 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.
 { config, lib, pkgs, modulesPath, ... }:
 
 {
diff --git a/system/syl/configuration.nix b/system/syl/configuration.nix
index a97b617..1c2bcf2 100644
--- a/system/syl/configuration.nix
+++ b/system/syl/configuration.nix
@@ -44,6 +44,19 @@
 
   hardware.uinput.enable = true;
 
+  nixpkgs.config.packageOverrides = pkgs: {
+    vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; };
+  };
+
+  hardware.opengl = {
+    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
+    ];
+  };
   # Enable the X11 windowing system.
   services.xserver = {
     enable = true;