80 lines
1.7 KiB
Nix
80 lines
1.7 KiB
Nix
{ lib
|
|
, fetchurl
|
|
, gdk-pixbuf
|
|
, gobject-introspection
|
|
, gtk3
|
|
, mcomix
|
|
, python3
|
|
, testers
|
|
, wrapGAppsHook
|
|
|
|
# Recommended Dependencies:
|
|
, p7zip
|
|
, unrar
|
|
, chardetSupport ? true
|
|
, pdfSupport ? true
|
|
, unrarSupport ? false # unfree software
|
|
}:
|
|
|
|
python3.pkgs.buildPythonApplication rec {
|
|
pname = "mcomix";
|
|
version = "3.1.0";
|
|
pyproject = true;
|
|
|
|
src = fetchurl {
|
|
url = "mirror://sourceforge/mcomix/mcomix-${version}.tar.gz";
|
|
hash = "sha256-+Shuun/7w86VKBNamTmCPEJfO76fdKY5+HBvzCi0xCc=";
|
|
};
|
|
|
|
buildInputs = [
|
|
gtk3
|
|
gdk-pixbuf
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
gobject-introspection
|
|
python3.pkgs.setuptools
|
|
wrapGAppsHook
|
|
];
|
|
|
|
propagatedBuildInputs = with python3.pkgs; [
|
|
pillow
|
|
pycairo
|
|
pygobject3
|
|
]
|
|
++ lib.optionals chardetSupport [ chardet ]
|
|
++ lib.optionals pdfSupport [ pymupdf ];
|
|
|
|
# No tests included in .tar.gz
|
|
doCheck = false;
|
|
|
|
# Prevent double wrapping
|
|
dontWrapGApps = true;
|
|
|
|
preFixup = ''
|
|
makeWrapperArgs+=(
|
|
"''${gappsWrapperArgs[@]}"
|
|
"--prefix" "PATH" ":" "${lib.makeBinPath ([ p7zip ] ++ lib.optional unrarSupport unrar)}"
|
|
)
|
|
'';
|
|
|
|
postInstall = ''
|
|
cp -a share $out/
|
|
'';
|
|
|
|
passthru.tests.version = testers.testVersion {
|
|
package = mcomix;
|
|
};
|
|
|
|
meta = with lib; {
|
|
description = "Comic book reader and image viewer";
|
|
longDescription = ''
|
|
User-friendly, customizable image viewer, specifically designed to handle
|
|
comic books and manga supporting a variety of container formats
|
|
(including CBR, CBZ, CB7, CBT, LHA and PDF)
|
|
'';
|
|
homepage = "https://sourceforge.net/projects/mcomix/";
|
|
license = licenses.gpl2Plus;
|
|
maintainers = with maintainers; [ thiagokokada ];
|
|
};
|
|
}
|