gnu: mcomix: Update to 20200402.

* gnu/packages/image-viewers.scm (mcomix): Update to 20200402.
This commit is contained in:
Pierre Neidhardt 2020-04-07 17:59:20 +02:00
parent 7bc71025cc
commit e5afc63bd9
No known key found for this signature in database
GPG key ID: 9BDCF497A4BBCC7F

View file

@ -14,6 +14,7 @@
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net> ;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in> ;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -35,6 +36,7 @@
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system meson) #:use-module (guix build-system meson)
@ -420,44 +422,95 @@ imaging. It supports several HDR and LDR image formats, and it can:
(license license:gpl2+))) (license license:gpl2+)))
;; CBR and RAR are currently unsupported, due to non-free dependencies. ;; CBR and RAR are currently unsupported, due to non-free dependencies.
;; For optional PDF support, you can install the mupdf package.
(define-public mcomix (define-public mcomix
(package ;; Official mcomix hasn't been updated since 2016, it's broken with
(name "mcomix") ;; python-pillow 6+ and only supports Python 2. We use fork instead.
(version "1.2.1") (let ((commit "fea55a7a9369569eefed72209eed830409c4af98"))
(source (package
(origin (name "mcomix")
(method url-fetch) (version (git-version "1.2.1" "1" commit))
(uri (string-append "mirror://sourceforge/mcomix/MComix-" version (source
"/mcomix-" version ".tar.bz2")) (origin
(sha256 (method git-fetch)
(base32 (uri (git-reference
"0fzsf9pklhfs1rzwzj64c0v30b74nk94p93h371rpg45qnfiahvy")))) (url "https://github.com/multiSnow/mcomix3")
(build-system python-build-system) (commit commit)))
(inputs (file-name (git-file-name name version))
`(("p7zip" ,p7zip) (sha256
("python2-pillow" ,python2-pillow) (base32
("python2-pygtk" ,python2-pygtk))) "05zl0dkjwbdcm2zlk4nz9w33amlqj8pbf32a8ymshc2356fqhhi5"))))
(arguments (build-system python-build-system)
;; Python 2.5 or newer (Python 3 and up is not supported) (inputs
`(#:python ,python-2 `(("p7zip" ,p7zip)
#:tests? #f ; there are no tests ("python-pillow" ,python-pillow)
#:phases ("python-pygobject" ,python-pygobject)
(modify-phases %standard-phases ("python-pycairo" ,python-pycairo)))
(add-after 'unpack 'configure (arguments
(lambda* (#:key inputs #:allow-other-keys) `(#:tests? #f ; FIXME: How do we run tests?
(let ((p7zip (assoc-ref inputs "p7zip"))) #:phases
;; insert absolute path to 7z executable (modify-phases %standard-phases
(substitute* "mcomix/archive/sevenzip_external.py" (add-after 'unpack 'configure
(("_7z_executable = -1") (lambda* (#:key inputs #:allow-other-keys)
(string-append "_7z_executable = u'" p7zip "/bin/7z'")))) (let ((p7zip (assoc-ref inputs "p7zip")))
#t))))) ;; insert absolute path to 7z executable
(home-page "https://sourceforge.net/p/mcomix/wiki/Home/") (substitute* "mcomix/mcomix/archive/sevenzip_external.py"
(synopsis "Image viewer for comics") (("_7z_executable = -1")
(description "MComix is a customizable image viewer that specializes as (string-append "_7z_executable = u'" p7zip "/bin/7z'"))))
#t))
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pyver ,(version-major+minor (package-version python)))
(lib (string-append out "/lib/python" pyver)))
(invoke (which "python") "installer.py" "--srcdir=mcomix"
(string-append "--target=" lib))
(rename-file (string-append lib "/mcomix")
(string-append lib "/site-packages"))
#t)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share"))
(bin (string-append out "/bin"))
(pyver ,(version-major+minor (package-version python)))
(lib (string-append out "/lib/python" pyver "/site-packages")))
(mkdir-p bin)
(rename-file (string-append lib "/mcomixstarter.py")
(string-append bin "/mcomix"))
(rename-file (string-append lib "/comicthumb.py")
(string-append bin "/comicthumb"))
(install-file "mime/mcomix.desktop"
(string-append share "/applications"))
(install-file "mime/mcomix.appdata.xml"
(string-append share "/metainfo"))
(install-file "mime/mcomix.xml"
(string-append share "/mime/packages"))
(install-file "mime/comicthumb.thumbnailer"
(string-append share "/thumbnailers"))
(install-file "man/mcomix.1" (string-append share "/man/man1"))
(install-file "man/comicthumb.1" (string-append share "/man/man1"))
(for-each
(lambda (size)
(install-file
(format #f "mcomix/mcomix/images/~sx~s/mcomix.png" size size)
(format #f "~a/icons/hicolor/~sx~s/apps/" share size size))
(for-each
(lambda (ext)
(install-file
(format #f "mime/icons/~sx~s/application-x-~a.png" size size ext)
(format #f "~a/icons/hicolor/~sx~s/mimetypes/"
share size size)))
'("cb7" "cbr" "cbt" "cbz")))
'(16 22 24 32 48))
#t))))))
(home-page "https://sourceforge.net/p/mcomix/wiki/Home/")
(synopsis "Image viewer for comics")
(description "MComix is a customizable image viewer that specializes as
a comic and manga reader. It supports a variety of container formats a comic and manga reader. It supports a variety of container formats
including CBZ, CB7, CBT, LHA.") including CBZ, CB7, CBT, LHA.
(license license:gpl2+)))
For PDF support, install the @emph{mupdf} package.")
(license license:gpl2+))))
(define-public qview (define-public qview
(package (package