From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: [PATCH] Add Frescobaldi. Date: Wed, 26 Aug 2015 23:38:33 +0200 Message-ID: <876141n31i.fsf@elephly.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58029) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZUiP5-0001jt-A5 for guix-devel@gnu.org; Wed, 26 Aug 2015 17:38:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZUiP2-0002MR-0X for guix-devel@gnu.org; Wed, 26 Aug 2015 17:38:43 -0400 Received: from sender163-mail.zoho.com ([74.201.84.163]:25944) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZUiP1-0002Lo-Ml for guix-devel@gnu.org; Wed, 26 Aug 2015 17:38:39 -0400 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: Guix-devel --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hi Guix, here are four patches to add Frescobaldi, a score editor for Lilypond, and some as yet unpackaged dependencies. First off: as this depends on Lilypond, and Lilypond uses Ghostscript to convert Postscript files to PDF, and this feature is broken until we update fontconfig to 2.11.94, one of the core features of Frescobaldi (rendering a score with Lilypond) isn’t actually working right now. AFAIK a patch to update fontconfig was submitted for the core-updates branch already. Frescobaldi needs poppler-qt4, a library that is built by poppler when Qt4 is found at build time. I created a variant of the poppler package because I don’t want to add an unnecessary indirect dependency on Qt4 for every package using poppler. ~~ Ricardo --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-gnu-Add-poppler-qt4.patch >From 98b7a6b8b5ccbc2b4648838830612e148c96d995 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 26 Aug 2015 23:22:29 +0200 Subject: [PATCH 1/4] gnu: Add poppler-qt4. * gnu/packages/pdf.scm (poppler-qt4): New variable. --- gnu/packages/pdf.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index bbd1f66..f8f05cd 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -36,6 +36,7 @@ #:use-module (gnu packages lesstif) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages qt) #:use-module (gnu packages xorg) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) @@ -103,6 +104,13 @@ (license license:gpl2+) (home-page "http://poppler.freedesktop.org/"))) +(define-public poppler-qt4 + (package (inherit poppler) + (name "poppler-qt4") + (inputs `(("qt-4" ,qt-4) + ,@(package-inputs poppler))) + (synopsis "Qt4 frontend for the Poppler PDF rendering library"))) + (define-public xpdf (package (name "xpdf") -- 2.4.3 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-python-poppler-qt4.patch >From 37adcb501ef4a706b881f30530dfa23e8bd8d785 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 26 Aug 2015 23:23:31 +0200 Subject: [PATCH 2/4] gnu: Add python-poppler-qt4. * gnu/packages/pdf.scm (python-poppler-qt4): New variable. --- gnu/packages/pdf.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index f8f05cd..fe93a97 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -25,6 +25,7 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) @@ -111,6 +112,44 @@ ,@(package-inputs poppler))) (synopsis "Qt4 frontend for the Poppler PDF rendering library"))) +(define-public python-poppler-qt4 + (package + (name "python-poppler-qt4") + (version "0.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://pypi.python.org/packages/source/p" + "/python-poppler-qt4/python-poppler-qt4-" + version ".tar.gz")) + (sha256 + (base32 + "0x63niylkk4q3h3ay8zrk3m1xiik0x3hlr4gvj7kswx48qi1vb99")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after + 'unpack 'patch-poppler-include-paths + (lambda _ + (substitute* (find-files "." "poppler-.*\\.sip") + (("qt4/poppler-.*\\.h" header) + (string-append "poppler/" header))) + #t))))) + (native-inputs + `(("qt-4" ,qt-4) + ("pkg-config" ,pkg-config))) + (inputs + `(("python-sip" ,python-sip) + ("python-pyqt-4" ,python-pyqt-4) + ("poppler-qt4" ,poppler-qt4))) + (home-page "https://pypi.python.org/pypi/python-poppler-qt4") + (synopsis "Python bindings for libpoppler-qt4") + (description + "This package provides Python bindings for the Poppler Qt4 interface +library.") + (license license:lgpl2.1+))) + (define-public xpdf (package (name "xpdf") -- 2.4.3 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-python-ly.patch >From 9cd29d58de90bee0d1b7fc929af84687bbfd4556 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 26 Aug 2015 23:24:16 +0200 Subject: [PATCH 3/4] gnu: Add python-ly. * gnu/packages/python.scm (python-ly): New variable. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 940efec..75f285f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4629,3 +4629,26 @@ term.js Javascript terminal emulator library.") ,python2-backport-ssl-match-hostname) ,@(alist-delete "python-tornado" (package-propagated-inputs terminado))))))) + +(define-public python-ly + (package + (name "python-ly") + (version "0.9.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/p/python-ly/python-ly-" + version ".tar.gz")) + (sha256 + (base32 + "1bsjg4q9ihr8bfdclrcmb8yjcg8xm9dznh58f3zsyrkrjzwbhcd2")))) + (build-system python-build-system) + (native-inputs + `(("python-setuptools" ,python-setuptools))) + (synopsis "Tool and library for manipulating LilyPond files") + (description "This package provides a Python library to parse, manipulate +or create documents in LilyPond format. A command line program ly is also +provided that can be used to do various manipulations with LilyPond files.") + (home-page "https://pypi.python.org/pypi/python-ly") + (license gpl2+))) -- 2.4.3 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0004-gnu-Add-frescobaldi.patch >From 34817062b868ea60d087788fd6040daf799165fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 26 Aug 2015 23:25:31 +0200 Subject: [PATCH 4/4] gnu: Add frescobaldi. * gnu/packages/music.scm (frescobaldi): New variable. --- gnu/packages/music.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index b89be43..809cf87 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -24,6 +24,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system python) #:use-module (guix build-system waf) #:use-module (gnu packages) #:use-module (gnu packages audio) @@ -57,6 +58,7 @@ #:use-module (gnu packages mp3) #:use-module (gnu packages netpbm) #:use-module (gnu packages pcre) + #:use-module (gnu packages pdf) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) ;libsndfile @@ -751,3 +753,30 @@ equipment. Pd is suitable for learning basic multimedia processing and visual programming methods as well as for realizing complex systems for large-scale projects.") (license license:bsd-3))) + +(define-public frescobaldi + (package + (name "frescobaldi") + (version "2.18.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/wbsoft/frescobaldi/releases/download/v" + version "/frescobaldi-" version ".tar.gz")) + (sha256 + (base32 + "1hflc6gck6dn17czc2ldai5j0ynfg3df8lqcggdry06qxsdbnns7")))) + (build-system python-build-system) + (inputs + `(("lilypond" ,lilypond) + ("python-pyqt-4" ,python-pyqt-4) + ("python-ly" ,python-ly) + ("poppler" ,poppler) + ("python-poppler-qt4" ,python-poppler-qt4) + ("python-sip" ,python-sip))) + (home-page "http://www.frescobaldi.org/") + (synopsis "LilyPond sheet music text editor") + (description + "Frescobaldi is a LilyPond sheet music text editor with syntax +highlighting and automatic completion.") + (license license:gpl2+))) -- 2.4.3 --=-=-=--