Subject: bug#38625: closed (Re: [bug#38625] Fwd: [bug#38625] [PATCH] music.scm: Add glyr)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 19 Nov 2020 09:28:02 +0000

Your bug report

#38625: [PATCH] music.scm: Add glyr

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
38625: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38625
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#38625] Fwd: [bug#38625] [PATCH] music.scm: Add glyr
From: Christopher Baines <[email-masked]>
To: Riku Viitanen <[email-masked]>
Cc: [email-masked]
Date: Thu, 19 Nov 2020 09:27:06 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Riku Viitanen <[email-masked]> writes:

> Hi Ricardo, and thanks for the feedback!
>
> I think all the mentioned issues should now be fixed.
> I checked some of the source files, and it turns out they say permit any
> later version of the license, so I changed the license to lgpl3+.
> Only the README file mentions "just" LGPLv3 without saying anything about
> later versions, so I thought it meant the same as "only".

Hi Riku,

Apologies for the delay in following up on this.

I've gone ahead and pushed the package definition to master as
aee183e1a57aa7606c79d9375e8e3f13e7726e41. I made some tweaks which I'll
describe below.

Also, I couldn't figure out how to apply the patch you included. Because
of things like email clients wrapping lines, the best approach for
sending patches is "git send-email", and if that isn't an option,
attaching the patch files to an email is the next best option.

> Here's the new patch in git format:
>
> From 97d4d5d7d16eb87896d81e070510d919118aa622 Mon Sep 17 00:00:00 2001
> From: Riku Viitanen <[email-masked]>
> Date: Wed, 18 Dec 2019 18:30:14 +0200
> Subject: [PATCH] gnu: Add glyr
>
> * gnu/packages/music.scm (glyr): New variable
> ---
>  gnu/packages/music.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index f80fb067e8..0adfa96fbe 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -25,6 +25,7 @@
>  ;;; Copyright © 2019 raingloom <[email-masked]>
>  ;;; Copyright © 2019 David Wilson <[email-masked]>
>  ;;; Copyright © 2019 Alexandros Theodotou <[email-masked]>
> +;;; Copyright © 2019 Riku Viitanen <[email-masked]>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -5106,3 +5107,37 @@ MIDI drums and comes as two separate drumkits: Black
> Pearl and Red Zeppelin.")
>      (description "Helm is a cross-platform polyphonic synthesizer
> available standalone
>  and as an LV2 plugin.")
>      (license license:gpl3+)))
> +
> +(define-public glyr
> +  (package
> +    (name "glyr")
> +    (version "1.0.10")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                     (url "https://github.com/sahib/glyr.git")
> +                     (commit version)))
> +              (file-name (git-file-name name version))
> +              (sha256
> +                (base32
> +                 "1miwbqzkhg0v3zysrwh60pj9sv6ci4lzq2vq2hhc6pc6hdyh8xyr"))))
> +    (build-system cmake-build-system)
> +    (arguments
> +     '(#:tests? #f))

So I had a go at running the tests. Unfortunately some of them depend on
the network, so I was only able to run some of them. There's also Python
tests, but I think that requires packaging some additional Python
libraries, so I've just put a comment in about that.

> +    (inputs
> +     `(("glib" ,glib)
> +       ("curl" ,curl)
> +       ("sqlite" ,sqlite)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (home-page "https://github.com/sahib/glyr")
> +    (synopsis "Search engine for music related metadata")
> +    (description
> +     "Glyr comes both in a command-line interface tool (@command{glyrc})
> and
> +as a C library (libglyr), both with an easy to use interface. The sort of
> +metadata glyr is searching (and downloading) is usually the data you see in
> +your musicplayer. And indeed, originally it was written to serve as
> internally
> +library for a musicplayer, but has been extended to work as a standalone
> +program which is able to download cover art, lyrics, photos, biographies,
> +reviews and more.")
> +    (license license:lgpl3+)))

Thanks again for the patch,

Chris

Subject: [PATCH] music.scm: Add glyr
From: Riku Viitanen <[email-masked]>
To: [email-masked]
Date: Sun, 15 Dec 2019 18:10:05 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Glyr contains a C library and a CLI tool for fetching album art and
metadata about music.

For example, abcde can use it to automatically download cover art.

diff a/guix/gnu/packages/music.scm b/guix/gnu/packages/music.scm
27a28
> ;;; Copyright © 2019 Riku Viitanen <[email-masked]>
5108a5110,5166
>
> (define-public glyr
>   (package
>     (name "glyr")
>     (version "1.0.10")
>     (source
>      (origin
>        (method url-fetch)
>        (uri (string-append "https://github.com/sahib/glyr/archive/"
>                            version ".tar.gz"))
>        (sha256
>         (base32 "1s06m1619j3kqgmnh9qv9bbqwvzjd4h4hdja5rhjg38w49hdms3p"))))
>     (build-system cmake-build-system)
>     (arguments
>      '(#:tests? #f)) ; no check target))
>     (inputs
>      `(("glib" ,glib)
>        ("curl" ,curl)
>        ("sqlite" ,sqlite)
>        ("pkg-config" ,pkg-config)))
>     (home-page "https://github.com/sahib/glyr")
>     (synopsis "Search engine for music related metadata")
>     (description
>      "It comes both in a command-line interface tool (@command{glyrc})
and as a C library (libglyr), both
> with an easy to use interface. The sort of metadata glyr is searching
(and
> downloading) is usually the data you see in your musicplayer. And indeed,
> originally it was written to serve as internally library for a
musicplayer,
> but has been extended to work as a standalone program which is able to
download:
> @table @code
> @item cover
> Coverart (front images supported only)
> @item lyrics
> Songtext
> @item artistphotos
> Photos of a certain band (press or live)
> @item rtistbio
> Artist biography from various sites
> @item review
> Album reviews from various sites
> @item albumlist
> A list of albums from a specific artist.
> @item tags
> Tags, either related to artist, album or title
> @item relations
> Links to Wikipedia, Myspace, MusicBrainz …
> @item similarartists
> Similar artists
> @item similarsongs
> Similar songs
> @item tracklist
> Tracklist of an album
> @item guitartabs
> Guitartabs in textual form
> @item backdrops
> Large artist photos, suitable for backgrounds
> @end table")
>     (license license:lgpl3)))