The epub-tools package

[Tags:bsd3, program, test]

A suite of command-line utilities for creating and manipulating epub book files. Included are: epubmeta, epubname, epubzip


[Skip to Readme]

Properties

Versions 1.0.0.0, 1.0.0.1, 1.1.0, 1.1.1, 1.1.2, 2.0.0, 2.1.0, 2.1.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9
Change log changelog.md
Dependencies base (>=3 && <5), bytestring, directory, epub-metadata (>=4.0), filepath, mtl, parsec, process, regex-compat, zip-archive [details]
License BSD3
Copyright 2008-2016 Dino Morelli
Author Dino Morelli
Maintainer Dino Morelli <dino@ui3.info>
Stability Unknown
Category Application, Console
Home page http://hub.darcs.net/dino/epub-tools
Source repository head: darcs get http://hub.darcs.net/dino/epub-tools
Uploaded Wed Oct 19 18:57:10 UTC 2016 by DinoMorelli
Distributions NixOS:2.9
Downloads 20118 total (82 in the last 30 days)
Votes
0 []
Status Docs not available [build log]
Last success reported on 2016-11-14 [all 4 reports]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for epub-tools

Readme for epub-tools-2.9

epub-tools

Synopsis

Command line utilities for working with epub files (Haskell)

Description

A suite of command-line utilities for creating and manipulating epub book files. Included are: epubmeta, epubname, epubzip. This software uses the epub-metadata library, also available on Hackage.

epubmeta

epubmeta is a command-line utility for examining and editing epub book metadata. With it you can export, import and edit the raw OPF Package XML document for a given book. Or simply dump the metadata to stdout for viewing in a friendly format.

Here's an example of epubmeta output:

  $ epubmeta Kelly_Kessel_Lethem-NinetyPercentOfEverything.epub

  package
     version: 2.0
     unique-identifier: calibre_id
  identifier
     id: calibre_id
     scheme: calibre
     text: b1026732-69a5-4a05-a8d9-a1701685f6fa
  identifier
     scheme: ISBN
     text: 1-590620-00-3
  title: Ninety Percent of Everything
  language: en-us
  contributor
     text: calibre (0.5.1) [http://calibre.kovidgoyal.net]
     file-as: calibre
     role: bkp
  creator
     text: James Patrick Kelly
     file-as: Kelly, James Patrick
     role: aut
  creator
     text: John Kessel
     role: aut
  creator
     text: Jonathan Lethem
     role: aut
  date: 2001-03-25T00:00:00
  publisher: www.Fictionwise.com
  subject: Science Fiction/Fantasy

epubname

epubname is a command-line utility for renaming epub ebook files based on their OPF Package metadata. It tries to use author names and title info to construct a sensible name.

Using it looks like this:

  $ epubname poorly-named-book.epub

  poorly-named-book.epub -> WattsPeter-Blindsight_2006.epub

  $ epubname another-poorly-named-book.epub

  another-poorly-named-book.epub -> Kelly_Kessel_Lethem-NinetyPercentOfEverything.epub

epubzip

epubzip is a handy utility for zipping up the files that comprise an epub into an .epub zip file. Using the same technology as epubname, it can try to make a meaningful filename for the book.

Getting this software

Binaries

Building and installing from source with cabal-install:

  $ cabal update ; cabal install epub-tools

Getting source for development

  • Download the cabalized source package from Hackage
  • Get the source with darcs: $ darcs clone http://hub.darcs.net/dino/epub-tools
  • Get the source with stack: $ stack unpack epub-tools
  • If you're just looking, browse the source

Once you have source, building the usual way:

  $ stack build
  $ stack test
  $ stack haddock

Contact

Dino Morelli [dino@ui3.info](mailto:dino@ui3.info)