PKGBUILDs/extra/thunderbird/PKGBUILD
2022-12-01 13:39:21 +00:00

321 lines
18 KiB
Bash

# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Alexander Baldeck <alexander@archlinux.org>
# Contributor: Dale Blount <dale@archlinux.org>
# Contributor: Anders Bostrom <anders.bostrom@home.se>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - mozconfig changes for ARM
# - disable rust lto for v7
highmem=1
pkgbase=thunderbird
pkgname=(thunderbird)
pkgver=102.5.1
pkgrel=1
pkgdesc='Standalone mail and news reader from mozilla.org'
url='https://www.mozilla.org/thunderbird/'
arch=(x86_64)
license=(MPL GPL LGPL)
depends=(
glibc gtk3 libgdk-3.so libgtk-3.so mime-types dbus libdbus-1.so dbus-glib
alsa-lib nss hunspell sqlite ttf-font libvpx libvpx.so zlib bzip2 libbz2.so
botan libwebp libwebp.so libwebpdemux.so libevent libjpeg-turbo libffi
libffi.so nspr gcc-libs libx11 libxrender libxfixes libxext libxcomposite
libxdamage pango libpango-1.0.so cairo gdk-pixbuf2 icu libicui18n.so
libicuuc.so freetype2 libfreetype.so fontconfig libfontconfig.so glib2
libglib-2.0.so pixman libpixman-1.so gnupg json-c
)
makedepends=(
unzip zip diffutils python nasm mesa libpulse
rust clang llvm cbindgen nodejs lld
gawk perl findutils libotr
)
options=(!emptydirs !makeflags !lto)
source=(https://archive.mozilla.org/pub/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz{,.asc}
thunderbird.desktop
vendor-prefs.js
distribution.ini
mozconfig.cfg
metainfo.patch
cbindgen-0.24.patch
rustc_version-0.4.0.patch)
validpgpkeys=(
14F26682D0916CDD81E37B6D61B7B526D98F0353 # Mozilla Software Releases <release@mozilla.com>
4360FE2109C49763186F8E21EBE41E90F6F12F6D # Mozilla Software Releases <release@mozilla.com>
)
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
# Note: These are for Arch Linux use ONLY. For your own distribution, please
# get your own set of keys. Feel free to contact foutrelis@archlinux.org for
# more information.
_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
# Mozilla API keys (see https://location.services.mozilla.com/api)
# Note: These are for Arch Linux use ONLY. For your own distribution, please
# get your own set of keys. Feel free to contact heftig@archlinux.org for
# more information.
_mozilla_api_key=16674381-f021-49de-8622-3021c5942aff
prepare() {
cd $pkgname-$pkgver
echo "${noextract[@]}"
local src
for src in "${source[@]}"; do
src="${src%%::*}"
src="${src##*/}"
[[ $src = *.patch ]] || continue
msg2 "Applying patch $src..."
patch -Np1 < "../$src"
done
printf "%s" "$_google_api_key" >google-api-key
printf "%s" "$_mozilla_api_key" >mozilla-api-key
cp ../mozconfig.cfg .mozconfig
sed "s|@PWD@|${PWD@Q}|g" -i .mozconfig
if [[ $CARCH == "armv7h" ]]; then
echo "ac_add_options --disable-elf-hack" >> .mozconfig
MAKEFLAGS="-j4"
# disable hard-coded LTO
sed -i '/cargo_rustc_flags += -Clto/d' config/makefiles/rust.mk
sed -i '/RUSTFLAGS += -Cembed-bitcode=yes/d' config/makefiles/rust.mk
# increase codegen-units due to RAM constraints
sed -i 's/codegen-units=1/codegen-units=16/' config/makefiles/rust.mk
fi
echo 'ac_add_options --enable-optimize="-g0 -O2"' >> .mozconfig
echo "mk_add_options MOZ_MAKE_FLAGS=\"${MAKEFLAGS}\"" >> .mozconfig
export MOZ_DEBUG_FLAGS=" "
export CFLAGS+=" -g0"
export CXXFLAGS+=" -g0"
#export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
export LDFLAGS+=" -Wl,--no-keep-memory"
export RUSTFLAGS="-Cdebuginfo=0"
CFLAGS=${CFLAGS/-fstack-clash-protection}
CXXFLAGS=${CXXFLAGS/-fstack-clash-protection}
}
build() {
cd $pkgname-$pkgver
if [[ -n "${SOURCE_DATE_EPOCH}" ]]; then
export MOZ_BUILD_DATE=$(date --date "@${SOURCE_DATE_EPOCH}" "+%Y%m%d%H%M%S")
fi
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none
export MOZBUILD_STATE_PATH="${srcdir}/mozbuild"
./mach configure
./mach build
./mach buildsymbols
}
package_thunderbird() {
optdepends=(
'libotr: OTR support for active one-to-one chats'
'libnotify: Notification integration'
)
cd $pkgname-$pkgver
DESTDIR="$pkgdir" ./mach install
install -Dm 644 ../vendor-prefs.js -t "$pkgdir/usr/lib/$pkgname/defaults/pref"
install -Dm 644 ../distribution.ini -t "$pkgdir/usr/lib/$pkgname/distribution"
install -Dm 644 ../thunderbird.desktop -t "$pkgdir/usr/share/applications"
install -Dm 644 comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml \
"$pkgdir/usr/share/metainfo/net.thunderbird.Thunderbird.appdata.xml"
for i in 16 22 24 32 48 64 128 256; do
install -Dm644 comm/mail/branding/thunderbird/default${i}.png \
"$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png"
done
install -Dm644 comm/mail/branding/thunderbird/TB-symbolic.svg \
"$pkgdir/usr/share/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg"
# Use system-provided dictionaries
ln -Ts /usr/share/hunspell "$pkgdir/usr/lib/$pkgname/dictionaries"
ln -Ts /usr/share/hyphen "$pkgdir/usr/lib/$pkgname/hyphenation"
# Install a wrapper to avoid confusion about binary path
install -Dm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" <<END
#!/bin/sh
exec /usr/lib/$pkgname/thunderbird "\$@"
END
# Replace duplicate binary with wrapper
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
ln -srf "$pkgdir/usr/bin/$pkgname" \
"$pkgdir/usr/lib/$pkgname/thunderbird-bin"
}
_package_i18n() {
pkgdesc="$2 language pack for Thunderbird"
depends=("thunderbird>=$pkgver")
install -Dm644 thunderbird-i18n-$pkgver-$1.xpi \
"$pkgdir/usr/lib/thunderbird/extensions/langpack-$1@thunderbird.mozilla.org.xpi"
}
_languages=(
'af "Afrikaans"'
'ar "Arabic"'
'ast "Asturian"'
'be "Belarusian"'
'bg "Bulgarian"'
'br "Breton"'
'ca "Catalan"'
'cak "Kaqchikel"'
'cs "Czech"'
'cy "Welsh"'
'da "Danish"'
'de "German"'
'dsb "Lower Sorbian"'
'el "Greek"'
'en-GB "English (British)"'
'en-US "English (US)"'
'es-AR "Spanish (Argentina)"'
'es-ES "Spanish (Spain)"'
'et "Estonian"'
'eu "Basque"'
'fi "Finnish"'
'fr "French"'
'fy-NL "Frisian"'
'ga-IE "Irish"'
'gd "Gaelic (Scotland)"'
'gl "Galician"'
'he "Hebrew"'
'hr "Croatian"'
'hsb "Upper Sorbian"'
'hu "Hungarian"'
'hy-AM "Armenian"'
'id "Indonesian"'
'is "Icelandic"'
'it "Italian"'
'ja "Japanese"'
'ka "Georgian"'
'kab "Kabyle"'
'kk "Kazakh"'
'ko "Korean"'
'lt "Lithuanian"'
'ms "Malay"'
'nb-NO "Norwegian (Bokmål)"'
'nl "Dutch"'
'nn-NO "Norwegian (Nynorsk)"'
'pa-IN "Punjabi (India)"'
'pl "Polish"'
'pt-BR "Portuguese (Brazilian)"'
'pt-PT "Portuguese (Portugal)"'
'rm "Romansh"'
'ro "Romanian"'
'ru "Russian"'
'sk "Slovak"'
'sl "Slovenian"'
'sq "Albanian"'
'sr "Serbian"'
'sv-SE "Swedish"'
'th "Thai"'
'tr "Turkish"'
'uk "Ukrainian"'
'uz "Uzbek"'
'vi "Vietnamese"'
'zh-CN "Chinese (Simplified)"'
'zh-TW "Chinese (Traditional)"'
)
_url=https://archive.mozilla.org/pub/thunderbird/releases/$pkgver/linux-x86_64/xpi
for _lang in "${_languages[@]}"; do
_locale=${_lang%% *}
_pkgname=thunderbird-i18n-${_locale,,}
pkgname+=($_pkgname)
source+=("thunderbird-i18n-$pkgver-$_locale.xpi::$_url/$_locale.xpi")
eval "package_$_pkgname() {
_package_i18n $_lang
}"
done
# Don't extract languages
noextract=()
for _src in "${source[@]%%::*}"; do
case "$_src" in
*.xpi) noextract+=("$_src") ;;
esac
done
sha512sums=('bebd20f1435793be1ead5ac962ef49c6f01909eeb16f3d909e8a57bd42f4ae1d99ae50cf55439dc395be94abd920f8239ffb98eba7a0653657c454918f6df9c7'
'SKIP'
'a0061fcb2a7f66061e336a8d95948592f56f4752e56467f14ba63846720ebf845cce7511d1a2637e3b80d5a1ffdaa2fb783fa37195103425ef65222d45372012'
'6918c0de63deeddc6f53b9ba331390556c12e0d649cf54587dfaabb98b32d6a597b63cf02809c7c58b15501720455a724d527375a8fb9d757ccca57460320734'
'5cd3ac4c94ef6dcce72fba02bc18b771a2f67906ff795e0e3d71ce7db6d8a41165bd5443908470915bdbdb98dddd9cf3f837c4ba3a36413f55ec570e6efdbb9f'
'a34dd97954f415a5ffe956ca1f10718bd164950566ceba328805c2ccbb54ed9081df07f2e063479bf932c4a443bb5b7443cca2f82eea3914465ed6e4863e0c0e'
'7e43b1f25827ddae615ad43fc1e11c6ba439d6c2049477dfe60e00188a70c0a76160c59a97cc01d1fd99c476f261c7cecb57628b5be48874be7cf991c22db290'
'3526402ccae1f0428f2e45bae8d0b2cb909ac2698bc3508b692b827839ccb21203ce414206039776f6ce946fc53e636290b7870e9886284d5e9d1e8ad050aac9'
'36d9662fc94cbf7dcf371adc13a9cda679bc75df961d86de019d3c8ebb0be3062d5ef762d175fab58696db74758100a65de45d7832e0e2bd4e15c901f72d8349'
'e03a295d3d4d14e884dd4c84bb1676a755558b2f971134873a6777392390a53581dd0ac2e64ee249adb818105bf14400306cd8b9aecd82252d3e41bc9271a72e'
'572615719c43adf8160eda2f06e2a175f30fcc1066f50ffaa22106fb8a9b1545168017951f67cd9e797d4e5787256e385bca63b2e03f6cbad84d49401f56e4df'
'9188fa81549ec60da473a54285818d558622f61fb77abb522e26fa7e92ee5f4bd316b7ab1c2067fa9fdeb6c5064f2f375f1a99d650b7a000257be7f89862639a'
'634bd84d5d645a428d63bda27888b235dfceaef6266793bbab35de34696e4d1b5ba85623da8a7343f6b99578b28365699ea328246f236056a2d6b6ab06179cae'
'4c67fe1c55e01eefae8f1a0783e82b287e3bd7c0afc351af74f5101735badfe8048b3cf06f2778ec4e2ac7fcafb220ab7417ab02abac783ad96e7db4ead1282d'
'fe6897f8ab07998b2e145a3072d22f67e00aefefcb7376e92ed8397d46ef42aa103dd8b65295254cd46f76c9d6ca6ae4cd22c47f72536a2c23fd4c69d577d153'
'3a3cbb01194c6c01f872f94c7d0ab6bd0febcb8e2cc4aff571cf00516e90606559df33a0f90430a1b6d2707d8aa3eb924a124cc21c2de63f8f21710dc76f692e'
'8d0be116ab1151306b432cca77620701e58d154fdfa699f79d24b7f93a1c469a077af684acb082dcb947d312e01a01413a6dc8d4af1c08b16a199c565f61dd29'
'1a32b1db96d7857f67fff3c112208b10ab0be8dcd7b7554e07107f57ac783fbb9ae4e52805c1d1986a949f2645bea13ab8c83e3767d074f667d58ee8a08eaeda'
'21e3638c8d1431ecdcd226af8adb18bca8d3b9c9d839bbdfc2c94b9a50f45c2825bbe61c75f77256b092983fbe2b7327d4a1b9c464bddff67dfeede7ecb05ca9'
'6fab3d5329deb9b20ad924028073a2510e4b4e28fcde09fdcb2f46cf52f1bc18272ef3383931c46bc985be324a24247bfd94f176577c57fa07be5945d571367d'
'80ce8e2c2e215b50f7785a7eb16d3517010f79b661408c578ac2cba20941927d0e7664024d56815d16f6859ac8564e1b25b9417a2baf275e54908940d6bddb3b'
'56ca585095f76473e0735d7ff5e32a7e0cca05d8e5e3525bca2071050fbdaff6c29b7729266a9cb55495f76adcfa844bce616c576a64339e2985edca9612ba5a'
'6924b0efe852ed7b489c2eab39a827fbd10fa8ce8cf320f689f7a56396e89b83b48920b1f6c1d7a2260853fa514e9e927b6043c580fcc1889f58285571df46db'
'6980f9f638b057941b5e1680166f770f0f27ad08c12ecfc5ab5f4088f0f5568977fe4707a3ce231f2c327e3bd0c2c516464b78510b438276f7fca537dd8ed971'
'98060af397d8c0978e6cf8c1572f39a21c640b0d9baf42914293a2b580e1ca9aee18242c313fe841c79be44d75288c479d91147a98dcc7351808ed52a1649a6b'
'676b750075c0099d98a597175dc97a2e4577ebb629f82f3c4dfce8862ac769a8e1cc8ecdd628c4208ec814f2aeb46628c70c43fa7aac932df0b42ee9726b9350'
'cf7b3db4e2243a8e3b729cd40eb6ee3c7ba96cc80f1d47bce5ca42aae34e600495f6b345c44bfc57c2972283ff3c2735c42377da4b6dd2860b782d3c09c5a0ec'
'5b52a0bcb5c30c0148d44b10f6fe693e89322f8a36b3a6de4a346923b3f582494d3a1d15f93cb067de72e85dcd3d0f9630df4f31a6df45f98f236d6fd13c898e'
'fa20b422f9dc07957e4db613752d06e7a25d5233b36d1dd4ed5deecd4963cf036609dca67848891bf7d3296e72df65a33c1e7b1d24cc27bf1540897f509964bc'
'a3453a6d67acb3e37acef5320fabf7f0d0ac5ffa18a057d651056564aa966244e3e124ec961309ce2bd6e5f1042776d1b74d5ead66b38e167e2cf586211d6f4e'
'f606fe96daa7d4087ac08c312fbdd92f42e3242b00c2c8b748aff4d61f7f8ad3ddf557d67ffc4b9e271029ef86de2dfb1ef6c5768d79bc822c6efb93a3c3f6ac'
'e17dc3f5fe29fadef34dfdb93fa27aa82eae42e9cc88642ef82fc686aeef6a378bf2e76143b749288838f808a4482f3025abdd23a712704531816a3469203084'
'565fb2f1c22b8d9f0a4e75a5ac402e1b0876cabdb2bd8573dcabe60ee98dea22dc32409cb6aa57f0b0fd9babde2533687f5998ae28ca480d60cd9c6f25092d05'
'5f8fcf8698bc32069043a3fa176d0677b57993058cbc28b3232974ebf1375a057affd88824ec99132dc4ad3717ba378ec587ea2580f9ab63bc9c180cd6ea3526'
'2201f82b19e9359bb3b2788d976dbc6581f209e78878672ee5e6ae65a898ee3097aad0daf65e77c2e97f2eaa7acff717a0235f87857a2d32a05f5d2e344216d7'
'74a39a7fc9950335ef84fc0a0d2f42ee8b8471b6da7fadce0b64f27050e5ac1e24c266078777dd3b4fb70ca7c4f8680919c08e82c55dc841f7704f421e3bebc8'
'b2b3a538d176f7cd7fb156d985ce86b62f1da8548ca442a9d9a357bea41e39a7f745b03d75bb8ec9e589e7831dcc78a2c4dc373dbda3839636a994595c69aca6'
'40b328e63fe953749a428d3134046a8cb2871cad571c58fdf482f8130cd92cba5bd3ee70b92c4581a87789171c63e83aebffc9652983770f05127b20f85628a9'
'2d2d0fd46b9efbfec39d8a5c759cfa8fd28a369282ddfe421509cb2be8083fcb1b134c66f749fa2429063860ee37bea4b33d6552ab6bd8c736352d4ded8b1d42'
'43460525c8c2fc892a1a60617c36704be4c491bf7aee06077d12bc4d02ef3c891dc5b987e01d046762ffb69360fcdf28a61098a7d872b5614d7350297aa70543'
'4d9b81fc36bad9440a1bf0291ac77c7e0d91ce0687d3e781cedae2c0411e39ca08d351653ceb153097f8ec7100666fc89b174e4536c3d4f8bb70edfdaffdfdb1'
'1119813368fbfab925bebac455be53739067327c5f2ce0dc8c2cf58130f761ad6d0a9cbfd281d537030f80ef2ff332a38afebdd8acf7f57a3a7678ca5e5eba2a'
'c59773b3d3568643aa95611600f26339925919a0c4875ee4b4358d65c66d2481acc0367a1212d393642704f6130d9fad01fec81e109df1b3a117e5eef164b91e'
'e902e151e0edfa980cd64fd20c48ec745ff4e563d40657b988bb18f304c7955604d2ca6d0cb2dcc6db58c0c5696fcea6f4013fbe16ba96da4d0e2d85fc94ea23'
'f98d2ea6eb591bee869adcbb0d59df4600ceae15baeb70891115e7eb031535acadbc707e66714585093424e8d8c93935199919883eed4224453372994956d958'
'23ee98fdd0156c2215dee6a68da67c055c036aa5cd5c3dd7cc7fd512fb35283563ffcd9eaee269c68ac2484a3a50a0675db988070dd441611dc526c9fe8018b3'
'dc742ef9e61bfb43c29c0eea09cc941d5e72e4fec4415f8086681a0c0b418b9d2ae0e1356491a9240cb897e4863363918dc9bb1b342d52136ce16661e1064e97'
'4ca2b0cf09ae688b378f62842a682eafdfb0fee73374292588fcdcfe0c972c9577046b3bd063f82c9235d364c40370dd1c410e9bf3670f46130ab49d762498e2'
'811a9af1e195a1d1d2f54038cc5363b3e09719d8fe770a65ce7e0aa95898a925dc6cec6ff7618c90e3ae28085f436d5fd6ef48a3cabb44e3587ad6d633857fcd'
'13a3270ffb1c536cc9721bb8eb91fdd195ce6f9fa0d986568065be2e921ab4566b83e48719c792ac8d016c885e56da75124521787b441d87995fa5f28f3861b1'
'865a3cb233f32c51599c71ade16735d799bd2892d2b8cb3ceef220fc1495e9e5f47f42a8f77ba329e9d7edf26992be765908fa370c7b71f7a4b63afa6dd21827'
'3ca8638f8ec734d6434ccb9e694dffbfa71a8c6ea8a99afbc9f26247ec2f286f8f5d3320c0fc1b6a8d9072fc9a093f4e2ed25f0a5e69eed58d83637256034169'
'e4e070ec5b510f04d4aaaedcc8bc1328ca65010b3f5e17d43647a074d4aabbe141350f4ceca073f9a865142b8231a9506bc41ad8db2a7c5b4a36fe397eb19fa7'
'ebcdc1f9a4ea19004acfae30b9231421f3e99244110ea54f9a93f58e43eb101eb4bab382d2de364547b7dea317a1a2cb586bcc83bdc41ecb16fbb3347de7a656'
'13803facf646a2445ee1c2ec71e2e2d96afaf00243adb009fdb8999f6b23429f945e6f27330d65b49f03c5e81d10d493eda18cf7d62f43d3671a8187f3ba716e'
'2d79999cec648adb9691d6c75254040862a516a88bdef26e88fdb0e6b8a415412d1aa086f588f6d2753a40ecbf577ce460c26351e85bab2316f0b1bf18181755'
'4a14295b046dfed8d3686b1b11c22459dd6eb97634a48886819a30eb9fae64c18961dfa5ab9c3a4516aa546a9e6efb16975ed0729dc2daea87f253b30fbe1d22'
'18c097eba378be2656853d737613cc4dff25f7f3262edd3f4b63af8ce47510b5dc1bf3d03845ccaa6d8bd6b47c692126fc58f293bcd8522b4f2a0bb5da2201fc'
'2eda33293ba7dee21172b22172162de9c3734215ace3e8202931108d79784c63506f770c6b80d8e6fb728cc0a395b4e118903b1899e927fd549752c2236eff04'
'1291549e830955eba7ada275fbe7c7aadc3b0e22f6e77f2f8553e6eb4ff28e13c50248c006853e6d4e8411d11707fe2d0c4558eca96e000d91245267ca37779c'
'71f9c6aaa7ebe712f432b9217689690767a20076984e27774f84a20dfc300dd7a224a9623086a5d1e1389f33e3c6c373de4ee3137e58ee44c329dd156e27dfda'
'90ed4ae7becaab83cefa2b96c5e7f6d5c0d2563ca7e7f37f440cdf57d1d5d39a7d3b1e3416364d4dbfeea8b611320d77c66d4234f1969a0f4ed6ceb14319a8cc'
'cdd041ff2e607db0052f15bc7a375ae3efefd96b6715cea75bb49f4d5d418a4abde8162159494e70701c2108d7fada5ae43586c57991a7bb2d97442f78f6608c'
'599745c6e4ced4935079d52f52558ac05cb6f2045dfb733e9bdc60141ba120b6c07b726a9bbf213c39a5a3b523ad42d9319c39bb9b284b1a01b3cc67ed6ef2ab'
'1526bca6e02e759fb3bd5199163cd34a94f61c150106a9cc4f6b1211d456e08e0b860c73756e5711f29d545871eed72a1c551bc63f8b1cbf35ff190508631930'
'2c2a61d9a440bde80ae96337a92b25139688ccaa8f7fdac9d5b050dc6f00a34af72cc00523a18f3afc7006130be096c0048cda188a2c47d22e2170dfa38d539c'
'9f091540611cc45cef51a5f3371e17c3b893e268cef14dd37695691ae958c9b6bbaaf199dca7246f4180d2abf3d811c50466111c27bc92281ba8136e058118c7'
'ed7297a4bacb2023496c92039acc3d97c9aafc63578ff5ab54fee7e7001ed7550e2009572004d8aa84038ca8a3a3e29698b90fcd4628bd871505c62846df7961'
'b9ad6f069f9d16ebbd7840c5398dd23d6b96dbe0c1f641fbdbd6b77cc2347d976d40b5d8f90538efc67fd300aacc7793779562f4cb74dae97d3b49ac28f0cfae'
'e56e2fc82b82bc05ce19329db2fa664456ed0bb386cedbb31ee39188fbdaf466f9f57e9bcbbfcab1e713e83843a0e4ec35578f1cb313c0f7268450b79eb1a370'
'af19cf2beccfb3b15f55f9c1a988e14e07dd6091d190af599dc454245afa51adc5e5bd2ce74562d0d93b8e2384dcc1c403bdf4fd0fdcb4b20b9573551193073f'
'ee933237684e4600bdb17e00f62cda4c975c151c79ea054e7bd8a4a6970b251bdbae8f27359677c104bdb44952d28087b9b16b1e7bca11dd076c70807e4020e7')
# vim:set sw=2 et: