PKGBUILDs/extra/thunderbird/PKGBUILD
2024-09-13 18:52:04 +00:00

366 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=128.2.0
pkgrel=1
pkgdesc='Standalone mail and news reader from mozilla.org'
url='https://www.thunderbird.net/'
arch=(x86_64)
license=('MPL-2.0' 'GPL-2.0-only' 'LGPL-2.1-only')
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
botan2
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
freetype2 libfreetype.so
fontconfig libfontconfig.so
glib2 libglib-2.0.so
pixman libpixman-1.so
gnupg
json-c
libcanberra
ffmpeg
icu libicui18n.so libicuuc.so
)
makedepends=(
unzip zip diffutils python nasm mesa libpulse libice libsm
rust clang llvm cbindgen nodejs-lts-iron lld
gawk perl findutils libotr
)
options=(!emptydirs !makeflags !lto)
source=(https://archive.mozilla.org/pub/thunderbird/releases/${pkgver}esr/source/thunderbird-${pkgver}esr.source.tar.xz{,.asc}
vendor-prefs.js
distribution.ini
mozconfig.cfg
metainfo.patch
org.mozilla.Thunderbird.desktop
thunderbird-system-icu-74.patch # https://bugzilla.mozilla.org/show_bug.cgi?id=1862601
)
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
echo "Applying patch $src..."
patch -Np1 < "../$src"
done
sed -e 's|73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e|a88d6cc10ec1322b53a8f4c782b5133135ace0fdfcf03d1624b768788e17be0f|' \
-i third_party/rust/mp4parse/.cargo-checksum.json
sed -e 's|880c982df0843cbdff38b9f9c3829a2d863a224e4de2260c41c3ac69e9148ad4|239b3e4d20498f69ed5f94481ed932340bd58cb485b26c35b09517f249d20d11|' \
-i third_party/rust/bindgen/.cargo-checksum.json
# Make icon transparent
sed -i '/^<rect/d' comm/mail/branding/thunderbird/TB-symbolic.svg
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"
# malloc_usable_size is used in various parts of the codebase
CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
CFLAGS="${CFLAGS/-fexceptions/}"
CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
CXXFLAGS="${CXXFLAGS/-fexceptions/}"
./mach configure
./mach build
./mach buildsymbols
}
package_thunderbird() {
optdepends=(
'hunspell-en_us: Spell checking, American English'
'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 ../org.mozilla.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/org.mozilla.Thunderbird.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}esr/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=('24af7d705c13a0b49b0f9fa66a4d17ce4e95b65cc60f84f56364dc8fb480fb61b80166872e234a3c1cb843624874757407b2d9f0c5af82ddf2bf86de82571077'
'SKIP'
'6918c0de63deeddc6f53b9ba331390556c12e0d649cf54587dfaabb98b32d6a597b63cf02809c7c58b15501720455a724d527375a8fb9d757ccca57460320734'
'5cd3ac4c94ef6dcce72fba02bc18b771a2f67906ff795e0e3d71ce7db6d8a41165bd5443908470915bdbdb98dddd9cf3f837c4ba3a36413f55ec570e6efdbb9f'
'a34dd97954f415a5ffe956ca1f10718bd164950566ceba328805c2ccbb54ed9081df07f2e063479bf932c4a443bb5b7443cca2f82eea3914465ed6e4863e0c0e'
'7e43b1f25827ddae615ad43fc1e11c6ba439d6c2049477dfe60e00188a70c0a76160c59a97cc01d1fd99c476f261c7cecb57628b5be48874be7cf991c22db290'
'fffeb73e2055408c5598439b0214b3cb3bb4e53dac3090b880a55f64afcbc56ba5d32d1187829a08ef06d592513d158ced1fde2f20e2f01e967b5fbd3b2fafd4'
'9897cb0ababc8e1a0001c4e1f70e0b39f5cdb9c08c69e3afd42088dfd001aa1fc6996cd83df0db1fb57ee0a80686c35c8df783108408dbe9191602cddd1e3c65'
'4553dd36a166eded64956870e200fa598111fb970780a2b97f56319a465bb357b81e726f05bbf98cd5c09954e7a19e879b1de3a405bc0445de91ca2b7c44f707'
'688e9fd15d629ab219a9234241bbc731cec59746bab60d1c2201046a58968c0afc2c7ac058501e5f206358b2e76af91ce926974bcbc82b6ca168d09a09ff4563'
'edf8813fb11d6a7afd18b3d2253a41d1c4e450028dea2af61233e1602d98c65304038fabc0047c64aec91f65eb943b11b5b30662e4f3a44d21e04c74a4c50f14'
'4a208b9dff9389557f003f4637171b1e58eede69f2c875a5e9fedd488c3b80e84a7fe989d1e67c0b79e18e93df74ef04aa54d613cd1d01c8394a8d8f51531f82'
'99442d6032ee1a2824a0186a22b29748b1b69b7c59a616438ebc6ddce732437ef8b42e9de7b6034bd3f8c763aa725ff699ec6c608199e6cfcb2e79115b745748'
'1d6408eb0688fde1ffa1de6e791380f5e3fc222a5ca1a971a6e9e0a9444de82a3184824f1e95cee71a97a784557d59473e408efee6e33cc07f5f249ad6039475'
'1c99399e388c47516a22d879cc23b14578c28364f0e957d82a7b92e75ee66922f748790a6522e0fa02073a820dcf0c190e9fb2b9a2087ad65499af1f6caae61d'
'c138049b26928ea03d9554f99a6fa42a641f1bd840e50f16bbf164f15e7a46696651f63fd170ad374ea9931cc61c903606e423a087c1f5fb82fe3b17387c90cd'
'2f289d2d43305b091787dbddd62d4c288e031608e4d3a8e73f99fabad1ee694c50d90d4c6c2fd7e14f5d6cbf6ea343cf794b98133744f7d2268c513d4e31aa31'
'6a8264a6ef7e8646dce804a1e8a9c5d789c1fb16c0237b799c0c4752037d7d9e7695bc63f73c56e63388e4b9f05561e14e434f5e3d6538debe05051630da0cc7'
'c7342d1d4681106a01ecae25cfb1ee485172c9e7e36d10d0e227e24a1a5d4547f69f2f384c87839fcea1dbdb935f97e504d29e9cb0a39cfc6088282d3149c4ec'
'df8f8a6d95c2d698427985daf5b6c5922a4201d5314005adf9d66aece66642901a0fc6dd01e4c34ba54ee7c196897f91c7beae69c7c09a2f040ff4f5bb03741d'
'08fe7553f916fe0f8057a206cd4f1327e7bb6293ca6254433c08a1113a5f7ba83d26bdc6e16915e61bcff9c31ea4b8ed7d7bceb204f1e9cf8815c930aeeca302'
'cd50a58fab6fdb5f2ddb062526547981b44d1193463033d9ee5be7c54f1834adb2a5410da7236678d447442d470f2fb32b389e40fc0961b0d053b8f008ad7914'
'026ba038c4bfb2abd3f26c31ee826eed0d17d00d4ed1e58f25da2e6d6f297ad4e90c1e12d1b8e4e2b908b171ce0cbb4a1057354fc5cee66073c90311c7f54ae6'
'8d2d96feb83ce164a64ed755ffb48d7f036be8e6365b1e1785593cb7bb283efec7f44a6c72413f025fcb2ec2c1a011cb335393fb89207f5f7f30b65e31a0c5a0'
'7552962ef95cfca777c57f4b8109b6ceb0de35387878d140ec4dbcfca556a3d640a0f0049177448d32cce48c17705caa112ceb6409e87c278acbed4f4d3a20f5'
'bb5fb42d34b405058c97e7e329a64c9892bdbfe530748167dec283eb34086cd2be772f54e2d56714eda85939fd54faba7f14677c66817d6573faff541d4f561a'
'e34b4c6c5037401c4d6acb9d64b5984d18ae03c905360f2ae9504dea79afa4e0e9e9d2b93cd1cec843f0eb56945f9fc5070136eff9e4309163ebc4e88de376ac'
'ebfce61496f2c7c202961be85e4da5aa488b1a91021bf911891cff40c32a3abf0bcc665e6c4d0c07d0778eccd0d61df5fd52163f00ab3b914637f705fcb44a65'
'e1ecfdba4e0732a61c61bb931fac430f09642d7641e3cb3da4ec680ca1553a613a49937613a70a520aed158ffdf7f64ca9359c888e11563ab2941101361c29a4'
'163daaaa076f00ee23ab0271249fa7a9c175b6a411f8d3309751e41f02c1f405531b0bb2ae0a29fdad6049ef9c4c8d71bbe479f084e7c98b56bf3be3ab3bda2d'
'cc336b67d0be16c82b4b3fac0bb5fe16f2c6f6fa711c5c0701970a37d75fc4c7869b329183471decd051566bdbedbacb360e49a283c1c116adf881de717745ce'
'09e0f9f0a23c2c52e399d9999873d92893a49c829619861b4f0f72d0dad12b638403626519097e6bd059166752d100c9bda9a4f8a4f47a21478646daf66dc610'
'4b9b3da0cdba5df1a505cd730073d2e8887d4099fdfe7fd5a0f914db2f4e73fab2da47286a84f2eea0bdbbcfd5585f425928b29e7d09f1f050eaf9d3480c036d'
'8975e87497557b9b427ff002d2fd156d2ef4e4b0036836af993f1a7b9c73c632c05d424bdc4e6359f6045bbea725ab3dee993e978b020f0480a1acd96395b2ce'
'3dd3929b600aab5d1a5c9f489fa326b48eb4de1740579e0d948d8b72aa2fb50e73bf337014be7d892c23cd1b2ab36a13d52da9b10dc4e5a220dff06dcf16afc9'
'b02f671ce57339f85098afb41e27b09a516cd903906bd34dfbe199525fecd73cd0bca978464fddef302f38ccab1bc14d862840677e7fbdb1ba9fd20ea754280d'
'746dcb7d355c429fd4c6b633885a86eeb37e300a738c5bcbda4ca91ac0f6ededcf915e9d6a5de54bf7b3c2e463cd86d2cdb7ec2342173ed1836ab19f1137a880'
'028839eca290eb7b02c83bb1bb40ec0f35dcae7d446c06f0366ab7cc17c1bdb0adc0bd72a5a71b6b67a4deb607befd2c5de0372c695d3a1ced5407f8c853fae6'
'e5add42b6ea194cf5b56c7a90118a4cfabdedfac40d718fb3214c6414f5ed6f0427b3eb9de7c91428f0edcc1364637b04c8ed43ecf5847997d892520ac945822'
'16871831e5b92d8721d52c72afc0af6df0a7048e58e6f59bff8ad09b6aee00c0090c465d00f9501ce0f53d3b10b905bfaa1571d3d3e9006385bd22cd1abc0af8'
'17d1bf8d5ca0aedb25bad3e61f4bfb098830a87d95ace1dd2d90fadc030e7bf668c7cceea170ea7d13d7cb80c6e3e36b6749cdf52b970150dc5ea6b9ae1a6bbe'
'8f473a1b0ffd9feec15e415f0c34ba69609e8a8ab271f3b36dacd4866f02affeeb73e4bb975db2375ce051f59969e54fe577591e9f6810e4a5440c659f4c9431'
'b09cb2fb7b904d2048f1c37e4dfb74b9adf4b0b21023c55551ae51121acea85198a594701396e0d9058c267b83e8c1f2e6fc5b31f8fca8b001ed23f4cb5883e9'
'b02d01ef4f9b75a2d103ad499120cd0f9d01ae2b74d8a922463c2c2d42ddc6dfe73dc7ecf51d7c8f5be235107bb1f8c7b484d747e39bd576165eafab2a0edfbb'
'777dd7242a23724a4ce559164c0ee20243fa137e99a7a9c31b1e99587606dcd66fe7d39a89a799ca294b9abdb537da5ede605eaca85b19a35f0cab99b7a11a5f'
'8c9a2e6597246a166e0e5a51ec6309035788925e41a115e8e6b489fe1f6e6d528cf4ef535a010d83260a0f0aac375589e4bbdf711fa9b38b15980cb4db43d73e'
'1fe409f22f094f9c5b2cc70561650ad4563836ab8a3c5cce846376f53572838a93cca38810e75f2b6d19bc44b156e9341f2ae05b5832ef7844b703ce922b3416'
'42539e633382f62b7fc4adf26a87b0842071077f7e6c6262b78f9174b969dc16ec79640cd7990c0bf6761c14f848792f32c9140248d734d97178566417069691'
'd3229b79de9b89f4d668e520f80376ab1a88fc7f160c0d5c105ce4b1ce4fb6293d55368eac7d85a2bee929403386c4ccb143be7656d325ad0ec5e0759885de2c'
'580a7d4ccda3fa278647e6c1354cb9e70737ab6ca4fdf1ea2f335808f46369ca8908a77511dc0ca48c99beb45824afd708c9abb8617c8ff842c7547f2cf62f1a'
'9934e0042db3801c2fad3a2754d19f640354128dd376fc1db835b253c48cc83639be08de0162533e47db48d7869e689767cacad6ebaf136e22b831af587f6cb0'
'8f225825aef220b637fddab316e49d9a05535b19a83e224d6f7fbc88b56d100e8659e9c51658d2d6d082ce02b5db4ca4a4cfa94c3039a22d68df5c942ad28fc2'
'1301414761d65b83d01b2605a70355b522bf66a2b9a01f7cebae46f8ba1aaf131d98b2989e2e740de2f11cb69067192db2156c286056ddec50bb42475a98641f'
'582a2a94f3a472a930561d0a2d297d30d0444673b3d188e6cb3c49999c99a90783dd9671329db625a619ed349b016ab0a1638ace68be065fe2785829d90fff0e'
'fbda48a6f95cca8f7d02cebda30d2a129b113d4dceda4ea3a4fb1bdec837f61c91e39baf1a3677e0fd16cad49a07a59d8db9ff44d810bddd6af00b7a9981c048'
'3c48f173e48e67a66668af76008da90092fc02c77ec8625fba28218fc693931ff8658adc5913e318900b02ae04131cba1201ba68c7536a1cf8470d38bcc8eeaa'
'c80e6909801c63c0db8e7423248e74bf634bb6efe14ba8e04ec69f9d1e95a1b8a4f37b44144e3889c3daba6ba2871542093259ffa62dc6e981c05a25bbbe154f'
'dbc3f1a5b827d249ea7899ea67ceff9055eaeb7fb94c268d26829a056b7e377eea20ac64e685133ffa0418fec3b5114fdac53cb4f21de3006ee0994955f473da'
'8fb14d376d25fc7690eb9d7cac23e12935d39809d481bd37038cf5993996e8da9af91369521e736f09e13891dbe2b6ff87538222500feda2166b73798ac5cc0e'
'935bc5c8c88c159c1a7179aab69dd1d3ea6507067a9341760ee6e8e3a6fe0a25d8b439d92072b031cf8a675bb47bd7b4d56c26da6a5ab738402247ee4941c497'
'fa96809c273f08e93ee833eb64b923eb50c25a216ef69550dbdf7900d801dbe8baa4b87c00f1d08b0f805a7ba638174f03a5bd74db64e8eb7cb5bedab089d2bc'
'5a0ff4c52e61dbbbf87a3b012a3031f23a993d9287bda6cb9428e1de36bd0ccf93f0e1e7691fb234e696ac69587d99eff214699c7f0019ae261242b80b0662f7'
'c29b762cbcc86b7cf732207a86fb04f548d7e2de8051381a99590e02f49a310fa647af08455172f44f74c095ced5ec301133f82c2d3151534da8903d6c73f6bb'
'aead8781d882e5afb0a3751ebb37dc06e510b028e03f8653d197c7cb6070f958e023d8a59e3855bfcf87be4cfaa3901e53f76ae7413c84800f4991ca196790f5'
'ac7714861e3384d0811eb6becd95d5da87bac4de8df2f78aa103972918259cf3e0947cbfa47eb355463aab3aa4be5abe80e127a61bf880994e192d635440636c'
'ebd44f3cf3c257fec075c7697246337bfc1fd6f0866947457f975a62e2d57299e77b4e31b72b8340dffb494c1cbd804e773fc0f462d0ec7ee58573ceea027703'
'c9c88a315305f76172c7df4dabff7cdb399e2eeb661cfb3b14bf489ca3ec004dc61dd70752436c9b318afa23b3984e697344b1cb1fcaeb7cb0fc92e11fa9de27'
'00959d85d4cf38e203bd27dc1506ea4e4b326fdd3fee6973282180c0c04fcd1a3ff41e196f78c924fb7a666cf644f335523072e19a5a2790d642d1c97839e6e9'
'd854fb027d13d24fa4f4783880f76531c2a08bbab5cab5bc041e42ac36954923b797024d99d7c36c032565d5155d6c2d147743cc425ebd8ac2bcfc2179110899'
'647dfe19d2866e1455d9c21ff0576f7a6ee5a780f5d07ca11cc02bade2a50cf42f21270d573f74258feba2a9adbede415fa4ae4a71e87f77a133e8931c259b47'
'162d5a7ef2e84e55424a6fcb14d18999d0b4c781045180a30394d7f767507dc6b1b084b2d4f3bed63b11d605560bf1fd59fbed7ed0d1e0dce6e47511ed7e6a8e')
# vim:set sw=2 et: