From 915c515cd78d3dc8df2cf2328599ed0ff067a5ae Mon Sep 17 00:00:00 2001 From: "ryan.kuba" Date: Wed, 11 Oct 2023 19:34:10 -0700 Subject: [PATCH 1/3] detect if firefox is installed in the container and download the langpacks for it --- .../run | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run index 0fa1024..f02efb3 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run @@ -736,6 +736,21 @@ elif [[ "${LSIO_BASE}" == "arch" ]] && [[ ! -f /usr/share/fonts/noto-cjk/NotoSan echo "Generating Locale for ${LOCALE}" localedef -i ${LOCALE} -f UTF-8 ${LOCALE}.UTF-8 done + # Add Firefox Langpacks + if which firefox; then + FIREFOX_VERSION=$(curl -sI https://download.mozilla.org/?product=firefox-latest | awk -F '(releases/|/win32)' '/Location/ {print $2}') + RELEASE_URL="https://releases.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/win64/xpi/" + LANGS=$(curl -Ls ${RELEASE_URL} | awk -F '(xpi">|)' '/href.*xpi/ {print $2}' | tr '\n' ' ') + EXTENSION_DIR=/usr/lib/firefox-addons/distribution/extensions/ + mkdir -p ${EXTENSION_DIR} + for LANG in ${LANGS}; do + LANGCODE=$(echo ${LANG} | sed 's/\.xpi//g') + echo "Downloading ${LANG} Firefox Language pack" + curl -o \ + ${EXTENSION_DIR}langpack-${LANGCODE}@firefox.mozilla.org.xpi -Ls \ + ${RELEASE_URL}${LANG} + done + fi else echo "**** International Fonts/Locales installed skipping ****" fi From b98fdefc1482b3eebd572aab179484ebfd3682a5 Mon Sep 17 00:00:00 2001 From: "ryan.kuba" Date: Wed, 11 Oct 2023 19:50:12 -0700 Subject: [PATCH 2/3] move out of logic loop to run properly --- .../run | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run index f02efb3..f5d7eb8 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run @@ -736,21 +736,25 @@ elif [[ "${LSIO_BASE}" == "arch" ]] && [[ ! -f /usr/share/fonts/noto-cjk/NotoSan echo "Generating Locale for ${LOCALE}" localedef -i ${LOCALE} -f UTF-8 ${LOCALE}.UTF-8 done - # Add Firefox Langpacks - if which firefox; then - FIREFOX_VERSION=$(curl -sI https://download.mozilla.org/?product=firefox-latest | awk -F '(releases/|/win32)' '/Location/ {print $2}') - RELEASE_URL="https://releases.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/win64/xpi/" - LANGS=$(curl -Ls ${RELEASE_URL} | awk -F '(xpi">|)' '/href.*xpi/ {print $2}' | tr '\n' ' ') - EXTENSION_DIR=/usr/lib/firefox-addons/distribution/extensions/ - mkdir -p ${EXTENSION_DIR} - for LANG in ${LANGS}; do - LANGCODE=$(echo ${LANG} | sed 's/\.xpi//g') - echo "Downloading ${LANG} Firefox Language pack" - curl -o \ - ${EXTENSION_DIR}langpack-${LANGCODE}@firefox.mozilla.org.xpi -Ls \ - ${RELEASE_URL}${LANG} - done - fi else echo "**** International Fonts/Locales installed skipping ****" fi + +# Add Firefox Langpacks +if which firefox && [ ! -f /langlock ]; then + echo "Installing firefox langpacks" + FIREFOX_VERSION=$(curl -sI https://download.mozilla.org/?product=firefox-latest | awk -F '(releases/|/win32)' '/Location/ {print $2}') + RELEASE_URL="https://releases.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/win64/xpi/" + LANGS=$(curl -Ls ${RELEASE_URL} | awk -F '(xpi">|)' '/href.*xpi/ {print $2}' | tr '\n' ' ') + EXTENSION_DIR=/usr/lib/firefox-addons/distribution/extensions/ + mkdir -p ${EXTENSION_DIR} + for LANG in ${LANGS}; do + LANGCODE=$(echo ${LANG} | sed 's/\.xpi//g') + echo "Downloading ${LANG} Firefox Language pack" + curl -o \ + ${EXTENSION_DIR}langpack-${LANGCODE}@firefox.mozilla.org.xpi -Ls \ + ${RELEASE_URL}${LANG} + done +fi + +touch /langlock From 43ef05567687b1ef91667c83010189bfb773dfdc Mon Sep 17 00:00:00 2001 From: "ryan.kuba" Date: Wed, 11 Oct 2023 20:17:20 -0700 Subject: [PATCH 3/3] use different directory based on distro --- .../init-mod-universal-internationalization-install/run | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run index f5d7eb8..cfe33f0 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-universal-internationalization-install/run @@ -746,7 +746,11 @@ if which firefox && [ ! -f /langlock ]; then FIREFOX_VERSION=$(curl -sI https://download.mozilla.org/?product=firefox-latest | awk -F '(releases/|/win32)' '/Location/ {print $2}') RELEASE_URL="https://releases.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/win64/xpi/" LANGS=$(curl -Ls ${RELEASE_URL} | awk -F '(xpi">|)' '/href.*xpi/ {print $2}' | tr '\n' ' ') - EXTENSION_DIR=/usr/lib/firefox-addons/distribution/extensions/ + if [[ "${LSIO_BASE}" == "alpine" ]]; then + EXTENSION_DIR=/usr/lib/firefox/distribution/extensions/ + else + EXTENSION_DIR=/usr/lib/firefox-addons/distribution/extensions/ + fi mkdir -p ${EXTENSION_DIR} for LANG in ${LANGS}; do LANGCODE=$(echo ${LANG} | sed 's/\.xpi//g')