# Maintainer: Levente Polyak # Contributor: Jan Alexander Steffens (heftig) # Contributor: Ionut Biru # Contributor: Alexander Baldeck # Contributor: Dale Blount # Contributor: Anders Bostrom # ALARM: Kevin Mihelich # - mozconfig changes for ARM # - revert change for clang that breaks gcc build on ARM buildarch=12 highmem=3 pkgbase=thunderbird pkgname=(thunderbird) pkgver=78.13.0 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 mime-types dbus libdbus-1.so dbus-glib alsa-lib nss hunspell sqlite ttf-font libvpx libvpx.so zlib bzip2 botan libwebp libevent libjpeg-turbo libffi 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 ) optdepends=( 'libotr: OTR support for active one-to-one chats' ) makedepends=( unzip zip diffutils python python-setuptools yasm nasm mesa imake libpulse inetutils xorg-server-xvfb autoconf2.13 rust clang llvm gtk2 cbindgen nodejs gawk perl findutils libotr ) options=(!emptydirs !makeflags) source=(https://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz{,.asc} thunderbird.desktop vendor-prefs.js distribution.ini mozconfig.cfg arm.patch Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch) validpgpkeys=(14F26682D0916CDD81E37B6D61B7B526D98F0353) # Mozilla Software Releases # 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 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="-j2" CFLAGS=`echo $CFLAGS | sed -e 's/vfpv3-d16/neon/'` CXXFLAGS="$CFLAGS" 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 RUSTFLAGS="-Cdebuginfo=0" } 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 ./mach configure ./mach build ./mach buildsymbols } package_thunderbird() { optdepends=('libcanberra: sound support') 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" 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" <=$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"' 'fa "Persian"' '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"' 'si "Sinhala"' '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://ftp.mozilla.org/pub/mozilla.org/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=('daee9ea9e57bdfce231a35029807f279a06f8790d71efc8998c78eb42d99a93cf98623170947df99202da038f949ba9111a7ff7adbd43c161794deb6791370a0' 'SKIP' 'a0061fcb2a7f66061e336a8d95948592f56f4752e56467f14ba63846720ebf845cce7511d1a2637e3b80d5a1ffdaa2fb783fa37195103425ef65222d45372012' '6918c0de63deeddc6f53b9ba331390556c12e0d649cf54587dfaabb98b32d6a597b63cf02809c7c58b15501720455a724d527375a8fb9d757ccca57460320734' '5cd3ac4c94ef6dcce72fba02bc18b771a2f67906ff795e0e3d71ce7db6d8a41165bd5443908470915bdbdb98dddd9cf3f837c4ba3a36413f55ec570e6efdbb9f' '6048bce2bae535007422854affa3cc2cc588e6029ea3083aa4817795beb25dc6e2726df082ed0fe9664f328d68b2f60e2619b87c359c99e73c9ace3dce0f3176' 'c25883c4860e511a99d9fbfba5b824145c0862729101721605725f609ca2a41848b741dd100eff390f57031dc5f14af3ea30133de30f75cb20197c420ae20972' '8ca4f72f1fc0a7fc128f05112d8f77be5350826010069ee3b787989131f02b82d014a4781e97ebe5694852c4bb5e87bb5313e562cfb7cb2afb6f904124027e13' '30f699ccd68cd577b691439a3769ecb6eadda84352cac52d27364527a61d77f9584ce225ab871bf0ca76ece6e65fe939021b09c4adaee8e09f8635d326cb4d96' '678c1162243aec8e33a0fe09325f2856dcf2ba447e91a5283aa766c65285e95e7dc66e609a6b5bba9129cac393f09fa7083fb7c39b2d7604216155d9f03c2e56' '84f42514f68228cff173a0fed9b7a54859a716b8bc53ea657241fa9e28f16161230c14c4b32e0c5208386ff47716244837130f2785f7eba3e1845a87b5904dc1' 'c060daceabf1801271ec777e1f1b7b380741e8eac55d0ab2060eb38dc4de040a79c99716164ac7476af977609a30a0d9921aaa9e5f7ace80c57a0d5a056f0f52' 'bb2eaf0a35075d070b75b752bbd363ad3e723324eb94d2c6ee6615ed190177235a3d207c48041c1ee932cd0577116d5ae8432504324b25ce2f53b3a5bba21d83' 'd98d5a5f8958d60371835ff7d5674f45e14e7a5793596660eda73a18c28c73e715e240718dd8d88b1c1d23c18021e86fae0965dbfc6d294a629b6305ac05891e' 'c23f3092af1a04fbe5e1246b0f3ceb67f7f05c8e790ec304d46d0e27d62bfbfd0949e63165a2c93b40088a9e2bc647ad581804696bdb294d2f8106812f18f640' 'ffc35075701a057a399bdf4e8b2bb6bfb7dbfeafce9581fe3a5eb5a79ae10c5bd0fbd98616f1a07f160c5d40fdb5624173cbd07d43a2e99eb3d8d9ff0aaea9f1' '4832783b92a99b63f0df2081a81d3d216faef00e93117cbc4e0c83a4beaa91e2094ab8ba39d089a55847044b9bee7633dc4df2afcf2ab25cf1a31fc157117bc6' 'eb78878ef39c8fff546e95d2e9db6cb3d8d560556bf89370ed64f729570a3148f407c0a7fffb61a881332fc8ad41c56d79f0e7c9ba1b0b0d1c6bb724e675bd83' '4d47b59f2ed2a95b23bd38b0345cdcfe2a1ac4ebeff10a78bf104a7d21f4e9cedc228f34c6a0996ab3836135d38fd2a9d20c286810e3c94507a7ec1d11f7a2d5' '591e357eb78df67bee1c1fd483b1a029e895212603058b3bfe8724c527277b0f09e3618eead6da4e39d2c5cae26ca5b4fdf8823e573a6ffb4ed8e94517ad929f' 'eddc80a7cdb8e5e6f2a3e625c6e3eed8f7547a557ca54742b23d392d871d6d2dad183521e3b9fd550712b8705aa69781f92bd6027334ed94a201bc7ed03b4b74' 'cc3020ca79e9c252c59fecd1f509ad306a9e5a6b81230287c48b2eb2c94beab635a4114010baf99f248d850a80ce27b22fa0042b6b4aef2950168587e02ef257' '7ac4585b3ee74904b9caf3486dc4a7a3e27e3543c388445e54c5761c208dc96ecf4cfcf2cce6b0dda820b9c18db8dbc79b6899d5e93c6cd6c1b4e287552a319d' '91018c03a679d506f46d38879d6c404bcb171d58cf6728226bb721c0e35ab71396f587e7f586fa23406e2a07361edd69699b4c966177abb1c3f06d1d445aebe9' 'af1b1654af730a14858257a98290bfe352136ccc95520af4cd32165b055ca6ded30b5efc137685edc7e5f9dddcbb89ab50facf1cbc422811f445f92c2a98f8ee' '89a6d96fcccfa1bcd83db5c7945da302c0251c7391c211b8257b8965769aba5b0751fb443a1fdbb29b587ab6671b48a3424db05fccd778269c987b53448070cb' 'fa4ab13f138587263db93a4eda5076c4159a536088303ef98265bc6e48db2b7bdcb1a39b2904ad8f91ca591beba9229241be796879cff24a23b161f701b0a771' '72bf07ea702c533778847461952cd9c321cd4636c289e34fadb5655d30b55f2f364cdb2d044233bd2834fb423214b8a6c830301b5f563f30375bd52603f01db5' '8cb51291e3759feafd4cb415e95a72151072a6b2e96663bcf051336c7e85c176ae44dbb69068b504887465e6e5370a32779201c28a17f5d3ce7594cb124a359d' '9240387fbe92409c3ff951866047ec323efb831e5da40fd60b231a252b205b907fd2eb0f2899f8d4fdad68d7cd618cded9972888bda67a27ef1c12ad0944a9c4' '7e31faa3028a4bfe72ba457f47917e314218468d8f38a66886300295e6aac8ee911e875884e1d1ad1f7b8c4b4bd63615c5915fe22e3c08eaefb8f8e6798b6845' '4928f532b24cb429d4daf2125fefecf90f3d7b6e32c93cd4b3db90c33e341891bf32da64901844d3888d1613ef2352b3bf286756a0782b1d8ae3e37afb62e58f' '836ad1541b4af13db65dcf663207a4b05129434306742af0e2ac6fe6e214f761b0f861957cdb2d7c12090d07d773fd008a910b3fdf2d62306e5b3798808ebdcd' '4dc5739f44049281f3ba73ef4a107f4dd377cce6fd6e2ff8f34cbd4d49a17cac32f3d867eff989e6dc3354331b8295f81e945bd92aea585043b9a6cecf25a32a' 'c195a95b07af36be93bb0382cf2904e80744d0a70f5405cff526cb6ee8cfc7dd32a5f24662964a32a0cf56a2c87abe6492d1c1eafc7484fc5f0de2292f6cf245' 'ac69f8727b5586998e4a172e4c4dfc3246efd616ff41725532f72c9a06db6c58b566cbf60bee1f80a35a92e393195bf95e79c1820e9d19a44a15a7160d94ede5' '506c9261d5b8bc73da2d3db60e7c8490672036ecd4a54e2a5e4fe059846c8c6e15708fb6b2f9a1514592fc1b68dcafe3ed5663a055d0d65b92e9bdf91678ec27' '04d77a7c395b263663e715f421ef60b37a3d4215db31053efc841b573b9c0f630fb482d0b19829fcb83d679ecb4f4e4b38542247b76065f884f9058ecce549e1' '4cfa926f8330507c87a46dc2203b04b5e75987a3c86128bbac6e5a862ee3efdbba5678dbc134bb69069e3334663fd727153271251a59ebc64addbbba9accd9a7' '477c117eb3a711c7c13bea74df9471254938fcb605f2d74f0e14b8edd5508b1ad35a8d27a366f4b7fc925902a898361410694636adc9603a35dca220dbc541ca' 'cebed09f69962f0e1d487767c7a186ff714a10bb6ab9778fbfab6119af17079ba0b3aab988f05b7c7cbed6ad338f4c4fcc74fcfa103ad1f844059263371d9f32' '151bfcbfbee399e55a17a1eda9333f7f2851e541abae8a1c3301c3646123c7bf6bcd9a7276c1f47d3200a47bb5eceff6cbd0ca439d42ad9eefb7c9793f77e3b2' '544649532f46ec981c49ba33d036b4552c5e421c2767fe6bbdcfeb0d847af2edc63732478797c4f9837f82c752f57df01d8750292fb362ede7d189b54f88453c' 'e77f843729a7a26de4362338da1de7843946833d2f266535e001df2c0eb04e4e0679abd3c092771913ef43212aa4615b0f195069775e4121821599a84cd64b96' '094db835f95e328a5d9c6893cca5760aa55e8ffff6b694b0223dac0360e0f01cc9fe3c210c0914d2ce100628198305a7623029bdc5138410c0426887fb6bb5fd' 'f96fc8a3434b7ecd6c2059a332ffbbe7b4a3b0a62a060cab1042f2169aae5d82cf9ef1d128704c35ba29933e561606d20ff6072a99e849f1ea6d2de1ce7fd3df' '97a18b88670e9cca85b513fa0f2655a3a3123d1ab107892558baeeda10c30db91b00ed06a66b4f190687a645eb50269d02759f76c1e969e87043a2986ab25229' 'e1a3a1af7d65380b317d011a25dda38dd8f3072b7b48aae150aca4fe1becac0c15fac54170e00da7ab70a7ab63f805edb63440ed07c85cc3b0c9d6a8c079b077' '4233e0241bb4dcfced48e85a1fe97c8393d04ac3f4e62acf991fbaa5df622642ee7d228ca27116ec1be7e4a1583c90d854aac15ce43e7495d393bd21d3e1edb6' '4286724cffc9cb8a8680b8c8374e36e0cb8bf6e9e7aa1d852a15ad4e124175dc703c4e5bf21e26b14e96fa079237558eb8df24ebd87cef4ebedd2e211e7944b1' '4f28c4dc3db49ec6201aa37701c432555280f0213127dc0f9a2add86e9be0364b7bbb5380e7b6a8871a9193c61824eca0c2fc78428c7f43bc506ac206b304df3' '7f8411415a847397519f80c9c23db36194ce2afcfd0ef4f9ca323a15ef8f8494cca1c18bd63fe7e0ab3f5c47e0cad79eec77ed4883af948d93e4545444cade74' '0794a4bded60b9c5d052c95125398d3386dd5ec2c224250866513c10e286e338e6d477b6d26f0cf237944941891998003d163cce900a7f35af196c2530322156' '5c527bc28fb15a905f05c2737aadd61dac7b5a7bd9dda03aeee56f3fa46d8a141fa88900ae70bf4a35ebfb0f7995cde317e5bfe7ce0561a1c5ddff8762a86d7b' 'cde03f478bd6e5dfe86d2bbaae88bdd27a226db973ce88772d1b390c7790c6a050eb0a4e5b4871c38a50731f73140ecb4309664af093ecb9495997471d70d3cc' '04f289454f0c12403613f4ccf228b08fc2e853aeaec2d9df3c376ae72c3c7c1ef9d2635b1888b42be4cacb50890ec8a384c616f8137c1304de9dcbfddf9a96b0' 'ac28ae98a3e7cb9e5083f2588d8fed3346899e490c5078a7c98cf46a3ce969bb0f99fe0fec551d8e3783a2b145dc9518ce918b810c733a90c0f3bc78d05d28e1' '531db84707ee47d42112b645b6afb91d8e882e2bc6c8ee12d54fa35e229e9c45132e2a3bf57c2bf247913f7843afa23748207628c528ac452dfea237cabd4d06' '084ae4c7318f5623e9de8405caa0f699ddd52f1a17e62bb6d1e81c7c9a8f9e35a200a398377f1695f508b884bbd15ad4a9b3e067643d7aa3f53252d9eb42443b' '4b297e738bfc6d249b476285b1aa86db4b125827f46ca3a6f52edf7ad24aaab03024b5ec734b0acaac9da2ed9c8d0315e9cb12e78025ee1626f551d77877a111' 'e23613b27add7e7d40defccb1a3428c018695f517863e18b00d25207e145c294b7125866dac9bd9447ea2e94e165594effbe711edd14418a379447ded41652af' '5724c02a4ff161a7dd90ced33e8f4ec56635102a09bdace8a04e71beda2be065c3fc4e11f5825851120213cc37c62ff02c1461a6bc29933d2100ce6adcebbead' 'e8e1ace4d1d4df4bb045ce5fa164eab26ed092c03528cc9f668013e1a6150d202c7a982ac70c1365e481b31d7a8ceb97f477d01a31833f487b743ac91c0901c7' 'b442e9fe81520a48c37e347741db5b21e83c4077caf04e25532cf4084d293bbb44565ab48c5379505f065ce251531c995fbcd08cb770d47db259a4d34f3d1aac' '1b360470b523f0d8408be81e8f10ac6a30169df3962b4f52a8290f3c254b1f8acf9fce5dfaf13c923ea442fef8c30b7b247f8a8b060de897c9d2723b4917a3dc' '8c6d4d7f6e4e129723bc02477526270d40e51b5c32488b31fee9975b781da1df906911ff02936f74a9e569f93bf62954074bf449e361219f0ccc409a4eb177b8' '58f6d260126dc743b4b8d1ba4883f4b56a20a7c9b0560ab2cfe34e377bfd7853c381fb522c70a2bb73b74599b39d3f7a658c939d4c0bd906917b831702cce7a0' '5ecb007400422d70385ce5b13e0751b3bfc904e4da54e155d5e9dc3165ccc50640a812ff91306e0e4e54759097a2abdfd7f6aa8ff3cdb6dcb7bae9a56aa5a92e' 'f91a90200feefdfa3738867a594be683b595ac82aa12a2b881df8ffd9c9c736a7203765bfd548ce86300aa7ba1893bd66794864a73b819ac17dddddb5061d2e2' '8d74d5ebba80eacb4a0090554e2dfca7fbbe2142abad59306af1f14d1e86b857b96dee6ba419132e6ba316959e880923ec3562a735c53865b3a017c811cefead' '8374b23093d1e13634428a6dd1517720bb6fe7756d90d4010b6116b1334f928c6a3a0899af4a993025cab46ca2b88569384dd0af573b5a84cad1402480dab824' '067fbe8bec14e682985dfb64f2bbb6ff9d5bb9a13d333df173aace02345356bf4c981a5d0886ba750c3696920231c0ef75b01a4d938f98884ab8de0f3af8312c' '86ee904bc972273970594e1d531287cd4dcb6a3fa9513a6258366d40483e8aed1e1bed427e129caee75d1518570c05a9022e1344d3739eabc890e4ce704020d9') # vim:set sw=2 et: