unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
@ 2021-01-06 23:36 Evan Straw
  2021-01-06 23:42 ` Nicolò Balzarotti
                   ` (3 more replies)
  0 siblings, 4 replies; 19+ messages in thread
From: Evan Straw @ 2021-01-06 23:36 UTC (permalink / raw)
  To: 45707


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.1: [PATCH] gnu: Add obs-v4l2sink. --]
[-- Type: text/x-patch, Size: 2740 bytes --]

From 0aa683242ae591d0ddac8b4b23163805dc4414c9 Mon Sep 17 00:00:00 2001
From: Evan Straw <evan.straw99@gmail.com>
Date: Wed, 6 Jan 2021 15:33:25 -0800
Subject: [PATCH] gnu: Add obs-v4l2sink.
To: guix-patches@gnu.org

* gnu/packages/video.scm (obs-v4l2sink): New variable.
---
 gnu/packages/video.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 2b1b111e97..6d64d03e44 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3133,6 +3133,45 @@ and JACK.")
     (home-page "https://obsproject.com")
     (license license:gpl2+)))
 
+(define-public obs-v4l2sink
+  (package
+    (name "obs-v4l2sink")
+    (version "0.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url "https://github.com/CatxFish/obs-v4l2sink")
+                                  (commit version)))
+              (file-name (string-append name "-" version))
+              (sha256
+               (base32
+                "0l4lavaywih5lzwgxcbnvdrxhpvkrmh56li06s3aryikngxwsk3z"))))
+    (build-system cmake-build-system)
+    (arguments `(#:tests? #f ;; obs-v4l2sink does not have tests
+                 #:phases
+                 (modify-phases %standard-phases
+                   ;; The CMakeLists.txt file for obs-v4l2sink attempts to use
+                   ;; its own method to search for libobs which uses a lot of
+                   ;; hardcoded paths and ultimately fails under Guix. OBS
+                   ;; already comes with its own CMake configuration, so
+                   ;; remove the line that uses the hardcoded method and just
+                   ;; let CMake locate OBS.
+                   (add-before 'configure 'fix-libobs
+                     (lambda* _
+                       (substitute* "CMakeLists.txt"
+                         (("^.*FindLibObs.*$") ""))
+                       #t)))))
+    (inputs `(("qtbase" ,qtbase)
+              ("obs" ,obs)))
+    (home-page "https://github.com/CatxFish/obs-v4l2sink")
+    (synopsis "OBS Studio output plugin for Video4Linux2 device")
+    (description "An @dfn{Open Broadcaster Software} (OBS) Studio plugin that
+provides output capabilities to a @dfn{Video4Linux2} (v4l2) device.  It can be
+used with @code{v4l2loopback} to achieve cross-program video transfer between
+OBS Studio and third party software supporting Video4Linux2, e.g. to present
+an OBS session in proprietary browser-based conferencing systems by selecting
+the OBS session as a webcam.")
+    (license license:gpl2+)))
+
 (define-public libvdpau
   (package
     (name "libvdpau")
-- 
2.25.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
@ 2021-01-06 23:42 ` Nicolò Balzarotti
  2021-01-06 23:45   ` Evan Straw
  2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 19+ messages in thread
From: Nicolò Balzarotti @ 2021-01-06 23:42 UTC (permalink / raw)
  To: Evan Straw, 45707

Evan Straw <evan.straw99@gmail.com> writes:

> +OBS Studio and third party software supporting Video4Linux2, e.g. to present
> +an OBS session in proprietary browser-based conferencing systems by selecting
> +the OBS session as a webcam.")

Seems like a proprietary software endorsement. I guess it works also
with libre browser-based conferencing systems like BBB, nextcloud talk
or jitsi, so I'd remove proprietary from the description.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-06 23:42 ` Nicolò Balzarotti
@ 2021-01-06 23:45   ` Evan Straw
  0 siblings, 0 replies; 19+ messages in thread
From: Evan Straw @ 2021-01-06 23:45 UTC (permalink / raw)
  To: Nicolò Balzarotti; +Cc: 45707


Yeah, I was also a little unsure about that part as well. I will remove
that from the description. Should have another patch to send in a
minute.

-- Evan




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
  2021-01-06 23:42 ` Nicolò Balzarotti
@ 2021-01-06 23:47 ` Evan Straw
  2021-01-07  0:11   ` Nicolò Balzarotti
                     ` (2 more replies)
  2021-02-02 20:00 ` [bug#45707] (no subject) Andrew Tropin
  2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
  3 siblings, 3 replies; 19+ messages in thread
From: Evan Straw @ 2021-01-06 23:47 UTC (permalink / raw)
  To: 45707


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.1: [PATCH] gnu: Add obs-v4l2sink. --]
[-- Type: text/x-patch, Size: 2702 bytes --]

From 7bcaffb15f1f6697310a4c4bacb8dea1eca2a4e8 Mon Sep 17 00:00:00 2001
From: Evan Straw <evan.straw99@gmail.com>
Date: Wed, 6 Jan 2021 15:33:25 -0800
Subject: [PATCH] gnu: Add obs-v4l2sink.

* gnu/packages/video.scm (obs-v4l2sink): New variable.
---
 gnu/packages/video.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 2b1b111e97..194699dd23 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3133,6 +3133,45 @@ and JACK.")
     (home-page "https://obsproject.com")
     (license license:gpl2+)))
 
