From 66c326b6d65388e9f1003715ad9675505f01f9d2 Mon Sep 17 00:00:00 2001 From: davidovski Date: Fri, 3 Jun 2022 13:05:13 +0100 Subject: added porting from alpine linux --- repo/thunderbird/thunderbird.desktop | 172 +++++++---------------------------- repo/thunderbird/thunderbird.xibuild | 131 +++++++++++++++++--------- 2 files changed, 121 insertions(+), 182 deletions(-) (limited to 'repo/thunderbird') diff --git a/repo/thunderbird/thunderbird.desktop b/repo/thunderbird/thunderbird.desktop index 99f4be8..210859d 100644 --- a/repo/thunderbird/thunderbird.desktop +++ b/repo/thunderbird/thunderbird.desktop @@ -1,5 +1,32 @@ [Desktop Entry] Name=Thunderbird +GenericName=Mail Client +GenericName[ast]=Client de correu +GenericName[ca]=Client de correu +GenericName[cs]=Poštovní klient +GenericName[da]=E-postklient +GenericName[de]=E-Mail-Anwendung +GenericName[el]=Λογισμικό αλληλογραφίας +GenericName[es]=Cliente de correo +GenericName[fi]=Sähköpostiohjelma +GenericName[fr]=Client de messagerie +GenericName[gl]=Cliente de correo electrónico +GenericName[he]=לקוח דוא״ל +GenericName[hr]=Klijent e-pošte +GenericName[hu]=Levelezőkliens +GenericName[it]=Client email +GenericName[ja]=電子メールクライアント +GenericName[ko]=메일 클라이언트 +GenericName[nl]=E-mailprogramma +GenericName[pl]=Klient poczty +GenericName[pt_BR]=Cliente de E-mail +GenericName[ru]=Почтовый клиент +GenericName[sk]=Poštový klient +GenericName[ug]=ئېلخەت دېتالى +GenericName[uk]=Поштова програма +GenericName[vi]=Phần mềm khách quản lý thư điện tử +GenericName[zh_CN]=邮件新闻客户端 +GenericName[zh_TW]=郵件用戶端 Comment=Send and receive mail with Thunderbird Comment[ast]=Lleer y escribir corréu electrónicu Comment[ca]=Llegiu i escriviu correu @@ -28,147 +55,10 @@ Comment[uk]=Читання та написання листів Comment[vi]=Đọc và soạn thư điện tử Comment[zh_CN]=阅读邮件或新闻 Comment[zh_TW]=以 Mozilla Thunderbird 讀寫郵件或新聞 -GenericName=Mail Client -GenericName[ast]=Client de correu -GenericName[ca]=Client de correu -GenericName[cs]=Poštovní klient -GenericName[da]=E-postklient -GenericName[de]=E-Mail-Anwendung -GenericName[el]=Λογισμικό αλληλογραφίας -GenericName[es]=Cliente de correo -GenericName[fi]=Sähköpostiohjelma -GenericName[fr]=Client de messagerie -GenericName[gl]=Cliente de correo electrónico -GenericName[he]=לקוח דוא״ל -GenericName[hr]=Klijent e-pošte -GenericName[hu]=Levelezőkliens -GenericName[it]=Client email -GenericName[ja]=電子メールクライアント -GenericName[ko]=메일 클라이언트 -GenericName[nl]=E-mailprogramma -GenericName[pl]=Klient poczty -GenericName[pt_BR]=Cliente de E-mail -GenericName[ru]=Почтовый клиент -GenericName[sk]=Poštový klient -GenericName[ug]=ئېلخەت دېتالى -GenericName[uk]=Поштова програма -GenericName[vi]=Phần mềm khách quản lý thư điện tử -GenericName[zh_CN]=邮件新闻客户端 -GenericName[zh_TW]=郵件用戶端 -Exec=/usr/lib/thunderbird/thunderbird %u +Exec=thunderbird %u +Icon=thunderbird Terminal=false Type=Application -Icon=thunderbird -Categories=Network;Email; -MimeType=message/rfc822;x-scheme-handler/mailto;application/x-xpinstall; +MimeType=message/rfc822;x-scheme-handler/mailto; StartupNotify=true -StartupWMClass=thunderbird -Actions=ComposeMessage;OpenAddressBook; - -[Desktop Action ComposeMessage] -Name=Write new message -Name[ar]=اكتب رسالة جديدة -Name[ast]=Redactar mensaxe nuevu -Name[be]=Напісаць новы ліст -Name[bg]=Съставяне на ново съобщение -Name[br]=Skrivañ ur gemennadenn nevez -Name[ca]=Escriu un missatge nou -Name[cs]=Napsat novou zprávu -Name[da]=Skriv en ny meddelelse -Name[de]=Neue Nachricht verfassen -Name[el]=Σύνταξη νέου μηνύματος -Name[es_AR]=Escribir un nuevo mensaje -Name[es_ES]=Redactar nuevo mensaje -Name[et]=Kirjuta uus kiri -Name[eu]=Idatzi mezu berria -Name[fi]=Kirjoita uusi viesti -Name[fr]=Rédiger un nouveau message -Name[fy_NL]=Skriuw in nij berjocht -Name[ga_IE]=Scríobh teachtaireacht nua -Name[gd]=Sgrìobh teachdaireachd ùr -Name[gl]=Escribir unha nova mensaxe -Name[he]=כתיבת הודעה חדשה -Name[hr]=Piši novu poruku -Name[hu]=Új üzenet írása -Name[hy_AM]=Գրել նոր նամակ -Name[is]=SKrifa nýjan póst -Name[it]=Scrivi nuovo messaggio -Name[ja]=新しいメッセージを作成する -Name[ko]=새 메시지 작성 -Name[lt]=Rašyti naują laišką -Name[nb_NO]=Skriv ny melding -Name[nl]=Nieuw bericht aanmaken -Name[nn_NO]=Skriv ny melding -Name[pl]=Nowa wiadomość -Name[pt_BR]=Nova mensagem -Name[pt_PT]=Escrever nova mensagem -Name[rm]=Scriver in nov messadi -Name[ro]=Scrie un mesaj nou -Name[ru]=Создать новое сообщение -Name[si]=නව ලිපියක් ලියන්න -Name[sk]=Nová e-mailová správa -Name[sl]=Sestavi novo sporočilo -Name[sq]=Shkruani mesazh të ri -Name[sr]=Писање нове поруке -Name[sv_SE]=Skriv ett nytt meddelande -Name[ta_LK]=புதிய செய்தியை எழுதுக -Name[tr]=Yeni ileti yaz -Name[uk]=Написати нового листа -Name[vi]=Viết thư mới -Name[zh_CN]=编写新消息 -Name[zh_TW]=寫一封新訊息 -Exec=/usr/lib/thunderbird/thunderbird -compose - -[Desktop Action OpenAddressBook] -Name=Open address book -Name[ar]=افتح دفتر العناوين -Name[ast]=Abrir llibreta de direiciones -Name[be]=Адкрыць адрасную кнігу -Name[bg]=Отваряне на адресник -Name[br]=Digeriñ ur c'harned chomlec'hioù -Name[ca]=Obre la llibreta d'adreces -Name[cs]=Otevřít Adresář -Name[da]=Åbn adressebog -Name[de]=Adressbuch öffnen -Name[el]=Άνοιγμα ευρετηρίου διευθύνσεων -Name[es_AR]=Abrir libreta de direcciones -Name[es_ES]=Abrir libreta de direcciones -Name[et]=Ava aadressiraamat -Name[eu]=Ireki helbide-liburua -Name[fi]=Avaa osoitekirja -Name[fr]=Ouvrir un carnet d'adresses -Name[fy_NL]=Iepenje adresboek -Name[ga_IE]=Oscail leabhar seoltaí -Name[gd]=Fosgail leabhar-sheòlaidhean -Name[gl]=Abrir a axenda de enderezos -Name[he]=פתיחת ספר כתובות -Name[hr]=Otvori adresar -Name[hu]=Címjegyzék megnyitása -Name[hy_AM]=Բացել Հասցեագիրքը -Name[is]=Opna nafnaskrá -Name[it]=Apri rubrica -Name[ja]=アドレス帳を開く -Name[ko]=주소록 열기 -Name[lt]=Atverti adresų knygą -Name[nb_NO]=Åpne adressebok -Name[nl]=Adresboek openen -Name[nn_NO]=Opne adressebok -Name[pl]=Książka adresowa -Name[pt_BR]=Catálogo de endereços -Name[pt_PT]=Abrir livro de endereços -Name[rm]=Avrir il cudeschet d'adressas -Name[ro]=Deschide agenda de contacte -Name[ru]=Открыть адресную книгу -Name[si]=ලිපින පොත විවෘත කරන්න -Name[sk]=Otvoriť adresár -Name[sl]=Odpri adressar -Name[sq]=Hapni libër adresash -Name[sr]=Отвори адресар -Name[sv_SE]=Öppna adressboken -Name[ta_LK]=முகவரி பத்தகத்தை திறக்க -Name[tr]=Adres defterini aç -Name[uk]=Відкрити адресну книгу -Name[vi]=Mở sổ địa chỉ -Name[zh_CN]=打开通讯录 -Name[zh_TW]=開啟通訊錄 -Exec=/usr/lib/thunderbird/thunderbird -addressbook +Categories=Network;Email; diff --git a/repo/thunderbird/thunderbird.xibuild b/repo/thunderbird/thunderbird.xibuild index ce85bdf..c286ad0 100644 --- a/repo/thunderbird/thunderbird.xibuild +++ b/repo/thunderbird/thunderbird.xibuild @@ -3,41 +3,66 @@ NAME="thunderbird" DESC="Thunderbird email client" -MAKEDEPS="make " -DEPS="atk botan cairo cairomm dbus-glib dbus ffmpeg4 fontconfig freetype2 gdk-pixbuf glib gtk3 icu json-c libevent libffi libvpx libwebp libx11 libxcb libxcomposite libxdamage libxext libxfixes libxrender musl nspr nss pango pixman zlib llvm " +MAKEDEPS=" alsa-lib automake botan cargo cbindgen clang dbus-glib gettext gtk3 icu json-c libevent libffi libjpeg-turbo libnotify libogg libtheora libtool libvorbis libvpx libwebp libxcomposite libxt llvm m4 mesa nasm nodejs nspr nss pipewire pulseaudio python sed wireless-tools zip" -PKG_VER=99.0b2 +PKG_VER=91.8.0 SOURCE="https://ftp.mozilla.org/pub/thunderbird/releases/$PKG_VER/source/thunderbird-$PKG_VER.source.tar.xz" -ADDITIONAL="vendor-prefs.js thunderbird.desktop stab.h sandbox-sched_setscheduler.patch sandbox-largefile.patch sandbox-fork.patch metainfo.patch mallinfo.patch fix-webrtc-glibcisms.patch fix-tools.patch fix-rust-target.patch fix-fortify-system-wrappers.patch distribution.ini disable-neon-in-aom.patch disable-moz-stackwalk.patch avoid-redefinition.patch allow-custom-rust-vendor.patch " -app_dir=/usr/lib/thunderbird +ADDITIONAL=" +allow-custom-rust-vendor.patch +avoid-redefinition.patch +disable-moz-stackwalk.patch +disable-neon-in-aom.patch +fix-fortify-system-wrappers.patch +fix-rust-target.patch +fix-tools.patch +fix-webrtc-glibcisms.patch +mallinfo.patch +sandbox-fork.patch +sandbox-largefile.patch +sandbox-sched_setscheduler.patch +stab.h +thunderbird.desktop +" + +mozappdir=/usr/lib/thunderbird + +_clear_vendor_checksums() { + sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/$1/.cargo-checksum.json +} -prepare () { +prepare() { apply_patches + cp "$BUILD_ROOT"/stab.h toolkit/crashreporter/google-breakpad/src/ - sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/audio_thread_priority/.cargo-checksum.json - sed -i 's/\("files":{\)[^}]*/\1/' third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json + _clear_vendor_checksums audio_thread_priority + _clear_vendor_checksums target-lexicon-0.9.0 } -build () { - export SHELL=/bin/sh +build() { + mkdir -p "$BUILD_ROOT"/objdir + cd "$BUILD_ROOT"/objdir + + export SHELL=/bin/sh export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 export USE_SHORT_LIBNAME=1 export MACH_USE_SYSTEM_PYTHON=1 - export MOZBUILD_STATE_PATH=$BUILD_ROOT/mozbuild + export MOZBUILD_STATE_PATH="$BUILD_ROOT"/mozbuild # Build with Clang, takes less RAM export CC="clang" export CXX="clang++" - export LDFLAGS="$LDFLAGS -Wl,-rpath,$app_dir" + # set rpath so linker finds the libs + export LDFLAGS="$LDFLAGS -Wl,-rpath,$mozappdir" - ./mach configure \ + ../mach configure \ --prefix=/usr \ --disable-elf-hack \ --enable-rust-simd \ \ --disable-crashreporter \ + --disable-gold \ --disable-install-strip \ --disable-jemalloc \ --disable-profiling \ @@ -71,51 +96,75 @@ build () { --with-system-nspr \ --with-system-nss \ --with-system-pixman \ + --with-system-png \ --with-system-webp \ --with-system-zlib \ - --with-libclang-path=/usr/lib \ - \ - --with-unsigned-addon-scopes=app,system \ - --without-wasm-sandboxed-libraries \ - --allow-addon-sideload - #--disable-gold \ - ./mach build + --with-libclang-path=/usr/lib + ../mach build } -package () { - DESTDIR="$PKG_DEST" ./mach install +package() { + cd "$BUILD_ROOT"/objdir + + DESTDIR="$PKG_DEST" MOZ_MAKE_FLAGS="$MAKEOPTS" ../mach install + + install -m755 -d "$PKG_DEST"/usr/share/applications + install -m755 -d "$PKG_DEST"/usr/share/pixmaps local _png for _png in "$BUILD_ROOT"/comm/mail/branding/thunderbird/default*.png; do local i=${_png%.png} i=${i##*/default} - install -Dm644 "$_png" "$PKG_DEST"/usr/share/icons/hicolor/"$i"x"$i"/apps/thunderbird.png + install -D -m644 "$_png" "$PKG_DEST"/usr/share/icons/hicolor/"$i"x"$i"/apps/thunderbird.png done install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/TB-symbolic.svg \ - "$PKG_DEST"/usr/share/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg + "$PKG_DEST/usr/share/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg" + install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/default48.png \ + $PKG_DEST/usr/share/pixmaps/thunderbird.png + + install -m644 "$BUILD_ROOT"/thunderbird.desktop "$PKG_DEST"/usr/share/applications/thunderbird.desktop - install -Dm644 "$BUILD_ROOT"/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml \ - -t "$PKG_DEST"/usr/share/metainfo + # Add StartupWMClass=firefox on the .desktop files so Desktop Environments + # correctly associate the window with their icon, the correct fix is to have + # thunderbird sets its own AppID but this will work for the meantime + # See: https://bugzilla.mozilla.org/show_bug.cgi?id=1607399 + echo "StartupWMClass=thunderbird" >> "$PKG_DEST"/usr/share/applications/thunderbird.desktop - install -Dm644 "$BUILD_ROOT"/thunderbird.desktop \ - -t "$PKG_DEST"/usr/share/applications + # install our vendor prefs + install -d "$PKG_DEST"/$mozappdir/defaults/preferences - install -Dm644 "$BUILD_ROOT"/vendor-prefs.js \ - -t "$PKG_DEST"/$app_dir/defaults/pref - install -Dm644 "$BUILD_ROOT"/distribution.ini \ - -t "$PKG_DEST"/$app_dir/distribution + cat >> "$PKG_DEST"/$mozappdir/defaults/preferences/vendor.js <<- EOF + // Use LANG environment variable to choose locale + pref("intl.locale.requested", ""); - # Use system-provided dictionaries - ln -Tsfv /usr/share/hunspell "$PKG_DEST"/usr/lib/thunderbird/dictionaries - ln -Tsfv /usr/share/hyphen "$PKG_DEST"/usr/lib/thunderbird/hyphenation + // Use system-provided dictionaries + pref("spellchecker.dictionary_path", "/usr/share/hunspell"); + + // Disable default mailer checking. + pref("mail.shell.checkDefaultMail", false); + + // Don't disable our bundled extensions in the application directory + pref("extensions.autoDisableScopes", 11); + pref("extensions.shownSelectionUI", true); + EOF + + install -d "$PKG_DEST"/$mozappdir/distribution + + cat >> "$PKG_DEST"/$mozappdir/distribution/distribution.ini <<- EOF + [Global] + id=alpinelinux + version=1.0 + about=Mozilla Thunderbird for Alpine Linux + + [Preferences] + app.distributor=alpinelinux + app.distributor.channel=thunderbird + app.partner.alpinelinux=alpinelinux + EOF # Replace duplicate binary with wrapper # https://bugzilla.mozilla.org/show_bug.cgi?id=658850 - install -Dm755 /dev/stdin "$PKG_DEST"/usr/bin/thunderbird <<- EOF - #!/bin/sh - exec /usr/lib/thunderbird/thunderbird "\$@" - EOF - rm "$PKG_DEST"/$app_dir/thunderbird-bin - ln -sfv /usr/bin/thunderbird "$PKG_DEST"/$app_dir/thunderbird-bin + ln -snf thunderbird "$PKG_DEST/$mozappdir/thunderbird-bin" } + -- cgit v1.2.1