[PATCH] gnu: node: Update to 6.8.0.

2016-10-14 Thread Al McElrath
I took Jelle's 6.4.0 patch and updated it to 6.8.0. I only updated the
version and included a patch that is specific to 6.8.0. Hopefully this
version will have more success. I reset the author to myself. Not sure
what the protocol is for patching someone else's patch.

>From e847558aa98e7f3f1d7abe3b89bcf52d8122b325 Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Fri, 14 Oct 2016 16:39:44 -0700
Subject: [PATCH] gnu: node: Update to 6.8.0.

Remove <https://debbugs.gnu.org/23744> and
<https://debbugs.gnu.org/23723> workaround.

* gnu/packages/node.scm (node): Update to 6.8.0.
  (node)[arguments]: Disabled more tests. Remove custom 'patch-shebangs'
  phase. Manually patch npm script shebang in new 'patch-npm-shebang'
  phase.
* gnu/packages/patches/node-9077.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patches.
---
 gnu/local.mk |  1 +
 gnu/packages/node.scm| 34 +++---
 gnu/packages/patches/node-9077.patch | 30 ++
 3 files changed, 46 insertions(+), 19 deletions(-)
 create mode 100644 gnu/packages/patches/node-9077.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index a9343f0..979569a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -722,6 +722,7 @@ dist_patch_DATA =		\
   %D%/packages/patches/ngircd-no-dns-in-tests.patch		\
   %D%/packages/patches/ninja-tests.patch			\
   %D%/packages/patches/ninja-zero-mtime.patch			\
+  %D%/packages/patches/node-9077.patch\
   %D%/packages/patches/nss-pkgconfig.patch			\
   %D%/packages/patches/nvi-assume-preserve-path.patch		\
   %D%/packages/patches/nvi-dbpagesize-binpower.patch		\
diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 887ef93..617dffc 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -25,6 +25,7 @@
   #:use-module (guix derivations)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
   #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages gcc)
