diff options
Diffstat (limited to 'gnu/packages/ebook.scm')
-rw-r--r-- | gnu/packages/ebook.scm | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index bbb127a7d9..38abf47c87 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -28,10 +28,14 @@ #:use-module (gnu packages) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages fribidi) + #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) #:use-module (gnu packages icu4c) @@ -41,8 +45,10 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages qt) + #:use-module (gnu packages serialization) #:use-module (gnu packages tls) #:use-module (gnu packages web) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public chmlib @@ -126,6 +132,8 @@ ("python2-lxml" ,python2-lxml) ("python2-markdown" ,python2-markdown) ("python2-mechanize" ,python2-mechanize) + ;; python2-msgpack is needed for the network content server to work. + ("python2-msgpack" ,python2-msgpack) ("python2-netifaces" ,python2-netifaces) ("python2-pillow" ,python2-pillow) ("python2-pygments" ,python2-pygments) @@ -192,3 +200,80 @@ ebooks for convenient reading.") license:public-domain license:silofl1.1 license:cc-by-sa3.0)))) + +(define-public liblinebreak + (package + (name "liblinebreak") + (version "2.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/vimgadgets" + "/liblinebreak/" version + "/liblinebreak-" version ".tar.gz")) + (sha256 + (base32 + "1f36dbq7nc77lln1by2n1yl050g9dc63viawhs3gc3169mavm36x")))) + (build-system gnu-build-system) + (home-page "http://vimgadgets.sourceforge.net/liblinebreak/") + (synopsis "Library for detecting where linebreaks are allowed in text") + (description "@code{liblinebreak} is an implementation of the line +breaking algorithm as described in Unicode 6.0.0 Standard Annex 14, +Revision 26. It breaks lines that contain Unicode characters. It is +designed to be used in a generic text renderer.") + (license license:zlib))) + +(define-public fbreader + (package + (name "fbreader") + (version "0.99.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/geometer/FBReader/" + "archive/" version "-freebsdport.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0gf1nl562fqkwlzcn6rgkp1j8jcixzmfsnwxbc0sm49zh8n3zqib")))) + (build-system gnu-build-system) + (inputs + `(("curl" ,curl) + ("expat" ,expat) + ("fribidi" ,fribidi) + ("glib" ,glib) + ("gtk+-2" ,gtk+-2) + ("libjpeg" ,libjpeg) + ("liblinebreak" ,liblinebreak) + ("libxft" ,libxft) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:tests? #f ; No tests exist. + #:make-flags `("CC=gcc" "TARGET_ARCH=desktop" "UI_TYPE=gtk" + "TARGET_STATUS=release" + ,(string-append "INSTALLDIR=" + (assoc-ref %outputs "out")) + ,(string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (home-page "https://fbreader.org/") + (synopsis "E-Book reader") + (description "@code{fbreader} is an E-Book reader. It supports the +following formats: + +@enumerate +@item CHM +@item Docbook +@item FB2 +@item HTML +@item OEB +@item PDB +@item RTF +@item TCR +@item TXT +@item XHTML +@end enumerate") + (license license:gpl2+))) |