mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-09 17:31:03 +01:00
47 lines
2.0 KiB
Bash
Executable File
47 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/with-contenv bashio
|
|
# shellcheck shell=bash
|
|
set -e
|
|
|
|
# Runs only after initialization done
|
|
# shellcheck disable=SC2128
|
|
if [ ! -f /app/www/public/occ ]; then cp /etc/cont-init.d/"$(basename "${BASH_SOURCE}")" /scripts/ && exit 0; fi
|
|
|
|
# Only execute if installed
|
|
if [ -f /notinstalled ]; then exit 0; fi
|
|
|
|
# Install OCR if requested
|
|
if [ "$(bashio::config 'OCR')" = "true" ]; then
|
|
# Install package
|
|
if bashio::config.true 'OCR'; then
|
|
|
|
# Get Full Text Search app for nextcloud
|
|
echo "... installing apps : fulltextsearch"
|
|
occ app:install files_fulltextsearch_tesseract &>/dev/null || true
|
|
occ app:enable files_fulltextsearch_tesseract &>/dev/null || true
|
|
|
|
echo "Installing OCR"
|
|
apk add --quiet --no-cache ocrmypdf
|
|
apk add --quiet --no-cache tesseract-ocr || apk add --quiet --no-cache tesseract-ocr@community
|
|
# Install additional language if requested
|
|
if bashio::config.has_value 'OCRLANG'; then
|
|
OCRLANG=$(bashio::config 'OCRLANG')
|
|
for LANG in $(echo "$OCRLANG" | tr "," " "); do
|
|
if [ "$LANG" != "eng" ]; then
|
|
apk add --quiet --no-cache tesseract-ocr-data-"$LANG" || apk add --quiet --no-cache tesseract-ocr-data-"$LANG"@community
|
|
fi
|
|
bashio::log.info "OCR Language installed : $LANG" || bashio::log.fatal "Couldn't install OCR lang $LANG. Please check its format is conform"
|
|
# Downloading trainer data
|
|
cd /usr/share/tessdata || true
|
|
rm -r "$LANG".traineddata &>/dev/null || true
|
|
wget https://github.com/tesseract-ocr/tessdata/raw/main/"$LANG".traineddata &>/dev/null
|
|
done
|
|
fi
|
|
elif [ "$(bashio::config 'OCR')" = "false" ]; then
|
|
bashio::log.info 'Removing OCR'
|
|
# Delete package
|
|
apk del tesseract-ocr.* &>/dev/null || true
|
|
# Remove app
|
|
occ app:disable files_fulltextsearch_tesseract &>/dev/null || true
|
|
fi
|
|
fi
|