diff options
Diffstat (limited to 'gnu/packages/textutils.scm')
-rw-r--r-- | gnu/packages/textutils.scm | 126 |
1 files changed, 123 insertions, 3 deletions
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 5a8f9f09ea..325386d234 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -1,5 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> +;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org> +;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,7 +24,11 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system gnu) - #:use-module (gnu packages python)) + #:use-module (guix build-system trivial) + #:use-module (gnu packages autotools) + #:use-module (gnu packages perl) + #:use-module (gnu packages python) + #:use-module (gnu packages zip)) (define-public recode (package @@ -43,11 +49,13 @@ (arguments '(#:phases (alist-cons-before - 'check 'fix-setup-py + 'check 'pre-check (lambda _ (substitute* "tests/setup.py" (("([[:space:]]*)include_dirs=.*" all space) - (string-append all space "library_dirs=['../src/.libs'],\n")))) + (string-append all space "library_dirs=['../src/.libs'],\n"))) + ;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'. + (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs"))) %standard-phases))) (home-page "https://github.com/pinard/Recode") (synopsis "Text encoding converter") @@ -83,3 +91,115 @@ handy front-end to the library.") an encoding detection library, and enca, a command line frontend, integrating libenca and several charset conversion libraries and tools.") (license license:gpl2))) + +(define-public utf8proc + (package + (name "utf8proc") + (version "1.1.6") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/JuliaLang/utf8proc/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "0wmsi672knii0q70wh6a3ll0gv7qk33c50zbpzasrs3b16bqy659")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ;no "check" target + #:make-flags '("CC=gcc") + #:phases + (alist-replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((lib (string-append (assoc-ref outputs "out") "/lib/")) + (include (string-append (assoc-ref outputs "out") "/include/"))) + (mkdir-p lib) + (mkdir-p include) + (copy-file "utf8proc.h" (string-append include "utf8proc.h")) + (for-each (lambda (file) + (copy-file file (string-append lib (basename file)))) + '("libutf8proc.a" "libutf8proc.so")))) + ;; no configure script + (alist-delete 'configure %standard-phases)))) + (home-page "http://julialang.org/utf8proc/") + (synopsis "C library for processing UTF-8 Unicode data") + (description "utf8proc is a small C library that provides Unicode +normalization, case-folding, and other operations for data in the UTF-8 +encoding, supporting Unicode version 7.0.") + (license license:expat))) + +(define-public libgtextutils + (package + (name "libgtextutils") + (version "0.7") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/agordon/libgtextutils/releases/download/" + version "/libgtextutils-" version ".tar.gz")) + (sha256 + (base32 "0jiybkb2z58wa2msvllnphr4js2hvjvh988pavb3mzkgr6ihwbkr")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (alist-cons-after + 'unpack 'autoreconf + (lambda _ (zero? (system* "autoreconf" "-vif"))) + %standard-phases))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (home-page "https://github.com/agordon/libgtextutils") + (synopsis "Gordon's text utils library") + (description + "libgtextutils is a text utilities library used by the fastx toolkit from +the Hannon Lab.") + (license license:agpl3+))) + +(define-public markdown + (package + (name "markdown") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "http://daringfireball.net/projects/downloads/" + (string-capitalize name) "_" version ".zip")) + (sha256 + (base32 "0dq1pj91pvlwkv0jwcgdfpv6gvnxzrk3s8mnh7imamcclnvfj835")))) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (perlbd (string-append (assoc-ref %build-inputs "perl") "/bin")) + (unzip (string-append (assoc-ref %build-inputs "unzip") + "/bin/unzip"))) + (mkdir-p out) + (with-directory-excursion out + (system* unzip source) + (mkdir "bin") + (mkdir-p "share/doc") + (rename-file "Markdown_1.0.1/Markdown.pl" "bin/markdown") + (rename-file "Markdown_1.0.1/Markdown Readme.text" + "share/doc/README") + (patch-shebang "bin/markdown" (list perlbd)) + (delete-file-recursively "Markdown_1.0.1")))))) + (native-inputs `(("unzip" ,unzip))) + (inputs `(("perl" ,perl))) + (home-page "http://daringfireball.net/projects/markdown") + (synopsis "Text-to-HTML conversion tool") + (description + "Markdown is a text-to-HTML conversion tool for web writers. It allows +you to write using an easy-to-read, easy-to-write plain text format, then +convert it to structurally valid XHTML (or HTML).") + (license (license:non-copyleft "file://License.text" + "See License.text in the distribution.")))) |