gnu: Add python-pypdf2.

* gnu/packages/pdf.scm (python-pypdf2, python2-pypdf2): New variables.
This commit is contained in:
Hartmut Goebel 2016-11-08 22:31:32 +01:00
parent 324a2ba56c
commit ad5a7d49c3
No known key found for this signature in database
GPG Key ID: 634A8DFFD3F631DF
1 changed files with 49 additions and 0 deletions

View File

@ -784,3 +784,52 @@ the framebuffer.")
(description "@command{pdf2svg} is a simple command-line PDF to SVG
converter using the Poppler and Cairo libraries.")
(license license:gpl2+)))
(define-public python-pypdf2
(package
(name "python-pypdf2")
(version "1.26.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "PyPDF2" version))
(sha256
(base32
"11a3aqljg4sawjijkvzhs3irpw0y67zivqpbjpm065ha5wpr13z2"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after
'unpack 'patch-test-suite
(lambda _
;; The text-file needs to be opened in binary mode for Python 3,
;; so patch in the "b"
(substitute* "Tests/tests.py"
(("pdftext_file = open\\(.* 'crazyones.txt'\\), 'r" line)
(string-append line "b")))
#t))
(replace 'check
(lambda _
(zero? (system* "python" "-m" "unittest" "Tests.tests")))))))
(home-page "http://mstamy2.github.com/PyPDF2")
(synopsis "Pure Python PDF toolkit")
(description "PyPDF2 is a pure Python PDF library capable of:
@enumerate
@item extracting document information (title, author, )
@item splitting documents page by page
@item merging documents page by page
@item cropping pages
@item merging multiple pages into a single page
@item encrypting and decrypting PDF files
@end enumerate
By being pure Python, it should run on any Python platform without any
dependencies on external libraries. It can also work entirely on
@code{StringIO} objects rather than file streams, allowing for PDF
manipulation in memory. It is therefore a useful tool for websites that
manage or manipulate PDFs.")
(license license:bsd-3)))
(define-public python2-pypdf2
(package-with-python2 python-pypdf2))