about summary refs log tree commit diff
path: root/pkgs/applications/video
diff options
context:
space:
mode:
authorFranz Pletz <fpletz@fnordicwalking.de>2022-02-18 01:44:12 +0100
committerGitHub <noreply@github.com>2022-02-18 01:44:12 +0100
commit70426f5f8cb3e5b927ad534b916b010514c2da49 (patch)
treea8ee267af4d0349d16b449a54f7527ce902d25f8 /pkgs/applications/video
parent895a3dd67533f11b91bdbcbd290f5e9f94d8f62c (diff)
parent4e68a4175b2da8e8dcf14c366b624934b0cf2076 (diff)
Merge pull request #152697 from blitz/obs-studio-27.2
Diffstat (limited to 'pkgs/applications/video')
-rw-r--r--pkgs/applications/video/obs-studio/Change-product_version-to-user_agent_product.patch26
-rw-r--r--pkgs/applications/video/obs-studio/default.nix12
-rw-r--r--pkgs/applications/video/obs-studio/plugins/obs-websocket.nix30
3 files changed, 33 insertions, 35 deletions
diff --git a/pkgs/applications/video/obs-studio/Change-product_version-to-user_agent_product.patch b/pkgs/applications/video/obs-studio/Change-product_version-to-user_agent_product.patch
deleted file mode 100644
index 0bc7962486075..0000000000000
--- a/pkgs/applications/video/obs-studio/Change-product_version-to-user_agent_product.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 635772c4c5ecf11a0f84e6c9fc273dce6b9a5688 Mon Sep 17 00:00:00 2001
-From: V <v@anomalous.eu>
-Date: Thu, 10 Jun 2021 18:36:22 +0200
-Subject: [PATCH] Change product_version to user_agent_product
-
-This is its name as of CEF 91.1.0.
----
- obs-browser-plugin.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/obs-browser-plugin.cpp b/obs-browser-plugin.cpp
-index 1a6a009..5eb379e 100644
---- a/plugins/obs-browser/obs-browser-plugin.cpp
-+++ b/plugins/obs-browser/obs-browser-plugin.cpp
-@@ -298,7 +298,7 @@ static void BrowserInit(void)
- 	prod_ver << std::to_string(obs_maj) << "." << std::to_string(obs_min)
- 		 << "." << std::to_string(obs_pat);
- 
--	CefString(&settings.product_version) = prod_ver.str();
-+	CefString(&settings.user_agent_product) = prod_ver.str();
- 
- #ifdef USE_QT_LOOP
- 	settings.external_message_pump = true;
--- 
-2.31.1
-
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index db6c348cf7f18..6d3f9b6d32dbb 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -34,8 +34,10 @@
 , pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
 , libpulseaudio
 , libcef
+, pciutils
 , pipewireSupport ? stdenv.isLinux
 , pipewire
+, libdrm
 }:
 
 let
@@ -44,22 +46,19 @@ let
 in
 mkDerivation rec {
   pname = "obs-studio";
-  version = "27.0.1";
+  version = "27.2.0";
 
   src = fetchFromGitHub {
     owner = "obsproject";
     repo = "obs-studio";
     rev = version;
-    sha256 = "04fzsr9yizmxy0r7z2706crvnsnybpnv5kgfn77znknxxjacfhkn";
+    sha256 = "KZgwAtyxv2vXDW7vF1eArF5Mqw45NngwChc+5OnXuXg=";
     fetchSubmodules = true;
   };
 
   patches = [
     # Lets obs-browser build against CEF 90.1.0+
     ./Enable-file-access-and-universal-access-for-file-URL.patch
-
-    # Lets obs-browser build against CEF 91.1.0+
-    ./Change-product_version-to-user_agent_product.patch
   ];
 
   nativeBuildInputs = [
@@ -89,11 +88,12 @@ mkDerivation rec {
     x264
     libvlc
     mbedtls
+    pciutils
   ]
   ++ optionals scriptingSupport [ luajit python3 ]
   ++ optional alsaSupport alsa-lib
   ++ optional pulseaudioSupport libpulseaudio
-  ++ optional pipewireSupport pipewire;
+  ++ optionals pipewireSupport [ pipewire libdrm ];
 
   # Copied from the obs-linuxbrowser
   postUnpack = ''
diff --git a/pkgs/applications/video/obs-studio/plugins/obs-websocket.nix b/pkgs/applications/video/obs-studio/plugins/obs-websocket.nix
index 5c13d33ae466f..d747268cc5567 100644
--- a/pkgs/applications/video/obs-studio/plugins/obs-websocket.nix
+++ b/pkgs/applications/video/obs-studio/plugins/obs-websocket.nix
@@ -4,24 +4,48 @@
 , fetchpatch
 , cmake
 , qtbase
+, qtsvg
 , obs-studio
 , asio_1_10
 , websocketpp
+, nlohmann_json
 }:
 
 stdenv.mkDerivation rec {
   pname = "obs-websocket";
-  version = "4.9.1";
+
+  # We have updated to the alpha version when OBS Studio 27.2 was
+  # released, because this is the only version of obs-websocket that
+  # builds against the new OBS Studio.
+  version = "5.0.0-alpha3";
 
   src = fetchFromGitHub {
     owner = "Palakis";
     repo = "obs-websocket";
     rev = version;
-    sha256 = "sha256-XCiSNWTiA/u+3IbYlhIc5bCjKjLHDRVjYIG5MEoYnr0=";
+    sha256 = "Lr6SBj5rRTAWmn9Tnlu4Sl7SAkOCRCTP6sFWSp4xB+I=";
+    fetchSubmodules = true;
   };
 
+  patches = [
+    # This patch can be dropped when obs-websocket is updated to the
+    # next version.
+    (fetchpatch {
+      url = "https://github.com/obsproject/obs-websocket/commit/13c7b83c34eb67b2ee80af05071d81f10d0d2997.patch";
+      sha256 = "TNap/T8+058vhfWzRRr4vmlblFk9tHMUNyG6Ob5PwiM=";
+      name = "obs-addref-werror-fix.patch";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ qtbase obs-studio asio_1_10 websocketpp ];
+  buildInputs = [
+    qtbase
+    qtsvg
+    obs-studio
+    asio_1_10
+    websocketpp
+    nlohmann_json
+  ];
 
   dontWrapQtApps = true;