diff options
Diffstat (limited to 'gnu/packages/gtk.scm')
-rw-r--r-- | gnu/packages/gtk.scm | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 42ca2b1af6..79f3276ba8 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -33,6 +33,8 @@ #:use-module (guix build-system waf) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages autotools) + #:use-module (gnu packages texinfo) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages docbook) @@ -632,6 +634,92 @@ graphics library with all of the benefits of Scheme: memory management, exceptions, macros, and a dynamic programming environment.") (license license:lgpl3+))) +(define-public guile-rsvg + (package + (name "guile-rsvg") + (version "2.18.1") + (source (origin + (method url-fetch) + (uri (string-append "http://wingolog.org/pub/guile-rsvg/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "136f236iw3yrrz6pkkp1ma9c5mrs5icqha6pnawinqpk892r3jh7")) + (patches (list (search-patch "guile-rsvg-pkgconfig.patch"))) + (modules '((guix build utils))) + (snippet + '(substitute* (find-files "." "Makefile\\.am") + (("/share/guile/site") + "/share/guile/site/2.0"))))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-before 'configure 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) + (native-inputs `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("texinfo" ,texinfo))) + (inputs `(("guile" ,guile-2.0) + ("librsvg" ,librsvg) + ("guile-lib" ,guile-lib))) ;for (unit-test) + (propagated-inputs `(("guile-cairo" ,guile-cairo))) + (synopsis "Render SVG images using Cairo from Guile") + (description + "Guile-RSVG wraps the RSVG library for Guile, allowing you to render SVG +images onto Cairo surfaces.") + (home-page "http://wingolog.org/projects/guile-rsvg/") + (license license:lgpl2.1+))) + +(define-public guile-present + (package + (name "guile-present") + (version "0.3.0") + (source (origin + (method url-fetch) + (uri (string-append "http://wingolog.org/pub/guile-present/" + "guile-present-" version ".tar.gz")) + (sha256 + (base32 + "1qam447m05sxxv6x8dlzg7qnyfc4dh8apjw1idpfhpns671gfr6m")) + (patches (list (search-patch "guile-present-coding.patch"))) + (modules '((guix build utils))) + (snippet + '(substitute* "Makefile.in" + (("godir = .*$") + "godir = $(moddir)\n"))))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-cons-after + 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (guile (assoc-ref inputs "guile"))) + (substitute* (find-files bin ".*") + (("guile") + (string-append guile "/bin/guile -L " + out "/share/guile/site/2.0 -C " + out "/share/guile/site/2.0 "))))) + %standard-phases))) + (native-inputs `(("pkg-config" ,pkg-config))) + (inputs `(("guile" ,guile-2.0))) + (propagated-inputs + ;; These are used by the (present …) modules. + `(("guile-lib" ,guile-lib) + ("guile-cairo" ,guile-cairo) + ("guile-rsvg" ,guile-rsvg))) + (home-page "http://wingolog.org/software/guile-present/") + (synopsis "Create SVG or PDF presentations in Guile") + (description + "Guile-Present defines a declarative vocabulary for presentations, +together with tools to render presentation documents as SVG or PDF. +Guile-Present can be used to make presentations programmatically, but also +includes a tools to generate PDF presentations out of Org mode and Texinfo +documents.") + (license license:lgpl3+))) ;;; ;;; C++ bindings. |