+(define-public obs-v4l2sink
+  (package
+    (name "obs-v4l2sink")
+    (version "0.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url "https://github.com/CatxFish/obs-v4l2sink")
+                                  (commit version)))
+              (file-name (string-append name "-" version))
+              (sha256
+               (base32
+                "0l4lavaywih5lzwgxcbnvdrxhpvkrmh56li06s3aryikngxwsk3z"))))
+    (build-system cmake-build-system)
+    (arguments `(#:tests? #f ;; obs-v4l2sink does not have tests
+                 #:phases
+                 (modify-phases %standard-phases
+                   ;; The CMakeLists.txt file for obs-v4l2sink attempts to use
+                   ;; its own method to search for libobs which uses a lot of
+                   ;; hardcoded paths and ultimately fails under Guix. OBS
+                   ;; already comes with its own CMake configuration, so
+                   ;; remove the line that uses the hardcoded method and just
+                   ;; let CMake locate OBS.
+                   (add-before 'configure 'fix-libobs
+                     (lambda* _
+                       (substitute* "CMakeLists.txt"
+                         (("^.*FindLibObs.*$") ""))
+                       #t)))))
+    (inputs `(("qtbase" ,qtbase)
+              ("obs" ,obs)))
+    (home-page "https://github.com/CatxFish/obs-v4l2sink")
+    (synopsis "OBS Studio output plugin for Video4Linux2 device")
+    (description "An @dfn{Open Broadcaster Software} (OBS) Studio plugin that
+provides output capabilities to a @dfn{Video4Linux2} (v4l2) device.  It can be
+used with @code{v4l2loopback} to achieve cross-program video transfer between
+OBS Studio and third party software supporting Video4Linux2, e.g. to present
+an OBS session in browser-based conferencing systems by selecting the OBS
+session as a webcam.")
+    (license license:gpl2+)))
+
 (define-public libvdpau
   (package
     (name "libvdpau")
-- 
2.25.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
@ 2021-01-07  0:11   ` Nicolò Balzarotti
  2021-01-07  4:37   ` Evan
  2021-01-15 17:10   ` [bug#45707] [PATCH v2] " pelzflorian (Florian Pelz)
  2 siblings, 0 replies; 19+ messages in thread
From: Nicolò Balzarotti @ 2021-01-07  0:11 UTC (permalink / raw)
  To: Evan Straw, 45707

Thanks for the update.

Evan Straw <evan.straw99@gmail.com> writes:
> +              (method git-fetch)
> +              (uri (git-reference (url "https://github.com/CatxFish/obs-v4l2sink")
> +                                  (commit version)))


I'm not 100% sure (I usually don't do patch review) but I think the
indentation is wrong (line should break after git-reference).

> +    (inputs `(("qtbase" ,qtbase)
> +              ("obs" ,obs)))
I think it's the same after inputs..

> +    (description "An @dfn{Open Broadcaster Software} (OBS) Studio plugin that
> +provides output capabilities to a @dfn{Video4Linux2} (v4l2) device.  It can be
> +used with @code{v4l2loopback} to achieve cross-program video transfer between
I think that instead of definitions, those are acronyms, so it should be
@acronym{OBS, Open Broadcaster Software} and @acronym{Video 4 Linux 2,
vl42}.

I'd say that you should wait for somebody that knows better than me
before applying my suggestions.

It builds and lint is ok, but obs does not work on my laptop (video card
too old) so I cannot test that it run.

Nicolo




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
  2021-01-07  0:11   ` Nicolò Balzarotti
@ 2021-01-07  4:37   ` Evan
  2021-01-07  8:19     ` Alexey Abramov
  2021-01-15 17:10   ` [bug#45707] [PATCH v2] " pelzflorian (Florian Pelz)
  2 siblings, 1 reply; 19+ messages in thread
From: Evan @ 2021-01-07  4:37 UTC (permalink / raw)
  To: 45707

[-- Attachment #1: Type: text/plain, Size: 777 bytes --]

On further investigation, I'm not even sure this package will work correctly because of the way OBS handles plugins. To install plugins, OBS requires that you add their .so files to a plugins directory under the OBS share directory, which under Guix should be immutable. As far as I'm aware, there doesn't seem to be a way to get OBS to use a different directory or use an environment variable containing search paths. Not sure if there is a way to even get plugins for OBS to work at all under Guix if this is the case.

Apologies for creating this patch without having really done this research first. If there's really no way to get this to work under Guix, then feel free to just close this ticket.

--Evan

Jan 6, 2021 3:47:55 PM Evan Straw <evan.straw99@gmail.com>:

>  

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 854 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-07  4:37   ` Evan
@ 2021-01-07  8:19     ` Alexey Abramov
  2021-01-13 14:35       ` [bug#45707] [PATCH] " Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Alexey Abramov @ 2021-01-07  8:19 UTC (permalink / raw)
  To: Evan; +Cc: 45707

Hi Evan,

You can make it work. 

In order to provide plugins for obs via $XDG_CONFIG_HOME (~/.config) you need to provide the following structure:

"$XDG_CONFIG_HOME/obs-studio/plugins/<module-name>/bin/<arch>/"

As it implemented in obs-studio (~/obs-studio/UI/window-basic-main.cpp)

--8<---------------cut here---------------start------------->8---
  static void AddExtraModulePaths()
  {
          char base_module_dir[512];
  #if defined(_WIN32) || defined(__APPLE__)
          int ret = GetProgramDataPath(base_module_dir, sizeof(base_module_dir),
                                       "obs-studio/plugins/%module%");
  #else
          int ret = GetConfigPath(base_module_dir, sizeof(base_module_dir),
                                  "obs-studio/plugins/%module%");
  #endif

          if (ret <= 0)
                  return;

          string path = base_module_dir;
  #if defined(__APPLE__)
          obs_add_module_path((path + "/bin").c_str(), (path + "/data").c_str());

          BPtr<char> config_bin =
                  os_get_config_path_ptr("obs-studio/plugins/%module%/bin");
          BPtr<char> config_data =
                  os_get_config_path_ptr("obs-studio/plugins/%module%/data");
          obs_add_module_path(config_bin, config_data);

  #elif ARCH_BITS == 64
          obs_add_module_path((path + "/bin/64bit").c_str(),
                              (path + "/data").c_str());
  #else
          obs_add_module_path((path + "/bin/32bit").c_str(),
                              (path + "/data").c_str());
  #endif
  }
--8<---------------cut here---------------end--------------->8---


So what I am currently have is this:

--8<---------------cut here---------------start------------->8---
  λ find ~/.config/obs-studio/plugins 
  /home/levenson/.config/obs-studio/plugins
  /home/levenson/.config/obs-studio/plugins/v4l2sink
  /home/levenson/.config/obs-studio/plugins/v4l2sink/bin
  /home/levenson/.config/obs-studio/plugins/v4l2sink/bin/64bit
  /home/levenson/.config/obs-studio/plugins/v4l2sink/bin/64bit/v4l2sink.so
--8<---------------cut here---------------end--------------->8---

where the library is a symlink

v4l2sink.so -> /home/levenson/.guix-profile/lib/obs-plugins/v4l2sink.so

-- 
Alexey




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-07  8:19     ` Alexey Abramov
@ 2021-01-13 14:35       ` Ludovic Courtès
  2021-01-15 16:47         ` Alexey Abramov
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-01-13 14:35 UTC (permalink / raw)
  To: Alexey Abramov; +Cc: Evan, 45707

Hi,

Alexey Abramov <levenson@mmer.org> skribis:

> In order to provide plugins for obs via $XDG_CONFIG_HOME (~/.config) you need to provide the following structure:
>
> "$XDG_CONFIG_HOME/obs-studio/plugins/<module-name>/bin/<arch>/"
>
> As it implemented in obs-studio (~/obs-studio/UI/window-basic-main.cpp)
>
>   static void AddExtraModulePaths()
>   {
>           char base_module_dir[512];
>   #if defined(_WIN32) || defined(__APPLE__)
>           int ret = GetProgramDataPath(base_module_dir, sizeof(base_module_dir),
>                                        "obs-studio/plugins/%module%");
>   #else
>           int ret = GetConfigPath(base_module_dir, sizeof(base_module_dir),
>                                   "obs-studio/plugins/%module%");
>   #endif

What about patching this function so that it honors, say, an
‘OBS_PLUGIN_PATH’ environment variable?

We’d put plugins under $prefix/lib/obs-studio/plugins and define a
‘search-path-specification’ for it.

My 2¢,
Ludo’.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-13 14:35       ` [bug#45707] [PATCH] " Ludovic Courtès
@ 2021-01-15 16:47         ` Alexey Abramov
  2021-01-16 21:47           ` Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Alexey Abramov @ 2021-01-15 16:47 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Evan, 45707

[-- Attachment #1: Type: text/plain, Size: 286 bytes --]

Hi,

Thanks Ludo. With this patch, obs will check OBS_PLUGINS_PATH environment variable for a *default* location of modules. 

Plugins might also have some data. I am not sure if it is safe to use relative path thought. Would it be better to use OBS_PLUGINS_DATA_PATH var?

-- 
Alexey


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-obs-Use-an-environment-variable-for-plugins-loca.patch --]
[-- Type: text/x-patch, Size: 3879 bytes --]

From 9ade5607aab510cc88561efb7c0b08567b5e19fe Mon Sep 17 00:00:00 2001
From: Alexey Abramov <levenson@mmer.org>
Date: Fri, 15 Jan 2021 17:26:37 +0100
Subject: [PATCH] gnu: obs: Use an environment variable for plugins location.

* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/video.scm (obs): Use it.
* gnu/packages/patches/obs-override-default-modules-location.patch: Patch it.
---
 gnu/local.mk                                  |  1 +
 ...bs-override-default-modules-location.patch | 32 +++++++++++++++++++
 gnu/packages/video.scm                        |  9 +++++-
 3 files changed, 41 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/obs-override-default-modules-location.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index eb28104add..cd4085890b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1404,6 +1404,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/nvi-dbpagesize-binpower.patch		\
   %D%/packages/patches/nvi-db4.patch				\
   %D%/packages/patches/nyacc-binary-literals.patch		\
+  %D%/packages/patches/obs-override-default-modules-location.patch	\
   %D%/packages/patches/ocaml-bitstring-fix-configure.patch \
   %D%/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch     \
   %D%/packages/patches/ocaml-CVE-2015-8869.patch		\
diff --git a/gnu/packages/patches/obs-override-default-modules-location.patch b/gnu/packages/patches/obs-override-default-modules-location.patch
new file mode 100644
index 0000000000..88adb4a8c1
--- /dev/null
+++ b/gnu/packages/patches/obs-override-default-modules-location.patch
@@ -0,0 +1,32 @@
+From 96e3c05043eb6b682b105e9080b45efeee33dcd0 Mon Sep 17 00:00:00 2001
+From: Alexey Abramov <levenson@mmer.org>
+Date: Fri, 15 Jan 2021 17:07:17 +0100
+Subject: [PATCH] Use an environment variable for a default modules location
+
+---
+ libobs/obs-nix.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/libobs/obs-nix.c b/libobs/obs-nix.c
+index 382fa0546..d58a0b48a 100644
+--- a/libobs/obs-nix.c
++++ b/libobs/obs-nix.c
+@@ -66,8 +66,14 @@ static const int module_patterns_size =
+ 
+ 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 *obs_plugins_path = getenv("OBS_PLUGINS_PATH");
++	if (obs_plugins_path) {
++		struct dstr obs_plugins_data_path;
++		dstr_init_copy(&obs_plugins_data_path, obs_plugins_path);
++		dstr_cat(&obs_plugins_data_path, "/../../share/obs/obs-plugins/%module%");
++		obs_add_module_path(obs_plugins_path, obs_plugins_data_path.array);
++		dstr_free(&obs_plugins_data_path);
++	}
+ }
+ 
+ /*
+-- 
+2.29.2
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index b314e4903b..15bb2e4d40 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3087,7 +3087,9 @@ be used for realtime video capture via Linux-specific APIs.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1k1asqiqw757v59ayx0w029ril947hs0lcp8n91knzjl891fr4nc"))))
+                "1k1asqiqw757v59ayx0w029ril947hs0lcp8n91knzjl891fr4nc"))
+              (patches
+               (search-patches "obs-override-default-modules-location.patch"))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags
@@ -3102,6 +3104,11 @@ be used for realtime video capture via Linux-specific APIs.")
                (wrap-program (string-append out "/bin/obs")
                  `("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
              #t)))))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "OBS_PLUGINS_PATH")
+            (separator #f)                         ;single entry
+            (files '("lib/obs-plugins")))))
     (native-inputs
      `(("cmocka" ,cmocka)
        ("pkg-config" ,pkg-config)))
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
  2021-01-07  0:11   ` Nicolò Balzarotti
  2021-01-07  4:37   ` Evan
@ 2021-01-15 17:10   ` pelzflorian (Florian Pelz)
  2021-01-15 19:25     ` Evan Straw
  2 siblings, 1 reply; 19+ messages in thread
From: pelzflorian (Florian Pelz) @ 2021-01-15 17:10 UTC (permalink / raw)
  To: Evan Straw; +Cc: 45707

Hello Evan!

Since OBS version 26.1 without any plugins there is a new button
“Start Virtual Camera” in the bottom right.

Is this v4l2sink plugin really still useful?  If I tested corrrectly,
it is not.

Making OBS plugins usable by search path is good though.

Regards,
Florian




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH v2] gnu: Add obs-v4l2sink.
  2021-01-15 17:10   ` [bug#45707] [PATCH v2] " pelzflorian (Florian Pelz)
@ 2021-01-15 19:25     ` Evan Straw
  0 siblings, 0 replies; 19+ messages in thread
From: Evan Straw @ 2021-01-15 19:25 UTC (permalink / raw)
  To: pelzflorian (Florian Pelz); +Cc: 45707

[-- Attachment #1: Type: text/plain, Size: 630 bytes --]

Hi Florian,

"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> writes:

> Since OBS version 26.1 without any plugins there is a new button
> “Start Virtual Camera” in the bottom right.

I was actually not aware of this, I guess I did not have the required
kernel module installed so it didn't show up for me. With that said, I
suppose that this package is indeed not very useful anymore since this
functionality is built into OBS. Apologies, this was some poor research
on my part. Still, maybe it's good to have started the discussion of how
to package OBS plugins for Guix in the future.

-- Evan



[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-15 16:47         ` Alexey Abramov
@ 2021-01-16 21:47           ` Ludovic Courtès
  2021-01-20  8:28             ` Alexey Abramov
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-01-16 21:47 UTC (permalink / raw)
  To: Alexey Abramov; +Cc: Evan, 45707

Hi,

Alexey Abramov <levenson@mmer.org> skribis:

> Thanks Ludo. With this patch, obs will check OBS_PLUGINS_PATH environment variable for a *default* location of modules. 

OK.

> Plugins might also have some data. I am not sure if it is safe to use relative path thought. Would it be better to use OBS_PLUGINS_DATA_PATH var?

I don’t know, how does this patch change the situation wrt. finding a
plugin’s data?

> From 9ade5607aab510cc88561efb7c0b08567b5e19fe Mon Sep 17 00:00:00 2001
> From: Alexey Abramov <levenson@mmer.org>
> Date: Fri, 15 Jan 2021 17:26:37 +0100
> Subject: [PATCH] gnu: obs: Use an environment variable for plugins location.
>
> * gnu/local.mk (dist_patch_DATA): Add it.
> * gnu/packages/video.scm (obs): Use it.
> * gnu/packages/patches/obs-override-default-modules-location.patch: Patch it.

Some minor issues:

> +++ b/gnu/packages/patches/obs-override-default-modules-location.patch

‘guix lint’ might complain about the file name length.  :-)
Perhaps remove ‘override-default-’ from the file name.

> @@ -0,0 +1,32 @@
> +From 96e3c05043eb6b682b105e9080b45efeee33dcd0 Mon Sep 17 00:00:00 2001
> +From: Alexey Abramov <levenson@mmer.org>
> +Date: Fri, 15 Jan 2021 17:07:17 +0100
> +Subject: [PATCH] Use an environment variable for a default modules location
> +
> +---
> + libobs/obs-nix.c | 10 ++++++++--

If it comes from another distro, please indicate it clearly at the top
of the file.

> ++	char *obs_plugins_path = getenv("OBS_PLUGINS_PATH");
> ++	if (obs_plugins_path) {
> ++		struct dstr obs_plugins_data_path;
> ++		dstr_init_copy(&obs_plugins_data_path, obs_plugins_path);
> ++		dstr_cat(&obs_plugins_data_path, "/../../share/obs/obs-plugins/%module%");

Shouldn’t it be lib/obs-plugins, as your ‘search-path-specification’
indicates?

> +    (native-search-paths
> +     (list (search-path-specification
> +            (variable "OBS_PLUGINS_PATH")
> +            (separator #f)                         ;single entry
> +            (files '("lib/obs-plugins")))))

How about renaming the variable to ‘OBS_PLUGINS_DIRECTORY’ given that
it designates a single directory rather than a search path?

Could you send an updated patch?

Thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: Add obs-v4l2sink.
  2021-01-16 21:47           ` Ludovic Courtès
@ 2021-01-20  8:28             ` Alexey Abramov
  2021-02-02  9:31               ` bug#45707: " Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Alexey Abramov @ 2021-01-20  8:28 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Evan, 45707

[-- Attachment #1: Type: text/plain, Size: 5649 bytes --]

Ludovic Courtès <ludo@gnu.org> writes:

> Hi,
>
> Alexey Abramov <levenson@mmer.org> skribis:
>
>> Thanks Ludo. With this patch, obs will check OBS_PLUGINS_PATH environment variable for a *default* location of modules. 
>
> OK.
>
>> Plugins might also have some data. I am not sure if it is safe to
>> use relative path thought. Would it be better to use
>> OBS_PLUGINS_DATA_PATH var?
>
> I don’t know, how does this patch change the situation wrt. finding a
> plugin’s data?

They have locals in their data directory at least. And probably something else, yes.

>
>> From 9ade5607aab510cc88561efb7c0b08567b5e19fe Mon Sep 17 00:00:00 2001
>> From: Alexey Abramov <levenson@mmer.org>
>> Date: Fri, 15 Jan 2021 17:26:37 +0100
>> Subject: [PATCH] gnu: obs: Use an environment variable for plugins location.
>>
>> * gnu/local.mk (dist_patch_DATA): Add it.
>> * gnu/packages/video.scm (obs): Use it.
>> * gnu/packages/patches/obs-override-default-modules-location.patch: Patch it.
>
> Some minor issues:
>
>> +++ b/gnu/packages/patches/obs-override-default-modules-location.patch
>
> ‘guix lint’ might complain about the file name length.  :-)
> Perhaps remove ‘override-default-’ from the file name.
>

Done. Passed.

>> @@ -0,0 +1,32 @@
>> +From 96e3c05043eb6b682b105e9080b45efeee33dcd0 Mon Sep 17 00:00:00 2001
>> +From: Alexey Abramov <levenson@mmer.org>
>> +Date: Fri, 15 Jan 2021 17:07:17 +0100
>> +Subject: [PATCH] Use an environment variable for a default modules location
>> +
>> +---
>> + libobs/obs-nix.c | 10 ++++++++--
>
> If it comes from another distro, please indicate it clearly at the top
> of the file.
>
>> ++	char *obs_plugins_path = getenv("OBS_PLUGINS_PATH");
>> ++	if (obs_plugins_path) {
>> ++		struct dstr obs_plugins_data_path;
>> ++		dstr_init_copy(&obs_plugins_data_path, obs_plugins_path);
>> ++		dstr_cat(&obs_plugins_data_path, "/../../share/obs/obs-plugins/%module%");
>
> Shouldn’t it be lib/obs-plugins, as your ‘search-path-specification’
> indicates?

That is a data directory. With the new patch it will be taken from
OBS_PLUGINS_DATA_DIRECTORY. %module% part is required for data.

>
>> +    (native-search-paths
>> +     (list (search-path-specification
>> +            (variable "OBS_PLUGINS_PATH")
>> +            (separator #f)                         ;single entry
>> +            (files '("lib/obs-plugins")))))
>
> How about renaming the variable to ‘OBS_PLUGINS_DIRECTORY’ given that
> it designates a single directory rather than a search path?

Done.

>
> Could you send an updated patch?

Attached. I also tested the obs patch with this [1] and this [2] and
haven't seen any erros. obs loads plugins successfully.

--8<---------------cut here---------------start------------->8---
info: ---------------------------------
info:   Loaded Modules:
info:     v4l2sink.so     <------ this
info:     text-freetype2.so  
info:     spectralizer.so    <------ this
info:     rtmp-services.so
info:     obs-x264.so
info:     obs-transitions.so
info:     obs-outputs.so
info:     obs-filters.so
info:     obs-ffmpeg.so
info:     linux-v4l2.so
info:     linux-pulseaudio.so
info:     linux-jack.so
info:     linux-decklink.so
info:     linux-capture.so
info:     linux-alsa.so
info:     libwlrobs.so     <------ this
info:     image-source.so
info:     frontend-tools.so
info:     decklink-ouput-ui.so
info:     decklink-captions.so
info: ---------------------------------


~ master* ⇡
λ find /gnu/store/3s84wmh9pqcryfzx0rrri8sqff7fqlqn-obs-wlrobs-1.0/
/gnu/store/3s84wmh9pqcryfzx0rrri8sqff7fqlqn-obs-wlrobs-1.0/
/gnu/store/3s84wmh9pqcryfzx0rrri8sqff7fqlqn-obs-wlrobs-1.0/lib
/gnu/store/3s84wmh9pqcryfzx0rrri8sqff7fqlqn-obs-wlrobs-1.0/lib/obs-plugins
/gnu/store/3s84wmh9pqcryfzx0rrri8sqff7fqlqn-obs-wlrobs-1.0/lib/obs-plugins/libwlrobs.so

~ master* ⇡
λ find /gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/                               
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/doc
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/doc/obs-spectralizer-1.3.3
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/doc/obs-spectralizer-1.3.3/COPYING.txt
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins/spectralizer
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins/spectralizer/locale
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins/spectralizer/locale/ko-KR.ini
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins/spectralizer/locale/ru-RU.ini
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/share/obs/obs-plugins/spectralizer/locale/en-US.ini
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/lib
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/lib/obs-plugins
/gnu/store/rmz58nv5qcwr1pm38nx7aicyfq4jbp4a-obs-spectralizer-1.3.3/lib/obs-plugins/spectralizer.so
--8<---------------cut here---------------end--------------->8---


Footnotes:
[1]  https://issues.guix.gnu.org/45960
[2]  https://issues.guix.gnu.org/45961

-- 
Alexey


[-- Attachment #2: 0001-gnu-obs-Use-an-environment-variable-for-plugins-loca.patch --]
[-- Type: text/x-patch, Size: 4450 bytes --]

From f67bf04b57f45f0ca11cb6b902d22f7c4d44e005 Mon Sep 17 00:00:00 2001
From: Alexey Abramov <levenson@mmer.org>
Date: Fri, 15 Jan 2021 17:26:37 +0100
Subject: [PATCH] gnu: obs: Use an environment variable for plugins location.

* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/video.scm (obs): Use it.
* gnu/packages/patches/obs-modules-location.patch: Patch it.
---
 gnu/local.mk                                  |  1 +
 .../patches/obs-modules-location.patch        | 33 +++++++++++++++++++
 gnu/packages/video.scm                        | 14 +++++++-
 3 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/obs-modules-location.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 6f66021c78..aaf19302be 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1405,6 +1405,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/nvi-dbpagesize-binpower.patch		\
   %D%/packages/patches/nvi-db4.patch				\
   %D%/packages/patches/nyacc-binary-literals.patch		\
+  %D%/packages/patches/obs-modules-location.patch		\
   %D%/packages/patches/ocaml-bitstring-fix-configure.patch \
   %D%/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch     \
   %D%/packages/patches/ocaml-CVE-2015-8869.patch		\
diff --git a/gnu/packages/patches/obs-modules-location.patch b/gnu/packages/patches/obs-modules-location.patch
new file mode 100644
index 0000000000..18b286d006
--- /dev/null
+++ b/gnu/packages/patches/obs-modules-location.patch
@@ -0,0 +1,33 @@
+From d250434e6c8eb4f8c8cb47ef3cc6e6de8fa8f828 Mon Sep 17 00:00:00 2001
+From: Alexey Abramov <levenson@mmer.org>
+Date: Fri, 15 Jan 2021 17:07:17 +0100
+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 @@
+ 
+ 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) {
++		struct dstr dstr_data_directory;
++		dstr_init_copy(&dstr_data_directory, data_directory);
++		dstr_cat(&dstr_data_directory, "/%module%");
++		obs_add_module_path(bin_directory, 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]);
++	}
+ }
+ 
+ /*
+-- 
+2.29.2
\ No newline at end of file
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 97cb7d6837..49823e9a88 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -47,6 +47,7 @@
 ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
 ;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru>
 ;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net>
+;;; Copyright © 2021 Alexey Abramov <levenson@mmer.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3088,7 +3089,9 @@ be used for realtime video capture via Linux-specific APIs.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1k1asqiqw757v59ayx0w029ril947hs0lcp8n91knzjl891fr4nc"))))
+                "1k1asqiqw757v59ayx0w029ril947hs0lcp8n91knzjl891fr4nc"))
+              (patches
+               (search-patches "obs-modules-location.patch"))))
     (build-system cmake-build-system)
     (arguments
      `(#:configure-flags
@@ -3103,6 +3106,15 @@ be used for realtime video capture via Linux-specific APIs.")
                (wrap-program (string-append out "/bin/obs")
                  `("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
              #t)))))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "OBS_PLUGINS_DIRECTORY")
+            (separator #f)                         ;single entry
+            (files '("lib/obs-plugins")))
+           (search-path-specification
+            (variable "OBS_PLUGINS_DATA_DIRECTORY")
+            (separator #f)                         ;single entry
+            (files '("share/obs/obs-plugins")))))
     (native-inputs
      `(("cmocka" ,cmocka)
        ("pkg-config" ,pkg-config)))
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* bug#45707: [PATCH] gnu: Add obs-v4l2sink.
  2021-01-20  8:28             ` Alexey Abramov
@ 2021-02-02  9:31               ` Ludovic Courtès
  0 siblings, 0 replies; 19+ messages in thread
From: Ludovic Courtès @ 2021-02-02  9:31 UTC (permalink / raw)
  To: Alexey Abramov; +Cc: 45707-done, Evan

Hi Alexey,

Alexey Abramov <levenson@mmer.org> skribis:

>>From f67bf04b57f45f0ca11cb6b902d22f7c4d44e005 Mon Sep 17 00:00:00 2001
> From: Alexey Abramov <levenson@mmer.org>
> Date: Fri, 15 Jan 2021 17:26:37 +0100
> Subject: [PATCH] gnu: obs: Use an environment variable for plugins location.
>
> * gnu/local.mk (dist_patch_DATA): Add it.
> * gnu/packages/video.scm (obs): Use it.
> * gnu/packages/patches/obs-modules-location.patch: Patch it.

Applied.  Thanks, and apologies for the delay!

Ludo’.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] (no subject)
  2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
  2021-01-06 23:42 ` Nicolò Balzarotti
  2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
@ 2021-02-02 20:00 ` Andrew Tropin
  2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
  3 siblings, 0 replies; 19+ messages in thread
From: Andrew Tropin @ 2021-02-02 20:00 UTC (permalink / raw)
  To: 45707

Hi everyone!

I have been doing the similar work related to obs load path and already
contibuted it to upstream [fn:1]. The patch was accepted and obs
currently support OBS_PLUGINS_PATH and OBS_PLUGINS_DATA_PATH out of the
box.

I've sent a patch with update to OBS version [fn:2] to get those changes
available in guix. Unluckily I was not aware of this thread before
Alexey replied to [fn:2] and also forgot to ask not to apply this patch.

As the changes [fn:1] is already in upstream and do the similar thing,
can we revert this patch and apply [fn:2] instead, please?

Sorry for missing this thread, forgetting to notify you earlier and all
the inconvenience.

* Footnotes

[fn:1] https://github.com/obsproject/obs-studio/pull/4067

[fn:2] http://issues.guix.gnu.org/46113

-- 
Best regards,
Andrew Tropin




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#45707] [PATCH] gnu: obs: Update obs to fb347c.
  2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
                   ` (2 preceding siblings ...)
  2021-02-02 20:00 ` [bug#45707] (no subject) Andrew Tropin
@ 2021-02-03 14:40 ` Andrew Tropin
  2021-02-03 21:11   ` [bug#46113] " Ludovic Courtès
  2021-02-04 10:45   ` guix-patches--- via
  3 siblings, 2 replies; 19+ messages in thread
From: Andrew Tropin @ 2021-02-03 14:40 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 46113, 45707-done

> Should we wait for the next OBS release instead of packaging an
> arbitrary commit?

I'm not in a hurry, but as I explained earlier in this thread [fn:2] it seems
relatively safe for me to use this commit and getting back later to
26.1.3 or 26.2.0 or whatever next release will be.

> I am not insist on keeping [1], but I do think that is more cleaner
> solution.

In terms of implememntation I like that [fn:1] prevents double loading
of plugins, by excluding obs installation dir from "load-path". However
double loading of the same plugin doesn't seem to break anything. Also,
OBS_PLUGINS_DIRECTORY variable name maybe a little better than
OBS_PLUGINS_PATH as it contains only one path.

The problem is that now there are two almost identical mechanisms (one
in upstream and one via patch [fn:1]), which can bring some maintanance
problems in the future.

There are two good option in my opinion:
- contribute patch from [fn:1] to upstream (reverting OBS_PLUGINS_PATH)
- revert [fn:1] and use OBS_PLUGINS_PATH from upstream

If Alexey ready to contibute OBS_PLUGINS_DIRECTORY patch to obs
(reverting OBS_PLUGINS_PATH), I would be glad to support it. Otherwise,
I would prefer to revert [fn:1] and apply this one. To prevent
maintanance problems in the future.

* Footnotes

[fn:2] http://issues.guix.gnu.org/46113 

[fn:1] https://issues.guix.gnu.org/45707 

--
Best regards,
Andrew Tropin




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#46113] [PATCH] gnu: obs: Update obs to fb347c.
  2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
@ 2021-02-03 21:11   ` Ludovic Courtès
  2021-02-04 10:45   ` guix-patches--- via
  1 sibling, 0 replies; 19+ messages in thread
From: Ludovic Courtès @ 2021-02-03 21:11 UTC (permalink / raw)
  To: Andrew Tropin; +Cc: 46113, 45707-done, Alexey Abramov

Hi!

Andrew Tropin <andrew@trop.in> skribis:

> The problem is that now there are two almost identical mechanisms (one
> in upstream and one via patch [fn:1]), which can bring some maintanance
> problems in the future.
>
> There are two good option in my opinion:
> - contribute patch from [fn:1] to upstream (reverting OBS_PLUGINS_PATH)
> - revert [fn:1] and use OBS_PLUGINS_PATH from upstream
>
> If Alexey ready to contibute OBS_PLUGINS_DIRECTORY patch to obs
> (reverting OBS_PLUGINS_PATH), I would be glad to support it. Otherwise,
> I would prefer to revert [fn:1] and apply this one. To prevent
> maintanance problems in the future.

I think it’s nicer to follow upstream in general, but I also don’t mind
using our OBS_PLUGINS_DIRECTORY patch until we upgrade to the next
release.

So, Andrew and Alexey: lemme know and I’ll apply what you consider best!

Ludo’.




^ permalink raw reply	[flat|nested] 19+ messages in thread

* [bug#46113] [PATCH] gnu: obs: Update obs to fb347c.
  2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
  2021-02-03 21:11   ` [bug#46113] " Ludovic Courtès
@ 2021-02-04 10:45   ` guix-patches--- via
  2021-02-04 12:49     ` bug#46113: " Andrew Tropin
  1 sibling, 1 reply; 19+ messages in thread
From: guix-patches--- via @ 2021-02-04 10:45 UTC (permalink / raw)
  To: Andrew Tropin; +Cc: 46113, 45707-done

Hi Andrew,

Andrew Tropin <andrew@trop.in> writes:

>> Should we wait for the next OBS release instead of packaging an
>> arbitrary commit?
>
> I'm not in a hurry, but as I explained earlier in this thread [fn:2] it seems
> relatively safe for me to use this commit and getting back later to
> 26.1.3 or 26.2.0 or whatever next release will be.
>
>> I am not insist on keeping [1], but I do think that is more cleaner
>> solution.
>
> In terms of implememntation I like that [fn:1] prevents double loading
> of plugins, by excluding obs installation dir from "load-path". However
> double loading of the same plugin doesn't seem to break anything. Also,
> OBS_PLUGINS_DIRECTORY variable name maybe a little better than
> OBS_PLUGINS_PATH as it contains only one path.
>
> The problem is that now there are two almost identical mechanisms (one
> in upstream and one via patch [fn:1]), which can bring some maintanance
> problems in the future.
>
> There are two good option in my opinion:
> - contribute patch from [fn:1] to upstream (reverting OBS_PLUGINS_PATH)

I would go with this one. But the thing is that [fn:1] is specific and
makes sense only for guix. At least from my point of view. So I doubt
that the upstream accept it. But you can try for sure.

> - revert [fn:1] and use OBS_PLUGINS_PATH from upstream
>
> If Alexey ready to contibute OBS_PLUGINS_DIRECTORY patch to obs
> (reverting OBS_PLUGINS_PATH), I would be glad to support it. Otherwise,
> I would prefer to revert [fn:1] and apply this one. To prevent
> maintanance problems in the future.

As I am not a regular obs user, I am afraid I won't be able to find time
for this soon. Feel free to use/delete/revert [fn:1]. It is your call.

> * Footnotes
>
> [fn:2] http://issues.guix.gnu.org/46113 
>
> [fn:1] https://issues.guix.gnu.org/45707 
>
> --
> Best regards,
> Andrew Tropin

-- 
Alexey




^ permalink raw reply	[flat|nested] 19+ messages in thread

* bug#46113: [PATCH] gnu: obs: Update obs to fb347c.
  2021-02-04 10:45   ` guix-patches--- via
@ 2021-02-04 12:49     ` Andrew Tropin
  0 siblings, 0 replies; 19+ messages in thread
From: Andrew Tropin @ 2021-02-04 12:49 UTC (permalink / raw)
  To: Alexey Abramov; +Cc: 46113-done, 45707-done

> > There are two good option in my opinion:
> > - contribute patch from [fn:1] to upstream (reverting OBS_PLUGINS_PATH)

> I would go with this one. But the thing is that [fn:1] is specific and
> makes sense only for guix. At least from my point of view. So I doubt
> that the upstream accept it. But you can try for sure.

> As I am not a regular obs user, I am afraid I won't be able to find
> time for this soon. Feel free to use/delete/revert [fn:1]. It is your
> call.

Thank you for the response!

Probably I won't find time to contribute a patch from [fn:1] to obs any
time soon too. So I will wait for next obs release and will update
package definition to use upstream solution once a new version is
released.

Thank you for your work, sorry for inconvenience)

--
Best regards,
Andrew Tropin




^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2021-02-04 12:57 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-06 23:36 [bug#45707] [PATCH] gnu: Add obs-v4l2sink Evan Straw
2021-01-06 23:42 ` Nicolò Balzarotti
2021-01-06 23:45   ` Evan Straw
2021-01-06 23:47 ` [bug#45707] [PATCH v2] " Evan Straw
2021-01-07  0:11   ` Nicolò Balzarotti
2021-01-07  4:37   ` Evan
2021-01-07  8:19     ` Alexey Abramov
2021-01-13 14:35       ` [bug#45707] [PATCH] " Ludovic Courtès
2021-01-15 16:47         ` Alexey Abramov
2021-01-16 21:47           ` Ludovic Courtès
2021-01-20  8:28             ` Alexey Abramov
2021-02-02  9:31               ` bug#45707: " Ludovic Courtès
2021-01-15 17:10   ` [bug#45707] [PATCH v2] " pelzflorian (Florian Pelz)
2021-01-15 19:25     ` Evan Straw
2021-02-02 20:00 ` [bug#45707] (no subject) Andrew Tropin
2021-02-03 14:40 ` [bug#45707] [PATCH] gnu: obs: Update obs to fb347c Andrew Tropin
2021-02-03 21:11   ` [bug#46113] " Ludovic Courtès
2021-02-04 10:45   ` guix-patches--- via
2021-02-04 12:49     ` bug#46113: " Andrew Tropin

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).