summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Grapentin <andreas@grapentin.org>2020-11-04 22:12:19 +0100
committerAndreas Grapentin <andreas@grapentin.org>2020-11-04 22:12:19 +0100
commit4e171299a3b8d37397efce647e071c4d0ef46fd4 (patch)
tree634fd31d60b9cf94c7bf3d22f137013af2b9896f
parente26526b8a866235248aa3e3c1205e4ad4d648b62 (diff)
libre/icecat-l10n: updated language update script and split language lists from PKGBUILD
-rw-r--r--libre/icecat-l10n/PKGBUILD239
-rw-r--r--libre/icecat-l10n/check.sh18
-rw-r--r--libre/icecat-l10n/languages.armv7h100
-rw-r--r--libre/icecat-l10n/languages.i686100
-rw-r--r--libre/icecat-l10n/languages.x86_64100
-rw-r--r--libre/icecat-l10n/sha512sums.armv7h100
-rw-r--r--libre/icecat-l10n/sha512sums.i686100
-rw-r--r--libre/icecat-l10n/sha512sums.x86_64100
-rw-r--r--libre/icecat-l10n/updatelanglist.sh82
9 files changed, 715 insertions, 224 deletions
diff --git a/libre/icecat-l10n/PKGBUILD b/libre/icecat-l10n/PKGBUILD
index 84aa862bc..0bb951fe3 100644
--- a/libre/icecat-l10n/PKGBUILD
+++ b/libre/icecat-l10n/PKGBUILD
@@ -7,126 +7,48 @@
_pkgbase=icecat
pkgbase=${_pkgbase}-l10n
-pkgver=60.7.0_gnu1
-pkgrel=1
+_pkgver_armv7h=60.7.0_gnu1
+_pkgver_i686=60.7.0_gnu1
+_pkgver_x86_64=60.7.0_gnu1
+_pkgrel_armv7h=1
+_pkgrel_i686=1
+_pkgrel_x86_64=1
+eval "pkgver=\$_pkgver_${CARCH}" # this is actually an 'any' package
+eval "pkgrel=\$_pkgrel_${CARCH}" # but our different arches do not always roll at the same speed
pkgdesc="Language pack for GNU IceCat."
-arch=('any')
+arch=('armv7h' 'i686' 'x86_64')
url="http://www.gnu.org/software/gnuzilla/"
license=('MPL' 'GPL')
depends=("$_pkgbase=$pkgver")
makedepends=('unzip' 'zip' 'mozilla-searchplugins')
-_languages=(
- 'ach "Acholi"'
- 'af "Afrikaans"'
- 'an "Aragonese"'
- 'ar "Arabic"'
- 'as "Assamese"'
- 'ast "Asturian"'
- 'az "Azerbaijani"'
- 'be "Belarusian"'
- 'bg "Bulgarian"'
- 'bn-BD "Bengali (Bangladesh)"'
- 'bn-IN "Bengali (India)"'
- 'br "Breton"'
- 'bs "Bosnian"'
- 'ca "Catalan"'
- 'cak "Maya Kaqchikel"'
- 'cs "Czech"'
- 'cy "Welsh"'
- 'da "Danish"'
- 'de "German"'
- 'dsb "Lower Sorbian"'
- 'el "Greek"'
- 'en-GB "English (British)"'
- 'en-US "English (US)"'
- 'en-ZA "English (South African)"'
- 'eo "Esperanto"'
- 'es-AR "Spanish (Argentina)"'
- 'es-CL "Spanish (Chile)"'
- 'es-ES "Spanish (Spain)"'
- 'es-MX "Spanish (Mexico)"'
- 'et "Estonian"'
- 'eu "Basque"'
- 'fa "Persian"'
- 'ff "Fulah"'
- 'fi "Finnish"'
- 'fr "French"'
- 'fy-NL "Frisian"'
- 'ga-IE "Irish"'
- 'gd "Gaelic (Scotland)"'
- 'gl "Galician"'
- 'gn "Guarani"'
- 'gu-IN "Gujarati (India)"'
- 'he "Hebrew"'
- 'hi-IN "Hindi (India)"'
- 'hr "Croatian"'
- 'hsb "Upper Sorbian"'
- 'hu "Hungarian"'
- 'hy-AM "Armenian"'
- 'ia "Interlingua"'
- 'id "Indonesian"'
- 'is "Icelandic"'
- 'it "Italian"'
- 'ja "Japanese"'
- 'ka "Georgian"'
- 'kab "Kabyle"'
- 'kk "Kazakh"'
- 'km "Khmer"'
- 'kn "Kannada"'
- 'ko "Korean"'
- 'lij "Ligurian"'
- 'lt "Lithuanian"'
- 'lv "Latvian"'
- 'mai "Maithili"'
- 'mk "Macedonian"'
- 'ml "Malayalam"'
- 'mr "Marathi"'
- 'ms "Malay"'
- 'my "Burmese"'
- 'nb-NO "Norwegian (Bokmål)"'
- 'ne-NP "Nepali (Nepal)"'
- 'nl "Dutch"'
- 'nn-NO "Norwegian (Nynorsk)"'
- 'oc "Occitan"'
- 'or "Oriya"'
- 'pa-IN "Punjabi (India)"'
- 'pl "Polish"'
- 'pt-BR "Portuguese (Brazilian)"'
- 'pt-PT "Portuguese (Portugal)"'
- 'rm "Romansh"'
- 'ro "Romanian"'
- 'ru "Russian"'
- 'si "Sinhala"'
- 'sk "Slovak"'
- 'sl "Slovenian"'
- 'son "Songhai"'
- 'sq "Albanian"'
- 'sr "Serbian"'
- 'sv-SE "Swedish"'
- 'ta "Tamil"'
- 'te "Telugu"'
- 'th "Thai"'
- 'tr "Turkish"'
- 'uk "Ukrainian"'
- 'ur "Urdu"'
- 'uz "Uzbek"'
- 'vi "Vietnamese"'
- 'xh "Xhosa"'
- 'zh-CN "Chinese (Simplified)"'
- 'zh-TW "Chinese (Traditional)"'
-)
+_src_url=http://ftp.gnu.org/gnu/gnuzilla/${pkgver%_*}/langpacks
pkgname=()
-source=('region.properties')
-_url=http://ftp.gnu.org/gnu/gnuzilla/${pkgver%_*}/langpacks
+source=('region.properties'
+ languages.${CARCH}
+ sha512sums.${CARCH})
+_languages_x86_64_shasum="215312aa1489de846eefd92881b09ded48da5b3340168f65b568d191d500c646023553d699ba1f4c5ec0d59b321facfebed14a910c0bcb385f4b729ab1a3fb2a"
+_languages_i686_shasum="215312aa1489de846eefd92881b09ded48da5b3340168f65b568d191d500c646023553d699ba1f4c5ec0d59b321facfebed14a910c0bcb385f4b729ab1a3fb2a"
+_languages_armv7h_shasum="215312aa1489de846eefd92881b09ded48da5b3340168f65b568d191d500c646023553d699ba1f4c5ec0d59b321facfebed14a910c0bcb385f4b729ab1a3fb2a"
+_languages_list_shasum="_languages_${CARCH}_shasum"
+
+_sha512sums_x86_64_shasum="f37875c1e34337da36626de8e90921828acd347db72d6de4ccfbd000ae075ae038f1084c261a7328cd44c4aa02fd7fb68d32710c3a7b7f04ada374ad15e58492"
+_sha512sums_i686_shasum="f37875c1e34337da36626de8e90921828acd347db72d6de4ccfbd000ae075ae038f1084c261a7328cd44c4aa02fd7fb68d32710c3a7b7f04ada374ad15e58492"
+_sha512sums_armv7h_shasum="f37875c1e34337da36626de8e90921828acd347db72d6de4ccfbd000ae075ae038f1084c261a7328cd44c4aa02fd7fb68d32710c3a7b7f04ada374ad15e58492"
+_sha512sums_list_shasum="_sha512sums_${CARCH}_shasum"
+
+# parse locales and package names from language list files
+source languages.${CARCH} # sets $_languages
+source sha512sums.${CARCH} # sets $_sha512sums
for _lang in "${_languages[@]}"; do
_locale=${_lang%% *}
_pkgname=$pkgbase-${_locale,,}
pkgname+=($_pkgname)
- source+=("$_url/$_pkgbase-${pkgver%_*}.$_locale.langpack.xpi")
+ source+=("$_src_url/$_pkgbase-${pkgver%_*}.$_locale.langpack.xpi")
+
eval "package_$_pkgname() {
_package $_lang
}"
@@ -136,7 +58,7 @@ done
noextract=(${source[@]%%::*})
_package() {
- pkgdesc="$2 language pack for GNU IceCat."
+ pkgdesc="$2 for GNU IceCat."
replaces=(icecat-i18n-${1,,})
conflicts=(icecat-i18n-${1,,})
@@ -157,102 +79,7 @@ _package() {
"$pkgdir/usr/lib/icecat/browser/extensions/langpack-$1@icecat.mozilla.org.xpi"
}
-sha256sums=('fc301f3ce1f7d7cd995c7920af18f638e7dd40ade90318567c2bdb922d9cd11a'
- '9a9b6d35fb0a638ea219b8192527a66f8cf66848cd5f8b1331f157178f129be9'
- '48c11a9bd62752db6f68b524fa4d644b43874701c263c2d36420f96f5764f000'
- '3af73f794928c97587a4c252c46a4e349d5a7282eb6f3dd438ee95fae5826c36'
- '74fa9bc3283fb0297032f9ae218338e9ad711052e6e47d8f6427b6b336594132'
- '76949ae7368128082be3d2d1563df86ea73fce9c178f15a6fb3c043ec1d1e010'
- 'cca3ce580abfe10ca609c425967f332321ee240b61b4c8743f86a17d6cfcff46'
- '021d135144081d9aa600eaf0fdd95e2809a86d55e131c4152da58815a8628de9'
- '11ef253ae441364993c3ebb9a5dd2f549dc781fb1150bb8e3a26f51239497e65'
- '0f24b8393232d4bce775ef5a128289f65812288cfad275797bbd388bccd9080e'
- '3083645bc62f03496e3ff0c0ba6bc519dcd1f9484382f0bc2c9e5298ed9ff039'
- '9b2f3167646827b5b83d012c5416ee20ac725c512699cdefe3659189da492d6d'
- '0286b4bce1effebd551b1ce59e796f9a19915b0a6af4866099633d19869bdf0a'
- '3dde627220a8662a04d0fe221666d3059c7fce7c460c47632a37d13d17faf406'
- '31eb8053dfeb4c6a7d4ba58d982636b6fe3285923d6593e6064f6d598ba614a5'
- 'a10a36b50ebf8b4599e92bfb333c5f69dca59af2aa456475f3446b22e61a6fdb'
- '2291bbb9e60cac937d579b4018382f2a441e84e3ae4821cd676360285de6b350'
- '5d71dce5a6f470c2bcac2b731d76935173f4807ced3d429cdc42fc6fe88a80b8'
- 'e596290831efd70ad0b72b527b30eee4fdc63c3fe286a6dbff39cd80efd184e4'
- 'ea9e6584872df5355e53b6f5e81092cd7a96993596613a950db190137271bcfa'
- 'c1230554c01c11fc17456b6cff617ffa822606b2805b942972e9c80a00107d28'
- '898489924471a52c312cd484a79dc6cb1e2c5b502de9259e1a8b1275e846b24c'
- 'e8aeec5e9582428261165097b3cddfcbfc51dbbb5966dd9c863ef490fc9a3022'
- 'a18d88e58c5d144755753418d2d87bf7733519b5bd8c95c553c1acb3c5ba11ef'
- '635e4d3ccebc91923d63512fd4caab42ef8064662f982e2ec0acc123ddbe5dd0'
- '3fe7bf905151d9a1520821aaca563bed3d7efbefbaaa5ab0f90d3d6d03dfdbc2'
- 'ffb7f876877e2a9fe9e16e4165c707b44f7eab34200f912221d7a3b5174e1e4b'
- '4506b415cb6add080b6ebbdeeff45ce45438a9b9c43c1b5896bc2200ca9a2c48'
- '80e6962f8c24a618ef6920c2e9435bf94e2c66dc26c169137336f89c27e24fb3'
- '42dc6497feaee68bc35ed6bc96dda8a8c0dc2203e7af7f76bac73c6ab789d57b'
- 'd672474bd87025bd231127adc420fedeb861515e9c6c91b61de3d0020abef571'
- 'b7ec6535b3c1a3d7311f337a3ece5bf12fca98b7706e0eeb7e639f3fdff0917d'
- '0cc87817c615b4287063fa4cce6aa2fb7f1d8a6f15260484badb4330cd647af9'
- '899eff671b85d9adf3a6e6175dcee8a383d465555a592d0d921df0004040fd50'
- '3ef016345ae59110a5728f7332b6fc74844e2541a8542a1128a9af1310db41e7'
- '27f69bef39bcb1a1e52d7b16384dca2be0ce1b98fb3a105454bacf774bff21b7'
- 'e54f304d2ea5f5a3833dbec222bd463acbaea29a1f56a92fede342893c99da02'
- 'd097af5065b52b9d8a90e73a0148a825a49c7b6523c67a222b28362616219ca7'
- '0dc2808a9a87f2b0b583b8f174f9ba3ba3708d869b99f446158d8abbabd923c0'
- '91bf7e454626d118ff54df707f9b7ad79535d1a6b041371200f04ecdde1218b3'
- '9ef3b79bb9b8b7d1c6faaa8b4a6437c7cf828f7993b85c95e4b7732b95498dd8'
- 'a89738d6670ef75dc32e09e3f65295ad0a72523f0ce8ca30e798029d06cb2341'
- 'ce00fa857b3f2ca17003a589c03e6308cad52842e0f7b83f1a072e2843f5d525'
- '6783832dcf2991091d3af5579a353e3b9d583d2cdf927a72f6019e7b1d488b85'
- '885a9b2e7bd4ceaca992d954ed1c2bde6ab216eb89551143dd07944c819ee5f7'
- '48bbc1d84b40f3d0abe65ba9e102d822fc2908d213c0cbb3fd3f6aec17da82e4'
- '3d8563fb06d85c1b4bc1cd12e5f32d0e2109db727d0b310e9d8931de64242ad3'
- '72a24a87ba3f6be9b1bf477ab4ff9a080c4db1eaa46986db79b4cd3569351501'
- '050bb58fc5257d1298f2a86280ec2bda06ae7038aabe4ebfa887b968c44b4618'
- '4b9eb3fb8ef8a217ace829d30342f06ce5cd1ae3657e8e8b3515083f140af1ef'
- '76155e496ed81de0832a2df80458a806c4ec7ad9940bc591f18ad37570871ef5'
- '06564522121b92d9494c24b8613e4277745682295ba3a28bac78b44b390a472f'
- '086ff730ed094ed7b0c3f42ea229813e36b6ded6a600d45f4bc01c2a31e9f7a8'
- '41d08badfefb329f6c209714ef7dc0ed7105c9093ac0d1a65e514d02c67bf4e4'
- '81ded864c7840971a7a54d045f10d4b58d7a80426f26c3d7f8670cc70b349614'
- '74b56f680e0ff0c36b58e666bf4ed2357d0803cdd7e70f867e85a6da9984ab5b'
- 'e3658dabb0501518fb7d3bb038bc6200a52d4903642b8197eb9dea473cf14041'
- 'fc9334885e944d4e5d51ff3dee0a9ffc7b4f06298667836e6976d7bff5fbbc74'
- '095b0e88c2cabe83e0b0aad50d86fa73e2b69748a5126dd8c2dd0272fe27a309'
- 'b0aabde2e7ccbe3e6d5d9504332b06ddf9585e7f1ab002cbf3ac4b4521aafd45'
- '315472dcacf3899fe7bb416e2ee1ad91e03b2276e4d46cf257fc685def4fb174'
- '67a13680ed904c137418c69eb9158ac2f0bafa1a6c8df27d015368ec6a5d171e'
- '2dc2a6b3185fb7502dd4e18ff41fb4dc347d4d841d30d0f25e780d3e0d514a2c'
- '18d438cdee2ae9e6e738b72cfc99df110056f1f96bbf4a7ab6e94e4f128f7810'
- 'b19177c5d188450447218590fdd8f51beaec029bb451ddb121587dbf55845ae2'
- '75344634f06c5162dc22b286b0757c92db1d939a4019f9361e689b416807fc47'
- 'b1944fb9e5f2ac82bdd49ec91dfc0a3d32123999372698f811dd4c1355c9e8ad'
- '83e8f60649e05aaec28087bf8ad4dacfbd2c988edb198bed5fe860a99885663f'
- 'a05990781b7dc8d24e0d501faa32522210a7c78f92ee1fbed8ec1e791c5b91f2'
- '6d88e79c7a2b5b2698cc2b320cb22d3343bf3519cf548109aa1f4cfb01eaf187'
- '2ffddf68c4e9b3f5bcf5ff0f55dce634dd677f300af9b8895d49326e2cf9f4e1'
- '6e79034d279f8dd6b968548814bc26479d0929a58904e4105cb095b2b07565ec'
- '354e7cb2cbeea065e9ec7b2fd9183f3d235d78200ded728c2a8dc3d5ac19d18b'
- '0518b81c66ccf151fd33ac7ec491a75050ed87f7e144859c25536ffe677201d6'
- 'f40d211bbf9f53100135f7d5d911c1c43e18868c50309b869e9bc5124aed60d5'
- 'eef9a32902da5f5edd1bfd5d68627f73586351dae599644326ca72c5346f5546'
- 'f1a4623dabcb691bd71a720af799e89fd14e694eacb5aac3f4e8b5b8b455ab3d'
- 'f9003250d5d68beea2d9cca93d0798f1bba8c783b07a7347157730ae9fe0fdcf'
- '04c46ffed03bbc8f2713d502a91b95d1ec08649de3b0d5b0dbc7921e4fc01b2d'
- 'f68967761e8a23ff1f95dc203d3b44f47e782965aefc8a4f200226cca82e3cd4'
- '36500af53b77c03a633df02cef3a7cadcfd8f4deea6963c9cb26ac42a3eef462'
- '331bf7b540162dae755cae6d59ae77aaabffa5ed50b263e776238fba538c1d78'
- 'eee573b6047a531c5cff11a0989ced3e96f3705717e6ae31b7f3ed0319c7387f'
- 'ee42fbd12c901edaefddf639157bf70d67d986a75e5cf4b8457c2052c70947a3'
- 'c2d73fa042603ddf2a26c771ee5220d2361d6569728a15a1643cbb875639101f'
- '1a8a32b1939afd6d2faa8440cdf01e8906595c953d088bbb5bfd54c7f5a3a17b'
- 'ac119f500802cba7c8e32368c294798df629685bf2b4088e607dbd080c075027'
- '6a6a0e19c11332547a809babb27ce22d5ac936e80970203aecc2b0ea85922bc1'
- 'f46e212b79012e403ea69440f54ae73dc01e8c8faddd79c26d946ca310598fa2'
- '46c14eaae7a7dfe168504cbcc316a1b9390e516a50b5251d6b03632ac4f7c74a'
- '33da1b92b437cd2943697ef07170c191b67fbd110a42855807f91fd4126329d2'
- '7c7b61f59f5def94e24de32492cccccea36844fa0a6d8646d3b38ce4f4b52073'
- '2f1e32bfdd23de0b725468361ed254c4ed043e120d2f3210f9aa10f29a943982'
- '94302bcff03bc4d45714160488fc1ad112d414987da8177aae2abd3d9f48260a'
- '9c303e87c3719d9ec5f10117cd690b777918253a1800c2dde3d4bf23c6167a1b'
- '05cdbd4a829a74593ef3f0d32f23e285f0dd393ec29b53a1f29e4ce7fe830b99'
- '9c9a2e33e0141b9a5d393da747ac45dbf841d916efee880324e7574ffb41661b'
- '446c97693782c6ddbdf3dbab9b91ce8faeee4770f1beb1780fa6cdf31a34b67d'
- '268dbe53ea6bb1b577cc064e245d2bc39d48220bfc3a22c528da95908f13995d')
+sha512sums=('5b6b97b690e91deee15409f1ef72a94eb0c764d86988b0289d47e3910cc823a91ba7f62f5eceaf680fd015eab183fbf5e3f61a561233d338e6edce8ba3537fbb'
+ "${!_languages_list_shasum}"
+ "${!_sha512sums_list_shasum}"
+ "${_sha512sums[@]}")
diff --git a/libre/icecat-l10n/check.sh b/libre/icecat-l10n/check.sh
deleted file mode 100644
index 99f792c3d..000000000
--- a/libre/icecat-l10n/check.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/bash
-# helper script to check the local language list against upstream
-
-# extract pkgbase from pkgbuild
-pkgbase="$(bash -c "source PKGBUILD && echo \"\$pkgbase\"")"
-
-# extract language list from pkgbuild
-bash -c "source PKGBUILD && printf '%s\n' \"\${_languages[@]}\" | cut -d ' ' -f1 | sort" \
- > $pkgbase-l10n.local
-
-# load language list from upstream
-url="$(bash -c "source PKGBUILD && echo \"\$_url\"")/"
-curl -sL $url | \
- grep '\.xpi"' | cut -d'"' -f8 | rev | cut -d'/' -f1 | cut -d'.' -f3 | rev | sort \
- > $pkgbase-l10n.remote
-
-diff -rupN $pkgbase-l10n.local $pkgbase-l10n.remote
-rm -f $pkgbase-l10n.{local,remote}
diff --git a/libre/icecat-l10n/languages.armv7h b/libre/icecat-l10n/languages.armv7h
new file mode 100644
index 000000000..af3d394fd
--- /dev/null
+++ b/libre/icecat-l10n/languages.armv7h
@@ -0,0 +1,100 @@
+_languages=(
+ 'ach "Acholi (UG) Language Pack"'
+ 'af "Afrikaans Language Pack"'
+ 'an "Aragonés Language Pack"'
+ 'ar "العربية Language Pack"'
+ 'as "Assamese (IN) Language Pack"'
+ 'ast "Asturianu Language Pack"'
+ 'az "Azərbaycanca (AZ) Language Pack"'
+ 'be "Беларуская Language Pack"'
+ 'bg "Български Language Pack"'
+ 'bn-BD "Bengali (Bangladesh) Language Pack"'
+ 'bn-IN "Bengali (India) Language Pack"'
+ 'br "Breton Language Pack"'
+ 'bs "Bosanski Language Pack"'
+ 'ca "Català Language Pack"'
+ 'cak "Kaqchikel (Guatemala) Language Pack"'
+ 'cs "Czech (CZ) Language Pack"'
+ 'cy "Cymraeg Language Pack"'
+ 'da "Dansk (da) Language Pack"'
+ 'de "Deutsch (DE) Language Pack"'
+ 'dsb "Dolnoserbšćina Language Pack"'
+ 'el "Ελληνικά Language Pack"'
+ 'en-GB "English (GB) Language Pack"'
+ 'en-US "English (US) Language Pack"'
+ 'en-ZA "English (South Africa) Language Pack"'
+ 'eo "Esperanto Language Pack"'
+ 'es-AR "Español (AR) Language Pack"'
+ 'es-CL "Español (Chile) Language Pack"'
+ 'es-ES "Español (España) Language Pack"'
+ 'es-MX "Español (México) Language Pack"'
+ 'et "Estonian Language Pack"'
+ 'eu "Basque Language Pack"'
+ 'fa "فارسی (ایران) Language Pack"'
+ 'ff "Pulaar Fulfulde Language Pack"'
+ 'fi "Finnish Language Pack"'
+ 'fr "Français Language Pack"'
+ 'fy-NL "Frysk (fy) Language Pack"'
+ 'ga-IE "Béarla (SAM) Language Pack"'
+ 'gd "Gàidhlig Language Pack"'
+ 'gl "Galego (España) Language Pack"'
+ 'gn "Guarani (Paraguay) Language Pack"'
+ 'gu-IN "Gujarati (IN) Language Pack"'
+ 'he "Hebrew (IL) Language Pack"'
+ 'hi-IN "Hindi Language Pack"'
+ 'hr "Hrvatski (HR) Language Pack"'
+ 'hsb "Hornjoserbšćina Language Pack"'
+ 'hu "Magyar (HU) Language Pack"'
+ 'hy-AM "Armenian (AM) Language Pack"'
+ 'ia "Interlingua Language Pack"'
+ 'id "Bahasa Indonesia (ID) Language Pack"'
+ 'is "Icelandic (IS) Language Pack"'
+ 'it "Italiano (IT) Language Pack"'
+ 'ja "Japanese Language Pack"'
+ 'ka "Georgian (ქართული) Language Pack"'
+ 'kab "Taqbaylit Language Pack"'
+ 'kk "Kazakh (KZ) Language Pack"'
+ 'km "ខ្មែរ Language Pack"'
+ 'kn "ಕನ್ನಡ Language Pack"'
+ 'ko "Korean (KR) Language Pack"'
+ 'lij "Ligure (Zeneize) Language Pack"'
+ 'lt "Lietuvių Language Pack"'
+ 'lv "Latviešu (LV) Language Pack"'
+ 'mai "Maithili Language Pack"'
+ 'mk "Македонски Language Pack"'
+ 'ml "Malayalam (IN) Language Pack"'
+ 'mr "Marathi Language Pack"'
+ 'ms "Bahasa Melayu (ms) Language Pack"'
+ 'my "Burmese Language Pack"'
+ 'nb-NO "Norsk bokmål (NO) Language Pack"'
+ 'ne-NP "नेपाली Language Pack"'
+ 'nl "Nederlands (NL) Language Pack"'
+ 'nn-NO "Norsk nynorsk (NO) Language Pack"'
+ 'oc "Occitan (lengadocian) Language Pack"'
+ 'or "Odia Language Pack"'
+ 'pa-IN "Punjabi (Gurmukhi) Language Pack"'
+ 'pl "Polski Language Pack"'
+ 'pt-BR "Português (pt-BR) Language Pack"'
+ 'pt-PT "Português (Europeu) Language Pack"'
+ 'rm "Rumantsch Language Pack"'
+ 'ro "Română (România) Language Pack"'
+ 'ru "Russian (RU) Language Pack"'
+ 'si "Sinhala (si-LK) Language Pack"'
+ 'sk "Slovak (SK) Language Pack"'
+ 'sl "Slovenski jezik Language Pack"'
+ 'son "Soŋay Language Pack"'
+ 'sq "Shqip Language Pack"'
+ 'sr "српски (sr) Language Pack"'
+ 'sv-SE "Svenska (SE) Language Pack"'
+ 'ta "ஆங்கிலம் (யூஎஸ்) Language Pack"'
+ 'te "తెలుగు (IN) Language Pack"'
+ 'th "ไทย Language Pack"'
+ 'tr "Türkçe (TR) Language Pack"'
+ 'uk "Ukrainian (UA) Language Pack"'
+ 'ur "اردو (پاکستان) Language Pack"'
+ 'uz "Uzbek Language Pack"'
+ 'vi "Tiếng Việt Language Pack"'
+ 'xh "IsiXhosa Language Pack"'
+ 'zh-CN "Chinese Simplified (zh-CN) Language Pack"'
+ 'zh-TW "Traditional Chinese (zh-TW) Language Pack"'
+)
diff --git a/libre/icecat-l10n/languages.i686 b/libre/icecat-l10n/languages.i686
new file mode 100644
index 000000000..af3d394fd
--- /dev/null
+++ b/libre/icecat-l10n/languages.i686
@@ -0,0 +1,100 @@
+_languages=(
+ 'ach "Acholi (UG) Language Pack"'
+ 'af "Afrikaans Language Pack"'
+ 'an "Aragonés Language Pack"'
+ 'ar "العربية Language Pack"'
+ 'as "Assamese (IN) Language Pack"'
+ 'ast "Asturianu Language Pack"'
+ 'az "Azərbaycanca (AZ) Language Pack"'
+ 'be "Беларуская Language Pack"'
+ 'bg "Български Language Pack"'
+ 'bn-BD "Bengali (Bangladesh) Language Pack"'
+ 'bn-IN "Bengali (India) Language Pack"'
+ 'br "Breton Language Pack"'
+ 'bs "Bosanski Language Pack"'
+ 'ca "Català Language Pack"'
+ 'cak "Kaqchikel (Guatemala) Language Pack"'
+ 'cs "Czech (CZ) Language Pack"'
+ 'cy "Cymraeg Language Pack"'
+ 'da "Dansk (da) Language Pack"'
+ 'de "Deutsch (DE) Language Pack"'
+ 'dsb "Dolnoserbšćina Language Pack"'
+ 'el "Ελληνικά Language Pack"'
+ 'en-GB "English (GB) Language Pack"'
+ 'en-US "English (US) Language Pack"'
+ 'en-ZA "English (South Africa) Language Pack"'
+ 'eo "Esperanto Language Pack"'
+ 'es-AR "Español (AR) Language Pack"'
+ 'es-CL "Español (Chile) Language Pack"'
+ 'es-ES "Español (España) Language Pack"'
+ 'es-MX "Español (México) Language Pack"'
+ 'et "Estonian Language Pack"'
+ 'eu "Basque Language Pack"'
+ 'fa "فارسی (ایران) Language Pack"'
+ 'ff "Pulaar Fulfulde Language Pack"'
+ 'fi "Finnish Language Pack"'
+ 'fr "Français Language Pack"'
+ 'fy-NL "Frysk (fy) Language Pack"'
+ 'ga-IE "Béarla (SAM) Language Pack"'
+ 'gd "Gàidhlig Language Pack"'
+ 'gl "Galego (España) Language Pack"'
+ 'gn "Guarani (Paraguay) Language Pack"'
+ 'gu-IN "Gujarati (IN) Language Pack"'
+ 'he "Hebrew (IL) Language Pack"'
+ 'hi-IN "Hindi Language Pack"'
+ 'hr "Hrvatski (HR) Language Pack"'
+ 'hsb "Hornjoserbšćina Language Pack"'
+ 'hu "Magyar (HU) Language Pack"'
+ 'hy-AM "Armenian (AM) Language Pack"'
+ 'ia "Interlingua Language Pack"'
+ 'id "Bahasa Indonesia (ID) Language Pack"'
+ 'is "Icelandic (IS) Language Pack"'
+ 'it "Italiano (IT) Language Pack"'
+ 'ja "Japanese Language Pack"'
+ 'ka "Georgian (ქართული) Language Pack"'
+ 'kab "Taqbaylit Language Pack"'
+ 'kk "Kazakh (KZ) Language Pack"'
+ 'km "ខ្មែរ Language Pack"'
+ 'kn "ಕನ್ನಡ Language Pack"'
+ 'ko "Korean (KR) Language Pack"'
+ 'lij "Ligure (Zeneize) Language Pack"'
+ 'lt "Lietuvių Language Pack"'
+ 'lv "Latviešu (LV) Language Pack"'
+ 'mai "Maithili Language Pack"'
+ 'mk "Македонски Language Pack"'
+ 'ml "Malayalam (IN) Language Pack"'
+ 'mr "Marathi Language Pack"'
+ 'ms "Bahasa Melayu (ms) Language Pack"'
+ 'my "Burmese Language Pack"'
+ 'nb-NO "Norsk bokmål (NO) Language Pack"'
+ 'ne-NP "नेपाली Language Pack"'
+ 'nl "Nederlands (NL) Language Pack"'
+ 'nn-NO "Norsk nynorsk (NO) Language Pack"'
+ 'oc "Occitan (lengadocian) Language Pack"'
+ 'or "Odia Language Pack"'
+ 'pa-IN "Punjabi (Gurmukhi) Language Pack"'
+ 'pl "Polski Language Pack"'
+ 'pt-BR "Português (pt-BR) Language Pack"'
+ 'pt-PT "Português (Europeu) Language Pack"'
+ 'rm "Rumantsch Language Pack"'
+ 'ro "Română (România) Language Pack"'
+ 'ru "Russian (RU) Language Pack"'
+ 'si "Sinhala (si-LK) Language Pack"'
+ 'sk "Slovak (SK) Language Pack"'
+ 'sl "Slovenski jezik Language Pack"'
+ 'son "Soŋay Language Pack"'
+ 'sq "Shqip Language Pack"'
+ 'sr "српски (sr) Language Pack"'
+ 'sv-SE "Svenska (SE) Language Pack"'
+ 'ta "ஆங்கிலம் (யூஎஸ்) Language Pack"'
+ 'te "తెలుగు (IN) Language Pack"'
+ 'th "ไทย Language Pack"'
+ 'tr "Türkçe (TR) Language Pack"'
+ 'uk "Ukrainian (UA) Language Pack"'
+ 'ur "اردو (پاکستان) Language Pack"'
+ 'uz "Uzbek Language Pack"'
+ 'vi "Tiếng Việt Language Pack"'
+ 'xh "IsiXhosa Language Pack"'
+ 'zh-CN "Chinese Simplified (zh-CN) Language Pack"'
+ 'zh-TW "Traditional Chinese (zh-TW) Language Pack"'
+)
diff --git a/libre/icecat-l10n/languages.x86_64 b/libre/icecat-l10n/languages.x86_64
new file mode 100644
index 000000000..af3d394fd
--- /dev/null
+++ b/libre/icecat-l10n/languages.x86_64
@@ -0,0 +1,100 @@
+_languages=(
+ 'ach "Acholi (UG) Language Pack"'
+ 'af "Afrikaans Language Pack"'
+ 'an "Aragonés Language Pack"'
+ 'ar "العربية Language Pack"'
+ 'as "Assamese (IN) Language Pack"'
+ 'ast "Asturianu Language Pack"'
+ 'az "Azərbaycanca (AZ) Language Pack"'
+ 'be "Беларуская Language Pack"'
+ 'bg "Български Language Pack"'
+ 'bn-BD "Bengali (Bangladesh) Language Pack"'
+ 'bn-IN "Bengali (India) Language Pack"'
+ 'br "Breton Language Pack"'
+ 'bs "Bosanski Language Pack"'
+ 'ca "Català Language Pack"'
+ 'cak "Kaqchikel (Guatemala) Language Pack"'
+ 'cs "Czech (CZ) Language Pack"'
+ 'cy "Cymraeg Language Pack"'
+ 'da "Dansk (da) Language Pack"'
+ 'de "Deutsch (DE) Language Pack"'
+ 'dsb "Dolnoserbšćina Language Pack"'
+ 'el "Ελληνικά Language Pack"'
+ 'en-GB "English (GB) Language Pack"'
+ 'en-US "English (US) Language Pack"'
+ 'en-ZA "English (South Africa) Language Pack"'
+ 'eo "Esperanto Language Pack"'
+ 'es-AR "Español (AR) Language Pack"'
+ 'es-CL "Español (Chile) Language Pack"'
+ 'es-ES "Español (España) Language Pack"'
+ 'es-MX "Español (México) Language Pack"'
+ 'et "Estonian Language Pack"'
+ 'eu "Basque Language Pack"'
+ 'fa "فارسی (ایران) Language Pack"'
+ 'ff "Pulaar Fulfulde Language Pack"'
+ 'fi "Finnish Language Pack"'
+ 'fr "Français Language Pack"'
+ 'fy-NL "Frysk (fy) Language Pack"'
+ 'ga-IE "Béarla (SAM) Language Pack"'
+ 'gd "Gàidhlig Language Pack"'
+ 'gl "Galego (España) Language Pack"'
+ 'gn "Guarani (Paraguay) Language Pack"'
+ 'gu-IN "Gujarati (IN) Language Pack"'
+ 'he "Hebrew (IL) Language Pack"'
+ 'hi-IN "Hindi Language Pack"'
+ 'hr "Hrvatski (HR) Language Pack"'
+ 'hsb "Hornjoserbšćina Language Pack"'
+ 'hu "Magyar (HU) Language Pack"'
+ 'hy-AM "Armenian (AM) Language Pack"'
+ 'ia "Interlingua Language Pack"'
+ 'id "Bahasa Indonesia (ID) Language Pack"'
+ 'is "Icelandic (IS) Language Pack"'
+ 'it "Italiano (IT) Language Pack"'
+ 'ja "Japanese Language Pack"'
+ 'ka "Georgian (ქართული) Language Pack"'
+ 'kab "Taqbaylit Language Pack"'
+ 'kk "Kazakh (KZ) Language Pack"'
+ 'km "ខ្មែរ Language Pack"'
+ 'kn "ಕನ್ನಡ Language Pack"'
+ 'ko "Korean (KR) Language Pack"'
+ 'lij "Ligure (Zeneize) Language Pack"'
+ 'lt "Lietuvių Language Pack"'
+ 'lv "Latviešu (LV) Language Pack"'
+ 'mai "Maithili Language Pack"'
+ 'mk "Македонски Language Pack"'
+ 'ml "Malayalam (IN) Language Pack"'
+ 'mr "Marathi Language Pack"'
+ 'ms "Bahasa Melayu (ms) Language Pack"'
+ 'my "Burmese Language Pack"'
+ 'nb-NO "Norsk bokmål (NO) Language Pack"'
+ 'ne-NP "नेपाली Language Pack"'
+ 'nl "Nederlands (NL) Language Pack"'
+ 'nn-NO "Norsk nynorsk (NO) Language Pack"'
+ 'oc "Occitan (lengadocian) Language Pack"'
+ 'or "Odia Language Pack"'
+ 'pa-IN "Punjabi (Gurmukhi) Language Pack"'
+ 'pl "Polski Language Pack"'
+ 'pt-BR "Português (pt-BR) Language Pack"'
+ 'pt-PT "Português (Europeu) Language Pack"'
+ 'rm "Rumantsch Language Pack"'
+ 'ro "Română (România) Language Pack"'
+ 'ru "Russian (RU) Language Pack"'
+ 'si "Sinhala (si-LK) Language Pack"'
+ 'sk "Slovak (SK) Language Pack"'
+ 'sl "Slovenski jezik Language Pack"'
+ 'son "Soŋay Language Pack"'
+ 'sq "Shqip Language Pack"'
+ 'sr "српски (sr) Language Pack"'
+ 'sv-SE "Svenska (SE) Language Pack"'
+ 'ta "ஆங்கிலம் (யூஎஸ்) Language Pack"'
+ 'te "తెలుగు (IN) Language Pack"'
+ 'th "ไทย Language Pack"'
+ 'tr "Türkçe (TR) Language Pack"'
+ 'uk "Ukrainian (UA) Language Pack"'
+ 'ur "اردو (پاکستان) Language Pack"'
+ 'uz "Uzbek Language Pack"'
+ 'vi "Tiếng Việt Language Pack"'
+ 'xh "IsiXhosa Language Pack"'
+ 'zh-CN "Chinese Simplified (zh-CN) Language Pack"'
+ 'zh-TW "Traditional Chinese (zh-TW) Language Pack"'
+)
diff --git a/libre/icecat-l10n/sha512sums.armv7h b/libre/icecat-l10n/sha512sums.armv7h
new file mode 100644
index 000000000..b4f767fb1
--- /dev/null
+++ b/libre/icecat-l10n/sha512sums.armv7h
@@ -0,0 +1,100 @@
+_sha512sums=(
+ 'cf451647a33df4e4efe7ce33dd53e31c43e705548d107b76ec58a50b64eb2b4e6694d351ab1c1eee2f306c9d3f84d29ecc5d6ec8acfa86ef1cc402c59fc27273'
+ '1ef1288882ffc73aeb99d7563afe5da95d2909b4105004045d56eeee6ada13590a18b129f96c8defc9ee3ef7b1075073126f27d36b67accd10091c2ecb4e272e'
+ '09174f10b3138abd1597514245ddab068c210cdda3aebbc865b4b0f74bb6eb8904b2af77e1649851cbd75fc55f571803e5d90d7a886dbcda8c1d55fff37c0641'
+ 'dc7f4fac7eed7c62a5b29b077ff86c469a204bf08988661965f369de019e68093ad086216c0c16f652b9384019475df4599f952c16c084bac50d26afdf0e5e3b'
+ '1c3b4d6e87813389fed3c4b508b3201e92780b4547059f5c90e1a8e973224eef99913bc1cbb07f991969bc4226787a06a5fa8d891519d741001a8ecc07dffdef'
+ '3b9ce6cf7a723cfc036ef355b56c53169509ea0ef63eb6516603ca45c7a6da49cef08701c4b9b86c802703a9e19530590afc3c67d6a310f288641f788f510e88'
+ '525d5c5b6fadfb1311d870ba3dcc6620bd9e951999cf30a507f1c95f6d1b432ad4efcacf9ce3d8ac72f3d5ae52dcef67b62f9a8e3ec6ccc2144c46c5efe97949'
+ 'f184935c92149c62876e7ee4af33525ce1e08328108934c46b726550fabcb99a379438560c4e1d40e704e19e6caf9bab83fc109b6b7caa52af32ea0f7a50802f'
+ 'ce0f61e48b71480acb98df95c1b04490d387d05014ed2162b2f123e22abdbebf71cb1ea49fa81887a6e8de43b66f3cb7b22eb8096026fd2104dd30ef8a09272c'
+ '5581ca95360dd92ca3c6df257186e7c3f1a2ba854d62bd74054812df9f14187595b59d75ee7ccc5d6146228cd45fa6a7005d185a646246671ab21e5cf627dcbf'
+ '92a31e55fa435bd53dfc4be3f9e880b08525bedcee7107c9bced1c880f382608969a6e9341e0da6608c74fc53a7370148cb2185439e1c737058e40d271f01b01'
+ 'bb551b463a7cffa27f6a94e092918056eeb0f3d3abca64bb386cfadc6a13846fc6c1f945eb5d05aaf301231a4b679934152f2e6ed8356e7fa8e6826b56b6df9e'
+ '7bfe334066e6100fcbe73a688cbd1bdfbdfed583e882fbb1a4dcba02d15de93bdfc81fe11445e55a1ff80d50f7c1a4b114c7157541c80e2dda6bedee6ab5b63f'
+ 'e5be27319ccf2387d8bfe0ed2b5bc5a1ccc6b80266d9ecb0efebde404be27ea638a219b7e95421e2477f964d88570aae4f392bcf8163ea236446fbe27e5be778'
+ 'c69f7abc7aa64f3764cb0cca384341ac16fa1c7edaa4fbeb6a6ca5950ef937cb6d646258546adf400bb1a1c334a260a3341f7505aba9f34bc723091511859d84'
+ '242d44d843532c1b5d95096d1c768be0069f14551630116f7485de951e6304b91ec5fce39704b413101280435bcdf3fd546fff7671a405c5624fc85b267c4f5c'
+ 'aaf844fa5a62a934c21c7df4749964258caddd28552cf77b63b4fd6ef4089d5ec3b98a8b342a9aac9cb55b62ee7df26492c12b5d5a919efc14a256c7d7b4c93c'
+ '58dcd8677b5d2707bc77d438e925b7750054dc4c04d0ad4ec9118582834f274fc01725a3434b5a5a8675e441814ae9dfe6c8d9f1dca58e17428ab9557369eae3'
+ 'edb9ca5a0e4e22cd4f23c6a1f38d575a4f7f4479f7af453c1c3bfd038f771d4b35df5313f8aa52055919bc3c2175dd41f51a0bce4cbd76650360a645e1409d13'
+ 'b1262210909e76c6e0ae2e999a92eeebd70e4b577602688399c7b27620c989779d2ecd824f11535307d275c7e40b40290b298a3c37dea6c69be09bf3ae1e571a'
+ 'e80a59e7df7b525667a4165559efee367258686a1b489dfa524536dac48434effcdc61efb2b9380b412d4e89d336d1bcc5d1ce855953263f6e8f345e9f9e967e'
+ '5554df130e8355f69009fb2b8e9fa09c89e3a1c14d2aa507765ab9bd4feac89342d498a5f92d35fc0b8dff8c322515690dd2ebf64647bb954de87b62309c0e2d'
+ '0c5dd77fb99e90ec65019f281f85211209fd3ee138117c849c1fe81ff2896744ad01f138fd03614f020b977a72a28fad84a733a7632fa5e1905f249260c1b1db'
+ 'aa1d755e1bf067919308be7a91d7b5bf203a142b9c0496b928d818d22bcb7eb3d3b7960cd470520c1814fd32ffde53c103c40022877bae4da67cb0971f24e90c'
+ '300d6ed9a20d4f1acdb72a5d44183903c0f632af9ad61fd1a8b59b4b9788d64019a6da6e30a8c67b0f3f0880f9af758a7d2c790025eb82626408fbdd2a4676ec'
+ '0de006083a1e3a1259da2937cf26f0ba8cf09d496bd94fdd7eaa827259ded0418805419a8ed00a15a84cbc0644962652f61bbdca45b5bc9ae55fbb13365cd04a'
+ 'e1afd4a99867e34d62ee23ce62e3cd11822a4e28c43b34d705bf70721c094a31c85f235e33420cb9448b514b7125aed9d4564449f7b1a9c7d65556d6db49b111'
+ '64be62fa75131fec5cc05f6f33fe9176ed2b9ab574cd012ac86cc12bd545adbdcdaa9bef7abd4b39d1772aae0138a6803152084f1f6f3cb738ea7a842edd5077'
+ '5cdd99ba35871a73fc1978c8795467f57abed66b7675976e01a8ebee714f6f08f097537cf29647e0fe59690dce3a7ac6a66a838bf76ac430b0867726b70e3f37'
+ '776296784e17b0bbdf0b6e1d960ed3e021dc1daec608b18c64e1270951b2cec8ec4e44c524567f25088d54733ce956473f22d2d8b2c15cb661b222c0fe3ff7f2'
+ 'e93e34cb19f58c99bc7691d76af2a6492768102e6d73f94ce5f58a1abe81b818b36b0757ff21dea221749f0364e93245e047c0e0474867a7f14802cbffb31016'
+ '35d1d8991ff4e6fa0d14c7a836b3abaf2e3a4e4830c2f25c4cac79523e75ccddc7ea875ad668af8b4bbee7e7a0274f708d67aa69fb82681c46f69b8b7965c845'
+ '38ae9f131a967cfbd5a235a99de909ccb129fac4ac79b3ca4b45585eb5218a92558511411550e99ee8a63e76c75ab0cca13a0ec0ffb7ee035cc27ffa50a26d4a'
+ '7df17971169e65c4cfddbb438077078bfb048d559c537bf88f169f0fabe8b811e3de9ee188ea6c7351ae216f478544495aaf4eb090b042355dc6c17759529139'
+ 'ef5bbff86ea1dc8aae03c642360952616c799d5b0a35a7599ef57192c6c4e8b9516b96aea09806cc4194498363cc5f676b19d7c4c73b290385446403766e45ee'
+ 'be6cebc215c6bc4773508b67f90e84c7ed438b1c0353b08db048789f2f15d952b1f6036f3f8ccdfedb0206e1f8c40b436122ce304c3bc8e7ee1f1ca96fecbc6c'
+ '15d39bb3687c660437e4b1962c63129267d79721eeaa4199d3c285d5754976f5f10c44f1e92635462a148e136e072354c0b648029827b229d2e673d69edd4ec2'
+ 'ef80d4ec3dada6034b8e59ed04ffb61419f6cf48ea44cad953c6265a08c41f471f359a82400f0d40960dd7d55c248efb0b7ff6750bddf3e0c3d6e45b665e7f6f'
+ '6f01cc0a65efc663158fb30c944d159727f04d49884466cb92a87dcc98fd04d07fb35309383ed2ce1e7a43ca4b6d2080cbe64265e68aa4be5f584f57120ffbd2'
+ 'd3e8fdd1e131ca3f5b0adb93528077e4f9e1f879193c17fb4324562ef7af6fc8aa33d04bc0dd91982bf5417f2d4e67069cbdf9ecb62b90929a980fc8c147d12a'
+ 'cd342741bb33bcb6521d3e9c84e7ad5f2d6121c2d58b670e38dd8f3da5193049d6af145017144829f36a4dc3b3c775f95558b7812f9365f51f51f1a89211e02d'
+ 'be7505ace9b4927093520c458e3e702689336fcfa3626a0e67278a48a097e76746188396f8ec321b9d86582a98cc7dd31e822645d63c77f623d351b8ea27f617'
+ '1e9b49d59afcb199def342b07d9218f2b205354204108b49576c1d2a46c4515b11e7beaf61159914d3fef49239a6d7e13c8170299c318c850ba4e3a5bf1b2d9a'
+ '8128ffa4d339faaf29d887da6312c26fa028799502bf026f7fc86a3d020a798a33303f3d5d8e8c5656d8119ea14d799d3f77478862e5f098f97c3299d74ca7d8'
+ '13e6b37ef40679bb3576d7d2c63153b33bdf81d4759ef83cc1d3e14d67ac094162f524cfab69172c679306fed00f920052721a66e118bae63624eac96f403351'
+ 'e1ecc8af687047739cf6778fde9ac5fe5386f20cf78e5965d51598742c0fbb9373fd171f318826ef03c852792a24d1b07d379c947413b152c7f0f1b44a932840'
+ '7c46f5383d5ba8afe1a5bd767dca13e38749391c34f0c029b1e0f1e322b0f10c83bd7d731b9125bf9bb1df6cc81dfefb9a7854b4ca63174e16d9d1000029762b'
+ 'dcf2a5f2cef7e0ba63a08f99ba469283645b939d80f286a10b0388a6efcdb7352f062a9ccc4db7ccf39762d8e6bb4eb8763dd34c8ce97f070b1636693c697ee5'
+ '131389b2736c442a74b5a814e93fd79a722cdc3c155e0f21cdbd979531078fa95e3151511b0fa9e10175faa35d8737794e89397cf6a31741af2c455ddadf7603'
+ 'a979c1bff9d1fd6b3ad6d66753b262e550dbe0b86fb8caa619703527f230748233aa6a76ba08d2401df9336a557a33e966c48af45df176cf7614c7b1cc6122ce'
+ '80d5481138de16e2b2ac46f2060e638cb941313b709ccc090c55c316fafa431c5cd35af1733b468cccad1e89462c069d84d7206a1781051810e4fb5d869b28eb'
+ '784396922b01fa442a78f281175ebd386cc21f6be430fd020802b21e266af7d3f256d521681a47b495623b71cc0073c284d2083245ea9388d81ec351c1ef26b0'
+ 'd74ceb0d942cced18a910d1b101f0e92d298cb6ec039f26e563a295fd826a64aba7d05da18047aba6b58c9b3442d98bf811adee4cd44535e8eacd69dfd73863a'
+ '1b9db5f7fec8a04a534b6b3e74384232eb75fbde8ef902a32655a75dd2ca2701b5da0f22f1b6f4d12c591ca24e2e667b7ef4583c645d115999d94a3e40ed9eda'
+ '470819fa53fbaf0f55559463b250a1c59d49bae90ce847a86607ab1c19d0ae7ee940c8a583512983340d110981e2a9287c1e63d94ece27301fc6e4d174442e53'
+ '0be48d47bd82b35da2677826c91f2007d07ac45075d43bf5f9fc229657d5a6171929f35929677ca3d6984d7394bf74bea687013eec6cb56dab108f2bb01d34c3'
+ '4cee7df4e2029d40405f9a93e99af57bd759490ef5057e9a31279f3d9e49a522ba153a15482e3c15fddaee07aea6dd06d7a86a67b848cc5936318c8a356b5681'
+ '51171bfd0bc83d91bdbf2bc96fa114b69ee61d5b166c8769a1d75fe10685dc61d20b8f255c1a406a27d4e52a458442f02b680a0cd92dd71da219e1388e5fc1b3'
+ '5658b8f480f3d8782925c9030424d393368e99a0a155a29c3b5ce8ba434aa8fd926e813826c4c2018d25974477875371663782111cab810e64a6ad7f82418fe6'
+ '21adbb2d7aeb4a5979ca128ae61834fcbdf09a8354cc84ab8d1721feeb5924ec45d679091e89e38031fc7a99821c889dfe0f963a090b7eb228ce323a9bdef8e7'
+ 'db1c584ee68b0f8a11461c258efb62ca1cf6e6ef3e702a7dab542b7300ce66bd896c4b9530ef78c02ccda8715affb35303f7a533a232d2f32d713ff2c481856f'
+ '30cfd90c3a7b4d38ea6ea59e3226041d724aadc917ac8f99440746c0f62677d5da6798f98fdf671832fa07e9906d1de37de3ba52ebf7a5122e1b98933f6a95a6'
+ '2eb0bd484e0f01cc68d200c3c60ef4b73f2d87211679fc3881a8490271a940b7231ff48aa1a885c18e562ad7925cb6bcbaff5e5693d366a35f2328e22a103541'
+ '0ff7a27d4b5ab5097190a8310dd850e54c71ce8dcde514ebf039a43134754320b1e2d9874bcdd2575c23e1f2436c21bd2abe090e677718bd6c43ee740c08f427'
+ 'f63ccdcdd99a3671e86ca47fb7e160481717fb03fc26aa07727beb538a0c4621ade96b54de698e91f29f8c62dccae141131a712a3d41423a41e203a68e8f77a3'
+ '25d0f3a78e6d2d1da127720e63332c83eddc76065ee65b362f12a7275f80f13170caf6033425ffd97a853f94d3d0accc07e2e830691bf65c651aeb7f7e8a3ffb'
+ 'a6274589f65947784ecf34a03b9ab5bbac7835a25bc32817ca7e2ccd512021b5f08887721ccdbc09c9b6f13653ed948d10c6af073f13c916cfb18d254c40713e'
+ 'a2eb20c236e407a852eba18eb6a74e1cf1c0001439a76245912ba7955bf0e92e1659d953000f8af41328af5e33b719fe3bd0c9ae2411959eb4c20cd4f64df50e'
+ '5e79a2c17af1e75a737f0b35d6b9c39ecff3bb583f16e75ffc0da50bd3fcf4eb7c3d699f0185718228328b06a816b4041aae3ca7439ecd98669c22d900991c8e'
+ 'ac4a9d8bb69d244fc7f1bff7374ef5b2d0c1ec98abcfabfd12896ab7694868e1380a19cc35069ea22802a0ae553b57f6fe63213548ab84ac70634221405b32e6'
+ '88c57dd25d138d9433954e0cd099f97f6b148888233eb5101fca39175497b96b379a0deb2805cd7216dafe87adb0fadb188b895816f1602472c5f6ebef08b4dd'
+ '29814932acc0886294da1dbc3e01ead180e625cfbe27f0e3713efe9d75160344d70e4a892945a124584211b43989c2a9cb4a1b6fe16eb72749a4daf062e15392'
+ 'cd68888614a89545d96171e2e97acc00b924ba97db49b29e3e736a2a4fb2531a40a99e18b78af09705a8096d1dc5f661ea41b1fc77fbd4fd15338b9006615df8'
+ '9d2f0223c4dbd8134410712fad3916637f12105ec5b4bfae6ca0713ae02b9ab87dfa78388bc5d1f930b46f7967986678b239e94bb657614b7da830c9febf03d9'
+ 'eeee3fc38dce50dbc43a8cb8e0978e299189585e71241972677158ac09b38a00156b60a2dab4042f8a5745a5c515e70c57794530a2546ec76a989247fc4b79e7'
+ 'fabbf1254b9e84fa666657576c59b0aef8d61e690e0ce913d5bc539ef8058e8a3ccf934ab9ccaee25c94cf55f2166106994b2f2173543ad10a3696c81cb79ddf'
+ 'fa354e74aaa6218fd61c8a91741d2d88b6561643db5d971c882c7d4d17c3c05bc0b124bd9441f007bdbcdc97ccd489e646d67423ec81f25d15826a75ec63e3a1'
+ 'df741a822ec1392db40c03be24566ca0b7716a0c808ce8a3b7589950c38526776a9709004358c290b358399946f3f2a82fda64db302dc0e630efce20a6dd4f75'
+ '7697f7a309f3a761144e3c6effb24bcc6799abb6bd8285d2fa0bab8b7ab7486000a90a986238bfe74781e06b79f119b3d154f51e7c1551cc15cbdaa9eda53d55'
+ '7b917690efe7a6f9e1c71455add7650c4a5d34360eebd223daec891151a4302dbb48a057651cbd13648f1a742bee39ebd198d61cacfaecef8499c78762c81da2'
+ '41b8a75f61fce1a5496452917598ee8395b6f9df8386832a070c4e2ee7495666f446fe9c9691f6588357f5d678f8fa8e6d3670463c2d78376d43870eed9f68f2'
+ 'bcf004b3017c971d52a957a589943889ff54c766c13a114642f25a584897fb72e60f4fe30d3c352c36a409fb0888f86f035de9cfcd0f90ba215e92a1b794089c'
+ 'bfcef7543a2f4f73b37481b53a655eef2a17a940ff45877d745a66f046866d5f1e68e9628c09febeaca58bea49dce6ce0649c17840e40e53401666a8bdac3091'
+ '4a6d3fd4c9115c0f9ba5773d68ab4e185cf826521e335a8060c3e93ca6f6155edcf45a0240fe463ed87dd1df8da6db721d0472556bf50870d5f7064aa28d9e94'
+ '3cbbc17620e82233380a24aacbebc969b7f3e59e9a8faa22f787d31dacbce8c2d573a517fb108e03a05b1cb3c0ee3f9f1b22a31b0ce4eb3713aca5babace66cb'
+ '3a393725571a5977b053c778a78acc39ceb933755e85bd0ce2f2f9b30b752ca9b49347ed1c5bfb3201ba9a4bf2d62319d83c4aa5e67169c49b76b36615828d3d'
+ 'a97c366eba37a3edc45195d6f8ac401b313dd5d835d6714ac126899da6bf552cee866821a6f0752eea7e66b78ed96c74665603756cf81da7b0e1b1709c3e8601'
+ '1fbe55ad09b3631c9871afbb98815e4f7f0647c571a9480a6c22075ed2e652f561e2af29e37b72c8dab4a18bc70688413fd4e624769dcf748b2fead8f5746c93'
+ 'fbdc6ef5c5ce1d2b6321b0252a65f5c708a6eeec1d58c04ceb8632c02adcd9f5b333e8736356b47d7263486a8c3de56d1eea80f58be9995f8a8f8905e1a70d72'
+ '0ab613d6c818863c4b88ac72ecc183a31eb194a15e2b784a44862b8196bcd46d1fc50bd879afd4a9bf07b30abc3a92ed9c960f1ffb0f0e25119835f452a9b783'
+ '17193ad0744b8466cd7ee3e9d74ce31f64a20a235dd3aaa5a8c05a5dd56830fe1fccb7c1a40c567997c9125c98c61d0a04d789b0b9b5160c9b228a027805463a'
+ '4f6e2396a569201af82af65278e88cd04492fcef2ef3803f96e044141c68477218e34ae95e86c1e051606a9c8e9e741bad381cc2ff6d15f3aea424b0e11b654a'
+ '6b968a646e1470dda6858f5a71f117c54a0a47c9a2bf4f893bb12a792af1a08c4d69f87528a4dbc97f06759054de218ca861c4829ef91381b8d4b7fc86a6eccc'
+ '4a119927557d9f8618fe6c04a4c56017b233bc1ad5ef21b70cd6ed17b8fa3720f09f110d31bb9bd724008e34f3c59607a9d32c5effdc4c253fef44601cb7be5f'
+ 'd28f517e5519e2de6f63f0ac0612abccc9f23421f17cc9ab5d3ba2bfe11ecb9791c4b56ba381d4baceff1fe4c36656343e683ed5303fd64a9b038e4ca6cfdf94'
+ '4213329bd2a4053bbb3b9998ca6ceb0d320dd56f606a6c995cc6da77a54b544f32e8f08d455178338a4c4726418b0e142cb5ae9d13884070c7f91875f1897582'
+ '6349039c011f1ce0f60304269c4d050d42ce36e62d03722dc7e1cf0b48ed4ec6bf9abd9d1eef6f7c202f06786ddf9fe02b769136600dd688561de3bf828426ae'
+ 'a5af30e56a4ccb76dc3cb74317fbd2f347a54bc2fff6340ad907c30b459e915c0e504f9a00c32f0a32e083fe00b43595af16dfc57c4d7ec25afd5ee930c37111'
+)
diff --git a/libre/icecat-l10n/sha512sums.i686 b/libre/icecat-l10n/sha512sums.i686
new file mode 100644
index 000000000..b4f767fb1
--- /dev/null
+++ b/libre/icecat-l10n/sha512sums.i686
@@ -0,0 +1,100 @@
+_sha512sums=(
+ 'cf451647a33df4e4efe7ce33dd53e31c43e705548d107b76ec58a50b64eb2b4e6694d351ab1c1eee2f306c9d3f84d29ecc5d6ec8acfa86ef1cc402c59fc27273'
+ '1ef1288882ffc73aeb99d7563afe5da95d2909b4105004045d56eeee6ada13590a18b129f96c8defc9ee3ef7b1075073126f27d36b67accd10091c2ecb4e272e'
+ '09174f10b3138abd1597514245ddab068c210cdda3aebbc865b4b0f74bb6eb8904b2af77e1649851cbd75fc55f571803e5d90d7a886dbcda8c1d55fff37c0641'
+ 'dc7f4fac7eed7c62a5b29b077ff86c469a204bf08988661965f369de019e68093ad086216c0c16f652b9384019475df4599f952c16c084bac50d26afdf0e5e3b'
+ '1c3b4d6e87813389fed3c4b508b3201e92780b4547059f5c90e1a8e973224eef99913bc1cbb07f991969bc4226787a06a5fa8d891519d741001a8ecc07dffdef'
+ '3b9ce6cf7a723cfc036ef355b56c53169509ea0ef63eb6516603ca45c7a6da49cef08701c4b9b86c802703a9e19530590afc3c67d6a310f288641f788f510e88'
+ '525d5c5b6fadfb1311d870ba3dcc6620bd9e951999cf30a507f1c95f6d1b432ad4efcacf9ce3d8ac72f3d5ae52dcef67b62f9a8e3ec6ccc2144c46c5efe97949'
+ 'f184935c92149c62876e7ee4af33525ce1e08328108934c46b726550fabcb99a379438560c4e1d40e704e19e6caf9bab83fc109b6b7caa52af32ea0f7a50802f'
+ 'ce0f61e48b71480acb98df95c1b04490d387d05014ed2162b2f123e22abdbebf71cb1ea49fa81887a6e8de43b66f3cb7b22eb8096026fd2104dd30ef8a09272c'
+ '5581ca95360dd92ca3c6df257186e7c3f1a2ba854d62bd74054812df9f14187595b59d75ee7ccc5d6146228cd45fa6a7005d185a646246671ab21e5cf627dcbf'
+ '92a31e55fa435bd53dfc4be3f9e880b08525bedcee7107c9bced1c880f382608969a6e9341e0da6608c74fc53a7370148cb2185439e1c737058e40d271f01b01'
+ 'bb551b463a7cffa27f6a94e092918056eeb0f3d3abca64bb386cfadc6a13846fc6c1f945eb5d05aaf301231a4b679934152f2e6ed8356e7fa8e6826b56b6df9e'
+ '7bfe334066e6100fcbe73a688cbd1bdfbdfed583e882fbb1a4dcba02d15de93bdfc81fe11445e55a1ff80d50f7c1a4b114c7157541c80e2dda6bedee6ab5b63f'
+ 'e5be27319ccf2387d8bfe0ed2b5bc5a1ccc6b80266d9ecb0efebde404be27ea638a219b7e95421e2477f964d88570aae4f392bcf8163ea236446fbe27e5be778'
+ 'c69f7abc7aa64f3764cb0cca384341ac16fa1c7edaa4fbeb6a6ca5950ef937cb6d646258546adf400bb1a1c334a260a3341f7505aba9f34bc723091511859d84'
+ '242d44d843532c1b5d95096d1c768be0069f14551630116f7485de951e6304b91ec5fce39704b413101280435bcdf3fd546fff7671a405c5624fc85b267c4f5c'
+ 'aaf844fa5a62a934c21c7df4749964258caddd28552cf77b63b4fd6ef4089d5ec3b98a8b342a9aac9cb55b62ee7df26492c12b5d5a919efc14a256c7d7b4c93c'
+ '58dcd8677b5d2707bc77d438e925b7750054dc4c04d0ad4ec9118582834f274fc01725a3434b5a5a8675e441814ae9dfe6c8d9f1dca58e17428ab9557369eae3'
+ 'edb9ca5a0e4e22cd4f23c6a1f38d575a4f7f4479f7af453c1c3bfd038f771d4b35df5313f8aa52055919bc3c2175dd41f51a0bce4cbd76650360a645e1409d13'
+ 'b1262210909e76c6e0ae2e999a92eeebd70e4b577602688399c7b27620c989779d2ecd824f11535307d275c7e40b40290b298a3c37dea6c69be09bf3ae1e571a'
+ 'e80a59e7df7b525667a4165559efee367258686a1b489dfa524536dac48434effcdc61efb2b9380b412d4e89d336d1bcc5d1ce855953263f6e8f345e9f9e967e'
+ '5554df130e8355f69009fb2b8e9fa09c89e3a1c14d2aa507765ab9bd4feac89342d498a5f92d35fc0b8dff8c322515690dd2ebf64647bb954de87b62309c0e2d'
+ '0c5dd77fb99e90ec65019f281f85211209fd3ee138117c849c1fe81ff2896744ad01f138fd03614f020b977a72a28fad84a733a7632fa5e1905f249260c1b1db'
+ 'aa1d755e1bf067919308be7a91d7b5bf203a142b9c0496b928d818d22bcb7eb3d3b7960cd470520c1814fd32ffde53c103c40022877bae4da67cb0971f24e90c'
+ '300d6ed9a20d4f1acdb72a5d44183903c0f632af9ad61fd1a8b59b4b9788d64019a6da6e30a8c67b0f3f0880f9af758a7d2c790025eb82626408fbdd2a4676ec'
+ '0de006083a1e3a1259da2937cf26f0ba8cf09d496bd94fdd7eaa827259ded0418805419a8ed00a15a84cbc0644962652f61bbdca45b5bc9ae55fbb13365cd04a'
+ 'e1afd4a99867e34d62ee23ce62e3cd11822a4e28c43b34d705bf70721c094a31c85f235e33420cb9448b514b7125aed9d4564449f7b1a9c7d65556d6db49b111'
+ '64be62fa75131fec5cc05f6f33fe9176ed2b9ab574cd012ac86cc12bd545adbdcdaa9bef7abd4b39d1772aae0138a6803152084f1f6f3cb738ea7a842edd5077'
+ '5cdd99ba35871a73fc1978c8795467f57abed66b7675976e01a8ebee714f6f08f097537cf29647e0fe59690dce3a7ac6a66a838bf76ac430b0867726b70e3f37'
+ '776296784e17b0bbdf0b6e1d960ed3e021dc1daec608b18c64e1270951b2cec8ec4e44c524567f25088d54733ce956473f22d2d8b2c15cb661b222c0fe3ff7f2'
+ 'e93e34cb19f58c99bc7691d76af2a6492768102e6d73f94ce5f58a1abe81b818b36b0757ff21dea221749f0364e93245e047c0e0474867a7f14802cbffb31016'
+ '35d1d8991ff4e6fa0d14c7a836b3abaf2e3a4e4830c2f25c4cac79523e75ccddc7ea875ad668af8b4bbee7e7a0274f708d67aa69fb82681c46f69b8b7965c845'
+ '38ae9f131a967cfbd5a235a99de909ccb129fac4ac79b3ca4b45585eb5218a92558511411550e99ee8a63e76c75ab0cca13a0ec0ffb7ee035cc27ffa50a26d4a'
+ '7df17971169e65c4cfddbb438077078bfb048d559c537bf88f169f0fabe8b811e3de9ee188ea6c7351ae216f478544495aaf4eb090b042355dc6c17759529139'
+ 'ef5bbff86ea1dc8aae03c642360952616c799d5b0a35a7599ef57192c6c4e8b9516b96aea09806cc4194498363cc5f676b19d7c4c73b290385446403766e45ee'
+ 'be6cebc215c6bc4773508b67f90e84c7ed438b1c0353b08db048789f2f15d952b1f6036f3f8ccdfedb0206e1f8c40b436122ce304c3bc8e7ee1f1ca96fecbc6c'
+ '15d39bb3687c660437e4b1962c63129267d79721eeaa4199d3c285d5754976f5f10c44f1e92635462a148e136e072354c0b648029827b229d2e673d69edd4ec2'
+ 'ef80d4ec3dada6034b8e59ed04ffb61419f6cf48ea44cad953c6265a08c41f471f359a82400f0d40960dd7d55c248efb0b7ff6750bddf3e0c3d6e45b665e7f6f'
+ '6f01cc0a65efc663158fb30c944d159727f04d49884466cb92a87dcc98fd04d07fb35309383ed2ce1e7a43ca4b6d2080cbe64265e68aa4be5f584f57120ffbd2'
+ 'd3e8fdd1e131ca3f5b0adb93528077e4f9e1f879193c17fb4324562ef7af6fc8aa33d04bc0dd91982bf5417f2d4e67069cbdf9ecb62b90929a980fc8c147d12a'
+ 'cd342741bb33bcb6521d3e9c84e7ad5f2d6121c2d58b670e38dd8f3da5193049d6af145017144829f36a4dc3b3c775f95558b7812f9365f51f51f1a89211e02d'
+ 'be7505ace9b4927093520c458e3e702689336fcfa3626a0e67278a48a097e76746188396f8ec321b9d86582a98cc7dd31e822645d63c77f623d351b8ea27f617'
+ '1e9b49d59afcb199def342b07d9218f2b205354204108b49576c1d2a46c4515b11e7beaf61159914d3fef49239a6d7e13c8170299c318c850ba4e3a5bf1b2d9a'
+ '8128ffa4d339faaf29d887da6312c26fa028799502bf026f7fc86a3d020a798a33303f3d5d8e8c5656d8119ea14d799d3f77478862e5f098f97c3299d74ca7d8'
+ '13e6b37ef40679bb3576d7d2c63153b33bdf81d4759ef83cc1d3e14d67ac094162f524cfab69172c679306fed00f920052721a66e118bae63624eac96f403351'
+ 'e1ecc8af687047739cf6778fde9ac5fe5386f20cf78e5965d51598742c0fbb9373fd171f318826ef03c852792a24d1b07d379c947413b152c7f0f1b44a932840'
+ '7c46f5383d5ba8afe1a5bd767dca13e38749391c34f0c029b1e0f1e322b0f10c83bd7d731b9125bf9bb1df6cc81dfefb9a7854b4ca63174e16d9d1000029762b'
+ 'dcf2a5f2cef7e0ba63a08f99ba469283645b939d80f286a10b0388a6efcdb7352f062a9ccc4db7ccf39762d8e6bb4eb8763dd34c8ce97f070b1636693c697ee5'
+ '131389b2736c442a74b5a814e93fd79a722cdc3c155e0f21cdbd979531078fa95e3151511b0fa9e10175faa35d8737794e89397cf6a31741af2c455ddadf7603'
+ 'a979c1bff9d1fd6b3ad6d66753b262e550dbe0b86fb8caa619703527f230748233aa6a76ba08d2401df9336a557a33e966c48af45df176cf7614c7b1cc6122ce'
+ '80d5481138de16e2b2ac46f2060e638cb941313b709ccc090c55c316fafa431c5cd35af1733b468cccad1e89462c069d84d7206a1781051810e4fb5d869b28eb'
+ '784396922b01fa442a78f281175ebd386cc21f6be430fd020802b21e266af7d3f256d521681a47b495623b71cc0073c284d2083245ea9388d81ec351c1ef26b0'
+ 'd74ceb0d942cced18a910d1b101f0e92d298cb6ec039f26e563a295fd826a64aba7d05da18047aba6b58c9b3442d98bf811adee4cd44535e8eacd69dfd73863a'
+ '1b9db5f7fec8a04a534b6b3e74384232eb75fbde8ef902a32655a75dd2ca2701b5da0f22f1b6f4d12c591ca24e2e667b7ef4583c645d115999d94a3e40ed9eda'
+ '470819fa53fbaf0f55559463b250a1c59d49bae90ce847a86607ab1c19d0ae7ee940c8a583512983340d110981e2a9287c1e63d94ece27301fc6e4d174442e53'
+ '0be48d47bd82b35da2677826c91f2007d07ac45075d43bf5f9fc229657d5a6171929f35929677ca3d6984d7394bf74bea687013eec6cb56dab108f2bb01d34c3'
+ '4cee7df4e2029d40405f9a93e99af57bd759490ef5057e9a31279f3d9e49a522ba153a15482e3c15fddaee07aea6dd06d7a86a67b848cc5936318c8a356b5681'
+ '51171bfd0bc83d91bdbf2bc96fa114b69ee61d5b166c8769a1d75fe10685dc61d20b8f255c1a406a27d4e52a458442f02b680a0cd92dd71da219e1388e5fc1b3'
+ '5658b8f480f3d8782925c9030424d393368e99a0a155a29c3b5ce8ba434aa8fd926e813826c4c2018d25974477875371663782111cab810e64a6ad7f82418fe6'
+ '21adbb2d7aeb4a5979ca128ae61834fcbdf09a8354cc84ab8d1721feeb5924ec45d679091e89e38031fc7a99821c889dfe0f963a090b7eb228ce323a9bdef8e7'
+ 'db1c584ee68b0f8a11461c258efb62ca1cf6e6ef3e702a7dab542b7300ce66bd896c4b9530ef78c02ccda8715affb35303f7a533a232d2f32d713ff2c481856f'
+ '30cfd90c3a7b4d38ea6ea59e3226041d724aadc917ac8f99440746c0f62677d5da6798f98fdf671832fa07e9906d1de37de3ba52ebf7a5122e1b98933f6a95a6'
+ '2eb0bd484e0f01cc68d200c3c60ef4b73f2d87211679fc3881a8490271a940b7231ff48aa1a885c18e562ad7925cb6bcbaff5e5693d366a35f2328e22a103541'
+ '0ff7a27d4b5ab5097190a8310dd850e54c71ce8dcde514ebf039a43134754320b1e2d9874bcdd2575c23e1f2436c21bd2abe090e677718bd6c43ee740c08f427'
+ 'f63ccdcdd99a3671e86ca47fb7e160481717fb03fc26aa07727beb538a0c4621ade96b54de698e91f29f8c62dccae141131a712a3d41423a41e203a68e8f77a3'
+ '25d0f3a78e6d2d1da127720e63332c83eddc76065ee65b362f12a7275f80f13170caf6033425ffd97a853f94d3d0accc07e2e830691bf65c651aeb7f7e8a3ffb'
+ 'a6274589f65947784ecf34a03b9ab5bbac7835a25bc32817ca7e2ccd512021b5f08887721ccdbc09c9b6f13653ed948d10c6af073f13c916cfb18d254c40713e'
+ 'a2eb20c236e407a852eba18eb6a74e1cf1c0001439a76245912ba7955bf0e92e1659d953000f8af41328af5e33b719fe3bd0c9ae2411959eb4c20cd4f64df50e'
+ '5e79a2c17af1e75a737f0b35d6b9c39ecff3bb583f16e75ffc0da50bd3fcf4eb7c3d699f0185718228328b06a816b4041aae3ca7439ecd98669c22d900991c8e'
+ 'ac4a9d8bb69d244fc7f1bff7374ef5b2d0c1ec98abcfabfd12896ab7694868e1380a19cc35069ea22802a0ae553b57f6fe63213548ab84ac70634221405b32e6'
+ '88c57dd25d138d9433954e0cd099f97f6b148888233eb5101fca39175497b96b379a0deb2805cd7216dafe87adb0fadb188b895816f1602472c5f6ebef08b4dd'
+ '29814932acc0886294da1dbc3e01ead180e625cfbe27f0e3713efe9d75160344d70e4a892945a124584211b43989c2a9cb4a1b6fe16eb72749a4daf062e15392'
+ 'cd68888614a89545d96171e2e97acc00b924ba97db49b29e3e736a2a4fb2531a40a99e18b78af09705a8096d1dc5f661ea41b1fc77fbd4fd15338b9006615df8'
+ '9d2f0223c4dbd8134410712fad3916637f12105ec5b4bfae6ca0713ae02b9ab87dfa78388bc5d1f930b46f7967986678b239e94bb657614b7da830c9febf03d9'
+ 'eeee3fc38dce50dbc43a8cb8e0978e299189585e71241972677158ac09b38a00156b60a2dab4042f8a5745a5c515e70c57794530a2546ec76a989247fc4b79e7'
+ 'fabbf1254b9e84fa666657576c59b0aef8d61e690e0ce913d5bc539ef8058e8a3ccf934ab9ccaee25c94cf55f2166106994b2f2173543ad10a3696c81cb79ddf'
+ 'fa354e74aaa6218fd61c8a91741d2d88b6561643db5d971c882c7d4d17c3c05bc0b124bd9441f007bdbcdc97ccd489e646d67423ec81f25d15826a75ec63e3a1'
+ 'df741a822ec1392db40c03be24566ca0b7716a0c808ce8a3b7589950c38526776a9709004358c290b358399946f3f2a82fda64db302dc0e630efce20a6dd4f75'
+ '7697f7a309f3a761144e3c6effb24bcc6799abb6bd8285d2fa0bab8b7ab7486000a90a986238bfe74781e06b79f119b3d154f51e7c1551cc15cbdaa9eda53d55'
+ '7b917690efe7a6f9e1c71455add7650c4a5d34360eebd223daec891151a4302dbb48a057651cbd13648f1a742bee39ebd198d61cacfaecef8499c78762c81da2'
+ '41b8a75f61fce1a5496452917598ee8395b6f9df8386832a070c4e2ee7495666f446fe9c9691f6588357f5d678f8fa8e6d3670463c2d78376d43870eed9f68f2'
+ 'bcf004b3017c971d52a957a589943889ff54c766c13a114642f25a584897fb72e60f4fe30d3c352c36a409fb0888f86f035de9cfcd0f90ba215e92a1b794089c'
+ 'bfcef7543a2f4f73b37481b53a655eef2a17a940ff45877d745a66f046866d5f1e68e9628c09febeaca58bea49dce6ce0649c17840e40e53401666a8bdac3091'
+ '4a6d3fd4c9115c0f9ba5773d68ab4e185cf826521e335a8060c3e93ca6f6155edcf45a0240fe463ed87dd1df8da6db721d0472556bf50870d5f7064aa28d9e94'
+ '3cbbc17620e82233380a24aacbebc969b7f3e59e9a8faa22f787d31dacbce8c2d573a517fb108e03a05b1cb3c0ee3f9f1b22a31b0ce4eb3713aca5babace66cb'
+ '3a393725571a5977b053c778a78acc39ceb933755e85bd0ce2f2f9b30b752ca9b49347ed1c5bfb3201ba9a4bf2d62319d83c4aa5e67169c49b76b36615828d3d'
+ 'a97c366eba37a3edc45195d6f8ac401b313dd5d835d6714ac126899da6bf552cee866821a6f0752eea7e66b78ed96c74665603756cf81da7b0e1b1709c3e8601'
+ '1fbe55ad09b3631c9871afbb98815e4f7f0647c571a9480a6c22075ed2e652f561e2af29e37b72c8dab4a18bc70688413fd4e624769dcf748b2fead8f5746c93'
+ 'fbdc6ef5c5ce1d2b6321b0252a65f5c708a6eeec1d58c04ceb8632c02adcd9f5b333e8736356b47d7263486a8c3de56d1eea80f58be9995f8a8f8905e1a70d72'
+ '0ab613d6c818863c4b88ac72ecc183a31eb194a15e2b784a44862b8196bcd46d1fc50bd879afd4a9bf07b30abc3a92ed9c960f1ffb0f0e25119835f452a9b783'
+ '17193ad0744b8466cd7ee3e9d74ce31f64a20a235dd3aaa5a8c05a5dd56830fe1fccb7c1a40c567997c9125c98c61d0a04d789b0b9b5160c9b228a027805463a'
+ '4f6e2396a569201af82af65278e88cd04492fcef2ef3803f96e044141c68477218e34ae95e86c1e051606a9c8e9e741bad381cc2ff6d15f3aea424b0e11b654a'
+ '6b968a646e1470dda6858f5a71f117c54a0a47c9a2bf4f893bb12a792af1a08c4d69f87528a4dbc97f06759054de218ca861c4829ef91381b8d4b7fc86a6eccc'
+ '4a119927557d9f8618fe6c04a4c56017b233bc1ad5ef21b70cd6ed17b8fa3720f09f110d31bb9bd724008e34f3c59607a9d32c5effdc4c253fef44601cb7be5f'
+ 'd28f517e5519e2de6f63f0ac0612abccc9f23421f17cc9ab5d3ba2bfe11ecb9791c4b56ba381d4baceff1fe4c36656343e683ed5303fd64a9b038e4ca6cfdf94'
+ '4213329bd2a4053bbb3b9998ca6ceb0d320dd56f606a6c995cc6da77a54b544f32e8f08d455178338a4c4726418b0e142cb5ae9d13884070c7f91875f1897582'
+ '6349039c011f1ce0f60304269c4d050d42ce36e62d03722dc7e1cf0b48ed4ec6bf9abd9d1eef6f7c202f06786ddf9fe02b769136600dd688561de3bf828426ae'
+ 'a5af30e56a4ccb76dc3cb74317fbd2f347a54bc2fff6340ad907c30b459e915c0e504f9a00c32f0a32e083fe00b43595af16dfc57c4d7ec25afd5ee930c37111'
+)
diff --git a/libre/icecat-l10n/sha512sums.x86_64 b/libre/icecat-l10n/sha512sums.x86_64
new file mode 100644
index 000000000..b4f767fb1
--- /dev/null
+++ b/libre/icecat-l10n/sha512sums.x86_64
@@ -0,0 +1,100 @@
+_sha512sums=(
+ 'cf451647a33df4e4efe7ce33dd53e31c43e705548d107b76ec58a50b64eb2b4e6694d351ab1c1eee2f306c9d3f84d29ecc5d6ec8acfa86ef1cc402c59fc27273'
+ '1ef1288882ffc73aeb99d7563afe5da95d2909b4105004045d56eeee6ada13590a18b129f96c8defc9ee3ef7b1075073126f27d36b67accd10091c2ecb4e272e'
+ '09174f10b3138abd1597514245ddab068c210cdda3aebbc865b4b0f74bb6eb8904b2af77e1649851cbd75fc55f571803e5d90d7a886dbcda8c1d55fff37c0641'
+ 'dc7f4fac7eed7c62a5b29b077ff86c469a204bf08988661965f369de019e68093ad086216c0c16f652b9384019475df4599f952c16c084bac50d26afdf0e5e3b'
+ '1c3b4d6e87813389fed3c4b508b3201e92780b4547059f5c90e1a8e973224eef99913bc1cbb07f991969bc4226787a06a5fa8d891519d741001a8ecc07dffdef'
+ '3b9ce6cf7a723cfc036ef355b56c53169509ea0ef63eb6516603ca45c7a6da49cef08701c4b9b86c802703a9e19530590afc3c67d6a310f288641f788f510e88'
+ '525d5c5b6fadfb1311d870ba3dcc6620bd9e951999cf30a507f1c95f6d1b432ad4efcacf9ce3d8ac72f3d5ae52dcef67b62f9a8e3ec6ccc2144c46c5efe97949'
+ 'f184935c92149c62876e7ee4af33525ce1e08328108934c46b726550fabcb99a379438560c4e1d40e704e19e6caf9bab83fc109b6b7caa52af32ea0f7a50802f'
+ 'ce0f61e48b71480acb98df95c1b04490d387d05014ed2162b2f123e22abdbebf71cb1ea49fa81887a6e8de43b66f3cb7b22eb8096026fd2104dd30ef8a09272c'
+ '5581ca95360dd92ca3c6df257186e7c3f1a2ba854d62bd74054812df9f14187595b59d75ee7ccc5d6146228cd45fa6a7005d185a646246671ab21e5cf627dcbf'
+ '92a31e55fa435bd53dfc4be3f9e880b08525bedcee7107c9bced1c880f382608969a6e9341e0da6608c74fc53a7370148cb2185439e1c737058e40d271f01b01'
+ 'bb551b463a7cffa27f6a94e092918056eeb0f3d3abca64bb386cfadc6a13846fc6c1f945eb5d05aaf301231a4b679934152f2e6ed8356e7fa8e6826b56b6df9e'
+ '7bfe334066e6100fcbe73a688cbd1bdfbdfed583e882fbb1a4dcba02d15de93bdfc81fe11445e55a1ff80d50f7c1a4b114c7157541c80e2dda6bedee6ab5b63f'
+ 'e5be27319ccf2387d8bfe0ed2b5bc5a1ccc6b80266d9ecb0efebde404be27ea638a219b7e95421e2477f964d88570aae4f392bcf8163ea236446fbe27e5be778'
+ 'c69f7abc7aa64f3764cb0cca384341ac16fa1c7edaa4fbeb6a6ca5950ef937cb6d646258546adf400bb1a1c334a260a3341f7505aba9f34bc723091511859d84'
+ '242d44d843532c1b5d95096d1c768be0069f14551630116f7485de951e6304b91ec5fce39704b413101280435bcdf3fd546fff7671a405c5624fc85b267c4f5c'
+ 'aaf844fa5a62a934c21c7df4749964258caddd28552cf77b63b4fd6ef4089d5ec3b98a8b342a9aac9cb55b62ee7df26492c12b5d5a919efc14a256c7d7b4c93c'
+ '58dcd8677b5d2707bc77d438e925b7750054dc4c04d0ad4ec9118582834f274fc01725a3434b5a5a8675e441814ae9dfe6c8d9f1dca58e17428ab9557369eae3'
+ 'edb9ca5a0e4e22cd4f23c6a1f38d575a4f7f4479f7af453c1c3bfd038f771d4b35df5313f8aa52055919bc3c2175dd41f51a0bce4cbd76650360a645e1409d13'
+ 'b1262210909e76c6e0ae2e999a92eeebd70e4b577602688399c7b27620c989779d2ecd824f11535307d275c7e40b40290b298a3c37dea6c69be09bf3ae1e571a'
+ 'e80a59e7df7b525667a4165559efee367258686a1b489dfa524536dac48434effcdc61efb2b9380b412d4e89d336d1bcc5d1ce855953263f6e8f345e9f9e967e'
+ '5554df130e8355f69009fb2b8e9fa09c89e3a1c14d2aa507765ab9bd4feac89342d498a5f92d35fc0b8dff8c322515690dd2ebf64647bb954de87b62309c0e2d'
+ '0c5dd77fb99e90ec65019f281f85211209fd3ee138117c849c1fe81ff2896744ad01f138fd03614f020b977a72a28fad84a733a7632fa5e1905f249260c1b1db'
+ 'aa1d755e1bf067919308be7a91d7b5bf203a142b9c0496b928d818d22bcb7eb3d3b7960cd470520c1814fd32ffde53c103c40022877bae4da67cb0971f24e90c'
+ '300d6ed9a20d4f1acdb72a5d44183903c0f632af9ad61fd1a8b59b4b9788d64019a6da6e30a8c67b0f3f0880f9af758a7d2c790025eb82626408fbdd2a4676ec'
+ '0de006083a1e3a1259da2937cf26f0ba8cf09d496bd94fdd7eaa827259ded0418805419a8ed00a15a84cbc0644962652f61bbdca45b5bc9ae55fbb13365cd04a'
+ 'e1afd4a99867e34d62ee23ce62e3cd11822a4e28c43b34d705bf70721c094a31c85f235e33420cb9448b514b7125aed9d4564449f7b1a9c7d65556d6db49b111'
+ '64be62fa75131fec5cc05f6f33fe9176ed2b9ab574cd012ac86cc12bd545adbdcdaa9bef7abd4b39d1772aae0138a6803152084f1f6f3cb738ea7a842edd5077'
+ '5cdd99ba35871a73fc1978c8795467f57abed66b7675976e01a8ebee714f6f08f097537cf29647e0fe59690dce3a7ac6a66a838bf76ac430b0867726b70e3f37'
+ '776296784e17b0bbdf0b6e1d960ed3e021dc1daec608b18c64e1270951b2cec8ec4e44c524567f25088d54733ce956473f22d2d8b2c15cb661b222c0fe3ff7f2'
+ 'e93e34cb19f58c99bc7691d76af2a6492768102e6d73f94ce5f58a1abe81b818b36b0757ff21dea221749f0364e93245e047c0e0474867a7f14802cbffb31016'
+ '35d1d8991ff4e6fa0d14c7a836b3abaf2e3a4e4830c2f25c4cac79523e75ccddc7ea875ad668af8b4bbee7e7a0274f708d67aa69fb82681c46f69b8b7965c845'
+ '38ae9f131a967cfbd5a235a99de909ccb129fac4ac79b3ca4b45585eb5218a92558511411550e99ee8a63e76c75ab0cca13a0ec0ffb7ee035cc27ffa50a26d4a'
+ '7df17971169e65c4cfddbb438077078bfb048d559c537bf88f169f0fabe8b811e3de9ee188ea6c7351ae216f478544495aaf4eb090b042355dc6c17759529139'
+ 'ef5bbff86ea1dc8aae03c642360952616c799d5b0a35a7599ef57192c6c4e8b9516b96aea09806cc4194498363cc5f676b19d7c4c73b290385446403766e45ee'
+ 'be6cebc215c6bc4773508b67f90e84c7ed438b1c0353b08db048789f2f15d952b1f6036f3f8ccdfedb0206e1f8c40b436122ce304c3bc8e7ee1f1ca96fecbc6c'
+ '15d39bb3687c660437e4b1962c63129267d79721eeaa4199d3c285d5754976f5f10c44f1e92635462a148e136e072354c0b648029827b229d2e673d69edd4ec2'
+ 'ef80d4ec3dada6034b8e59ed04ffb61419f6cf48ea44cad953c6265a08c41f471f359a82400f0d40960dd7d55c248efb0b7ff6750bddf3e0c3d6e45b665e7f6f'
+ '6f01cc0a65efc663158fb30c944d159727f04d49884466cb92a87dcc98fd04d07fb35309383ed2ce1e7a43ca4b6d2080cbe64265e68aa4be5f584f57120ffbd2'
+ 'd3e8fdd1e131ca3f5b0adb93528077e4f9e1f879193c17fb4324562ef7af6fc8aa33d04bc0dd91982bf5417f2d4e67069cbdf9ecb62b90929a980fc8c147d12a'
+ 'cd342741bb33bcb6521d3e9c84e7ad5f2d6121c2d58b670e38dd8f3da5193049d6af145017144829f36a4dc3b3c775f95558b7812f9365f51f51f1a89211e02d'
+ 'be7505ace9b4927093520c458e3e702689336fcfa3626a0e67278a48a097e76746188396f8ec321b9d86582a98cc7dd31e822645d63c77f623d351b8ea27f617'
+ '1e9b49d59afcb199def342b07d9218f2b205354204108b49576c1d2a46c4515b11e7beaf61159914d3fef49239a6d7e13c8170299c318c850ba4e3a5bf1b2d9a'
+ '8128ffa4d339faaf29d887da6312c26fa028799502bf026f7fc86a3d020a798a33303f3d5d8e8c5656d8119ea14d799d3f77478862e5f098f97c3299d74ca7d8'
+ '13e6b37ef40679bb3576d7d2c63153b33bdf81d4759ef83cc1d3e14d67ac094162f524cfab69172c679306fed00f920052721a66e118bae63624eac96f403351'
+ 'e1ecc8af687047739cf6778fde9ac5fe5386f20cf78e5965d51598742c0fbb9373fd171f318826ef03c852792a24d1b07d379c947413b152c7f0f1b44a932840'
+ '7c46f5383d5ba8afe1a5bd767dca13e38749391c34f0c029b1e0f1e322b0f10c83bd7d731b9125bf9bb1df6cc81dfefb9a7854b4ca63174e16d9d1000029762b'
+ 'dcf2a5f2cef7e0ba63a08f99ba469283645b939d80f286a10b0388a6efcdb7352f062a9ccc4db7ccf39762d8e6bb4eb8763dd34c8ce97f070b1636693c697ee5'
+ '131389b2736c442a74b5a814e93fd79a722cdc3c155e0f21cdbd979531078fa95e3151511b0fa9e10175faa35d8737794e89397cf6a31741af2c455ddadf7603'
+ 'a979c1bff9d1fd6b3ad6d66753b262e550dbe0b86fb8caa619703527f230748233aa6a76ba08d2401df9336a557a33e966c48af45df176cf7614c7b1cc6122ce'
+ '80d5481138de16e2b2ac46f2060e638cb941313b709ccc090c55c316fafa431c5cd35af1733b468cccad1e89462c069d84d7206a1781051810e4fb5d869b28eb'
+ '784396922b01fa442a78f281175ebd386cc21f6be430fd020802b21e266af7d3f256d521681a47b495623b71cc0073c284d2083245ea9388d81ec351c1ef26b0'
+ 'd74ceb0d942cced18a910d1b101f0e92d298cb6ec039f26e563a295fd826a64aba7d05da18047aba6b58c9b3442d98bf811adee4cd44535e8eacd69dfd73863a'
+ '1b9db5f7fec8a04a534b6b3e74384232eb75fbde8ef902a32655a75dd2ca2701b5da0f22f1b6f4d12c591ca24e2e667b7ef4583c645d115999d94a3e40ed9eda'
+ '470819fa53fbaf0f55559463b250a1c59d49bae90ce847a86607ab1c19d0ae7ee940c8a583512983340d110981e2a9287c1e63d94ece27301fc6e4d174442e53'
+ '0be48d47bd82b35da2677826c91f2007d07ac45075d43bf5f9fc229657d5a6171929f35929677ca3d6984d7394bf74bea687013eec6cb56dab108f2bb01d34c3'
+ '4cee7df4e2029d40405f9a93e99af57bd759490ef5057e9a31279f3d9e49a522ba153a15482e3c15fddaee07aea6dd06d7a86a67b848cc5936318c8a356b5681'
+ '51171bfd0bc83d91bdbf2bc96fa114b69ee61d5b166c8769a1d75fe10685dc61d20b8f255c1a406a27d4e52a458442f02b680a0cd92dd71da219e1388e5fc1b3'
+ '5658b8f480f3d8782925c9030424d393368e99a0a155a29c3b5ce8ba434aa8fd926e813826c4c2018d25974477875371663782111cab810e64a6ad7f82418fe6'
+ '21adbb2d7aeb4a5979ca128ae61834fcbdf09a8354cc84ab8d1721feeb5924ec45d679091e89e38031fc7a99821c889dfe0f963a090b7eb228ce323a9bdef8e7'
+ 'db1c584ee68b0f8a11461c258efb62ca1cf6e6ef3e702a7dab542b7300ce66bd896c4b9530ef78c02ccda8715affb35303f7a533a232d2f32d713ff2c481856f'
+ '30cfd90c3a7b4d38ea6ea59e3226041d724aadc917ac8f99440746c0f62677d5da6798f98fdf671832fa07e9906d1de37de3ba52ebf7a5122e1b98933f6a95a6'
+ '2eb0bd484e0f01cc68d200c3c60ef4b73f2d87211679fc3881a8490271a940b7231ff48aa1a885c18e562ad7925cb6bcbaff5e5693d366a35f2328e22a103541'
+ '0ff7a27d4b5ab5097190a8310dd850e54c71ce8dcde514ebf039a43134754320b1e2d9874bcdd2575c23e1f2436c21bd2abe090e677718bd6c43ee740c08f427'
+ 'f63ccdcdd99a3671e86ca47fb7e160481717fb03fc26aa07727beb538a0c4621ade96b54de698e91f29f8c62dccae141131a712a3d41423a41e203a68e8f77a3'
+ '25d0f3a78e6d2d1da127720e63332c83eddc76065ee65b362f12a7275f80f13170caf6033425ffd97a853f94d3d0accc07e2e830691bf65c651aeb7f7e8a3ffb'
+ 'a6274589f65947784ecf34a03b9ab5bbac7835a25bc32817ca7e2ccd512021b5f08887721ccdbc09c9b6f13653ed948d10c6af073f13c916cfb18d254c40713e'
+ 'a2eb20c236e407a852eba18eb6a74e1cf1c0001439a76245912ba7955bf0e92e1659d953000f8af41328af5e33b719fe3bd0c9ae2411959eb4c20cd4f64df50e'
+ '5e79a2c17af1e75a737f0b35d6b9c39ecff3bb583f16e75ffc0da50bd3fcf4eb7c3d699f0185718228328b06a816b4041aae3ca7439ecd98669c22d900991c8e'
+ 'ac4a9d8bb69d244fc7f1bff7374ef5b2d0c1ec98abcfabfd12896ab7694868e1380a19cc35069ea22802a0ae553b57f6fe63213548ab84ac70634221405b32e6'
+ '88c57dd25d138d9433954e0cd099f97f6b148888233eb5101fca39175497b96b379a0deb2805cd7216dafe87adb0fadb188b895816f1602472c5f6ebef08b4dd'
+ '29814932acc0886294da1dbc3e01ead180e625cfbe27f0e3713efe9d75160344d70e4a892945a124584211b43989c2a9cb4a1b6fe16eb72749a4daf062e15392'
+ 'cd68888614a89545d96171e2e97acc00b924ba97db49b29e3e736a2a4fb2531a40a99e18b78af09705a8096d1dc5f661ea41b1fc77fbd4fd15338b9006615df8'
+ '9d2f0223c4dbd8134410712fad3916637f12105ec5b4bfae6ca0713ae02b9ab87dfa78388bc5d1f930b46f7967986678b239e94bb657614b7da830c9febf03d9'
+ 'eeee3fc38dce50dbc43a8cb8e0978e299189585e71241972677158ac09b38a00156b60a2dab4042f8a5745a5c515e70c57794530a2546ec76a989247fc4b79e7'
+ 'fabbf1254b9e84fa666657576c59b0aef8d61e690e0ce913d5bc539ef8058e8a3ccf934ab9ccaee25c94cf55f2166106994b2f2173543ad10a3696c81cb79ddf'
+ 'fa354e74aaa6218fd61c8a91741d2d88b6561643db5d971c882c7d4d17c3c05bc0b124bd9441f007bdbcdc97ccd489e646d67423ec81f25d15826a75ec63e3a1'
+ 'df741a822ec1392db40c03be24566ca0b7716a0c808ce8a3b7589950c38526776a9709004358c290b358399946f3f2a82fda64db302dc0e630efce20a6dd4f75'
+ '7697f7a309f3a761144e3c6effb24bcc6799abb6bd8285d2fa0bab8b7ab7486000a90a986238bfe74781e06b79f119b3d154f51e7c1551cc15cbdaa9eda53d55'
+ '7b917690efe7a6f9e1c71455add7650c4a5d34360eebd223daec891151a4302dbb48a057651cbd13648f1a742bee39ebd198d61cacfaecef8499c78762c81da2'
+ '41b8a75f61fce1a5496452917598ee8395b6f9df8386832a070c4e2ee7495666f446fe9c9691f6588357f5d678f8fa8e6d3670463c2d78376d43870eed9f68f2'
+ 'bcf004b3017c971d52a957a589943889ff54c766c13a114642f25a584897fb72e60f4fe30d3c352c36a409fb0888f86f035de9cfcd0f90ba215e92a1b794089c'
+ 'bfcef7543a2f4f73b37481b53a655eef2a17a940ff45877d745a66f046866d5f1e68e9628c09febeaca58bea49dce6ce0649c17840e40e53401666a8bdac3091'
+ '4a6d3fd4c9115c0f9ba5773d68ab4e185cf826521e335a8060c3e93ca6f6155edcf45a0240fe463ed87dd1df8da6db721d0472556bf50870d5f7064aa28d9e94'
+ '3cbbc17620e82233380a24aacbebc969b7f3e59e9a8faa22f787d31dacbce8c2d573a517fb108e03a05b1cb3c0ee3f9f1b22a31b0ce4eb3713aca5babace66cb'
+ '3a393725571a5977b053c778a78acc39ceb933755e85bd0ce2f2f9b30b752ca9b49347ed1c5bfb3201ba9a4bf2d62319d83c4aa5e67169c49b76b36615828d3d'
+ 'a97c366eba37a3edc45195d6f8ac401b313dd5d835d6714ac126899da6bf552cee866821a6f0752eea7e66b78ed96c74665603756cf81da7b0e1b1709c3e8601'
+ '1fbe55ad09b3631c9871afbb98815e4f7f0647c571a9480a6c22075ed2e652f561e2af29e37b72c8dab4a18bc70688413fd4e624769dcf748b2fead8f5746c93'
+ 'fbdc6ef5c5ce1d2b6321b0252a65f5c708a6eeec1d58c04ceb8632c02adcd9f5b333e8736356b47d7263486a8c3de56d1eea80f58be9995f8a8f8905e1a70d72'
+ '0ab613d6c818863c4b88ac72ecc183a31eb194a15e2b784a44862b8196bcd46d1fc50bd879afd4a9bf07b30abc3a92ed9c960f1ffb0f0e25119835f452a9b783'
+ '17193ad0744b8466cd7ee3e9d74ce31f64a20a235dd3aaa5a8c05a5dd56830fe1fccb7c1a40c567997c9125c98c61d0a04d789b0b9b5160c9b228a027805463a'
+ '4f6e2396a569201af82af65278e88cd04492fcef2ef3803f96e044141c68477218e34ae95e86c1e051606a9c8e9e741bad381cc2ff6d15f3aea424b0e11b654a'
+ '6b968a646e1470dda6858f5a71f117c54a0a47c9a2bf4f893bb12a792af1a08c4d69f87528a4dbc97f06759054de218ca861c4829ef91381b8d4b7fc86a6eccc'
+ '4a119927557d9f8618fe6c04a4c56017b233bc1ad5ef21b70cd6ed17b8fa3720f09f110d31bb9bd724008e34f3c59607a9d32c5effdc4c253fef44601cb7be5f'
+ 'd28f517e5519e2de6f63f0ac0612abccc9f23421f17cc9ab5d3ba2bfe11ecb9791c4b56ba381d4baceff1fe4c36656343e683ed5303fd64a9b038e4ca6cfdf94'
+ '4213329bd2a4053bbb3b9998ca6ceb0d320dd56f606a6c995cc6da77a54b544f32e8f08d455178338a4c4726418b0e142cb5ae9d13884070c7f91875f1897582'
+ '6349039c011f1ce0f60304269c4d050d42ce36e62d03722dc7e1cf0b48ed4ec6bf9abd9d1eef6f7c202f06786ddf9fe02b769136600dd688561de3bf828426ae'
+ 'a5af30e56a4ccb76dc3cb74317fbd2f347a54bc2fff6340ad907c30b459e915c0e504f9a00c32f0a32e083fe00b43595af16dfc57c4d7ec25afd5ee930c37111'
+)
diff --git a/libre/icecat-l10n/updatelanglist.sh b/libre/icecat-l10n/updatelanglist.sh
new file mode 100644
index 000000000..ddf78e392
--- /dev/null
+++ b/libre/icecat-l10n/updatelanglist.sh
@@ -0,0 +1,82 @@
+#!/bin/bash
+# helper script to check the local language list against upstream
+
+export CARCH="${CARCH:-$(uname -m)}"
+
+# extract pkgbase from pkgbuild
+pkgbase="$(bash -c "source PKGBUILD && echo \"\$_pkgbase\"")"
+pkgver="$(bash -c "source PKGBUILD && echo \"\$pkgver\"")"
+
+echo "attempting update to language lists for $pkgbase"
+echo " CARCH: $CARCH"
+
+# produce new language list
+url="$(bash -c "source PKGBUILD && echo \"\$_src_url\"")/"
+
+echo "_languages=(" > "languages.$CARCH.pkgnew"
+echo "_sha512sums=(" > "sha512sums.$CARCH.pkgnew"
+
+mkdir -p src
+
+for lang in $(curl -sL "$url" | grep '\.xpi"' | cut -d'"' -f8 | rev | cut -d'/' -f1 | cut -d'.' -f3 | rev | sort); do
+ # filter unwanted packs
+ case "$lang" in
+ compare-locales|ja-JP-mac) continue ;;
+ esac
+ printf "\r %-3s..." "${lang%%-*}"
+ curl -s -o src/"$lang.xpi" "${url%/}/icecat-${pkgver%_*}.$lang.langpack.xpi"
+ sha512sum="$(sha512sum "src/$lang.xpi" | cut -d' ' -f1)"
+ name="$(unzip -p "src/$lang.xpi" manifest.json | grep " \"name" | cut -d':' -f2- | cut -d'"' -f2)"
+
+ printf " '%-5s \"%s\"'\n" "$lang" "$name" \
+ >> "languages.$CARCH.pkgnew"
+ printf " '%s'\n" "$sha512sum" \
+ >> "sha512sums.$CARCH.pkgnew"
+done
+echo
+
+echo ")" >> "languages.$CARCH.pkgnew"
+echo ")" >> "sha512sums.$CARCH.pkgnew"
+
+admsq() {
+ if cmp "$1"{,.pkgnew} > /dev/null; then
+ echo "$1 unchanged"
+ rm -f "$1.pkgnew"
+ else
+ diff -rupN "$1"{,.pkgnew}
+ while true; do
+ read -n1 -p "[a]pply, [d]elete, [m]erge, [s]kip, [q]uit " x
+ echo
+ case $x in
+ a) mv "$1"{.pkgnew,}
+ break
+ ;;
+ d) rm -f "$1".pkgnew
+ break
+ ;;
+ m) vimdiff "$1"{,.pkgnew}
+ rm "$1".pkgnew
+ break
+ ;;
+ s) break
+ ;;
+ q) exit
+ ;;
+ *) ;;
+ esac
+ done
+ fi
+}
+
+# compare and update
+admsq "languages.$CARCH"
+admsq "sha512sums.$CARCH"
+
+# update PKGBUILD checksums
+_languages_shasum="$(sha512sum "languages.$CARCH" | cut -d' ' -f1)"
+_sha512sums_shasum="$(sha512sum "sha512sums.$CARCH" | cut -d' ' -f1)"
+sed -e "s/^_languages_${CARCH}_shasum=.*/_languages_${CARCH}_shasum=\"${_languages_shasum}\"/" \
+ -e "s/^_sha512sums_${CARCH}_shasum=.*/_sha512sums_${CARCH}_shasum=\"${_sha512sums_shasum}\"/" \
+ PKGBUILD > PKGBUILD.pkgnew
+
+admsq "PKGBUILD"