andreas pushed a commit to branch qt-team
in repository guix.

commit 923c500b134250b0533db8a92a6b613b6b9aece6
Author: 宋文武 <iyzs...@member.fsf.org>
AuthorDate: Mon Feb 10 13:05:44 2025 +0800

    gnu: obs: Upduate to 31.0.1.
    
    * gnu/packages/patches/obs-modules-location.patch: Adjust for 31.0.1.
    * gnu/packages/video.scm (obs): Update to 31.0.1.
    [inputs]: Add rnnoise and uthash.
    [arguments]: Use cmake-3.30.  Add "-DENABLE_NVENC=OFF" to configure-flags.
    Set OBS_EXECUTABLE_RPATH, OBS_LIBRARY_RPATH and OBS_MODULE_RPATH.
    
    Change-Id: Iaa8e7fceb04b3bf7e69cb0a040938ca90dfa46d0
---
 gnu/packages/patches/obs-modules-location.patch | 36 +++++++++++--------------
 gnu/packages/video.scm                          | 32 ++++++++++++++--------
 2 files changed, 36 insertions(+), 32 deletions(-)

diff --git a/gnu/packages/patches/obs-modules-location.patch 
b/gnu/packages/patches/obs-modules-location.patch
index 18b286d006..742119470a 100644
--- a/gnu/packages/patches/obs-modules-location.patch
+++ b/gnu/packages/patches/obs-modules-location.patch
@@ -5,29 +5,23 @@ Subject: [PATCH] Use environment variable for a default 
module location
 
 diff --git a/libobs/obs-nix.c b/libobs/obs-nix.c
 index 382fa0546..481ea0f14 100644
-*** a/libobs/obs-nix.c
---- b/libobs/obs-nix.c
-@@ -66,8 +66,19 @@
+--- a.c        2025-02-10 12:48:39.885858056 +0800
++++ b.c        2025-02-10 12:57:18.913869843 +0800
+@@ -83,6 +83,17 @@ void add_default_module_paths(void)
+       bfree(module_bin_path);
+       bfree(module_data_path);
  
- void add_default_module_paths(void)
- {
--      for (int i = 0; i < module_patterns_size; i++)
--              obs_add_module_path(module_bin[i], module_data[i]);
-+      char *bin_directory = getenv("OBS_PLUGINS_DIRECTORY");
-+      char *data_directory = getenv("OBS_PLUGINS_DATA_DIRECTORY");
-+      if (bin_directory && data_directory) {
++      module_bin_path = getenv("OBS_PLUGINS_DIRECTORY");
++      module_data_path = getenv("OBS_PLUGINS_DATA_DIRECTORY");
++      if (module_bin_path && module_data_path) {
 +              struct dstr dstr_data_directory;
-+              dstr_init_copy(&dstr_data_directory, data_directory);
++              dstr_init_copy(&dstr_data_directory, module_data_path);
 +              dstr_cat(&dstr_data_directory, "/%module%");
-+              obs_add_module_path(bin_directory, dstr_data_directory.array);
++              obs_add_module_path(module_bin_path, dstr_data_directory.array);
 +              dstr_free(&dstr_data_directory);
-+
-+      } else {
-+              for (int i = 0; i < module_patterns_size; i++)
-+                      obs_add_module_path(module_bin[i], module_data[i]);
++               return;
 +      }
- }
- 
- /*
--- 
-2.29.2
\ No newline at end of file
++
+       for (int i = 0; i < module_patterns_size; i++) {
+               obs_add_module_path(module_bin[i], module_data[i]);
+       }
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 890b141a97..f46884f980 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -128,12 +128,14 @@
   #:use-module (gnu packages cdrom)
   #:use-module (gnu packages certs)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cpp)
   #:use-module (gnu packages crates-check)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages datastructures)
   #:use-module (gnu packages dbm)
   #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages dns)
@@ -4074,7 +4076,7 @@ be used for realtime video capture via Linux-specific 
APIs.")
 (define-public obs
   (package
     (name "obs")
-    (version "30.1.2")
+    (version "31.0.1")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -4084,21 +4086,27 @@ be used for realtime video capture via Linux-specific 
APIs.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "02pm6397h7l0xhdpscbh1kq8y98zx236z95wvw60kbhq38s0i0ik"))
+                "02l1qr7pbmg0va1m9ydmzamg3kh4h05if1hbg0kzfngq93vvy13p"))
               (patches
                (search-patches "obs-modules-location.patch"))))
     (build-system cmake-build-system)
     (arguments
      (list
+      #:cmake cmake-3.30                ;needs cmake >= 3.28
       #:configure-flags
-      #~(list (string-append "-DOBS_VERSION_OVERRIDE=" #$version)
-              "-DENABLE_UNIT_TESTS=ON"
-              "-DENABLE_NEW_MPEGTS_OUTPUT=OFF"
-              "-DENABLE_AJA=OFF"
-              "-DENABLE_QSV11=OFF"
-              ;; Browser plugin requires cef, but it is not packaged yet.
-              ;; <https://bitbucket.org/chromiumembedded/cef/src/master/>
-              "-DBUILD_BROWSER=OFF")
+      #~(let ((libdir (string-append (assoc-ref %outputs "out") "/lib")))
+          (list (string-append "-DOBS_VERSION_OVERRIDE=" #$version)
+                (string-append "-DOBS_EXECUTABLE_RPATH=" libdir)
+                (string-append "-DOBS_LIBRARY_RPATH=" libdir)
+                (string-append "-DOBS_MODULE_RPATH=" libdir)
+                "-DENABLE_UNIT_TESTS=ON"
+                "-DENABLE_NEW_MPEGTS_OUTPUT=OFF"
+                "-DENABLE_AJA=OFF"
+                "-DENABLE_QSV11=OFF"
+                "-DENABLE_NVENC=OFF"
+                ;; Browser plugin requires cef, but it is not packaged yet.
+                ;; <https://bitbucket.org/chromiumembedded/cef/src/master/>
+                "-DBUILD_BROWSER=OFF"))
        #:phases
        #~(modify-phases %standard-phases
            (add-after 'install 'wrap-executable
@@ -4154,10 +4162,12 @@ be used for realtime video capture via Linux-specific 
APIs.")
       qtbase
       qtsvg
       qtwayland
+      rnnoise
       speexdsp
       v4l-utils
-      vulkan-headers
+      uthash
       vlc
+      vulkan-headers
       wayland
       wayland-protocols
       websocketpp

Reply via email to