Browse Source

Adding support for poppler-utils

Dawid Makowski 1 year ago
parent
commit
ef5bc07fb3

+ 4 - 0
.env.example

@@ -123,6 +123,7 @@ WORKSPACE_INSTALL_NPM_BOWER=false
 WORKSPACE_INSTALL_NPM_VUE_CLI=true
 WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false
 WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI=false
+WORKSPACE_INSTALL_POPPLER_UTILS=false
 WORKSPACE_INSTALL_PHPREDIS=true
 WORKSPACE_INSTALL_WORKSPACE_SSH=false
 WORKSPACE_INSTALL_SUBVERSION=false
@@ -290,6 +291,7 @@ PHP_FPM_DEFAULT_LOCALE=POSIX
 PHP_FPM_XDEBUG_PORT=9000
 PHP_FPM_INSTALL_EVENT=false
 PHP_FPM_INSTALL_DNSUTILS=true
+PHP_FPM_INSTALL_POPPLER_UTILS=false
 
 PHP_FPM_PUID=1000
 PHP_FPM_PGID=1000
@@ -336,6 +338,7 @@ PHP_WORKER_INSTALL_XMLRPC=false
 PHP_WORKER_INSTALL_SSDB=false
 PHP_WORKER_INSTALL_EVENT=false
 PHP_WORKER_INSTALL_INTL=true
+PHP_WORKER_INSTALL_POPPLER_UTILS=false
 
 PHP_WORKER_PUID=1000
 PHP_WORKER_PGID=1000
@@ -377,6 +380,7 @@ LARAVEL_HORIZON_INSTALL_MONGO=false
 LARAVEL_HORIZON_INSTALL_CASSANDRA=false
 LARAVEL_HORIZON_INSTALL_FFMPEG=false
 LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM=false
+LARAVEL_HORIZON_INSTALL_POPPLER_UTILS=false
 LARAVEL_HORIZON_PGID=1000
 LARAVEL_HORIZON_PUID=1000
 

+ 35 - 0
DOCUMENTATION/content/documentation/index.md

@@ -1999,6 +1999,41 @@ To install npm-check-updates CLI [here](https://www.npmjs.com/package/npm-check-
 
 4 - Re-build the container `docker-compose build workspace`
 
+<br>
+<a name="Install-poppler-utils"></a>
+## Install poppler-utils
+
+Poppler is a PDF rendering library based on Xpdf PDF viewer.
+
+This package contains command line utilities (based on Poppler) for getting information of PDF documents, convert them to other formats, or manipulate them:
+* pdfdetach -- lists or extracts embedded files (attachments)
+* pdffonts -- font analyzer
+* pdfimages -- image extractor
+* pdfinfo -- document information
+* pdfseparate -- page extraction tool
+* pdfsig -- verifies digital signatures
+* pdftocairo -- PDF to PNG/JPEG/PDF/PS/EPS/SVG converter using Cairo
+* pdftohtml -- PDF to HTML converter
+* pdftoppm -- PDF to PPM/PNG/JPEG image converter
+* pdftops -- PDF to PostScript (PS) converter
+* pdftotext -- text extraction
+* pdfunite -- document merging tool
+
+To install `poppler-utils` [(more here)](https://packages.debian.org/sid/poppler-utils) in any of the `workspace/php-fpm/php-worker/laravel-horizon` container
+
+1 - Open the `.env` file
+
+2 - Search for the `WORKSPACE_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
+
+3 - Search for the `PHP_FPM_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
+
+4 - Search for the `PHP_WORKER_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
+
+5 - Search for the `LARAVEL_HORIZON_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true`
+
+6 - Re-build the container `docker-compose build workspace php-fpm php-worker laravel-horizon`
+
+
 
 
 <br>

+ 4 - 0
docker-compose.yml

@@ -177,6 +177,7 @@ services:
           - INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED}
           - INSTALL_EVENT=${WORKSPACE_INSTALL_EVENT}
           - INSTALL_DNSUTILS=${WORKSPACE_INSTALL_DNSUTILS}
+          - INSTALL_POPPLER_UTILS=${WORKSPACE_INSTALL_POPPLER_UTILS}
           - http_proxy
           - https_proxy
           - no_proxy
@@ -295,6 +296,7 @@ services:
           - PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME}
           - INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT}
           - INSTALL_DNSUTILS=${PHP_FPM_INSTALL_DNSUTILS}
+          - INSTALL_POPPLER_UTILS=${PHP_FPM_INSTALL_POPPLER_UTILS}
           - http_proxy
           - https_proxy
           - no_proxy
@@ -360,6 +362,7 @@ services:
           - INSTALL_SSDB=${PHP_WORKER_INSTALL_SSDB}
           - INSTALL_EVENT=${PHP_WORKER_INSTALL_EVENT}
           - INSTALL_INTL=${PHP_WORKER_INSTALL_INTL}
+          - INSTALL_POPPLER_UTILS=${PHP_WORKER_INSTALL_POPPLER_UTILS}
           - PUID=${PHP_WORKER_PUID}
           - PGID=${PHP_WORKER_PGID}
           - IMAGEMAGICK_VERSION=${PHP_WORKER_IMAGEMAGICK_VERSION}
@@ -396,6 +399,7 @@ services:
           - INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO}
           - INSTALL_FFMPEG=${LARAVEL_HORIZON_INSTALL_FFMPEG}
           - INSTALL_AUDIOWAVEFORM=${LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM}
+          - INSTALL_POPPLER_UTILS=${LARAVEL_HORIZON_INSTALL_POPPLER_UTILS}
           - PUID=${LARAVEL_HORIZON_PUID}
           - PGID=${LARAVEL_HORIZON_PGID}
           - IMAGEMAGICK_VERSION=${LARAVEL_HORIZON_IMAGEMAGICK_VERSION}

+ 10 - 0
laravel-horizon/Dockerfile

@@ -210,6 +210,16 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
    && make install \
 ;fi
 
+#####################################
+# poppler-utils:
+#####################################
+USER root
+
+ARG INSTALL_POPPLER_UTILS=false
+
+RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
+  apk add --update --no-cache poppler-utils \
+;fi
 
 # Install Cassandra drivers:
 ARG INSTALL_CASSANDRA=false

+ 10 - 0
php-fpm/Dockerfile

@@ -1036,6 +1036,16 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
    && make install \
 ;fi
 
+#####################################
+# poppler-utils:
+#####################################
+USER root
+
+ARG INSTALL_POPPLER_UTILS=false
+
+RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
+  apt-get -y install poppler-utils \
+;fi
 
 #####################################
 # wkhtmltopdf:

+ 11 - 0
php-worker/Dockerfile

@@ -263,6 +263,17 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
   && make install \
   ;fi
 
+#####################################
+# poppler-utils:
+#####################################
+USER root
+
+ARG INSTALL_POPPLER_UTILS=false
+
+RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
+  apk add --update --no-cache poppler-utils \
+;fi
+
 # Install AMQP:
 ARG INSTALL_AMQP=false
 

+ 11 - 0
workspace/Dockerfile

@@ -1481,6 +1481,17 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \
   && make install \
 ;fi
 
+#####################################
+# poppler-utils:
+#####################################
+USER root
+
+ARG INSTALL_POPPLER_UTILS=false
+
+RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \
+  apt-get -y install poppler-utils \
+;fi
+
 #####################################
 # wkhtmltopdf:
 #####################################