diff --git a/container/Dockerfile b/container/Dockerfile index 68c3084..845de68 100644 --- a/container/Dockerfile +++ b/container/Dockerfile @@ -88,8 +88,7 @@ RUN \ chmod +x /usr/local/bin/pdftk COPY dangerzone.py /usr/local/bin/ -COPY document-to-pixels /usr/local/bin/ -COPY pixels-to-pdf /usr/local/bin/ +RUN chmod +x /usr/local/bin/dangerzone.py # Add the unprivileged user RUN adduser -h /home/user -s /bin/sh -D user diff --git a/container/dangerzone.py b/container/dangerzone.py index 752b7d4..c42c691 100644 --- a/container/dangerzone.py +++ b/container/dangerzone.py @@ -17,6 +17,7 @@ import subprocess import glob import os import json +import shutil import magic from PIL import Image @@ -300,6 +301,15 @@ class DangerzoneConverter: "Converted document to pixels", percentage, ) + + # Move converted files into /dangerzone + for filename in ( + glob.glob("/tmp/page-*.rgb") + + glob.glob("/tmp/page-*.width") + + glob.glob("/tmp/page-*.height") + ): + shutil.move(filename, "/dangerzone") + return 0 def pixels_to_pdf(self): @@ -500,6 +510,10 @@ class DangerzoneConverter: percentage = 100.0 self.output(False, "Safe PDF created", percentage) + # Move converted files into /safezone + shutil.move("/tmp/safe-output.pdf", "/safezone") + shutil.move("/tmp/safe-output-compressed.pdf", "/safezone") + return 0 def output(self, error, text, percentage): diff --git a/container/document-to-pixels b/container/document-to-pixels deleted file mode 100755 index 37ee6b8..0000000 --- a/container/document-to-pixels +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -# Do the conversion -/usr/bin/python3 /usr/local/bin/dangerzone.py document-to-pixels -RETURN_CODE=$? -if [ $RETURN_CODE -ne 0 ]; then - echo "" - exit $RETURN_CODE -fi - -# Move converted files into /dangerzone -/bin/mv /tmp/page-*.rgb /dangerzone -/bin/mv /tmp/page-*.width /dangerzone -/bin/mv /tmp/page-*.height /dangerzone diff --git a/container/pixels-to-pdf b/container/pixels-to-pdf deleted file mode 100755 index f3c41e1..0000000 --- a/container/pixels-to-pdf +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -# Do the conversion -OCR=$OCR OCR_LANGUAGE=$OCR_LANGUAGE /usr/bin/python3 /usr/local/bin/dangerzone.py pixels-to-pdf -RETURN_CODE=$? -if [ $RETURN_CODE -ne 0 ]; then - echo "" - exit $RETURN_CODE -fi - -# Move converted files into /safezone -/bin/mv /tmp/safe-output.pdf /safezone -/bin/mv /tmp/safe-output-compressed.pdf /safezone diff --git a/dangerzone/container.py b/dangerzone/container.py index fb87ac2..2e416cb 100644 --- a/dangerzone/container.py +++ b/dangerzone/container.py @@ -85,6 +85,7 @@ def convert(input_filename, output_filename, ocr_lang, stdout_callback): "-v", f"{pixel_dir}:/dangerzone", container_name, + "dangerzone.py", "document-to-pixels", ] ret = exec_container(args, stdout_callback) @@ -109,6 +110,7 @@ def convert(input_filename, output_filename, ocr_lang, stdout_callback): "-e", f"OCR_LANGUAGE={ocr_lang}", container_name, + "dangerzone.py", "pixels-to-pdf", ] ret = exec_container(args, stdout_callback)