@@ -37,14 +38,16 @@
 (define-public node
   (package
 (name "node")
-(version "6.0.0")
+(version "6.8.0")
 (source (origin
   (method url-fetch)
   (uri (string-append "http://nodejs.org/dist/v; version
   "/node-v" version ".tar.gz"))
   (sha256
(base32
-"0cpw7ng193jgfbw2g1fd0kcglmjjkbj4xb89g00z8zz0lj0nvdbd"
+"0lj3250hglz4w5ic4svd7wlg2r3qc49hnasvbva1v69l8yvx98m8"))
+  ;; https://github.com/nodejs/node/pull/9077
+  (patches (search-patches "node-9077.patch"
 (build-system gnu-build-system)
 (arguments
  ;; TODO: Package http_parser and add --shared-http-parser.
@@ -78,10 +81,10 @@
  ;; FIXME: These tests fail in the build container, but they don't
  ;; seem to be indicative of real problems in practice.
  (for-each delete-file
-   '("test/parallel/test-cluster-master-error.js"
+   '("test/parallel/test-dgram-membership.js"
+ "test/parallel/test-cluster-master-error.js"
  "test/parallel/test-cluster-master-kill.js"
  "test/parallel/test-npm-install.js"
- "test/parallel/test-stdout-close-unref.js"
  "test/sequential/test-child-process-emfile.js"))
  #t))
  (replace 'configure
@@ -101,22 +104,15 @@
  (string-append (assoc-ref inputs "python")
 "/bin/python")
  "configure" flags)
- (replace 'patch-shebangs
-   (lambda* (#:key outputs #:allow-other-keys #:rest all)
- ;; Work around <http://bugs.gnu.org/23723>.
- (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
-(npm(string-append (assoc-ref outputs "out")
-   "/bin/npm"))
+ (add-after 'patch-shebangs 'patch-npm-shebang
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((bindir (string-append (assoc-ref outputs "out")
+   "/bin"))
+(npm(string-append bindir "/npm"))
 (target (readlink npm)))
-   (and (apply patch all)
-(with-directory-excursion (dirname npm)
-  ;; Turn NPM into a symlink to TARGET again, which 'npm'
-  ;; relies on for the resolution of relative file n

[PATCH] gnu: sane-backends: Update to 1.0.25

2016-10-06 Thread Al McElrath
Attached is a patch to update sane-backends to 1.0.25. I checked and the
tests are still failing.

>From deaf7c884363361b043e5b1008e30bfc84f7216c Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Thu, 6 Oct 2016 12:01:31 -0700
Subject: [PATCH] gnu: sane-backends: Update to 1.0.25.

* gnu/packages/scanner.scm (sane-backends): Update to 1.0.25.
---
 gnu/packages/scanner.scm | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/scanner.scm b/gnu/packages/scanner.scm
index 76e11a9..76817b3 100644
--- a/gnu/packages/scanner.scm
+++ b/gnu/packages/scanner.scm
@@ -29,15 +29,15 @@
 (define-public sane-backends
   (package
 (name "sane-backends")
-(version "1.0.24")
+(version "1.0.25")
 (source (origin
  (method url-fetch)
- (uri (string-append 
-   "https://alioth.debian.org/frs/download.php/file/3958/;
+ (uri (string-append
+   "https://alioth.debian.org/frs/download.php/file/4146/;
name "-" version ".tar.gz"))
  (sha256
   (base32
-   "0ba68m6bzni54axjk15i51rya7hfsdliwvqyan5msl7iaid0iir7"
+   "0b3fvhrxl4l82bf3v0j47ypjv6a0k5lqbgknrq1agpmjca6vmmx4"
 (build-system gnu-build-system)
 (native-inputs
  `(("pkg-config" ,pkg-config)))
@@ -73,4 +73,3 @@ proving access to any raster image scanner hardware (flatbed scanner,
 hand-held scanner, video- and still-cameras, frame-grabbers, etc.).  The
 package contains the library and drivers.")
 (license licence:gpl2+))) ; plus linking exception
-
-- 
2.6.3



[PATCH] gnu: offlineimap: Update to 7.0.5.

2016-08-15 Thread Al McElrath
Attached is a patch for offlineimap 7.0.5.

>From 7a30409283dc5d87887e6a6266e544c8856ea385 Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Mon, 15 Aug 2016 09:35:46 -0700
Subject: [PATCH] gnu: offlineimap: Update to 7.0.5.

* gnu/packages/mail.scm (offlineimap): Update to 7.0.5.
---
 gnu/packages/mail.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 4775e3e..e36740f 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -296,7 +296,7 @@ and corrections.  It is based on a Bayesian filter.")
 (define-public offlineimap
   (package
 (name "offlineimap")
-(version "7.0.4")
+(version "7.0.5")
 (source (origin
   (method url-fetch)
   (uri (string-append "https://github.com/OfflineIMAP/offlineimap/;
@@ -304,7 +304,7 @@ and corrections.  It is based on a Bayesian filter.")
   (file-name (string-append name "-" version ".tar.gz"))
   (sha256
(base32
-"1g1ylvz214iydskvanzyac7kgmz61s5bqmpzz5hm11mrllkq111z"
+"05wm7qix4ikx6hi57a1qc3hb5fv1vksbg6dgvmd8871y5l1qqrkn"
 (build-system python-build-system)
 (inputs `(("python2-pysqlite" ,python2-pysqlite)
   ("python2-six" ,python2-six)))
-- 
2.6.3



Re: [PATCH] gnu: Add surf.

2016-05-09 Thread Al McElrath
Awesome, thank you. I realize now surf would be crashing, if not for
already having gsettings-desktop-schemas installed. Should I have added
dmenu, etc. to to the description? How are optional dependencies
handled?

宋文武 <iyzs...@member.fsf.org> writes:

> Al McElrath <he...@yrns.org> writes:
>
>> Attached is a patch to add surf, a simple WebKit browser. The
>> suckless.org site doesn't support HTTPS.
>>
> I change it to use glib-or-gtk-build-system and add glib-networking
> and gsettings-desktop-schemas to make it running and support https.
> Also user should install dmenu, xprop and maybe st to make
> surf more useful.
>
> Applied, thanks!



Re: [PATCH] gnu: i3status: Update to 2.10.

2016-05-09 Thread Al McElrath
Sorry I missed the changelog entry.

I actually can't test the %speed element because it only works with
wired connections (I'm on wireless right now). The man page just says it
should show the link speed. I don't think it's a big deal because the
man page is rather clear about how to make it work, and maybe it's not
something we want to assign by default anyway. i3status definitely
doesn't need setuid.

Thanks for reviewing and fixing up the patch!


Leo Famulari <l...@famulari.name> writes:

> On Fri, May 06, 2016 at 02:01:08PM -0400, Leo Famulari wrote:
>> On Mon, May 02, 2016 at 04:07:19PM -0700, Al McElrath wrote:
>> > 
>> > Attached is a patch to update i3status to 2.10.
>> 
>> Thanks, it works! The changed library dependencies seem to be
>> working for me. Applied as 766a22fb4d1, preceded by a switch to https
>> URLs (I had to rebase your patch to adopt the changed home-page link
>> text).
>
> Oops, I didn't notice that the patch lacked a changelog entry, and
> committed without it. We will both have to be more careful in the
> future!
>
> It should have been like this:
>
> * gnu/packages/wm.scm (i3status): Update to 2.10.
>
>> 
>> > The Makefile runs "setcap cap_net_admin=ep
>> > $(DESTDIR)$(PREFIX)/bin/i3status)", which wasn't working in the prior
>> > version, either. It makes the "%speed" element of the "ethernet" module
>> > functional. I'm not sure how to handle that one. The package is
>> > otherwise functional.
>> 
>> I'm not sure what counts as "functional". For me, it shows the link
>> speed: 1000 Mbits. Should it dynamically show the bandwidth usage?
>> 
>> In any case, I tried making it a setuid binary, but that didn't seem to
>> create a change, and it's probably a bad idea anyways, since they only
>> ask for the cap_net_admin. Is i3status designed to be setuid?
>> 
>> I don't know how to set just this capability in Guix.
>> 
>> Advice appreciated!
>




[PATCH] gnu: Add surf.

2016-05-09 Thread Al McElrath

Attached is a patch to add surf, a simple WebKit browser. The
suckless.org site doesn't support HTTPS.

>From c637648e94b947258a09986a2364002f801053a6 Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Sat, 7 May 2016 19:59:00 -0700
Subject: [PATCH] gnu: Add surf.

* gnu/packages/suckless.scm (surf): New variable.
---
 gnu/packages/suckless.scm | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index c921f8e..81e89fb 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipec...@gmail.com>
 ;;; Copyright © 2015 Amirouche Boubekki <amirou...@hypermove.net>
+;;; Copyright © 2016 Al McElrath <he...@yrns.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,6 +27,7 @@
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages webkit)
   #:use-module (gnu packages fontutils))
 
 (define-public dwm
@@ -189,3 +191,36 @@ implements 256 colors, most VT10X escape sequences, utf8, X11 copy/paste,
 antialiased fonts (using fontconfig), fallback fonts, resizing, and line
 drawing.")
 (license license:x11)))
+
+(define-public surf
+  (package
+(name "surf")
+(version "0.7")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "http://dl.suckless.org/surf/surf-;
+   version ".tar.gz"))
+   (sha256
+(base32
+ "0jj93izd8fizxfa6ln9w1h9bwki81sz5dhskh5x1rl34zd38aq4m"
+(build-system gnu-build-system)
+(arguments
+ '(#:tests? #f ; no tests
+   #:make-flags (list "CC=gcc"
+  (string-append "PREFIX=" %output))
+   #:phases
+   (modify-phases %standard-phases
+ (delete 'configure
+(inputs
+ `(("webkitgtk/gtk+-2" ,webkitgtk/gtk+-2)))
+(native-inputs
+ `(("pkg-config" ,pkg-config)))
+(home-page "http://surf.suckless.org/;)
+(synopsis "Simple web browser")
+(description
+ "Surf is a simple web browser based on WebKit/GTK+.  It is able to
+display websites and follow links.  It supports the XEmbed protocol which
+makes it possible to embed it in another application.  Furthermore, one can
+point surf to another URI by setting its XProperties.")
+(license license:x11)))
-- 
2.6.3



Re: [PATCH] gnu: Add pianobar.

2016-02-13 Thread Al McElrath

I tracked this down a bit further. There is nothing wrong with Pandora's
cert. If I specify in pianobar's config file to use:

ca_bundle = /home/al/.guix-profile/etc/ssl/certs/ca-certificates.crt

It works. Note if I 'env | grep SSL' I get:

SSL_CERT_DIR=/home/al/.guix-profile/etc/ssl/certs
SSL_CERT_FILE=/home/al/.guix-profile/etc/ssl/certs/ca-certificates.crt

I was under the impression libcurl (which pianobar uses) would honor
these variables, but it appears it does not. Or there's something wrong
with my guix setup which is running on Arch.

I can patch pianobar to use SSL_CERT_FILE by default, but it seems like
there is a larger issue.


Leo Famulari <l...@famulari.name> writes:

> On Thu, Feb 11, 2016 at 10:00:17PM -0800, Al McElrath wrote:
>> 
>> Thanks for testing and pointing this out. Real radio stations require
>> too much manual effort! That said...
>> 
>> You should be getting a different error without a login (pandora.com
>> requires a login): "(i) Login... Error: Wrong email address or
>> password." There is an outstanding issue with pianobar regarding
>> Pandora's certificate described here:
>> 
>> https://github.com/PromyLOPh/pianobar/issues/560
>> 
>> There is a config file option "ca_file" which I use with a pem file I
>> downloaded. There is also a "tls_fingerprint" option described in the
>> bug commentary. This broke recently when Pandora changed their
>> certificate. It's not specifically a Guix bug.
>
> To clarify, is my error the result of a configuration problem and a
> missing .pem file?
>
> If so, is that .pem file something we should distribute with our
> package?
>
>> 
>> I realize this means pianobar simply doesn't work out of the box. I'm
>> open to suggestions on how to make this better.
>> 
>> 
>> Leo Famulari <l...@famulari.name> writes:
>> 
>> > 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 <he...@yrns.org>
>> >> 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 <bav...@member.fsf.org>
>> >>  ;;; Copyright © 2015, 2016 Ricardo Wurmus <rek...@elephly.net>
>> >>  ;;; Copyright © 2015 Paul van der Walt <p...@denknerd.org>
>> >> +;;; Copyright © 2016 Al McElrath <he...@yrns.org>
>> >>  ;;;
>> >>  ;;; 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 pa

Re: [PATCH] gnu: Add pianobar.

2016-02-11 Thread Al McElrath

Thanks for testing and pointing this out. Real radio stations require
too much manual effort! That said...

You should be getting a different error without a login (pandora.com
requires a login): "(i) Login... Error: Wrong email address or
password." There is an outstanding issue with pianobar regarding
Pandora's certificate described here:

https://github.com/PromyLOPh/pianobar/issues/560

There is a config file option "ca_file" which I use with a pem file I
downloaded. There is also a "tls_fingerprint" option described in the
bug commentary. This broke recently when Pandora changed their
certificate. It's not specifically a Guix bug.

I realize this means pianobar simply doesn't work out of the box. I'm
open to suggestions on how to make this better.


Leo Famulari <l...@famulari.name> writes:

> 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 <he...@yrns.org>
>> 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 <bav...@member.fsf.org>
>>  ;;; Copyright © 2015, 2016 Ricardo Wurmus <rek...@elephly.net>
>>  ;;; Copyright © 2015 Paul van der Walt <p...@denknerd.org>
>> +;;; Copyright © 2016 Al McElrath <he...@yrns.org>
>>  ;;;
>>  ;;; 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&qu

Re: [PATCH] gnu: Add pianobar.

2016-02-11 Thread Al McElrath

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 <he...@yrns.org>
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 | 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 <bav...@member.fsf.org>
 ;;; Copyright © 2015, 2016 Ricardo Wurmus <rek...@elephly.net>
 ;;; Copyright © 2015 Paul van der Walt <p...@denknerd.org>
+;;; Copyright © 2016 Al McElrath <he...@yrns.org>
 ;;;
 ;;; 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 <rek...@elephly.net> writes:

> Al McElrath <he...@yrns.org> 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 <he...@yrns.org>
>> 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

Re: [PATCH] gnu: Add notmuch-addrlookup-c.

2016-02-11 Thread Al McElrath
Thanks for the feedback. A revised patch is attached.

>From 910e61b6ca8921b521c98bcb2d4ba6d64bcf79bf Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Tue, 9 Feb 2016 12:07:30 -0800
Subject: [PATCH] gnu: Add notmuch-addrlookup-c.

* gnu/packages/mail.scm (notmuch-addrlookup-c): New variable.
---
 gnu/packages/mail.scm | 42 ++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index d41479e..5a9f420 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2015 Andreas Enge <andr...@enge.fr>
 ;;; Copyright © 2015, 2016 Efraim Flashner <efr...@flashner.co.il>
 ;;; Copyright © 2016 Christopher Allan Webber <cweb...@dustycloud.org>
+;;; Copyright © 2016 Al McElrath <he...@yrns.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -414,6 +415,47 @@ attachments, create new maildirs, and so on.")
 ing, and tagging large collections of email messages.")
 (license gpl3+)))
 
+(define-public notmuch-addrlookup-c
+  (package
+(name "notmuch-addrlookup-c")
+(version "7")
+(source (origin
+  (method url-fetch)
+  (uri (string-append
+"https://github.com/aperezdc/; name "/archive/v"
+version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"0rslg2ifgyhl6asv3yr1f62m9xjfcinv7i6qb07h2k217jqlmrri"
+(build-system gnu-build-system)
+(arguments
+ '(#:tests? #f ; no tests
+   #:make-flags (list "CC=gcc"
+  (string-append "PREFIX="
+ (assoc-ref %outputs "out")))
+   #:phases (modify-phases %standard-phases
+  (delete 'configure)
+  ;; Remove vim code completion config, it's not needed to
+  ;; build (or be patched).
+  (add-before 'patch-source-shebangs 'delete-ycm-file
+  (lambda _ (delete-file ".ycm_extra_conf.py")))
+  (replace 'install
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append
+ (assoc-ref outputs "out") "/bin")))
+   (install-file "notmuch-addrlookup" bin)))
+(native-inputs
+ `(("pkg-config" ,pkg-config)))
+(inputs
+ `(("glib" ,glib)
+   ("notmuch" ,notmuch)))
+(home-page "https://github.com/aperezdc/notmuch-addrlookup-c;)
+(synopsis "Address lookup tool for Notmuch")
+(description "This is an address lookup tool using a Notmuch database,
+useful for email address completion.")
+(license license:expat)))
+
 (define-public python2-notmuch
   (package
 (name "python2-notmuch")
-- 
2.5.0


Leo Famulari <l...@famulari.name> writes:

> On Tue, Feb 09, 2016 at 11:51:05PM -0800, Al McElrath wrote:
>> 
>> Hello,
>> 
>> First package here. Please advise.
>
> Thanks for the patch!
>
>> From 6db39ac748414cd91c9dd2ab1c2379fdca15e41d Mon Sep 17 00:00:00 2001
>> From: Al McElrath <he...@yrns.org>
>> Date: Tue, 9 Feb 2016 12:07:30 -0800
>> Subject: [PATCH] gnu: Add notmuch-addrlookup-c.
>> 
>> * gnu/packages/mail.scm (notmuch-addrlookup-c): New variable.
>
> [...]
>
>> +(version "v7")
>> +(source (origin
>> +  (method url-fetch)
>> +  (uri (string-append
>> +"https://github.com/aperezdc/; name "/archive/"
>> +version ".tar.gz"))
>
> GitHub automatically creates these "v*" version identifiers, but in this
> case, upstream's changelog describes the version as "7", so let's use
> that, and adjust the URI accordingly.
>
> You'll also need to set the file-name of the downloaded source, as done
> in commit f1957fc145.  Otherwise the tarball's name does not include the
> package name. (This is noticed by the linter).
>
>> +  (sha256
>> +   (base32
>> +"0rslg2ifgyhl6asv3yr1f62m9xjfcinv7i6qb07h2k217jqlmrri"
>> +(build-system gnu-build-system)
>> +(arguments
>> + '(#:tests? #f ;; no tests
>
> This comment can use one ';'.
> https://www.gnu.org/software/guile/manual/html_node/Comments.html
>
>> +   #:make-flags (list "CC=gcc"
>> +  (string-append "PREFIX=&q

[PATCH] gnu: Add pianobar.

2016-02-10 Thread Al McElrath
Hi,

Another new package. Feedback appreciated. This is free software, but it
only works with a non-free music service, Pandora. Is that acceptable?

>From 4f477999635b4a16f19ef0833727abcf899dbb69 Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
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 <bav...@member.fsf.org>
 ;;; Copyright © 2015, 2016 Ricardo Wurmus <rek...@elephly.net>
 ;;; Copyright © 2015 Paul van der Walt <p...@denknerd.org>
+;;; Copyright © 2016 Al McElrath <he...@yrns.org>
 ;;;
 ;;; 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.")
+(license license:x11)))
-- 
2.5.0



[PATCH] gnu: Add notmuch-addrlookup-c.

2016-02-10 Thread Al McElrath

Hello,

First package here. Please advise.

>From 6db39ac748414cd91c9dd2ab1c2379fdca15e41d Mon Sep 17 00:00:00 2001
From: Al McElrath <he...@yrns.org>
Date: Tue, 9 Feb 2016 12:07:30 -0800
Subject: [PATCH] gnu: Add notmuch-addrlookup-c.

* gnu/packages/mail.scm (notmuch-addrlookup-c): New variable.
---
 gnu/packages/mail.scm | 41 +
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index d41479e..a61df06 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2015 Andreas Enge <andr...@enge.fr>
 ;;; Copyright © 2015, 2016 Efraim Flashner <efr...@flashner.co.il>
 ;;; Copyright © 2016 Christopher Allan Webber <cweb...@dustycloud.org>
+;;; Copyright © 2016 Al McElrath <he...@yrns.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -414,6 +415,46 @@ attachments, create new maildirs, and so on.")
 ing, and tagging large collections of email messages.")
 (license gpl3+)))
 
+(define-public notmuch-addrlookup-c
+  (package
+(name "notmuch-addrlookup-c")
+(version "v7")
+(source (origin
+  (method url-fetch)
+  (uri (string-append
+"https://github.com/aperezdc/; name "/archive/"
+version ".tar.gz"))
+  (sha256
+   (base32
+"0rslg2ifgyhl6asv3yr1f62m9xjfcinv7i6qb07h2k217jqlmrri"
+(build-system gnu-build-system)
+(arguments
+ '(#:tests? #f ;; no tests
+   #:make-flags (list "CC=gcc"
+  (string-append "PREFIX="
+ (assoc-ref %outputs "out")))
+   #:phases (modify-phases %standard-phases
+  (delete 'configure)
+  (add-before 'patch-source-shebangs 'delete-ycm-file
+  (lambda _ (delete-file ".ycm_extra_conf.py")))
+  (replace 'install
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append
+ (assoc-ref outputs "out") "/bin/"))
+   (na "notmuch-addrlookup"))
+   (mkdir-p bin)
+   (copy-file na (string-append bin na
+(native-inputs
+ `(("pkg-config" ,pkg-config)))
+(inputs
+ `(("glib" ,glib)
+   ("notmuch" ,notmuch)))
+(home-page "https://github.com/aperezdc/notmuch-addrlookup-c;)
+(synopsis "Address lookup tool for Notmuch in C")
+(description "This is an address lookup tool using a Notmuch database,
+useful for email address completion in emacs.")
+(license license:expat)))
+
 (define-public python2-notmuch
   (package
 (name "python2-notmuch")
-- 
2.5.0