aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorThorsten Wilms <t_w_@freenet.de>2018-10-08 21:11:10 +0200
committerLudovic Courtès <ludo@gnu.org>2018-10-08 23:19:35 +0200
commit65b8d610739065671af288836d74e5ffbf382c8f (patch)
treee71b7ba468e564c51310aae9380456f126fe9593 /gnu
parentdf2d77c45ff357a25fee5f96478b1b65dc93f507 (diff)
downloadguix-65b8d610739065671af288836d74e5ffbf382c8f.tar.gz
guix-65b8d610739065671af288836d74e5ffbf382c8f.zip
gnu: Add gimp-resynthesizer.
* gnu/packages/gimp.scm (gimp-resynthesizer): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/gimp.scm65
1 files changed, 65 insertions, 0 deletions
diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm
index df8f242c7a..cd0deac158 100644
--- a/gnu/packages/gimp.scm
+++ b/gnu/packages/gimp.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -305,3 +306,67 @@ brushstrokes which is used by MyPaint and GIMP.")
MyPaint.")
(home-page "https://github.com/Jehan/mypaint-brushes")
(license license:cc0)))
+
+(define-public gimp-resynthesizer
+ ;; GIMP does not respect any plugin search path environment variable, so after
+ ;; installation users have to edit their GIMP settings to include
+ ;; "$HOME/.guix-profile/lib/gimp/2.0/plug-ins/" in
+ ;; “Edit->Preferences->Folders->Plug Ins”.
+ (package
+ (name "gimp-resynthesizer")
+ (version "2.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/bootchk/resynthesizer/archive/v"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0l3404w6rqny7h3djskxf149gzx6x4qhndgbh3403c9lbh4pi1kr"))
+ (file-name (string-append name "-" version ".tar.gz"))))
+ (build-system gnu-build-system)
+ (arguments
+ `( ;; Turn off tests to avoid:
+ ;; make[1]: *** No rule to make target '../src/resynth-gui.c', needed by 'resynthesizer.pot'. Stop.
+ #:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-env
+ (lambda _
+ (setenv "CONFIG_SHELL" (which "sh"))
+ #t))
+ (add-after 'configure 'set-prefix
+ ;; Install plugin under $prefix, not under GIMP's libdir.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((target (string-append (assoc-ref outputs "out")
+ "/lib/gimp/"
+ ,(version-major
+ (package-version gimp))
+ ".0")))
+ (substitute* (list "src/resynthesizer/Makefile"
+ "src/resynthesizer-gui/Makefile")
+ (("GIMP_LIBDIR = .*")
+ (string-append "GIMP_LIBDIR = " target "\n")))
+ (mkdir-p target)
+ #t))))))
+ (native-inputs
+ `(("autoconf" ,autoconf-wrapper)
+ ("automake" ,automake)
+ ("glib" ,glib "bin") ; glib-gettextize
+ ("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gimp" ,gimp)
+ ("gdk-pixbuf" ,gdk-pixbuf) ; needed by gimp-2.0.pc
+ ("cairo" ,cairo)
+ ("gegl" ,gegl)
+ ("gtk+" ,gtk+-2) ; needed by gimpui-2.0.pc
+ ("glib" ,glib)))
+ (home-page "https://github.com/bootchk/resynthesizer")
+ (synopsis "GIMP plugins for texture synthesis")
+ (description
+ "This package provides resynthesizer plugins for GIMP, which encompasses
+tools for healing selections (content-aware fill), enlarging the canvas and
+healing the border, increasing the resolution while adding detail, and
+transfering the style of an image.")
+ (license license:gpl3+)))