summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD197
1 files changed, 134 insertions, 63 deletions
diff --git a/PKGBUILD b/PKGBUILD
index cf4771cc06ca..59df103f15c7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,40 +3,31 @@
pkgname=thunderbird-beta
_pkgname=thunderbird
-_pkgver=95.0
-_beta=3
-pkgver="${_pkgver}b${_beta}"
+pkgver=95.0b4
pkgrel=1
-pkgdesc='Standalone mail and news reader from mozilla.org — Beta version'
-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
-)
-optdepends=(
- 'libcanberra: sound support'
- 'libotr: OTR support for active one-to-one chats'
-)
-options=(!emptydirs !makeflags)
+pkgdesc='Beta version of standalone mail and news reader from mozilla.org'
+arch=('x86_64')
+license=('MPL' 'GPL' 'LGPL')
+url="https://www.thunderbird.net/channel/#beta"
+depends=('gtk3' 'libxt' 'mime-types' 'dbus-glib' 'ffmpeg' 'ttf-font' 'libpulse' 'nss')
+makedepends=('unzip' 'zip' 'diffutils' 'python-setuptools' 'yasm' 'mesa' 'imake' 'inetutils'
+ 'xorg-server-xvfb' 'autoconf2.13' 'rust' 'clang' 'llvm' 'jack' 'nodejs'
+ 'python-psutil' 'cbindgen' 'nasm' 'lld' 'python-zstandard' 'dump_syms'
+ 'wasi-compiler-rt' 'wasi-libc' 'wasi-libc++' 'wasi-libc++abi' 'libotr')
+optdepends=('networkmanager: Location detection via available WiFi networks'
+ 'libnotify: Notification integration'
+ 'pulseaudio: Audio support'
+ 'speech-dispatcher: Text-to-Speech'
+ 'hunspell-en_US: Spell checking, American English'
+ 'xdg-desktop-portal: Screensharing with Wayland'
+ 'libcanberra: sound support'
+ 'libotr: OTR support for active one-to-one chats')
+options=(!emptydirs !makeflags !strip)
provides=("thunderbird=$pkgver")
-conflicts=('thunderbird' 'thunderbird-beta-bin')
source=(https://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz{,.asc}
- thunderbird-beta.desktop
- vendor-prefs.js
- distribution.ini
- mozconfig.cfg)
+ install-dir.patch
+ metainfo.patch
+ "$pkgname".desktop)
validpgpkeys=(
14F26682D0916CDD81E37B6D61B7B526D98F0353 # Mozilla Software Releases <release@mozilla.com>
4360FE2109C49763186F8E21EBE41E90F6F12F6D # Mozilla Software Releases <release@mozilla.com>
@@ -54,65 +45,145 @@ _google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
_mozilla_api_key=16674381-f021-49de-8622-3021c5942aff
prepare() {
- cd $_pkgname-$_pkgver
+ mkdir -p mozbuild
+ cd "${_pkgname}-${pkgver%b*}"
+
+ local src
+ for src in "${source[@]}"; do
+ src="${src%%::*}"
+ src="${src##*/}"
+ [[ $src = *.patch ]] || continue
+ echo "Applying patch $src..."
+ patch -Np1 < "../$src"
+ done
+
+ echo -n "$_google_api_key" > google-api-key
+ echo -n "$_mozilla_api_key" > mozilla-api-key
+ cat > ../mozconfig << END
+ac_add_options --enable-application=comm/mail
+mk_add_options MOZ_OBJDIR=${PWD@Q}/obj
+
+ac_add_options --prefix=/usr
+ac_add_options --enable-release
+ac_add_options --enable-hardening
+ac_add_options --enable-optimize
+ac_add_options --enable-rust-simd
+ac_add_options --enable-linker=lld
+ac_add_options --disable-elf-hack
+ac_add_options --disable-bootstrap
+ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
- echo "${noextract[@]}"
+# Branding
+ac_add_options --enable-official-branding
+ac_add_options --enable-update-channel=aurora
+ac_add_options --with-distribution-id=org.archlinux
+ac_add_options --with-unsigned-addon-scopes=app,system
+ac_add_options --allow-addon-sideload
+export MOZILLA_OFFICIAL=1
+export MOZ_APP_REMOTINGNAME=${pkgname//-/}
+export MOZ_REQUIRE_SIGNING=
- 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
+# Keys
+ac_add_options --with-google-location-service-api-keyfile=${PWD@Q}/google-api-key
+ac_add_options --with-google-safebrowsing-api-keyfile=${PWD@Q}/google-api-key
+ac_add_options --with-mozilla-api-keyfile=${PWD@Q}/mozilla-api-key
+
+# System libraries
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+
+# Features
+ac_add_options --enable-alsa
+ac_add_options --enable-jack
+ac_add_options --enable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+END
}
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
+ cd "${_pkgname}-${pkgver%b*}"
+
+ export MOZ_NOSPAM=1
+ export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
+ export MOZ_ENABLE_FULL_SYMBOLS=1
export MACH_USE_SYSTEM_PYTHON=1
- export MOZBUILD_STATE_PATH="${srcdir}/.mozbuild"
- ./mach configure
+
+ echo "Building thunderbird..."
+ cat >.mozconfig ../mozconfig
./mach build
+
+ echo "Building symbol archive..."
./mach buildsymbols
}
package() {
- cd $_pkgname-$_pkgver
+ cd "${_pkgname}-${pkgver%b*}"
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-beta.desktop -t "$pkgdir/usr/share/applications"
+ local vendorjs="$pkgdir/usr/lib/$pkgname/browser/defaults/preferences/vendor.js"
+ install -Dvm644 /dev/stdin "$vendorjs" << END
+// Use LANG environment variable to choose locale.
+pref("intl.locale.requested", "");
+
+// Use system-provided dictionaries.
+pref("spellchecker.dictionary_path", "/usr/share/hunspell");
+
+// Disable default browser checking.
+pref("browser.shell.checkDefaultBrowser", false);
+
+// Don't disable our bundled extensions in the application directory.
+pref("extensions.autoDisableScopes", 11);
+END
+
+ local distini="$pkgdir/usr/lib/$pkgname/distribution/distribution.ini"
+ install -Dvm644 /dev/stdin "$distini" << END
+[Global]
+id=archlinux
+version=1.0
+about=Mozilla Thunderbird Beta for Arch Linux
- install -Dm 644 comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml \
+[Preferences]
+app.distributor=archlinux
+app.distributor.channel=$pkgname
+app.partner.archlinux=archlinux
+END
+
+ install -Dvm644 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"
+ install -Dvm644 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 \
+
+ install -Dvm644 comm/mail/branding/thunderbird/content/about-logo.svg \
+ "$pkgdir/usr/share/icons/hicolor/scalable/apps/$pkgname.svg"
+ install -Dvm644 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 -Dvm644 ../$pkgname.desktop \
+ "$pkgdir/usr/share/applications/$pkgname.desktop"
# Install a wrapper to avoid confusion about binary path
- install -Dm755 /dev/stdin "$pkgdir/usr/bin/${_pkgname}" <<END
+ install -Dvm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" << END
#!/bin/sh
-exec /usr/lib/${_pkgname}/thunderbird "\$@"
+exec /usr/lib/$pkgname/$_pkgname "\$@"
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"
+ ln -srfv "$pkgdir/usr/bin/$pkgname" "$pkgdir/usr/lib/$pkgname/$_pkgname-bin"
+
+ # Use system certificates
+ local nssckbi="$pkgdir/usr/lib/$pkgname/libnssckbi.so"
+ if [[ -e $nssckbi ]]; then
+ ln -srfv "$pkgdir/usr/lib/libnssckbi.so" "$nssckbi"
+ fi
}
-sha256sums=('9b41dadef956109efcf5edf927aa36dea4442979f3422420b041d6cf2a412705'
+sha256sums=('d3195a1ff0cca1b73122d9165788aeeda959ebd7d115b930ff7185a2c8b13083'
'SKIP'
- '71251951e99d33c1bc56d8e1729270cb1c0bd026a86cd840b8ac9ac54a68d846'
- 'fa11b4736bbf53ec015f71cd42b1040b22d1a855c562b76927b3f0eccb925c85'
- 'bc3aae2cc00dc9806f54606f98d967366a2ba7223f6a3ad1c658a653ebff5569'
- 'e6fedf8e74382af05b419b1efca1380f503f5a000320f46717386aa401820a5e')
+ 'c959c9f2b60a42dc937f744c018196906727d468d8f1d7402fb4f743484c414b'
+ 'a30df8772e9cec05debdcd02b83de6ea92db6fb7c2a43f24f0bc6ebb2c5484a5'
+ '9f7eececd2426a13220a81eb8d34123311979e03aca40d5d4b79d0346beab5b5')