lol

pdftowrite: init at 2021.05.03

henrispriet 722d3cb4 fac7cd44

+122
+31
pkgs/by-name/pd/pdftowrite/inkscape-unknown-option-pdf-page.patch
··· 1 + From b3cd46bf1ea7ddc7ce26e9b713bb7fb5faadba40 Mon Sep 17 00:00:00 2001 2 + From: Ulysses Zhan <ulysseszhan@gmail.com> 3 + Date: Wed, 20 Mar 2024 21:57:47 -0700 4 + Subject: [PATCH] fix `Unknown option --pdf-page` when calling inkscape 5 + 6 + --- 7 + pdftowrite/pdftowrite.py | 4 ++-- 8 + 1 file changed, 2 insertions(+), 2 deletions(-) 9 + 10 + diff --git a/pdftowrite/pdftowrite.py b/pdftowrite/pdftowrite.py 11 + index 6c12515..4d03fc2 100644 12 + --- a/pdftowrite/pdftowrite.py 13 + +++ b/pdftowrite/pdftowrite.py 14 + @@ -79,7 +79,7 @@ def process_page(filename: str, page_num: int, output_dir: str, ns: argparse.Nam 15 + opts = ['--pdf-poppler'] if ns.mode is Mode.POPPLER or ns.mode is Mode.MIXED else [] 16 + utils.inkscape_run([ 17 + *opts, 18 + - f'--pdf-page={page_num}', 19 + + f'--pages={page_num}', 20 + f'--export-dpi={ns.dpi}', 21 + '--export-plain-svg', 22 + '-o', output, 23 + @@ -90,7 +90,7 @@ def process_page(filename: str, page_num: int, output_dir: str, ns: argparse.Nam 24 + if ns.mode is Mode.MIXED: 25 + text_layer_output = str(Path(output_dir) / f'output-{page_num}-text.svg') 26 + utils.inkscape_run([ 27 + - f'--pdf-page={page_num}', 28 + + f'--pages={page_num}', 29 + f'--export-dpi={ns.dpi}', 30 + '--export-plain-svg', 31 + '-o', text_layer_output,
+91
pkgs/by-name/pd/pdftowrite/package.nix
··· 1 + { 2 + lib, 3 + python3Packages, 4 + fetchFromGitHub, 5 + makeWrapper, 6 + versionCheckHook, 7 + nix-update-script, 8 + 9 + # shared 10 + gzip, 11 + # pdftowrite 12 + poppler-utils, 13 + inkscape, 14 + ghostscript, 15 + imagemagick, 16 + libxml2, 17 + libxslt, 18 + # writetopdf 19 + wkhtmltopdf, 20 + pdftk, 21 + librsvg, 22 + }: 23 + python3Packages.buildPythonApplication rec { 24 + pname = "pdftowrite"; 25 + version = "2021.05.03"; 26 + pyproject = true; 27 + 28 + src = fetchFromGitHub { 29 + owner = "apebl"; 30 + repo = "pdftowrite"; 31 + tag = version; 32 + hash = "sha256-IFX9K74tfGKyMtqlc/RsV00baZEzE3HcPAGfrmTHnDQ="; 33 + }; 34 + 35 + dependencies = [ 36 + python3Packages.shortuuid 37 + python3Packages.picosvg 38 + ]; 39 + 40 + build-system = [ 41 + python3Packages.setuptools 42 + python3Packages.setuptools-scm 43 + makeWrapper 44 + ]; 45 + 46 + patches = [ 47 + # fix inkscape flag (see https://gitlab.com/inkscape/inkscape/-/issues/4536) 48 + ./inkscape-unknown-option-pdf-page.patch 49 + ]; 50 + 51 + postInstall = 52 + let 53 + pdftowritePath = lib.makeBinPath [ 54 + # shared 55 + gzip 56 + # pdftowrite 57 + poppler-utils 58 + inkscape 59 + ghostscript 60 + imagemagick 61 + libxml2 62 + libxslt 63 + ]; 64 + writetopdfPath = lib.makeBinPath [ 65 + # shared 66 + gzip 67 + # writetopdf 68 + wkhtmltopdf 69 + pdftk 70 + librsvg 71 + ]; 72 + in 73 + # `SELF_CALL=xxx` prevents inkscape shananigans (see https://gitlab.com/inkscape/inkscape/-/issues/4716) 74 + '' 75 + wrapProgram $out/bin/pdftowrite --prefix PATH : ${pdftowritePath} \ 76 + --set SELF_CALL=xxx 77 + wrapProgram $out/bin/writetopdf --prefix PATH : ${writetopdfPath} 78 + ''; 79 + 80 + nativeCheckInputs = [ versionCheckHook ]; 81 + versionCheckProgramArg = "--version"; 82 + passthru.updateScript = nix-update-script { }; 83 + 84 + meta = { 85 + homepage = "https://github.com/apebl/pdftowrite"; 86 + description = "Utility that converts PDF to Stylus Labs Write documents, and vice versa"; 87 + platforms = lib.platforms.linux; 88 + license = lib.licenses.mit; 89 + maintainers = with lib.maintainers; [ henrispriet ]; 90 + }; 91 + }