# 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 buildarch=12 highmem=1 pkgbase=thunderbird pkgname=(thunderbird) pkgver=91.3.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 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 ) makedepends=( unzip zip diffutils python python-setuptools yasm nasm mesa imake libpulse xorg-server-xvfb autoconf2.13 rust clang llvm 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 metainfo.patch) validpgpkeys=( 14F26682D0916CDD81E37B6D61B7B526D98F0353 # Mozilla Software Releases 4360FE2109C49763186F8E21EBE41E90F6F12F6D # 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 export MACH_USE_SYSTEM_PYTHON=1 ./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" <=$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://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=('938de817ed2cad90f665559da1dfc266f34b6ca2e688ee364112edfdb1167183a8225132ed50b672ceb14402be933be82fd1ef8b46f103cdf1534a403fb472d9' 'SKIP' 'a0061fcb2a7f66061e336a8d95948592f56f4752e56467f14ba63846720ebf845cce7511d1a2637e3b80d5a1ffdaa2fb783fa37195103425ef65222d45372012' '6918c0de63deeddc6f53b9ba331390556c12e0d649cf54587dfaabb98b32d6a597b63cf02809c7c58b15501720455a724d527375a8fb9d757ccca57460320734' '5cd3ac4c94ef6dcce72fba02bc18b771a2f67906ff795e0e3d71ce7db6d8a41165bd5443908470915bdbdb98dddd9cf3f837c4ba3a36413f55ec570e6efdbb9f' 'd6d08cfa221cbc4ab8ad3426eea860348e9fdc5b7545cb220484315a05fe1d475fafe60888b8ba16ca281ce08ac3d39bed85a40b8952a19923c9fc995c9602e8' '7e43b1f25827ddae615ad43fc1e11c6ba439d6c2049477dfe60e00188a70c0a76160c59a97cc01d1fd99c476f261c7cecb57628b5be48874be7cf991c22db290' '7f6cefe5d3db2bbf4aa640ab4b68b7b0189d67932821b53eb73a1a2ed274e816e4fce0b6dbf20da4f9ef4d5be8faa58bff40cf9ecdba7322aeb3d22de7c2870c' 'b79d8b4479fd5142a6d3428d501143ffd93706abf73dc26692218e937e207fb0dc488041cd57d8064c2f350de1cac5fc4d806b2a72405fb92b2c519422f12256' 'fcfa5b390a42b8b6291ca9857d7d739ca008519f5806fa398abe1adb4e56c31138009cfc601ebc059662c94ea0cc9017333331ec82ea3a635a5ef398b0bf1b70' 'bcf93fa2301040b1748a13e4646b97d05bb0c10e9025fd2342174d590b477320af97d86ef6042d8d96657d56c1ec9cbf6090105570622d404719c24e2dbb552e' 'ed60f6c43626f95dd93d2faa253c9a2ebde3dbe704029a0d04c74f185724cdfb5c2feea8ff48402804c1028041bcbf9adf17b9d446a31daf52a9aa4bcab5175e' '1571fab57c770d79fbb6988e16c871355c8526d7048c55b456d03ec6b4ee39fe1acd20c2b11396418288e2369aa76cf5bed2f3911a064bc9cb5ee2265aeaa2cc' '2c80e53b5095466a29cb82e4b5bdbc20ac8dd8074cc84aff2331326b763192a9a255b24f9e8c3cdfc99af390524e8c7f4e6e193f5d8f69d677d6f59826ca503e' '43889478b3570491190228d166a6b7815f944b2d2e77d0ec8f70d00b32665b5c812e5479a027a1a947f151e94da9573f0b8704ccbf30419adeb804d6a4fe200e' '829b66b45283ca27e6fa941c20e88590c0733d464bb36e770533a480f3697dce4303dfefcba7934b20bb93e7458d948e379f0da0ac9d6b50093f3f75872a51f7' 'd1507df70b85fad42c6fa06fdffa9dd99c5622e458a1032711cf1ffd4b80fd19d42962baa20975dea8115baf85f192b5c5e6a6de8a52a08abefcb21a16b9ada7' '4a78713f8aa026eb75225c227f707ebc77f4e4ba9135532de5721bb79e6d060b6c7d805ee8ce8da504627efc4e342623ae6b8117ed77058835f1a7da7f925be0' '2c75fac16e2038b698dc07ce92193d458d183f809437a507a61a0c93673e665f6b3e94370f7572252878bba26959c58415a55faa8b2a7aff31a0b0b59e4654c9' 'fb8c4a01f40963af8ce7678143ca47ad8b23e310bdd7d0b667d23b04256144f626d9eb387ee3a3f63ae38cff952058c898d2cd4f97c63f9f0e1260cce98c2c4f' '29b11326cdb9c1c094142ffe4d6db9e2ca3f1f55357934216f7bf20f2fb3faa651c6307a4f11d96fbb02bf3840f7e6270cab77bca4a63ef98694ff422b667f4b' 'a67bd60d6604cfd72c59fc763860166d914d96e5b338368f6072ad1968394173d814516d99e4562a52f7bdbd8f2a5eb0939d4042c58eee22b4c33967e3055bb9' 'c0c962e9ad8c54ef2ee1ec853400e74b872e7bce20b6fc0ab875cffc50a2d3ddbcbf2803651e35d0251905c5fb6381e0a81903cdd5e9fdf8379ac2e04b477158' '934886472adaebe4d7495f73addeeef63be15e20f5c1132373246ff89487713e2b2e39d7570cfe119bc65efdd0325b77b996101c6d0b427006ce7047902b27d7' 'f9c66c33618b106048848a590acf8c13550d47d118fa3c1b71509f46130e95ea9670558fe2f80aba1842a78a06664db4cc1c043780e3b920951086e74e52e5ee' '3e0d2902af192234c0c84407d45c3f7d25bf55a8d02a56d6c016f5381305c599bab74f9f0e859fdf47ff87a458f10479f6e3d0b1d8a97ff1e406e68382e23259' '009f0fa7d365c3b58dc5aeb36dddfd8ff799abddb015f8e6303673c1ed3a717f3f9f03ceeb6e325675e58d0d3b3bbf430b7e6b7022fadc1fb712c613888b0604' '8bd7aac9c47314870b6c9fc7c655bfc1ffbbbc6652a8052504a3104bbcf7994a0b26c63a65e516027ef3417ebe908fbfb8b583366a499b1550a86d8fe307e30e' 'd10e28b8eeed85da5f8c36c8332e65e1028a9243cec4eba414bc3439a9bc40893618a7e85cfb9746f0c6871402a085c197a4d953329da48e5bef023b047d11aa' '3e63f969f2ad8161d748f53652ab9616fb74b71571e6a655df4b9a5e7ab7dc55d5906d24b875f0b975976da22f7f627284afdea2b2a046a05e6144dc72520872' 'b884915a7a363ac8b919ea29581c0a5eee952b42b8446b1e13a21dec218eb7706c172df79f53021934aa831cc2be6bff9017fb6c1c3ead20f9b41061849ecf46' '3d91ff2128d0709da4c46f3fc28807542193b0274cd8e2aaa30ce78afb459cf1f24ed79de4450135396d4f77eb22dee8a8ad719dd6e7b5fa853555d3a69f4045' '26c84b7e95420772c46bd613505aba7674e698cb7ddb2ca6bfed196f125cdb59ba02d8153d85f68b47168781072793702639b3400c14629b7eb9f730a3afa8e0' '6d16c298bc14033207bc529cb537745c817193355b73e01b380e2ed218c0152a8bb493087e0a2b46afc36e9415362e59b86731aa098a2461d8a365d089a318a9' '02f09bc15ab2e83ae612fc7c30a9ccc4724fe53b2178cdf5ffd434a646e72bf2082d6867442b627f97df66b72a337850735e50640fd0db1da9b6775119ab0c18' 'e601fc09ce1b2b6ce899aa2653ed38c6dcee5ba481bbe91f709ac963fadbb8bfce7aa83bbab052484995a0a54d90c18e298df0f09e42d090232f09cc4d8ccfd7' 'c3c2525ba759c93ee10d9534a7b6142f11282ce32c9379887a3ab8bce4740c72cf8424ecde67787e8968ff13bd0a2e885b24b97a986a632fa5005d7320b4e5fd' '80f53c34609fb434af7b3e2af3a00c5233dc85bafc850f97b51fd5aa36761ababecb577a3081ab5825906986d6064870096d90adbab6f6804a99d97d9d102451' 'ecd58d868b2c18c8a118b3bf232fc069ac657e868088d94b2c854b9ee30324a33e79e52405aecf70c83673484e07bf2fa0f65ed630471f601dd5467a74505b9b' '88bffc408815c9a11816b7a95845bbc12f16c8b84d0d1b8513a4712e897e5f1597e95bd7d5531af5a3a2aa70cf3a57e64010139050dd7250a2b4bb57f9d8adec' '804729f19ad0132c9a6b6167495ee4ee783c0d376f3116ee1f9efe4f65f6f3d63b330133ac089c415cdd7927c786e925adce3c65d2d61050be6bba6a30b27fe0' '5daf35119196264acea64ebd1487cc862edc9dba8992d4ad34f2392b685d595aa186b62a573005753e5fb5b9717ccbe38d38490d5f33229a627d19976ee22b7d' '16d59413d470ee92d0b6a373df7f243d2e14389fbfbb20b432e4eb9938c11ee276898d00a036c60a2beaa85cbb0c894050ee201aa07074157661fd5d9a23c169' '34a2efe01cc8d3e39e17ec647fb9ce4fe2caed73cbe890fe5658778a649e7ef6c284ac82961ab163d565f4c02b02b4433c561dde33b60a8dbb6cce9c1a744a61' 'e069c3b5fa2674c8dc3eee46956c829bd2bd60d4611013da8918950447b99b00a55c25ea099c08b61f6851fdb8e33b9a2493bcfca413a813dfe2e253cafb0321' '72ea1b67ef18144e847059c90e6caef3f7c1e527c458dfc66a56d706cba9f3a6cf185c738c8c5bdc441f9d91cfb94c5a1f3baf618388c519e53843a83237dd36' '752ef9b1a413fa585672d1e759b77bb0215c913acd1464cc3e1d9471d2e4541aa12ea1e3b697cdb61aa26d090b74cdce901b2029fac83024053b5cce587c7ccd' 'cf7ea2e2071d0d26c6b0558723132767facee1ba7c0997d7bc8d35b32ce0197faa3ee0d57776b776b62df4b998042667039511c86d3aac23b67194422d36fbe8' '0dfcac57d8f9bdadabc1d9dbe000a852ab2769825dbddf215cfc9f18252c1c583e94c9867f41f77f7ee24cff9063eeaf91fdf5254e4d1320c98dd950f5554a38' 'b0fecbc04f611c43d844b6dcaf671ff254548b9893731124a09cabd90e15f960e23fc1cdefca0c0b337f114e0990d35050ddc6f3a96868803badc14d7e809b74' 'ea71f465424cec5347a5dcee6644d80c441e5c7cb4ab51bcaa458a8da108080d99c9bd64e363f72407d6a5feb86fdc67f7296eb115f524bda896fdcc10939b5c' 'a24711a523955c3d4e52742c37939a97ad0831bcf6e81bf58626f749867ebe7efc15472698b4fd8290a3b08213aca3e4a45b474a797d3c570e2fbf8a881c5f2d' 'd8f89fac2cc8ebb08e4c5acda4178b07cfcce1d41aa8be2f4a5996186039ed3a84f35e22ef176c43d6781621aabc2665170864f487c9b5ce09215deab163fb0a' 'da831d06ccfcd3493b70d614240e5d8cfa83dc3e93c3b6867ccc0b2354b98929c0f72a2017aa8801cc2b152fa3f87f4fc2178e2625f1419acdbcfbfe391196aa' '2929806aa95834ead922b0adfeff3b16dc155edff0c3479cf9e587b8f6a268bf1aeaaba25c6d415bdba383c7ac346c72c2588f3a2f4b549b455c830de19b92ef' '97adf81600b9ff067062a4697bd71962a03db9221470c102a61af3e29e4276daa755852ad71a540e4d0fe8f4fd6d82beb06724af7d00214c164cd51122be4c2d' 'ded27b8487498fc0ddc5c15b66abe6f27a61b762f2933765e8ae2cf36f7c452b457cd0f5b1531782aad29510261a2e7ea2c7b87a6ed5a2706ed6ecebd3a1d4c3' '65d4e61e529da7f7e1cffc8413fa10eaf86ffa4efdedbc90bdaf45704bd6761c955698e94b7d2adf03b2ebb608ca5ccdc6d7a0643cec7b2d834ad6766f7937a6' '1f15e7716151f6dee469d8a1f1f5104a77a72b9ff0746d30fa484f5338cdde7679b3141a395715cc649df16e6d5b48fee234a21e31458f724194e587be32b098' '5cce8c69e3e6fafa784aeffba1d0d4515be697a11557ce9a04d814bd32c41e2d4a1ef88867b7f50b5e0b38cc0519bcec054f793ec27d3e159e14ac11f0fea8fd' '1613ed8f74cd721ef497bf8b68e5e6ad07558e46057c3ba4ac40b39b55f45f3e21737c401caa5bb118c560e50c117eee11ad71c01a367cca339c5d3da654f660' '03fd59e6d3410298458c8131b8f09b7cff8869e82dd2fda935f5ebaf3b517633d1cc0e997bef009714b2f95388ff25cfb5c7f354fd81fa2afe819132b24604d7' '0463dacf3a2c9392243e3716390b2764ff9e0b78a42c5b727740e0696fa008d665f408b9e0d7a72b4b6a91817ff9c2cea2a22fc3044f64dfe83e5b265d809750' '57f0d36b5d16464ce6bbb634bd1f604c9df3ba7f05d23f92921d8c38e4ad8fde65af25836e9d357d9efb397e3054832a551e869e9494125a7862c2eca5a218f8' '46802ce4488eea3464656e92b3f7682269647f166c29c76d0ab46e0f31231ad2ff87125b511d232b53718adf7f22dbb20a462838abca83060b93d8045b689e27' '5ff3bcec5e1a47ec0c352ca24da81432823d33e8ccd972cafa78fdcfd6813dabd2628511b3d65ed90e55b6126016d9fc123729f5664a0611c32684cd05e0e8a3' 'dbb5afdcfbdacdf644387626557bc8d88622a3709d454efb1471fc5a7d0a426a32ff1923996d22bd0ed62fb386ca226e82ec7e192f7c47b82e6df8830e51efd1' '688f34b648974085d70906886a612176ff92e9cc9a7629b5ed23ff2216dc57a41bfb32218113bbf0acc11271b8838aa4fa300673d3cf23614015d82e9a50ada1' 'b9b48a34d9606afcdea5a982d545bf516faa8f76659380918a8f05904e38f4a43bfb01ed4ea5b6d36c420fb1a0515acabc253a02fe656d2da63d338aac8de113' 'b8bc40cfc3cb7dc6fb2206d485ef602b725cb2346f5ef6c5223f9b2bb3a0a93800eae494163018b44bb2e4c9581f90039fba7cdae7ebee849ab68d02cc70d4b7') # vim:set sw=2 et: