diff mbox series

[bug#39108] gnu: Add gst-editing-services.

Message ID 20200112234026.12266-1-leo.prikler@student.tugraz.at
State Accepted
Headers show
Series [bug#39108] gnu: Add gst-editing-services. | expand

Checks

Context Check Description
cbaines/applying patch success Successfully applied
cbaines/applying patch success Successfully applied
cbaines/applying patch success Successfully applied

Commit Message

Leo Prikler Jan. 12, 2020, 11:40 p.m. UTC
* gnu/packages/gstreamer (gst-editing-services): New variable.
---
 gnu/packages/gstreamer.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

Comments

Marius Bakke Jan. 13, 2020, 10:48 p.m. UTC | #1
Leo Prikler <leo.prikler@student.tugraz.at> writes:

> * gnu/packages/gstreamer (gst-editing-services): New variable.

Thanks!

[...]
  
> +(define-public gst-editing-services
> +  (package
> +    (name "gst-editing-services")
> +    (version "1.16.2")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "https://gstreamer.freedesktop.org/src/" name "/"
> +                    "gstreamer-editing-services-" version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc1hf"))))
> +    (build-system gnu-build-system)

IIRC gstreamer will no longer support gnu-build-system starting with
1.18.  So let's just go straight for Meson here, WDYT?

If you're up for it, it would be good to change the other gstreamer
packages already as well, to make the transition easier.

> +    (arguments
> +     ;; TODO: 16/22 failing tests with meson, 21 with gnu
> +     `(#:tests? #f))

When so many tests are failing, it is typically a sign that a dependency
or file is missing, e.g. execve("/bin/sh" ...) somewhere.  Can you try
to figure out what is causing these failures?

Otherwise LGTM, thanks!
Leo Prikler Jan. 14, 2020, 12:39 a.m. UTC | #2
Am Montag, den 13.01.2020, 23:48 +0100 schrieb Marius Bakke:
> Leo Prikler <leo.prikler@student.tugraz.at> writes:
> 
> > * gnu/packages/gstreamer (gst-editing-services): New variable.
> 
> Thanks!
> 
> [...]
>   
> > +(define-public gst-editing-services
> > +  (package
> > +    (name "gst-editing-services")
> > +    (version "1.16.2")
> > +    (source (origin
> > +              (method url-fetch)
> > +              (uri (string-append
> > +                    "https://gstreamer.freedesktop.org/src/" name
> > "/"
> > +                    "gstreamer-editing-services-" version
> > ".tar.xz"))
> > +              (sha256
> > +               (base32
> > +                "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc
> > 1hf"))))
> > +    (build-system gnu-build-system)
> 
> IIRC gstreamer will no longer support gnu-build-system starting with
> 1.18.  So let's just go straight for Meson here, WDYT?
Sure, why not?  It would at least build, though I've "tested" only the
gnu version in terms of actual editing capabilities (some lightweight
clip mixing).

> If you're up for it, it would be good to change the other gstreamer
> packages already as well, to make the transition easier.
> 
> > +    (arguments
> > +     ;; TODO: 16/22 failing tests with meson, 21 with gnu
> > +     `(#:tests? #f))
> 
> When so many tests are failing, it is typically a sign that a
> dependency
> or file is missing, e.g. execve("/bin/sh" ...) somewhere.  Can you
> try
> to figure out what is causing these failures?
Not easily, sadly.  Gstreamer 1.16.2 broke for me in some quite
interesting ways, even outside of packaging, and I have little trust in
my ability to fix it – other than applying some kind of workaround for
my personal use.  (See 39126 for details.)
From what I recall, most of the failing tests are not even failing,
they are erroring, outputting some critical message and a stack trace. 
The problem here is, that you get get critical errors if even just one
element inside a large pipeline behaves badly.  Of course, you can get
the same kind of error, but with a different message, if the plugin
can't even be found.

As far as building gstreamer with meson is concerned, I can look into
it, but the gstreamer package itself has 400 dependants and thus
belongs to staging.  I'm not quite sure whether we can get
implementation + reviews done before the 19th, but let's see what's
possible.

Regards,
Leo
diff mbox series

Patch

diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 323e3ccfee..14dbf5a7ed 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -419,6 +419,37 @@  distribution problems in some jurisdictions, e.g. due to patent threats.")
 compression formats through the use of the libav library.")
     (license license:gpl2+)))
 
+(define-public gst-editing-services
+  (package
+    (name "gst-editing-services")
+    (version "1.16.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://gstreamer.freedesktop.org/src/" name "/"
+                    "gstreamer-editing-services-" version ".tar.xz"))
+              (sha256
+               (base32
+                "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc1hf"))))
+    (build-system gnu-build-system)
+    (arguments
+     ;; TODO: 16/22 failing tests with meson, 21 with gnu
+     `(#:tests? #f))
+    (inputs
+     `(("gst-plugins-base" ,gst-plugins-base)
+       ("libxml2" ,libxml2)))
+    (native-inputs
+     `(("flex" ,flex)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python)))
+    (home-page "https://gstreamer.freedesktop.org/")
+    (synopsis "GStreamer library for non-linear editors")
+    (description
+     "This is a high-level library for facilitating the creation of audio/video
+non-linear editors.")
+    (license license:gpl2+)))
+
 (define-public python-gst
   (package
     (name "python-gst")