diff --git a/pkgs/scan2paperless.nix b/pkgs/scan2paperless.nix index 5e527ddb..c56733ef 100644 --- a/pkgs/scan2paperless.nix +++ b/pkgs/scan2paperless.nix @@ -2,16 +2,28 @@ self: with self; '' export PATH=${lib.makeBinPath [pkgs.coreutils pkgs.sane-frontends pkgs.sane-backends pkgs.ghostscript pkgs.imagemagick]} - while true; - do - read -p "Press Enter to continue or Ctrl+C to stop" < /dev/tty + NAME=$([ "$1" == "" ] && date -Iseconds || echo "$1") + TMPDIR=$(mktemp -d) + + echo "Using ''${NAME}.pdf as filename" + RESPONSE="" + + while [ -z "$RESPONSE" ]; + do DATETIME=$(date -Iseconds) + echo "Starting scan $DATETIME" scanimage \ -d "''${SCANNER_DEFAULT_DEVICE}" \ --format=jpeg \ --resolution 300 \ --progress \ - -o "''${SCANNER_OUTPUT_DIR}/''${DATETIME}.jpg" + -o "''${TMPDIR}/''${DATETIME}.jpg" + + read -p "Press ENTER to scan another page, or any other key to generate the final PDF: " RESPONSE < /dev/tty done + + ${python39Packages.img2pdf}/bin/img2pdf --output "''${SCANNER_OUTPUT_DIR}/''${NAME}.pdf" ''${TMPDIR}/* + + rm -rf TMPDIR ''