summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2022-03-25 21:37:01 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2022-03-26 08:52:40 +0100
commit8358ad36c63b8060631ba0fb67a42ebd57a87034 (patch)
tree96fb2bf95e82d69ce9372da1544dfab35a096fd2
parentfc9ac2ac64a39f7bb8433428982da62c170d14e9 (diff)
downloadguix-patches-8358ad36c63b8060631ba0fb67a42ebd57a87034.tar
guix-patches-8358ad36c63b8060631ba0fb67a42ebd57a87034.tar.gz
gnu: mcomix: Update to 2.0.1.
* gnu/packages/image-viewers.scm (mcomix): Update to 2.0.1. [source]: Use sourceforge once again. [inputs]: Add ‘python’. [arguments]: Convert to a list of G-Expressions. <#:tests?>: Drop. <#:phases>: Rename ‘configure’ to ‘patch-sources’. Also fix an assertion error in "mcomix/image_tools.py". No longer replace ‘build’ or ‘install’. Add ‘install-data’ phase after ‘install’. Use (this-package-input) to refer to the python input.
-rw-r--r--gnu/packages/image-viewers.scm122
1 files changed, 41 insertions, 81 deletions
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index 6ab6cf3307..97f09aebb5 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -662,91 +662,51 @@ imaging. It supports several HDR and LDR image formats, and it can:
;; CBR and RAR are currently unsupported, due to non-free dependencies.
(define-public mcomix
- ;; Official mcomix hasn't been updated since 2016, it's broken with
- ;; python-pillow 6+ and only supports Python 2. We use fork instead.
- (let ((commit "fea55a7a9369569eefed72209eed830409c4af98"))
- (package
- (name "mcomix")
- (version (git-version "1.2.1" "1" commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/multiSnow/mcomix3")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "05zl0dkjwbdcm2zlk4nz9w33amlqj8pbf32a8ymshc2356fqhhi5"))))
- (build-system python-build-system)
- (inputs
- (list p7zip python-pillow python-pygobject python-pycairo))
- (arguments
- `(#:tests? #f ; FIXME: How do we run tests?
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'configure
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((p7zip (assoc-ref inputs "p7zip")))
- ;; insert absolute path to 7z executable
- (substitute* "mcomix/mcomix/archive/sevenzip_external.py"
- (("_7z_executable = -1")
- (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
+ (package
+ (name "mcomix")
+ (version "2.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/mcomix/MComix-" version "/"
+ "mcomix-" version ".tar.gz"))
+ (sha256
+ (base32
+ "187ca815vxb2in1ryvfiaf1zapi0bc9jxdac3c1bky0kr6x7xyap"))))
+ (build-system python-build-system)
+ (inputs
+ (list p7zip python python-pillow python-pygobject python-pycairo))
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-source
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "mcomix/archive/sevenzip_external.py"
+ ;; Ensure that 7z is found by hardcoding its absolute path.
+ (("_7z_executable = -1")
+ (format #f "_7z_executable = ~s"
+ (search-input-file inputs "/bin/7z"))))
+ (substitute* "mcomix/image_tools.py"
+ (("assert name not in supported_formats_gdk")
+ "if name in supported_formats_gdk: continue"))))
+ (add-after 'install 'install-data
+ (lambda* (#:key outputs #:allow-other-keys)
+ (copy-recursively
+ "mcomix/images"
+ (string-append (assoc-ref outputs "out")
+ "/lib/python"
+ #$(version-major+minor
+ (package-version (this-package-input "python")))
+ "/site-packages/mcomix/images")))))))
+ (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
including CBZ, CB7, CBT, LHA.
For PDF support, install the @emph{mupdf} package.")
- (license license:gpl2+))))
+ (license license:gpl2+)))
(define-public qview
(package