Subject: Re: bug#27044: [PATCH 1/3] gnu: video: Add libzen.

From: Marius Bakke <[email-masked]>
Date: Wed, 24 May 2017 18:29:13 +0200

"Ethan R. Jones" <[email-masked]> writes:

> * gnu/packages/video.scm (libzen): New variable.
> ---
>  gnu/packages/video.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
> index b7c26a042..bc3fa48b8 100644
> --- a/gnu/packages/video.scm
> +++ b/gnu/packages/video.scm
> @@ -2052,3 +2052,39 @@ file format that has been used as a multimedia file format in a variety of platf
>  applications.  It is a very powerful and extensible format that can accommodate
>  practically any type of media.")
>      (license license:mpl1.1)))
> +
> +(define-public libzen
> +  (package
> +    (name "libzen")
> +    (version "0.4.35")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://mediaarea.net/download/source/"
> +                                  name "/" version "/"
> +                                  name "_" version ".tar.bz2"))
> +              (file-name (string-append name "-" version ".tar.bz2"))

Is it necessary to set a file-name here? IMO $name_$version is fine, but
the linter may have a different opinion.

> +              (sha256
> +               (base32
> +                "12a1icgcffgv503ii2k1453kxg5hfly09mf4zjcc80aq8a6rf8by"))))
> +    (native-inputs
> +     `(("autoconf" ,autoconf)
> +       ("automake" ,automake)
> +       ("libtool" ,libtool)))
> +    (build-system gnu-build-system)
> +    (arguments
> +     '(#:phases
> +       ;; build scripts not in root of archive
> +       (modify-phases %standard-phases
> +         (add-before
> +             'configure 'pre-configure
> +           (lambda _
> +             (chdir "Project/GNU/Library")))
> +         (add-before 'configure 'autogen
> +           (lambda _
> +             (zero? (system* "./autogen.sh")))))))
> +    (home-page "https://github.com/MediaArea/ZenLib")
> +    (synopsis "C++ utility library")
> +    (description "ZenLib is a C++ utility library.  It includes classes for handling
> +strings, configuration, bit streams, threading, translation, and cross-platform
> +operating system functions.")
> +    (license license:bsd-2)))

I don't think video.scm is a good location for this package definition.
Though I'm not sure which module is most appropriate. Maybe 'code.scm'?
Or perhaps create a "cpp.scm" for these generic C++ libraries?

PS: No need to open separate bugs, you can just send the updated patches
here. Bonus points if you add a subject prefix like "PATCH v2" for the
next batch.