1{
2 beautifulsoup4,
3 buildPythonPackage,
4 comicon,
5 feedparser,
6 fetchFromGitHub,
7 filetype,
8 lib,
9 lxml,
10 natsort,
11 nix-update-script,
12 pillow,
13 poetry-core,
14 pyside6,
15 python-slugify,
16 requests,
17 typer,
18}:
19
20buildPythonPackage rec {
21 pname = "mandown";
22 version = "1.12.2";
23 pyproject = true;
24
25 src = fetchFromGitHub {
26 owner = "potatoeggy";
27 repo = "mandown";
28 tag = "v${version}";
29 hash = "sha256-kbzh6qbex3PzdE53rx9Sxff1lhh1yYjehdEJ9Srq5gY=";
30 };
31
32 build-system = [
33 poetry-core
34 ];
35
36 dependencies = [
37 beautifulsoup4
38 comicon
39 feedparser
40 filetype
41 lxml
42 natsort
43 pillow
44 python-slugify
45 requests
46 typer
47 ];
48
49 pythonRelaxDeps = [
50 "beautifulsoup4"
51 "lxml"
52 "pillow"
53 "typer"
54 ];
55
56 optional-dependencies = {
57 gui = [ pyside6 ];
58 };
59
60 pythonImportsCheck = [ "mandown" ];
61
62 passthru.updateScript = nix-update-script { };
63
64 meta = {
65 changelog = "https://github.com/potatoeggy/mandown/releases/tag/v${version}";
66 description = "Comic/manga/webtoon downloader and CBZ/EPUB/MOBI/PDF converter";
67 homepage = "https://github.com/potatoeggy/mandown";
68 license = lib.licenses.agpl3Only;
69 maintainers = with lib.maintainers; [ Scrumplex ];
70 };
71}