RE: [PATCH 2/2] gnu: Add jrnl.

2014-06-29 Thread Eric Bavier
Please ignore the last email; it has a broken patch.  Corrected patch
attached.

Sorry for the spam.
From d2131f9ddbbac601d3915b815fa58bce05b5d663 Mon Sep 17 00:00:00 2001
From: Eric Bavier 
Date: Mon, 30 Jun 2014 00:28:40 -0500
Subject: [PATCH 2/2] gnu: Add jrnl.

* gnu/packages/jrnl.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/python.scm (python-pycrypto, python-keyring, python-dateutil-2,
  python-parsedatetime, python-tzlocal): New variables.
* guix/licenses.scm (cc0): New variable.
---
 gnu-system.am   |1 +
 gnu/packages/jrnl.scm   |   57 
 gnu/packages/python.scm |  169 ++-
 guix/licenses.scm   |6 ++
 4 files changed, 231 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/jrnl.scm

diff --git a/gnu-system.am b/gnu-system.am
index 3c057b3..b62d759 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -124,6 +124,7 @@ GNU_SYSTEM_MODULES =\
   gnu/packages/inkscape.scm			\
   gnu/packages/irssi.scm			\
   gnu/packages/iso-codes.scm			\
+  gnu/packages/jrnl.scm\
   gnu/packages/kde.scm\
   gnu/packages/ld-wrapper.scm			\
   gnu/packages/less.scm\
diff --git a/gnu/packages/jrnl.scm b/gnu/packages/jrnl.scm
new file mode 100644
index 000..4902647
--- /dev/null
+++ b/gnu/packages/jrnl.scm
@@ -0,0 +1,57 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Eric Bavier 
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see .
+
+(define-module (gnu packages jrnl)
+  #:use-module (guix packages)
+  #:use-module (guix licenses)
+  #:use-module (guix download)
+  #:use-module (guix build-system python)
+  #:use-module (gnu packages python))
+
+(define-public jrnl
+  (package
+(name "jrnl")
+(version "1.8.4")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://github.com/maebert/jrnl/archive/";
+  version ".tar.gz"))
+  (sha256
+   (base32
+"019ky09sj5i7frmca0imv4jm46mn3f4lzah2wmiwxh22cisj7ksn"
+(build-system python-build-system)
+(native-inputs
+ `(("python-setuptools" ,python-setuptools)
+   ("behave" ,behave)))
+(inputs
+ `(("python" ,python)
+   ("python-keyring" ,python-keyring)
+   ("python-pycrypto" ,python-pycrypto)
+   ("python-pytz" ,python-pytz)
+   ("python-tzlocal" ,python-tzlocal)
+   ("python-six" ,python-six)
+   ("python-dateutil" , python-dateutil-2)
+   ("python-parsedatetime" ,python-parsedatetime)))
+(home-page "http://maebert.github.io/jrnl/";)
+(synopsis "Journal application")
+(description
+ "Jrnl is a command line journal application that stores your journal in a
+plain text file.  Optionally, your journal can be encrypted using 256-bit AES
+encryption.")
+(license (x11-style "file://LICENSE"
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 3c80e8e..83575cc 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -22,8 +22,9 @@
 
 (define-module (gnu packages python)
   #:use-module ((guix licenses)
-#:select (bsd-3 bsd-style expat psfl x11 x11-style
-  gpl2 gpl2+ lgpl2.1+))
+#:select (asl2.0 bsd-3 bsd-style cc0 expat x11 x11-style
+  gpl2 gpl2+ lgpl2.1+
+  psfl public-domain))
   #:use-module ((guix licenses) #:select (zlib)
 #:renamer (symbol-prefix-proc 'license:))
   #:use-module (gnu packages)
@@ -36,6 +37,8 @@
   #:use-module (gnu packages elf)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages sqlite)
+  #:use-module ((gnu packages zip) #:select (unzip))
+  #:use-module (gnu packages multiprecision)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix utils)
@@ -381,6 +384,80 @@ Python 3 support.")
   (package-with-python2 python-setuptools))
 
 
+(define-public python-pycrypto
+  (package
+(name "python-pycrypto")
+(version "2.6.1")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  "pycrypto/pycrypto-" version ".tar.gz"))
+  (sha256
+   (base32
+"0g0ayql5b9mkjam8hym6zyg6bv77lbh66

[PATCH 2/2] gnu: Add jrnl.

2014-06-29 Thread Eric Bavier

From 8cca0703e3bc6feba8a69a2e535bc025a712f7ae Mon Sep 17 00:00:00 2001
From: Eric Bavier 
Date: Mon, 30 Jun 2014 00:28:40 -0500
Subject: [PATCH 2/2] gnu: Add jrnl.

* gnu/packages/jrnl.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/python.scm (python-pycrypto, python-keyring, python-dateutil-2,
  python-parsedatetime, python-tzlocal): New variables.
* guix/licenses.scm (cc0): New variable.
---
 gnu/packages/python.scm |  169 ++-
 guix/licenses.scm   |6 ++
 2 files changed, 173 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 3c80e8e..83575cc 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -22,8 +22,9 @@
 
 (define-module (gnu packages python)
   #:use-module ((guix licenses)
-#:select (bsd-3 bsd-style expat psfl x11 x11-style
-  gpl2 gpl2+ lgpl2.1+))
+#:select (asl2.0 bsd-3 bsd-style cc0 expat x11 x11-style
+  gpl2 gpl2+ lgpl2.1+
+  psfl public-domain))
   #:use-module ((guix licenses) #:select (zlib)
 #:renamer (symbol-prefix-proc 'license:))
   #:use-module (gnu packages)
@@ -36,6 +37,8 @@
   #:use-module (gnu packages elf)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages sqlite)
+  #:use-module ((gnu packages zip) #:select (unzip))
+  #:use-module (gnu packages multiprecision)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix utils)
@@ -381,6 +384,80 @@ Python 3 support.")
   (package-with-python2 python-setuptools))
 
 
