From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Famulari Subject: Re: [PATCH] gnu: Add pianobar. Date: Thu, 11 Feb 2016 23:51:21 -0500 Message-ID: <20160212045121.GA30431@jasmine> References: <87lh6rn0zf.fsf@atonesir.com> <871t8jvf3o.fsf@elephly.net> <87io1vlyk2.fsf@atonesir.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:36830) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aU5hW-0002gA-Vz for guix-devel@gnu.org; Thu, 11 Feb 2016 23:51:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aU5hT-0006kY-MQ for guix-devel@gnu.org; Thu, 11 Feb 2016 23:51:26 -0500 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:51691) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aU5hT-0006kM-Hf for guix-devel@gnu.org; Thu, 11 Feb 2016 23:51:23 -0500 Content-Disposition: inline In-Reply-To: <87io1vlyk2.fsf@atonesir.com> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Al McElrath Cc: guix-devel@gnu.org On Thu, Feb 11, 2016 at 01:36:13PM -0800, Al McElrath wrote: > > Revised patch is attached. I updated/expanded the description and fixed > the license. Thanks! > > From 91d5c428428eed605c981a39022fe90e6f98be6d Mon Sep 17 00:00:00 2001 > From: Al McElrath > Date: Fri, 11 Dec 2015 21:22:33 -0800 > Subject: [PATCH] gnu: Add pianobar. > > * gnu/packages/music.scm (pianobar): New variable. One nice thing about "real" radio stations is that you don't need an account to listen to them ;) Anyways, I tested it as far as I could: $ pianobar Welcome to pianobar (2015.11.22)! Press ? for a list of commands. [?] Email: [?] Password: (i) Login... Network error: Peer certificate cannot be authenticated with given CA certificates That error seems to describe a problem unrelated to me not having an account. Can you see what happens when you leave the Email and Password fields blank? Of course, the message might be wrong, and it works if you have an account. If so, then I think it's okay (but buggy). If not, then it must be finding the certificate store in the environment and we should figure out how to provide it reliably. > --- > gnu/packages/music.scm | 38 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 38 insertions(+) > > diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm > index a60ba4b..1382b0a 100644 > --- a/gnu/packages/music.scm > +++ b/gnu/packages/music.scm > @@ -2,6 +2,7 @@ > ;;; Copyright © 2014 Eric Bavier > ;;; Copyright © 2015, 2016 Ricardo Wurmus > ;;; Copyright © 2015 Paul van der Walt > +;;; Copyright © 2016 Al McElrath > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -39,6 +40,7 @@ > #:use-module (gnu packages code) > #:use-module (gnu packages check) > #:use-module (gnu packages compression) > + #:use-module (gnu packages curl) > #:use-module (gnu packages docbook) > #:use-module (gnu packages doxygen) > #:use-module (gnu packages flex) > @@ -46,6 +48,7 @@ > #:use-module (gnu packages fonts) > #:use-module (gnu packages fontutils) > #:use-module (gnu packages gcc) > + #:use-module (gnu packages gnupg) > #:use-module (gnu packages gettext) > #:use-module (gnu packages ghostscript) > #:use-module (gnu packages gl) > @@ -1078,3 +1081,38 @@ computer's keyboard.") > JACK for audio and ALSA sequencer for MIDI as multimedia infrastructures and > follows a traditional multi-track tape recorder control paradigm.") > (license license:gpl2+))) > + > +(define-public pianobar > + (package > + (name "pianobar") > + (version "2015.11.22") > + (source (origin > + (method url-fetch) > + (uri (string-append "https://github.com/PromyLOPh/" > + name "/archive/" version ".tar.gz")) > + (file-name (string-append name "-" version ".tar.gz")) > + (sha256 > + (base32 > + "022df19bhxqvkhy0qy21xahba5s1fm17b13y0p9p9dnf2yl44wfv")))) > + (build-system gnu-build-system) > + (arguments > + `(#:tests? #f ; no tests > + #:make-flags (list "CC=gcc" "CFLAGS=-std=c99" > + (string-append "PREFIX=" %output)) > + #:phases (modify-phases %standard-phases > + (delete 'configure)))) > + (inputs > + `(("ao" ,ao) > + ("curl" ,curl) > + ("libgcrypt" ,libgcrypt) > + ("json-c" ,json-c) > + ("ffmpeg" ,ffmpeg))) > + (native-inputs > + `(("pkg-config" ,pkg-config))) > + (home-page "http://6xq.net/projects/pianobar/") > + (synopsis "Console-based pandora.com player") > + (description "pianobar is a console-based music player for the > +personalized online radio pandora.com. It has configurable keys for playing > +and managing stations, can be controlled remotely via fifo, and can run > +event-based scripts for scrobbling, notifications, etc.") > + (license license:expat))) > -- > 2.5.0 > > > Ricardo Wurmus writes: > > > Al McElrath writes: > > > >> Another new package. Feedback appreciated. > > > > Thank you for the patch! > > > >> This is free software, but it > >> only works with a non-free music service, Pandora. Is that acceptable? > > > > The concept of “non-free” doesn’t directly apply to services. See > > “Untangling the SaaSS Issue from the Proprietary Software Issue” here: > > > > https://www.gnu.org/philosophy/who-does-that-server-really-serve.en.html > > > > and also this: > > > > https://www.gnu.org/philosophy/network-services-arent-free-or-nonfree.html > > > > I don’t know anything about Pandora (I do know my mythology, though), so > > I’m not in a position to anticipate and answer questions about it. In > > general I think that if “pianobar” itself is free software (which you > > say it is) and you do not need to use non-free software to set it up in > > the first place then it is probably acceptable. > > > > Now, on to a review of the patch! > > > >> From 4f477999635b4a16f19ef0833727abcf899dbb69 Mon Sep 17 00:00:00 2001 > >> From: Al McElrath > >> Date: Fri, 11 Dec 2015 21:22:33 -0800 > >> Subject: [PATCH] gnu: Add pianobar. > > > >> * gnu/packages/music.scm (pianobar): New variable. > >> --- > >> gnu/packages/music.scm | 36 ++++++++++++++++++++++++++++++++++++ > >> 1 file changed, 36 insertions(+) > > > >> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm > >> index a60ba4b..c5a6dc5 100644 > >> --- a/gnu/packages/music.scm > >> +++ b/gnu/packages/music.scm > >> @@ -2,6 +2,7 @@ > >> ;;; Copyright © 2014 Eric Bavier > >> ;;; Copyright © 2015, 2016 Ricardo Wurmus > >> ;;; Copyright © 2015 Paul van der Walt > >> +;;; Copyright © 2016 Al McElrath > >> ;;; > >> ;;; This file is part of GNU Guix. > >> ;;; > >> @@ -39,6 +40,7 @@ > >> #:use-module (gnu packages code) > >> #:use-module (gnu packages check) > >> #:use-module (gnu packages compression) > >> + #:use-module (gnu packages curl) > >> #:use-module (gnu packages docbook) > >> #:use-module (gnu packages doxygen) > >> #:use-module (gnu packages flex) > >> @@ -46,6 +48,7 @@ > >> #:use-module (gnu packages fonts) > >> #:use-module (gnu packages fontutils) > >> #:use-module (gnu packages gcc) > >> + #:use-module (gnu packages gnupg) > >> #:use-module (gnu packages gettext) > >> #:use-module (gnu packages ghostscript) > >> #:use-module (gnu packages gl) > >> @@ -1078,3 +1081,36 @@ computer's keyboard.") > >> JACK for audio and ALSA sequencer for MIDI as multimedia infrastructures and > >> follows a traditional multi-track tape recorder control paradigm.") > >> (license license:gpl2+))) > >> + > >> +(define-public pianobar > >> + (package > >> + (name "pianobar") > >> + (version "2015.11.22") > >> + (source (origin > >> + (method url-fetch) > >> + (uri (string-append "https://github.com/PromyLOPh/" > >> + name "/archive/" version ".tar.gz")) > >> + (file-name (string-append name "-" version ".tar.gz")) > >> + (sha256 > >> + (base32 > >> + "022df19bhxqvkhy0qy21xahba5s1fm17b13y0p9p9dnf2yl44wfv")))) > >> + (build-system gnu-build-system) > >> + (arguments > >> + `(#:tests? #f ; no tests > >> + #:make-flags (list "CC=gcc" "CFLAGS=-std=c99" > >> + (string-append "PREFIX=" %output)) > >> + #:phases (modify-phases %standard-phases > >> + (delete 'configure)))) > >> + (inputs > >> + `(("ao" ,ao) > >> + ("curl" ,curl) > >> + ("libgcrypt" ,libgcrypt) > >> + ("json-c" ,json-c) > >> + ("ffmpeg" ,ffmpeg))) > >> + (native-inputs > >> + `(("pkg-config" ,pkg-config))) > >> + (home-page "http://6xq.net/projects/pianobar/") > >> + (synopsis "Console-based pandora.com player") > >> + (description "pianobar is a free/open-source, console-based client for the > >> +personalized online radio Pandora.") > > > > Everything in Guix qualifies as free software, so we do not need to > > explicitly mention that it is free software. Maybe the description is a > > little bit short — could you possibly incorporate parts of the feature > > list? > > > >> + (license license:x11))) > > > > I think it’s the Expat license, not X11. I only compared these > > texts: > > > > https://github.com/PromyLOPh/pianobar/blob/master/COPYING > > http://directory.fsf.org/wiki/License:Expat > > http://directory.fsf.org/wiki/License:X11 > > > > Thanks again and welcome! > > > > ~~ Ricardo > > > > > >