guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add Lilypond.


From: Ricardo Wurmus
Subject: Re: [PATCH] Add Lilypond.
Date: Wed, 11 Mar 2015 07:30:10 +0100

Ricardo Wurmus writes:

> Ludovic Courtès writes:
>
>> Mark H Weaver <address@hidden> skribis:
>>
>>> Since then, (gnu packages music) has been suggested.  I like this
>>> because there are other packages like Denemo that will need a home as
>>> well.  What do you think?
>>
>> I like (gnu packages music) too, and it makes sense to group LilyPond,
>> Denemo, et al.
>
> Okay then, I'll prepare a new patch soon where lilypond is in the (gnu
> packages music) module.

Here's the new patch:

>From a35095572d42e956e0672b8fd1e4878ee49cfafa Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Wed, 11 Mar 2015 07:27:14 +0100
Subject: [PATCH] gnu: Add Lilypond.

* gnu/packages/music.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
---
 gnu-system.am          |   1 +
 gnu/packages/music.scm | 104 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 105 insertions(+)
 create mode 100644 gnu/packages/music.scm

diff --git a/gnu-system.am b/gnu-system.am
index 2175605..12e0797 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -204,6 +204,7 @@ GNU_SYSTEM_MODULES =                                \
   gnu/packages/mp3.scm                         \
   gnu/packages/mpi.scm                         \
   gnu/packages/multiprecision.scm              \
+  gnu/packages/music.scm                       \
   gnu/packages/mtools.scm                      \
   gnu/packages/nano.scm                                \
   gnu/packages/ncdu.scm                                \
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
new file mode 100644
index 0000000..c923542
--- /dev/null
+++ b/gnu/packages/music.scm
@@ -0,0 +1,104 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 Ricardo Wurmus <address@hidden>
+;;;
+;;; 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 <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages music)
+  #:use-module (guix utils)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages docbook)
+  #:use-module (gnu packages flex)
+  #:use-module (gnu packages fonts)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages guile)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages netpbm)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages rsync)
+  #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages texlive)
+  #:use-module (gnu packages zip))
+
+(define-public lilypond
+  (package
+    (name "lilypond")
+    (version "2.18.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://download.linuxaudio.org/lilypond/sources/v";
+                    (version-major+minor version) "/"
+                    name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "01xs9x2wjj7w9appaaqdhk15r1xvvdbz9qwahzhppfmhclvp779j"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(;; Tests fail with this error:
+       ;; Undefined subroutine &main::get_index called at
+       ;; ./lilypond-2.18.2/Documentation/lilypond-texi2html.init line 2127.
+       #:tests? #f
+       #:out-of-source? #t
+       #:phases
+       (alist-cons-before
+        'configure 'prepare-configuration
+        (lambda _
+          (substitute* "configure"
+            (("SHELL=/bin/sh") "SHELL=sh"))
+          (setenv "out" "")
+          #t)
+        %standard-phases)))
+    (inputs
+     `(("guile" ,guile-1.8)
+       ("font-dejavu" ,font-dejavu)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("ghostscript" ,ghostscript)
+       ("pango" ,pango)
+       ("python" ,python-2)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("perl" ,perl)
+       ("flex" ,flex)
+       ("fontforge" ,fontforge)
+       ("dblatex" ,dblatex)
+       ("gettext" ,gnu-gettext)
+       ("imagemagick" ,imagemagick)
+       ("netpbm" ,netpbm) ;for pngtopnm
+       ("texlive" ,texlive) ;metafont and metapost
+       ("texinfo" ,texinfo)
+       ("texi2html" ,texi2html)
+       ("rsync" ,rsync)
+       ("pkg-config" ,pkg-config)
+       ("zip" ,zip)))
+    (home-page "http://www.lilypond.org/";)
+    (synopsis "Music typesetting")
+    (description
+     "GNU LilyPond is a music typesetter, which produces high-quality sheet
+music.  Music is input in a text file containing control sequences which are
+interpreted by LilyPond to produce the final document.  It is extendable with
+Guile.")
+    (license license:gpl3+)))
-- 
2.1.0


reply via email to

[Prev in Thread] Current Thread [Next in Thread]