diff --git a/.gitignore b/.gitignore index d6342fb..28a9e39 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ SOURCES/Python-2.7.13.tar.xz SOURCES/gtk3-private-3.22.26-1.el6.src.rpm -SOURCES/l10n-lightning-60.2.1.tar.xz SOURCES/libffi-3.0.13-18.el7_3.src.rpm -SOURCES/thunderbird-60.2.1.source.tar.xz -SOURCES/thunderbird-langpacks-60.2.1-20181003.tar.xz +SOURCES/lightning-langpacks-60.4.0.tar.xz +SOURCES/thunderbird-60.4.0.source.tar.xz +SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz SOURCES/yasm-1.2.0-3.el5.src.rpm diff --git a/.thunderbird.metadata b/.thunderbird.metadata index c18d07e..37bab28 100644 --- a/.thunderbird.metadata +++ b/.thunderbird.metadata @@ -1,7 +1,7 @@ 18a8f30a0356c751b8d0ea6f76e764cab13ee046 SOURCES/Python-2.7.13.tar.xz 0de63f863b158454b9429234b52ed28a397ec45c SOURCES/gtk3-private-3.22.26-1.el6.src.rpm -68f9529acf49d1d3b0970e3d81c60bf4ca4e4a3b SOURCES/l10n-lightning-60.2.1.tar.xz e188ab1a444697bc649e223c28389d82ca94c472 SOURCES/libffi-3.0.13-18.el7_3.src.rpm -c88a3c949756574b6c92631105a57238ce7c329c SOURCES/thunderbird-60.2.1.source.tar.xz -82178960fd71e500d7d05793883b13f3eb3a1fd7 SOURCES/thunderbird-langpacks-60.2.1-20181003.tar.xz +147cffbafb9672855a3a60c276c3f7b80a7a9103 SOURCES/lightning-langpacks-60.4.0.tar.xz +bcdd2096a0e6cdfb28a8bef384688a03625ce4c5 SOURCES/thunderbird-60.4.0.source.tar.xz +446f167505f108dea8c647537154a9a804e39223 SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz 77fd30f7ebc12a629a31c1e252cec06af55a71fe SOURCES/yasm-1.2.0-3.el5.src.rpm diff --git a/README.debrand b/README.debrand deleted file mode 100644 index 01c46d2..0000000 --- a/README.debrand +++ /dev/null @@ -1,2 +0,0 @@ -Warning: This package was configured for automatic debranding, but the changes -failed to apply. diff --git a/SOURCES/build-nss-version.patch b/SOURCES/build-nss-version.patch index 734005d..58e62c9 100644 --- a/SOURCES/build-nss-version.patch +++ b/SOURCES/build-nss-version.patch @@ -5,7 +5,7 @@ diff -up firefox-60.1.0/old-configure.in.nss-version firefox-60.1.0/old-configur _USE_SYSTEM_NSS=1 ) if test -n "$_USE_SYSTEM_NSS"; then -- AM_PATH_NSS(3.36.4, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) +- AM_PATH_NSS(3.36.6, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) + AM_PATH_NSS(3.36.0, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])]) fi diff --git a/SOURCES/get-calendar-langpacks.sh b/SOURCES/get-calendar-langpacks.sh new file mode 100755 index 0000000..d3f5e86 --- /dev/null +++ b/SOURCES/get-calendar-langpacks.sh @@ -0,0 +1,126 @@ +#!/bin/bash +#set -x +set -e +usage() +{ +cat << EOF +usage: $0 options + +This script downloads calendar langpacks for Thunderbird. + +OPTIONS: + -h Show this message + -v Version string (7.0.1) + -b Build number (1, 2, 3) + -r Reuse downloaded files (when you don't want to redownload) +EOF +} + +VER= +BUILDNUM= +LANG_DATE=`date "+%Y%m%d"` +while getopts “hv:b:r” OPTION +do + case $OPTION in + h) + usage + exit 1 + ;; + v) + VER=$OPTARG + ;; + b) + BUILDNUM=$OPTARG + ;; + ?) + usage + exit + ;; + esac +done + +if [ -z "$VER" -o -z "$BUILDNUM" ] +then + echo "Missing version or build number." + usage + exit 1 +fi + +WHITE='\033[1;33m' +NC='\033[0m' # No Color + +LOCALES=`curl -f https://archive.mozilla.org/pub/thunderbird/candidates/$VER-candidates/build$BUILDNUM/linux-i686/ | grep "a href"|sed -e "s|.*/\([^/]*\)/\".*|\1|"|tail -n+2 |grep -v xpi` +#echo $LOCALES +rm -rf lightning-langpacks +mkdir -p lightning-langpacks +cd lightning-langpacks +LOCALE_COUNT=`echo $LOCALES| tr ' ' '\n' | wc -l` +LOCALE_NUM=0 +for lang in $LOCALES; do + LOCALE_NUM=$((LOCALE_NUM+1)) + echo -e "${WHITE}Processing calendar locale: $lang ($LOCALE_NUM/$LOCALE_COUNT)${NC}" + mkdir -p extracted_lightning + mkdir -p calendar-locales + #echo Downloading TB binary for locale: $lang + wget --quiet https://archive.mozilla.org/pub/thunderbird/candidates/$VER-candidates/build$BUILDNUM/linux-i686/$lang/thunderbird-$VER.tar.bz2 + + cd extracted_lightning + tar -xf ../thunderbird-$VER.tar.bz2 thunderbird/distribution/extensions/\{e2fda1a4-762b-4020-b5ad-a41df1933103\}.xpi + set +e + unzip -qq thunderbird/distribution/extensions/\{e2fda1a4-762b-4020-b5ad-a41df1933103\}.xpi + set -e + LIGHTNING_VERSION=`cat app.ini |grep "^Version="|sed -e 's/Version=//'` + BUILD_ID=`cat app.ini |grep "^BuildID="|sed -e 's/BuildID=//'` + MAX_VERSION=`cat app.ini |grep MaxVersion|sed -e s/MaxVersion=//` + MIN_VERSION=`cat app.ini |grep MinVersion|sed -e s/MinVersion=//` + rm -rf thunderbird + mkdir -p ../calendar-locales/chrome + cp -r chrome/calendar-$lang ../calendar-locales/chrome + cp -r chrome/lightning-$lang ../calendar-locales/chrome + cd - + + cd calendar-locales + # create manifest + cat > manifest.json <<EOL +{ + "languages": { + "$lang": { + "chrome_resources": { + "calendar": "chrome/calendar-$lang/locale/$lang/calendar/", + "lightning": "chrome/lightning-$lang/locale/$lang/lightning/" + }, + "version": "$LIGHTNING_VERSION" + } + }, + "applications": { + "gecko": { + "strict_min_version": "$MIN_VERSION", + "id": "langpack-cal-$lang@lightning.mozilla.org", + "strict_max_version": "$MAX_VERSION" + } + }, + "langpack_id": "$lang", + "version": "$LIGHTNING_VERSION$BUILD_ID", + "name": "$lang Language Pack Calendar", + "manifest_version": 2, + "sources": { + "browser": { + "base_path": "browser/" + } + }, + "author": "Mozilla.cz (contributors: Pavel Cvrček, Pavel Franc, Michal Stanke, Michal Vašíček)", + "description": "Language pack for Thunderbird for $lang, this was repacked by Fedora/RHEL package maintainer from original binaries." +} + +EOL + zip --quiet -r ../langpack-cal-$lang@lightning.mozilla.org.xpi * + cd - + rm -rf calendar-locales + rm -rf extracted_lightning + + rm -f thunderbird-$VER.tar.bz2 +done +echo "Creating lightning-langpacks-$VER.tar.xz..." +tar cJf ../lightning-langpacks-$VER.tar.xz *.xpi +cd .. +rm -rf lightning-langpacks diff --git a/SOURCES/gtk3-private-3.22.26-1-files.inc b/SOURCES/gtk3-private-3.22.26-1-files.inc index cf89c66..8e1e31a 100644 --- a/SOURCES/gtk3-private-3.22.26-1-files.inc +++ b/SOURCES/gtk3-private-3.22.26-1-files.inc @@ -40,6 +40,7 @@ %{gtk3_install_path}/%{_lib}/gio %ghost %attr(644, root, root) %{gtk3_install_path}/%{_lib}/gio/modules/giomodule.cache %{gtk3_install_path}/%{_lib}/gtk-3.0 +%ghost %attr(644, root, root) %{gtk3_install_path}/%{_lib}/gtk-3.0/3.0.0/immodules.cache %{gtk3_install_path}/libexec diff --git a/SOURCES/mklangsource.sh b/SOURCES/mklangsource.sh deleted file mode 100755 index fd2205f..0000000 --- a/SOURCES/mklangsource.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash -# This checks out and builds the language sources. The lightning source needs -# to already be unpacked -#lver=`awk '/^%global *lightning_ver/ { print $3; exit }' thunderbird.spec` -tbver=`awk '/^Version:/ { print $2; exit }' thunderbird.spec` -#tag=CALENDAR_${lver//./_}_RELEASE -tag=THUNDERBIRD_${tbver//./_}_RELEASE -branch=`awk '/^%define *tarballdir/ { print $3; exit }' thunderbird.spec` -locales=$PWD/thunderbird-${tbver}/${branch}/comm/calendar/locales/shipped-locales -#locales=$PWD/shipped-locales -if [ ! -f $locales ] -then - echo "ERROR: missing $locales, try fedpkg prep first" - exit 1 -fi -[ ! -d l10n ] && mkdir l10n -cd l10n -for lang in $(<$locales) -do - if [ -d $lang ] - then - pushd $lang - hg pull - hg update $tag - #hg update - popd - else - hg clone -u $tag http://hg.mozilla.org/releases/l10n/mozilla-release/$lang - #hg clone http://hg.mozilla.org/l10n-central/$lang - fi -done -cd .. -# Need to merge by compare-locale tool -# More info here: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/compare-locales -# how to get compare-locales: sudo easy_install -U compare-locales - -# Make copy to merge with -rm -rf l10n-merged -cp -R l10n l10n-merged -for lang in $(<$locales) -do - compare-locales --merge l10n-merged/$lang $PWD/thunderbird-${tbver}/${branch}/comm/calendar/locales/l10n.ini l10n $lang -done - - -# Tar up, minus the mercurial files -rm -f l10n-${lver}.tar.xz -tar caf l10n-lightning-${tbver}.tar.xz --exclude='.hg*' l10n-merged diff --git a/SOURCES/mozilla-1475775-key3-revert.patch b/SOURCES/mozilla-1475775-key3-revert.patch deleted file mode 100644 index 5ab7cbc..0000000 --- a/SOURCES/mozilla-1475775-key3-revert.patch +++ /dev/null @@ -1,66 +0,0 @@ -diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNSSComponent.cpp ---- a/security/manager/ssl/nsNSSComponent.cpp -+++ b/security/manager/ssl/nsNSSComponent.cpp -@@ -1654,6 +1654,51 @@ - } - return AttemptToRenamePKCS11ModuleDB(profilePath, sqlModuleDBFilename); - } -+ -+// When we changed from the old dbm database format to the newer sqlite -+// implementation, the upgrade process left behind the existing files. Suppose a -+// user had not set a password for the old key3.db (which is about 99% of -+// users). After upgrading, both the old database and the new database are -+// unprotected. If the user then sets a password for the new database, the old -+// one will not be protected. In this scenario, we should probably just remove -+// the old database (it would only be relevant if the user downgraded to a -+// version of Firefox before 58, but we have to trade this off against the -+// user's old private keys being unexpectedly unprotected after setting a -+// password). -+// This was never an issue on Android because we always used the new -+// implementation. -+static void -+MaybeCleanUpOldNSSFiles(const nsACString& profilePath) -+{ -+ UniquePK11SlotInfo slot(PK11_GetInternalKeySlot()); -+ if (!slot) { -+ return; -+ } -+ // Unfortunately we can't now tell the difference between "there already was a -+ // password when the upgrade happened" and "there was not a password but then -+ // the user added one after upgrading". -+ bool hasPassword = PK11_NeedLogin(slot.get()) && -+ !PK11_NeedUserInit(slot.get()); -+ if (!hasPassword) { -+ return; -+ } -+ nsCOMPtr<nsIFile> dbFile = do_CreateInstance("@mozilla.org/file/local;1"); -+ if (!dbFile) { -+ return; -+ } -+ nsresult rv = dbFile->InitWithNativePath(profilePath); -+ if (NS_FAILED(rv)) { -+ return; -+ } -+ NS_NAMED_LITERAL_CSTRING(keyDBFilename, "key3.db"); -+ rv = dbFile->AppendNative(keyDBFilename); -+ if (NS_FAILED(rv)) { -+ return; -+ } -+ // Since this isn't a directory, the `recursive` argument to `Remove` is -+ // irrelevant. -+ Unused << dbFile->Remove(false); -+} - #endif // ifndef ANDROID - - // Given a profile directory, attempt to initialize NSS. If nocertdb is true, -@@ -1685,6 +1730,9 @@ - SECStatus srv = ::mozilla::psm::InitializeNSS(profilePath, false, !safeMode); - if (srv == SECSuccess) { - MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("initialized NSS in r/w mode")); -+#ifndef ANDROID -+ MaybeCleanUpOldNSSFiles(profilePath); -+#endif // ifndef ANDROID - return NS_OK; - } - #ifndef ANDROID - diff --git a/SOURCES/thunderbird-mozconfig b/SOURCES/thunderbird-mozconfig index efada3a..c304223 100644 --- a/SOURCES/thunderbird-mozconfig +++ b/SOURCES/thunderbird-mozconfig @@ -15,7 +15,6 @@ ac_add_options --enable-release ac_add_options --enable-startup-notification ac_add_options --libdir="$LIBDIR" ac_add_options --prefix="$PREFIX" -ac_add_options --with-l10n-base=../../l10n-merged ac_add_options --without-system-libvpx ac_add_options --with-pthreads ac_add_options --with-system-jpeg diff --git a/SPECS/thunderbird.spec b/SPECS/thunderbird.spec index e42beda..7055e8e 100644 --- a/SPECS/thunderbird.spec +++ b/SPECS/thunderbird.spec @@ -89,8 +89,8 @@ Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 60.2.1 -Release: 4%{?dist} +Version: 60.4.0 +Release: 1%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Group: Applications/Internet @@ -105,11 +105,11 @@ ExclusiveArch: i686 x86_64 ppc64 s390x # From ftp://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?ext_version}/source Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}%{?ext_version}-20181003.tar.xz -%endif +Source1: thunderbird-langpacks-%{version}%{?ext_version}-20190103.tar.xz # Locales for lightning -Source2: l10n-lightning-%{version}.tar.xz -Source3: mklangsource.sh +Source2: lightning-langpacks-%{version}.tar.xz +%endif +Source3: get-calendar-langpacks.sh Source10: thunderbird-mozconfig Source20: thunderbird.desktop @@ -167,7 +167,6 @@ Patch413: mozilla-1353817.patch Patch415: mozilla-1436242.patch Patch416: mozilla-1460871-ldap-query.patch #Removing this patch would lead to losing user saved credentials in profile! -Patch417: mozilla-1475775-key3-revert.patch ## Thunderbird patches @@ -355,7 +354,6 @@ Mozilla Thunderbird is a standalone mail and newsgroup client. # This needs to stay for the future releases %if 0%{?rhel} < 8 %patch230 -p1 -b .1503632-nss -%patch417 -R -p1 -b .1475775-key3-revert %endif #ARM run-time patch @@ -719,16 +717,6 @@ export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS" export STRIP=/bin/true ./mach build -v -# Package l10n files -cd objdir/comm/calendar/lightning -grep -v 'osx' ../../../calendar/locales/shipped-locales | while read lang x -do - make AB_CD=en-US L10N_XPI_NAME=lightning libs-$lang -done -# install l10n files -make tools -cd - - #--------------------------------------------------------------------- %install @@ -864,6 +852,12 @@ function create_default_langpack() { #create_default_langpack "pt-PT" "pt" #create_default_langpack "sv-SE" "sv" #create_default_langpack "zh-TW" "zh" + +# lightning langpacks install +cd %{buildroot}%{langpackdir} +%{__tar} xf %{SOURCE2} +chmod a+r *.xpi +cd - %endif # build_langpacks # Get rid of devel package and its debugsymbols @@ -989,7 +983,16 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #=============================================================================== %changelog -* Tue Oct 16 2018 Jan Horak <jhorak@redhat.com> - 60.2.1-4 +* Thu Jan 3 2019 Jan Horak <jhorak@redhat.com> - 60.4.0-1 +- Update to 60.4.0 + +* Wed Oct 31 2018 Jan Horak <jhorak@redhat.com> - 60.3.0-1 +- Update to 60.3.0 + +* Wed Oct 31 2018 Jan Horak <jhorak@redhat.com> - 60.2.1-6 +- Fixed missing calendar langpacks + +* Tue Oct 16 2018 Jan Horak <jhorak@redhat.com> - 60.2.1-5 - Fixing minor issues * Wed Oct 10 2018 Jan Horak <jhorak@redhat.com> - 60.2.1-3