all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH] Add GraphicsMagick + Scribus.
@ 2015-11-14 22:16 Ricardo Wurmus
  2015-11-16  9:00 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-11-14 22:16 UTC (permalink / raw)
  To: Guix-devel

[-- Attachment #1: 0001-gnu-Add-prefix-to-license-imports-in-gnu-packages-im.patch --]
[-- Type: text/x-patch, Size: 1468 bytes --]

From bf5cc4dcb73bd9e4c3de9f754e0e7d1c6f85337c Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Sat, 14 Nov 2015 17:18:02 +0100
Subject: [PATCH 1/3] gnu: Add prefix to license imports in (gnu packages
 imagemagick).

* gnu/packages/imagemagick.scm: Import (guix licenses) with prefix
  "license:".
---
 gnu/packages/imagemagick.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index f154e19..43f14cb 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -22,7 +22,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
   #:use-module (guix download)
-  #:use-module ((guix licenses) #:select (fsf-free))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages compression)
@@ -104,7 +104,7 @@ including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG,
 and TIFF.  Use ImageMagick to resize, flip, mirror, rotate, distort, shear and
 transform images, adjust image colors, apply various special effects, or draw
 text, lines, polygons, ellipses and Bézier curves.")
-    (license (fsf-free "http://www.imagemagick.org/script/license.php"))))
+    (license (license:fsf-free "http://www.imagemagick.org/script/license.php"))))
 
 (define-public perl-image-magick
   (package
-- 
2.5.0


[-- Attachment #2: 0002-gnu-Add-GraphicsMagick.patch --]
[-- Type: text/x-patch, Size: 3037 bytes --]

From 639471440868f6a9f87c4d3a2da8e917c9f55530 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Sat, 14 Nov 2015 17:19:04 +0100
Subject: [PATCH 2/3] gnu: Add GraphicsMagick.

* gnu/packages/imagemagick.scm (graphicsmagick): New variable.
---
 gnu/packages/imagemagick.scm | 49 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index 43f14cb..a68e9aa 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,6 +23,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
   #:use-module (guix download)
+  #:use-module (guix utils)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
@@ -149,3 +151,50 @@ Use it to create, edit, compose, or convert bitmap images from within a Perl
 script.")
     ;; See Magick.pm
     (license (package-license imagemagick))))
+
+(define-public graphicsmagick
+  (package
+    (name "graphicsmagick")
+    (version "1.3.23")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "ftp://ftp.graphicsmagick.org/pub/"
+                                 "GraphicsMagick/" (version-major+minor version)
+                                 "/GraphicsMagick-" version ".tar.xz"))
+             (sha256
+              (base32
+               "03g6l2h8cmf231y1vma0z7x85070jm1ysgs9ppqcd3jj56jka9gx"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       (list "--with-frozenpaths"
+             "--enable-shared=yes"
+             "--with-x=yes"
+             (string-append "--with-gs-font-dir="
+                            (assoc-ref %build-inputs "gs-fonts")
+                            "/share/fonts/type1/ghostscript"))))
+    (inputs
+     `(("graphviz" ,graphviz)
+       ("ghostscript" ,ghostscript)
+       ("gs-fonts" ,gs-fonts)
+       ("lcms" ,lcms)
+       ("libx11" ,libx11)
+       ("libxml2" ,libxml2)
+       ("libtiff" ,libtiff)
+       ("libpng" ,libpng)
+       ("libjpeg" ,libjpeg)
+       ("freetype" ,freetype)
+       ("bzip2" ,bzip2)
+       ("xz" ,xz)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (outputs '("out"   ; 13 MiB
+               "doc")) ; ~7 MiB
+    (home-page "http://www.graphicsmagick.org")
+    (synopsis "Create, edit, compose, or convert bitmap images")
+    (description
+     "GraphicsMagick provides a comprehensive collection of utilities,
+programming interfaces, and GUIs, to support file format conversion, image
+processing, and 2D vector rendering.")
+    (license license:expat)))
-- 
2.5.0


[-- Attachment #3: 0003-gnu-Add-Scribus.patch --]
[-- Type: text/x-patch, Size: 5832 bytes --]

From c5559fc76ce3e2f2d8d3eb12ed5e90e61c3b6f5d Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <rekado@elephly.net>
Date: Sat, 14 Nov 2015 22:26:44 +0100
Subject: [PATCH 3/3] gnu: Add Scribus.

* gnu/packages/scribus.scm: New file
* gnu/packages/patches/scribus-qobject.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES, dist_patch_DATA): Add them.
---
 gnu-system.am                              |  2 +
 gnu/packages/patches/scribus-qobject.patch | 17 +++++++
 gnu/packages/scribus.scm                   | 79 ++++++++++++++++++++++++++++++
 3 files changed, 98 insertions(+)
 create mode 100644 gnu/packages/patches/scribus-qobject.patch
 create mode 100644 gnu/packages/scribus.scm

diff --git a/gnu-system.am b/gnu-system.am
index c80f086..008d645 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -281,6 +281,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/scanner.scm			\
   gnu/packages/scheme.scm			\
   gnu/packages/screen.scm			\
+  gnu/packages/scribus.scm			\
   gnu/packages/sdl.scm				\
   gnu/packages/search.scm			\
   gnu/packages/serveez.scm			\
@@ -656,6 +657,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/sed-hurd-path-max.patch			\
   gnu/packages/patches/scheme48-tests.patch			\
   gnu/packages/patches/scotch-test-threading.patch		\
+  gnu/packages/patches/scribus-qobject.patch			\
   gnu/packages/patches/sdl-libx11-1.6.patch			\
   gnu/packages/patches/serf-comment-style-fix.patch		\
   gnu/packages/patches/serf-deflate-buckets-test-fix.patch	\
diff --git a/gnu/packages/patches/scribus-qobject.patch b/gnu/packages/patches/scribus-qobject.patch
new file mode 100644
index 0000000..91be932
--- /dev/null
+++ b/gnu/packages/patches/scribus-qobject.patch
@@ -0,0 +1,17 @@
+See upstream bug report: http://bugs.scribus.net/view.php?id=13102
+
+scribus/sclayer.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/scribus/sclayer.cpp b/scribus/sclayer.cpp
+index 502112b..4da7bd5 100644
+--- a/scribus/sclayer.cpp
++++ b/scribus/sclayer.cpp
+@@ -9,6 +9,7 @@ for which a new license (GPL+exception) is in place.
+ 
+ #include <QHash>   //necessary to avoid msvc warnings induced by SCRIBUS_API on ScLayers + early instanciation of templates
+ #include <QVector> //necessary to avoid msvc warnings induced by SCRIBUS_API on ScLayers + early instanciation of templates
++#include <QObject>
+ #include <QtAlgorithms>
+ 
+ ScLayer::ScLayer(void)
diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm
new file mode 100644
index 0000000..864e570
--- /dev/null
+++ b/gnu/packages/scribus.scm
@@ -0,0 +1,79 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
+;;;
+;;; 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 scribus)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix utils)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system cmake)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages qt)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages xml))
+
+(define-public scribus
+  (package
+    (name "scribus")
+    (version "1.5.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/scribus/scribus-devel/"
+                                  version "/scribus-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0s4f9q2nyqrrv4wc1ddf2admkmf9m33wmwp73ba5b4vi29nydnx3"))
+              (patches (list (search-patch "scribus-qobject.patch")))))
+    (build-system cmake-build-system)
+    (arguments `(#:tests? #f)) ; no test target
+    (inputs
+     `(("cairo" ,cairo)
+       ("cups" ,cups)
+       ("graphicsmagick" ,graphicsmagick)
+       ("lcms" ,lcms)
+       ("libjpeg" ,libjpeg)
+       ("libtiff" ,libtiff)
+       ("libxml2" ,libxml2)
+       ("python" ,python-2)
+       ("freetype" ,freetype)
+       ("qt" ,qt)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("util-linux" ,util-linux)
+       ("pkg-config" ,pkg-config)))
+    (home-page "http://scribus.net")
+    (synopsis "Desktop publishing and page layout program")
+    (description
+     "Scribus is a @dfn{desktop publishing} (DTP) application and can be used
+for many tasks; from brochure design to newspapers, magazines, newsletters and
+posters to technical documentation.  Scribus supports professional DTP
+features, such as CMYK color and a color management system to soft proof
+images for high quality color printing, flexible PDF creation options,
+Encapsulated PostScript import/export and creation of four color separations,
+import of EPS/PS and SVG as native vector graphics, Unicode text including
+right to left scripts such as Arabic and Hebrew via freetype.")
+    (license license:gpl2+)))
-- 
2.5.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] Add GraphicsMagick + Scribus.
  2015-11-14 22:16 [PATCH] Add GraphicsMagick + Scribus Ricardo Wurmus
@ 2015-11-16  9:00 ` Ludovic Courtès
  2015-11-16 20:25   ` Ricardo Wurmus
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2015-11-16  9:00 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

Ricardo Wurmus <rekado@elephly.net> skribis:

> From bf5cc4dcb73bd9e4c3de9f754e0e7d1c6f85337c Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <rekado@elephly.net>
> Date: Sat, 14 Nov 2015 17:18:02 +0100
> Subject: [PATCH 1/3] gnu: Add prefix to license imports in (gnu packages
>  imagemagick).
>
> * gnu/packages/imagemagick.scm: Import (guix licenses) with prefix
>   "license:".

OK.

> From 639471440868f6a9f87c4d3a2da8e917c9f55530 Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <rekado@elephly.net>
> Date: Sat, 14 Nov 2015 17:19:04 +0100
> Subject: [PATCH 2/3] gnu: Add GraphicsMagick.
>
> * gnu/packages/imagemagick.scm (graphicsmagick): New variable.

[...]

> +(define-public graphicsmagick
> +  (package
> +    (name "graphicsmagick")

Would it help to inherit from ‘imagemagick’?

> +    (inputs
> +     `(("graphviz" ,graphviz)
> +       ("ghostscript" ,ghostscript)
> +       ("gs-fonts" ,gs-fonts)

Or to use (package-inputs imagemagick) here?

Otherwise LGTM.

> From c5559fc76ce3e2f2d8d3eb12ed5e90e61c3b6f5d Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <rekado@elephly.net>
> Date: Sat, 14 Nov 2015 22:26:44 +0100
> Subject: [PATCH 3/3] gnu: Add Scribus.
>
> * gnu/packages/scribus.scm: New file
> * gnu/packages/patches/scribus-qobject.scm: New file.
> * gnu-system.am (GNU_SYSTEM_MODULES, dist_patch_DATA): Add them.

LGTM.

Nice job, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] Add GraphicsMagick + Scribus.
  2015-11-16  9:00 ` Ludovic Courtès
@ 2015-11-16 20:25   ` Ricardo Wurmus
  2015-11-17 21:48     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-11-16 20:25 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel


Ludovic Courtès <ludo@gnu.org> writes:

>> +(define-public graphicsmagick
>> +  (package
>> +    (name "graphicsmagick")
>
> Would it help to inherit from ‘imagemagick’?
>
>> +    (inputs
>> +     `(("graphviz" ,graphviz)
>> +       ("ghostscript" ,ghostscript)
>> +       ("gs-fonts" ,gs-fonts)
>
> Or to use (package-inputs imagemagick) here?

I don’t think this would help.  These two projects have diverged since
their split and the inputs of the two packages differ somewhat.  I would
prefer to keep them separate rather than defining one in terms of the
other.

Thanks for the review!

~~ Ricardo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] Add GraphicsMagick + Scribus.
  2015-11-16 20:25   ` Ricardo Wurmus
@ 2015-11-17 21:48     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2015-11-17 21:48 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

Ricardo Wurmus <rekado@elephly.net> skribis:

> Ludovic Courtès <ludo@gnu.org> writes:
>
>>> +(define-public graphicsmagick
>>> +  (package
>>> +    (name "graphicsmagick")
>>
>> Would it help to inherit from ‘imagemagick’?
>>
>>> +    (inputs
>>> +     `(("graphviz" ,graphviz)
>>> +       ("ghostscript" ,ghostscript)
>>> +       ("gs-fonts" ,gs-fonts)
>>
>> Or to use (package-inputs imagemagick) here?
>
> I don’t think this would help.  These two projects have diverged since
> their split and the inputs of the two packages differ somewhat.  I would
> prefer to keep them separate rather than defining one in terms of the
> other.

Makes sense.

Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-11-17 21:48 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-14 22:16 [PATCH] Add GraphicsMagick + Scribus Ricardo Wurmus
2015-11-16  9:00 ` Ludovic Courtès
2015-11-16 20:25   ` Ricardo Wurmus
2015-11-17 21:48     ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.