From aee183e1a57aa7606c79d9375e8e3f13e7726e41 Mon Sep 17 00:00:00 2001 From: Riku Viitanen Date: Thu, 19 Nov 2020 08:51:00 +0000 Subject: [PATCH] gnu: Add glyr. * gnu/packages/music.scm (glyr): New variable. Signed-off-by: Christopher Baines --- gnu/packages/music.scm | 55 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 0728144b60..f45720d1ec 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2020 Michael Rohleder ;;; Copyright © 2020 Tanguy Le Carrour ;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2019 Riku Viitanen ;;; ;;; This file is part of GNU Guix. ;;; @@ -944,6 +945,60 @@ (define-public klick you to define complex tempo maps for entire songs or performances.") (license license:gpl2+))) +(define-public glyr + (package + (name "glyr") + (version "1.0.10") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sahib/glyr") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1miwbqzkhg0v3zysrwh60pj9sv6ci4lzq2vq2hhc6pc6hdyh8xyr")))) + (build-system cmake-build-system) + (arguments + '(#:configure-flags '("-DTEST=true") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-tests + (lambda _ + (substitute* "spec/capi/check_api.c" + (("fail_unless \\(c != NULL,\"Could not load www.google.de\"\\);") + "")) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; capi tests + (invoke "bin/check_api") + ;; (invoke "bin/check_opt") TODO Very dependent on the network + (invoke "bin/check_dbc")) + + ;; TODO Work out how to run the spec/providers Python tests + #t))))) + (inputs + `(("glib" ,glib) + ("curl" ,curl) + ("sqlite" ,sqlite))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("check" ,check))) + (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). + +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+))) + (define-public gtklick (package (name "gtklick")