+(define-public python-pycrypto
+  (package
+(name "python-pycrypto")
+(version "2.6.1")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  "pycrypto/pycrypto-" version ".tar.gz"))
+  (sha256
+   (base32
+"0g0ayql5b9mkjam8hym6zyg6bv77lbh66rv1fyvgqb17kfc1xkpj"
+(build-system python-build-system)
+(native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+(inputs
+ `(("python" ,python)
+   ("gmp" ,gmp)))
+(arguments
+ `(#:phases
+   (alist-cons-before
+'build 'set-build-env
+;; pycrypto runs an autoconf configure script behind the scenes
+(lambda _
+  (setenv "CONFIG_SHELL" (which "bash")))
+%standard-phases)))
+(home-page "http://www.pycrypto.org/";)
+(synopsis "Cryptographic modules for Python")
+(description
+ "Pycrypto is a collection of both secure hash functions (such as SHA256
+and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal,
+etc.). The package is structured to make adding new modules easy.")
+(license public-domain)))
+
+(define-public python-keyring
+  (package
+(name "python-keyring")
+(version "3.8")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/k/";
+  "keyring/keyring-" version ".zip"))
+  (sha256
+   (base32
+"1vxazfbcwggyfyramh55shkxs08skhpqrkm6lrrjnygnm8c1l2zg"
+(build-system python-build-system)
+(native-inputs
+ `(("unzip" ,unzip)
+   ("python-setuptools" ,python-setuptools)
+   ("python-mock" ,python-mock)))
+(inputs
+ `(("python-pycrypto" ,python-pycrypto)))
+(arguments
+ `(#:tests? #f  ;TODO: tests require pytest
+   #:phases
+   (alist-replace
+'unpack
+(lambda _
+  (let ((unzip (string-append (assoc-ref %build-inputs "unzip")
+  "/bin/unzip"))
+(source (assoc-ref %build-inputs "source")))
+(and (zero? (system* unzip source))
+ (chdir (string-append "keyring-" ,version)
+%standard-phases)))
+(home-page "http://bitbucket.org/kang/python-keyring-lib";)
+(synopsis "Store and access your passwords safely")
+(description
+ "The Python keyring lib provides a easy way to access the system keyring
+service from python. It can be used in any application that needs safe
+password storage.")
+;; "MIT" and PSF dual license
+(license x11)))
+
 (define-public python-six
   (package
 (name "python-six")
@@ -406,6 +483,33 @@ Six supports every Python version since 2.5. It is contained in only one
 Python file, so it can be easily copied into your project.")
 (license (x11-style "file://LICENSE"
 
+(define-public python-dateutil-2
+  (package
+(name "python-dateutil")
+(version "2.2")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  name "/" name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"0s74ad6r789810s10dxgvaf48ni6adac

[PATCH 1/2] gnu: Add behave. (forgot the attchment...)

2014-06-29 Thread Eric Bavier

From ea01959c9d733b0151fbe1780a8c36244a43eb3a Mon Sep 17 00:00:00 2001
From: Eric Bavier 
Date: Mon, 30 Jun 2014 00:25:33 -0500
Subject: [PATCH 1/2] gnu: Add behave.

* gnu/packages/python.scm (python-six, python-enum34, python-parse-type,
  python-parse, behave): New variables.
---
 gnu/packages/python.scm |  138 +++
 1 file changed, 138 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index b15e5b6..3c80e8e 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013, 2014 Ludovic Courtès 
 ;;; Copyright © 2013 Andreas Enge 
 ;;; Copyright © 2014 Mark H Weaver 
+;;; Copyright © 2014 Eric Bavier 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -380,6 +381,31 @@ Python 3 support.")
   (package-with-python2 python-setuptools))
 
 
+(define-public python-six
+  (package
+(name "python-six")
+(version "1.7.2")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/s/";
+  "six/six-" version ".tar.gz"))
+  (sha256
+   (base32
+"164rns26aqfqx2hwi0qq3scl50s69japn0fvgvrjsbyg7r1mxf67"
+(build-system python-build-system)
+(inputs
+ `(("python-setuptools" ,python-setuptools)))
+(home-page "http://pypi.python.org/pypi/six/";)
+(synopsis "Python 2 and 3 compatibility utilities")
+(description
+ "Six is a Python 2 and 3 compatibility library. It provides utility
+functions for smoothing over the differences between the Python versions with
+the goal of writing Python code that is compatible on both Python versions.
+Six supports every Python version since 2.5. It is contained in only one
+Python file, so it can be easily copied into your project.")
+(license (x11-style "file://LICENSE"
+
 (define-public python-dateutil
   (package
 (name "python-dateutil")
@@ -644,6 +670,88 @@ bug tracker.")
 (home-page "http://www.liquidx.net/pybugz/";)
 (license gpl2)))
 
+(define-public python-enum34
+  (package
+(name "python-enum34")
+(version "1.0")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/e/";
+  "enum34/enum34-" version ".tar.gz"))
+  (sha256
+   (base32
+"0dg6mpg9n4g9diyrbnbb5vd9d1qw9f265zwhknqy0mxh0cvmjjrq"
+(build-system python-build-system)
+(inputs
+ `(("python-setuptools" ,python-setuptools)))
+(arguments
+ `(#:phases
+   (alist-replace
+'check
+(lambda _ (zero? (system* "python" "enum/test_enum.py")))
+%standard-phases)))
+(home-page "https://pypi.python.org/pypi/enum34";)
+(synopsis
+ "Backported Python 3.4 Enum")
+(description
+ "Enum34 is the new Python stdlib enum module available in Python 3.4
+backported for previous versions of Python from 2.4 to 3.3.")
+(license bsd-3)))
+
+(define-public python-parse-type
+  (package
+(name "python-parse-type")
+(version "0.3.4")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  "parse_type/parse_type-" version ".tar.gz"))
+  (sha256
+   (base32
+"0iv1c34npr4iynwpgv1vkjx9rjd18a85ir8c01gc5f7wp8iv7l1x"
+(build-system python-build-system)
+(inputs
+ `(("python-setuptools" ,python-setuptools)
+   ("python-six" ,python-six)
+   ("python-parse" ,python-parse)
+   ("python-enum34" ,python-enum34))) ;required for python<3.4
+(arguments '(#:tests? #f));TODO: tests require pytest
+(home-page "https://github.com/jenisys/parse_type";)
+(synopsis
+ "Extended parse module")
+(description
+ "")
+(license bsd-3)))
+
+(define-public python-parse
+  (package
+(name "python-parse")
+(version "1.6.4")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  "parse/parse-" version ".tar.gz"))
+  (sha256
+   (base32
+"0m30q64l6szl7s9mhvqy64w2fdhdn8lb91fmacjiwbv3479cmk57"
+(build-system python-build-system)
+(arguments
+ `(#:phases
+   (alist-replace
+'check
+(lambda _ (zero? (system* "python" "test_parse.py")))
+%standard-phases)))
+(home-page "https://github.com/r1chardj0n3s/parse";)
+(synopsis
+ "Parse strings")
+(description
+ "Parse strings using a specification based on the Python format() syntax.")
+(license (x11-style "file://parse.py"
+
+
 (define-public scons
   (package
 (name "scons")
@@ -670,3 +778,33 @@ In short, SCons is an easier, more reliable and faster way to build
 software.")
 (license x11)))
 
+(define-public behave
+  (package
+(name "behave")
+(version "1.2.4")
+(source (origin
+ (method

[PATCH 1/2] gnu: Add behave.

2014-06-29 Thread Eric Bavier



Re: System installation from a USB stick

2014-06-29 Thread Ludovic Courtès
Hello!

I’ve uploaded a USB installation image for x86_64 for testing:

  http://www.fdn.fr/~lcourtes/software/guix/gnu-usb-install-20140629.x86_64.xz
  SHA1: d36e70d25b81b734fa9558a5446fabb96489ec3b
  (100 MiB)

It works like this:

  1. Run ‘xz -d gnu-usb-install-20140629.x86_64.xz’.

  2. Copy it as is to a USB stick that of 1GiB or more:
   dd if=gnu-usb-install-20140629.x86_64 of=/dev/sdX
 where sdX is the device corresponding to the USB stick.

Then you can boot on the USB stick.  There’s a bit of documentation on
tty2, but it lacks what follows.  ;-)

To install the system, you would:

  1. Configure the network, by running ‘dhclient eth0’ for instance.
 Normally udev automatically loads device drivers (e.g., my laptop
 uses e1000e for Ethernet), but since it’s a small config kernel, it
 may miss drivers for your system, in which case you’re screwed.

  2. Partition, format etc. the target drive; the image includes Parted,
 fdisk, and e2fsprogs.

  3. Write an OS configuration file, say, config.scm (the image only has
 GNU Zile as the editor.)  A minimal config looks like this:

   (use-modules (gnu) (gnu system grub))

   (operating-system
 (host-name "foo")
 (timezone "Europe/Paris")
 (locale "en_US.UTF-8")
 (bootloader (grub-configuration (device "/dev/sdX")))
 (file-systems
   (list (file-system
   (device "/dev/sdX1")
   (mount-point "/")
   (type "ext4")

   4. Mount the target root file system as /mnt, say.

   5. Run ‘guix system init config.scm /mnt’ (add ‘--no-grub’ if you
  don’t want to install GRUB.)

   6. Unmount /mnt, reboot, and cross fingers.

There are various limitations, so be indulgent.  Notably, the kernel has
few drivers.  The image is insanely big due to
<http://bugs.gnu.org/17853>.  Swap partitions, dm-crypt’d devices aren’t
supported yet.

Still, I would very much like feedback about actual attempts to use
that, about the general procedure, or anything else.

The image was built with

  guix system disk-image gnu/system/install.scm --image-size=800MiB

as of commit 1ddbd9f.

Ludo’.


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add ncmpcpp

2014-06-29 Thread Ludovic Courtès
Hello,

Cyrill Schenkel  skribis:

> I agree. Changed it in the attached patch.

Applied.  Thanks, and welcome aboard.  ;-)

> +(license license:gpl2)))

I changed it to ‘license:gpl2+’, because all the source files carry the
“or later” clause.

Under the assumption that you’re the copyright holder, I’ve added this
line to mpd.scm:

;;; Copyright © 2014 Cyrill Schenkel 

Please let me know if this is incorrect.

Ludo’.



Re: [PATCH] gnu: Add goffice and gnumeric

2014-06-29 Thread Ludovic Courtès
John Darrington  skribis:

> gnu/packages/gnome.scm (goffice, gnumeric): New variables.

Nice!  Comments below:

> +(license 
> + `(license:gpl2
> +   license:gpl3

Remember this field must be either a  object or a list thereof
(the one above is a list of symbols.)  So change it to:

  (license (list license:gpl2 license:gpl3))

Also, please add a comment stating what this means exactly: is it
dual-licensed?  Does it mean that some files are GPLv2-only and others
are GPLv3-only (which would be a problem)?

Does it mean some files are GPLv2-or-later and others are
GPLv3-or-later?  In that case, the value should be ‘license:gpl3+’.

> +(arguments
> + `(;; The gnumeric developers don't worry much about failing tests.
> +   ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
> +   #:tests? #f 
> +   :phases

Should be #:phases.

> +   alist-cons-before

Missing opening parenthesis.

> +   'configure 'pre-conf
> +   (lambda* (#:key outputs #:allow-other-keys)
> + ;; Make install tries to write into the directory of goffice
> + ;; I am informed that this only affects the possibility to embed a
> + ;; spreadsheet inside an abiword document.   So presumably when we
> + ;; package abiword we'll have to refer it to this directory.

“Abiword”.

> +(description  "Gnumeric is a spreadsheet program for GNOME.")

A bit terse.  ;-)  Maybe there’s a paragraph from README or so that
could be used?

> +(license 
> + `(license:gpl3
> +   license:gpl2

Same as above.

Thanks,
Ludo’.



Re: Codefest 2014 Cambridge, MA

2014-06-29 Thread Pjotr Prins
On Sun, Jun 29, 2014 at 12:48:28PM -0400, David Thompson wrote:
> Since it's a Wednesday, I'll be working at the FSF office during the
> day.  Does the hackathon continue into the night?  If I can be useful, I
> can try to join in after work.

In my experience day time is most productive. Unless we end up with a
group of interested people. If you can pop in for a few hours, I'll
try and organise a gathering with which we can continue later. Is that
an option? Or if you come by say 3pm? At worst you end up with me, but
I expect more interest. I'll see if we can get interested parties on
the group list this week.

Pj.



Re: Codefest 2014 Cambridge, MA

2014-06-29 Thread David Thompson
Pjotr Prins  writes:

> On Sun, Jun 29, 2014 at 09:09:22AM -0400, David Thompson wrote:
>> I live in Somerville.  I might be able to join in on the 9th, but I'm
>> busy on the 10th.n
>
> That would be great! Also for some advocacy.

:)

>> Could you elaborate more on how Guix relates to this event?
>
> For biomedical and biological purposes, Cloudbiolinux packages
> software. Mostly .deb, homebrew and ad hoc scripts. I have been a Nix
> fan for a long time and I think Guix is just the right way forward
> (Nix expressions are somehow a little too foreign for many people, I
> have found).

Oh, neat.  Yes, I find that using a general purpose language like Guile
is much better than inventing a special language.

> It would make sense to move some of the Cloudbiolinux related
> packaging to Guix. There will be quite a few good people who are
> working on software deployment, so please hop over if you can! There
> are 50-60 programmers coming to the hackathon.

Since it's a Wednesday, I'll be working at the FSF office during the
day.  Does the hackathon continue into the night?  If I can be useful, I
can try to join in after work.

-- 
David Thompson
Web Developer - Free Software Foundation - http://fsf.org
GPG Key: 0FF1D807
Support the FSF: https://fsf.org/donate



Re: Codefest 2014 Cambridge, MA

2014-06-29 Thread Pjotr Prins
On Sun, Jun 29, 2014 at 09:09:22AM -0400, David Thompson wrote:
> I live in Somerville.  I might be able to join in on the 9th, but I'm
> busy on the 10th.n

That would be great! Also for some advocacy.

> Could you elaborate more on how Guix relates to this event?

For biomedical and biological purposes, Cloudbiolinux packages
software. Mostly .deb, homebrew and ad hoc scripts. I have been a Nix
fan for a long time and I think Guix is just the right way forward
(Nix expressions are somehow a little too foreign for many people, I
have found).

It would make sense to move some of the Cloudbiolinux related
packaging to Guix. There will be quite a few good people who are
working on software deployment, so please hop over if you can! There
are 50-60 programmers coming to the hackathon.

Pj.



Codefest 2014 Cambridge, MA

2014-06-29 Thread David Thompson
Pjotr Prins  writes:

> Anyone in the Boston area next week? We are going to work on GNU Guix
> packages and add them to CloudBiolinux (location Hack/Reduce):
>
>   
> https://docs.google.com/document/d/1yADE2bb0rEU6TASxuSPsvTdHvh_rtCXzJrsL3NWzxXE/edit?usp=sharing
>
> See also
>
>   http://www.open-bio.org/wiki/Codefest_2014
>
> Pj.
>
>

Hey Pj,

I live in Somerville.  I might be able to join in on the 9th, but I'm
busy on the 10th.n

Could you elaborate more on how Guix relates to this event?

-- 
David Thompson
Web Developer - Free Software Foundation - http://fsf.org
GPG Key: 0FF1D807
Support the FSF: https://fsf.org/donate



Re: [PATCH] gnu: Add qrencode.

2014-06-29 Thread Pjotr Prins
Anyone in the Boston area next week? We are going to work on GNU Guix
packages and add them to CloudBiolinux (location Hack/Reduce):

  
https://docs.google.com/document/d/1yADE2bb0rEU6TASxuSPsvTdHvh_rtCXzJrsL3NWzxXE/edit?usp=sharing

See also

  http://www.open-bio.org/wiki/Codefest_2014

Pj.




Re: [PATCH] gnu: Add ncmpcpp

2014-06-29 Thread Cyrill Schenkel
Hi David

> Capitalize "featureful".

Done.

> I think a slightly modified version of the description found on the Arch
> Wiki would be more useful:
>
>   Ncmpcpp is an mpd client with a UI very similar to ncmpc, but it
>   provides new useful features such as support for regular expressions
>   for library searches, extended song format, items filtering, the
>   ability to sort playlists, and a local filesystem browser.

I agree. Changed it in the attached patch.

Regards
Cyrill

>From 75afd07580a130a50a06754c7e32417624f5 Mon Sep 17 00:00:00 2001
From: Cyrill Schenkel 
Date: Sun, 29 Jun 2014 10:23:28 +0200
Subject: [PATCH] gnu: Add ncmpcpp.

* gnu/packages/mpd.scm (ncmpcpp): New variable.
---
 gnu/packages/mpd.scm | 27 ++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 5841e8b..5d603a1 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -39,7 +39,8 @@
   #:use-module (gnu packages xiph)
   #:export (libmpdclient
 mpd
-ncmpc))
+ncmpc
+ncmpcpp))
 
 (define libmpdclient
   (package
@@ -147,3 +148,27 @@ protocol.")
 terminal using ncurses.")
 (home-page "http://www.musicpd.org/clients/ncmpc/";)
 (license license:gpl2)))
+
+(define ncmpcpp
+  (package
+(name "ncmpcpp")
+(version "0.5.10")
+(source (origin
+  (method url-fetch)
+  (uri
+   (string-append "http://ncmpcpp.rybczak.net/stable/ncmpcpp-";
+  version ".tar.bz2"))
+  (sha256
+   (base32
+"1a54g6dary1rirrny9fd0hpxpyyffypni3mpbdpvmjnrl9v56vgz"
+(build-system gnu-build-system)
+(inputs `(("libmpdclient" ,libmpdclient)
+  ("ncurses" ,ncurses)))
+(native-inputs `(("pkg-config" ,pkg-config)))
+(synopsis "Featureful ncurses based MPD client inspired by ncmpc")
+(description "Ncmpcpp is an mpd client with a UI very similar to ncmpc,
+but it provides new useful features such as support for regular expressions
+for library searches, extended song format, items filtering, the ability to
+sort playlists, and a local filesystem browser.")
+(home-page "http://ncmpcpp.rybczak.net/";)
+(license license:gpl2)))
-- 
2.0.0