From 4cda7a12b0b9fdd1e278d0feb093cb2cd1265cdc Mon Sep 17 00:00:00 2001 From: Carsten Schoenert Date: Thu, 14 Sep 2023 04:42:52 +0100 Subject: [PATCH] Import thunderbird_102.15.1-1~deb12u1.debian.tar.xz [dgit import tarball thunderbird 1:102.15.1-1~deb12u1 thunderbird_102.15.1-1~deb12u1.debian.tar.xz] --- README.Debian | 253 + README.apparmor | 30 + README.source | 93 + account-autoconfig/riseup.net.xml | 45 + apparmor/usr.bin.thunderbird | 445 + changelog | 7684 +++++++++++++++++ control | 1259 +++ copyright | 3002 +++++++ create-upstream-tarballs.py | 532 ++ docs | 1 + gbp.conf | 20 + logo/icedove/icedove.xpm | 204 + logo/icedove/icedove_icon.svg | 1756 ++++ logo/icedove/icedove_icon_plain.svg | 1438 +++ logo/icedove/icedove_icon_profile.svg | 1959 +++++ logo/icedove/icedove_icon_profile_plain.svg | 1606 ++++ logo/icedove/icedove_lettering.svg | 994 +++ logo/icedove/icedove_logo.svg | 2407 ++++++ logo/icedove/icedove_logo_plain.svg | 1939 +++++ logo/icedove/license.txt | 23 + logo/thunderbird/create-pngs.sh | 13 + logo/thunderbird/mailicon128.png | Bin 0 -> 13290 bytes logo/thunderbird/mailicon16.png | Bin 0 -> 916 bytes logo/thunderbird/mailicon22.png | Bin 0 -> 1378 bytes logo/thunderbird/mailicon24.png | Bin 0 -> 1514 bytes logo/thunderbird/mailicon256.png | Bin 0 -> 31703 bytes logo/thunderbird/mailicon32.png | Bin 0 -> 2230 bytes logo/thunderbird/mailicon48.png | Bin 0 -> 3781 bytes logo/thunderbird/mailicon512.png | Bin 0 -> 75482 bytes logo/thunderbird/mailicon64.png | Bin 0 -> 5506 bytes logo/thunderbird/pre60/mailicon128.png | Bin 0 -> 19586 bytes logo/thunderbird/pre60/mailicon16.png | Bin 0 -> 1027 bytes logo/thunderbird/pre60/mailicon22.png | Bin 0 -> 1537 bytes logo/thunderbird/pre60/mailicon24.png | Bin 0 -> 1724 bytes logo/thunderbird/pre60/mailicon256.png | Bin 0 -> 48501 bytes logo/thunderbird/pre60/mailicon32.png | Bin 0 -> 2619 bytes logo/thunderbird/pre60/mailicon48.png | Bin 0 -> 4801 bytes logo/thunderbird/pre60/mailicon512.png | Bin 0 -> 117944 bytes logo/thunderbird/pre60/mailicon64.png | Bin 0 -> 7368 bytes logo/thunderbird/pre60/thunderbird.svg | 768 ++ logo/thunderbird/thunderbird.svg | 253 + mozconfig.default | 134 + mozconfig.thunderbird | 16 + ...erences-directory-for-applications-p.patch | 30 + ...ease-Cargo-minimal-version-to-1.46.0.patch | 21 + ...when-run-time-libsqlite-is-older-tha.patch | 48 + ...ormalization-breakage-on-32bit-Linux.patch | 127 + .../Make-Thunderbird-build-reproducible.patch | 31 + ...-program-name-from-the-remoting-name.patch | 26 + ...from-application-before-installation.patch | 24 + ...files-to-set-locked-prefs-with-lockP.patch | 77 + ...data-Adding-some-German-translations.patch | 48 + ...Stream-error-by-adding-missing-field.patch | 21 + ...-amend-Bug-1544631-for-fixing-mips32.patch | 41 + ...c-fails-to-compile-against-GCC-4.6-m.patch | 21 + ...ndent-libraries-with-their-real-path.patch | 22 + .../fixes/gfx-Fix-inclusion-of-C-header.patch | 22 + .../toolkit-Fix-inclusion-of-C-header.patch | 22 + .../Avoid-using-vmrs-vmsr-on-armel.patch | 21 + ...truct-definitions-for-user_vfp-and-u.patch | 53 + .../Allow-ipc-code-to-build-on-GNU-hurd.patch | 22 + ...ow-ipc-code-to-build-on-GNU-kfreebsd.patch | 38 + ...urd-fixing-unsupported-platform-Hurd.patch | 201 + ...uilding-on-GNU-kFreeBSD-and-GNU-Hurd.patch | 50 + .../adding-missed-HURD-adoptions.patch | 260 + ...-fix-if-define-for-kFreeBSD-and-Hurd.patch | 60 + ...-build-failure-with-clang-on-ppc64el.patch | 23 + ...tion-on-alpha-for-the-url-classifier.patch | 21 + ...round-GCC-ICE-on-mips-i386-and-s390x.patch | 24 + ...ble-extensions-in-system-directories.patch | 21 + ...Set-javascript.options.showInConsole.patch | 33 + patches/series | 29 + .../sl-change-Edit-Uredi-to-CTRL-E.patch | 22 + repack.py | 209 + rules | 211 + source.filter | 428 + source/format | 1 + source/include-binaries | 18 + source/lintian-overrides | 37 + tests/check-global-config-path.py | 61 + tests/control | 26 + tests/help.sh | 13 + tests/icudatfileTest.sh | 22 + tests/idlTest.idl | 10 + tests/idlTest.sh | 51 + tests/soSymlinkTest.sh | 22 + tests/xpcshellTest.js | 1 + tests/xpcshellTest.sh | 11 + thunderbird-l10n-all.lintian-overrides | 2 + thunderbird-wrapper-helper.sh | 429 + thunderbird-wrapper.sh | 270 + thunderbird.1 | 194 + thunderbird.NEWS | 112 + thunderbird.bash-completion | 65 + thunderbird.desktop | 115 + thunderbird.dirs | 11 + thunderbird.docs | 2 + thunderbird.install | 33 + thunderbird.js | 42 + thunderbird.links | 10 + thunderbird.lintian-overrides | 15 + thunderbird.maintscript | 3 + thunderbird.manpages | 1 + thunderbird.postinst | 98 + thunderbird.prerm | 11 + vendor.js | 2 + watch | 3 + xpi-pack.sh | 89 + 108 files changed, 30961 insertions(+) create mode 100644 README.Debian create mode 100644 README.apparmor create mode 100644 README.source create mode 100644 account-autoconfig/riseup.net.xml create mode 100644 apparmor/usr.bin.thunderbird create mode 100644 changelog create mode 100644 control create mode 100644 copyright create mode 100755 create-upstream-tarballs.py create mode 100644 docs create mode 100644 gbp.conf create mode 100644 logo/icedove/icedove.xpm create mode 100644 logo/icedove/icedove_icon.svg create mode 100644 logo/icedove/icedove_icon_plain.svg create mode 100644 logo/icedove/icedove_icon_profile.svg create mode 100644 logo/icedove/icedove_icon_profile_plain.svg create mode 100644 logo/icedove/icedove_lettering.svg create mode 100644 logo/icedove/icedove_logo.svg create mode 100644 logo/icedove/icedove_logo_plain.svg create mode 100644 logo/icedove/license.txt create mode 100755 logo/thunderbird/create-pngs.sh create mode 100644 logo/thunderbird/mailicon128.png create mode 100644 logo/thunderbird/mailicon16.png create mode 100644 logo/thunderbird/mailicon22.png create mode 100644 logo/thunderbird/mailicon24.png create mode 100644 logo/thunderbird/mailicon256.png create mode 100644 logo/thunderbird/mailicon32.png create mode 100644 logo/thunderbird/mailicon48.png create mode 100644 logo/thunderbird/mailicon512.png create mode 100644 logo/thunderbird/mailicon64.png create mode 100644 logo/thunderbird/pre60/mailicon128.png create mode 100644 logo/thunderbird/pre60/mailicon16.png create mode 100644 logo/thunderbird/pre60/mailicon22.png create mode 100644 logo/thunderbird/pre60/mailicon24.png create mode 100644 logo/thunderbird/pre60/mailicon256.png create mode 100644 logo/thunderbird/pre60/mailicon32.png create mode 100644 logo/thunderbird/pre60/mailicon48.png create mode 100644 logo/thunderbird/pre60/mailicon512.png create mode 100644 logo/thunderbird/pre60/mailicon64.png create mode 100644 logo/thunderbird/pre60/thunderbird.svg create mode 100644 logo/thunderbird/thunderbird.svg create mode 100644 mozconfig.default create mode 100644 mozconfig.thunderbird create mode 100644 patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch create mode 100644 patches/debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch create mode 100644 patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch create mode 100644 patches/debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch create mode 100644 patches/debian-hacks/Make-Thunderbird-build-reproducible.patch create mode 100644 patches/debian-hacks/Set-program-name-from-the-remoting-name.patch create mode 100644 patches/debian-hacks/Strip-version-number-from-application-before-installation.patch create mode 100644 patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch create mode 100644 patches/fixes/Appdata-Adding-some-German-translations.patch create mode 100644 patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch create mode 100644 patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch create mode 100644 patches/fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch create mode 100644 patches/fixes/Load-dependent-libraries-with-their-real-path.patch create mode 100644 patches/fixes/gfx-Fix-inclusion-of-C-header.patch create mode 100644 patches/fixes/toolkit-Fix-inclusion-of-C-header.patch create mode 100644 patches/porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch create mode 100644 patches/porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch create mode 100644 patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch create mode 100644 patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch create mode 100644 patches/porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch create mode 100644 patches/porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch create mode 100644 patches/porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch create mode 100644 patches/porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch create mode 100644 patches/porting-ppc64el/work-around-a-build-failure-with-clang-on-ppc64el.patch create mode 100644 patches/porting/Disable-optimization-on-alpha-for-the-url-classifier.patch create mode 100644 patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch create mode 100644 patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch create mode 100644 patches/prefs/Set-javascript.options.showInConsole.patch create mode 100644 patches/series create mode 100644 patches/thunderbird-l10n/sl-change-Edit-Uredi-to-CTRL-E.patch create mode 100755 repack.py create mode 100755 rules create mode 100644 source.filter create mode 100644 source/format create mode 100644 source/include-binaries create mode 100644 source/lintian-overrides create mode 100755 tests/check-global-config-path.py create mode 100644 tests/control create mode 100755 tests/help.sh create mode 100755 tests/icudatfileTest.sh create mode 100644 tests/idlTest.idl create mode 100755 tests/idlTest.sh create mode 100755 tests/soSymlinkTest.sh create mode 100644 tests/xpcshellTest.js create mode 100755 tests/xpcshellTest.sh create mode 100644 thunderbird-l10n-all.lintian-overrides create mode 100644 thunderbird-wrapper-helper.sh create mode 100755 thunderbird-wrapper.sh create mode 100644 thunderbird.1 create mode 100644 thunderbird.NEWS create mode 100644 thunderbird.bash-completion create mode 100644 thunderbird.desktop create mode 100644 thunderbird.dirs create mode 100644 thunderbird.docs create mode 100755 thunderbird.install create mode 100644 thunderbird.js create mode 100644 thunderbird.links create mode 100644 thunderbird.lintian-overrides create mode 100644 thunderbird.maintscript create mode 100644 thunderbird.manpages create mode 100644 thunderbird.postinst create mode 100644 thunderbird.prerm create mode 100644 vendor.js create mode 100644 watch create mode 100755 xpi-pack.sh diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000000..d21c8449ea --- /dev/null +++ b/README.Debian @@ -0,0 +1,253 @@ +WebExtension AddOn interface in Thunderbird >= 68.0 +--------------------------------------------------- + +Starting with version 68.0 the only supported interface for Add-ons is the +WebExtension interface. No old XUL-based, sometimes called legacy Add-ons will +work anymore. Starting with 78.0 also no legacy WebExtensions will not work +any more. + +This sentence is not only true for Debian packaged extensions but also for +previously pulled Add-ons from addons.thunderbird.net or some other external +resources. +If you encounter any incompatible packaged Add-ons please open a bug report for +the package, if not already a bug report is created. + +If you are developing own WebExtension based Add-ons you might help to migrate +other still not ready to use Add-ons. Help is really appreciated in any way. + +The API documentation of WebExtension can be found here. + + https://thunderbird-webextensions.readthedocs.io/en/68 + +Some guideline how to migrate to WebExtension from a Legacy Add-on you will +find here. + + https://developer.thunderbird.net/add-ons/tb68 + +Christopher Leidigh (a full-time Thunderbird contributor) has collected a list +of available Add-ons and their status. So you might find his list useful. + + https://cleidigh.github.io/ThunderKdB/index.html + +OpenPGP support within Thunderbird >= 78.0 +------------------------------------------ + +By dropping even support of the legacy WebExtension API in 78.x the typical +used Add-on Enigmail for GPG encryption would not fully working any more. This +is basically grounded on limitations of the WebExtension API to restrict full +access on file system level. +The developer ob Enigmail and MZLNA decided to include OpenPGP support within +Thunderbird directly starting with Thunderbird 78.0. But this now included +native OpenPGP support has some downside, Thunderbird is using it's own key +storage system within the users profile. This means, OpenPGG is working +independently of installed GPG related packages! Also no automatically sync +between Thunderbird and $(HOME)/.gnupg will happen! + +Migration from Enigmail to native OpenPGP support: +This step is optional but user are encouraged to use the migration wizard of +Enigmail. +The Enigmail developer did create a final Enigmail version 2.2.x which is +helping to migrate from the old Enigmail supported workflow over to the OpenPGP +included support. +To use this migration wizard you will need to install Enigmail >= 2.2 as Debian +package (if available) or install this extension by using the menu +'Tools' -> 'Add-ons' and search for it. +There will be a pop up window directly after the installation which is asking +the user if he wanted to be guided through the GPG migration. The user can also +start the migration wizard later at any time by calling it from the 'Tool' menu +the entry 'Migrate Enigmail Settings'. + +You can found more information about the OpenPGP support on the following web +resources. + + https://wiki.mozilla.org/Thunderbird:OpenPGP + https://wiki.mozilla.org/Thunderbird:OpenPGP:2020 + https://wiki.mozilla.org/Thunderbird:OpenPGP:Smartcards + https://wiki.mozilla.org/Thunderbird:OpenPGP:Status + https://www.thunderbird.net/en-US/thunderbird/78.0/releasenotes/ + https://www.enigmail.net/index.php/en/home/news + https://addons.thunderbird.net/en/thunderbird/addon/enigmail/ + + -- Carsten Schoenert Sun, 20 Oct 2020 9:05:00 +0200 + +De-Branding of Icedove, Reintroduce Thunderbird in Debian +--------------------------------------------------------- + +Debian and Mozilla has done some new rethinking and talking about the old legal +questions about trademark issues [1]. +Based on this revaluation the Debian project got now an agreement from Mozilla +Corp. that the rebranded packages Iceweasel, Debian rebranded version for +Firefox, and Icedove, Debian rebranded version for Thunderbird are no longer +needed. + +The maintainers of the Iceweasel package followed that agreement and did a +de-branding of Iceweasel back to Firefox. More information on this process can +be found on [1]. +For Icedove the maintainers followed too the new agreement and remove the old +branding after almost 10 years for Icedove and Iceowl-Extension and switched +back to the official branding from Mozilla. The according bug for this process +can be found under [2]. + +For versions greater 1:45.6.0-2 the following packages were introduced as a +replacement. + +old package .... --> new package usage +--------------------------------------------------------------------------------- +icedove ........ --> thunderbird (Thunderbird Main application) +icedove-dev .... --> thunderbird-dev (Thunderbird Development files) +icedove-dbg .... --> thunderbird-dbg (Thunderbird with debugging symbols) +iceowl-extension --> lightning (Lightning, aka Calendar for Thunderbird) +icedove-l10n-* . --> thunderbird-l10n-* (l10n localization for Thunderbird) +iceowl-l10n-* .. --> lightning-l10n-* (l10n localization for Lightning) + +The old packages were changed to transitional packages and can be safely +removed after the automatically installation of the new packages. + += Profile Migration = +===================== + +Due the removing of the rebranding for Icedove Thunderbird will use the default +profile folder $HOME/.thunderbird for storing all the various user related +stuff! +With the new Thunderbird packages there is a wrapper script included, placed as +/usr/bin/thunderbird that will do a adoption of the existing profile folder +$HOME/.icedove into the new default folder for the user profile +$HOME/.thunderbird by setting up a symlink to the existing profile if possible. + +The automatism in the script will check the following parts: + + 1. Check if there is a folder or a symbolic link $HOME/.icedove existing and + there is NO folder or symbolic link $HOME/.thunderbird. + + 2. Create a symlink from $HOME/.thunderbird to $HOME/.icedove . + + 3. Fixing Mime type registration for' http(s)' and 'file' inside mimeTypes.rdf + if they registered for iceweasel. Before starting the fixup a backup will + be created name $FILE.backup_thunderbird_migration-${DATE}. + + 4. Also check for desktop type registrations of 'userapp-icedove*.desktop' in + '$HOME/.config/mimeapps.list' and $HOME/.local/share/applications/mimeapps.list, + but only if this file exists, users of tiling window managers won't have + this file. Read further for more information on this. + Like above, a backup of the existing file with same schema will be created + if needed. + + 7. If all was going well, starting Thunderbird. + + 8. If there is no folder $HOME/.icedove or $HOME/.thunderbird exists the + wrapper script will start Thunderbird without any extra action. + + 9. The above steps from 3.) will be also done if you already have a symlink + $HOME/.thunderbird that is pointing to $HOME/.icedove or the opposite, + $HOME/.thunderbird is pointing to $HOME/.icedove. + + So if you don't have one of the following four cases the wrapper script + will exit with a error message. + + 1. $HOME/.icedove is existing and holds valid profile data + 2. $HOME/.thunderbird points to $HOME/.icedove and 1. is true + 3. $HOME/.icedove points to $HOME/.thunderbird and 1. is true + 4. $HOME/.thunderbird is existing and holds valid profile data + (Note: Not the script, but Thunderbird will error out here if no + profiles are found!) + +If there is anything going wrong there will be splash screens displayed with +some additional notes, the logger mechanism will write some information about +what's going wrong into /var/log/syslog. + +So don't panic if there is something not working automatically. If the starter +script can't do the adoptions you will need to look by yourself and solve the +situation. Mostly there can be already a folder or symlink $HOME/.thunderbird +that prevents a automatic migration by the script. In such a case save a +existing folder $HOME/.thunderbird else where if needed and restart the +Thunderbird application. Other things like extra special mountpoints by the +system administrator can't also be handled by the script. Please ask the +service desk if you have trouble then. + +What else can you do? +You can call '/usr/bin/thunderbird --verbose' from a command line to see a +verbose output of the wrapper script. For more options of the wrapper script +and how to use them call '/usr/bin/thunderbird --help'. + +The Debian wiki is holding also extra information about the migration of +Icedove to Thunderbird. + + https://wiki.debian.org/Thunderbird + +For backward compatibility whithin the Stretch release there will be that +migration functionality until the release of Buster (aka Debian 10). +Afterwards you can still do this on your on by moving the folders manually. + += Avoid the pop-up information about migration globally = +========================================================= + +Within some use cases (e.g. bigger company environments) it can sometimes not +be useful that a user will see the dialogue window about the profile migration +as this can be more confusing than helpful. +To avoid this dialogue for all users on the system the administrator can create +a file '/etc/thunderbird/no_migration_popup' and the starting wrapper will +not pop-up the information dialogue if the migration isn't already done. + += User specific MIME Associations = +=================================== + +The desktop environment (usually Gnome, KDE, Mate etc.) is holding the +specific associations between MIME types and applications in various +places. In order the user can override system settings and adding new +ones the according place in the users home is the file +'$(HOME)/.config/mimeapps.list'. + +The migration is taking care for old 'icedove.desktop' associations and +is rewriting them to 'thunderbird.desktop'. +Like already done for the user profile, there will be always a backup +of the existing file created before the replacement can be done. In case +of problems you can safely move back to the original file. You will lost +then the needed association for the thunderbird binary. + +You can call '/usr/bin/thunderbird --show-backup' to see created backups from +the various possible modified files while the profile adoption. + +See also: + + https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.html + += Migration of global configurations = +====================================== + +If you have some own special preferences files placed in '/etc/icedove/pref/' +they will be moved to '/etc/thunderbird/pref/'. +In case you have a modified file '/etc/icedove/pref/icedove.js' it will be +moved to '/etc/thunderbird/pref/icedove.js.dpkg-backup' to keep your changes. +Please adjust this file to the Thunderbird specific configuration file +'/etc/thunderbird/pref/thunderbird.js'. The old folder '/etc/icedove' is gone +be removed only if it is completely empty. + +There are still some corner cases where this automatism with configuration +files in /etc/thunderbird/pref is not fully working. Please note #806955 [4] +about such issues. + +[1] https://en.wikipedia.org/wiki/Mozilla_software_rebranded_by_Debian +[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815006 +[3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=816679 +[4] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=806955 + + -- Carsten Schoenert Sun, 21 Aug 2016 10:12:00 +0200 + +Mozilla Crash Reporter for Thunderbird +-------------------------------------- + +The crash reporter for Thunderbird is enabled since version > 1:45.6.0-3. By +this a possible crash could be automatically send to Mozilla if the user is +accepting this. There is nothing send to Mozilla without a user action. More +information about the crash reporter can be found on: + +https://support.mozilla.org/en-US/kb/mozilla-crash-reporter-tb + +Please consider to use the crash reporter for getting crashes reported +upstream, this also helps the maintainers if Thunderbird to get crash reports +send upstream. +Submitted crash reports can be found, if any was send, in + + ~/.thunderbird/Crash Reports/submitted/ + + -- Carsten Schoenert Sun, 29 Jan 2017 14:15:00 +0100 diff --git a/README.apparmor b/README.apparmor new file mode 100644 index 0000000000..3974689953 --- /dev/null +++ b/README.apparmor @@ -0,0 +1,30 @@ +AppArmor policy +--------------- + +The thunderbird package includes an AppArmor profile +(/etc/apparmor.d/usr.bin.thunderbird). This profile is disabled by +default because it has to break a number of common use cases in order +to provide meaningful application confinement. + +If you want to trade additional security against potential +functionality breakage, you can enable this profile by running: + + sudo rm /etc/apparmor.d/disable/usr.bin.thunderbird && \ + sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.thunderbird + +To display the current state of the Thunderbird profile, run: + + sudo apt install jq && \ + sudo aa-status --pretty-json | jq .profiles.thunderbird + +To debug issues with this AppArmor profile, see: + + https://wiki.debian.org/AppArmor/Debug + +This AppArmor profile is maintained collaboratively, in +a cross-distribution manner, within the AppArmor upstream project. +You can report issues or propose improvements there: + + https://gitlab.com/apparmor/apparmor-profiles + + -- Carsten Schoenert Sun, 3 Dec 2017 18:03:00 +0200 diff --git a/README.source b/README.source new file mode 100644 index 0000000000..0a7ec3016f --- /dev/null +++ b/README.source @@ -0,0 +1,93 @@ +This package is maintained with git-buildpackage(1). + +It uses pristine-tar(1) to store enough information in git to generate +bit identical tarballs when building the package without having +downloaded an upstream tarball first. + +When working with patches it is recommended to use "gbp pq import" to +import the patches, modify the source and then use "gbp pq export +--commit" to commit the modifications. + +The changelog is generated using "gbp dch" so if you submit any +changes don't bother to add changelog entries but rather provide +a nice git commit message that can then end up in the changelog. + +It is recommended to build the package with pbuilder using: + + gbp builpackage --git-pbuilder + +For information on how to set up a pbuilder environment see the +git-pbuilder(1) manpage. In short: + + DIST=sid git-pbuilder create + gbp clone + cd + gbp buildpackage --git-pbuilder + +src:thunderbird uses component tarballs for the l10n packages (see below). + + +Creating source tarballs for thunderbird +======================================== + +To download all required files that are needed to import a new upstream +version into a Debian packaging tree you should use the script + + debian/create-upstream-tarballs.py + +This script will look for available upstream versions and ask you what version +you want to get. +It will download the upstream source tarball 'thunderbird-$version.source.tar.xz' +and also all required l10n data to create an additional needed component tarball +'thunderbird_$version.orig-thunderbird-l10n.tar.xz'. +After the downloads and the preparation of the l10n component tarball has been +finished the script will start to filter out unwanted files and folders which +are taken from the content of the file debian/source.filter. + +The script will create the two tarballs above the working folder which can be +imported with git-buildpackage. + +Run + + debian/create-upstream-tarballs.py -h + +to see all possible options the script can act with. + + +Importing the source tarballs +============================= + +The thunderbird package is using an additional thunderbird l10n component +tarball. + +git-buildpackage supports component tarballs since version 0.8.0 so you can +import the tarballs using "gbp import-orig". Make sure the component tarballs +are placed in the same folder as + + thunderbird_$version.orig.tar.xz + +then import the new upstream version as usual: + + gbp import-orig --sign-tags [--verbose] /path/to/thunderbird_[version].orig.tar.xz + + +Pre-shipped Font file(s) +======================== +The source of Firefox is shipping a pre-build font EmojiOneMozilla.ttf in +the folder + + mozilla/browser/fonts/ + +Currently this font isn't provided by any package in Debian but Thunderbird is +needing this font as well in case users are working and using the HTML modus for +email reading or writing. Thus we ship that font starting with > 52.4.0-1 in + + /usr/lib/thunderbird/font + +Once the font is provided by a package we can drop the shipped file. There is +RFP #881475 about packaging the EmojiOne font. + +See also bug reports #849602 and #881299 + + https://bugs.debian.org/849602 + https://bugs.debian.org/881299 diff --git a/account-autoconfig/riseup.net.xml b/account-autoconfig/riseup.net.xml new file mode 100644 index 0000000000..75952efad1 --- /dev/null +++ b/account-autoconfig/riseup.net.xml @@ -0,0 +1,45 @@ + + + + riseup.net + + Riseup Networks Mail + Riseup + + + imap.riseup.net + 993 + SSL + %EMAILLOCALPART% + plain + + + + pop.riseup.net + 995 + SSL + plain + %EMAILLOCALPART% + + + + mail.riseup.net + 465 + SSL + %EMAILLOCALPART% + plain + true + false + + + + + + + Configure Thunderbird for Riseup Mail + + + + + diff --git a/apparmor/usr.bin.thunderbird b/apparmor/usr.bin.thunderbird new file mode 100644 index 0000000000..b5d2a4b7ec --- /dev/null +++ b/apparmor/usr.bin.thunderbird @@ -0,0 +1,445 @@ +# vim:syntax=apparmor +# Author: Simon Deziel +# This apparmor profile is derived from firefox profile +# by Jamie Strandboge + +# Declare an apparmor variable to help with overrides +@{MOZ_LIBDIR}=/usr/lib/thunderbird +@{THUNDERBIRD_USER_DIR} = @{HOME}/.{icedove,thunderbird,mozilla-thunderbird} + +#include + +profile thunderbird /usr/lib/thunderbird/thunderbird{,-bin} { + #include + #include + #include + # TODO: finetune this for required accesses + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + + # Backported from the mesa abstraction, available in AppArmor >2.13 + # System files + /dev/dri/ r, # libGLX_mesa.so calls drmGetDevice2() + + # User files + owner @{HOME}/.cache/ w, # if user clears all caches + owner @{HOME}/.cache/mesa_shader_cache/ w, + owner @{HOME}/.cache/mesa_shader_cache/index rw, + owner @{HOME}/.cache/mesa_shader_cache/??/ w, + owner @{HOME}/.cache/mesa_shader_cache/??/* rw, + # End of backported mesa abstraction + + # Backported from the dri-enumerate abstraction, available in AppArmor 2.13 + /sys/devices/pci[0-9]*/**/{device,subsystem_device,subsystem_vendor,uevent,vendor} r, + + # Imported from the opencl abstraction, which we cannot include + # due to conflicting "x" + @{sys}/devices/pci[0-9]*/**/{class,config,resource,revision} r, + + # Allow opening attachments + # TODO: create and use abstractions for opening various file formats + /{usr/local/,usr/,}bin/* Cx -> sanitized_helper, + /usr/lib/libreoffice/program/soffice Cxr -> sanitized_helper, + + # Allow opening links + # GDesktopAppInfo in GLib 2.64.x uses a very small shell script + # to launch .desktop files, instead of gio-launch-desktop + /{usr/,}bin/{dash,bash} ixr, + # With older GLib we might still be on the fallback code path + # (remove this after Debian 11 and Ubuntu 20.04) + /usr/lib/@{multiarch}/glib-[0-9]*/gio-launch-desktop ix, + + # For Xubuntu to launch the browser + /usr/bin/exo-open ixr, + /usr/lib/@{multiarch}/xfce4/exo-[1-9]/exo-helper-[1-9] ixr, + /etc/xdg/xdg-xubuntu/xfce4/helpers.rc r, + /etc/xdg/xfce4/helpers.rc r, + owner @{HOME}/.config/xfce4/helpers.rc r, + + # for crash reports? + ptrace (read,trace) peer=@{profile_name}, + + /usr/lib/thunderbird/thunderbird{,-bin} ixr, + + # Pulseaudio + /usr/bin/pulseaudio Pixr, + + owner @{HOME}/.{cache,config}/dconf/user rw, + owner @{HOME}/.cache/thumbnails/** r, + owner /run/user/[0-9]*/dconf/user rw, + owner @{HOME}/.config/gtk-3.0/bookmarks r, + deny owner @{HOME}/.local/share/gvfs-metadata/* r, + + # potentially extremely sensitive files + audit deny @{HOME}/.gnupg/** mrwkl, + audit deny @{HOME}/.ssh/** mrwkl, + + # rw access to HOME is useful when sending/receiving attachments + owner @{HOME}/[^.]** rw, + + # other commonly used locations + /{data,media,mnt,srv}/** r, + owner /{data,media,mnt,srv}/** rw, + owner @{HOME}/.signature* r, + + # Required for LVM setups + /sys/devices/virtual/block/dm-[0-9]*/uevent r, + + # Addons (too lax for thunderbird) + ##include + + # for networking + network inet stream, + network inet6 stream, + @{PROC}/[0-9]*/net/if_inet6 r, + @{PROC}/[0-9]*/net/ipv6_route r, + @{PROC}/[0-9]*/net/dev r, + @{PROC}/[0-9]*/net/wireless r, + @{PROC}/[0-9]*/net/arp r, + + # should maybe be in abstractions + /etc/ r, + /etc/mime.types r, + /etc/mailcap r, + /etc/xdg/*buntu/applications/defaults.list r, # for all derivatives + /etc/xfce4/defaults.list r, + /usr/share/xubuntu/applications/defaults.list r, + owner /dev/shm/org.chromium.* rw, # for Chromium IPC + owner /dev/shm/org.mozilla.ipc.[0-9]*.[0-9]* rw, # for Chromium IPC + owner @{HOME}/.cache/fontconfig/*.cache-* rwk, + owner @{HOME}/.local/share/applications/defaults.list r, + owner @{HOME}/.local/share/applications/mimeapps.list r, + owner @{HOME}/.local/share/applications/mimeinfo.cache r, + owner @{HOME}/.recently-used r, + /tmp/.X[0-9]*-lock r, + /etc/udev/udev.conf r, + # Doesn't seem to be required, but noisy. Maybe allow 'r' for 'b*' if needed. + # Possibly move to an abstraction if anything else needs it. + deny /run/udev/data/** r, + + /etc/timezone r, + /etc/wildmidi/wildmidi.cfg r, + + # thunderbird specific + /etc/thunderbird/ r, + /etc/thunderbird/** r, + /etc/xul-ext/** r, + /etc/xulrunner-2.0*/ r, + /etc/xulrunner-2.0*/** r, + /etc/gre.d/ r, + /etc/gre.d/* r, + + # noisy + deny @{MOZ_LIBDIR}/** w, + deny /usr/lib/thunderbird-addons/** w, + deny /usr/lib/xulrunner-addons/** w, + deny /usr/lib/xulrunner-*/components/*.tmp w, + deny /.suspended r, + deny /boot/initrd.img* r, + deny /boot/vmlinuz* r, + deny /var/cache/fontconfig/ w, + + # noisy file dialog: + # + # TODO: remove these rules when file dialogs becomes "trusted helpers" that can + # read anything, or ability to override `deny` rules is implemented [0]. + # + # NOTE: modify `local/usr.bin.thunderbird` to add `deny` rules for cases not + # mentioned here when `DENIED` messages appear for dot files in kernel (or audit) + # logs. If that case is believed to be common enough, please report bug against + # package shipping this profile in order to extend this list. + # + # [0] https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/451422 + deny @{HOME}/.KiCad r, + deny @{HOME}/.abbrev_defs r, + deny @{HOME}/.aspell.*.{prepl,pws} r, + deny @{HOME}/.bashrc r, + deny @{HOME}/.bash_logout r, + deny @{HOME}/.bbdb r, + deny @{HOME}/.caffrc r, + deny @{HOME}/.colordiffrc r, + deny @{HOME}/.cvpcb r, + deny @{HOME}/.cvspass r, + deny @{HOME}/.devscripts r, + deny @{HOME}/.directory r, + deny @{HOME}/.dpt.conf r, + deny @{HOME}/.dput.cf r, + deny @{HOME}/.dupload.conf r, + deny @{HOME}/.eeschema r, + deny @{HOME}/.emacs r, + deny @{HOME}/.emacs.bmk r, + deny @{HOME}/.emacs.desktop* r, + deny @{HOME}/.fehbg r, + deny @{HOME}/.forward r, + deny @{HOME}/.gbp.conf r, + deny @{HOME}/.gerbview r, + deny @{HOME}/.gitconfig r, + deny @{HOME}/.gitk r, + deny @{HOME}/.gtk-recordmydesktop r, + deny @{HOME}/.gtkrc-2.0 r, + deny @{HOME}/.i18n r, + deny @{HOME}/.ido.last r, + deny @{HOME}/.iftoprc r, + deny @{HOME}/.inputrc r, + deny @{HOME}/.jigdo-lite r, + deny @{HOME}/.kicad r, + deny @{HOME}/.kicad_common r, + deny @{HOME}/.lesshst r, + deny @{HOME}/.listadmin.ini r, + deny @{HOME}/.minicpanrc r, + deny @{HOME}/.mostrc r, + deny @{HOME}/.mrconfig r, + deny @{HOME}/.mrlog r, + deny @{HOME}/.mrtrust r, + deny @{HOME}/.my.cnf r, + deny @{HOME}/.newsrc-dribble r, + deny @{HOME}/.newsrc.eld r, + deny @{HOME}/.notmuch-config r, + deny @{HOME}/.offlineimaprc r, + deny @{HOME}/.pam_environment r, + deny @{HOME}/.pbuilderrc r, + deny @{HOME}/.pcbnew r, + deny @{HOME}/.perldb r, + deny @{HOME}/.perltidyrc r, + deny @{HOME}/.pgadmin3 r, + deny @{HOME}/.pgadmin_histoqueries r, + deny @{HOME}/.pgpass r, + deny @{HOME}/.python_history r, + deny @{HOME}/.pythonhist r, + deny @{HOME}/.quiltrc r, + deny @{HOME}/.reportbug-ng r, + deny @{HOME}/.reportbugrc r, + deny @{HOME}/.rnd r, + deny @{HOME}/.screenrc r, + deny @{HOME}/.selected_editor r, + deny @{HOME}/.steam/bin{32,64}/steam r, # through a symlink + deny @{HOME}/.steam/steam.pid r, # through a symlink + deny @{HOME}/.steam/ubuntu12_{32,64}/steam r, # through a symlink + deny @{HOME}/.sudo_as_admin_successful r, + deny @{HOME}/.swp r, + deny @{HOME}/.taskrc r, + deny @{HOME}/.tmux.conf r, + deny @{HOME}/.vboxclient-*.pid r, + deny @{HOME}/.vimrc r, + deny @{HOME}/.wget-hsts r, + deny @{HOME}/.xchm r, + deny @{HOME}/.xfce4-session.verbose-log* r, + deny @{HOME}/.xim.template r, + deny @{HOME}/.xinitrc.template r, + deny @{HOME}/.xinputrc r, + deny @{HOME}/.xscreensaver r, + deny @{HOME}/.xsession*errors* r, + deny @{HOME}/.xsessionrc r, + deny @{HOME}/.Xresources r, + deny @{HOME}/.Xsession r, + deny @{HOME}/.zcompdump r, + deny @{HOME}/.zlogout r, + deny @{HOME}/.zshrc r, + + # TODO: investigate + deny /usr/bin/gconftool-2 x, + + # Deny proprietary NVIDIA driver optimizations + # TODO: remove once it can be disabled via conditionals set up in nvidia abstraction + deny /tmp/#[0-9][0-9][0-9][0-9][0-9][0-9][0-9] m, + deny /tmp/.gl?????? mrw, + deny @{HOME}/#[0-9][0-9][0-9][0-9][0-9][0-9][0-9]{,[0-9]} m, + deny @{HOME}/.nv/.gl?????? mrw, + + owner @{PROC}/[0-9]*/mountinfo r, + owner @{PROC}/[0-9]*/stat r, + owner @{PROC}/[0-9]*/task/[0-9]*/stat r, + /sys/devices/pci[0-9]*/**/uevent r, + /sys/devices/pci*/**/config r, + /sys/devices/system/node/node[0-9]*/meminfo r, + /etc/mtab r, + /etc/fstab r, + + # Needed for the crash reporter + owner @{PROC}/[0-9]*/environ r, + owner @{PROC}/[0-9]*/auxv r, + owner @{PROC}/[0-9]*/status r, + owner @{PROC}/[0-9]*/cmdline r, + /etc/lsb-release r, + /etc/ssl/openssl.cnf r, + /usr/lib/thunderbird/crashreporter ix, + /usr/bin/expr ix, + /sys/devices/system/cpu/ r, + /sys/devices/system/cpu/** r, + + # about:memory + owner @{PROC}/[0-9]*/statm r, + owner @{PROC}/[0-9]*/smaps r, + + # Needed for container to work in xul builds + /usr/lib/xulrunner-*/plugin-container ixr, + + # allow access to documentation and other files the user may want to look + # at in /usr and /opt + /usr/ r, + /usr/** r, + /opt/ r, + /opt/** r, + + # so browsing directories works + / r, + /**/ r, + + # per-user thunderbird configuration + owner @{THUNDERBIRD_USER_DIR}/ rw, + owner @{THUNDERBIRD_USER_DIR}/** rw, + owner @{THUNDERBIRD_USER_DIR}/**/storage.sdb k, + owner @{THUNDERBIRD_USER_DIR}/**/*.{db,parentlock,sqlite}* k, + owner @{THUNDERBIRD_USER_DIR}/plugins/** rm, + owner @{THUNDERBIRD_USER_DIR}/**/plugins/** rm, + owner @{HOME}/.cache/thunderbird/ rw, + owner @{HOME}/.cache/thunderbird/** rw, + + # system emails + owner /var/mail/* rwlk, + + # + # Extensions + # /usr/share/.../extensions/... is already covered by '/usr/** r', above. + # Allow 'x' for downloaded extensions, but inherit policy for safety + owner @{THUNDERBIRD_USER_DIR}/**/extensions/** mixrw, + owner @{HOME}/.mozilla/ rw, + owner @{HOME}/.mozilla/extensions/ rw, + owner @{HOME}/.mozilla/extensions/** mixr, + /usr/share/xul-ext/**/*.sqlite rk, + /usr/lib/mozilla/plugins/*.so rm, + /usr/lib/xul-ext/**/*.sqlite rk, + /usr/lib/thunderbird-addons/extensions/**/*.sqlite rk, + + deny @{MOZ_LIBDIR}/update.test w, + deny /usr/lib/mozilla/extensions/**/ w, + deny /usr/lib/xulrunner-addons/extensions/**/ w, + deny /usr/share/mozilla/extensions/**/ w, + deny /usr/share/mozilla/ w, + + /usr/bin/gpg Cx -> gpg, + /usr/bin/gpg2 Cx -> gpg, + /usr/bin/gpgconf Cx -> gpg, + /usr/bin/gpg-connect-agent Cx -> gpg, + /usr/lib/gnupg/gpg-wks-client ix, + /{,usr/}bin/ps ix, + + # TB tries to create this file but has no business doing so + deny @{HOME}/.gnupg/gpg-agent.conf w, + + # Required for Wayland display protocol support + owner /dev/shm/wayland.mozilla.ipc.[0-9]* rw, + + profile gpg { + #include + + # Required to import keys from keyservers + #include + #include + + /usr/share/xul-ext/enigmail/chrome/** r, + + # silence noise from enigmail 1.9+ + deny owner @{THUNDERBIRD_USER_DIR}/*/.parentlock w, + deny owner @{THUNDERBIRD_USER_DIR}/*/panacea.dat w, + deny owner @{THUNDERBIRD_USER_DIR}/*/*.mab w, + deny owner @{THUNDERBIRD_USER_DIR}/**/*.msf w, + deny owner @{HOME}/.cache/thunderbird/**/_CACHE_* w, + + # noise from inherited files + deny @{THUNDERBIRD_USER_DIR}/*/ImapMail/*/INBOX w, + deny /usr/{lib,share}/thunderbird/omni.ja r, + deny /usr/share/thunderbird/extensions/** r, + + # For smartcards? + /dev/bus/usb/ r, + /dev/bus/usb/[0-9]*/ r, + /dev/bus/usb/[0-9]*/[0-9]* r, + + # LDAP key servers + /etc/ldap/ldap.conf r, + + /usr/bin/gpg mr, + /usr/bin/gpg2 mr, + /usr/bin/gpgconf mr, + /usr/bin/gpg-connect-agent mr, + /usr/lib/gnupg/gpgkeys_* ix, + /usr/lib/gnupg2/gpg2keys_* ix, + owner @{HOME}/.gnupg/ rw, + owner @{HOME}/.gnupg/gpg.conf r, + owner @{HOME}/.gnupg/random_seed rwk, + owner @{HOME}/.gnupg/pubring.{gpg,kbx}{,~} rw, + owner @{HOME}/.gnupg/secring.gpg rw, + owner @{HOME}/.gnupg/trustdb.gpg rw, + owner @{HOME}/.gnupg/tofu.db{,-journal} rwk, + owner @{HOME}/.gnupg/S.gpg-agent rw, + owner @{HOME}/.gnupg/S.dirmngr rw, + owner @{HOME}/.gnupg/*.{gpg,kbx}.{lock,tmp} rwl, + owner @{HOME}/.gnupg/.gpg-*.lock rwl, + owner @{HOME}/.gnupg/gnupg_spawn_*.lock rwl, + owner @{HOME}/.gnupg/.#*[0-9] rw, + owner @{HOME}/.gnupg/.#*[0-9]x rwl, + owner @{HOME}/.gnupg/.#lk0x[0-9a-f]* rwl, + owner @{HOME}/.gnupg/.gpg-v[0-9]*-migrated rw, + owner @{HOME}/.gnupg/openpgp-revocs.d/{,[A-F0-9]*.rev} rw, + owner @{HOME}/** r, + owner @{PROC}/@{pids}/mountinfo r, + + # For gpgconf + owner @{PROC}/@{pids}/fd/ r, + + owner /run/user/[0-9]*/keyring-*/gpg rw, + + # For encryption + signature + owner /tmp/gpgOutput.* rw, + + # for inline pgp + owner /tmp/encfile rw, + owner /tmp/encfile-[0-9]* rw, + + # for key import + owner /tmp/enigmail_import/.#lk0x[0-9a-f]* rw, + owner /tmp/enigmail_import/.#lk0x[0-9a-f]*x rwl, + owner /tmp/enigmail_import/{keyring,trustdb}.lock rwl, + owner /tmp/enigmail_import/{keyring,trustdb}{,~,.tmp} rw, + /usr/bin/dirmngr ix, + owner @{PROC}/@{pids}/task/@{tid}/comm rw, + + # for revocation certificate generation in the Enigmail setup wizard + owner @{THUNDERBIRD_USER_DIR}/*/0x[A-F0-9]*_rev.asc rw, + # for revocation certificate generation in the Enigmail key manager + owner @{HOME}/*0x[A-F0-9]**.asc rw, + + # for signature generation + owner /tmp/nsemail.eml w, + owner /tmp/nsemail-[0-9]*.eml w, + + # for signature verifications + owner /tmp/data.sig r, + owner /tmp/data-[0-9]*.sig r, + + owner /tmp/gpg-[a-zA-Z0-9]*/S.gpg-agent rw, + + /usr/share/sounds/** r, + + deny /dev/shm/org.chromium.* rw, # file_inherit only + } + + # Site-specific additions and overrides. See local/README for details. + #include +} + diff --git a/changelog b/changelog new file mode 100644 index 0000000000..4a5cb17d1c --- /dev/null +++ b/changelog @@ -0,0 +1,7684 @@ +thunderbird (1:102.15.1-1~deb12u1) bookworm-security; urgency=medium + + * [55faec4] New upstream version 102.15.1 + Fixed CVE issues in upstream version 102.15.1 (MFSA 2023-40): + CVE-2023-4863: Heap buffer overflow in libwebp + + -- Carsten Schoenert Thu, 14 Sep 2023 09:12:52 +0530 + +thunderbird (1:102.15.0-1~deb12u1) bookworm-security; urgency=medium + + * [6c701df] New upstream version 102.15.0 + Fixed CVE issues in upstream version 102.15 (MFSA 2023-35): + CVE-2023-4573: Memory corruption in IPC CanvasTranslator + CVE-2023-4574: Memory corruption in IPC ColorPickerShownCallback + CVE-2023-4575: Memory corruption in IPC FilePickerShownCallback + CVE-2023-4576: Integer Overflow in RecordedSourceSurfaceCreation + CVE-2023-4581: XLL file extensions were downloadable without warnings + CVE-2023-4584: Memory safety bugs fixed in Firefox 117, Firefox ESR + 102.15, Firefox ESR 115.2, Thunderbird 102.15, and + Thunderbird 115.2 + + -- Christoph Goehre Thu, 31 Aug 2023 17:15:52 +0200 + +thunderbird (1:102.14.0-1~deb12u1) bookworm-security; urgency=medium + + * [bcc7c87] New upstream version 102.14.0 + Fixed CVE issues in upstream version 102.14 (MFSA 2023-32): + CVE-2023-4045: Offscreen Canvas could have bypassed cross-origin restrictions + CVE-2023-4046: Incorrect value used during WASM compilation + CVE-2023-4047: Potential permissions request bypass via clickjacking + CVE-2023-4048: Crash in DOMParser due to out-of-memory conditions + CVE-2023-4049: Fix potential race conditions when releasing platform objects + CVE-2023-4050: Stack buffer overflow in StorageManager + CVE-2023-4055: Cookie jar overflow caused unexpected cookie jar state + CVE-2023-4056: Memory safety bugs fixed in Firefox 116, Firefox ESR 115.1, + Firefox ESR 102.14, Thunderbird 115.1, and Thunderbird 102.14 + * Rebuild for bookworm-security + + -- Carsten Schoenert Fri, 04 Aug 2023 19:48:57 +0200 + +thunderbird (1:102.13.1-1~deb12u1) bookworm-security; urgency=medium + + * Rebuild for bookworm-security + + -- Carsten Schoenert Fri, 28 Jul 2023 16:02:28 +0200 + +thunderbird (1:102.13.1-1) unstable; urgency=medium + + * [e803b54] New upstream version 102.13.1 + Fixed CVE issues in upstream version 102.13.1 (MFSA 2023-28): + CVE-2023-3417: File Extension Spoofing using the Text Direction + Override Character + * [456ce20] Rebuild patch queue from patch-queue branch + Added patch: + fixes/gfx-Fix-inclusion-of-C-header.patch + fixes/toolkit-Fix-inclusion-of-C-header.patch + (Closes: #1037872) + + -- Carsten Schoenert Wed, 26 Jul 2023 19:48:59 +0200 + +thunderbird (1:102.13.0-1~deb12u1) bookworm-security; urgency=medium + + * Rebuild for bookworm-security + (Closes: #971790, #1006432) + + -- Carsten Schoenert Sat, 08 Jul 2023 08:15:29 +0200 + +thunderbird (1:102.13.0-1) unstable; urgency=medium + + * [7168011] New upstream version 102.13.0 + Fixed CVE issues in upstream version 102.13 (MFSA 2023-24): + CVE-2023-37201: Use-after-free in WebRTC certificate generation + CVE-2023-37202: Potential use-after-free from compartment mismatch in + SpiderMonkey + CVE-2023-37207: Fullscreen notification obscured + CVE-2023-37208: Lack of warning when opening Diagcab files + CVE-2023-37211: Memory safety bugs fixed in Firefox 115, Firefox ESR + 102.13, and Thunderbird 102.13 + (Closes: #971790, #1006432) + + -- Carsten Schoenert Sat, 08 Jul 2023 06:15:04 +0200 + +thunderbird (1:102.12.0-1~deb12u1) bookworm-security; urgency=medium + + * Rebuild for bookworm-security + + -- Carsten Schoenert Sat, 10 Jun 2023 08:23:12 +0200 + +thunderbird (1:102.12.0-1) unstable; urgency=medium + + * [a285966] New upstream version 102.12.0 + Fixed CVE issues in upstream version 102.12 (MFSA 2023-21): + CVE-2023-34414: Click-jacking certificate exceptions through rendering lag + CVE-2023-34416: Memory safety bugs fixed in Thunderbird 102.12 + * [73c48d4] d/control: Add libotr5 to Depends + + -- Carsten Schoenert Mon, 05 Jun 2023 18:51:11 +0200 + +thunderbird (1:102.11.0-1) unstable; urgency=medium + + [ intrigeri ] + * [f3e5479] AppArmor: update profile from upstream at + commit a03a894c6c30b7a566aa74645802de1cea580bca + + [ Carsten Schoenert ] + * [0626d72] New upstream version 102.11.0 + Fixed CVE issues in upstream version 102.11 (MFSA 2023-18): + CVE-2023-32205: Browser prompts could have been obscured by popups + CVE-2023-32206: Crash in RLBox Expat driver + CVE-2023-32207: Potential permissions request bypass via clickjacking + CVE-2023-32211: Content process crash due to invalid wasm code + CVE-2023-32212: Potential spoof due to obscured address bar + CVE-2023-32213: Potential memory corruption in FileReader::DoReadData() + CVE-2023-32215: Memory safety bugs fixed in Thunderbird 102.11 + + -- Carsten Schoenert Fri, 12 May 2023 17:11:29 +0200 + +thunderbird (1:102.10.0-1) unstable; urgency=medium + + * [8afefce] New upstream version 102.10.0 + Fixed CVE issues in upstream version 102.10 (MFSA 2023-15): + CVE-2023-29532: Mozilla Maintenance Service Write-lock bypass + CVE-2023-29533: Fullscreen notification obscured + CVE-2023-1999: Double-free in libwebp + CVE-2023-29535: Potential Memory Corruption following Garbage Collector + compaction + CVE-2023-29536: Invalid free from JavaScript code + CVE-2023-0547: Revocation status of S/Mime recipient certificates was + not checked + CVE-2023-29479: Hang when processing certain OpenPGP messages + CVE-2023-29539: Content-Disposition filename truncation leads to + Reflected File Download + CVE-2023-29541: Files with malicious extensions could have been + downloaded unsafely on Linux + CVE-2023-29542: Bypass of file download extension restrictions + CVE-2023-1945: Memory Corruption in Safe Browsing Code + CVE-2023-29548: Incorrect optimization result on ARM64 + CVE-2023-29550: Memory safety bugs fixed in Thunderbird 102.10 + + -- Carsten Schoenert Mon, 17 Apr 2023 21:32:45 +0200 + +thunderbird (1:102.9.1-1) unstable; urgency=medium + + [ Timothy Pearson ] + * [de7c4f8] Explicitly set SQLite endianness on ppc64el + (Closes: #1033534) + + [ Carsten Schoenert ] + * [06059fb] New upstream version 102.9.1 + Fixed CVE issues in upstream version 102.9.1 (MFSA 2023-12): + CVE-2023-28427: Matrix SDK bundled with Thunderbird vulnerable to + denial-of-service attack + + -- Carsten Schoenert Wed, 29 Mar 2023 17:34:39 +0200 + +thunderbird (1:102.9.0-1) unstable; urgency=medium + + * [ad8cc7c] New upstream version 102.9.0 + Fixed CVE issues in upstream version 102.9 (MFSA 2023-11): + CVE-2023-25751: Incorrect code generation during JIT compilation + CVE-2023-28164: URL being dragged from a removed cross-origin iframe + into the same tab triggered navigation + CVE-2023-28162: Invalid downcast in Worklets + CVE-2023-25752: Potential out-of-bounds when accessing throttled streams + CVE-2023-28176: Memory safety bugs fixed in Thunderbird 102.9 + * [b0a22c0] d/control: Increase Standards-Version to 4.6.2 + No further changes needed. + + -- Carsten Schoenert Wed, 15 Mar 2023 19:54:53 +0100 + +thunderbird (1:102.8.0-1) unstable; urgency=medium + + * [b130936] New upstream version 102.8.0 + Fixed CVE issues in upstream version 102.8.0 (MFSA 2023-07): + CVE-2023-0616: User Interface lockup with messages combining S/MIME and + OpenPGP + CVE-2023-25728: Content security policy leak in violation reports using + iframes + CVE-2023-25730: Screen hijack via browser fullscreen mode + CVE-2023-0767: Arbitrary memory write via PKCS 12 in NSS + CVE-2023-25735: Potential use-after-free from compartment mismatch in + SpiderMonkey + CVE-2023-25737: Invalid downcast in SVGUtils::SetupStrokeGeometry + CVE-2023-25739: Use-after-free in + mozilla::dom::ScriptLoadContext::~ScriptLoadContext + CVE-2023-25729: Extensions could have opened external schemes without + user knowledge + CVE-2023-25732: Out of bounds memory write from EncodeInputStream + CVE-2023-25742: Web Crypto ImportKey crashes tab + CVE-2023-25746: Memory safety bugs fixed in Thunderbird 102.8 + * [66e2335] Rebuild patch queue from patch-queue branch + Removed patch (included upstream): + debian-hacks/Python-3.11-Don-t-use-mode-rU-any-more.patch + + -- Carsten Schoenert Fri, 17 Feb 2023 20:17:32 +0100 + +thunderbird (1:102.7.2-1) unstable; urgency=medium + + * [468e468] New upstream version 102.7.2 + + -- Carsten Schoenert Wed, 08 Feb 2023 18:34:59 +0100 + +thunderbird (1:102.7.1+1-1) unstable; urgency=medium + + * [5ce0e7d] New upstream version 102.7.1+1 + Fixed CVE issues in upstream version 102.7.1 (MFSA 2023-04): + CVE-2023-0430: Revocation status of S/Mime signature certificates was + not checked + Note: The previous version 1:102.7.1-1 was build on top of a release + candidate which does not fixed CVE-2023-0430 fully. + (Closes: #1029594, #1029606) + * [c7c81a5] apparmor: Expand profile folder about .mozilla-thunderbird + (Closes: #1030532) + + -- Carsten Schoenert Sun, 05 Feb 2023 17:27:40 +0100 + +thunderbird (1:102.7.1-1) unstable; urgency=medium + + * [dbc3385] New upstream version 102.7.1 + Fixed CVE issues in upstream version 102.7 (MFSA 2023-03): + CVE-2022-46871: libusrsctp library out of date + CVE-2023-23598: Arbitrary file read from GTK drag and drop on Linux + CVE-2023-23601: URL being dragged from cross-origin iframe into same + tab triggers navigation + CVE-2023-23602: Content Security Policy wasn't being correctly applied + to WebSockets in WebWorkers + CVE-2022-46877: Fullscreen notification bypass + CVE-2023-23603: Calls to console.log allowed bypasing + Content Security Policy via format directive + CVE-2023-23605: Memory safety bugs fixed in Thunderbird 102.7 + * [af92a36] Rebuild patch queue from patch-queue branch + Added patch: + debian-hacks/Python-3.11-Don-t-use-mode-rU-any-more.patch + (Closes: #1028885) + + -- Carsten Schoenert Tue, 24 Jan 2023 16:32:06 +0100 + +thunderbird (1:102.6.0-1) unstable; urgency=medium + + [ Paul Gevers ] + * [6bbbd94] tests: thunderbird no longer builds on armel and armhf, so + let's not fail while trying to test there + * [d9e09a0] tests: help.sh is really a very superficial test, so let's + mark it as such + + [ Carsten Schoenert ] + * [43b90d6] New upstream version 102.6.0 + Fixed CVE issues in upstream version 102.6 (MFSA 2022-53): + CVE-2022-46880: Use-after-free in WebGL + CVE-2022-46872: Arbitrary file read from a compromised content process + CVE-2022-46881: Memory corruption in WebGL + CVE-2022-46874: Drag and Dropped Filenames could have been truncated to + malicious extensions + CVE-2022-46882: Use-after-free in WebGL + CVE-2022-46878: Memory safety bugs fixed in Thunderbird 102.6 + * [745c1a3] Rebuild patch queue from patch-queue branch + Removed patches (included upstream): + fixes/Bug-1773070-Rename-remove-some-eventState-s-variables.-r-.patch + fixes/Bug-1782988-Avoid-build-bustage-when-building-against-gli.patch + fixes/Bug-1782988-Fix-use-of-arc4random_buf-use-in-ping.cpp.-r-.patch + * [1e74214] d/control: Increase buid dep on libnss3-dev to 3.79.2 + + -- Carsten Schoenert Tue, 13 Dec 2022 19:40:57 +0100 + +thunderbird (1:102.5.1-1) unstable; urgency=medium + + * [ae4d1ff] New upstream version 102.5.1 + Fixed CVE issues in upstream version 102.5.1 (MFSA 2022-50): + CVE-2022-45414: Quoting from an HTML email with certain tags will trigger + network requests and load remote content, regardless of + a configuration to block remote content + + -- Carsten Schoenert Wed, 30 Nov 2022 12:27:38 +0100 + +thunderbird (1:102.5.0-1) unstable; urgency=medium + + * [2f04265] New upstream version 102.5.0 + Fixed CVE issues in upstream version 102.5 (MFSA 2022-49): + CVE-2022-45403: Service Workers might have learned size of cross-origin + media files + CVE-2022-45404: Fullscreen notification bypass + CVE-2022-45405: Use-after-free in InputStream implementation + CVE-2022-45406: Use-after-free of a JavaScript Realm + CVE-2022-45408: Fullscreen notification bypass via windowName + CVE-2022-45409: Use-after-free in Garbage Collection + CVE-2022-45410: ServiceWorker-intercepted requests bypassed SameSite + cookie policy + CVE-2022-45411: Cross-Site Tracing was possible via non-standard + override headers + CVE-2022-45412: Symlinks may resolve to partially uninitialized buffers + CVE-2022-45416: Keystroke Side-Channel Leakage + CVE-2022-45418: Custom mouse cursor could have been drawn over + browser UI + CVE-2022-45420: Iframe contents could be rendered outside the iframe + CVE-2022-45421: Memory safety bugs fixed in Thunderbird 102.5 + * [57e94ac] Rebuild patch queue from patch-queue branch + Added patches: + fixes/Bug-1782988-Avoid-build-bustage-when-building-against-gli.patch + fixes/Bug-1782988-Fix-use-of-arc4random_buf-use-in-ping.cpp.-r-.patch + (Closes: #1023789) + + -- Carsten Schoenert Sat, 15 Nov 2022 19:34:55 +0100 + +thunderbird (1:102.4.1-1) unstable; urgency=medium + + [ intrigeri ] + * [37c5b01] AppArmor: update profile from upstream at commit + 09fa2669dc95cb336d133a6b96cac227e3aa73dc + This allows running Thunderbird as a native Wayland application. + + [ Carsten Schoenert ] + * [031c4a2] New upstream version 102.4.1 + + -- Carsten Schoenert Mon, 31 Oct 2022 18:50:44 +0100 + +thunderbird (1:102.4.0-1) unstable; urgency=medium + + * [6bfe8cd] New upstream version 102.4.0 + Fixed CVE issues in upstream version 102.4 (MFSA 2022-46): + CVE-2022-42927: Same-origin policy violation could have leaked + cross-origin URLs + CVE-2022-42928: Memory Corruption in JS Engine + CVE-2022-42929: Denial of Service via window.print + CVE-2022-42932: Memory safety bugs fixed in Thunderbird 102.4 + + -- Carsten Schoenert Mon, 24 Oct 2022 22:33:05 +0200 + +thunderbird (1:102.3.3-1) unstable; urgency=medium + + * [6729f5d] New upstream version 102.3.3 + + -- Carsten Schoenert Thu, 13 Oct 2022 16:09:50 +0200 + +thunderbird (1:102.3.2-1) unstable; urgency=medium + + * [db7a24f] New upstream version 102.3.2 + + -- Carsten Schoenert Thu, 06 Oct 2022 20:34:42 +0200 + +thunderbird (1:102.3.1-1) unstable; urgency=medium + + * [f845126] New upstream version 102.3.1 + Fixed CVE issues in upstream version 102.3.1 (MFSA 2022-43): + CVE-2022-39249: Matrix SDK bundled with Thunderbird vulnerable to an + impersonation attack by malicious server administrators + CVE-2022-39250: Matrix SDK bundled with Thunderbird vulnerable to a device + verification attack + CVE-2022-39251: Matrix SDK bundled with Thunderbird vulnerable to an + impersonation attack + CVE-2022-39236: Matrix SDK bundled with Thunderbird vulnerable to a data + corruption issue + * [4555808] Rebuild patch queu from patch-queue branch + debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch + fixes/Properly-launch-applications-set-in-HOME-.mailcap.patch + * [344dbfa] d/copyright: Add info about code from Matrix + + -- Carsten Schoenert Thu, 29 Sep 2022 19:09:02 +0200 + +thunderbird (1:102.3.0-1) unstable; urgency=medium + + * [0e841a7] New upstream version 102.3.0 + Fixed CVE issues in upstream version 102.3 (MFSA 2022-42): + CVE-2022-40959: Bypassing FeaturePolicy restrictions on transient pages + CVE-2022-40960: Data-race when parsing non-UTF-8 URLs in threads + CVE-2022-40958: Bypassing Secure Context restriction for cookies with + __Host and __Secure prefix + CVE-2022-40956: Content-Security-Policy base-uri bypass + CVE-2022-40957: Incoherent instruction cache when building WASM on ARM64 + CVE-2022-40962: Memory safety bugs fixed in Thunderbird 102.3 + + -- Carsten Schoenert Fri, 16 Sep 2022 16:56:20 +0200 + +thunderbird (1:102.2.2-1) unstable; urgency=medium + + * [f1dc81f] New upstream version 102.2.2 + + -- Carsten Schoenert Thu, 08 Sep 2022 17:25:57 +0200 + +thunderbird (1:102.2.1-1) unstable; urgency=medium + + * [e1d0f74] New upstream version 102.2.1 + Fixed CVE issues in upstream version 102.2.1 (MFSA 2022-38): + CVE-2022-3033: Leaking of sensitive information when composing a response + to an HTML email with a META refresh tag + CVE-2022-3032: Remote content specified in an HTML document that was + nested inside an iframe's srcdoc attribute was not blocked + CVE-2022-3034: An iframe element in an HTML email could trigger a + network request + CVE-2022-36059: Matrix SDK bundled with Thunderbird vulnerable to + denial-of-service attack + + -- Carsten Schoenert Thu, 01 Sep 2022 07:52:16 +0200 + +thunderbird (1:102.2.0-1) unstable; urgency=medium + + [ Amr Ibrahim ] + * [02a3990] thunderbird.desktop: Update StartupWMClass + (Closes: #1017420, #1014748) + + [ Carsten Schoenert ] + * [f7b62a8] d-create-upstream-tarballs.py: Use correct variable + * [7194457] New upstream version 102.2.0 + Fixed CVE issues in upstream version 102.2 (MFSA 2022-36): + CVE-2022-38472: Address bar spoofing via XSLT error handling + CVE-2022-38473: Cross-origin XSLT Documents would have inherited the + parent's permissions + CVE-2022-38476: Data race and potential use-after-free in PK11_ChangePW + CVE-2022-38477: Memory safety bugs fixed in Thunderbird 102.2 + CVE-2022-38478: Memory safety bugs fixed in Thunderbird 102.2, and + Thunderbird 91.13 + + -- Carsten Schoenert Sun, 28 Aug 2022 17:23:50 +0200 + +thunderbird (1:102.1.2-1) unstable; urgency=medium + + * [78f2899] d/copyright: Update content due upstream changes + * [55dba1d] d/source.filter: Update content to filter out + * [3e19497] Lintian: Adjust overrides for thunderbird package + * [567e0c4] Lintian: Adjust overrides for source package + * [c201484] New upstream version 102.1.2 + (Closes: #1016944) + + -- Carsten Schoenert Thu, 11 Aug 2022 16:37:07 +0200 + +thunderbird (1:102.1.1-1) unstable; urgency=medium + + * [2c1b12f] d/create-upstream-tarballs.py: Adding new helper script + * [a9633b9] d/README.source: Update information on importing data + * [1d2cdc0] d/source.filter: Relax filter rule for old-configure + * [f1afe9b] d/repack.py: Don't exit(1) if unused filter items exist + * [165593a] d/create-thunderbird-l10n-tarball.sh: Drop old helper + * [b4d73ee] d/gbp.conf: Drop 'import-orig' section + * [d186832] d/source.filter: Add files named *.orig and *.rej + * [933b099] New upstream version 102.1.1 + (Closes: #1014675:) + + -- Carsten Schoenert Sat, 06 Aug 2022 11:26:44 +0200 + +thunderbird (1:102.1.0-1) unstable; urgency=medium + + * [3b7bb0d] New upstream version 102.1.0 + Fixed CVE issues in upstream version 102.1 (MFSA 2022-32): + CVE-2022-36319: Mouse Position spoofing with CSS transforms + CVE-2022-36318: Directory indexes for bundled resources reflected URL + parameters + CVE-2022-2505: Memory safety bugs fixed in Thunderbird 102.1 + (Closes: #1016083, #1014745, #1014675, #1014638) + + -- Carsten Schoenert Fri, 29 Jul 2022 17:00:53 +0200 + +thunderbird (1:102.0.2-1) unstable; urgency=medium + + * [079e135] d/repack.py: Small rework and adjustments + * [fc2518e] d/control: Readjust Vcs links to unstable + * [a7b09b3] d/gbp.conf: Sign tags automatically + * [faf115d] New upstream version 102.0.2 + + -- Carsten Schoenert Tue, 12 Jul 2022 18:41:04 +0200 + +thunderbird (1:102.0.1-1) unstable; urgency=medium + + * [68c9410] d/gbp.conf: Adjust upstream branch to new ESR cycle + * [45eca79] New upstream version 102.0.1 + Fixed CVE issues in upstream version 102.0 (MFSA 2022-26): + CVE-2022-34479: A popup window could be resized in a way to overlay the + address bar with web content + CVE-2022-34470: Use-after-free in nsSHistory + CVE-2022-34468: CSP sandbox header without `allow-scripts` can be bypassed + via retargeted javascript: URI + CVE-2022-2226: An email with a mismatching OpenPGP signature date was + accepted as valid + CVE-2022-34481: Potential integer overflow in ReplaceElementsAt + CVE-2022-31744: CSP bypass enabling stylesheet injection + CVE-2022-34472: Unavailable PAC file resulted in OCSP requests being + blocked + CVE-2022-2200: Undesired attributes could be set as part of prototype + pollution + CVE-2022-34484: Memory safety bugs fixed in Thunderbird 91.11 and + Thunderbird 102 + * [1842425] d/watch: Look now for versions starting with 3 digits + * [0a32bb3] d/control: Add package thunderbird-l10n-es-mx + + -- Carsten Schoenert Fri, 08 Jul 2022 17:47:21 +0200 + +thunderbird (1:102.0~b7-1) experimental; urgency=medium + + * [edf32aa] New upstream version 102.0~b7 + * [c9dd3e0] d/control: Remove not required B-D + * [ac2ec70] d/mozconfig.default: Remove commented out options + + -- Carsten Schoenert Tue, 21 Jun 2022 19:06:58 +0200 + +thunderbird (1:102.0~b4-1) experimental; urgency=medium + + * [8f34a01] d/source.filter: Small updates to filtering list + * [e1d4c7c] New upstream version 102.0~b4 + * [c97416b] Rebuild patch-queue from patch queue branch + Removed patch (needs update): + fixes/Bug-1494436-Unset-MOZ_APP_LAUNCHER-for-external-MIME-hand.patch + Removed patch (fixed upstream): + porting-armhf/Don-t-use-LLVM-internal-assembler-on-armhf.patch + * [68712eb] d/mozconfig.default: Disable wasm sandboxing + * [a1df764] d/mozconfig.default: Remove openpgp option + Supporting OpenPGP functionality is now set on by default. + * [607c321] d/mozconfig.default: Add/Update some configure options + * [efc728e] d/rules: Add new needed variable MOZBUILD_STATE_PATH + * [7b0d743] d/rules: Ensure python is used from the environment + * [26053f1] Build against system librnp library + Unfortunately using librnp-dev requires the usage of the internal + versions of botan, bz2 and jsonc. + (Closes: #998848) + * [5e904d8] d/control: Bump various build dependencies + * [94ee0da] d/thunderbird.docs: Update content to install + * [477f949] d/control: Increase Standards-Version to 4.6.1 + No further changes needed. + + -- Carsten Schoenert Wed, 15 Jun 2022 16:47:29 +0200 + +thunderbird (1:91.11.0-1) unstable; urgency=medium + + * [05a947d] New upstream version 91.11.0 + Fixed CVE issues in upstream version 91.11 (MFSA 2022-26): + CVE-2022-34479: A popup window could be resized in a way to overlay the + address bar with web content + CVE-2022-34470: Use-after-free in nsSHistory + CVE-2022-34468: CSP sandbox header without `allow-scripts` can be bypassed + via retargeted javascript: URI + CVE-2022-2226: An email with a mismatching OpenPGP signature date was + accepted as valid + CVE-2022-34481: Potential integer overflow in ReplaceElementsAt + CVE-2022-31744: CSP bypass enabling stylesheet injection + CVE-2022-34472: Unavailable PAC file resulted in OCSP requests being + blocked + CVE-2022-2200: Undesired attributes could be set as part of prototype + pollution + CVE-2022-34484: Memory safety bugs fixed in Thunderbird 91.11 and + Thunderbird 102 + (Closes: #1014004) + * [4c4944d] Rebuild patch queue from patch-queue branch + Added patch: + fixes/Bug-1773070-Rename-remove-some-eventState-s-variables.-r-.patch + + -- Carsten Schoenert Fri, 01 Jul 2022 20:12:40 +0200 + +thunderbird (1:91.10.0-1) unstable; urgency=medium + + * [969960a] New upstream version 91.10.0 + Fixed CVE issues in upstream version 91.9.1 (MFSA 2022-19): + CVE-2022-1802: Prototype pollution in Top-Level Await implementation + CVE-2022-1529: Untrusted input used in JavaScript object indexing, leading + to prototype pollution + + Fixed CVE issues in upstream version 91.10 (MFSA 2022-22): + CVE-2022-31736: Cross-Origin resource's length leaked + CVE-2022-31737: Heap buffer overflow in WebGL + CVE-2022-31738: Browser window spoof using fullscreen mode + CVE-2022-31739: Attacker-influenced path traversal when saving downloaded + files + CVE-2022-31740: Register allocation problem in WASM on arm64 + CVE-2022-31741: Uninitialized variable leads to invalid memory read + CVE-2022-1834: Braille space character caused incorrect sender email to be + shown for a digitally signed email + CVE-2022-31742: Querying a WebAuthn token with a large number of + allowCredential entries may have leaked cross-origin + information + CVE-2022-31747: Memory safety bugs fixed in Thunderbird 91.10 + * [4b55e16] d/control: Increase Standards-Version to 4.6.0 + No further changes needed. + + -- Carsten Schoenert Mon, 30 May 2022 19:36:06 +0200 + +thunderbird (1:91.9.0-1) unstable; urgency=medium + + * [88b99d1] New upstream version 91.9.0 + Fixed CVE issues in upstream version 91.9 (MFSA 2022-18): + CVE-2022-1520: Incorrect security status shown after viewing an attached + email + CVE-2022-29914: Fullscreen notification bypass using popups + CVE-2022-29909: Bypassing permission prompt in nested browsing contexts + CVE-2022-29916: Leaking browser history with CSS variables + CVE-2022-29911: iframe sandbox bypass + CVE-2022-29912: Reader mode bypassed SameSite cookies + CVE-2022-29913: Speech Synthesis feature not properly disabled + CVE-2022-29917: Memory safety bugs fixed in Thunderbird 91.9 + + -- Carsten Schoenert Mon, 16 May 2022 13:51:59 +0200 + +thunderbird (1:91.8.1-1) unstable; urgency=medium + + * [b57406c] New upstream version 91.8.1 + (Closes: #1009321) + + -- Carsten Schoenert Tue, 19 Apr 2022 20:27:13 +0200 + +thunderbird (1:91.8.0-1) unstable; urgency=medium + + * [06619c5] New upstream version 91.8.0 + Fixed CVE issues in upstream version 91.8 (MFSA 2022-15): + CVE-2022-1097: Use-after-free in NSSToken objects + CVE-2022-28281: Out of bounds write due to unexpected WebAuthN Extensions + CVE-2022-1197: OpenPGP revocation information was ignored + CVE-2022-1196: Use-after-free after VR Process destruction + CVE-2022-28282: Use-after-free in DocumentL10n::TranslateDocument + CVE-2022-28285: Incorrect AliasSet used in JIT Codegen + CVE-2022-28286: iframe contents could be rendered outside the border + CVE-2022-24713: Denial of Service via complex regular expressions + CVE-2022-28289: Memory safety bugs fixed in Thunderbird 91.8 + + -- Carsten Schoenert Wed, 06 Apr 2022 20:08:25 +0200 + +thunderbird (1:91.7.0-2) unstable; urgency=medium + + * [c348b62] Rebuild patch-queue from patch queue branch + Added patch: + fixes/Bug-1494436-Unset-MOZ_APP_LAUNCHER-for-external-MIME-hand.patch + (Closes: #948691) + Thanks go out to Simon McVittie for preparing this patch! + + -- Carsten Schoenert Wed, 16 Mar 2022 06:55:46 +0100 + +thunderbird (1:91.7.0-1) unstable; urgency=medium + + * [952f6d0] New upstream version 91.7.0 + Fixed CVE issues in upstream version 91.7 (MFSA 2022-12): + CVE-2022-26383: Browser window spoof using fullscreen mode + CVE-2022-26384: iframe allow-scripts sandbox bypass + CVE-2022-26387: Time-of-check time-of-use bug when verifying add-on + signatures + CVE-2022-26381: Use-after-free in text reflows + CVE-2022-26386: Temporary files downloaded to /tmp and accessible by other + local users + + -- Carsten Schoenert Tue, 15 Mar 2022 17:54:46 +0100 + +thunderbird (1:91.6.2-1) unstable; urgency=medium + + * [2f95b97] New upstream version 91.6.2 + Fixed CVE issues in upstream version 91.6.2 (MFSA 2022-09): + CVE-2022-26485: Use-after-free in XSLT parameter processing + CVE-2022-26486: Use-after-free in WebGPU IPC Framework + + -- Carsten Schoenert Tue, 08 Mar 2022 08:40:12 +0100 + +thunderbird (1:91.6.1-1) unstable; urgency=medium + + * [3edb855] New upstream version 91.6.1 + Fixed CVE issues in upstream version 91.6.1 (MFSA 2022-07): + CVE-2022-0566: Crafted email could trigger an out-of-bounds write + + -- Carsten Schoenert Sat, 19 Feb 2022 11:01:46 +0100 + +thunderbird (1:91.6.0-1) unstable; urgency=medium + + * [884ccb6] New upstream version 91.6.0 + Fixed CVE issues in upstream version 91.6 (MFSA 2022-06): + CVE-2022-22754: Extensions could have bypassed permission confirmation + during update + CVE-2022-22756: Drag and dropping an image could have resulted in the + dropped object being an executable + CVE-2022-22759: Sandboxed iframes could have executed script if the parent + appended elements + CVE-2022-22760: Cross-Origin responses could be distinguished between + script and non-script content-types + CVE-2022-22761: frame-ancestors Content Security Policy directive was not + enforced for framed extension pages + CVE-2022-22763: Script Execution during invalid object state + CVE-2022-22764: Memory safety bugs fixed in Thunderbird 91.6 + (Closes: #1004951) + + -- Carsten Schoenert Fri, 11 Feb 2022 18:50:23 +0100 + +thunderbird (1:91.5.1-1) unstable; urgency=medium + + * [130bab2] New upstream version 91.5.1 + + -- Carsten Schoenert Sun, 23 Jan 2022 18:41:12 +0100 + +thunderbird (1:91.5.0-2) unstable; urgency=medium + + * [fd07163] autopkgtest: Run check-global-config-path.py only on Intel + + -- Carsten Schoenert Wed, 12 Jan 2022 20:46:54 +0100 + +thunderbird (1:91.5.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [8d4e5f8] New upstream version 91.5.0 + Fixed CVE issues in upstream version 91.5 (MFSA 2022-03): + CVE-2022-22743: Browser window spoof using fullscreen mode + CVE-2022-22742: Out-of-bounds memory access when inserting text in edit + mode + CVE-2022-22741: Browser window spoof using fullscreen mode + CVE-2022-22740: Use-after-free of ChannelEventQueue::mOwner + CVE-2022-22738: Heap-buffer-overflow in blendGaussianBlur + CVE-2022-22737: Race condition when playing audio files + CVE-2021-4140: Iframe sandbox bypass with XSLT + CVE-2022-22748: Spoofed origin on external protocol launch dialog + CVE-2022-22745: Leaking cross-origin URLs through securitypolicyviolation + event + CVE-2022-22744: The 'Copy as curl' feature in DevTools did not fully + escape website-controlled data, potentially leading to + command injection + CVE-2022-22747: Crash when handling empty pkcs7 sequence + CVE-2022-22739: Missing throttling on external protocol launch dialog + CVE-2022-22751: Memory safety bugs fixed in Thunderbird 91.5 + * [a86c0b4] Rebuild patch queue from patch-queue branch + Modified patch: + debian-hacks/Add-another-preferences-directory-for-applications-p.patch + Reworking the patch so LoadDirIntoArray is working again that is adding + an additional syspref folder for global settings to use. + (Closes: #997841, #1003280) + * [442988b] autopkgtest: Adding check for accessing syspref folder + + [ Jochen Sprickerhof ] + * [5b5d508] d/thunderbird-wrapper.sh: Use 'command -v' + (Closes:#1002570 ) + + -- Carsten Schoenert Tue, 11 Jan 2022 19:12:50 +0100 + +thunderbird (1:91.4.1-1) unstable; urgency=medium + + * [c5b36d3] New upstream version 91.4.1 + Fixed CVE issues in upstream version 91.4.1 (MFSA 2021-55): + CVE-2021-4126: OpenPGP signature status doesn't consider additional + message content + CVE-2021-44538: Matrix chat library libolm bundled with Thunderbird + vulnerable to a buffer overflow + * [b66bebb] d/changelog: Update some MOZ-* entries with assigned CVEs + + -- Carsten Schoenert Mon, 20 Dec 2021 16:05:02 +0100 + +thunderbird (1:91.4.0-1) unstable; urgency=medium + + * [7752be0] d/source.filter: Small updates to filtering list + * [0899850] New upstream version 91.4.0 + Fixed CVE issues in upstream version 91.4 (MFSA 2021-54): + CVE-2021-43536: URL leakage when navigating while executing asynchronous + function + CVE-2021-43537: Heap buffer overflow when using structured clone + CVE-2021-43538: Missing fullscreen and pointer lock notification when + requesting both + CVE-2021-43539: GC rooting failure when calling wasm instance methods + CVE-2021-43541: External protocol handler parameters were unescaped + CVE-2021-43542: XMLHttpRequest error codes could have leaked the existence + of an external protocol handler + CVE-2021-43543: Bypass of CSP sandbox directive when embedding + CVE-2021-43545: Denial of Service when using the Location API in a loop + CVE-2021-43546: Cursor spoofing could overlay user interface when native + cursor is zoomed + CVE-2021-43528: JavaScript unexpectedly enabled for the composition area + CVE-2021-4129: Memory safety bugs fixed in Thunderbird 91.4.0 + * [afd7750] d/t.lintian-overrides: Update entries due renamed tags + Some Lintan tags were renamed, thus requires am adjustment of the existing + overrides. + * [30a387c] d/s/lintian-overrides: Adjust most of the existing entries + Same as before but for the source package. + + -- Carsten Schoenert Tue, 07 Dec 2021 18:26:44 +0100 + +thunderbird (1:91.3.2-1) unstable; urgency=medium + + * [7fd56f0] New upstream version 91.3.2 + * [4fccecb] Rebuild patch queue from patch-queue branch + Added patch: + debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch + + -- Carsten Schoenert Sun, 21 Nov 2021 18:29:42 +0100 + +thunderbird (1:91.3.0-1) unstable; urgency=medium + + * [1d3e0b1] Revert "Rebuild patch queue from patch-queue branch" + The patch for fixing the broken build on i386 breaks other architectures, + so reverting for now. + * [66755b4] New upstream version 91.3.0 + Fixed CVE issues in upstream version 91.3 (MFSA 2021-50): + CVE-2021-38503: iframe sandbox rules did not apply to XSLT stylesheets + CVE-2021-38504: Use-after-free in file picker dialog + CVE-2021-38506: Thunderbird could be coaxed into going into fullscreen + mode without notification or warning + CVE-2021-38507: Opportunistic Encryption in HTTP2 could be used to bypass + the Same-Origin-Policy on services hosted on other ports + CVE-2021-43535: Use-after-free in HTTP2 Session object + CVE-2021-38508: Permission Prompt could be overlaid, resulting in user + confusion and potential spoofing + CVE-2021-38509: Javascript alert box could have been spoofed onto an + arbitrary domain + CVE-2021-43534: Memory safety bugs fixed in Thunderbird ESR 91.3 + + -- Carsten Schoenert Wed, 03 Nov 2021 18:14:09 +0100 + +thunderbird (1:91.2.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [bcb5677] d/gbp.conf: Adjust to upstream-91.x + * [12a433a] New upstream version 91.2.1 + * [f935b52] Rebuild patch queue from patch-queue branch + Added patch: + debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch + * [3faba71] Disable usage of system icu package + The system packages of libicu-dev are to old for Thunderbird, we need to + use the internel pre-shipped ICU sources. + + -- Carsten Schoenert Sat, 23 Oct 2021 08:59:32 +0200 + +thunderbird (1:91.2.0-1) experimental; urgency=medium + + * [3c88844] New upstream version 91.2.0 + Fixed CVE issues in upstream version 91.2 (MFSA 2021-47): + CVE-2021-38502: Downgrade attack on SMTP STARTTLS connections + CVE-2021-38496: Use-after-free in MessageTask + CVE-2021-38497: Validation message could have been overlaid on another + origin + CVE-2021-38498: Use-after-free of nsLanguageAtomService object + CVE-2021-32810: Data race in crossbeam-deque + CVE-2021-38500: Memory safety bugs fixed in Thunderbird 91.2 + CVE-2021-38501: Memory safety bugs fixed in Thunderbird 91.2 + (Closes: #973042) + + -- Carsten Schoenert Sat, 16 Oct 2021 08:27:55 +0200 + +thunderbird (1:91.1.1-1) experimental; urgency=medium + + * [73e3b75] New upstream version 91.1.1 + * [3413d35] Rebuild patch queue from patch-queue branch + Removed patch: + fixes/Bug-1727113-Never-require-that-addons-are-signed-for-Thun.patch + + -- Carsten Schoenert Mon, 20 Sep 2021 20:43:25 +0200 + +thunderbird (1:91.1.0-1) experimental; urgency=medium + + * [0b1d9f9] New upstream version 91.1.0 + Fixed CVE issues in upstream version 91.1 (MFSA 2021-41): + CVE-2021-38495: Memory safety bugs fixed in Thunderbird 91.1 + * [4313e64] Rebuild patch queue from patch-queue branch + Added patch: + fixes/Bug-1727113-Never-require-that-addons-are-signed-for-Thun.patch + (Closes: #993594) + Modified patch: + porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch + * [234c566] d/rules: Don't run dh_autoreconf + (Closes: #993494) + * [bce15d7] thunderbird: Set package x11-utils as fallback + Install x11-utils only if kdialog or zenity aren't present on the system. + + -- Carsten Schoenert Sun, 05 Sep 2021 07:36:10 +0200 + +thunderbird (1:91.0.2-1) experimental; urgency=medium + + * [a5efefd] New upstream version 91.0.2 + Fixed CVE issues in upstream version 91.0.1 (MFSA 2021-37): + CVE-2021-29991: Header Splitting possible with HTTP/3 Responses + * [b21a07b] d/control: increase Standards-Version to 4.6.0 + No further changes needed. + + -- Carsten Schoenert Mon, 23 Aug 2021 20:05:01 +0200 + +thunderbird (1:91.0-1) experimental; urgency=medium + + * [3be73b6] d/source.filter: some updates to filtering list + * [5c87a00] New upstream version 91.0 + Fixed CVE issues in upstream version 91.0 (MFSA 2021-36): + CVE-2021-29986: Race condition when resolving DNS names could have led to + memory corruption + CVE-2021-29981: Live range splitting could have led to conflicting + assignments in the JIT + CVE-2021-29988: Memory corruption as a result of incorrect style treatment + CVE-2021-29984: Incorrect instruction reordering during JIT optimization + CVE-2021-29980: Uninitialized memory in a canvas object could have led to + memory corruption + CVE-2021-29987: Users could have been tricked into accepting unwanted + permissions on Linux + CVE-2021-29985: Use-after-free media channels + CVE-2021-29982: Single bit data leak due to incorrect JIT optimization and + type confusion + CVE-2021-29989: Memory safety bugs fixed in Thunderbird 91 + (Closes: #640927, #944208, #958433, #952853, #971722, #982670) + * [0157fe4] d/control: Add new package thunderbird-l10n-af + Upstream ships localizations for Africaans. + * [f23e9e0] d/control: Add new package thunderbird-l10n-en-ca + Upstream ships localizations for English (Canada). + * [8b3cee9] d/control: Add new package thunderbird-l10n-lv + Upstream ships localizations for Latvian. + * [cad58ea] d/control: Add new package thunderbird-l10n-pa-in + Upstream ships localizations for Punjabi (Gurmukhi). + * [aecc2da] d/control: Add new package thunderbird-l10n-th + Upstream ships localizations for Thai. + * [9707e8a] Moving over to debhelper-compat + Switch over to recent debhelper-compat 13. + * [2934049] d/rules: Customize dh_missing call + Due debhelper-compat dh_missing needs some aditional tweaking as we need + to ignore some files which are built and installed into the tempory + install folder but not installed into the package(s). + * [7df72c6] d/rules: Don't use dwz + Running and using dwz is bringing no gain and produces issues to, can be + ignored for now. + * [1709f28] d/control: Remove non existing packages from Breaks + xul-ext-firetray and xul-ext-quotecolors are gone from the supported + releases. + * [f160918] d/control: Adding Rules-Requires-Root: no + No specific root access required so far while package build. + + -- Carsten Schoenert Sat, 14 Aug 2021 18:27:21 +0200 + +thunderbird (1:91.0~b5-1) experimental; urgency=medium + + * [119a49f] d/control: Adjust VCS links to branch debian/experimental + * [7ae6acc] d/source.filter: some updates to filtering list + * [e28b2f9] New upstream version 91.0~b5 + + -- Carsten Schoenert Sun, 01 Aug 2021 09:21:27 +0200 + +thunderbird (1:91.0~b3-1) experimental; urgency=medium + + * [90a153b] New upstream version 91.0~b3 + * [ada2cf0] d/control: Remove transitional package lightning + * [3e5087f] d/control: Remove obsolete lightning-l10-* packages + * [6eac520] d/control: Remove Suggests on libgtk2.0-0 fur thunderbird + (Closes: #967771) + + -- Carsten Schoenert Sat, 24 Jul 2021 10:37:52 +0200 + +thunderbird (1:91.0~b1-1) experimental; urgency=medium + + * [78f0ddb] d/source.filter: some updates to filtering list + * [3d29fcf] New upstream version 91.0~b1 + (Closes: #990631) + * [daa7fab] d/control: Increase some Build-Depends + * [f4bfd22] d/control: Remove libgtk2.0-dev from Build-Depends + * [ad4e281] d/s/lintian-overrides: Adding one more file to ignore + + -- Carsten Schoenert Mon, 19 Jul 2021 22:04:15 +0200 + +thunderbird (1:90.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [3cc0d66] d/source.filter: some updates to filtering list + * [3c76a94] New upstream version 90.0~b2 + * [46718fe] rebuild patch queue from patch-queue branch + removed patches: + fixes/reduce-the-rust-debuginfo-level-on-selected-architectures.patch + debian-hacks/Work-around-Debian-bug-844357.patch + * [156d3c9] d/thunderbird.1: Correct debugger option + * [ca7daca] /u/l/thunderbird: Correct escape sequencing for gdb calling + (Closes: #976979) + * [f310330] d/thunderbird-wrapper.sh: Use '${}' syntax for variables + * [0ef3788] d/thunderbird.install: Remove gtk2 cruft + * [17b0510] d/copyright: Update due removed content + * [feca305] d/s/lintian-override: Remove two no longer existing entries + + [ Kevin Locke ] + * [dbe3c3e] d/thunderbird-wrapper.sh: Make gdb call more fail safe + (Closes:#942799) + + -- Carsten Schoenert Sun, 20 Jun 2021 14:51:49 +0200 + +thunderbird (1:89.0~b2-1) experimental; urgency=medium + + * [74911c7] New upstream version 89.0~b2 + * [b4fef2a] rebuild patch queue from patch-queue branch + modified patches: + debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + porting-armhf/Don-t-use-LLVM-internal-assembler-on-armhf.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + removed patches: + debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + * [ea6a29e] d/control: Increase B-D for cbindgen and libnss3-dev + + -- Carsten Schoenert Thu, 03 Jun 2021 19:40:08 +0200 + +thunderbird (1:88.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [7af1a0b] New upstream version 88.0~b2 + * [30d1d48] rebuild patch queue from patch-queue branch + modified patch: + debian-hacks/Add-another-preferences-directory-for-applications-p.patch + porting-armhf/Don-t-use-LLVM-internal-assembler-on-armhf.patch + removed patches (included upstream): + porting-arm/Reduce-memory-usage-while-linking-on-arm-el-hf-platforms.patch + porting-s390x/Explicitly-instantiate-TIntermTraverser-traverse-TIntermN.patch + renamed patch: + fixes/Load-dependent-libraries-with-their-real-path-to-avo.patch -> + fixes/Load-dependent-libraries-with-their-real-path.patch + * [f45da92] d/control: Increase B-D for libnss3-dev + + [ Colomban Wendling ] + * [bbf78cb] d/thunderbird.desktop: Switch StartupWMClass (Closes: #985366) + + [ Carsten Schoenert ] + * [a2cc9e0] d/control: Adding nasm to Build-Depends + * [41fad62] d/copyright: update due removed content + + -- Carsten Schoenert Sun, 11 Apr 2021 13:50:27 +0200 + +thunderbird (1:86.0~b3-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [002f597,fe0515b] d/source.filter: updating the filtering list + * [dfafc89,35d050f] d/copyright: updates due upstream changes + Add Apache2 notice for third_party/python/coverage + * [24c009c] lintian: adding override for false positive in SVG file + * [d316a1c] New upstream version 86.0~b3 + * [20dc687] rebuild patch queue from patch-queue branch + modified patch: + debian/patches/porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + * [21b86f0] d/copyright: update due removed content + * [7fc9755] d/s/lintian-override: path for TeXZilla.js has changed + * [33c5d5a] d/s/lintian-override: remove JS file + * [825a440] d/control: Increase B-D for cbindgen + + [ Pino Toscano ] + * [35c3c3b] thunderbird: Stop shipping /u/s/p/thunderbird.png symlink + + -- Carsten Schoenert Sat, 13 Feb 2021 13:41:36 +0100 + +thunderbird (1:85.0~b3-1) experimental; urgency=medium + + * [b142ac6] New upstream version 85.0~b3 + * [0d2221a] d/control: Increase various B-D versions + * [e4eb52e] rebuild patch queue from patch-queue branch + added patch: + debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch + updated patches: + debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch + fixes/reduce-the-rust-debuginfo-level-on-selected-architectures.patch + + -- Carsten Schoenert Thu, 31 Dec 2020 20:39:53 +0100 + +thunderbird (1:84.0~b3-1) experimental; urgency=medium + + * [fad5103] calendar-google-provider*: removing left over cruft + * [b095d8e] thunderbird.NEWS: Add hint about integration of OpenPGP support + * [0f6bdf3] Revert "d/tb.lintian-overrides: ignore warning about none + versioned breaks" + * [f10f80c] d/copyright: update content + * [9c3fb20] d/source.filter: some updates to filtering list + * [c9b8274] New upstream version 84.0~b3 + * [adf3835] rebuild patch queue from patch-queue branch + removed patches: + fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch + fixes/fix-function-nsMsgComposeAndSend-to-respect-Replo.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-mips/Bug-1642265-MIPS64-Add-branchTestSymbol-and-fallibleUnbox.patch + porting-s390x/Use-more-recent-embedded-version-of-sqlite3.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + porting-sh4/Add-sh4-support-to-Thunderbird.patch + * [3ff9c9d] thunderbird-l10n-all: add thunderbird-l10n-cy + (Closes: #974127) + * [393490c] d/control: remove l10n package for Sinhala + * [1f4e966] d/control: increase Standards-Version to 4.5.1 + No further changes needed. + * [288afdd] d/rules: use python3 explicitly while calling mach + Using the Python 3 interpreter is needed otherwise the Mozilla magic tries + to use a non existing virtualenv environment. + * [a509bdf] d/watch: update to version 4 + No further changes needed. + * [fc6b358] d/copyright: update some more content + Updating the copyright information due upstream modifications. + * [3bd5713] d/s/lintian-overrides: Adding more file to ignore + + -- Carsten Schoenert Mon, 14 Dec 2020 15:24:59 +0100 + +thunderbird (1:78.14.0-1) unstable; urgency=medium + + * [6dc6817] d/changelog: Correct TB version for referenced MFSA + * [38f01f4] d/rules: Don't run dh_autoreconf + (Closes: #993494) + * [09c4cde] New upstream version 78.14.0 + Fixed CVE issues in upstream version 78.14.0 (MFSA 2021-42): + CVE-2021-38493: Memory safety bugs fixed in Thunderbird 78.14 and + Thunderbird 91.1 + + -- Carsten Schoenert Wed, 08 Sep 2021 19:57:22 +0200 + +thunderbird (1:78.13.0-1) unstable; urgency=medium + + * [b4498b0] New upstream version 78.13.0 + Fixed CVE issues in upstream version 78.13.0 (MFSA 2021-35): + CVE-2021-29986: Race condition when resolving DNS names could have led to + memory corruption + CVE-2021-29988: Memory corruption as a result of incorrect style treatment + CVE-2021-29984: Incorrect instruction reordering during JIT optimization + CVE-2021-29980: Uninitialized memory in a canvas object could have led to + memory corruption + CVE-2021-29985: Use-after-free media channels + CVE-2021-29989: Memory safety bugs fixed in Thunderbird 78.13 + + -- Carsten Schoenert Thu, 12 Aug 2021 16:13:25 +0200 + +thunderbird (1:78.12.0-1) unstable; urgency=medium + + * [74d3cdb] New upstream version 78.12.0 + Fixed CVE issues in upstream version 78.12 (MFSA 2021-30): + CVE-2021-29969: IMAP server responses sent by a MITM prior to STARTTLS + could be processed + CVE-2021-29970: Use-after-free in accessibility features of a document + CVE-2021-30547: Out of bounds write in ANGLE + CVE-2021-29976: Memory safety bugs fixed in Thunderbird 78.12 + + -- Carsten Schoenert Sat, 17 Jul 2021 09:33:28 +0200 + +thunderbird (1:78.11.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [241e539] d/thunderbird.1: Correct debugger option + Remove parts that are no longer valid, especially there is no dedicated + shell script any more the user has to start, calling 'thunderbird -g' is + enough to start a GDB call. + * [66deb37] thunderbird: Use internal NSS source while package built + (Closes: #989839, #989843, #989979, #989983, #989922, #990012) + * [07fb6ef] d/thunderbird-wrapper.sh: Use '${}' syntax for variables + + [ Kevin Locke ] + * [d003e26] d/thunderbird-wrapper.sh: Make gdb call more fail safe + (Closes: #942799) + + -- Carsten Schoenert Sun, 20 Jun 2021 07:20:41 +0200 + +thunderbird (1:78.11.0-1) unstable; urgency=medium + + * [42c4a87] New upstream version 78.11.0 + Fixed CVE issues in upstream version 78.11 (MFSA 2021-26): + CVE-2021-29967: Memory safety bugs fixed in Thunderbird 78.11 + + -- Carsten Schoenert Thu, 03 Jun 2021 17:22:34 +0200 + +thunderbird (1:78.10.2-1) unstable; urgency=medium + + * [69552d8] New upstream version 78.10.2 + Fixed CVE issues in upstream version 78.10.2 (MFSA 2021-22): + CVE-2021-29957: Partial protection of inline OpenPGP message not indicated + CVE-2021-29956: Thunderbird stored OpenPGP secret keys without master + password protection + + -- Carsten Schoenert Wed, 19 May 2021 21:57:11 +0200 + +thunderbird (1:78.10.0-1) unstable; urgency=medium + + * [f38d78f] New upstream version 78.10.0 + Fixed CVE issues in upstream version 78.10 (MFSA 2021-15): + CVE-2021-23994: Out of bound write due to lazy initialization + CVE-2021-23995: Use-after-free in Responsive Design Mode + CVE-2021-23998: Secure Lock icon could have been spoofed + CVE-2021-23961: More internal network hosts could have been probed by a + malicious webpage + CVE-2021-23999: Blob URLs may have been granted additional privileges + CVE-2021-24002: Arbitrary FTP command execution on FTP servers using an + encoded URL + CVE-2021-29945: Incorrect size computation in WebAssembly JIT could lead + to null-reads (This issue only affected x86-32 platforms.) + CVE-2021-29946: Port blocking could be bypassed + CVE-2021-29948: Race condition when reading from disk while verifying + signatures + + -- Carsten Schoenert Mon, 19 Apr 2021 20:00:32 +0200 + +thunderbird (1:78.9.0-1) unstable; urgency=medium + + [ Colomban Wendling ] + * [7d454de] d/thunderbird.desktop: Switch StartupWMClass + (Closes: #985366) + + [ Carsten Schoenert ] + * [23fe9ce] d/source.filter: small update to filtering list + * [828b9d7] New upstream version 78.9.0 + Fixed CVE issues in upstream version 78.9 (MFSA 2021-12): + CVE-2021-23981: Texture upload into an unbound backing buffer resulted in + an out-of-bound read + CVE-2021-23982: Internal network hosts could have been probed by a + malicious webpage + CVE-2021-23984: Malicious extensions could have spoofed popup information + CVE-2021-23987: Memory safety bugs fixed in Thunderbird 78.9 + * [cf4fbde] rebuild patch queue from patch-queue branch + Removed patch (included upstream): + porting-s390x/Explicitly-instantiate-TIntermTraverser-traverse-TIntermN.patch + + -- Carsten Schoenert Tue, 23 Mar 2021 15:55:43 +0100 + +thunderbird (1:78.8.0-1) unstable; urgency=medium + + [ Pino Toscano ] + * [f2f1f3f] thunderbird: Stop shipping /u/s/p/thunderbird.png symlink + + [ Carsten Schoenert ] + * [f5707a7] New upstream version 78.8.0 + Fixed CVE issues in upstream version 78.8 (MFSA 2021-09): + CVE-2021-23969: Content Security Policy violation report could have + contained the destination of a redirect + CVE-2021-23968: Content Security Policy violation report could have + contained the destination of a redirect + CVE-2021-23973: MediaError message property could have leaked information + about cross-origin resources + CVE-2021-23978: Memory safety bugs fixed in Thunderbird 78.8 + + -- Carsten Schoenert Sun, 21 Feb 2021 14:58:05 +0100 + +thunderbird (1:78.7.1-1) unstable; urgency=medium + + * [406f9d7] New upstream version 78.7.1 + + -- Carsten Schoenert Fri, 05 Feb 2021 20:12:59 +0100 + +thunderbird (1:78.7.0-1) unstable; urgency=medium + + * [8751354] New upstream version 78.7.0 + Fixed CVE issues in upstream version 78.7 (MFSA 2021-05): + CVE-2021-23953: Cross-origin information leakage via redirected PDF + requests + CVE-2021-23954: Type confusion when using logical assignment operators in + JavaScript switch statements + CVE-2020-15685: IMAP Response Injection when using STARTTLS + CVE-2020-26976: HTTPS pages could have been intercepted by a registered + service worker when they should not have been + CVE-2021-23960: Use-after-poison for incorrectly redeclared JavaScript + variables during GC + CVE-2021-23964: Memory safety bugs fixed in Thunderbird 78.7 + * [4b0c0a7] rebuild patch queue from patch-queue branch + removed patch (included upstream): + porting-mips/Bug-1642265-MIPS64-Add-branchTestSymbol-and-fallibleUnbox.patch + + -- Carsten Schoenert Fri, 29 Jan 2021 20:45:49 +0100 + +thunderbird (1:78.6.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [67f6117] Add Apache2 notice for third_party/python/coverage + * [38b9ff7] lintian: adding override for false positive in SVG file + + [ Carles Pina i Estany ] + * [529d53a] d/thunderbird-wrapper.sh: Unset DEBUG/DEBUGGER variables + (Closes: #960230) + * [6d48708] d/thunderbird-wrapper-helper.sh: Adjust help text + + [ Carsten Schoenert ] + * [5309e91] d/thunderbird-wrapper*.sh: Prefixing some local variables + * [07b4733] New upstream version 78.6.1 + Fixed CVE issues in upstream version 78.6.1 (MFSA 2021-02): + CVE-2020-16044: Use-after-free write when handling a malicious + COOKIE-ECHO SCTP chunk + + -- Carsten Schoenert Sat, 16 Jan 2021 14:59:02 +0100 + +thunderbird (1:78.6.0-1) unstable; urgency=medium + + * [1410f1e] d/watch: update to version 4 + * [a8303b7] d/rules: use python3 explicitly while calling mach + * [f3f535e] New upstream version 78.6.0 + Fixed CVE issues in upstream version 78.6 (MFSA 2020-56): + CVE-2020-16042: Operations on a BigInt could have caused uninitialized + memory to be exposed + CVE-2020-26971: Heap buffer overflow in WebGL + CVE-2020-26973: CSS Sanitizer performed incorrect sanitization + CVE-2020-26974: Incorrect cast of StyleGenericFlexBasis resulted in a heap + use-after-free + CVE-2020-26978: Internal network hosts could have been probed by a + malicious webpage + CVE-2020-35111: The proxy.onRequest API did not catch view-source URLs + CVE-2020-35112: Opening an extension-less download may have inadvertently + launched an executable instead + CVE-2020-35113: Memory safety bugs fixed in Thunderbird 78.6 + (Closes: #972072, #973697) + * [16a7ab7] /u/l/thunderbird: Correct escape sequencing for gdb calling + We need to do a better escaping of values of the '-ex' option otherwise + the shell is refusing the concatenated string we want to use as call. + (Closes: #976979) + + -- Carsten Schoenert Tue, 15 Dec 2020 10:12:34 +0100 + +thunderbird (1:78.5.1-1) unstable; urgency=medium + + * [08556c2] New upstream version 78.5.1 + Fixed CVE issues in upstream version 78.5.1 (MFSA 2020-53): + CVE-2020-26970: Stack overflow due to incorrect parsing of SMTP server + response codes + * [7047340] rebuild patch queue from patch-queue branch + removed patch (included upstream): + fixes/fix-function-nsMsgComposeAndSend-to-respect-Replo.patch + * [40663bb] debian/control: increase Standards-Version to 4.5.1 + No further changes needed. + + -- Carsten Schoenert Thu, 03 Dec 2020 05:35:04 +0100 + +thunderbird (1:78.5.0-1) unstable; urgency=medium + + * [7842f02] New upstream version 78.5.0 + Fixed CVE issues in upstream version 78.5 (MFSA 2020-51): + CVE-2020-26951: Parsing mismatches could confuse and bypass security + sanitizer for chrome privileged code + CVE-2020-16012: Variable time processing of cross-origin images during + drawImage calls + CVE-2020-26953: Fullscreen could be enabled without displaying the + security UI + CVE-2020-26956: XSS through paste (manual and clipboard API) + CVE-2020-26958: Requests intercepted through ServiceWorkers lacked MIME + type restrictions + CVE-2020-26959: Use-after-free in WebRequestService + CVE-2020-26960: Potential use-after-free in uses of nsTArray + CVE-2020-15999: Heap buffer overflow in freetype + CVE-2020-26961: DoH did not filter IPv4 mapped IP Addresses + CVE-2020-26965: Software keyboards may have remembered typed passwords + CVE-2020-26966: Single-word search queries were also broadcast to local + network + CVE-2020-26968: Memory safety bugs fixed in Thunderbird 78.5 + * [e19743e] rebuild patch queue from patch-queue branch + removed patch (included upstream): + fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch + + -- Carsten Schoenert Wed, 18 Nov 2020 20:06:09 +0100 + +thunderbird (1:78.4.2-1) unstable; urgency=medium + + * [c7f4ed2] New upstream version 78.4.2 + Fixed CVE issues in upstream version 78.4 (MFSA 2020-49): + CVE-2020-26950: Write side effects in MCallGetProperty opcode not + accounted for + * [c3a617d] rebuild patch queue from patch-queue branch + added patch: + fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch + * [8e4e7ad] thunderbird-l10n-all: add thunderbird-l10n-cy + (Closes: #974127) + + -- Carsten Schoenert Tue, 10 Nov 2020 21:19:15 +0100 + +thunderbird (1:78.4.1-1) unstable; urgency=medium + + * [cf8bf1e] New upstream version 78.4.1 + * [529000c] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1650299-Unify-the-inclusion-of-the-ICU-data-file.-r-f.patch + fixes/Don-t-build-ICU-in-parallel.patch + Patches are picked from Firefox and fixing FTBFS on s390x within buster. + + -- Carsten Schoenert Fri, 06 Nov 2020 21:53:24 +0100 + +thunderbird (1:78.4.0-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [652f8de] install the apparmor profile in thunderbird.install + + [ Carsten Schoenert ] + * [5240d53] Revert "thunderbird.install: adjust.desktop renamed file name" + (Closes: #972601) + * [861b21a] Revert "Rename .desktop file for AppStream compliance" + (Closes: #972578) + * [ffc5818] New upstream version 78.4.0 + Fixed CVE issues in upstream version 78.4 (MFSA 2020-47): + CVE-2020-15969: Use-after-free in usersctp + CVE-2020-15683: Memory safety bugs fixed in Thunderbird 78.4 + * [81396e3] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + porting-mips/Bug-1649655-MIPS-Add-CodeGenerator-visitWasmRegisterResul.patch + porting/Bug-1666646-Bump-CodeAlignment-to-8-in-MacroAssembler-non.patch + + modified patches: + fixes/Appdata-Adding-some-German-translations.patch + fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch + + Minor fine tuning to the AppStream specific parts but also revert some + translation entries as they are not intend to be translatable. + These modification also in correlation with the mentioned bug reports above + which are closed by the other adjustments. + + -- Carsten Schoenert Thu, 22 Oct 2020 18:48:25 +0200 + +thunderbird (1:78.3.3-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [6f18974] Remove duplicated --disable-debug-symbols flag + * [1119d50] Print a verbose build log by not calling the mach wrapper + * [fcf7c11] Exclude -g from CXXFLAGS as well + + [ Carsten Schoenert ] + * [9eb159f] New upstream version 78.3.3 + * [47171dc] rebuild patch queue from patch-queue branch + added patches: + fixes/Appdata-Adding-some-German-translations.patch + fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch + * [1474d91] Rename .desktop file for AppStream compliance + * [10e49a9] thunderbird.install: adjust.desktop renamed file name + * [018bbc1] thunderbird.pc: remove left over cruft + + -- Carsten Schoenert Sun, 18 Oct 2020 08:49:20 +0200 + +thunderbird (1:78.3.2-1) unstable; urgency=medium + + * [0b2f19f] d/rules: remove hand crafted icu build + Cherry-picked from debian/buster branch. + The possible required build of the ICU if the usage of an external ICU + library is now handled by the upstream build system. + * [1583517] d/rules: rewrite dpkg_buildflags to remove option '-g' + Cherry-picked from debian/buster branch. + We need to remove the option '-g' from the dpkg_buildflags variable for + real if we want a build without debugging information (e.g. on 32bit + architectures). + * [fb4c9c4] New upstream version 78.3.2 + * [9d5e2b9] d/rules: install the language Add-ons into /u/l/t/e + Do not install the thunderbird-l10n packages into /usr/share/thunderbird + any more, install them directly into /usr/libt/thunderbird/extensions. + This simplifies the package structures as there is no real need to install + the packages into /usr/share/thunderbird and linking them back. + + -- Carsten Schoenert Fri, 09 Oct 2020 19:49:45 +0200 + +thunderbird (1:78.3.1-2) unstable; urgency=medium + + * [649f664] rebuild patch queue from patch-queue branch + added patches: + fixes/reduce-the-rust-debuginfo-level-on-selected-architectures.patch + porting-s390x/Explicitly-instantiate-TIntermTraverser-traverse-TIntermN.patch + + -- Carsten Schoenert Wed, 30 Sep 2020 19:10:27 +0200 + +thunderbird (1:78.3.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [6bd965f] New upstream version 78.3.1 + Fixed CVE issues in upstream version 78.3.1 (MFSA 2020-44): + CVE-2020-15677: Download origin spoofing via redirect + CVE-2020-15676: XSS when pasting attacker-controlled data into a + contenteditable element + CVE-2020-15678: When recursing through layers while scrolling, an iterator + may have become invalid, resulting in a potential + use-after-free scenario + CVE-2020-15673: Memory safety bugs fixed in Thunderbird 78.3 + * [8ba13c5] rebuild patch queue from patch-queue branch + added patches(picked from firefox packaging): + fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch + porting-mips/Bug-1642265-MIPS64-Add-branchTestSymbol-and-fallibleUnbox.patch + porting-mips/Bug-1649655-MIPS-Add-CodeGenerator-visitWasmRegisterResul.patch + porting/Bug-1666646-Bump-CodeAlignment-to-8-in-MacroAssembler-non.patch + removed patch(fixed upstream): + fixes/Bug-1664607-Don-t-try-to-load-what-s-new-page-when-built-.patch + * [c6d282d] calendar-google-provider*: removing left over cruft + There are two left over sequencer files from the calendar-google-package, + not need any more since 1:68.2.2-1 + * [cf37615] d/README.Debian: Update and adding new information + Some updated information regarding the now included OpenPGP support, also + updating some grammar for 'Add-on'. + * [faf225b] thunderbird.NEWS: Add hint about integration of OpenPGP support + Giving the user a information about the OpenPGP status within Thunderbird + since the version 78.0. + * [d6f4f0e] Revert "d/tb.lintian-overrides: ignore warning about none + versioned breaks" + * [9e6cbec] d/copyright: update content + + -- Carsten Schoenert Sun, 27 Sep 2020 09:08:29 +0200 + +thunderbird (1:78.2.2-1) experimental; urgency=medium + + * [c6592e8] New upstream version 78.2.2 + * [28f5fce] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1664607-Don-t-try-to-load-what-s-new-page-when-built-.patch + porting-s390x/Use-more-recent-embedded-version-of-sqlite3.patch + * [4866c06] d/mozconfig.default: add extra config options for ppc64el + + -- Carsten Schoenert Sun, 13 Sep 2020 08:58:44 +0200 + +thunderbird (1:78.2.1-1) experimental; urgency=medium + + * [1f3f76b] d/rules: drop C{,XX}FLAGS originally intended for GCC6 + * [4490e37] d/mozconfig.default: add options for mips64el + * [17b4e5c] d/rules: Don't build debug symbols on 32Bit arch + * [6dff7e0] d/rules: adding -Wl,--as-needed to linker flags + * [a213a7f] New upstream version 78.2.1 + + -- Carsten Schoenert Sun, 30 Aug 2020 14:38:17 +0200 + +thunderbird (1:78.2.0-1) experimental; urgency=medium + + [ intrigeri ] + * [f6fcafd] d/control: drop hard dependency on libgtk2.0-0 + (Closes: #908654) + * [85b7a2e] autopkgtests: fix typo in comment + * [4bd70ae] d/mozconfig.default: fix typos in comments + * [d986a6d] d/control: allow Enigmail 2.2.0 and newer + (Closes: #968707) + + [ Carsten Schoenert ] + * [52b4006] d/control: increase B-D for libnss3 + (Closes: #966805) + * [7794563] New upstream version 78.2.0 + Fixed CVE issues in upstream version 78.2.0 (MFSA 2020-41): + CVE-2020-15663: Downgrade attack on the Mozilla Maintenance Service could + have resulted in escalation of privilege + CVE-2020-15664: Attacker-induced prompt for extension installation + CVE-2020-15670: Memory safety bugs fixed in Thunderbird 78.2 + * [623f853] rebuild patch queue from patch-queue branch + No modifications made, just updating the index. + + -- Carsten Schoenert Wed, 26 Aug 2020 20:41:28 +0200 + +thunderbird (1:78.1.1-1) experimental; urgency=medium + + * [5fb842b] d/mozconfig.default: adding new option regarding Add-Ons + Adding additional options --allow-addon-sideload and + --with-unsigned-addon-scopes=app,system. These option are adopted and + taken from the firefox package. + * [8de0b35] New upstream version 78.1.1 + * [4abe5ed] d/copyright: update content + Some small updates to the copyright information. + * [3caa541] d/control: adding new B-D for botan and json-c + The upstream source now offers the possibility to use the system + libraries for botan and json-c, for this we need to have both libraries + installed for building Thunderbird. + * [251d524] d/mozconfig.default: use botan and json-c system libraries + Turn on the configuration flags for botan and also for json-c that let + the build use the installed provided system libraries instead of using + internal versions. + * [a32a163] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + Upstream has now (again) a configure option for using a installed system + bzip2 library that makes our added patch for this not needed anymore. + * [16c91c0] lintian: remove override for embedded bzip2 in librnp.so + + -- Carsten Schoenert Sat, 08 Aug 2020 19:16:08 +0200 + +thunderbird (1:78.1.0-1) experimental; urgency=medium + + * [c4099cd] New upstream version 78.1.0 + Fixed CVE issues in upstream version 78.1.0 (MFSA 2020-33): + CVE-2020-15652: Potential leak of redirect targets when loading scripts in + a worker + CVE-2020-6514: WebRTC data channel leaks internal address to peer + CVE-2020-15655: Extension APIs could be used to bypass Same-Origin Policy + CVE-2020-15653: Bypassing iframe sandbox when allowing popups + CVE-2020-6463: Use-after-free in ANGLE gl::Texture::onUnbindAsSamplerTexture + CVE-2020-15656: Type confusion for special arguments in IonMonkey + CVE-2020-15658: Overriding file type when saving to disk + CVE-2020-15657: DLL hijacking due to incorrect loading path + CVE-2020-15654: Custom cursor can overlay user interface + CVE-2020-15659: Memory safety bugs fixed in Thunderbird 78.1 + + -- Carsten Schoenert Fri, 31 Jul 2020 19:35:57 +0200 + +thunderbird (1:78.0.1-1) experimental; urgency=medium + + * [5450d8d] d/control: increase B-D for libnss3 + * [9749d1d] d/control: drop B-D on python2 and move over to python3 + * [b31360b] d/xpi-pack.sh: adding xpi-pack shell script + * [89ede80] Drop mozilla-devscripts as B-D + * [f3b2ced] New upstream version 78.0.1 + * [1847202] d/tb.lintian-overrides: ignore warning about none versioned + breaks + * [d56c922] d/lightning.links: removing left over sequencer file + + -- Carsten Schoenert Wed, 22 Jul 2020 20:11:25 +0200 + +thunderbird (1:78.0-1) experimental; urgency=medium + + * [1016cc5] New upstream version 78.0 + Fixed CVE issues in upstream version 78.0 (MFSA 2020-29): + CVE-2020-12415: AppCache manifest poisoning due to url encoded character + processing + CVE-2020-12416: Use-after-free in WebRTC VideoBroadcaster + CVE-2020-12417: Memory corruption due to missing sign-extension for + ValueTags on ARM64 + CVE-2020-12418: Information disclosure due to manipulated URL object + CVE-2020-12419: Use-after-free in nsGlobalWindowInner + CVE-2020-12420: Use-After-Free when trying to connect to a STUN server + CVE-2020-15648: X-Frame-Options bypass using object or embed tags + CVE-2020-12402: RSA Key Generation vulnerable to side-channel attack + CVE-2020-12421: Add-On updates did not respect the same certificate trust + rules as software updates + CVE-2020-12422: Integer overflow in nsJPEGEncoder::emptyOutputBuffer + CVE-2020-12424: WebRTC permission prompt could have been bypassed by a + compromised content process + CVE-2020-12425: Out of bound read in Date.parse() + CVE-2020-12426: Memory safety bugs fixed in Thunderbird 78 + * [ad66b04] rebuild patch queue from patch-queue branch + reworked patch: + porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + * [4a2039c] d/mozconfig.default: enable OpenPGP feature build + + -- Carsten Schoenert Thu, 16 Jul 2020 19:15:25 +0200 + +thunderbird (1:78.0~b2-1) experimental; urgency=medium + + * [c8da927] d/source.filter: fix obviously happen typo + * [c513a96] New upstream version 78.0~b2 + * [6e9104e] d/control: tb, adding binary version to lightning provides + Make the Provides for Lightning a versioned provide. + * [8adec8f] enigmail: let any version of Enigmail break + We now can break on any Enigmail version, the Enigmail functions are now + included in Thunderbird and don't want to have an Enigmail package get + installed in parallel. + * [696b1fc] xul-ext-*/webext-*: adding more extensions to break + Quite all of the current packaged Thunderbird extensions will not work + for now with Thunderbird 78.*, adding/renaming the current know packages + with recent versions to Breaks for thunderbird. + * [e488d0c] thunderbird: remove some non-existing packages from Breaks + The listed packages + xul-ext-foxyproxy-standard + xul-ext-gnome-keyring + xul-ext-nostalgy + aren't in any supported release so we don't need them any more within a + Breaks for thunderbird. + * [039ee90] thunderbird: remove outdated myspell packages from Breaks + All previously listed myspell packages in Breaks for thunderbird aren't + reachable with the given version any more. We can remove them safely. + * [08ea0ba] thunderbird: remove outdated hunspell packages from Breaks + The same is true for the hunspell packages that were listed in the Breaks + field for thunderbird. + + -- Carsten Schoenert Sat, 20 Jun 2020 18:04:59 +0200 + +thunderbird (1:78.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [625efa9] d/source.filter: some updates to filtering list + Recent modification of the shipped files in the upstream tarball do + require small updates of the filter list we use to repack the tarball. + * [967ee19] New upstream version 78.0~b1 + * [240991e] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/use-icudt-b-l-.dat-depending-on-architecture.patch + This will require some additional adjustment later for the stable-security + uploads as this patch was required to get a recent ICU version build + before the build of the thunderbird sources did start. + reworked patch: + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + * [07cab53] d/mozconfig.default: remove no longer existing options + By this release a lot of old configure options are kicked out, some of + them we have used until now. We need to remove these from the config. + * [df2e99b] d/copyright: update content + As usual some required update of the copyright file, more files are not + shipped anymore. + + [ intrigeri ] + * [82a4b03] AppArmor: update profile from upstream at commit 860d2d9 + (cherry-picked from unstable) + + -- Carsten Schoenert Sat, 13 Jun 2020 20:01:39 +0200 + +thunderbird (1:77.0~b3-1) experimental; urgency=medium + + * [82de2f6] New upstream version 77.0~b3 + * [8beaf6f] rebuild patch queue from patch-queue branch + removed patch (included upstream): + fixes/Bug-1634994-fix-disable-av1-r-tnikkel.patch + * [ab2d7a2] d/copyright: Add license for appstream xml file + * [1533187] d/source.filter: Remove some *.wasm files as well + * [7cdfe03] d/thunderbird.lintian-overrides: Some more needed overrides + We need currently the included bzip library. Also add a false positive + about the misread postinst script. + * [9385fd4b] d/control: Remove doubled listed package libglib2.0-dev + Drop a doubled listed package libglib2.0-dev within B-D. + + -- Carsten Schoenert Wed, 20 May 2020 20:58:09 +0200 + +thunderbird (1:77.0~b2-1) experimental; urgency=medium + + * [185d4f7] New upstream version 77.0~b2 + * [e918036] rebuild patch queue from patch-queue branch + removed patch: + fixes/Bug-1635671-Upgrade-typename-to-1.12.0.-r-emilio.patch + * [c1979ce] d/mozconfig.default: Remove obsolete options + Drop the options '--with-distribution-id' and '--with-user-appdir'. + The former is basically only supporting the given default 'org.mozilla' + and the latter was set to the default '.mozilla' anyway. + + -- Carsten Schoenert Sat, 16 May 2020 14:04:02 +0200 + +thunderbird (1:77.0~b1-1) experimental; urgency=medium + + * [ee06e6e] New upstream version 77.0~b1 + * [a21b649] rebuild patch queue from patch-queue branch + removed patches (not needed any more): + lower-down-required-version-on-NSS3.patch + + added patches: + fixes/Bug-1634994-fix-disable-av1-r-tnikkel.patch + fixes/Bug-1635671-Upgrade-typename-to-1.12.0.-r-emilio.patch + * [295cc4d] d/control: increase B-D for libnss3 + The build requires now libnss3-dev >= 2:3.52. + * [f998baf] lintian-overrides: remove overrides for kinto-http-client.js + No override needed for this file, it's not included any more. + + -- Carsten Schoenert Fri, 08 May 2020 15:18:44 +0200 + +thunderbird (1:76.0~b2-1) experimental; urgency=medium + + * [87988db] d/control: increase B-D for cargo to 0.42 + * [b9b0dfd] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/Ignore-version-check-for-cargo.patch + * [8386db0] d/control: Remove B-D on libjson-dev and libsqlite3-dev + The built uses internal copies for libjson and libsqlite as there are + made modifications to them. For now we can decrease the list of build + dependencies by removing this two packages. + * [6324222] New upstream version 76.0~b2 + * [629b3bb] d/rules: Remove default compiler flag + No needed for '-Wl,--as-needed' any more, it's default now. + + -- Carsten Schoenert Mon, 27 Apr 2020 09:55:43 +0200 + +thunderbird (1:76.0~b1-1) experimental; urgency=medium + + * [b52cd52] d/c-thunderbird-l10n-tarball.sh: change upstream resource + Upstream has changed the folder were we can find the language providing + XPI packages. They simply moved over from linux-i686 to linux-x86_64. + * [22e697a] d/rules: drop set up of LIGHTNING_VERSION variable + We don't need this variable any more for building the packages (like all + the lightning-foo named stuff), there is no dedicated Lighting named stuff + around. + * [4ad871b] d/gbp.conf: Remove additional tarball for lightning-l10n + git-buildpackage won't find this additional tarball as it's not needed + starting by the import of the next upstream version (this is 76.0b1). + * [25d8d42] d/c-l-l10n-t.sh: Remove helper script + We also don't need to build the l10n specific additional tarball for + Lighting related parts any more. Dropping this helper script. + * [9d33d06] d/README.source: Remove part of lightning-l10n + * [b063d7f] New upstream version 76.0~b1 + * [e7a23ec] rebuild patch queue from patch-queue branch + removed patches (not needed or included upstream): + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Downgrade-SQlite-version-to-3.27.2.patch + fixes/Bug-1531309-Don-t-use-__PRETTY_FUNCTION__-or-__FUNCTION__.patch + fixes/Bug-1560340-Only-add-confvars.sh-as-a-dependency-to-confi.patch + + added patches: + debian-hacks/Ignore-version-check-for-cargo.patch + lower-down-required-version-on-NSS3.patch + * [94d8593] d/control: adding new packages thunderbird-l10n-{cak,kab,uz} + After the final release of Thunderbird 68.0 new l10n support for the + languages Kacqhikel, Georgian and Uzbek was added. Reflect this by adding + new binary packages for those languages. + * [5397182] d/mozconfig.default: remove option for system-sqlite + Upstream is using their own version of an modified SQLite now and has + dropping the additional configure option about this. + * [abb0ded] d/control: increase various versions in B-D + The current source requires some more recent versions of the helping tools + for building the sources as usual. + * [abfc8b2] d/rules: remove any action related to old lightning stuff + As the sources doesn't have any Lightning specific parts any more we need + to adjust the build process within debian/rules a bit. Thus dropping all + the rules around Lighting things. + * [f95b3ad] d/control: Turn lightning into transitional package + For now switch the behaviour of the lightning package into a transitional + one. We might can drop the whole package rather soon. + * [c3062cb] d/thunderbird.install: Remove blocklist.xml + Don't install the file blocklist.xml any more, it's now not shipped by + upstream any more. + * [856e99e] d/mozconfig.thunderbird: Remove --enable-calendar + Previously the build of the Lightning extension was needed to get enabled + to built this as an extension. Now it's fully integrated into the core + this configure option isn't needed any longer. + * [5551a8a] d/copyright: update content + As usual there is some moving within the source code between the major + versions, reflect this by adjusting the content of the copyright file. + * [21e9b7f] lintian-overrides: adjust overrides for needed files + Also the override file for the source is needing some adjustments. + * [f25ddc4] d/source.filter: update the filter sequences + The control for filtering non needed stuff from the upstream tarball must + also get adjusted due changed versions, moved folders etc. + * [e4a81ba] d/thunderbird.install: Install also appdata.xml + Upstream is providing an AppStream data file which we want install mow + also. + * [80385c9] d/source.filter: Sorting entries alphabetically + No functional modifications, just sorting entries to find stuff more easily. + * [585cf0a] d/thunderbird.lintian-overrides: update after config changes + We also need to modify the content for Lintian overrides for the + thunderbird package a bit. Thunderbird comes now (again) with own versions + of the libraries libtheora and libjsoncpp. Mostly because Mozilla has made + some own modifications within these libraries. + + -- Carsten Schoenert Sat, 18 Apr 2020 08:28:25 +0200 + +thunderbird (1:68.12.0-1) unstable; urgency=medium + + * [103cab7] New upstream version 68.12.0 + Fixed CVE issues in upstream version 68.11.0 (MFSA 2020-35): + CVE-2020-15663: Downgrade attack on the Mozilla Maintenance Service could + have resulted in escalation of privilege + CVE-2020-15664: Attacker-induced prompt for extension installation + CVE-2020-15669: Use-After-Free when aborting an operation + + -- Carsten Schoenert Thu, 27 Aug 2020 21:23:55 +0200 + +thunderbird (1:68.11.0-3) unstable; urgency=medium + + * [28707fd] d/xpi-pack.sh: adding xpi-pack shell script + As we can't depend on mozilla-devscripts anymore we pick up the shell + script from that package as this builds XPI files we need. + * [037212e] Drop mozilla-devscripts as B-D + mozilla-devscripts isn't ported to Python3 yet and depends on Python2 so. + We don't need that package as B-D as we picked the main shell script from + that and we can drop that package from the build dependencies. + * [31eda41] Drop python-{minimal,ply} from B-D + These packages are removed from teh archive and we don't need them for + building Thunderbird as long we have python2 as package available. + (Closes: #967223) + + -- Carsten Schoenert Tue, 04 Aug 2020 19:06:20 +0200 + +thunderbird (1:68.11.0-2) unstable; urgency=medium + + * [110a375] d/control: increase B-D for libnss3 + * [73fa23e] d/control: tb manually set dep on libnss3 to 2:3.55 + (Closes: #966806) + + -- Carsten Schoenert Sun, 02 Aug 2020 20:12:49 +0200 + +thunderbird (1:68.11.0-1) unstable; urgency=medium + + * [093b080] New upstream version 68.11.0 + Fixed CVE issues in upstream version 68.11.0 (MFSA 2020-35): + CVE-2020-15652: Potential leak of redirect targets when loading scripts + in a worker + CVE-2020-6514: WebRTC data channel leaks internal address to peer + CVE-2020-6463: Use-after-free in ANGLE gl::Texture::onUnbindAsSamplerTexture + CVE-2020-15659: Memory safety bugs fixed in Thunderbird 68.11 + + -- Carsten Schoenert Wed, 29 Jul 2020 22:26:14 +0200 + +thunderbird (1:68.10.0-1) unstable; urgency=medium + + * [7537684] New upstream version 68.10.0 + Fixed CVE issues in upstream version 68.10.0 (MFSA 2020-26): + CVE-2020-12417: Memory corruption due to missing sign-extension for + ValueTags on ARM64 + CVE-2020-12418: Information disclosure due to manipulated URL object + CVE-2020-12419: Use-after-free in nsGlobalWindowInner + CVE-2020-12420: Use-After-Free when trying to connect to a STUN server + MFSA-2020-0001: Automatic account setup leaks Microsoft Exchange login + credentials + CVE-2020-12421: Add-On updates did not respect the same certificate trust + rules as software updates + + -- Carsten Schoenert Sat, 04 Jul 2020 10:55:31 +0200 + +thunderbird (1:68.9.0-1) unstable; urgency=medium + + [ intrigeri ] + * [fd13825] AppArmor: update profile from upstream at commit 860d2d9 + (Closes: #960465) + + [ Carsten Schoenert ] + * [c310c40] New upstream version 68.9.0 + Fixed CVE issues in upstream version 68.9.0 (MFSA 2020-22): + CVE-2020-12399: Timing attack on DSA signatures in NSS library + CVE-2020-12405: Use-after-free in SharedWorkerService + CVE-2020-12406: JavaScript Type confusion with NativeTypes + CVE-2020-12410: Memory safety bugs fixed in Thunderbird 68.9.0 + CVE-2020-12398: Security downgrade with IMAP STARTTLS leads to + information leakage + + -- Carsten Schoenert Fri, 05 Jun 2020 20:29:35 +0200 + +thunderbird (1:68.8.1-1) unstable; urgency=medium + + * [7495e7a] New upstream version 68.8.1 + + -- Carsten Schoenert Fri, 22 May 2020 19:04:20 +0200 + +thunderbird (1:68.8.0-1) unstable; urgency=medium + + * [9b5ae46] New upstream version 68.8.0 + Fixed CVE issues in upstream version 68.8.0 (MFSA 2020-18): + CVE-2020-12397: Sender Email Address Spoofing using encoded Unicode + characters + CVE-2020-12387: Use-after-free during worker shutdown + CVE-2020-6831: Buffer overflow in SCTP chunk input validation + CVE-2020-12392: Arbitrary local file access with 'Copy as cURL' + CVE-2020-12393: Devtools' 'Copy as cURL' feature did not fully escape + website-controlled data, potentially leading to command + injection + CVE-2020-12395: Memory safety bugs fixed in Thunderbird 68.8.0 + + -- Carsten Schoenert Tue, 05 May 2020 20:47:29 +0200 + +thunderbird (1:68.7.0-1) unstable; urgency=medium + + * [c0052af] New upstream version 68.7.0 + Fixed CVE issues in upstream version 68.7.0 (MFSA 2020-14): + CVE-2020-6819: Use-after-free while running the nsDocShell destructor + CVE-2020-6820: Use-after-free when handling a ReadableStream + CVE-2020-6821: Uninitialized memory could be read when using the WebGL + copyTexSubImage method + CVE-2020-6822: Out of bounds write in GMPDecodeData when processing large + images + CVE-2020-6825: Memory safety bugs fixed in Thunderbird 68.7 + + -- Carsten Schoenert Sun, 12 Apr 2020 07:40:41 +0200 + +thunderbird (1:68.6.0-1) unstable; urgency=medium + + * [5709774] New upstream version 68.6.0 + Fixed CVE issues in upstream version 68.6.0 (MFSA 2020-10): + CVE-2019-20503: Out of bounds reads in sctp_load_addresses_from_init + CVE-2020-6805: Use-after-free when removing data about origins + CVE-2020-6806: BodyStream::OnInputStreamReady was missing protections + against state confusion + CVE-2020-6807: Use-after-free in cubeb during stream destruction + CVE-2020-6811: Devtools' 'Copy as cURL' feature did not fully escape + website-controlled data, potentially leading to + command injection + CVE-2020-6812: The names of AirPods with personally identifiable + information were exposed to websites with camera or + microphone permission + CVE-2020-6814: Memory safety bugs fixed in Thunderbird 68.6 + + -- Carsten Schoenert Mon, 16 Mar 2020 20:01:29 +0100 + +thunderbird (1:68.5.0-1) unstable; urgency=medium + + * [d79bf82] New upstream version 68.5.0 + Fixed CVE issues in upstream version 68.5.0 (MFSA 2020-07): + CVE-2020-6793: Out-of-bounds read when processing certain email messages + CVE-2020-6794: Setting a master password post-Thunderbird 52 does not + delete unencrypted previously stored passwords + CVE-2020-6795: Crash processing S/MIME messages with multiple signatures + CVE-2020-6798: Incorrect parsing of template tag could result in + JavaScript injection + CVE-2020-6792: Message ID calculcation was based on uninitialized data + CVE-2020-6800: Memory safety bugs fixed in Thunderbird 68.5 + (Closes: #891848) + * [0884df6] d/control: increase Standards-Version to 4.5.0 + No further changes needed. + + -- Carsten Schoenert Thu, 13 Feb 2020 17:58:44 +0100 + +thunderbird (1:68.4.2-1) unstable; urgency=medium + + * [7ab7786] d/gbp.conf: add some more files we need to filter out + * [9c02c34] New upstream version 68.4.2 + + -- Carsten Schoenert Sun, 26 Jan 2020 13:13:49 +0100 + +thunderbird (1:68.4.1-1) unstable; urgency=medium + + * [a00f3e9] New upstream version 68.4.1 + Fixed CVE issues in upstream version 68.4.1 (MFSA 2020-04): + CVE-2019-17026: IonMonkey type confusion with StoreElementHole and + FallibleStoreElement + CVE-2019-17015: Memory corruption in parent process during new content + process initialization on Windows + CVE-2019-17016: Bypass of @namespace CSS sanitization during pasting + CVE-2019-17017: Type Confusion in XPCVariant.cpp + CVE-2019-17022: CSS sanitization does not escape HTML tags + CVE-2019-17024: Memory safety bugs fixed in Thunderbird 68.4.1 + * [6b1fd82] rebuild patch queue from patch-queue branch + removed patch (included upstream) + fixes/Update-bindgen-in-ESR68.-r-glandium-a-RyanVM.patch + + -- Carsten Schoenert Fri, 10 Jan 2020 18:33:43 +0100 + +thunderbird (1:68.3.1-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [6f59313] Fix MOZ_BUILD_DATE to have the expected format + + [ Carsten Schoenert ] + * [5d0f4b1] d/rules: don't use SOURCE_DATE_EPOCH for MOZ_BUILD_DATE + (Closes: #946588) + * [1467af5] New upstream version 68.3.1 + + -- Carsten Schoenert Wed, 18 Dec 2019 15:54:44 +0100 + +thunderbird (1:68.3.0-2) unstable; urgency=medium + + * [0625d30] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1531309-Don-t-use-__PRETTY_FUNCTION__-or-__FUNCTION__.patch + fixes/Update-bindgen-in-ESR68.-r-glandium-a-RyanVM.patch + * [ea8d98c] Breaks: add versioned birdtray package + + -- Carsten Schoenert Mon, 09 Dec 2019 18:22:15 +0100 + +thunderbird (1:68.3.0-1) unstable; urgency=medium + + * [fe289ec] /u/b/thunderbird: export variable DICPATH before start + (Closes: #944295) + * [a9a48c6] New upstream version 68.3.0 + Fixed CVE issues in upstream version 68.3 (MFSA 2019-38): + CVE-2019-17008: Use-after-free in worker destruction + CVE-2019-13722: Stack corruption due to incorrect number of arguments in + WebRTC code + CVE-2019-11745: Out of bounds write in NSS when encrypting with a block + cipher + CVE-2019-17009: Updater temporary files accessible to unprivileged + processes + CVE-2019-17010: Use-after-free when performing device orientation checks + CVE-2019-17005: Buffer overflow in plain text serializer + CVE-2019-17011: Use-after-free when retrieving a document in + antitracking + CVE-2019-17012: Memory safety bugs fixed in Firefox 71, Firefox ESR + 68.3, and Thunderbird 68.3 + * [fb23473] d/control: increase B-D version on NSS to 3.44.3 + * [6f59938] Breaks: adding more non compatible packaged AddOns + + -- Carsten Schoenert Thu, 05 Dec 2019 10:03:22 +0100 + +thunderbird (1:68.2.2-1) unstable; urgency=medium + + * [198d539] xul-ext-compactheader: allow also version << 3.0.0 + * [0e93753] d/control: add incompatibility with jsunit << 0.2.2 + * [87c84cb] New upstream version 68.2.2 + This upstream version has removed the source for calendar-google-provider, + thus we can't provide the related binary package any more. + * [a3cea2a] rebuild patch queue from patch-queue branch + rebuild patch queue from patch-queue branch + + removed patches (included upstream): + debian/patches/fixes/Bug-1470701-Use-run-time-page-size-when-changing-map.patch + debian/patches/fixes/Bug-1505608-Try-to-ensure-the-bss-section-of-the-elf.patch + debian/patches/fixes/Bug-1526744-find-dupes.py-Calculate-md5-by-chunk.patch + debian/patches/fixes/Build-also-gdata-provider-as-xpi-file.patch + debian/patches/fixes/rust-ignore-not-available-documentation.patch + debian/patches/porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + debian/patches/porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + debian/patches/porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + debian/patches/porting-powerpc/powerpc-Don-t-use-static-page-sizes-on-powerpc.patch + debian/patches/porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + * [1730f5f] d/control: remove references to calendar-google-provider + Don't build calendar-google-provider any more and remove any references + from other binary packages. + * [1b0bbb8] d/rules: remove any calendar-google-provider stuff + * [92f681c] thunderbird.NEWS: Adding hint about removal of gdata + Give out an announcement about the removal of a possible previously + installed package calendar-google-provider. + + -- Carsten Schoenert Sun, 10 Nov 2019 12:09:17 +0100 + +thunderbird (1:68.2.1-1) unstable; urgency=medium + + [ intrigeri ] + * [c48e2cb] AppArmor: update profile from upstream at commit a27a1a5 + (Closes: #941290) + + [ Carsten Schoenert ] + * [98497ae] New upstream version 68.2.0 + Fixed CVE issues in upstream version 68.2 (MFSA 2019-35): + CVE-2019-15903: Heap overflow in expat library in XML_GetCurrentLineNumber + CVE-2019-11757: Use-after-free when creating index updates in IndexedDB + CVE-2019-11758: Potentially exploitable crash due to 360 Total Security + CVE-2019-11759: Stack buffer overflow in HKDF output + CVE-2019-11760: Stack buffer overflow in WebRTC networking + CVE-2019-11761: Unintended access to a privileged JSONView object + CVE-2019-11762: document.domain-based origin isolation has + same-origin-property violation + CVE-2019-11763: Incorrect HTML parsing results in XSS bypass technique + CVE-2019-11764: Memory safety bugs fixed in Thunderbird 68.2 + (Closes: #925841) + * [a104c51] d/control: increase Standards-Version to 4.4.1 + * [6c9d012] xul-ext-dispmua: set current min usable version + * [b3bf16f] New upstream version 68.2.1 + * [8f89b90] d/control: decrease build architecture list + Decreasing the current list of build architectures. Not meant to keep this + forever, removed RC architectures needing support and volunteering to get + them back. + (Closes: #921258) + + -- Carsten Schoenert Fri, 01 Nov 2019 20:36:59 +0100 + +thunderbird (1:68.1.2-1~exp1) experimental; urgency=medium + + * [81f4144] xul-ext-compactheader: increase minimal usable version + * [a815589] Update the global information about TB in Debian + * [bb5f5f7] rebuild patch queue from patch-queue branch + * [6fe7d3f] xul-ext-sogo-connector: increase minimal usable version + * [2e29af5] New upstream version 68.1.2 + + -- Carsten Schoenert Sat, 26 Oct 2019 08:41:50 +0200 + +thunderbird (1:68.1.1-1~exp1) experimental; urgency=medium + + [ intrigeri ] + * [3f49653] AppArmor: update profile from upstream at commit ed52e4a + + [ Carsten Schoenert ] + * [348f476] New upstream version 68.0~b5 + * [2a2f101] New upstream version 68.1.1 + Fixed CVE issues in upstream version 68.1 (MFSA 2019-20): + CVE-2019-11711: Script injection within domain through inner window reuse + CVE-2019-11712: Cross-origin POST requests can be made with NPAPI plugins + by following 308 redirects + CVE-2019-11713: Use-after-free with HTTP/2 cached stream + CVE-2019-11714: NeckoChild can trigger crash when accessed off of main + thread + CVE-2019-11729: Empty or malformed p256-ECDH public keys may trigger a + segmentation fault + CVE-2019-11715: HTML parsing error can contribute to content XSS + CVE-2019-11716: globalThis not enumerable until accessed + CVE-2019-11717: Caret character improperly escaped in origins + CVE-2019-11719: Out-of-bounds read when importing curve25519 private key + CVE-2019-11720: Character encoding XSS vulnerability + CVE-2019-11721: Domain spoofing through unicode latin 'kra' character + CVE-2019-11730: Same-origin policy treats all files in a directory as + having the same-origin + CVE-2019-11723: Cookie leakage during add-on fetching across private + browsing boundaries + CVE-2019-11724: Retired site input.mozilla.org has remote troubleshooting + permissions + CVE-2019-11725: Websocket resources bypass safebrowsing protections + CVE-2019-11727: PKCS#1 v1.5 signatures can be used for TLS 1.3 + CVE-2019-11728: Port scanning through Alt-Svc header + CVE-2019-11710: Memory safety bugs fixed in Firefox 68 and Thunderbird 68 + CVE-2019-11709: Memory safety bugs fixed in Firefox 68, Firefox ESR 60.8, + and Thunderbird 68 + + Fixed CVE issues in upstream version 68.1 (MFSA 2019-20): + CVE-2019-11739: Covert Content Attack on S/MIME encryption using a crafted + multipart/alternative message + CVE-2019-11746: Use-after-free while manipulating video + CVE-2019-11744: XSS by breaking out of title and textarea elements using + innerHTML + CVE-2019-11742: Same-origin policy violation with SVG filters and canvas + to steal cross-origin images + CVE-2019-11752: Use-after-free while extracting a key value in IndexedDB + CVE-2019-11743: Cross-origin access to unload event attributes + CVE-2019-11740: Memory safety bugs fixed in Firefox 69, Firefox ESR 68.1, + Firefox ESR 60.9, Thunderbird 68.1, and Thunderbird 60.9 + + Fixed CVE issues in upstream version 68.1.1 (MFSA 2019-32): + CVE-2019-11755: Spoofing a message author via a crafted S/MIME message + + * [9342624] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/Set-program-name-from-the-remoting-name.patch + debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch + debian-hacks/Work-around-Debian-bug-844357.patch + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch + fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch + fixes/Bug-1560340-Only-add-confvars.sh-as-a-dependency-to-confi.patch + porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch + + removed patch (fixed upstream): + porting-mips/Fix-CPU_ARCH-test-for-libjpeg-on-mips.patch + porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch + + * [25cb500] d/control: increase various versions in B-D + * [ee5b713] d/control: remove B-D on librust-cbindgen-dev + Use librust-toml-dev instead, we only need some files from this package, + librust-cbindgen-dev is a metapackage which is broken while packaging. + * [442a6b1] d/rules: work around cargo needs a HOME dir + * [4894a4c] d/control: increase Standards-Version to 4.4.0 + No further changes needed. + * [bb47b68] d/control: update upstream homepage for Thunderbird + Since some time Mozilla Thunderbird has a new homepage placed on URI + https://www.thunderbird.net/ + * [a3b680e] d/source.filter: update the filter sequences + New Thunderbird upstream versions bringing some new unwanted files within + the source. + * [7290ff4] d/control: remove transitional lightning l10n packages + The Lightning l10n packages moved into transitional packages before Buster + was released, now after the Buster release removing these transitional + packages. All required l10n files are available in the packages + thunderbird-$(locale) even for Lightning. + * [3d1d27d] enigmail: increase minimal usable version + Thunderbird 68.x needs at least Enigmal in version 2.1, but increase the + version on Enigmail to the most recent version which is released while + packaging. + * [66069d9] calendar-exchange-provider: removed from Breaks + This package isn't alive in unstable and testing. + * [3b9f936] d/control: remove Xb-Xul-AppId field + Thunderbird don't has any Xul based AddOns since version 68.0 + * [7d8cd7d] lintian-overrides: remove not needed overrides + + -- Carsten Schoenert Sat, 28 Sep 2019 15:38:28 +0200 + +thunderbird (1:68.0~b1-1) experimental; urgency=medium + + * [0eabe70] New upstream version 68.0~b1 + * [2febf67] rebuild patch queue from patch-queue branch + added patch: + debian-hacks/Downgrade-SQlite-version-to-3.27.2.patch + * [cfa5973] d/s/lintian-overrides: adjust overrides for needed files + * [46077e2] d/copyright: update after upstream changes + + -- Carsten Schoenert Sun, 16 Jun 2019 10:28:52 +0200 + +thunderbird (1:67.0~b3-1) experimental; urgency=medium + + [ intrigeri ] + * [9ad75ad] d/rules: drop useless usage of dpkg-parsechangelog + + [ Carsten Schoenert ] + * [d6f6747] New upstream version 67.0~b3 + * [90f73be] rebuild patch queue from patch-queue branch + removed patch: + fixes/Bug-1515641-Turn-enable-av1-around.-r-nalexander.patch + * [7dd5c54] d/control: increase various B-D versions + Increasing the version for the build depending packages of cargo, cbindgen, + libnspr4-dev, libnss3-dev, libsqlite3-dev and rustc. + + -- Carsten Schoenert Tue, 11 Jun 2019 19:36:00 +0200 + +thunderbird (1:66.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [afe31d9] New upstream version 66.0~b1 + * [4ec53cc] apparmor: update profile from upstream (commit 7ace41b1) + (cherry-picked from debian/sid) + * [b3657a0] d/rules: make dh_clean more robust + Remove some regenerated files in dh_clean to the build will not fail in + case the build needs to be started twice within the same build environment. + (cherry-picked from debian/sid) + * [dceb027] d/rules: move disable debug option into configure step + Adding the option '--disable-debug-symbols' to the file mozconfig.default + in case the build is running on a 32bit architecture instead of expanding + the variable 'CONFIGURE_FLAGS'. The configuration approach for this option + taken from firefox-esr was not working for the thunderbird package. + (cherry-picked from debian/sid) + * [f7f02a9] d/rules: reorder LDFLAGS for better readability + Make the used additional options for LDFLAGS better readable by reordering + the various used options. Also adding the option '-Wl, --as-needed' to the + list of used options here. + (cherry-picked from debian/sid) + * [79801fb] d/rules: use 'compress-debug-sections' only on 64bit + Do not set 'LDFLAGS += -Wl,--compress-debug-sections=zlib' globally, lets + use this option only if we are on a 64bit architecture as otherwise the + build is failing on 32bit architectures again. We don't want to build any + debug information on 32bit anyway so we don't need this option on these + platforms. + (cherry-picked from debian/sid) + * [11f9e14] d/mozconfig.default: adding option for mipsel + We don't have set up any options for the mipsel platform before, but the + build needs some additional options too on this platform to succeed. + (cherry-picked from debian/sid) + * [e46e178] d/mozconfig.default: disable ion on mips and mipsel + The build will fail on mips{,el} if we have enabled ION, the JavaScript + JIT compiler on these platforms will loose some performance by this. + (cherry-picked from debian/sid) + + [ Alexander Nitsch ] + * [31b87e9] Make the logo SVG square + The original SVG source isn't completely square, modifying the SVG file + so all generated other files from the input are also exactly square. + * [c0f19a3] Add script for generating PNGs from logo SVG + * [c153c5f] Update icon PNGs to be properly scaled + + [ Carsten Schoenert ] + * [c372e1f] d/source.filter: add some configure scripts + Filter out some files that are named 'configure', they are rebuild later + anyway. The filtering of these files is moved from gbp.conf to + source.filter. + (cherry-picked from debian/sid) + * [a40c5df] d/c-lightning-l10n-t.sh: drop version checking + Remove an old check for a version string within the file install.rdf. + It's not created any more by upstream since > 60.0. + * [05b325e] d/source.filter: don't ignore files in root folder + Try to not ignore files which are in the top root folder of the upstream + source tarball. + * [d2ca267] rebuild patch queue from patch-queue branch + added patch: + fixes/Bug-1515641-Turn-enable-av1-around.-r-nalexander.patch + + modified (refreshed) patches: + porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch + porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + + removed patches (applied upstream): + fixes/Fix-big-endian-build-for-SKIA.patch + porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + * [cb1dde9] d/control: increase version in B-D for libsqlite3-dev + * [54e8890] d/mozconfig.default: add new configure option + We need to disable the usage of libav1 for an successful build. The used + configure option was added by the new added patch to the patch queue. + * [ecd3ade] d/copyright: update after upstream changes + * [af58ed8] d/source.filter: add extra content to ignore + + -- Carsten Schoenert Sun, 17 Feb 2019 10:58:46 +0100 + +thunderbird (1:65.0~b1-1) experimental; urgency=medium + + * [e5956ef] Merge tag 'debian/1%60.4.0-1' into debian/experimental + * [389748b] d/source.filter: adjust files to filter while repack + Rework of the file filter list due new upstream version but also to no + filter out files we obviously need later, e.g. for the omni.jar archive. + * [4b86a78] New upstream version 65.0~b1 + * [3db29ed] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + debian-hacks/shellutil.py-ignore-tilde-as-special-character.patch + fixes/Build-also-gdata-provider-as-xpi-file.patch + fixes/Use-msse-2-fpmath-C-CXXFLAGS-only-on-x86_64-platforms.patch + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + + removed patches (dropped for Debian specific build): + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + adjusted patches: + + debian-hacks/Add-another-preferences-directory-for-applications-p.patch + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + patches/fixes/Fix-big-endian-build-for-SKIA.patch (but currently disabled) + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + * [e918c6c] d/control: increase versions in B-D + New Thunderbirds version typically need other packages available with + higher versions like NSS, NSPR, rust ... + Also adding cbindgen and nodejs()!!). + * [b6c63bf] d/mozconfig.default: remove dead options + More old configure option are now not available anymore and we need to + drop them. + * [0f959ad] remove GCC specific options + LLVM's clang is now widely used, and clang isn't knowing the GCC options + '-fno-schedule-insns2' and '-fno-lifetime-dse', removing these options + from CFLAGS and CXXFLAGS. + * [d0b1f4b] d/rules: work around about strong quotings in .mk files + After the configuration of the source some Makefiles in the build folder + 'obj-thunderbird' have a strong qouting on some entries. This will + later provoke a build failure if we don't remove the single quotes + before in the Makefiles. + * [093053e] copyright: update after upstream changes + * [95eaacf] d/s/lintian-overrides: adjust overrides for needed files + + -- Carsten Schoenert Sun, 20 Jan 2019 15:48:06 +0100 + +thunderbird (1:60.4.0-1) unstable; urgency=medium + + * [2e5a9d0] d/control: don't hard code LLVM packages in B-D + (Closes: #912797) + * [3aaa4a6] New upstream version 60.4.0 + No MFSA published yet by Mozilla Security while packaging this version. + (Closes: #913645) + * [12d3be3] debian/control: increase Standards-Version to 4.3.0 + No further changes needed. + + -- Carsten Schoenert Mon, 24 Dec 2018 17:04:10 +0100 + +thunderbird (1:60.3.1-1) unstable; urgency=medium + + * [e1b489a] New upstream version 60.3.1 + * [f376b38] lightning: use ${source:Version} in Breaks and Recommends + (Closes: #914175) + * [7e560b3] Revert "lintian: adding a semi automated lintian-override" + The override about a misspelled word Synopsys isn't needed any more. + * [893c0e6] rebuild patch queue from patch-queue branch + modified patches: + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + * [20d8827] d/source.filter: update the filter sequences + + -- Carsten Schoenert Sun, 25 Nov 2018 10:02:50 +0100 + +thunderbird (1:60.3.0-1) unstable; urgency=medium + + [ intrigeri ] + * [7949b31] AppArmor: update profile from upstream at commit f3d9a8b + (Closes: #903898) + * [e31dc14] AppArmor: update profile from upstream at commit 81c9457 + (Closes: #908206) + + [ Carsten Schoenert ] + * [0dcbe22] d/control: add xul-ext-gnome-keyring to Breaks for thunderbird + (Closes: #907979) + * [65db00d] armel: adding extra LDFLAGS so rust compiler isn't confused + The settings that are builtin within rust are conflicting with the GCC. + * [9c65884] New upstream version 60.3.0 + Fixed CVE issues in upstream version 60.3.0 (MFSA 2018-28) + CVE-2018-12392: Crash with nested event loops + CVE-2018-12393: Integer overflow during Unicode conversion while loading + JavaScript + CVE-2018-12389: Memory safety bugs fixed in Firefox ESR 60.3 and + Thunderbird 60.3 + CVE-2018-12390: Memory safety bugs fixed in Firefox 63, Firefox ESR 60.3, + and Thunderbird 60.3 + * [8726bb1] rebuild patch queue from patch-queue branch + removed patches (included upstream) + fixes/Bug-1479540-Accept-triplet-strings-with-only-two-parts-in.patch + fixes/Bug-1492064-Disable-baseline-JIT-when-SSE2-is-not-support.patch + fixes/Bug-1492065-Use-Swizzle-fallback-when-SSE2-is-not-support.patch + porting-mips/Add-struct-ucred-for-Linux-on-MIPS.patch + + -- Carsten Schoenert Thu, 01 Nov 2018 12:19:34 +0100 + +thunderbird (1:60.2.1-1) unstable; urgency=medium + + * [ba75ca3] logo: move old TB graphics into dedicated folder + * [ba47234] logo: adding new TB icon *.png graphics + Like Firefox Thunderbird has also got a reworked logo. As we use some own + icon created from a SVG graphic this commit adds the new icons in the + various sizes. The source of the SVG graphic is taken from + https://demo.identihub.co/thunderbird#/view/icon/element/612 + (Closes: #909108) + * [0b16a87] d/source.filter: don't remove react files from source + (Closes: #909046) + * [d01dfd6] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1479540-Accept-triplet-strings-with-only-two-parts-in.patch + fixes/Bug-1482248-don-t-crash-on-empty-file-name-in-nsMsgLocalS.patch + fixes/Bug-1492064-Disable-baseline-JIT-when-SSE2-is-not-support.patch + fixes/Bug-1492065-Use-Swizzle-fallback-when-SSE2-is-not-support.patch + (Closes: #909628, #909039, #906816) + * [bf64065] New upstream version 60.2.1 + Fixed CVE issues in upstream version 60.2.1 (MFSA 2018-25) + CVE-2018-12377: Use-after-free in refresh driver timers + CVE-2018-12378: Use-after-free in IndexedDB + CVE-2018-12379: Out-of-bounds write with malicious MAR file + CVE-2018-12376: Memory safety bugs fixed in Firefox 62 and Firefox ESR 60.2 + CVE-2018-12385: Crash in TransportSecurityInfo due to cached data + CVE-2018-12383: Setting a master password post-Firefox 58 does not delete + unencrypted previously stored passwords + * [b4712af] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + fixes/Bug-1482248-don-t-crash-on-empty-file-name-in-nsMsgLocalS.patch + * [79057f6] d/control: make lightning-l10n packages transitional + The l10n content for Lightning and a specific language is now much more + related to the Thunderbird l10n content. By this the existing lightning + l10n packages are not really useful any more as we move the Lightning + l10n content into the respective Thunderbird l10n package a we need to + turn the existing Lightning l10n packages into transitional packages. + * [a0ac3b7] d/control: adding Replaces, Breaks, Provides to thunderbird-l10n-* + Related to the previous commit the Thunderbird l10n packages need some + more fields in the control file so the transition from lightning-l10n into + thunderbird-l10n can work. + * [c82ee7c] d/rules: install lightning l10n into thunderbird-l10n-* packages + The content for the lightning l10n stuff needs now to be installed into + thunderbird-l10n packages. + * [72cd535] d/control: add thunderbird-l10n-cy + Oops, seems like we never have introduced this language for Thunderbird + before. Now required to provide the l10n content for Lightning. + * [510bea6] d/thunderbird-wrapper.sh: improve GDB switch + Since TB 60 upstream isn't installing the old wrapper script + run-mozilla.sh any more. By this we need to adjust our starting wrapper + so the call to start Thunderbird within the GDB debugger is working. + + -- Carsten Schoenert Fri, 05 Oct 2018 17:43:49 +0200 + +thunderbird (1:60.0-3) unstable; urgency=medium + + * [daa0dd7] locale: use 'intl.locale.requested' correctly + Thanks to hint from Sven Joachim we can use the preference setting + 'intl.locale.requested' in way that users don't need to use this setting + within their prefs.js to control the language of the Thunderbird UI. + 'intl.locale.requested' is somehow the successor of 'intl.locale.matchOS'. + (Closes: #908034) + * [f8ac1b2] debian/control: increase Standards-Version to 4.2.1 + No further changes needed. + * [a001579] d/control: remove empty 'Replaces' in thunderbird-l10n-da + We can remove that line of Replaces without any key. + + -- Carsten Schoenert Thu, 06 Sep 2018 18:46:31 +0200 + +thunderbird (1:60.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [71ac5e7] rebuild patch queue from patch-queue branch + added patches: + porting-mips/Add-struct-ucred-for-Linux-on-MIPS.patch + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + * [d94e5dc] d/control: B-D on {lib}clang-6.0* and llvm-6.0-dev + (Closes: #906707) + + -- Carsten Schoenert Mon, 20 Aug 2018 17:57:07 +0200 + +thunderbird (1:60.0-1) unstable; urgency=medium + + [ Cyril Brulebois ] + * [4f1fcd4] Bump B-D libsqlite3-dev version + Upstream requires a more recent version that is already available in + unstable but not in Stretch later e.g. + * [5a790c2] Add libicu-dev to Build-Depends (required for icu-i18n.pc) + This package was pulled from some other package already but we need this + explicit now again as we don't use the internal ICU version any more. + * [8c86207] Bump libhunspell-dev version + The same as for libsqlite3-dev, adding the correct B-D version. + (Closes: #905465) + + [ Carsten Schoenert ] + * [901f257] New upstream version 60.0 + Fixed CVE issues in upstream version 60.0 (MFSA 2018-19) + CVE-2018-12359: Buffer overflow using computed size of canvas element + CVE-2018-12360: Use-after-free when using focus() + CVE-2018-12361: Integer overflow in SwizzleData + CVE-2018-12362: Integer overflow in SSSE3 scaler + CVE-2018-5156: Media recorder segmentation fault when track type is + changed during capture + CVE-2018-12363: Use-after-free when appending DOM nodes + CVE-2018-12364: CSRF attacks through 307 redirects and NPAPI plugins + CVE-2018-12365: Compromised IPC child process can list local filenames + CVE-2018-12371: Integer overflow in Skia library during edge builder + allocation + CVE-2018-12366: Invalid data handling during QCMS transformations + CVE-2018-12367: Timing attack mitigation of PerformanceNavigationTiming + CVE-2018-5187: Memory safety bugs fixed in Firefox 61, Firefox ESR 60.1, + and Thunderbird 60 + CVE-2018-5188: Memory safety bugs fixed in Firefox 61, Firefox ESR 60.1, + Firefox ESR 52.9, and Thunderbird 60 + * [44ab834] rebuild patch queue from patch-queue branch + removed patches (applied upstream): + porting-arm64/Bug-1453892-Only-use-SkJumper-s-arm64-half-float-optimiza.patch + porting-arm64/Bug-1463036-Use-HAVE_ARM_NEON-instead-of-BUILD_ARM_NEON-f.patch + porting-armel/Bug-1463036-Add-mfloat-abi-softfp-to-NEON_FLAGS-when-it-m.patch + * [3168b29] debian/control: increase Standards-Version to 4.2.0 + No further changes needed. + * [f2f206e] d/rules: use MOZ_LANGPACK_ID instead of hard coding + * [996352a] d/rules: ensure l10n MOZ_LANGPACK_ID matches variable from + makefile + Previous beta versions for the thunderbird-l10n data have used + '@firefox.mozilla.org' within their application.id setting. Thunderbird + now expects '@thunderbird.mozilla.org' instead. Make the build more + flexible so we can detect mismatches here. + (Closes: #906176) + + -- Carsten Schoenert Sun, 19 Aug 2018 11:32:11 +0200 + +thunderbird (1:60.0~b10-1) experimental; urgency=medium + + [ intrigeri ] + * [596869d] AppArmor: update profile from upstream (at commit edc9487) + (Closes: #901471) + + [ Carsten Schoenert ] + * [57195ff] New upstream version 60.0~b10 + * [770c9a6] rebuild patch queue from patch-queue branch + added patches: + porting-arm64/Bug-1463036-Use-HAVE_ARM_NEON-instead-of-BUILD_ARM_NEON-f.patch + porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-armel/Bug-1463036-Add-mfloat-abi-softfp-to-NEON_FLAGS-when-it-m.patch + * [7fa6ebd] debian/control: increase Standards-Version to 4.1.5 + No further changes needed. + * [22e701c] c-l-l10n-t.sh: adjust the path to the python helper + Adjust the shell script helper to use the changed path to makeversion.py. + * [90a1d9e] sticky prefs: use the new syntax in vendor.js + The syntax for locked preferences has been changed a while ago, it's + time to adjust the entry within vendor.js to disable automatic updates + for AddOns. + + -- Carsten Schoenert Thu, 12 Jul 2018 17:52:27 +0200 + +thunderbird (1:60.0~b9-2) experimental; urgency=medium + + [ intrigeri ] + * [eb7cb44] Revert "apparmor: allow access to @{HOME}/.gnupg/tofu.db" + * [4cd8baf] AppArmor: update profile from upstream + (Closes: #900840) + * [807eb99] AppArmor: update profile from upstream (at commit 104da32) + + [ Carsten Schoenert ] + * [c980546] rebuild patch queue from patch-queue branch + added patch: + porting-arm64/Bug-1453892-Only-use-SkJumper-s-arm64-half-float-optimiza.patch + + -- Carsten Schoenert Sun, 01 Jul 2018 19:15:00 +0200 + +thunderbird (1:60.0~b9-1) experimental; urgency=medium + + * [be64a3e] d/source.filter: update due upstream changes + Writing the import filter file source.filter mostly complete new from + scratch. Needed because upstream has changed the structure of the source + completely. + * [c4b9113] New upstream version 60.0~b9 + * [3dc900a] rebuild patch queue from patch-queue branch + Related to the changed source structure the patches for the patch queue + needs to be adjusted to the new folders and their structure. Thanks to + git this wasn't that painful as git did all of the job. Two new patches + are needed to add. + added patches: + fixes/Build-also-gdata-provider-as-xpi-file.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + * [e50ae04] d/rules: remove references to folder 'mozilla' + To get the source built some targets in debian/rules are needed to be + modified. All references to the old used folder 'mozilla/' are removed + now. + * [a650500] ICU: don't build the Paragraph Layout library + Disable the build of the Paragraph Layout library, we don't need them if + we need to built the ICU stuff. Cherry-picked from current ESR 52 + packaging. + * [977b7fe] d/mozconfig.default: use the ICU package from system + The Debian packages of icu are recent enough so we don't need to build + own dedicated ICU binaries. + * [0c7ed7e] adjust the configuration of the built + Because of the modified source structure some more adjustments are needed + while going through the built targets like different paths, and built + calls of the Thunderbird source. + * [1c09011] adjust the install temporary folder + Upstream is now wrapping all internal make calls through a Python wrapper + called 'mach'. This also involves a changed behavior for installing the + Thunderbird files into the temporary folder we later use by the debhelper + sequencer. + * [bfbc9ca] d/s/lintian-overrides: update content due changed source.filter + The modified file debian/source.filter make some adjustments needed in + the lintian-overrides file for the source files related part. + * [44a4c5a] d/thunderbird.lintian-overrides: update after config changes + Like before some adjustments are needed for the lintian override rules + for the source files. + * [dd48091] d/copyright: adjust the content due folder changes + And one more file that needs to be adjusted due the changed source files. + + -- Carsten Schoenert Sun, 01 Jul 2018 16:12:33 +0200 + +thunderbird (1:60.0~b6-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [3d91710] create-lightning-l10n: adjust folder structure + To build more easy lightning-l10n packages let's modify the helper script + for building the additional tarball. Change the content structure so we + can simple copy the needed l10n stuff into the l10n packages. + * [f1d6031] New upstream version 60.0~b6 + * [6643c31] Revert the linking into /u/l/tb/d/extensions + Thunderbird in Debian won't detecting extension which are placed in + /usr/lib/thunderbird/distribution/extensions, going back to the old + folder /usr/lib/thunderbird/extensions to link extensions into + Thunderbird. + * [26549a3] lightning: turning package into Architecture all + Change the architecture for the lightning package from 'any' to 'all'. + Lightning is only build by Javascript, CSS, JSM and other text based + files and we don't need to build and install it as a architecture + dependent package. + * [86cd48f] mozconfig.default: disable webrtc build and inclusion + Let's drop the build of support for WebRTC, Thunderbird isn't able to use + this as there is no component which is depending on this. The chat + component would be a potential use case but right now it lacks any + functionality by webrtc features. + + -- Carsten Schoenert Sat, 05 May 2018 13:56:36 +0200 + +thunderbird (1:60.0~b5-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b8625ea] New upstream version 60.0~b5 + + -- Carsten Schoenert Sat, 28 Apr 2018 19:15:07 +0200 + +thunderbird (1:60.0~b4-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [62ae939] New upstream version 60.0~b4 + + -- Carsten Schoenert Mon, 23 Apr 2018 18:19:11 +0200 + +thunderbird (1:60.0~b3-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [94f8505] debian/control: increase Standards-Version to 4.1.4 + No further changes needed.f2f206eb34a619f7a684d1216fcd918454135d41 + * [3ba10c6] rebuild patch queue from patch-queue branch + added patches: + porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + fixes/Use-msse-2-fpmath-C-CXXFLAGS-only-on-x86_64-platforms.patch + fixes/Fix-big-endian-build-for-SKIA.patch (re-added) + Thanks Andreas Glaubitz for providing these patches! + * [dabf294] New upstream version 60.0~b3 + * [24f8a38] re-enable usage of lib{nspr4,nss3}-dev while built + The available versions of these libraries now recent enough so we can + drop the usage of the embedded code copies. + + -- Carsten Schoenert Sun, 15 Apr 2018 12:47:43 +0200 + +thunderbird (1:60.0~b2-1) experimental; urgency=medium + + [ Agustin Henze ] + * [3639717] apparmor: allow access to @{HOME}/.gnupg/tofu.db + (Closes: #894907) + + [ intrigeri ] + * [3895bba] AppArmor: fix empty black windows in Thunderbird 58+ + (Closes: #887973) + * [353ca25] AppArmor: update profile from upstream + (Closes: #882048, #882122) + + [ Carsten Schoenert ] + * [37e0bbe] New upstream version 59.0~b1 + * [d75c4be] rebuild patch queue from patch-queue branch + added patches: + fixes/Fix-build-against-libcairo2-dev-1.15.10.patch + patches/fixes/Fix-big-endian-build-for-SKIA.patch + + removed patches: + debian-hacks/Allow-usage-of-libnspr4-dev-4.16.patch + fixes/Bug-1418598-Make-cargo-linker-properly-handle-quoted-stri.patch + thunderbird/Thunderbird-fix-installdir-for-icons.patch + * [9615d6a] New upstream version 60.0~b1 + * [431006c] d/source.filter: update due upstream changes + Update the list of files we filter out, Upstream added various new files + mostly used for auto-testing we don't use. + * [2cb4635] d/s/lintian-overrides: remove entries about brace expansion + We can remove the override about brace expansion in dh sequencer files. + * [4c9f185] debian/rules: using 'rm -f' because probably non existing files + The file app.ini isn't existing in some l10n folders for lightning, + simply use '-f' for convenience. + * [ed00442] debian/rules: fix typo to grep app ID of calendar-g-p + * [4a993c5] adding additional packages to Breaks with thunderbird + The packages calendar-exchange-provider and enigmail + xul-ext-sogo-connector aren't compatible to the webextension interface + and we need to add a versioned Breaks. + * [9bd8286] adjust Breaks for enigmail + Also enigmail needs an adjusted version for Breaks. + * [24382c2] Revert "Use gcc-6 and g++-6 due broken GUI with GCC-7" + (Closes: #892404) + * [f0ac8a5] rebuild patch queue from patch-queue branch + removed patches: + debian-hacks/Allow-to-override-ICU_DATA_FILE-from-the-environment.patch + debian-hacks/remove-non-free-W3C-icon-valid.png.patch + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch + fixes/Fix-build-against-libcairo2-dev-1.15.10.patch + + modified patches: + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + * [6ab35ad] d/mozconfig.default: don't use nspr and nss from system + We need to switch back to the embedded source for NSS and NSPR, the + versions in unstable aren't usable. + * [055ed65] d/mozconfig.default: remove no longer alive option + The option '--enable-system-cairo' is gone with TB 60. + * [663d6f1] lightning-l10n-bn-bd: remove Bengali (Bangladesh) l10n package + * [02b21cb] lightning-l10n-pa-in: remove Punjabi (India) l10ng package + * [0cc0b5d] lightning-l10n-ta-lk: remove Tamil (Sri Lanka) l10n package + * [62f23a5] thunderbird-l10n-bn-bd: remove (Bangladesh) l10n package + * [61bfdf4] thunderbird-l10n-pa-in: remove Punjabi (India) l10n package + * [a361750] thunderbird-l10n-ta-lk: remove Tamil (Sri Lanka) l10n package + * [8ba5b0d] debian/control: add new packages for *-kk language + * [e4280ac] debian/control: add new packages for *-ms language + * [aaef9fe] adjust Vcs fields to salsa.debian.org + * [144c492, 009b145] debian/copyright: update after upstream changes + Upstream removed some files/folders, which reflects in needed adjustments + for the copyright file. + * [3623f84] d/thunderbird.lintian-overrides: add libnspr4.so and libnss3.so + We now need to ship (again) embedded libraries for NSPR and NSS. + * [0d3de65] lightning: move linking into /u/l/tb/distribution/extensions + Following upstream with the folder for the Lightning to not differ. + * [4d6cefe] New upstream version 60.0~b2 + * [e1c40a7] rebuild patch queue from patch-queue branch + removed patches: + fixes/Fix-big-endian-build-for-SKIA.patch + * [4834a1d] add entries to README and NEWS for thunderbird + Adding notes about the current situation foe the l10n packages and their + integration into the UI of Thunderbird and Lightning. + + -- Carsten Schoenert Sat, 07 Apr 2018 11:12:37 +0200 + +thunderbird (1:58.0~b3-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [d114338] d/source.filter: update due upstream changes + Update the filtering list for excluding some unwanted source files as + usual while preparing new major upstream versions. + * [91d23a9] New upstream version 58.0~b3 + * [f34e555] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/Allow-usage-of-libnspr4-dev-4.16.patch + debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + debian-hacks/shellutil.py-ignore-tilde-as-special-character.patch + fixes/Bug-1418598-Make-cargo-linker-properly-handle-quoted-stri.patch + + modified patches: + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + porting-sh4/Add-sh4-support-to-Thunderbird.patch + porting/Disable-optimization-on-alpha-for-the-url-classifier.patch + prefs/Don-t-auto-disable-extensions-in-system-directories.patch + prefs/Set-javascript.options.showInConsole.patch + + obsolete patches (included somehow or fixed upstream): + debian-hacks/Force-use-the-i686-rust-target.patch + porting-alpha/FTBFS-alpha-adjust-some-source-to-prevent-build-issues.patch + patches/porting-alpha/fix-FTBFS-on-alpha.patch + patches/porting-arm64/Bug-1257055-Use-jit-arm64-Architecture-arm64.h-on-non-JIT.patch + patches/porting-hppa/FTBFS-hppa-xpcshell-segfaulting-during-make-install.patch + porting-kfreebsd-hurd/FTBFS-hurd-adding-GNU-Hurd-to-the-list-of-OS-systems.patch + porting-mips/FTBFS-mips-add-missing-char-variable.patch + porting/ppc-fix-divide-page-size-in-jemalloc.patch + thunderbird-l10n/thunderbird-l10n-disable-external-extension-update.patch + * [bd45d47] debian/control: adding new Build-Depends + Since this is the first version > 52 we need now cargo, clang, rustc and + llvm development files. + * [c63a03f] d/mozconfig.default: remove no longer alive options + Some old options like --disable-gnomeui, --enable-gio, and + --with-default-mozilla-five-home are history now. + * [609dbbe] l10n lightning: modify script to work with recent version + We still need to use the shellscript create-lightning-l10n-tarball.sh + (and also *-thunderbird-l10n-*) to create the additional tarballs. + * [2f276b7] thunderbird-l10n: change tb-l10n package installation + Due the changed structure from upstream for the thunderbird l10n files + the packaging needs also to be adopted. + * [ee476f8] d/thunderbird.install: update install sequencer file + Also small adjustments are needed for the installation of the thunderbird + binary files. The old script run-mozilla.sh (which we didn't have used + within the Debian packaging) isn't shipped now, and there is now a new + folder gtk2 which includes the libmozgtk library linked against GTK2. + * [ced9d18] thunderbird-dev: remove the package and adjustments on this + The complete content that was packaged previously in thunderbird-dev + isn't created and installed now. Thus makes the old package + thunderbird-dev obsolete. + * [484a142] autopkgtests: disable tests around thunderbird-dev + Disable all autopkgtests which have used thunderbird-dev. + * [0aa2546] switch to system libraries back + We can now use the system libararies libnspr4, libnss3 and libsqlite3 + again, the version of libicu is still to old for usage within the + package build. + * [858ae82] d/control: thunderbird, remove variable ${gnome:Depends} + * [7c3a258] d/control: lightning, remove variable ${shlibs:Depends} + * [aabf0d4] debian/source/lintian-overrides: update entries + * [94b00db] debian/control: increase Standards-Version to 4.1.3 + No further changes needed. + * [245e8c2] debian/copyright: update after upstream changes + Also almost needed with new major upstream versions reflect the + changes from upstream in the copyright file. + * [72507b2] d/control: enigmail < 1.9.9 isn't working with TB > 55 + Due the new plugin interface some old plugins doesn't work with this + thunderbird version anymore, or behaving unexpected. Enigmal is one of + the this (known) plugins which needs to be at least in version 2.0a2pre + installed to work with Thunderbird. + * [6cf0133] lightning-l1on: change l10n installation + Related to [4abc7f2] the various thunderbird-l10n packages need to be + installed differently to old package installations. + * [6af7054] calendar-google-provider: tweak installation a bit + More a hack but the Mozilla plugin installation by mozilla-devscripts + isn't prepared for the new webextension logic by Mozilla. Symlinking the + c-g-p plugin for now directly from the thunderbird extension folder. + + -- Carsten Schoenert Sun, 21 Jan 2018 14:03:39 +0100 + +thunderbird (1:52.9.1-1) unstable; urgency=high + + [ intrigeri ] + * [1259eaa] AppArmor: update profile from upstream (at commit edc9487) + (Closes: #901471) + + [ Carsten Schoenert ] + * [d706f5b] debian/control: increase Standards-Version to 4.1.5 + No further changes needed. + * [f5a3eb2] New upstream version 52.9.1 + (Closes: #903160) + + -- Carsten Schoenert Tue, 10 Jul 2018 19:40:41 +0200 + +thunderbird (1:52.9.0-1) unstable; urgency=high + + [ intrigeri ] + * [c33dba2] Revert "apparmor: allow access to @{HOME}/.gnupg/tofu.db" + * [cb64397] AppArmor: update profile from upstream (Closes: #900840) + * [b5d6545] AppArmor: update profile from upstream (at commit 104da32) + + [ Carsten Schoenert ] + * [099b525] d/source.filter: add some more files to filter + There are some more files we want to filter out. + * [376e5f3] New upstream version 52.9.0 + Fixed CVE issues in upstream version 52.9 (MFSA 2018-18) + CVE-2018-12359: Buffer overflow using computed size of canvas element + CVE-2018-12360: Use-after-free when using focus() + CVE-2018-12372: S/MIME and PGP decryption oracles can be built with HTML + emails + CVE-2018-12373: S/MIME plaintext can be leaked through HTML reply/forward + CVE-2018-12362: Integer overflow in SSSE3 scaler + CVE-2018-12363: Use-after-free when appending DOM nodes + CVE-2018-12364: CSRF attacks through 307 redirects and NPAPI plugins + CVE-2018-12365: Compromised IPC child process can list local filenames + CVE-2018-12366: Invalid data handling during QCMS transformations + CVE-2018-12374: Using form to exfiltrate encrypted mail part by pressing + enter in form field + CVE-2018-5188: Memory safety bugs fixed in Firefox 60, Firefox ESR 60.1, + Firefox ESR 52.9, and Thunderbird 52.9 + * [83a9c9b] rebuild patch queue from patch-queue branch + As we have filtered more files out from the source we need to modify the + list of tests we won't to built while built the source too so a small + adjustment on that. + Also fixing some spelling issues which Lintian has found. + modified patches: + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-alpha/fix-FTBFS-on-alpha.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + renamed patches: + Allow-to-override-ICU_DATA_FILE-from-the-environment.patch -> + Allow-one-to-override-ICU_DATA_FILE-from-the-environment.patch + fix-function-nsMsgComposeAndSend-to-to-respect-Replo.patch -> + fix-function-nsMsgComposeAndSend-to-respect-ReploToSend.patch + * [d5254e2] Removed unneded lintian override about brace expansion + + -- Carsten Schoenert Wed, 04 Jul 2018 21:44:26 +0200 + +thunderbird (1:52.8.0-1) unstable; urgency=high + + [ intrigeri ] + * [4656ebf] AppArmor: update profile from upstream + (Closes: #882048, #882122) + + [ Agustin Henze ] + * [840cbc8] apparmor: allow access to @{HOME}/.gnupg/tofu.db + (Closes: #894907) + + [ Carsten Schoenert ] + * [514e9e8] New upstream version 52.8.0 + Fixed CVE issues in upstream version 52.8 (MFSA 2018-13) + CVE-2018-5183: Backport critical security fixes in Skia + CVE-2018-5184: Full plaintext recovery in S/MIME via chosen-ciphertext + attack (aka Efail) + CVE-2018-5154: Use-after-free with SVG animations and clip paths + CVE-2018-5155: Use-after-free with SVG animations and text paths + CVE-2018-5159: Integer overflow and out-of-bounds write in Skia + CVE-2018-5161: Hang via malformed headers + CVE-2018-5162: Encrypted mail leaks plaintext through src attribute + (aka Efail) + CVE-2018-5170: Filename spoofing for external attachments + CVE-2018-5168: Lightweight themes can be installed without user + interaction + CVE-2018-5178: Buffer overflow during UTF-8 to Unicode string conversion + through legacy extension + CVE-2018-5185: Leaking plaintext through HTML forms (aka Efail) + CVE-2018-5150: Memory safety bugs fixed in Firefox 60, Firefox ESR 52.8, + and Thunderbird 52.8 + (Closes: #898631) + * [7845229] ICU: don't build the Paragraph Layout library + Disable the build of the layout library in the internal ICU build as we + don't need this and can cause build issues. + * [e0a79fc] debian/control: increase Standards-Version to 4.1.4 + No further changes needed. + + -- Carsten Schoenert Thu, 17 May 2018 21:04:15 +0200 + +thunderbird (1:52.7.0-1) unstable; urgency=medium + + * [9eb2692] New upstream version 52.7.0 + Fixed CVE issues in upstream version 52.7 (MFSA 2018-09) + CVE-2018-5127: Buffer overflow manipulating SVG animatedPathSegList + CVE-2018-5129: Out-of-bounds write with malformed IPC messages + CVE-2018-5144: Integer overflow during Unicode conversion + CVE-2018-5146: Out of bounds memory write in libvorbis + CVE-2018-5125: Memory safety bugs fixed in Firefox 59, Firefox ESR 52.7, + and Thunderbird 52.7 + CVE-2018-5145: Memory safety bugs fixed in Firefox ESR 52.7 and + Thunderbird 52.7 + * [a01cf4b] Revert "Use gcc-6 and g++-6 due broken GUI with GCC-7" + Switching now back to GCC7 as we don't have any longer issues with + broken visuals in the GUI. + (Closes: #892404) + + -- Carsten Schoenert Mon, 26 Mar 2018 17:21:40 +0200 + +thunderbird (1:52.6.0-1) unstable; urgency=high + + * [97e1cd7] New upstream version 52.6.0 + Fixed CVE issues in upstream version 52.6 (MFSA 2018-04) + CVE-2018-5095: Integer overflow in Skia library during edge builder + allocation + CVE-2018-5096: Use-after-free while editing form elements + CVE-2018-5097: Use-after-free when source document is manipulated + during XSLT + CVE-2018-5098: Use-after-free while manipulating form input elements + CVE-2018-5099: Use-after-free with widget listener + CVE-2018-5102: Use-after-free in HTML media elements + CVE-2018-5103: Use-after-free during mouse event handling + CVE-2018-5104: Use-after-free during font face manipulation + CVE-2018-5117: URL spoofing with right-to-left text aligned left-to-right + CVE-2018-5089: Memory safety bugs fixed in Firefox 58, Firefox ESR 52.6, + and Thunderbird 52.6 + * [0300242] rebuild patch queue from patch-queue branch + Added patch debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + that fixes the build of the included ICU source against glibc 2.26. + (Closes: #887766) + * [4bf22e0] debian/control: increase Standards-Version to 4.1.3 + No further changes needed. + * [3616443] adjust Vcs fields to salsa.debian.org + The Vcs for Thunderbird packaging live now on Salsa as Alioth will be + shutdown in the future. + * [c2f3e14] lintian: ignore non multiarch install folder for thunderbird.pc + Ignore a lintian warning about unavailable pkg-config file thunderbird.pc + as the ESR versions 52.x are the last series which will have a + thunderbird-dev. The next ESR version will be 60.x which uses + webextension and makes thunderbird-dev obsolete. + + -- Carsten Schoenert Thu, 25 Jan 2018 20:21:10 +0100 + +thunderbird (1:52.5.2-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [f597157] Revert "d/thunderbird.postinst: reload AA profile on updates" + The trigger automatics for appamor already is handling the + needed reload on profile updates for the applications. + (Closes: #885158) + * [8ebdb96] debian/control: increase Standards-Version to 4.1.2 + No further changes needed. + * [81a8c00] use inverse logic on version for AA profile status check + By this change we don't enforce the disabled profile from the + previous version in some cases and can also handle possible + version strings from -security and -backports. + (Closes: #885157) + + -- Carsten Schoenert Tue, 26 Dec 2017 14:56:40 +0100 + +thunderbird (1:52.5.2-1) unstable; urgency=high + + [ intrigeri ] + * [b791221] AppArmor: support new thunderbird executable path + (Closes: #883561, #884217) + + [ Carsten Schoenert ] + * [1f46308] New upstream version 52.5.2 + Fixed CVE issues in upstream version 52.5 (MFSA 2017-30) + CVE-2017-7829: Mailsploit part 1: From address with encoded null character + is cut off in message header display + CVE-2017-7846: JavaScript Execution via RSS in mailbox:// origin + CVE-2017-7847: Local path string can be leaked from RSS feed + CVE-2017-7848: RSS Feed vulnerable to new line Injection + * [0dd21b9] d/thunderbird.postinst: reload AA profile on updates + * [8c57218] don't disable AA profile on package updates + As people want to re-enable the AA profile a update of + thunderbird doesn't have to disable this again. + (Closes: #884191) + + -- Carsten Schoenert Sun, 24 Dec 2017 11:30:09 +0100 + +thunderbird (1:52.5.0-1) unstable; urgency=high + + [ intrigeri ] + * [48e6b65] AppArmor: fix the Crash Reporter and avoid noisy denial logs + (Closes: #880953) + * [ad8b3b5] AppArmor: fix compatibility with NVIDIA hardware + (Closes: #880532) + * [d8ff6b6] Disable the AppArmor profile by default + Due the various side effects by the enabled AppArmor profile in + Thunderbird it's currently better for a user experience we + disabling the AppArmor profile for to not get people get mad with + to many broken things. + Users can always enable the profile by themselves again. + (Closes: #882672) + * [e50eac5] README.Debian: document how to opt-in for AppArmor confinement + * [860d325] README.Debian: document how one can debug the AppArmor profile + + [ Guido Günther ] + * [50a8f60] Drop myself from maintainers + Thank you Guido for always helping out if we had some questions! + + [ Carsten Schoenert ] + * [b64509b] New upstream version 52.5.0 + Fixed CVE issues in upstream version 52.5 (MFSA 2017-26) + CVE-2017-7828: Use-after-free of PressShell while restyling layout + CVE-2017-7830: Cross-origin URL information leak through Resource Timing API + CVE-2017-7826: Memory safety bugs fixed in Firefox 57, Firefox ESR 52.5, + and Thunderbird 52.5 + * [3166018] thunderbird.links: let thunderbird pointing to thunderbird-bin + (Closes: #856492) + * [6fff70c] [buster] tb-wrapper: searching the correct dbgsym package + * [4763ca6] adding a NEWS file for thunderbird package + Giving a note about the now disabled AppArmor profile. + * [0b9d656] disabling crashreporter for now + Also don't build and ship the Crashreporter any more, it's useless + until we can collect all symbols correctly. + * [a285647] move AppArmor specific things into own README file + Put all AppArmor related information into one dedicated file. + * [5d56439] d/thunderbird.js: prepare a line for extra X-Debbugs-Cc + A really old bug report ... building a compromise and put the + requested extra header config into the configuration file but keep + it deactivated as default. + (Closes: #379304) + + -- Carsten Schoenert Sun, 03 Dec 2017 19:58:57 +0100 + +thunderbird (1:52.4.0-2~exp1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [a3e73e9] disable usage of libgnomeui parts + The libgnomeui stuff (only relevant for GTK+2) is deprecated + for a long time and will be removed in buster, and we don't need + this at all. + See https://lists.debian.org/debian-devel/2017/10/msg00299.html + * [9efc5c9] debian/watch: switch to https + * [bd5a635] rebuild patch queue from patch-queue branch + Fixup for [da3c5cc], add ppc64 to the list of BE architectures. + Thanks Adrian Glaubitz for pointing the issue. (Closes: #879270) + * [42f5ab5] apparmor: update profile from upstream (Closes: #876333, #855346) + + [ intrigeri ] + * [d7febc8, b026d28] AppArmor: update profile from upstream + (Closes: #880425, #877324) + * [377e7b5] README.Debian: fixing small typo + * [3b0a63a] AppArmor: fix importing public OpenPGP keys from file + (Closes: #880715) + + [ Carsten Schoenert ] + * [241690e] d/control: s/Icedove/Thunderbird in desc's for lightning-l10n-* + The lightning-l10n package were still using the name 'Icdeove' + instead of 'Thunderbird'. + * [f17f735] debian/control: moving transitional packages at bottom + * [91f9897] autopkg: adjust icedove to thunderbird depends + Now move over to depend in favor of thunderbird for some of + the autopkg tests. + * [8ae2ad7] autopkg: adjust icedove-dev to thunderbird-dev depends + Doing the same as before for thunderbird-dev as the native + replacement for icedove-dev. + * [fa0134c] bump debhelper >= 10.2.5 + * [8752789] debian/rules: try to build extensions reproducible + The two extensions (lightning and calendar-google-provider) + don't build reproducible right now. Trying to fix this by using + the timestamp from the changelog entry for the files. May not + work correctly and we need to tune more. + * [1496368] d/thunderbird.install: also install the fonts folder + Recent versions of Thunderbird needing the font EmojiOne which + isn't provided by any other package. + (Closes: #881299) + + The following changes are take effect in removing all transitional packages + related to the old icedove packaging only for buster. We still need all the + transitional packages in wheezy, jessie and stretch! + * [54c8a9b] [buster] remove transitional iceowl-l10n-* packages + * [c338630] [buster] remove Replace, Breaks and Provides for iceowl-l10n-* + * [4311683] [buster] remove transitional icedove-l10n-* packages + * [f6e3a01] [buster] remove Replace, Breaks and Provides for icedove-l10n-* + * [a9117e4] [buster] remove transitional iceowl-extension package + * [5aed012] [buster] remove Replace, Breaks and Provides for iceowl-extension + * [27fc04b] [buster] remove transitional icedove-dbg package + * [53b4825] [buster] remove transitional icedove-dev package + * [e2d808f] [buster] remove Replace, Breaks and Provides for icedove-dev + * [97edfbe] [buster] remove transitional icedove package + * [3748054] [buster] remove Replace and Breaks for icedove + * [611a704] [buster] move thunderbird-dbg into *-dbgsym package + + -- Carsten Schoenert Sun, 12 Nov 2017 16:01:07 +0100 + +thunderbird (1:52.4.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [da3c5cc] Simplify endianness selection for ICU + Since we need to build ICU on the various Debian releases we + need to ensure the architecture detection isn't to strict. + Thanks Guido for helping out here! + + [ Carsten Schoenert ] + * [47748ca] debian/control: be more relaxed on Breaks for enigmail + * [6a54666] thunderbird-wrapper: fix small typo in help output + A small typo was happen in the example call with the JS console. + * [6d5266e] README.Debian: update info around tls fallback-limit + The default behavior on the TLS fallback has changed some + versions ago, document this accordingly. + * [24ad883] debian/control: change maintainer + Thanks Christoph for the work over the past years! + * [c78200e] debian/control: move src pkg name to thunderbird + By this version we move the source package name also back to + thunderbird. This follows the changes that are already made to + the binary package names and we can call the source package now + also again thunderbird. + (Closes: #857075) + * [c26133d] debian/gbp.conf: rename components to real used names + Due the changes of the source package the names for the + sub-folders within the additional tarballs can also be changed + to be closer on the real upstream used names. + * [a5ce4f7] New upstream version 52.4.0 + (Closes: #878845, #878870) + Fixed CVE issues in upstream version 52.4 (MFSA 2017-23) + CVE-2017-7793: Use-after-free with Fetch API + CVE-2017-7818: Use-after-free during ARIA array manipulation + CVE-2017-7819: Use-after-free while resizing images in design mode + CVE-2017-7824: Buffer overflow when drawing and validating elements with + ANGLE + CVE-2017-7805: Use-after-free in TLS 1.2 generating handshake hashes + CVE-2017-7814: Blob and data URLs bypass phishing and malware protection + warnings + CVE-2017-7825: OS X fonts render some Tibetan and Arabic unicode characters + as spaces + CVE-2017-7823: CSP sandbox directive did not create a unique origin + CVE-2017-7810: Memory safety bugs fixed in Firefox 56 and Firefox ESR 52.4, + and Thunderbird 52.4 + * [104b4e5] rebuild patch queue from patch-queue branch + * [d63662a] lintian: move oldlibs/extra -> oldlibs/optional + By moving all transitional package to oldlibs/optional we can + help deborphan to detect better not needed packages. + * [fb56001] d/rules: reflect changes from renamed component tarballs + The additional tarballs are stored in folders which reflect + the upstream names of those components. This also needs to be + respected for the build instructions of the package. + * [61288fb] debian/control: change Vcs* fields due the src name change + Addressing the changed source package name in the Git Vcs urls. + * [ef95ab5] debian/control: increase Standards-Version to 4.1.1 + No further changes needed. + * [45e8fe2] apparmor: update profile from upstream + Thanks to Simon Deziel and intrigeri we can simply use the + apparmor profile changes done for the Ubuntu releases. + * [6b1649c] lintian: adding a override for thunderbird-l10n-all + * [ceab93f] debian/README.source: reflect src package name change + + -- Carsten Schoenert Tue, 17 Oct 2017 18:20:29 +0200 + +icedove (1:52.3.0-4) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3ddf57b] rebuild patch queue from patch-queue branch + * [3bd845d] debian/control: increase Standards-Version to 4.1.0 + + -- Carsten Schoenert Tue, 29 Aug 2017 16:17:24 +0200 + +icedove (1:52.3.0-3) unstable; urgency=medium + + [ Carsten Schoenert ] + * [c08f005] rebuild patch queue from patch-queue branch + * [f658cab] debian/rules: enable verbose build for ICU + + -- Carsten Schoenert Mon, 28 Aug 2017 19:44:07 +0200 + +icedove (1:52.3.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [d544a01] debian/rules: correct icu build sequence + + -- Carsten Schoenert Tue, 22 Aug 2017 18:57:36 +0200 + +icedove (1:52.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [8e852be] New upstream version 52.3.0 + Fixed CVE issues in upstream version 52.3 (MFSA 2017-20) + CVE-2017-7800: Use-after-free in WebSockets during disconnection + CVE-2017-7801: Use-after-free with marquee during window resizing + CVE-2017-7809: Use-after-free while deleting attached editor DOM node + CVE-2017-7784: Use-after-free with image observers + CVE-2017-7802: Use-after-free resizing image elements + CVE-2017-7785: Buffer overflow manipulating ARIA attributes in DOM + CVE-2017-7786: Buffer overflow while painting non-displayable SVG + CVE-2017-7753: Out-of-bounds read with cached style data and + pseudo-elements + CVE-2017-7787: Same-origin policy bypass with iframes through page reloads + CVE-2017-7807: Domain hijacking through AppCache fallback + CVE-2017-7792: Buffer overflow viewing certificates with an extremely + long OID + CVE-2017-7804: Memory protection bypass through WindowsDllDetourPatcher + CVE-2017-7791: Spoofing following page navigation with data: protocol and + modal alerts + CVE-2017-7782: WindowsDllDetourPatcher allocates memory without DEP + protections + CVE-2017-7803: CSP containing 'sandbox' improperly applied + CVE-2017-7779: Memory safety bugs fixed in Firefox 55, Firefox ESR 52.3, + and Thunderbird 52.3 + * [0b7243b] debian/rules: build icudt5*.dat on our own if needed + If we need to use the internal sources of ICU (triggered by + using --with-system-icu) we need to build the platform depended file + icudt*[b,l].dat before we can call the configure run. + This is needed as Mozilla only ships a precompiled little endian version + of the file icudt*.dat and all platforms with big endianness are failing + later due issues related to the wrong endianness. + * [1964469] debian/mozconfig.default: enable i18n on big endian + * [6b58ac5] debian/control: increase Standards-Version to 4.0.1 + * [e59cf81] rebuild patch queue from patch-queue branch + removed patche(s) (applied upstream): + - fixes/Bug-1308908-Compare-the-whole-accessible-name-when-checki.patch + updated/refreshed patches (no changes): + - porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + + [ Simon Deziel ] + * [a574010] apparmor/usr.bin.thunderbird: small update to avoid noise + + -- Carsten Schoenert Sat, 19 Aug 2017 18:27:19 +0200 + +icedove (1:52.2.1-5) unstable; urgency=high + + [ Carsten Schoenert ] + * [133a574] Use gcc-6 and g++-6 due broken GUI with GCC-7 + The usage of the GCC-7 suite introduces a broken GUI currently that make + using thunderbird mostly impossible. + (Closes: #871629) + * [3ebacd1] d/rules: use DEB_* variables for entries from changelog + By using variables that are prepared by dpkg we don't need to manually + search for dates and versions. etc. + * [52c2b83] d/copyright: MPL-1.1 and MPL-2.0 now provided by common-licenses + Since policy 4.0.0 the two Mozilla related licenses are included and don't + need to be added extra. + * [3f37967] adjust X-Debian-Homepage to existing Thunderbird page + * [41b5c03] debian/control: increase Standards-Version to 4.0.0 + * [e3c3994] mozconfig.default: use proper disabled options + * [2d4b846] debian/control: increase Breaks for enigmail version + (Closes: #869789) + + [ John Paul Adrian Glaubitz ] + * [4879401] sh4: disable option --disable-pie (Closes: #867553) + + [ Carsten Schoenert ] + * [2646f3f] autpkgtests: disable the idlTest.sh test case + + -- Carsten Schoenert Fri, 11 Aug 2017 22:02:47 -0400 + +icedove (1:52.2.1-4) unstable; urgency=medium + + [ Guido Günther ] + * [04de899] Don't use different profile folder for jessie and wheezy + + [ Carsten Schoenert ] + * [692d3ce] rebuild patch queue from patch-queue branch (Closes: #867013) + added patch (provided by Adrian): + - porting-alpha/FTBFS-alpha-adjust-some-source-to-prevent-build-issues.patch + removed patch: + - porting-hurd/FTBFS-hurd-adding-GNU-to-the-configure-platform-detection.patch + (wrong approach, the Python wrapper around configure isn't yet smart enough) + + [ John Paul Adrian Glaubitz ] + * [5153ce2] mips: final fixups to prevent FTBFS + + -- Carsten Schoenert Thu, 06 Jul 2017 16:53:30 +0200 + +icedove (1:52.2.1-3) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * [99b323a] d/mozconfig.default: fixups for --without-intl-api + + -- Carsten Schoenert Sat, 01 Jul 2017 10:18:05 +0200 + +icedove (1:52.2.1-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [e8ce299] disabling ICU support on some big endian systems + This hack should enable at least successful building of all RC platforms + and needs to be solved in a not such agressive way without loosing ICU + support on the problematic platforms. + Thanks John Paul Adrian Glaubitz for catching the root of the issue. + * [a66e812] rebuild patch queue from patch-queue branch + Adding a small needed fix for getting mips* out od FTBFS. Also GNU/Hurd + should pass the configure script now. + + -- Carsten Schoenert Fri, 30 Jun 2017 19:38:28 +0200 + +icedove (1:52.2.1-1) unstable; urgency=medium + + [ Guido Günther ] + * [4e87d6b] d/rules: Make sure DIST is not passed on to configure + + [ Carsten Schoenert ] + * [35b84ef] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-CPU_ARCH-test-for-libjpeg-on-mips.patch + - porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + (Closes: #864974) + * [c818874] New upstream version 52.2.1 + (Closes: #861840) + * [8c776c9] Icedove2Thunderbird: add opt out for dialogue pop-up + (Closes: #860381) + + -- Carsten Schoenert Wed, 28 Jun 2017 20:01:44 +0200 + +icedove (1:52.2.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [9ebc11d] mozconfig.default: remove configure option + '--disable-methodjit' on armel + This options isn't alive any more and was forgotten to removed on the + previous upload. + [ Simon Deziel ] + * [d8e5d42] usr.bin.thunderbird: merge gpg(1) and gpg2 subprofiles + (Closes: #859179) + * [f18884e] usr.bin.thunderbird: allow accessing gpgconf in gpg subprofile + * [e73afbb] usr.bin.thunderbird: allow accessing any gpg2keys providers + + [ Carsten Schoenert ] + * [066ddb9] mozconfig.default: switch back to internal libjpeg + Going back and using the libjpeg library that's shipped by Mozilla, the + system library probably provoking broken builds on various platforms. + As we prepare the uploads for (old-)stable-security we need to use the + internal libjpeg library at all. + * [ff92bfa] rebuild patch queue from patch-queue branch + modified patches: + - porting-m68k/Add-m68k-support-to-Thunderbird.patch + - porting-sh4/Add-sh4-support-to-Thunderbird.patch + (Closes: #859271, #859508) + * [0a89f76] New upstream version 52.2.0 + Fixed CVE issues in upstream version 52.2 (MFSA 2017-17) + CVE-2017-5472: Use-after-free using destroyed node when regenerating trees + CVE-2017-7749: Use-after-free during docshell reloading + CVE-2017-7750: Use-after-free with track elements + CVE-2017-7751: Use-after-free with content viewer listeners + CVE-2017-7752: Use-after-free with IME input + CVE-2017-7754: Out-of-bounds read in WebGL with ImageInfo object + CVE-2017-7756: Use-after-free and use-after-scope logging XHR header + errors + CVE-2017-7757: Use-after-free in IndexedDB + CVE-2017-7778: Vulnerabilities in the Graphite 2 library + CVE-2017-7758: Out-of-bounds read in Opus encoder + CVE-2017-7764: Domain spoofing with combination of Canadian Syllabics and + other unicode blocks + CVE-2017-5470: Memory safety bugs fixed in Firefox 54 and Firefox ESR 52.2, + and Thunderbird 52 + * [e03380e] rebuild patch queue from patch-queue branch + modified patch: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + + -- Carsten Schoenert Fri, 16 Jun 2017 20:37:06 +0200 + +icedove (1:52.1.1-1) experimental; urgency=medium + + [ Guido Günther ] + * [db8d0db] Tighten meta package dependencies + Be more strict on depends and add a version to all related + Thunderbird specific packages. + * [defb689] Copy-edit thunderbird-wrapper-helper.sh + * [54b35d4] Allow one to override the location of the wrapper-helper + Make $TB_HELPER more flexible and give the variable a default value, so a + user can override it with it's own. + * [a187364] dh-exec: avoid multiple spaces around filenames + * [a85bc7a] thunderbird-wrapper: robustness when sourcing helper + * [eee56ab] Drop replaces on packages no longer in any release + + [ Carsten Schoenert ] + * [1d85980] rebuild patch queue from patch-queue branch + added patches: + - porting-mk68/Add-m68k-support-to-Thunderbird.patch + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (Closes: #859151, #859271) + * [2717849] tb-wrapper: call thunderbird starting with exec + (Closes: #858100) + * [8afa31b] d/gbp.conf: adjust upstream branch to new ESR version + * [43d2e70] New upstream version 52.1.1 + Fixed CVE issues in upstream version 52.1 (MFSA 2017-09) + CVE-2017-5413: Segmentation fault during bidirectional operations + CVE-2017-5414: File picker can choose incorrect default directory + CVE-2017-5416: Null dereference crash in HttpChannel + CVE-2017-5426: Gecko Media Plugin sandbox is not started if seccomp-bpf + filter is running + CVE-2017-5418: Out of bounds read when parsing HTTP digest authorization + responses + CVE-2017-5419: Repeated authentication prompts lead to DOS attack + CVE-2017-5405: FTP response codes can cause use of uninitialized values + for ports + CVE-2017-5421: Print preview spoofing + CVE-2017-5422: DOS attack by using view-source: protocol repeatedly in one + hyperlink + CVE-2017-5399: Memory safety bugs fixed in Thunderbird 52 + Fixed CVE issues in upstream version 52.1 (MFSA 2017-13) + CVE-2017-5433: Use-after-free in SMIL animation functions + CVE-2017-5435: Use-after-free during transaction processing in the editor + CVE-2017-5436: Out-of-bounds write with malicious font in Graphite 2 + CVE-2017-5461: Out-of-bounds write in Base64 encoding in NSS + CVE-2017-5459: Buffer overflow in WebGL + CVE-2017-5466: Origin confusion when reloading isolated data:text/html URLs + CVE-2017-5434: Use-after-free during focus handling + CVE-2017-5432: Use-after-free in text input selection + CVE-2017-5460: Use-after-free in frame selection + CVE-2017-5438: Use-after-free in nsAutoPtr during XSLT processing + CVE-2017-5439: Use-after-free in nsTArray Length() during XSLT processing + CVE-2017-5440: Use-after-free in txExecutionState destructor during XSLT + processing + CVE-2017-5441: Use-after-free with selection during scroll events + CVE-2017-5442: Use-after-free during style changes + CVE-2017-5464: Memory corruption with accessibility and DOM manipulation + CVE-2017-5443: Out-of-bounds write during BinHex decoding + CVE-2017-5444: Buffer overflow while parsing application/http-index-format + contents + CVE-2017-5446: Out-of-bounds read when HTTP/2 DATA frames are sent with + incorrect data + CVE-2017-5447: Out-of-bounds read during glyph processing + CVE-2017-5465: Out-of-bounds read in ConvolvePixel + CVE-2016-10196: Vulnerabilities in Libevent library + CVE-2017-5454: Sandbox escape allowing file system read access through + file picker + CVE-2017-5469: Potential Buffer overflow in flex-generated code + CVE-2017-5445: Uninitialized values used while parsing + application/http-index-format content + CVE-2017-5449: Crash during bidirectional unicode manipulation with + animation + CVE-2017-5451: Addressbar spoofing with onblur event + CVE-2017-5462: DRBG flaw in NSS + CVE-2017-5467: Memory corruption when drawing Skia content + CVE-2017-5430: Memory safety bugs fixed in Firefox 53, Firefox ESR 52.1, + Thunderbird 52.1 + CVE-2017-5429: Memory safety bugs fixed in Firefox 53, Firefox ESR 45.9, + Firefox ESR 52.1, and Thunderbird 52.1 + (Closes: #855344, #495372, #861480, #682208, #698244, #859909, #857593, + #837771) + * [de561ef] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Allow-to-override-ICU_DATA_FILE-from-the-environment.patch + - debian-hacks/Build-against-system-libjsoncpp.patch + - debian-hacks/Don-t-build-testing-suites-and-stuff.patch + - debian-hacks/Force-use-the-i686-rust-target.patch + - fixes/Bug-1308908-Compare-the-whole-accessible-name-when-checki.patch + (Closes: #826325) + - porting-sh4/Add-sh4-support-to-Thunderbird.patch + (Closes: #859508) + removed patches (obsoleted by upstream changes): + - debian-hacks/Don-t-build-example-component.patch + - debian-hacks/fix-identification-of-ObjdirMismatchException.patch + - fixes/Bug-1245076-Don-t-include-mozalloc.h-from-the-cstdlib-wra.patch + - fixes/Bug-1273020-Add-missing-null-checks-in-ApplicationAccessi.patch + - fixes/Bug-1277295-Remove-obsolete-reference-to-storage-service-.patch + - fixes/Bug-1340724-fix-SMTP-server-name-output-in-SMTP-logging.-.patch + - fixes/Bug-497488-Implement-verify-mode-in-the-subscribe-dialog-.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit-1.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit.patch + - porting-arm64/Bug-1091515-Don-t-set-64KB-page-size-on-aarch64.-r-glandi.patch + - porting-kfreebsd-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hurd.patch + - porting-kfreebsd-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + - porting-kfreebsd-hurd/correcting-file-inclusion-for-kfreebsd-and-hurd.patch + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + - porting-mips/libyuv_disable-mips-assembly-for-MIPS64.patch + - porting-powerpcspe/FTBFS-powerpcspe-disable-AltiVec-instructions.patch + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (unclear state, will be added later again) + - porting/Add-xptcall-support-for-SH4-processors.patch + (Closes: #859362) + - debian-hacks/Move-profile.patch + modified or adjusted patches: + - debian-hacks/changing-the-default-search-engine.patch + - debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + - icedove-l10n/disable-extension-update-extension-is-managed-by-apt.patch + --> icedove-l10n/thunderbird-l10n-disable-external-extension-update.patch + (renamed to and modified due new languages) + - icedove/fix-installdir.patch + --> debian-hacks/Thunderbird-fix-installdir-for-icons.patch + * [684ad58] d/source.filter: update due upstream changes + * [d005649] debian/control: modify various B-D + * [7a8a98d] debian/rules: add some extra C*FLAGS + Adding '-fno-lifetime-dse' to not enable dead store elimination of + objects within their lifetime, some parts of the source is relying + on the persistent values of such objects. + Some other distributions as Ubuntu, Fedora and Arch e.g. use this flag too + (at least with ESR52) to prevent possible segfaults. + * [56f8f4b] debian/rules: adding hack to preserve correct config.status + * [fb500a6] mozconfig.default: remove no longer existing options + * [c9a3e60] mozconfig.default: some minor adjustments to configure options + * [f584857] mozconfig.default: enable GTK3 theme explicit + (Closes: #857593) + * [3cbe1fb] debian/control: add packages for *-dsb language + * [8317735] debian/control: add packages for *-hsb language + * [39d90c1] debian/control: add packages for *-kab language + * [82b4f50] debian/control: add missing packages for *-ast language + * [0edde96] debian/rules: include also l10n folder with 3 characters + * [47f17a4] lintian-overrides: modify the list for the js files to ignore + * [8872d34] debian/copyright: update after upstream changes + * [6755547] mozconfig.default: use some internal libraries + Use libicu-dev, libnspr4-dev, libnss3-dev, libsqlite3-dev from + shipped source as Stretch versions not recent enough. + * [5b04b32] thunderbird.install: pick up icu*.dat if around + * [edf24d7] debian/control: mark thunderbird-dbg as Multi-Arch: same + * [5d5392b] apparmor/usr.bin.thunderbird: update for version 52 + (cherry-picked from upstream) + (Closes: #859179) + * [f49ad79] apparmor/usr.bin.thunderbird: grant access to commonly used + locations (cherry-picked from upstream) + * [510fd6f] debian/rules: install lightning-l10n files into correct place + * [d70ade4] lightning-l10n: adjust min/max version for ESR 52 cycle + With the new ESR version tweaking the extension version of l10n packages + for lightning > 52.0 and < 52.*. + * [c0dd18f] debian/rules: install icudt5*.dat file more flexible + * [b5136f7] autopkg: improve the output of idlTest.sh + * [7ac04f6] autopkg: add extra test icudatfileTest.sh + + [ Christoph Goehre ] + * [13f5178] lintian-overrides: we build against internal nspr and nss + * [56bbf23] rebuild patch queue from patch-queue branch + added patches: + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (Closes: #859151) + modified patches: + - porting-mk68/Add-m68k-support-to-Thunderbird.patch + -> porting-m68k/Add-m68k-support-to-Thunderbird.patch (renamed) + * [6a7ef60] tests/idlTest.sh: remove duplicated 'done' output + * [42bf8e1] debian/rules: remove duplicate .so files in thunderbird-dev + * [5dc08bc] tests/soSymlinkTest.sh: check for symlinked .so files + + -- Carsten Schoenert Sat, 03 Jun 2017 19:54:43 +0200 + +icedove (1:45.8.0-3) unstable; urgency=medium + + [ Carsten Schoenert ] + * [d923505] AppArmor: be more flexible on profile folders + (Closes: #858735, #858737) + * [1e04099] tb-wrapper: use readlink also on ${ID_PROFILE_FOLDER} + (Closes: #858771) + * [9f6b771] tb-wrapper: correct check for -dbg package (Closes: #858804) + * [8b5271a] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1273020-Add-missing-null-checks-in-ApplicationAccessi.patch + + -- Christoph Goehre Wed, 29 Mar 2017 19:28:32 -0400 + +icedove (1:45.8.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [c2a1d77] tb-helper: pass arguments correctly through tb call + (Closes: #855334) + * [5c49348] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1340724-fix-SMTP-server-name-output-in-SMTP-logging.patch + (Closes: #855470) + * [9d420c0] Revert "register MIME type application/octet-stream for + Thunderbird" (Closes: #857755) + * [c9960e5] tb-helper: pass arguments by using a array to TB call + + -- Christoph Goehre Tue, 14 Mar 2017 20:37:48 -0400 + +icedove (1:45.8.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3388899] New upstream version 45.8.0 + * [24d25e9] tb-helper*: fix up that silly comments behind the if statement + (Closes: #857029, #857032, #857098, #857112) + * [788b7fa] bash-completion: adding a completion script for /u/b/thunderbird + * [9ac9d07] rebuild patch queue from patch-queue branch + added patches: + - p-arm64/Bug-1091515-Don-t-set-64KB-page-size-on-aarch64.-r-glandi.patch + - p-arm64/Bug-1257055-Use-jit-arm64-Architecture-arm64.h-on-non-JIT.patch + * [ad0860b] copyright: small updates reflecting upstream changes + + [ Christoph Goehre ] + * [69577cf] lintian: replace hardlink in thunderbird-dev with symbolic link + + -- Christoph Goehre Thu, 09 Mar 2017 20:24:49 -0500 + +icedove (1:45.7.1-2) unstable; urgency=medium + + [ Christoph Goehre ] + * [5e2c618] crashreporter: build only on amd64, armel, armhf and i386 + * [36a922f] Apparmor: replace '·' with spaces (Closes: #855343) + * [bbbc917] rebuild patch queue from patch-queue branch + added patches: + - p-hppa/FTBFS-hppa-xpcshell-segfaulting-during-make-install.patch + * [8b5d601] icedove|thunderbird.desktop: update danish (da) translation + + [ Carsten Schoenert ] + * [f8debbd] debian/control: separate transitional mark by extra line + (Closes: #855806) + * [583c798] {tb,id}.maintscript: modify start-version (Closes: #854587) + * [94e557c] thunderbird: adding x11-utils to Depends (Closes: #854488) + * [dc878e7] thunderbird-wrapper.sh: fix command line transfer to TB + (Closes: #855334) + * [9734349] thunderbird helper: split helper function into extra file + (Closes: #855286) + * [3089a97] tb-helper*: wrapping X11 dialog calls + * [e0331e1] tb-helper*: rework option parsing for wrapper script + (Closes: #855872) + * [31d9899] thunderbird.postinst: try to remove empty profile folder + (Closes: #855228) + * [c9e5b70] tb-wrapper*: complete rework and moving over for symlinking + (Closes: #855265, #855391, #855501, #856490) + * [9ef920f] README.Debian: adopt content to current wrapper script behavior + * [4cf88e5] icedove|thunderbird.desktop: adopt binary call + * [101e0ad] tb-helper*: call subfunctions not within the case loop + * [c061107] register MIME type application/octet-stream for Thunderbird + + -- Christoph Goehre Mon, 06 Mar 2017 20:39:23 -0500 + +icedove (1:45.7.1-1) unstable; urgency=medium + + * Bye-bye Icedove (Closes: #749965, #776359, #816679, #363811) + + [ Carsten Schoenert ] + * [90c0d6f] New upstream version 45.7.1 + * [a6d21de] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-497488-Implement-verify-mode-in-the-subscribe-dialog-.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit-1.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit.patch + (Closes: #837177) + removed patches (fixed upstream): + - debian-hacks/icu.m4-adding-extra-bracket-to-not-confuse-grep.patch + * [8572e34] lintian: adding a semi automated lintian-override + * [aa2bda2] crashreporter: enable the reporter for thunderbird + * [b96ae57] move icedove.desktop into package icedove + (Closes: #850865, #851829) + * [304921f] debian/rules: set SHELL explicit to /bin/bash (Closes: #852867) + * [072b899] thunderbird: adding extra check while migration + * [284912d] debian/README.Debian: update after recent changes + * [6dc7e32] icedove-l10n-bn-bd: fix typo in Depends field (Closes: #854135) + * [c5d4bf5] {tb,id}.maintscript: modify start-version (Closes: #854587) + * [f3d64ae] thunderbird-wrapper.sh: adding extra information window + (Closes: #854488) + * [6b432c7] README.Debian: hint about issue in global configuration + + [ Douglas Bagnall ] + * [e2c8a23] Apparmor: allowing exo-open-ixr launcher (Closes: #853929) + + [ Christoph Goehre ] + * [ef36e0b] thunderbird-wrapper.sh: fix typos + * [f98d5d1] thunderbird-wrapper.sh: add small changes from Guido and Carsten + * [7dd6841] README.Debian: fix/correct spelling + * [e038694] debian/control: remove depends-on-essential-package 'sed' + + [ Jens Reyer ] + * [ea58e17] thunderbird-wrapper.sh: add extra function for migration + (Closes: #849592) + + -- Christoph Goehre Tue, 14 Feb 2017 18:46:23 -0500 + +icedove (1:45.6.0-3) experimental; urgency=medium + + [ Carsten Schoenert ] + * [78b3296] rebuild patch queue from patch-queue branch + added patch: + - debian-hacks/icu.m4-adding-extra-bracket-to-not-confuse-grep.patch + * [a272f85] thunderbird-wrapper.sh: also migrate mimeapps.list + (Closes: #850864) + * [3d4e303] icedove.desktop: don't use categories and mimetypes + (Closes: #850866) + * [db15d43] icedove: link icedove to thunderbird + * [59a9e05] debian/control: change Replaces and Breaks versions + + [ Christoph Goehre ] + * [55cce4a] thunderbird-wrapper.sh: remove 'set -e' + + -- Christoph Goehre Tue, 17 Jan 2017 18:26:06 -0500 + +icedove (1:45.6.0-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [26f8f2d] New upstream version 45.6.0 + * [15b7797] iceowl-l10n-*: rearrange Recommends field for various packages + (Closes: #824727, #824750, #824763, #824764, #824768, #824780) + * [3f75b56] debian/vendor.js: adjust to new version related wiki site + * [6bd7f89] d/c-id-l10n: adjusting download URL for stable versions + * [f15d1a2] icedove-l10n-all: change Section into metapackages + (Closes: #824785) + * [25c3ba1] debian/README.source: info about import of multitarballs + * [3ebcf59] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [3e57d5e] debian/control: Icedove, adding dependency on libatk-adaptor + * [e19c59d] debian/control: rework Recommends for icedove-l10n-* + * [4741d80] debian/control: small fixup Recommends on iceowl-l10n-* + * [f9f5193] debian/control: sort iceowl-l10n-* alphabetical + * [5220187] de-branding: move iceowl* back to lightning* + * [6e28ce5] de-branding: remove Icedove naming from icedove-l10n* + * [3dc3b4b] de-branding: remove Icedove branding in the main binary + * [8b715cf] de-branding: remove hard name branding in addon managger + * [9f609fa] de-branding: adopting dh files for icedove package + * [caba322] de-branding: adopting dh files for icedove-dev package + * [6538f66] de-branding: change debian/rules to reflect appname change + * [871588d] de-branding: adopting dh files for iceowl-extension package + * [a0b20e7] debian/tests/*: adopt change of the binary icedove + * [29025cc] de-branding: adjust icedove-l10n installation folder + * [2b8dd99] de-branding: adjust iceowl-l10n installation folder + * [1f3043c] de-branding: remove the Debian visual branding + * [272e420] de-branding: removing icedove branding files and folder + * [093bc58] de-branding: revitalize *.desktop file with Thunderbird + * [4a35d9d] de-branding: move iceowl-l10n-* into lightning-l10n-* + * [68d8d79] de-branding: adding transitional iceowl-l10n packages + * [4b2febd] de-branding: adding 'Breaks', 'Replaces', 'Provides' to + lightning-l10n-* + * [9cdb427] de-branding: rework d/r to reflect changes for lightning-l10n + * [ec3b427] de-branding: move icedove-l10n-* into thunderbird-l10n-* + * [387bfa2] de-branding: adding transitional icedove-l10n packages + * [f3cfecb] de-branding: adding 'Breaks', 'Replaces', 'Provides' to + thunderbird-l10n-* + * [03b222e] de-branding: rework d/r to reflect changes for thunderbird-l10n + * [0c9a6ab] de-branding: (re)adding a wrapper script for TB starting + * [f9c8aef] de-branding: move icedove-dev to thunderbird-dev + * [a4313e6] de-branding: adding transitional icedove-dev package + * [0508866] de-branding: rework d/r to reflect changes for thunderbird-dev + * [048b29f] de-branding: move icedove-dbg to thunderbird-dbg + * [da01077] de-branding: adding transitional icedove-dbg package + * [a371079] de-branding: rework d/r to reflect changes for thunderbird-dbg + * [b34b8f8] de-branding: move iceowl-extension to lightning + * [fa8f9b3] de-branding: adding transitional iceowl-extension package + * [848f178] de-branding: rework d/r to reflect changes for lightning + * [a708c35] de-branding: move icedove to thunderbird + * [cccef90] de-branding: moving icedove dh files into thunderbird + * [8c2b27d] de-branding: rework icedove.1 into thunderbird.1 + * [19406fe] de-branding: transition of mozconfig.* + * [88ed684] de-branding: rework d/r to reflect changes for thunderbird + * [c8011d3] de-branding: adding transitional icedove package + * [5e399aa] de-branding: adjusting package calendar-google-provider + * [a03329c] debian/tests/help.sh: use absolute path for binary call + * [10adb34] move old icedove graphic stuff into own folder + * [abc6c8c] create various thunderbird png graphics from SVG file + * [a2067ae] debian/copyright: update copyright information + * [a9c6f9f] de-branding: add own created thunderbird icons to install + * [1d8b524] mozconfig.default: enable the official brandind + * [9f3a673] debian/control: adding dh-exec to the Build-Depends + * [cddbc63] move Thunderbird install files into thunderbird.install + * [5037bb5] de-branding: transition of apparmor profile for TB + * [14f094d] de-branding: remove extra URL for What's New inside + * [c2a06db] manpage thunderbird; adjust and correct manpage entries + * [8fa3365] debian/control: adding package dpkg to Build-Depends + * [ba84ede] thunderbird: switching dpkg-maintscript-helper to *.maintscript + * [d0e675b] debian/thunderbird.postinst: adding some moving mechanism + * [cbae415] de-branding: let helper scripts reflect thunderbird change + * [da402a4] thunderbird-wrapper.sh: adding fixing inside mimeTypes.rdf + (Closes: #837516) + * [030d49e] de-branding: adding some hints about the debranding + * [662f7af] debian/README.source: adjusting hints due name changes + * [8fbedc1] debian/thunderbird.install: install additional icedove.desktop + * [9089d9f] debian/*lintian-overrides: adopt name changes + * [b9b7665] debian/rules: use the old profile folder for wheezy and jessie + * [f9c137e] fix *.desktop files for proper GNOME app mechanism + (Closes: #817973, #832302) + * [1c85ff7] debian/rules: chmod certain *.py tb-devel files + * [356694a] thunderbird.links: linking the default TB icon to u/s/p + + [ Guido Günther ] + * [24bbee9] Wrap and sort control information (Closes: #825806) + * [fcfe4ac] Add minimalistic autopkgtest + * [f7a32e8] Add autopkgtest to test header and typelib generation + * [189d835] Add autopkgtest to smoke test xpcshell + + [ Christoph Goehre ] + * [354f836] turn the reduce of memory usage of the linker on again + * [5e48e17] don't build dbgsym packages on unreleased builds + * [09679eb] rebuild patch queue from patch-queue branch (Closes: #808183) + * [ec3a50b] debian/NEWS: change urgency to medium + + -- Christoph Goehre Sat, 31 Dec 2016 10:26:36 +0100 + +icedove (1:45.5.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [efe836f] New upstream version 45.5.1 + * [48999ac] rebuild patch queue from patch-queue branch + + -- Carsten Schoenert Wed, 30 Nov 2016 18:27:57 +0100 + +icedove (1:45.4.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [a159bc9] autopkgtests: let xfvb-run pick the port to avoid clashes with + already running servers + * [5384838] Snapshot 1:45.3.0-1~1.gbpa159bc + * [8d3ac18] autopkgtest: Dont print on stderr + * [8afc7be] Put test deps on a simgle line + + [ Carsten Schoenert ] + * [99e9c40] New upstream version 45.4.0 + (Closes: #835866, #836798, #837107) + * [6195d7b] debian/README.source: update instructions for importing + * [5150624] debian/icedove.js: disabling baselinejit functionality + (Closes: #837930) + + -- Carsten Schoenert Mon, 03 Oct 2016 12:18:09 +0200 + +icedove (1:45.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3cc29ee] Imported Upstream version 45.3.0 + * [ed8cf89] Imported icedove-l10n Upstream version 45.3.0 + * [bc20676] Imported iceowl-l10n Upstream version 45.3.0 + * [54bd9c4] debian/README.source: fix up some hints + * [756ec86] mozconfig.default: enable build of PIE binaries + * [1cef6f8] rebuild patch queue from patch-queue branch + added patch: + - porting-mips/libyuv_disable-mips-assembly-for-MIPS64.patch + (Closes: #836400) + * [7a1ec74] AppArmor: grant access to local mailboxes and enigmail(2) + (Closes: #837656) + + -- Carsten Schoenert Wed, 28 Sep 2016 22:52:03 +0200 + +icedove (1:45.2.0-4) unstable; urgency=medium + + [ Carsten Schoenert ] + * [cc8cd76] mozconfig.default: relaxe optimization on arm{64,el,hf} to -O1 + + -- Christoph Goehre Thu, 18 Aug 2016 10:45:17 -0400 + +icedove (1:45.2.0-3) unstable; urgency=medium + + [ Guido Günther ] + * [9a8f4e1] tests: Fix typo + + [ Carsten Schoenert ] + * [53aab10] AppArmor: allow self execution for -ProfileManager + (Closes: #833742) + * [a459d6a] debian/rules: adding one more CFLAGS/CXXFLAGS compiler flag + (Closes: #833864, #833532, #833591, #833635, #833698) + * [e32c460] AppArmor: grant access to local mailboxes and enigmail + (Closes: #833184) + * [f34e41e] debian/rules: fix typo CXLAGS -> CFLAGS + + -- Christoph Goehre Fri, 12 Aug 2016 12:00:44 -0400 + +icedove (1:45.2.0-2) unstable; urgency=medium + + [ Christoph Goehre ] + * [8b4f306] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hur.patch + (Closes: #808183) + + [ Carsten Schoenert ] + * [08e20a0] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1277295-Remove-obsolete-reference-to-storage-service-.patch + (Closes: #827592) + - fixes/Bug-1245076-Don-t-include-mozalloc.h-from-the-cstdlib-wra.patch + (Closes: #831192) + * [1ea97f1] debian/icedove.js: disable Icedove startup check + (Closes: #817973) + * [83bdcdf] debian/rules: adding additional CFLAGS and CXXFLAGS + * [7dc0588] debian/control: addjust breaks for xul-ext-foxyproxy-standard + (Closes: #825749) + * [50a0f1e] autopkg: fixup small type within test call + + [ Ulrike Uhlig ] + * [b24bbaa] Add rebranded apparmor profile from upstream (Closes: #829731) + * [0a28f91] apparmor/usr.bin.icedove: refresh Icedove AppArmor profile + + [ Guido Günther ] + * [6fe4897] Fix apparmor profile installation + + -- Christoph Goehre Tue, 26 Jul 2016 13:25:21 -0400 + +icedove (1:45.2.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [f777843] Wrap and sort control information + via 'wrap-and-sort -ast' to simplify backporting (Closes: #825806) + * [457dffe] Register components with gbp + * [8e73822] Rediff patches + + [ Carsten Schoenert ] + * [789ed6f] Imported Upstream version 45.1.1 + * [8b8bd3c] Imported icedove-l10n Upstream version 45.1.1 + * [23b2984] Imported iceowl-l10n Upstream version 45.1.1 + * [411b27d] Imported Upstream version 45.2.0 + * [975287a] Imported icedove-l10n Upstream version 45.2.0 + * [09b6652] Imported iceowl-l10n Upstream version 45.2.0 + * [2b99997] icedove-l10n-all: change Section into metapackages. + As Jonas Smedegaard pointed out, the icedove-l10n-all package is a + metapackage and localization. + (Closes: #824785) + * [a7eec24] debian/README.source: info about import of multitarballs. + As the VCS is using git-buildpackage for package maintenace adding some + hints on how to handle the impoert of the used mutitarballs since + version 45.0. + * [73e8b1a] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [f118470] debian/control: Icedove, adding dependency on libatk-adaptor. + After the adding of some first small autopkg test it turns out that we + miss a dependency on libatk-adaptor. + * [e6e95c9] debian/control: rework Recommends for icedove-l10n-* + As addition to 711468b933f280fe9d6ed78bb1d7d763dede9ea7 also rework the + various Recommends for the icedove-l10n packages. + * [1275b3d] debian/control: small fixup Recommends on iceowl-l10n-* + Fix small typos for iceowl-l10n-{pt-pt,sl} + * [c4c9a02] debian/control: sort iceowl-l10n-* alphabetical + + -- Guido Günther Fri, 08 Jul 2016 15:55:46 +0200 + +icedove (1:45.2~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [68883af] rebuild patch queue from patch-queue branch + added patches: + - porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + * [ee509d2] debian/mozconfig.default: switching back to gtk2 as default + (Closes: #821744) + * [f72fe06] adding helper script create-iceowl-l10n-tarball.sh + * [28fba93] debian/README.source: adding additional info for iceowl-l10n + * [826af5b] adding iceowl-l10n related patches to the patch queue + * [1aa6f37] debian/iceowl-*.in: adding needed base files + * [a5946b4] debian/rules: adding iceowl-l10n related rules + * [b1da616] debian/control: adding the current iceowl-l10n-* packages + * [b359c95] debian/source.filter: some adjustments to the filter + * [e45ab44] debian/README.source: use recent version and reformating + * [50b3830] debian/control: increase Standards-Version to 3.9.8 + * [3a767b8] debian/rules: remove no longer needed LDFLAGS + * [29a7739] Imported Upstream version 45.2~b1 + * [15b7797] iceowl-l10n-*: rearrange Recommends field for various packages + (Closes: #824727, #824750, #824763, #824764, #824768, #824780) + * [3f75b56] debian/vendor.js: adjust to new version related wiki site + * [6bd7f89] d/c-id-l10n: adjusting download URL for stable versions + * [f15d1a2] icedove-l10n-all: change Section into metapackages + (Closes: #824785) + * [25c3ba1] debian/README.source: info about import of multitarballs + * [3ebcf59] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [3e57d5e] debian/control: Icedove, adding dependency on libatk-adaptor + * [e19c59d] debian/control: rework Recommends for icedove-l10n-* + * [4741d80] debian/control: small fixup Recommends on iceowl-l10n-* + * [f9f5193] debian/control: sort iceowl-l10n-* alphabetical + + [ Christoph Goehre ] + * [ce58560] debian/rules: add option to dh_auto_clean + * [8cfbeca] debian/rules: export necessary DEB_ vars into environment + (Closes: #819020) + * [7512da8] debian/rules: ignore build folder and run 'build' target instead + (Closes: #819020) + * [354f836] turn the reduce of memory usage of the linker on again + * [5e48e17] don't build dbgsym packages on unreleased builds + * [09679eb] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hu.patch + (Closes: #808183) + + [ Guido Günther ] + * [24bbee9] Wrap and sort control information (Closes: #825806) + * [fcfe4ac] Add minimalistic autopkgtest + * [f7a32e8] Add autopkgtest to test header and typelib generation + * [189d835] Add autopkgtest to smoke test xpcshell + + -- Christoph Goehre Wed, 01 Jun 2016 17:56:29 -0400 + +icedove (1:45.0~b4-2) experimental; urgency=medium + + * [fa7bc47] debian/control: fix FTBFS by moving Build-Depends-Indep to + Build-Depends + + -- Christoph Goehre Sun, 10 Apr 2016 15:24:39 -0400 + +icedove (1:45.0~b4-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [3bf50c7] Imported Upstream version 45.0~b4 + * [11744a7] debian/source.filter: fixup for previous change + * [0bd3753] debian/gbp.conf: adding default filter out pattern + * [a9f6cfa] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + - fixes/Bug-1178266-Link-against-libatomic-when-necessary.patch + - p-arm64/FTBFS-arm64-Adding-configure-option-for-aarch64-platform.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-1-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-2-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-3-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-4-4.patch + modified patches: + - p-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [9dcb46e] debian/control: increase B-D on libnspr-dev + * [b31fba5] debian/control: increase Standards-Version to 3.9.7 + * [623250d] Icedove Branding: adopt usptream changes to branding + * [2fa9b24] debian/copyright: update copyright information + * [c5dd11d] debian/copyright: include the license text for MPL-1.0 + * [3a90ecd] debian/copyright: include the license text for MPL-1.1 + * [7291650] debian/copyright: include the license text for MPL-2.0 + * [0ebdd3f] debian/copyright: include the license text for libpng + * [9ee79fa] d/icedove.install: remove no longer existing parts + * [880c9e9] debian/rules: remove obsolet dpkg-shlibdeps call + * [e4fb8a2] adding helper script create-icedove-l10n-tarball.sh + * [8826951] debian/README.source: adding hint for creating l10n tarball + * [08f9071] debian/control: adding the current icedove-l10n-* packages + (Closes: #680488) + * [d839f37] debian/rules: adding icedove.l10n install to targets + * [5b0df21] debian/gbp.conf: use a Tuple for selecting multiple files + * [e32519f] debian/control: increase B-D on libnss-dev + * [2200691] debian/control: increase B-D on libnspr4-dev + * [0f5660e] debian/control: increase increase B-D on libnss3-dev + * [5fd8af8] mozconfig.default: adding new configure option + * [e288c6e] debian/control: adding a B-D on libpng-dev + + [ Christoph Goehre ] + * [f8c7ca5] debian/control: make depends between icedove-l10n and icedove + dynamic + * [ac760d7] debian/control: add section localization to all l10n packages + * [72ef6c7] debian/NEWS: rename to icedove.NEWS to ship only in icedove core + package + * add epoch in version number to update l10n packages smoothly + + -- Christoph Goehre Sat, 09 Apr 2016 18:56:59 -0400 + +icedove (44.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [a24f78b] Imported Upstream version 44.0~b1 + * [7f52453] rebuild patch queue from patch-queue branch + removed patches: + - d-hacks/Add-unminified-jquery-and-jquery-ui-files.patch + - d-hacks/Allow-unsigned-addons-in-usr-lib-share-mozilla-extensions.patch + - d-hacks/creating-a-dummy-.deps-directory-to-get-make-happy.patch + added patches: + - p-arm64/FTBFS-arm64-Adding-configure-option-for-aarch64-platform.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-1-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-2-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-3-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-4-4.patch + modified patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + * [ecf1110] debian/watch: adjust to new CDN structure + * [dd5efe8] debian/control: increase Build-Depends on libsqlite3-dev + * [57165b5] debian/control: switch URI for the Vcs fields to https + * [c9ded96] debian/source.filter: adding more filters on testings js files + * [31ce42f] debian/copyright: update due upstream/import changes + + -- Christoph Goehre Sat, 13 Feb 2016 19:08:55 -0500 + +icedove (43.0~b1-1) experimental; urgency=medium + + [ Christoph Goehre ] + * [ef5b1ef] debian/rules: split override_dh_install into arch and indep + section (Closes: #806047) + * [02d5d7c] debian/source.filter: remove filter for searchplugins + + [ Guido Günther ] + * [2008a71] Clarify relation between icedove and the calendar extensions + (Closes: #809017) + + [ Carsten Schoenert ] + * [11ffac0] debian/source.filter: modifying file list to ignore + * [926912b] Imported Upstream version 43.0~b1 + * [32cd8c0] rebuild patch queue from patch-queue branch + added patches: + - d-hacks/Allow-unsigned-addons-in-usr-lib-share-mozilla-extensions.patch + removed patches (fixed upstream): + - reproducible/Generate-sorted-libical-header-list.patch + * [a1637e4] debian/control: increase B-D on libnspr-dev and libnss3-dev + * [f9937c1] debian/source.filter: sort entries alphabetical + * [326f74d] debian/source.filter: adding new files to filter out + * [9b9d9b9] debian/copyright: update due upstream changes + * [69664c7] d/icedove.install: searchplugins isn't alive anymore + + -- Christoph Goehre Tue, 19 Jan 2016 11:41:50 -0500 + +icedove (42.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [8842d85] Imported Upstream version 42.0~b2 + * [6d14aca] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1178266-Link-against-libatomic-when-necessary.patch + * [320c43d] add myself to the uploaders + * [797a290] lintian: remove icedove.menu file due CTTE#741573 + + [ Guido Günther ] + * [caca7c2] Add unminified jquery and jquery-ui files (Closes: #802281) + + -- Christoph Goehre Sun, 08 Nov 2015 15:30:56 -0500 + +icedove (42.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [c599b6b] Imported Upstream version 42.0~b1 + * [41285cb] debian/copyright: fixup's and update + * [6b270be] debian/control: increase various build depends + * [be75969] adopting needed changes for GTK3 into the Debian branding + * [245161e] fixup branding about.png file + + -- Christoph Goehre Sat, 10 Oct 2015 21:26:24 -0400 + +icedove (41.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b1d982c] Imported Upstream version 41.0~b2 + * [8389b9b] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + modified patches: + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + dropped patches (fixed upstream): + - fixes/Bug-1168231-Fixup-to-keep-file-type.patch + - fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + - reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + - reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patch + * [9ebf7b9] debian/source.filter: modifying file list to ignore + * [b25d990] debian/copyright: fixup's and update + + [ Christoph Goehre ] + * [8ebffb0] relax optimize to -O1 on s390x (Closes: #797551) + * [dea1627] debian/rules: Disable jit on mips (Closes: #797548) + + -- Christoph Goehre Fri, 25 Sep 2015 18:43:44 -0400 + +icedove (40.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [9d358dc] debian/source.filter: adjust new files + * [328cdc7] Imported Upstream version 40.0~b1 + * [8813d89] debian/rules: setting MOZ_BUILD_DATE explicitly. + This patch is based on work from Mike Hommey within the Iceweasel + package to enable reproducible builds. It defines the MOZ_BUILD_DATE + with a pre defined timezone. + * [8dd5b9f] debian/rules: add switch to skip icedove-dbg build to + speed up the build. + * [a6beec7] debian/control: Let icedove recommendiceowl-extension + * [691dfe9] add release related information + * [bdfdfd8] debian/vendor.js: adjusting WhatNew link to more dedicated URL + * [5ba6ec7] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/changing-the-default-search-engine.patch + fixes/Bug-1168231-Fixup-to-keep-file-type.patch + fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patc + reproducible/Generate-sorted-libical-header-list + modified patches: + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch + porting-kfreebsd-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + porting/Disable-optimization-on-alpha-for-the-url-classifier.patch + deleted patches: + debian-hacks/pass-OS_LDFLAGS-to-all-ldap-libraries.patch + debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + debian/patches/fixes/Link-libldap-against-libpthread.patch + debian/patches/icedove/no-dynamic-nss-softokn.patch + debian/patches/porting/Remove-duplicate-SkDiscardableMemory_none.cpp-from-g.patch + * [59046ae,12d4f4b] debian/copyright: update due upstream changes + * [7c1f002] debian/iceowl-extension.lintian-overrides: remove file, no longer needed + * [23eed8c] debian/source.lintian-overrides: adding new entries. + Lintian is detecting the braces within the folder names incorrectly as + brace expansion. + * [2f95cd3] add changes due ldap restructure. + + [ Christoph Goehre ] + * [ff66528] lintian: fix spelling error in debian/README.Debian + + -- Guido Guenther Wed, 19 Aug 2015 09:39:23 +0200 + +icedove (38.7.2-1) unstable; urgency=medium + + * [397cd7a] Imported Upstream version 38.7.2 + + -- Christoph Goehre Wed, 13 Apr 2016 12:05:05 -0400 + +icedove (38.7.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [cb9c003] Imported Upstream version 38.7.0 + * [7273cb9] bump up standards version to 3.9.7 (no changes needed) + + [ Carsten Schoenert ] + * [0341a8c] debian/control: switch URI for the Vcs fields to https + + -- Christoph Goehre Wed, 16 Mar 2016 13:22:57 +0100 + +icedove (38.6.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [195730d] Clarify relation between icedove and the calendar extensions + (Closes: #809017) + + [ Christoph Goehre ] + * [988ce5b] Imported Upstream version 38.6.0 + * [6763f6f] debian/source.filter: remove evil-licensed jshint.js + (Closes: #813053) + + -- Christoph Goehre Sun, 14 Feb 2016 16:08:13 -0500 + +icedove (38.5.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [6d45b0b] Imported Upstream version 38.5.0 + * [316798f] debian/rules: split override_dh_install into arch and indep + section (Closes: #806047) + + [ Carsten Schoenert ] + * [5b3cb7a] add myself to the uploaders + + -- Christoph Goehre Thu, 24 Dec 2015 22:36:37 -0500 + +icedove (38.4.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [754392e] Imported Upstream version 38.4.0 + * [ef4b733] debian/watch: adjust download url + + [ Carsten Schoenert ] + * [f3f5455] lintian: remove icedove.menu file due CTTE#741573 + + -- Christoph Goehre Fri, 27 Nov 2015 12:54:27 -0500 + +icedove (38.3.0-2) unstable; urgency=medium + + * [c988747] Add unminified jquery and jquery-ui files with the exact + version as used by upstream thunderbird. + We don't want to use the minified versions mozilla ships and can't use + what is currently packaged in Jessie or Stretch since these are too + recent. + (Closes: #802281) + + -- Guido Günther Sun, 01 Nov 2015 18:06:33 +0100 + +icedove (38.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [0f8b6a4] Imported Upstream version 38.3.0 + * [566273a] debian/copyright: fixup's and update + + -- Christoph Goehre Sat, 10 Oct 2015 13:21:05 -0400 + +icedove (38.2.0-2) unstable; urgency=medium + + * [8bcb08b] relax optimize to -O1 on s390x (Closes: #797551) + * [6aa0915] debian/rules: Disable jit on mips (Closes: #797548) + + -- Christoph Goehre Thu, 24 Sep 2015 19:09:54 -0400 + +icedove (38.2.0-1) unstable; urgency=medium + + * [d46d5f6] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + + -- Christoph Goehre Mon, 21 Sep 2015 19:42:03 -0400 + +icedove (38.2.0-1~stretch) stretch; urgency=medium + + [ Carsten Schoenert ] + * [05b245f] Imported Upstream version 38.2.0 (Closes: #796323) + - MFSA 2015-59 aka CVE-2015-2724, CVE-2015-2725, CVE-2015-2726 + - MFSA 2015-63 aka CVE-2015-2731 + - MFSA 2015-66 aka CVE-2015-2734, CVE-2015-2735, CVE-2015-2736, + CVE-2015-2737, CVE-2015-2738, CVE-2015-2739, CVE-2015-2740 + - MFSA 2015-70 aka CVE-2015-4000 + - MFSA 2015-71 aka CVE-2015-2721 + - MFSA 2015-65 aka CVE-2015-2741 + - MFSA 2015-79 aka CVE-2015-4474 + * [43c8195] rebuild patch queue from patch-queue branch + * [c75bdad] debian/control: increase B-D on libnss3-dev + * [942bcbe] debian/iceowl-extension.lintian-overrides: remove file + * [7131e4d] debian/source.lintian-overrides: adding new entries + * [8882360] mozconfig.default: don't use icu from system + + -- Carsten Schoenert Fri, 21 Aug 2015 12:29:42 +0200 + +icedove (38.1.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3d27760] Imported Upstream version 38.1.0 (Closes: #790651) + * [2cb6cd7] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1165654-Cleanup-how-libjpeg-turbo-assembly-build.patch + - reproducible/Generate-sorted-libical-header-list (Closes: #794456) + + -- Christoph Goehre Tue, 04 Aug 2015 20:20:53 -0400 + +icedove (38.0.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [5acef6a] debian/gbp.conf: adopt new upstream branch + * [6f88792] Imported Upstream version 38.0.1 (Closes: #358680, #472601, + #634316, #691176, #751786, #777908) + * [18bba9d] debian/gbp.conf: respect new git-buildpackage behaviour + * [26bbdac] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/changing-the-default-search-engine.patch (Closes: #780595) + - fixes/Bug-1168231-Fixup-to-keep-file-type.patch + - fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + - reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + - reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patc + deleted patches: + - debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + * [71938b9] debian/rules: setting MOZ_BUILD_DATE explicitly + * [e50d708] debian/copyright: more minor updates to the copyright file + * [b232895] debian/rules: adding switch for no icedove-dbg build + * [bcc15aa] debian/control: icedove is now recommending iceowl-extension + * [564a19e] adding release related information + * [2ec0053] debian/vendor.js: adjusting WhatNew link to more dedicated URL + + [ Christoph Goehre ] + * [a9c25b6] lintian: fix spelling error in debian/README.Debian + * [2cc2c07] debian/rules: fix icedove-dbg build switch + + -- Christoph Goehre Mon, 27 Jul 2015 17:46:40 -0400 + +icedove (38.0~b5-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [7e3cab4] Imported Upstream version 38.0~b5 + * [3edbafc] Revert "debian/control: remove build-dep on libnotify-dev" + * [5e69bab] debian/control: increase b-d versions + * [6e6ae36] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + obsolete patches (fixed in Debian): + - adopting-SQLITE3-version.patch + * [ac7b760] mozconfig.default: adding some explicit configure options + * [81fd6e6] complete rewrite of copyright information + * [327dd45] switching to libgstreamer1.0* + + [ Christoph Goehre ] + * [9877ea3] lintian: add override for libpng + + -- Christoph Goehre Fri, 22 May 2015 20:42:19 -0400 + +icedove (38.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b08d966] debian/source.filter: modifying file list to ignore + * [88fd018] Imported Upstream version 38.0~b2 + * [e9da8f8] icedove branding: adopt upstream changes + * [3610daa] debian/control: increase b-d versions + * [950fae7] rebuild patch queue from patch-queue branch + modified patches: + - system-libs/Allow-to-build-against-system-libffi.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + obsolete patches (fixed upstream): + - porting/Reintroduce-pixman-code-path-removed-in-bug-1097776-.patch + * [1820d7c] debian/control: adding xul-ext-compactheader to Breaks field + + [ Dominik George ] + * [4181126] debian/control: Upgrade Breaks relation to enigmail + (Closes: #782686) + + -- Christoph Goehre Tue, 28 Apr 2015 18:19:00 -0400 + +icedove (36.0~b1-2) experimental; urgency=medium + + * [26c0027] rebuild patch queue from patch-queue branch + added patches: + - porting/Reintroduce-pixman-code-path-removed-in-bug-1097776-.patch + - porting/Remove-duplicate-SkDiscardableMemory_none.cpp-from-g.patch + - porting/ppc-fix-divide-page-size-in-jemalloc.patch (Closes: #780404) + + -- Christoph Goehre Sat, 28 Mar 2015 15:35:58 -0400 + +icedove (36.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [68112a3] Imported Upstream version 36.0~b1 + * [3120361] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - debian-hacks/fixing-various-FTBFS-due-different-datatype-char-beh.patch + - porting-arm/FTBFS-armhf-fixing-ARM-CPU-detection.patch + modified patches: + - debian-hacks/Strip-version-number.patch + - p-kfree-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - p-kfree-hurd/correcting-file-inclusion-for-kfreebsd.patch + - p-kfree-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [ee185a2] d/icedove.install: mozilla-xremote-client was removed + * [64adc44] debian/source.filter: modifying file list to ignore + * [dbdd152] debian/control: increase package versions + * [fb3307c] lintian: adding one more source override + * [2a07495] lintian: adding new override for the icedove package + * [38c21ad] debian/README.Debian: adding note around HTTPS Everythere + (Closes: #774790) + + [ Christoph Goehre ] + * [3dce89c] debian/icedove.desktop: correct StartupWMClass to 'Icedove' + (Closes: #773876) + * [deb3f58] debian/icedove.desktop: add MimeType text/calendar + (Closes: #762190) + * [4dd96fe] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + - p-powerpcspe/FTBFS-powerpcspe-disable-AltiVec-instructions.patch + (Closes: #772933) + modified patches: + - p-kfree-hurd/FTBFS-hurd-adding-GNU-Hurd-to-the-list-of-OS-systems.patch + - p-kfree-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - p-kfree-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - p-kfree-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [373ed05] add missing epoch in libnss3-dev build depends + + -- Christoph Goehre Wed, 11 Mar 2015 19:19:28 -0400 + +icedove (34.0~b1-2) experimental; urgency=low + + [ Carsten Schoenert ] + * [7a4edc4] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/fixing-various-FTBFS-due-different-datatype-char-beh.patch + - porting-arm/FTBFS-armhf-fixing-ARM-CPU-detection.patch + + -- Christoph Goehre Mon, 24 Nov 2014 18:56:21 -0500 + +icedove (34.0~b1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [1be8ab1] debian/source.filter: more files to ignore + * [66e6488] debian/README.source: adjust description for beta versions + * [e63d375] Imported Upstream version 34.0~b1 (Closes: #770180) + * [1cb54d2] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - porting-armel/disable-some-libopus-feature-for-ARCH-ARMv6.patch + * [ad29bb1] debian/rules: be more flexible on *.xpi files + * [b055e78] debian/NEWS: fixing default SSL/TLS behavior description + * [d64a847] debian/NEWS: adding notes around new security changes + + -- Christoph Goehre Wed, 19 Nov 2014 19:15:46 -0500 + +icedove (33.0~b1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [5029c8b] debian/source.filter: more files to ignore + * [d4b03d9] README.source: let's use xz while creating the orig.tar.xz + * [ebd442f] debian/gbp.conf: some instructions for git-dch + * [cc594ea] Imported Upstream version 33.0~b1 + * [23b57cf] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/fix-identification-of-ObjdirMismatchException.patch + - debian-hacks/pass-OS_LDFLAGS-to-all-ldap-libraries.patch + modified patches: + - debian-hacks/Strip-version-number.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - obsolete patches (fixed upstream): + - fixes/Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + - porting-alpha/fix-FTBFS-on-alpha.patch + * [a5a2a1b] adding additional config options for hppa and ppc64 + Both platforms failing on running xpcshell. + + [ Christoph Goehre ] + * [5a0ba43] linitan: bump up standards version to 3.9.6 + * [aaca6a7] debian/NEWS: adding note around increased default TLS version 1.2 + (Closes: #761245) + + -- Christoph Goehre Sat, 25 Oct 2014 12:47:37 -0400 + +icedove (32.0~b1-1) experimental; urgency=low + + [ Christoph Goehre ] + * [65ad797] icedove.postinst: remove obsolete symlink handling + + [ Carsten Schoenert ] + * [baef95a] debian/gbp.conf: adopting experimental branch + * [8384eee] Imported Upstream version 32.0~b1 + * [75145f3] rebuild patch queue from patch-queue branch + modified patches: + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - debian-hacks/remove-non-free-W3C-icon-valid.png.patch + obsolete patches (fixed upstream): + - porting-armel/fix-skia-for-ARMv4.patch + + [ Christoph Goehre ] + * [51c3cee] cleanup branding patch + + -- Christoph Goehre Thu, 28 Aug 2014 15:52:51 -0700 + +icedove (31.0-2) unstable; urgency=low + + [ Carsten Schoenert ] + * [d2bc0ef] armel: correcting #if statement for skia fix + * [959b801] adding GNU/Hurd to gyp.mozbuild + * [215bc7d] kfreebsd*: adding CrossProcessMutex_posix.cpp to list + * [892c39c] d/icedove.links: remove unneeded link to /u/s/i/e + (Closes: #638489) + * [928158c] debian/source.filter: more files to ignore + * [b81c238] fixing lintian warning 'unused-override' + * [7bc2568] fixing lintian warning 'jar-not-in-usr-share' + * [cd0d289] fixing lintian warning 'image-file-in-usr-lib' + * [045a960] fixing lintian error 'source-is-missing' + * [1fe016a] correcting FTBFS patch for alpha + + [ Christoph Goehre ] + * [c827d81] iceowl-extension: replace skin and icon dir with symlink + + -- Christoph Goehre Sat, 23 Aug 2014 18:42:23 -0700 + +icedove (31.0-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [b7cdeb4] Imported Upstream version 31.0 (Closes: #756769) + * [1f2ff0b] debian/rules: fixing file permissions in iceowl-extension + * [c8d2036] adding fix for skia on armel + * [77093e2] fixing FTBFS on armel (Closes: #754633) + * [a458959] debian/control: increase b-d on libsqlite-dev + * [a98ebca] fix runtime error on alpha while jemalloc run + * [6f6b576] disable optimization on alpha while linking + + -- Christoph Goehre Mon, 04 Aug 2014 10:23:09 -0400 + +icedove (31.0~b2-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [76059a9] debian/source.filter: more files to ignore + * [5067b0e] Imported Upstream version 31.0~b2 (Closes: #754464) + * [e31ac79] debian/control: remove build-dep on libnotify-dev + * [35324a5] debian/control: increase build-depends on libnss3-dev to 3.16.2~ + + -- Christoph Goehre Fri, 18 Jul 2014 21:47:06 +0200 + +icedove (31.0~b1-2) unstable; urgency=low + + * [7ba4d01] lintian: add override for embedded srtp library + + -- Christoph Goehre Sun, 22 Jun 2014 18:18:04 -0400 + +icedove (31.0~b1-1) unstable; urgency=low + + * [02dc94c] remove example file, which cause git-archive to change the + source tree + * [ba233b1] Imported Upstream version 31.0~b1 + * [4c2380f] rebuild patch queue from patch-queue branch + modified patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-.patch + obsolete patches (fixed upstream): + - fixes/unbreak-with-system-pixman-in-mailnews.patch + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + + -- Christoph Goehre Sun, 22 Jun 2014 11:50:07 -0400 + +icedove (30.0~b1-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [b3eadf1] debian/source.filter: more files to ignore + * [fb71012] debian/control: bumping build-depends for debhelper + * [dc4ad0c] debian/control: add libpulse-dev build dependency + * [b8d3ee7] debian/control: bumping some version of build dependencies + * [3443df9] debian/icedove-dev.install: adopt upstream changes + * [d0f9d0e] icedove.lintian-overrides: adding libtheora + * [982c8a6] debian/rules: adding removing for temporary files + + [ Christoph Goehre ] + * [f6292d5] Imported Upstream version 30.0~b1 (Closes: #743421) + * [dacd658] rebuild patch queue from patch-queue branch + modified patches: + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + - porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch + - porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-.patch + - prefs/Set-javascript.options.showInConsole.patch + - debian-hacks/Icedove-branding.patch + - fixes/unbreak-with-system-pixman-in-mailnews.patch + obsolete patches (fixed upstream): + - debian-hacks/Do-build-time-detection-of-2-bytes-wchar_t-and-char1.patch + - debian-hacks/Fix-build-failure-for-header.py-and-typelib.py.patch + - fixes/Make-system-cairo-work-again.patch + - porting-powerpcspe/FTBFS-Altivec-is-not-available-on-powerpcspe.patch + * [df93d26] branding: add jar.mn to moz.build + * [648853d] only copy debian/mozconfig.default into mozilla subdir + * [4f9dc9e] MOZ_OBJDIR need a absolute path, $(pwd) didn't work + * [33794c3] icedove.pc: remove non-existent library mozjs (Closes: #748746) + * [dcbce5c] iceowl-extension: use breaks instead of conflicts against + calendar-timezones (Closes: #747532) + * [545415a] add breaks to enigmail (<< 2:1.6-4~deb7u1) which won't work with + us (Closes: #747546) + + -- Christoph Goehre Fri, 30 May 2014 12:11:53 -0400 + +icedove (24.5.0-2) unstable; urgency=low + + * [e4a43ed] debian/rules: remove duplicate LDFLAGS += -Wl,--stats + * [f9dba4b] debian/rules: export all compiler flags into build environment + * [8dc0712] debian/rules: run autoconf for all configue files + * [95d4b48] debian/rules: export MOZCONFIG onces + * [577bd03] debian/rules: update config.sub and config.guess before autoconf + run + * [7f958c7] parse DEB_BUILD_OPTIONS for how many parallel buildjobs to start + (Closes: #746984) + * [0f8b062] debian/rules: export MOZILLA_OFFICIAL + * [1c3d277] run configure with --build and --host + * [f190e19] don't build a shared js library (Closes: #724688, #729073, + #745593) + + -- Christoph Goehre Thu, 08 May 2014 20:07:06 -0400 + +icedove (24.5.0-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [7c13dbf] calender-timezones: remove no longer needed helper files + * [2d4328c] debian/control: sort various fields alphabetically + * [436c212] debian/control: remove build-depens on cdbs + * [dae8b3e] icedove branding: adopt current Makefile.in style to upstream + * [045be10] debian/rules: switch to debhelper + * [b852c8c] debian/mozconfig*: adding mozconfig files + * [7bac68c] debian/icedove.configopts: Remove no longer needed file + * [6c597b9] Switch the old thunderbird*.in files to icedove.* + * [9781e61] debian/icedove.links: adding /u/b/i link + * [f325194] debian/icedove.dirs: add helper file for needed directories + * [fe0376a] debian/icedove.install: sort entrys alphabetical + * [0111ccc] debian/icedove.js: fix small typo and reformat + * [a7e5b05] debian/rules: add override for dh_fixperms + * [8e44df2] debian/rules: add override for dh_install + * [24fa03a] debian/rules: add override for dh_shlibdeps + * [2f22ed0] debian/rules: add override for dh_strip + * [259a6f4] debian/control: remove ${shlibs:Depends} from c-g-p depends + * [cdc9272] debian/rules: add additional LDFLAGS + * [9d620d5] debian/rules: correct Icedove version inside icedove.pc during + install + + [ Christoph Goehre ] + * [460818b] Imported Upstream version 24.5.0 + * [4c65ecc] rebuild patch queue from patch-queue branch + added patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + obsolete patches: + - porting-kfreebsd-hurd/Another-fix-to-build-ipc-code-on-GNU-hurd-an.patch + + -- Christoph Goehre Tue, 29 Apr 2014 17:56:40 -0400 + +icedove (24.4.0-1) unstable; urgency=low + + * [a2b13c0] Imported Upstream version 24.4.0 + * [fd90463] rebuild patch queue from patch-queue branch + added patches: + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + (Closes: #741245) + + -- Christoph Goehre Sat, 22 Mar 2014 11:10:18 -0400 + +icedove (24.3.0-2) unstable; urgency=low + + [ Christoph Goehre ] + * [122ffe9] remove ldif60 from pkgconfig file (Closes: #732652) + * [b64ccac] rebuild patch queue from patch-queue branch + added patches: + - porting-powerpcspe/FTBFS-Altivec-is-not-available-on-powerpcspe.patch + (Closes: #734859) + + [ Carsten Schoenert ] + * [aa4f5b1] thunderbird.install.in: shipping all files in /u/l/i/components + (Closes: #737811) + * [3bf4738] debian/rules: fix *.js file-permissions for iceowl-extension + * [50ab7a5] debian/rules: remove -Wl,--as-needed linker option + (Closes: #732652, #730450, #724688) + + -- Christoph Goehre Sun, 09 Mar 2014 15:33:05 -0400 + +icedove (24.3.0-1) unstable; urgency=low + + * [a656560] lintian: remove non-free w3c valid.png icon (Closes: #735119) + * [f4e6c08] lintian: remove prebuild javascript objects from upstream + tarball (Closes: #735234) + * [adf9c96] Imported Upstream version 24.3.0 + * [8419e65] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/remove-non-free-W3C-icon-valid.png.patch + - debian-hacks/use-system-jquery-jquery-ui.patch + * [948af3e] a newer icedove will break iceowl-extension (Closes: #732742) + + -- Christoph Goehre Mon, 10 Feb 2014 19:44:36 -0500 + +icedove (24.2.0-1) unstable; urgency=low + + [ Christoph Goehre ] + * [963a61e] Imported Upstream version 24.2.0 + * [852abe3] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - fixes/Wrap-non-prefixed-freetype-headers-from-newer-freety.patch + - porting/Don-t-hardcode-page-size-on-ia64-sparc-or-mipsel.patch + (Closes: #734074) + * [a9d6680] lintian: remove prebuild-binaries from upstream tarball + * [fc25943] linitan: remove prebuilt-windows-binary from upstream tarball + * [faa24eb] lintian: fix comma separated files copyright + * [835790d] lintian: declare public-domain license at the beginning + + [ Carsten Schoenert ] + * [c583a2f] debian/copyright: fix indentation for 'public domain' license + * [78ddee2] linitan: bump up standards version to 3.9.5 + + -- Christoph Goehre Sat, 11 Jan 2014 20:17:24 -0500 + +icedove (24.1.1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [e8cbac4] debian/copyright: correcting wrong comma usage. + * [d24a6be] debian/copyright: adjusting copyright infos + * [51a32a1] debian/copyright: correcting various lintian warning. + * [50874e0] debian/control: expanding icedove-dev dependency on python + * [2996a33] debian/control: adding a more specific description for + iceowl-extension and google-cal-prov. + * [85b4400] debian/control: adjust proper version dependencies. + (Closes: #729712) + * [4d6b204] debian/control: adding metadata for mozilla-devscripts. + (Closes: #562984) + + [ Christoph Goehre ] + * [aa7782b] Imported Upstream version 24.1.1 (Closes: #720931, #723630) + * [e4ca9cd] rebuild patch queue from patch-queue branch + added patches: + - fixes/Wrap-non-prefixed-freetype-headers-from-newer-freety.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and.patch + * [849988b] make python scripts in /usr/lib/icedove-devel/sdk/bin executable + * [9890b1c] ship python config scripts to make building of extensions easier + (Closes: #729431) + * [8b08106] remove libxpcom.so from pkgconfig file (Closes: #729168) + * [4759bde] add libldif60 to pkgconfig file + * [db575b4] lintian: remove unsafe symlink from upstream tarball + + -- Christoph Goehre Sun, 08 Dec 2013 10:08:19 -0500 + +icedove (24.0-1) experimental; urgency=low + + [ Guido Günther ] + * [6f9d98e] New upstream version 24.0 + * [ef58a98] Refresh patches + * [435516d] Switch to xz compressed upstream tarball + * [f529a99] repack.py: port to python3 + * [50423d9] repack.py: allow to specify compression + + [ Christoph Goehre ] + * [b45b2b9] remove superfluous gstreamer build depends + * [96ac1d0] Reduce memory usage of the linker. Thanks to Mike Hommey + * [af55374] ia64 don't like LDFLAG --no-keep-memory + * [c3cb093] remove export-subst in mozilla/addon-sdk/source/.gitattributes. + + [ Carsten Schoenert ] + * [ac4caea] debian/copyright: correcting out-of-date-copyright-format-uri. + * [585bf84] debian/copyright: remove obsolete field 'Name:' + + -- Christoph Goehre Tue, 15 Oct 2013 18:51:16 -0400 + +icedove (24.0~b3-2) experimental; urgency=low + + * [47fe004] Add lintian override for our use of the embedded libjpeg + * [3c103e6] Make sure xpcshell is executable so dh_shlibdeps picks it up to + calculate lib dependencies + + -- Guido Günther Tue, 24 Sep 2013 20:03:33 +0200 + +icedove (24.0~b3-1) experimental; urgency=low + + [ Guido Günther ] + * Upload to experimental + * [eae533c] Adjust watch file once again + * [5280050] Invoke repack.py directly + * [0f4e8de] New upstream version 24.0~b3 + (Closes: #706859, #720931, #723630) + * [3b6374b] Don't use system jpeg + since it doesn't have the needed features + * [f6aeba2] Don't try to remove nonexistent libxpcom.so + + [ Carsten Schoenert ] + * [04844ae] icedove-branding: adopt new build schema to Debian branding + by using moz.build. + * [11c4677] icedove-branding: change the target directory for preview.png. + * [55f6762] debian/control: remove package calendar-timezones. + The calendar-timezones related files are now inside the lightning + package. + * [6f4948d] debian/rules: catch any gdata-provider*.xpi file. + The gdata-provider XPI file now has a version appended. + * [d5a63c9] debian/rules: catch any lightning*.xpi file. + The lightning XPI file now has a version appended. + * [e77e911] debian/thunderbird.install.in: + remove mozilla/components/binary.manifest since it no longer exists. + * [ef3f3b1] debian/control: Build-Depend on gstreamer an yasm now used by + icedove. + * [9f5fe3e] Drop patches fixed upstream. + Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + Bug-723497-Saving-message-to-disk-fails-silently-fai.patch + Bug-746112-Don-t-decommit-if-page-size-is-too-large.patch + Bug-814693-Allow-webrtc-to-build-on-more-architectur.patch + Bug-840242-Use-the-runtime-page-size-to-control-aren.patch + virtualenv-changing-the-path-to-virtualenv.py.patch + * [4503610] Adjust to build system changes: + debian-hacks/Don-t-build-example-component.patch + * [290f1e0] Partially applied upstream: + Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + * [2eaf6ae] Rediff remaining patches + * [4217c0e] Create missing .deps dir. + Workaround to make build complete + * [f95db9c] Drop autoconf.mk mangling since it confuses the build system + + -- Guido Günther Thu, 19 Sep 2013 20:10:24 +0200 + +icedove (17.0.8-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [af98dad] The vendorShortName is of course "Mozilla" and not "Icedove" The + packages in icedove-l10n already use the correct substition. + (Closes: #707207, #715326) + * [8ceae38] Sawfish: fix wrong size of resized window. + Backported from the TB20 release. + https://bugzilla.mozilla.org/show_bug.cgi?id=813997 (Closes: #715464) + * [b69cb68] Fix error while saving a message to disk or network. + If the user tries to save a message to disk or network share without + enough user rights to write the message Icedove fails silently. This + backport from TB 21 fixes this. + * [fd8f588] Desktop file: shorten the icon name to 'Icedove' (Closes: #507962) + * [24b1b45] fix JS compiler segfault errors for various platforms + (Closes: #708331) + + [ Christoph Goehre ] + * [01f6b7a] add README.Debian to describe upstream status of Thunderbird + (Closes: #710888) + * [7fa36d6] rebuild patch queue from patch-queue branch added patches: + - porting/Fix-ipc-chromium-on-kFreeBSD-and-Hurd.patch + + [ Guido Günther ] + * [455bfe7] New upstream version 17.0.8 + + -- Guido Günther Tue, 20 Aug 2013 16:12:17 +0200 + +icedove (17.0.7-1) unstable; urgency=low + + * [b8fd345] Imported Upstream version 17.0.7 + * [3133999] rebuild patch queue from patch-queue branch + modified patches: + - porting/Don-t-hardcode-page-size-on-ia64-sparc-or-mipsel.patch + * [3332f92] lintian: change url to version control system + * [534e2d1] linitan: bump up standards version to 3.9.4 + * [2b511d2] lintian: remove obsolete thunderbird dependency in + iceowl-extension + * [2081e7e] lintian: add Keywords to icedove desktop file + * [7f8333c] lintian: mask minus signs in manpage with a backslash + + -- Christoph Goehre Sun, 30 Jun 2013 18:46:16 -0400 + +icedove (17.0.5-2) unstable; urgency=low + + [ Guido Günther ] + * [4c7a88a] Install calendar-google-provider to /u/s/xul-ext + (Closes: #638480) + * [4c97096] Move calendar-timezones to /u/s/xul-ext (Closes: #638481) + * [e9d0085] Move arch indep parts to common-install-indep + + [ Carsten Schoenert ] + * [40d68d5] Fix build error on IA64 and Sparc + * [59939c3] manpage: add example section and convert to UTF-8 + * [10647cf] fixing build failure depended on python-2.7 changes + + [ Christoph Goehre ] + * [0a7bb8b] create links for extension in + /usr/share/mozilla/extensions/APPID + * [5047e6b] remove + icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + (Closes: #695323) + + -- Christoph Goehre Sat, 18 May 2013 17:53:21 -0400 + +icedove (17.0.5-1) experimental; urgency=low + + [ Guido Günther ] + * [894ea6d] Include all needed libs to link against icedove's libxpcom + (Closes: #477747) + + [ Carsten Schoenert ] + * [6e00625] Point "Help->What's new" to the Debian Wiki (Closes: #570577) + + [ Christoph Goehre ] + * [4766bc9] replace icon in searchplugin (bing, twitter) with download url + * [e3dc726] Imported Upstream version 17.0.5 + + -- Christoph Goehre Sat, 13 Apr 2013 12:19:06 -0400 + +icedove (17.0.4-1) experimental; urgency=low + + [ Guido Günther ] + * [9ed54cb] Add Homepage + * [bd41337] Add X-Debian-Homepage + + [ Carsten Schoenert ] + * [1fba87f] New patch + fix-function-nsMsgComposeAndSend-to-to-respect-Replo.patch fix function + nsMsgComposeAndSend to respect ReploToSend + Thanks to Emilio Pozuelo Monfort for the patch (Closes: #565903) + + [ Christoph Goehre ] + * [7a1071b] update debug section in icedove manpage (Closes: #698163) + * [017f5b5] Imported Upstream version 17.0.4 (Closes: #702927) + * [7c35529] compress debian packages with xz + + -- Christoph Goehre Wed, 13 Mar 2013 19:00:07 -0400 + +icedove (17.0.2-1) experimental; urgency=low + + * [8911b88] Finally set Christoph as Maintainer. + Thanks for your work Alexander. + * [d456018] parallel build: Use number or available cores by default + * [daeee47] Don't refer to paths containing thunderbird (Closes: #486617) + * [52a202a] New upstream version 17.0.2 + * [fa07537] Allow webrtc to build on more architectures. + Thanks to Mike Hommey and Christoph Göhre + + -- Guido Günther Fri, 11 Jan 2013 17:37:46 +0100 + +icedove (17.0.2-1~1) experimental; urgency=low + + * [8911b88] Finally set Christoph as Maintainer. Thanks for your work + Alexander. + * [d456018] parallel build: Use number or available cores by default + * [daeee47] Don't refer to paths containing thunderbird (Closes: #486617) + * [52a202a] New upstream version 17.0.2 + * [fa07537] Allow webrtc to build on more architectures. + Thanks to Mike Hommey and Christoph Göhre + + -- Guido Günther Fri, 11 Jan 2013 17:35:22 +0100 + +icedove (17.0-1) experimental; urgency=low + + [ Christoph Goehre ] + * [0b8ac79] replace transitional depens ttf-lyx with fonts-lyx + (Closes: #676505) + * [4473d67] fix typo in calendar-google-provider description + * [b3a57c0] rebuild patch queue from patch-queue branch + added patches: + porting/Another-fix-to-build-ipc-code-on-GNU-hurd-and-kfreeb.patch + + [ Jens Reyer ] + * [c0e30b6] clarify the relation between iceowl, lightning and sunbird + (Closes: #686206) + + [ Guido Günther ] + * [394b6a1] New upstream version 17.0 + * [a17c23f] Update patches. + The thunderbird-3-profile.patch got split into three since it + addresses different issues: + * Strip-version-number.patch + * Icedove-branding.patch + * Move-profile.patch + * [01eef04] Don't overwrite DEB_BUILD_OPTIONS + and drop dependency on essential package + + [ Ritesh Raj Sarraf ] + * [1ab9095] Add parallel build support + + -- Guido Günther Sat, 24 Nov 2012 19:26:19 +0100 + +icedove (16.0.2-1) experimental; urgency=low + + [ Christoph Goehre ] + * [e94445f] cleanup source.filer file + * [33b9f4c] Imported Upstream version 12.0.1 + + [ Guido Günther ] + * [88a39e3] watch: only look for two digit versions since 3.1.20 lacks the + source/ dir + * [eb4f5c3] New upstream version 14.0 + * [b451442] Update patches for 14.0 + obsolete patches: + Avoid-libxpcom-being-excluded-from-linked-libraries-.patch + Bug-515232-Try-getting-general.useragent.locale-as-a.patch + Bug-696636-Block-OpenGL-1-drivers-explicitly-to-stee.patch + Bug-710972-Define-G_VARIANT_TYPE_STRING_ARRAY-when-b.patch + Bug-722127-Bump-required-libvpx-version-to-1.0.0.-r-.patch + Bug-728136-Port-bug-528687-to-comm-central.patch + Bug-728229-Allow-to-build-with-system-python-ply-lib.patch + Bug-729817-Allow-the-Nouveau-driver-with-Mesa-8.0.1-.patch + Bug-729817-Block-the-Nouveau-3D-driver-as-it-s-insta.patch + Bug-734335-Only-build-SPS-on-supported-platforms.patch + Revert-investigation-patch-for-bug-621446.patch + Bug-698923-Don-t-require-16-bytes-alignment-for-VMFr.patch + Bug-711353-Add-support-for-GNU-kFreeBSD-and-GNU-Hurd.patch + modified patches: + Add-another-preferences-directory-for-applications-p.patch + Do-build-time-detection-of-2-bytes-wchar_t-and-char1.patch + Don-t-build-example-component.patch + Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + Gross-workaround-to-avoid-installing-test-idl-and-in.patch + Ignore-system-libjpeg-libpng-and-zlib-version-checki.patch + stop-configure-if-with-system-bz2-was-passed-but-no-.patch + Allow-.js-preference-files-to-set-locked-prefs-with-.patch + Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + Link-libldap-against-libpthread.patch + Load-dependent-libraries-with-their-real-path-to-avo.patch + Properly-launch-applications-set-in-HOME-.mailcap.patch + Remove-the-js-shell-from-the-build-directory-during-.patch + fix-branding-in-migration-wizard-and-the-addon-manag.patch + fix-installdir.patch + save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + thunderbird-3-profile.patch + Change-extension-s-name-to-Iceowl.patch + Add-xptcall-support-for-SH4-processors.patch + Allow-ipc-code-to-build-on-GNU-hurd.patch + Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + Disable-optimization-on-alpha-for-the-url-classifier.patch + Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + Don-t-auto-disable-extensions-in-system-directories.patch + Set-javascript.options.showInConsole.patch + Allow-to-build-against-system-libffi.patch + * [907be61] Make sure we only match the generated files. Patch taken from + iceowl 1.5 package + * [772b9a0] Make system cairo work again. Patch taken from iceweasel. + * [0b6a8b3] Update + Add-another-preferences-directory-for-applications-p.patch to new method + name. + * [3395f21] Don't use APP_UA_NAME in application.ini since the replacement + fails and isn't needed. + * [6dea9fb] New upstream version 16.0.1 + * [664153d] Add README.source describing howto import new upstream versions + * [a653bd0] Adjust to upstream changes: + * stop-configure-if-with-system-bz2-was-passed-but-no-.patch + * [f088193] Add a proper patch header + * to Fix-build-failure-for-header.py-and-typelib.py.patch + so we don't lose the patch description. + * [268cca5] New upstream version 16.0.2 + * [a453a92] Rediff patches - no content changes + * [263bbeb] BUILD_OFFICIAL is now MOZILLA_OFFICIAL + * [a798e6b] Install dependentlibs.list to fix dlopen() of XPCOM + + [ Ritesh Raj Sarraf ] + * [f871ba9] Refresh patches. + Droped patches: + * fixes/Remove-the-js-shell-from-the-build-directory-during-.patch + * porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + * fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + * debian-hacks/Make-sure-we-only-match-the-generated-files.patch + * [9b02e4c] Refreshed patches for TB16 + * [dc83dd7] Fix build failure for header.py and typelib.py. + Earlier builds were passing the --cachedir option + Sometime during TB15, Mozilla changed that to variables. + This change was not passing the --cachedir option, hence the build + failure. This patch just hacks the build by passing the cachedir option + manually + + -- Guido Günther Tue, 30 Oct 2012 22:05:49 +0100 + +icedove (11.0-1) experimental; urgency=low + + * [ffb767a] Imported Upstream version 11.0 (Closes: #663897) + * [2b75f48] relax optimize to -O1 on sparc to fix FTBFS + * [fa9a610] update build dependencies (Thanks to Mike) (Closes: #666722) + * [5b552f2] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-710972-Define-G_VARIANT_TYPE_STRING_ARRAY-when-b.patch + - fixes/Bug-734335-Only-build-SPS-on-supported-platforms.patch + - fixes/Revert-investigation-patch-for-bug-621446.patch + modified patches: + - fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + obsolete patches (fixed upstream): + - debian-hacks/Fix-tracejit-to-build-against-nanojit-headers-in-dis.patch + - debian-hacks/Install-missing-nanojit-and-.tbl-headers-from-js-src.patch + - fixes/Bug-710268-Sign-NSS-libraries-only-when-they-exist-r.patch + - fixes/Fixup-bz-730195-for-Linux-ARM-use-_URC_FOREIGN_EXCEP.patch + - fixes/mozilla-config.h-was-renamed-js-confdefs.h-in-js-src.patch + - fixes/Remove-generated-files-from-js-src-during-make-distc.patch + - porting/Bug-703531-Fix-ARMAssembler-getOp2RegScale-on-ARMv5.patch + - porting/Bug-703534-Fix-build-failure-on-platforms-without-YA.patch + - porting/Bug-703842-Avoid-R_SPARC_WDISP22-relocation-in-Tramp.patch + + -- Christoph Goehre Wed, 18 Apr 2012 18:36:31 +0200 + +icedove (10.0.3-2) unstable; urgency=low + + [ Christoph Goehre ] + * [1223204] bump up standards version to 3.9.3 + + [ Guido Günther ] + * [7d7b5f5] Don't put symlinks into iceowl/extensions + + [ Christoph Goehre ] + * [94c07e5] update copyright file + * [88098a8] GNOME 3 integration: Use GIO instead of deprecated GnomeVFS. + Thanks to Michael Biebl (Closes: #658688) + * [9543fd1] add build depends python + * [ec62dcb] build a debug package, if DEB_BUILD_OPTIONS contains 'debug' + + -- Christoph Goehre Tue, 27 Mar 2012 18:21:52 +0200 + +icedove (10.0.3-1) unstable; urgency=low + + [ Christoph Goehre ] + * [ee4b49c] adjust source.filter list + * [b5f3064] New Upstream version 10.0.3 (Closes: #661115, #663897) + * [fd35da8] build against system python-ply + * [4964bb2] build against system libreadline + * [5412685] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Don-t-build-example-component.patch + - fixes/Bug-515232-Try-getting-general.useragent.locale-as-a.patch + - fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch + - fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + - fixes/Bug-696636-Block-OpenGL-1-drivers-explicitly-to-stee.patch + - fixes/Bug-710268-Sign-NSS-libraries-only-when-they-exist-r.patch + - fixes/Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + - fixes/Bug-722127-Bump-required-libvpx-version-to-1.0.0.-r-.patch + - fixes/Bug-728136-Port-bug-528687-to-comm-central.patch + - fixes/Bug-728229-Allow-to-build-with-system-python-ply-lib.patch + - fixes/Bug-729817-Allow-the-Nouveau-driver-with-Mesa-8.0.1-.patch + - fixes/Bug-729817-Block-the-Nouveau-3D-driver-as-it-s-insta.patch + - fixes/Fixup-bz-730195-for-Linux-ARM-use-_URC_FOREIGN_EXCEP.patch + - fixes/Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + - fixes/Link-libldap-against-libpthread.patch + - fixes/Load-dependent-libraries-with-their-real-path-to-avo.patch + - porting/Bug-703534-Fix-build-failure-on-platforms-without-YA.patch + - prefs/Don-t-auto-disable-extensions-in-system-directories.patch + (Closes: #648712) + modified patches: + - debian-hacks/Install-missing-nanojit-and-.tbl-headers-from-js-src.patch + - fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch + - fixes/Properly-launch-applications-set-in-HOME-.mailcap.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting/Allow-ipc-code-to-build-on-GNU-hurd.patch + - porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + - prefs/Set-javascript.options.showInConsole.patch + obsolete patches (fixed upstream): + - debian-hacks/get-ride-of-default-debian-hardering-options.patch + - iceowl/Install-calendar-timezones-mode-0644-not-0755.patch + - porting/Add-mips-hppa-ia64-s390-and-sparc-defines-in-ipc-chr.patch + - porting/Bug-680917-Use-a-pool-size-of-16kB-on-ia64-for-bump-.patch + - porting/Bug-694533-LDRH-STRH-LDRSB-STRSB-are-supported-on-AR.patch + - porting/Bug-696393-Reimplement-NS_InvokeByIndex-in-C-on-S390.patch + - porting/Revert-bz-164580.patch + + [ Michael Biebl ] + * [c0a3ee2] Install chrome.manifest file to ensure the various components + (like GNOME support module) are correctly loaded. (Closes: #658479) + + [ Christoph Goehre ] + * [02687fc] adjust install/link files for new upstream + * [b551d6a] omni.jar was renamed to omni.ja + + -- Christoph Goehre Sat, 24 Mar 2012 23:10:47 +0100 + +icedove (9.0.1-1) experimental; urgency=low + + * [e2002b8] New Upstream version 9.0.1 (Closes: #653266, #653556) + * [9c14e8b] replace dfsg cleanup script with Mike's repack.py + * [2a34bd8] rebuild patch queue from patch-queue branch + added patches: + - porting/Bug-698923-Don-t-require-16-bytes-alignment-for-VMFr.patch + - porting/Bug-703531-Fix-ARMAssembler-getOp2RegScale-on-ARMv5.patch + - porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + - porting/Bug-703842-Avoid-R_SPARC_WDISP22-relocation-in-Tramp.patch + - porting/Bug-711353-Add-support-for-GNU-kFreeBSD-and-GNU-Hurd.patch + - porting/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + * [03ed85d] remove Build-Depends python-ply, it's shipped and searched in + mozilla/other-licenses + + -- Christoph Goehre Tue, 24 Jan 2012 19:13:30 +0100 + +icedove (8.0-2) unstable; urgency=low + + * Upload to unstable + * [b02c21d] fix crash in xpcshell on sparc linux + + -- Christoph Goehre Wed, 04 Jan 2012 18:09:14 +0100 + +icedove (8.0-1) experimental; urgency=low + + [ Guido Günther ] + * [17a7a80] Add x-scheme-handler/mailto to. Thanks to Michael Biebl for the + patch (Closes: #645556) + + [ Christoph Goehre ] + * [4066038] New Upstream version 8.0 + * [aa9105e] update autoconfig for e-mail accounts from riseup.net + (Closes: #648907) + * [decc1ac] fix wrong description text in iceowl-extension (Closes: #649073) + * [c97dda6] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Statically-link-jemalloc-to-all-programs.patch + - fixes/Bug-670719-Only-add-DENABLE_JIT-1-to-CXXFLAGS-if-any.patch + - fixes/Bug-680642-Don-t-enable-YARR-JIT-on-MIPS-as-the-impl.patch + - porting/Bug-589735-Allocate-memory-with-an-address-with-high.patch + - porting/Bug-589735-Allow-static-JS-strings-to-be-turned-off-.patch + - porting/Bug-680917-Use-a-pool-size-of-16kB-on-ia64-for-bump-.patch + - porting/Bug-694533-LDRH-STRH-LDRSB-STRSB-are-supported-on-AR.patch + - porting/Bug-696393-Reimplement-NS_InvokeByIndex-in-C-on-S390.patch + - porting/Revert-bz-164580.patch + + -- Christoph Goehre Sun, 20 Nov 2011 19:58:37 +0100 + +icedove (8.0~b4-2) experimental; urgency=low + + [ Guido Günther ] + * [5d043ec] Install calendar extension + * [07feb49] Change extension's name to Iceowl + * [c597212] iceowl-extension: don't ignore errors in postinst + * [30ec51d] Disable patch numbers + * [73f80ed] Don't install timezones file mode 0755 + + [ Christoph Goehre ] + * [0fa13be] remove duplicate build depends unzip + + -- Christoph Goehre Tue, 08 Nov 2011 22:29:19 +0100 + +icedove (8.0~b4-1) experimental; urgency=low + + * [4e90977] New Upstream Version 8.0b4 (Closes: #591771, #638161) + * [955423a] replace duplicate .so files in icedove and icedove-dev with + symlinks + * [6ffb325] remove obsolete cdbs rule to extract tarball + * [f98837b] build against libnotify4 (libnotify-dev >= 0.7)(Closes: #637194) + * [66f72bc] Build-depend on libjpeg-dev instead of libjpeg62-dev + * [8af21a2] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/get-ride-of-default-debian-hardering-options.patch + - fixes/packager-fails-when-MOZILLA_DIR-is-a-relative-path.patch + modified patches: + - icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + obsolete patches (fixed upstream): + - debian-hacks/bzXXX-ftbfs-static-with-system-hunspell.patch + - fixes/Bug-626035-Modify-the-way-arm-compiler-flags-are-set.patch + - fixes/Bug-639554-Install-sdk-bin-with-make-install.-r-bsme.patch + - fixes/Bug-640494-part-1-Get-rid-of-STL-algorithm-use-in-js.patch + - fixes/Bug-640494-part-2-Use-bitwise-operations-in-JSDOUBLE.patch + - fixes/Bug-652139-Use-an-integer-type-in-DocumentViewerImpl.patch + - fixes/Bug-662224-Define-NS_ATTR_MALLOC-and-NS_WARN_UNUSED_.patch + - fixes/Bug-668906-Do-not-call-openUnsharedDatabase-with-a-n.patch + - fixes/Bug-671564-Initialize-NS_XPCOM_LIBRARY_FILE-from-NS_.patch + - fixes/Disable-building-embedded-libjpeg-turbo-when-buildin.patch + - porting/Allow-to-build-yuv_convert_arm.cpp-on-armv4t.patch + - porting/Bug-638056-Avoid-The-cacheFlush-support-is-missing-o.patch + - porting/Fix-FTBFS-in-IPC-on-Linux-PPC.patch + - porting/Fix-FTBFS-in-xpcom-base-on-armv4t.patch + - system-libs/libxul-linking-error-with-enable-system-ffi-and-stat.patch + * [5f6e50f] add Japanese translation for desktop menu entry. Thanks to + Hideki Yamane (Closes: #640679) + * [591f76c] add build depends unzip + * [0af372f] remove upstream integrated CFLAGS and CXXFLAGS '-g -std=gnu++0x' + * [a4c8b2f] adjust install and links file to new upstream + * [332b7a8] Revert "override libtheora embedded-library error" no longer + needed + + -- Christoph Goehre Sat, 05 Nov 2011 20:31:29 +0100 + +icedove (5.0-2) experimental; urgency=low + + * [7f92927] fix FTBFS on ia64: use gcc with -O2 instead of -Os + * [b6b8dea] Disable methodjit on armel + * [5b45336] remove obsolete conffiles with dpkg-maintscript-helper + (Closes: #636819) + * [868cfa3] rebuild patch queue from patch-queue branch + added patches: + - porting/Allow-ipc-code-to-build-on-GNU-hurd.patch - fix building on + GNU/hurd - Thanks to Pino Toscano + + -- Christoph Goehre Sun, 07 Aug 2011 15:35:09 +0200 + +icedove (5.0-1) experimental; urgency=low + + * New Upstream Version (Closes: #632037) + * [98c5a8f] build against libffi and libvpx + * [52dff12] build javascript lib as shared library + * [6f1c24d] build against mozilla png library + * [9e16beb] c-sdk moved from directory/sdks/c-sdk to ldap/sdks/c-sdk + * [57763a0] override libtheora embedded-library error + * [fc71b62] adjust install/links files for new upstream version + * [6e83a58] Revert "lintian: override ancient-libtool warning" override no + longer needed + * [d65b463] change hardcoded list of non-Linux build depends into linux-any + (Closes: #634301) + * [ff3a8f3] remove file compare in build run + * [a21efa9] add branding for icedove 5.0 + * [7023939] update porting/Fix-FTBFS-in-xpcom-base-on-armv4t.patch - fix + building on armhf + + -- Christoph Goehre Wed, 03 Aug 2011 18:25:17 +0200 + +icedove (3.1.11-1) unstable; urgency=high + + * New Upstream Version + - MFSA 2011-19 aka CVE-2011-2364, CVE-2011-2365, CVE-2011-2374, + CVE-2011-2376: + Miscellaneous memory safety hazards (rv:3.0/1.9.2.18) + - MFSA 2011-20 aka CVE-2011-2373: Use-after-free vulnerability when + viewing XUL document with script disabled + - MFSA 2011-21 aka CVE-2011-2377: Memory corruption due to + multipart/x-mixed-replace images + - MFSA 2011-22 aka CVE-2011-2371: Integer overflow and arbitrary code + execution in Array.reduceRight() + - MFSA 2011-23 aka CVE-2011-0083, CVE-2011-0085, CVE-2011-2363: + Multiple dangling pointer vulnerabilities + - MFSA 2011-24 aka CVE-2011-2362: Cookie isolation error + * [2a82ce8] DM-Upload-Allowed is superfluous since I'm DD + + -- Christoph Goehre Sun, 26 Jun 2011 10:35:31 +0200 + +icedove (3.1.10-2) unstable; urgency=low + + * [de81b7f] remove obsolete build depends libxp-dev (Closes: #623668) + * [633782d] change DEB_HOST_MULTIARCH back to DEB_HOST_GNU_TYPE and + downgrade sqlite version (Closes: #627598) + + -- Christoph Goehre Mon, 06 Jun 2011 20:53:54 +0200 + +icedove (3.1.10-1) unstable; urgency=high + + * New Upstream Version (Closes: #625207) + - MFSA 2011-12 aka CVE-2011-0069, CVE-2011-0070, CVE-2011-0072, + CVE-2011-0074, CVE-2011-0075, CVE-2011-0077, + CVE-2011-0078, CVE-2011-0080, CVE-2011-0081: + Miscellaneous memory safety hazards (rv:2.0.1/ 1.9.2.17/ 1.9.1.19) + - MFSA 2011-16 aka CVE-2011-0071: Directory traversal in resource: protocol + * [78e0217] build against system libbz2 + * [e6af761] build against system libpng + * [4b57c30] build against system libhunspell + * [937f0bd] double check to build against most system libraries + * [d6de723] rebuild patch queue from patch-queue branch + added patches (Closes: #624969): + - 0072-fix-building-with-gcc-4.6-Add-constructor-to-placate.patch + - 0073-fix-building-with-gcc-4.6-os2.cc-missing-include-cst.patch + - 0074-Add-constructor-for-nsCaseInsensitiveStringComparato.patch + - 0075-Add-constructor-for-nsXULAppInfo-which-inherits-from.patch + - 0076-Add-constructor-for-GTKEmbedDirectoryProvider.patch + modified patches: + - 0056-Disable-APNG-support-when-system-libpng-doesn-t-supp.patch + obsolete patches (fixed upstream): + - 0051-Do-exec-instead-of-uselessly-forking-in-xulrunner-la.patch + - 0072-Add-support-for-libnotify-0.7.patch + * [e190ef1] bump up standards version to 3.9.2 (change DEB_HOST_GNU_TYPE to + DEB_HOST_MULTIARCH) + + -- Christoph Goehre Tue, 10 May 2011 20:03:04 +0200 + +icedove (3.1.9-2) unstable; urgency=low + + * Upload to unstable + * [ace3b6f] rebuild patch queue from patch-queue branch + added patches: + - 0072-Add-support-for-libnotify-0.7.patch + * [910f213] use DEP5 for copyright file + * [3ae4c8b] set global section to 'mail' + * [42c9c89] icedove.1: icedove is derived from Thunderbird instead of + Mozilla suite + + -- Christoph Goehre Sat, 02 Apr 2011 09:43:04 +0200 + +icedove (3.1.9-1) experimental; urgency=low + + * New Upstream Version + - MFSA 2011-01 aka CVE-2011-0053, CVE-2011-0062: Miscellaneous memory + safety hazards (rv:1.9.2.14/ 1.9.1.17) + - MFSA 2011-08 aka CVE-2010-1585: ParanoidFragmentSink allows javascript: + URLs in chrome documents + - MFSA 2011-09 aka CVE-2011-0061: Crash caused by corrupted JPEG image + * [699536a] rebuild patch queue from patch-queue branch + added patches: + - 0069-save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + (Closes: #505875) + - 0070-News-article-is-empty-if-selected-during-download-fr.patch + (Closes: #487494) + - 0071-restore-icedove-on-login-by-session-management.patch + (Closes: #403458) + modified patches: + - 0003-no_dynamic_nss_softokn.patch + - 0010-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0030-Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + * [98d8ac0] c-sdk move to sdks/c-sdk - adjust + debian/{copyright,remove.nonfree,rules} + + -- Christoph Goehre Wed, 09 Mar 2011 20:21:59 +0100 + +icedove (3.1.7-1) experimental; urgency=low + + * New Upstream Version (Closes: #606977) + - MFSA 2010-74 aka CVE-2010-3776, CVE-2010-3777: Miscellaneous memory + safety hazards (rv:1.9.2.13/ 1.9.1.16) + - MFSA 2010-75 aka CVE-2010-3769: Buffer overflow while line breaking + after document.write with long string + - MFSA 2010-78 aka CVE-2010-3768: Add support for OTS font sanitizer + * [46e3e8a] rebuild patch queue from patch-queue branch + added patches: + - 0068-fix-forwarding-of-Simple-HTML-email.patch + obsolete patches (fixed upstream): + - 0017-Implement-sync_instruction_memory-for-sparc-linux.patch + - 0059-Fix-startup-problem-with-symlinked-components-e.g.-e.patch + * [9fcce0c] add license info for gfx/ots + + -- Christoph Goehre Mon, 13 Dec 2010 17:59:50 +0100 + +icedove (3.1.6-1) experimental; urgency=low + + * New Upstream Version (Closes: #601334) + - MFSA 2010-64 aka CVE-2010-3175, CVE-2010-3176: Miscellaneous memory + safety hazards (rv:1.9.2.11/ 1.9.1.14) + - MFSA 2010-65 aka CVE-2010-3179: Buffer overflow and memory corruption + using document.write + - MFSA 2010-66 aka CVE-2010-3180: Use-after-free error in nsBarProp + - MFSA 2010-67 aka CVE-2010-3183: Dangling pointer vulnerability in + LookupGetterOrSetter + - MFSA 2010-69 aka CVE-2010-3178: Cross-site information disclosure via + modal calls + - MFSA 2010-71 aka CVE-2010-3182: Unsafe library loading vulnerabilities + - MFSA 2010-73 aka CVE-2010-3765: Heap buffer overflow mixing + document.write and DOM insertion + * [270fd51] rebuild patch queue from patch-queue branch + added patches: + - 0069-Use-errno.ENOENT-instead-of-2-in-JarMaker.py.patch + modified patches: + - 0009-fix-branding-in-migration-wizard-and-the-addon-manag.patch + * [24421f4] bump build depends for libnspr4-dev, libnss3-dev and + libsqlite3-dev + + -- Christoph Goehre Wed, 10 Nov 2010 07:11:17 +0100 + +icedove (3.1.4-1) experimental; urgency=low + + * New Upstream Version + + -- Christoph Goehre Sat, 18 Sep 2010 18:25:37 +0200 + +icedove (3.1.3-1) experimental; urgency=low + + * New Upstream Version + - MFSA 2010-49 aka CVE-2010-3169: Miscellaneous memory safety hazards + (rv:1.9.2.9/ 1.9.1.12) + - MFSA 2010-50 aka CVE-2010-2765: Frameset integer overflow vulnerability + - MFSA 2010-51 aka CVE-2010-2767: Dangling pointer vulnerability using DOM + plugin array + - MFSA 2010-53 aka CVE-2010-3166: Heap buffer overflow in + nsTextFrameUtils::TransformText + - MFSA 2010-54 aka CVE-2010-2760: Dangling pointer vulnerability in + nsTreeSelection + - MFSA 2010-55 aka CVE-2010-3168: XUL tree removal crash and remote code + execution + - MFSA 2010-56 aka CVE-2010-3167: Dangling pointer vulnerability in + nsTreeContentView + - MFSA 2010-57 aka CVE-2010-2766: Crash and remote code execution in + normalizeDocument + - MFSA 2010-59 aka CVE-2010-2762: SJOW creates scope chains ending in + outer object + - MFSA 2010-61 aka CVE-2010-2768: UTF-7 XSS by overriding document charset + using type attribute + - MFSA 2010-62 aka CVE-2010-2769: Copy-and-paste or drag-and-drop into + designMode document allows XSS + - MFSA 2010-63 aka CVE-2010-2764: Information leak via XMLHttpRequest + statusText + * [9a03eb1] rebuild patch queue from patch-queue branch + added patches: + - 0060-fix-FTBFS-on-hurd.patch (Closes: #595665) + - 0061-Enable-x64-JIT-backend-by-default.patch + - 0062-Fix-unaligned-reads-in-qcms.patch + - 0063-Import-js-src-nanojit-njcpudetect.h.patch + - 0064-Use-clz-on-android-even-for-armv5-target.patch + - 0065-Fix-ARM-verbose-assembly-output-for-BLX.patch + - 0066-Get-rid-of-blx_lr_bug.patch + - 0067-Avoid-some-ARM-CPU-arch-related-runtime-tests-depend.patch + - 0068-ARMv4T-support-for-nanojit.patch + + -- Christoph Goehre Tue, 14 Sep 2010 13:41:19 +0200 + +icedove (3.1.2-2) experimental; urgency=low + + * [e1435dc] rebuild patch queue from patch-queue branch + added patches: + - 0060-Fix-startup-problem-with-symlinked-components-e.g.-e.patch + (Closes: #592531) + modified patches: + - 0048-Add-nanojit-support-for-ARMv4T.patch - Fix FTBFS on armel + + -- Christoph Goehre Sat, 21 Aug 2010 14:51:03 +0200 + +icedove (3.1.2-1) experimental; urgency=low + + * New Upstream Version (Closes: #589666, #591899) + - MFSA 2010-34 aka CVE-2010-1211, CVE-2010-1212: Miscellaneous memory + safety hazards (rv:1.9.2.7/ 1.9.1.11) + - MFSA 2010-38 aka CVE-2010-1215: Arbitrary code execution using SJOW and + fast native function + - MFSA 2010-39 aka CVE-2010-2752: nsCSSValue::Array index integer overflow + - MFSA 2010-40 aka CVE-2010-2753: nsTreeSelection dangling pointer remote + code execution vulnerability + - MFSA 2010-41 aka CVE-2010-1205: Remote code execution using malformed PNG + image + - MFSA 2010-42 aka CVE-2010-1213: Cross-origin data disclosure via Web + Workers and importScripts + - MFSA 2010-43 aka CVE-2010-1207: Same-origin bypass using canvas context + - MFSA 2010-44 aka CVE-2010-1210: Characters mapped to U+FFFD in 8 bit + encodings cause subsequent character to vanish + - MFSA 2010-46 aka CVE-2010-0654: Cross-domain data theft using CSS + - MFSA 2010-47 aka CVE-2010-2754: Cross-origin data leakage from script + filename in error messages + * [6b9976e] rebuild patch queue from patch-queue branch + modified patches: + - 0010-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0015-Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + - 0018-Work-around-FTBFS-on-mips-by-disabling-TLS-support.patch + - 0034-Fix-compiler-errors-with-g-4.4-with-std-gnu-0x.patch + - 0045-Expose-fullpath-from-nsIPluginTag.patch + - 0047-Use-syscall-for-mmap-and-munmap-and-disable-ncpus-in.patch + - 0050-Set-javascript.options.showInConsole.patch + - 0057-Allow-to-build-against-system-libffi.patch + - 0058-Ignore-system-libjpeg-libpng-and-zlib-version-checki.patch + - 0059-Disable-APNG-support-when-system-libpng-doesn-t-supp.patch + * [16b0e7e] fix FTBFS on kfreebsd-* and hurd-i386 by passing + --disable-necko-wifi to configure (Closes: #589476) + * [15a02c7] bump up standards version to 3.9.1 + + -- Christoph Goehre Fri, 13 Aug 2010 12:18:21 +0200 + +icedove (3.1-1) experimental; urgency=low + + * New Upstream Version + * [124a316] add additional build depends libnotify-dev + * [5ed6a72] adjust branding for Icedove 3.1 + * [bed8969] install further js files shipped with Icedove 3.1 + * [02456e6] replace blue icedove icons with green version + * [036921f] regenerate patch queue for 3.1 Icedove release + * [a7fa393] build with system ffi + * [d8650f7] ship icedove svg file for low resolution icons too + * [7718c55] bump Standards Version to 3.9.0 and downgrade Conflicts to + Breaks + * [9621fc6] lintian: override ancient-libtool warning + + -- Christoph Goehre Sat, 17 Jul 2010 17:19:58 +0200 + +icedove (3.0.5-1) unstable; urgency=low + + * New Upstream Version + - MFSA 2010-25 aka CVE-2010-1121: Re-use of freed object due to scope + confusion + - MFSA 2010-26 aka CVE-2010-1200, CVE-2010-1201, CVE-2010-1202: Crashes + with evidence of memory corruption (rv:1.9.2.4/ 1.9.1.10) + - MFSA 2010-29 aka CVE-2010-1196: Heap buffer overflow in + nsGenericDOMDataNode::SetTextInternal + - MFSA 2010-30 aka CVE-2010-1199: Integer Overflow in XSLT Node Sorting + * [9774410] rebuild patch queue from patch-queue branch + added patches: + - 0045-Fix-misalignments-in-help-command-line.patch + - 0046-Fix-misalignments-in-help-command-line.patch + - 0047-KDE-Gnome-startup-notification-not-disappearing-when.patch + - 0048-KDE-Gnome-startup-notification-not-disappearing-for-.patch + - 0049-Use-char16_t-when-available-and-when-it-is-don-t-tes.patch + - 0050-Fix-compiler-errors-with-g-4.4-with-std-gnu-0x.patch + - 0051-Add-xptcall-support-for-SH4-processors.patch + modified patches: + - 0028-Avoid-crashing-when-trying-to-kill-a-nsProcess-that-.patch + obsolete patches (fixed upstream): + - 0021-Avoid-creating-the-updates-directory-when-update-ser.patch + - 0035-Fix-stack-alignment-on-function-calls-in-JIT-on-ARM.patch + * [3b98c84] avoid unneeded package depends by building with + '-Wl,--as-needed' + * [0067020] Build with -std=gnu++0x + * [72d4300] add pkg-config file for icedove (Closes: #577740) + * [e6af35d] enlarge package description with specification from icedove 2.0 + (Closes: #565887) + * [ef0bc10] add support for new Debian arch: powerpcspe (Closes: #586100) - + thanks to Sebastian Andrzej Siewior + * [5ae6099] use high bandwidth server in watch file to get new upstream + release + * [5e6d641] remove obsolete build depends libkrb5-dev + * [8ed7848] remove unused DEBIAN_VERSION vars in rules file + * [9959bd5] DEB_HOST_GNU_TYPE, DEB_BUILD_GNU_TYPE and DEB_BUILD_ARCH are + defined by cdbs too + * [9f6c088] Fix misalignments in --help command line + + -- Christoph Goehre Sat, 19 Jun 2010 23:26:55 +0200 + +icedove (3.0.4-3) unstable; urgency=low + + * [4026b50] icedove-dev need depend on libnspr4-dev and libnss3-dev + (Closes: #455725) + * [1fee936] don't run configure with --enable-optimize and --disable- + optimize if DEB_BUILD_OPTIONS contains noopt + * [02c0ea3] ship account autoconfig file for Riseup Networks (riseup.net) + (Closes: #577616) + * [e710d08] suggest libgssapi-krb5-2 for Kerberos login possibility + * [7609291] build a shared icedove binary. This avoid crashes because of + mixed functions from system and icedove itself (e.g. str2charray from + libldap_r-2.4.so.2 and libldap60.so). (Closes: #578916) + * [68f4b49] downgrade gnome stuff from Recommends to Suggests + (Closes: #579714) + * [bcff10b] install mailViews.dat into usr/share/icedove/defaults/messenger + + -- Christoph Goehre Fri, 14 May 2010 22:21:32 +0200 + +icedove (3.0.4-2) unstable; urgency=low + + * [57f0a8b] remove icedove-3.0 transitional package (Closes: #576741) + * [8008231] remove wrong mime types in desktop file + * [a12edde] set StartupWMClass in desktop file to Icedove-bin + * [7512224] extend package description of icedove, icedove-dev and + icedove-dbg + * [7e725b9] fix FTBFS on alpha by passing '-Wl,--no-relax' to gcc + * [92d3515] Switch to dpkg-source 3.0 (quilt) format + * [14d5894] rebuild patch queue from patch-queue branch + added patches: + - 0046-add-missing-headers-for-icedove-dev-package.patch (Closes: #577021) + modified patches: + - 0012-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0020-Work-around-FTBFS-on-mips-by-disabling-TLS-support.patch + * [2cdd850] remove obsolete thunderbird 3.0a1pre postinst stuff + * [443f44b] process directory/c-sdk/configure with autoconf too + * [66c2f65] remove obsolete build depends librsvg2-bin and patchutils + + -- Christoph Goehre Sun, 11 Apr 2010 12:44:26 +0200 + +icedove (3.0.4-1) unstable; urgency=low + + [ Guido Günther ] + * [01983a4] Add missing message/rfc822 mime type for eml files + (Closes: #574528) + + [ Christoph Goehre ] + * New Upstream Version fixes: + - MFSA 2010-16 aka CVE-2010-0173, CVE-2010-0174: Crashes with evidence of + memory corruption (rv:1.9.2.2/ 1.9.1.9/ 1.9.0.19) + - MFSA 2010-17 aka CVE-2010-0175: Remote code execution with + use-after-free in nsTreeSelection + - MFSA 2010-18 aka CVE-2010-0176: Dangling pointer vulnerability in + nsTreeContentView + - MFSA 2010-22 aka CVE-2009-3555: Update NSS to support TLS renegotiation + indication + - MFSA 2010-24 aka CVE-2010-0182: XMLDocument::load() doesn't check + nsIContentPolicy + * upload icedove 3 to unstable (Closes: #401848, #422886, #425497, #430644, + #483550, #495522, #501113, #552617, #574188) + * rebuild patch queue from patch-queue branch: + added patches: + - 0044-don-t-remove-xpt-tools.patch + - 0045-Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + modified patches: + - 0011-fix-branding-in-migration-wizard-and-the-addon-manag.patch + - 0012-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0030-Force-better-nsAutoT-Ptr-Array-buffer-alignment.patch + - 0035-Fix-stack-alignment-on-function-calls-in-JIT-on-ARM.patch + obsolete patches (fixed upstream): + - 0021-Fix-crash-with-SwitchProxy-installed.patch + - 0023-Don-t-remove-build-automationutils.py-on-make-clean.patch + - 0039-Don-t-show-the-SVG-output-option-in-the-print-dialog.patch + * [a7f3529] Revert "disable prefetch service". This bug was already fixed in + 3.0.2 (CVE-2009-4629) and 'network.prefetch-next' has no effect in + icedove. + * [fecc0b4] install versioned build depends instead of checking on build + time + * [4806890] enable building of icedove-dev package + * [412b8ac] be more explicit on installing file into icedove package + * [23b1d4b] depends on newer version of libnspr4-dev and libnss3-dev + * [809c723] lintian: idl files didn't need to be executable + * [ecd284e] lintian: add ${shlibs:Depends} to icedove-dev package + * [da75ee2] replace/remove non-free searchplugin icons and doubtful + origin file in mozilla folder (Closes: #567917) + * [eaf405e] update /usr/lib/icedove/dictionaries symlink to point to + /usr/share/hunspell + * [fe362ba] describe profile renaming on update to icedove 3.0 + (Closes: #566329) + + -- Christoph Goehre Mon, 05 Apr 2010 21:11:42 +0200 + +icedove (3.0.3-1) experimental; urgency=low + + * New Upstream Version fixes: + - missing folders or empty folder pane after updating to version 3.0.2 + * [a69cdfd] rebuild patches from patch-queue: + - additional fix for FTBFS on kfreeBSD + * [e4bffd4] disable prefetch service (Closes: #572789) + * [3838bbe] branding files shouldn't be executable + * [3dc6688] add missing newline in logo license file + + -- Christoph Goehre Sat, 06 Mar 2010 21:48:50 +0100 + +icedove (3.0.2-1) experimental; urgency=low + + * New Upstream Version fixes: + - MFSA 2010-01 aka CVE-2010-0159: Crashes with evidence of memory + corruption (rv:1.9.1.8/ 1.9.0.18) + - MFSA 2010-03 aka CVE-2009-1571: Use-after-free crash in HTML parser + * [1fd705f] install menu file (Closes: #569166) + * [8df3f99] generate desktop files at build process + * [5b0bb84] add icedove branding logos + * [1ef1c10] copyright explanation of icedove artwork (Closes: #406849) + * [6cdc0b0] remove forgotten firefox branding icons (Closes: #567917) + * [cec6a38] swedish translation for desktop file (Closes: #420050) + * [0256328] readd translation for desktop file + * [20311f4] rebuild patches (most patches from Mike Hommey) + - fix FTBFS on kFreeBSD, hppa, mips + - stability patched for mips, alpha, sparc, ppc and arm + - really cleanup build directory on 'make clean/distclean' + - allow intl.locale.matchOS to be modified in user profile + * [0098f90] write manpage for icedove (Closes: #425490, #487493) + * [fbccfaa] no longer suggest libthai0 (Closes: #524436) + * [26d3e39] change suggests from transitional package latex-xft-fonts + to ttf-lyx (Closes: #539535) + * [e24801a] improve desktop file (remove deprecated items and + warnings/errors) + * [68885c4] bump up standards version to 3.8.4 + * [df39ede] use xpm icon in menu file to calm lintian + * [8303887] adjust sqlite version to new upstream dependency + + -- Christoph Goehre Sun, 28 Feb 2010 18:19:13 +0100 + +icedove (3.0.1-2) experimental; urgency=low + + [ Guido Günther ] + * [7ea7367] Explicitly pass build and host type to configure (Closes: + #546011) - thanks to Sven Joachim for the patch + * [7fca9e1] Add back icedove changelog of earlier versions + + [ Christoph Goehre ] + * [72b78cc] Support both - and _ separators in dictionary names - patch from + Reed Loden + * [9a96759] fix branding in migration wizard and the addon manager (Closes: + #565559)- patch from Edward J. Shornock + + -- Christoph Goehre Tue, 02 Feb 2010 20:32:24 +0100 + +icedove (3.0.1-1) experimental; urgency=low + + * New Upstream Version + * [8a2f5dc] define default options for git-import-orig + * [ac65b1b] refresh debian patches + * [851c5dc] rename binary packages to icedove (without version number) + * [6e12d1b] adjust cairo version to 1.8.8 + * [cd7cd6f] moving the old profile dir instead of copy + * [c342380] replace theme directory always by link to /usr/share if we + update to version 3 + * [c88eaa7] expansion of lib{dbusservice,mozgnome,nkgnomevfs}.so didn't work + with dpkg-shlibdeps - lets use the '-e' switch + + -- Christoph Goehre Thu, 21 Jan 2010 20:53:57 +0100 + +icedove (3.0-2) experimental; urgency=low + + * [f07e702] Add Replaces for icedove-gnome-support + * [72e66e7] Fix typo + + -- Guido Günther Fri, 08 Jan 2010 16:05:10 +0100 + +icedove (3.0-1) experimental; urgency=low + + * Final upstream version without any source code changes against RC2 + + [ Guido Günther ] + * [77d611e] Add Vcs-{Git,Browser} + * [ec7ddd6] Move VCS to where they belong + + [ Christoph Goehre ] + * [524d1f5] don't hardcode $MOZ_APP_NAME in Makefile.in file + * [0407ff3] mailclient bin called now $DEB_MOZ_APPLICATION + * [e6040b5] merge icedove-3.0-gnome-support into icedove-3.0 package + * [07417e0] install default theme and components/*.js into + /usr/share/icedove-3.0 + * [3d37478] add missed components files + * [f09cfad] add another preferences directory for applications: + preferences/syspref - thanks to Mike Hommey + * [d92e265] install debian config into /etc/icedove-3.0/pref and link + into defaults/syspref + * [18a886b] disable application update + * [76ea38a] let lockPref() in .js files work - thanks to Mike Hommey + * [e44133e] gnome-default-mail-client: check for MOZ_APP_NAME instead + for hardcoded 'thunderbird' + * [8573c8d] set DM-Upload-Allowed to yes + * [1c63920] install modules directory into /usr/share/icedove-3.0 + * [3a85ac6] add gbp.conf for easier package build with + git-buildpackage + * [7feb54a] add watch file + * [e0a1624] document how to clean upstream source code + + -- Christoph Goehre Fri, 08 Jan 2010 10:42:09 +0100 + +icedove (3.0~rc2-2) experimental; urgency=low + + [ Christoph Goehre ] + * [5b7992b] rename source package to unversioned name + * [cde3507] change Maintainer back to asac, add Uploaders Guido and me + * [978c58d] disable icedove-3.0-dev package build for now until it is fixed + upstream + * Upstream is identical to 3.0 final + + -- Guido Günther Thu, 17 Dec 2009 18:36:58 +0100 + +icedove-3.0 (3.0~rc2-1) experimental; urgency=low + + [ Christoph Goehre ] + * New Upstream Version (RC2) + - fixes 494014, 516950, 531278, 531502 in Mozilla Bugzilla + * [fc3fa5c] Revert "mark icedove-3.0-dev as transitional package for + xulrunner-dev" + + [ Guido Günther ] + * [51c1cca] Bump standards version + * [5e2a53c] Refer to versioned license + * [171f382] s/explicitely/explicitly/ + + -- Christoph Goehre Tue, 08 Dec 2009 18:46:28 +0100 + +icedove-3.0 (3.0~rc1-1) experimental; urgency=low + + * New Upstream Version (RC1) + * [cce57db] ship extracted upstream tarball in orig file + * [ee7677f] remove obsolet licence fix + * [7051ca8] install TB_ICON only once + * [4f20bb1] add unbranded preview theme icon + * [0002285] install non-binary stuff in /usr/share and link it into + /usr/lib + * [c9ce50f] get right of system myspell + * [5c96edf] remove version check for hunspell in debian/rules + * [13b57a3] mark icedove-3.0-dev as transitional package for + xulrunner-dev + * [8ecaec9] all packages need ${misc:Depends} as depends, if we use + debhelper + * [fc0dd78] dbg package must have section debug and priority extra + * [3a00f22] enable more config options and add build depends (filched from + iceape 2.0) + * [fd8e3ca] build against system sqlite if available + * [81165e1] build with 'export BUILD_OFFICIAL=1' + + -- Christoph Goehre Thu, 03 Dec 2009 10:16:46 +0100 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbp253e4ab) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:24:57 +0200 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbpefd0706) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:24:50 +0200 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbpfeeee47) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:11:10 +0200 + +icedove-3.0 (3.0~b3~hg20090505r2552-1~gbp595a0b7) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 05 May 2009 18:03:25 +0200 + +icedove-3.0 (3.0~b3~hg20090427r2499-1~gbpbeb7cd6) sid; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 27 Apr 2009 20:05:51 +0200 + +icedove-3.0 (3.0~b3~hg20090427r2499-1~gbp80a8829) sid; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 27 Apr 2009 19:56:09 +0200 + +icedove-3.0 (3.0~b3~hg20090422r2448-1~gbpd4ee3b3) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Wed, 22 Apr 2009 09:14:54 +0200 + +icedove-3.0 (3.0~b3~hg20090421r2441-1~gbp66d9bed) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 21 Apr 2009 19:35:09 +0200 + +icedove-3.0 (3.0~b3~hg20090420r2424-1~gbp47b25b8) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 20 Apr 2009 11:28:56 +0200 + +icedove-3.0 (3.0~b3~hg20090418r2418+nobinonly-1~0~gbpa19783) pkg-mozext; urgency=low + + * Initial release + + -- Guido Günther Sun, 19 Apr 2009 13:44:33 +0200 + +icedove (2.0.0.22-1.1) unstable; urgency=low + + * Non-maintainer upload. + * update /usr/lib/icedove/dictionaries symlink to point to + /usr/share/hunspell (closes: #549876) + * add $[shlibs:Depends} to iceape-dev + + -- Rene Engelhard Mon, 09 Nov 2009 17:11:50 +0100 + +icedove (2.0.0.22-1) unstable; urgency=low + + * New upstream security/stability update (v2.0.0.21/v2.0.0.22) (Closes: 535124) + * MFSA 2009-33: Crash viewing multipart/alternative message with text/enhanced part + * MFSA 2009-32 aka CVE-2009-1841: JavaScript chrome privilege escalation + * MFSA 2009-29 aka CVE-2009-1838: Arbitrary code execution using event listeners + attached to an element whose owner document is null + * MFSA 2009-27 aka CVE-2009-1836: SSL tampering via non-200 responses to proxy + CONNECT requests + * MFSA 2009-24 aka CVE-2009-1832+CVE-2009-1831: Crashes with evidence of memory + corruption (rv:1.9.0.11) + * MFSA 2009-17 aka CVE-2009-1307: Same-origin violations when Adobe Flash loaded + via view-source: scheme + * MFSA 2009-14 aka CVE-2009-1303+CVE-2009-1302: Crashes with evidence of memory + corruption (rv:1.9.0.9) + * MFSA 2009-15 aka CVE-2009-0652: URL spoofing with box drawing character + * MFSA 2009-10 aka CVE-2009-0040: Upgrade PNG library to fix memory safety hazards + * MFSA 2009-09 aka CVE-2009-0776: XML data theft via RDFXMLDataSource and cross-domain + redirect + * MFSA 2009-07 aka CVE-2009-0771,-0772,-0773,-0774: Crashes with evidence of memory + corruption (rv:1.9.0.7) + * MFSA 2009-01 aka CVE-2009-0352,CVE-2009-0353 Crashes with evidence of memory + corruption (rv:1.9.0.6) + * adjust patches to changed codebase + - update debian/patches/ubuntu-mail-app-xre-name + + -- Alexander Sack Wed, 01 Jul 2009 12:18:03 +0200 + +icedove (2.0.0.19-1) unstable; urgency=medium + + * New upstream security/stability update (v.2.0.0.18/2.0.0.19) Closes: 505563 + 2.0.0.18: + * MFSA 2008-48 aka CVE-2008-5012 - Image stealing via canvas and HTTP + redirect + * MFSA 2008-50 aka CVE-2008-5014 - Crash and remote code execution via + __proto__ tampering + * MFSA 2008-52 aka CVE-2008-5017 - Crashes with evidence of memory + corruption (rv:1.9.0.4/1.8.1.18); Browser engine crash in "Firefox 2 + and 3" + * MFSA 2008-52 aka CVE-2008-5018 - Crashes with evidence of memory + corruption (rv:1.9.0.4/1.8.1.18); JavaScript engine crash - "Firefox 2 + and 3" + * MFSA 2008-55 aka CVE-2008-5021 - Crash and remote code execution in + nsFrameManager + * MFSA 2008-56 aka CVE-2008-5022 - nsXMLHttpRequest::NotifyEventListeners() + same-origin violation + * MFSA 2008-58 aka CVE-2008-5024 - Parsing error in E4X default namespace + * MFSA 2008-59 aka CVE-2008-4582 - Script access to .documentURI and + .textContent in mail + 2.0.0.19: + * MFSA 2008-60 aka CVE-2008-5500 - Crashes with evidence of memory + corruption (rv:1.9.0.5/1.8.1.19); Layout engine crashes - Firefox 2 and 3 + * MFSA 2008-61 aka CVE-2008-5503 - Information stealing via + loadBindingDocument + * MFSA 2008-64 aka CVE-2008-5506 - XMLHttpRequest 302 response disclosure + * MFSA 2008-65 aka CVE-2008-5507 - Cross-domain data theft via script + redirect error message + * MFSA 2008-66 aka CVE-2008-5508 - Errors parsing URLs with leading + whitespace and control characters + * MFSA 2008-67 aka CVE-2008-5510 - Escaped null characters ignored by CSS + parser + * apply Maintainers, Uploaders changes done in 2.0.0.17 upload to + debian/control + - update debian/control + * adjust/refresh patches to changed upstream code + - update debian/patches/moz-app-name-as-mail-binary-name + - update debian/patches/autoconf2.13-rerun + + -- Alexander Sack Sat, 03 Jan 2009 16:27:42 +0100 + +icedove (2.0.0.17-1) unstable; urgency=low + + * New upstream security/stability update (v.2.0.0.17), Closes: #500721 + * MFSA 2008-37 aka CVE-2008-0016 - UTF-8 URL stack buffer overflow + * MFSA 2008-38 aka CVE-2008-3835 - nsXMLDocument::OnChannelRedirect() + same-origin violation + * MFSA 2008-41 aka CVE-2008-4058, CVE-2008-4059, CVE-2008-4060 - Privilege + escalation via XPCnativeWrapper pollution + * MFSA 2008-42 aka CVE-2008-4061, CVE-2008-4062, CVE-2008-4063, + CVE-2008-4064 - Crashes with evidence of memory corruption + (rv:1.9.0.2/1.8.1.17) + * MFSA 2008-43 aka CVE-2008-4065, CVE-2008-4066 - BOM characters, low + surrogates stripped from JavaScript before execution + * MFSA 2008-44 aka CVE-2008-4067, CVE-2008-4068 - resource: traversal + vulnerabilities + * MFSA 2008-46 aka CVE-2008-4070 - Heap overflow when canceling newsgroup + message + + [ Michael Casadevall ] + * debian/control: + - Changed maintainer to Ubuntu Mozillateam + - Added Uploaders to the team + - Set DM-Upload-Allowed + - Bumped standards version to 3.8.0 + + [ Alexander Sack ] + * Closes: #497491 - Icedove inappropriately sets file-/MIME-type + associations in .desktop database; we drop the Mime-Type= entry + from debian/icedove.desktop + - update debian/icedove.desktop + + -- Michael Casadevall Sat, 18 Oct 2008 09:07:20 -0400 + +icedove (2.0.0.16-1) unstable; urgency=low + + * New upstream security/stability update (v2.0.0.16) fixes: + * MFSA 2008-21 aka CVE-2008-2798 - Crashes with evidence of memory + corruption + * MFSA 2008-21 aka CVE-2008-2799 - Crashes with evidence of memory + corruption + * MFSA 2008-24 aka CVE-2008-2802 - Chrome script loading from fastload file + * MFSA 2008-25 aka CVE-2008-2803 - Arbitrary code execution in + mozIJSSubScriptLoader.loadSubScript() + * MFSA 2008-26 aka CVE-2008-0304 - (followup) Buffer length checks in MIME + processing + * MFSA 2008-29 aka CVE-2008-2807 - Faulty .properties file results in + uninitialized memory being used + * MFSA 2008-31 aka CVE-2008-2809 - Peer-trusted certs can use alt names to + spoof + * MFSA 2008-33 aka CVE-2008-2811 - Crash and remote code execution in block + reflow + * MFSA 2008-34 aka CVE-2008-2785 - Remote code execution by overflowing CSS + reference counter + + * Closes: #483938 - add .desktop file translations (contributed by Timo + Jyrinki ) + - update debian/icedove.desktop + + (cherry pick rev77 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * drop patches applied upstream + - drop debian/patches/bz419350_attachment_306066.patch + - update debian/patches/series + + (cherry pick rev78 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * adjust patches diverged upstream + - update debian/patches/ubuntu-look-and-feel-report-a-bug-menuitem + + (cherry pick rev80 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * Closes: #489093 - add explicit -lfontconfig to linker flags used for gfx/ps + module to fix ftbfs in intrepid + - add debian/patches/bzXXX_ftbfs_fontconfig.patch + - update debian/patches/series + + -- Alexander Sack Thu, 24 Jul 2008 17:38:51 +0200 + +icedove (2.0.0.14-1) unstable; urgency=medium + + * Upstream stability/security release, fixes + + MFSA 2008-15 aka CVE-2008-1236 - Crashes with evidence of memory corruption + (rv:1.8.1.13) - browser engine + + MFSA 2008-15 aka CVE-2008-1237 - Crashes with evidence of memory corruption + (rv:1.8.1.13) - javascript engine + + MFSA 2008-14 aka CVE-2008-1233, CVE-2008-1234, CVE-2008-1235 - JavaScript + privilege escalation and arbitrary code execution + * update debian/remove.nonfree script to pull branding from bzr branch hosted + at https://code.edge.launchpad.net/~mozillateam/thunderbird/icedove-branding-2.0.0.x + - update debian/remove.nonfree + * fix fallback https handler by adding pref("network.protocol-handler.app.https", + "x-www-browser") to default system preference file. (Closes: #460954) + - update debian/icedove.js + * drop patches applied upstream: + - delete debian/patches/bz399589_fix_missing_symbol_with_new_nss.patch + - update debian/patches/series + * fix broken reply-to-list extension (Closes: #439369) + - add debian/patches/replytolist_2.x.patch + - update debian/patches/series + * fix ftbfs on ia64 (Closes: #477281) + - add debian/patches/bz419350_attachment_306066.patch + - update debian/patches/series + * drop forced use of gcc/g++ 4.2 and use default compiler again; in turn we + drop gcc-4.2 and g++-4.2 from Build-Depends + - update debian/control + - update debian/rules + + -- Alexander Sack Fri, 09 May 2008 17:57:55 +0200 + +icedove (2.0.0.12-1) unstable; urgency=low + + * New Upstream stability/security release, fixes various advisories: + + CVE-2008-0416 aka MFSA 2008-13 Multiple XSS vulnerabilities from + character encoding + + CVE-2008-0304 aka MFSA 2008-12 Heap buffer overflow in external MIME + bodies + + CVE-2008-0418 aka MFSA 2008-05 Directory traversal via chrome: URI + + CVE-2008-0415 aka MFSA 2008-03 Privilege escalation, XSS, Remote Code + Execution + + CVE-2008-0412 and CVE-2008-0413 aka MFSA 2008-01 Crashes with evidence + of memory corruption (rv:1.8.1.12) - layout and javascript + * Fix severe problems for powerpc architecture, by reverting arch-detect + patch to introduce special behaviour only when FORCE_USE_HOST_OS is set in + environment. For now only s390 is special cased in rules - as thats the + architecture we introduced this patch for (Closes: #461981). + - update debian/rules + - debian/patches/arch-detect + * fix "FTBFS with libnss3-dev=3.12.0~beta2-1" by introducing symbols not + exported by new nss anymore. Reuse thunderbird patch from ubuntu. + (Closes: #470128) + - added debian/patches/bz399589_fix_missing_symbol_with_new_nss.patch + - update debian/patches/series + * add Vcs-Bzr: header to control pointing to the mozillateam packaging + branch https://code.launchpad.net/~mozillateam/thunderbird/icedove-2.0.0.x + - update debian/control + * introduce .autoreg feature and touch /usr/lib/icedove/.autoreg in + icedove-gnome-support.postinst and icedove-gnome-support.prerm iif that + file exists. + - update debian/rules + - added debian/icedove-gnome-support.postinst + - added debian/icedove-gnome-support.prerm + * Adjust multiple patches because of changed upstream code base + - update debian/patches/ubuntu-mail-app-xre-name + - update debian/patches/autoconf2.13-rerun + + -- Alexander Sack Sat, 05 Apr 2008 23:05:11 +0200 + +icedove (2.0.0.9-3) unstable; urgency=low + + * drop network.protocol-handler.external.http setting as it caused + regressions (Closes: 459564) + - update debian/icedove.js + + -- Alexander Sack Wed, 09 Jan 2008 18:56:28 +0100 + +icedove (2.0.0.9-2) unstable; urgency=low + + * pass host arch information to configure and trust the supplied architecture + information. Thanks to Bastian Blank. (Closes: 445959) + - update debian/rules + - add debian/patches/arch-detect + - update debian/patches/autoconf2.13-rerun + - update debian/patches/series + * use /usr/lib/icedove/icedove as gnome integration command used to update + gconf protocol handler. (Closes: 452919) + - add debian/patches/icedove_gnome_command + - update debian/patches/series + * prefer gnome registry to lookup protocol handler if we are in a gnome + session; in turn we enable x-www-browser as the http protocol by default + (Closes: 452882) + - add debian/patches/prefer_gnome_registry_in_gnome_session + - update debian/patches/series + - update debian/icedove.js + + -- Alexander Sack Sun, 30 Dec 2007 20:21:26 +0100 + +icedove (2.0.0.9-1) unstable; urgency=medium + + * new upstream stability/security update (v2.0.0.9): + - MFSA 2007-36 aka CVE-2007-4841: "URIs with invalid %-encoding mishandled + by Windows" + - MFSA 2007-29 aka CVE-2007-5339: "Crashes with evidence of memory + corruption (rv:1.8.1.8) - browser engine" + - MFSA 2007-29 aka CVE-2007-5340: "Crashes with evidence of memory + corruption (rv:1.8.1.8) - javascript engine" + * adapt adapt patches to new upstream codebase: + - drop debian/patches/bz389801_deb443454_fix_gtk_theme_crashes.patch + - update debian/patches/68_mips_performance.dpatch + - update debian/patches/series + - update debian/patches/autoconf2.13-rerun + * fix ftbfs due to changed cairo pc Requires: (Closes: 453179) + - add debian/patches/bz344818_att264996.patch + - update debian/patches/autoconf2.13-rerun + - update debian/patches/series + * add copyright file (Closes: 453365) + - add debian/copyright + * quote some if test ! ... lines to fix preinst errors (Closes: 427336) + - update debian/icedove.preinst + * update icedove menu section - use "Applications/Network/Communication" + (Closes: 444903) + - update debian/icedove.menu + * don't try to install debian/tmp/usr/lib/icedove/defaults/isp as its not + shipped by make install anymore + - update debian/icedove.install + + -- Alexander Sack Fri, 28 Dec 2007 16:05:05 +0100 + +icedove (2.0.0.6-1) unstable; urgency=low + + * new upstream release 2.0.0.6-1 fixes various security issues + (Closes: #444010): + - MFSA 2007-18 aka CVE-2007-3734, CVE-2007-3735 - Crashes with evidence of + memory corruption (rv:1.8.1.5). + - MFSA 2007-23 aka CVE-2007-3670 - Remote code execution by launching + Firefox from Internet Explorer (doesn't apply to linux). + - MFSA 2007-26 aka CVE-2007-3844 - Privilege escalation through + chrome-loaded about:blank windows. + - MFSA 2007-27 aka # CVE-2007-3845 - Unescaped URIs passed to external + programs. + * debian/patches/debian/patches/credits-rebranding: refresh patch because of + code-base change in new upstream release. + * debian/patche/bz389801_deb443454_fix_gtk_theme_crashes.patch,series: + import fix for theme crashes from bugzilla (Closes: 443454). + + -- Alexander Sack Mon, 08 Oct 2007 12:09:42 +0000 + +icedove (2.0.0.4.dfsg1-2) unstable; urgency=low + + * debian/patches/autoconf2.13-rerun: rerun to apply last commits + configure.in patch addition to configure. + * debian/patches/force-no-pragma-visibility-for-gcc-4.2_4.3, + debian/patches/series: don't use pragma for visibility as visibility + hints are not perfect yet in mozilla code base. + * debian/icedove.desktop: drop explicit .png extension from desktop icon name + * debian/icedove.desktop, debian/icedove.links, debian/icedove.menu: fix various + icon issues, by using /usr/share/icedove/icons/default.png instead of + mozicon128.png as source for standard icedove pixmaps link + (Closes: #427076, #437064, #437090). + * debian/control, debian/rules: use gcc-4.2 and g++-4.2 on all archs; add gcc-4.2 + and g++-4.2 to build-depends in control file. + * debian/icedove.links: provide usr/share/icedove/chrome/icons/default/messengerWindow16.png + as a link to usr/share/icedove/icons/mozicon16.png (Closes: #427723). + * debian/icedove.install, debian/icedove.links: install isp directories + /usr/share/icedove/isp and /usr/share/icedove/defaults/isp and link them to + pkglibdir accordingly (Closes: #428421). + + -- Alexander Sack Mon, 27 Aug 2007 23:48:53 +0200 + +icedove (2.0.0.4.dfsg1-1) unstable; urgency=low + + * debian/remove.nonfree: update list of non-free/binary-only file from + latest iceape updates" debian/remove.nonfree; update orig + tarball accordingly. (Closes: 400340) + * debian/control[.in]: icedove package now provides mail-reader, + imap-client, news-reader instead of www-browser (Closes: 425167) + + -- Alexander Sack Tue, 19 Jun 2007 15:00:12 +0200 + +icedove (2.0.0.4-1) unstable; urgency=low + + * stability/security upstream release 2.0.0.4 + - CVE-2007-2867 aka MFSA 2007-12 (l): Crashes with evidence of memory + corruption (rv:1.8.0.12/1.8.1.4) - layout engine + - CVE-2007-2868 aka MFSA 2007-12 (j): Crashes with evidence of memory + corruption (rv:1.8.0.12/1.8.1.4) - javascript engine + - CVE-2007-1558 aka MFSA 2007-15: Security Vulnerability in APOP + Authentication + * debian/patches/gcc-workaround-visibility-hidden, debian/patches/series: + applied upstream -> dropped visibility workaround patch + * debian/patches/gnome-mime-handling: updated patch for bz273524 in + response to upstream landing of bz373955 + * debian/patches/autoconf-regen: rerun autoconf accordingly + * debian/patches/82_prefs.dpatch|series: import default font fixes + from xulrunner 1.8.1.4-1 patchset (thanks to Mike Hommey + ) + * debian/control[.in]: libnss3-dev build-depend is now versioned + (Closes: 429202) + + -- Alexander Sack Mon, 18 Jun 2007 16:50:34 +0200 + +icedove (2.0.0.0-4) unstable; urgency=low + + * One that fix them all release - maybe. + * fix symlinks for chrome/greprefs/defaults in .preinst + (Closes: 425390, 425438, 425476, 425479, 425550, 425552, 425559, 425564, 425672, 425727, 426019) + * debian/control[.in]: fix section -> s/web/mail/ + + -- Alexander Sack Fri, 1 Jun 2007 13:13:13 +0200 + +icedove (2.0.0.0-3) unstable; urgency=low + + * fixing links in preinst (Closes: 424963, 425061, 425223) + greprefs, chrome and defaults need to point to + /usr/share/icedove/* + * drop searchplugin link which even had a typo :) + * debian/icedove.menu: ship debian menu entry + (Closes: 425224) + + -- Alexander Sack Sat, 20 May 2007 16:48:00 +0200 + +icedove (2.0.0.0-2) unstable; urgency=low + + * adding icedove-dbg package + + -- Alexander Sack Sat, 19 May 2007 17:33:00 +0200 + +icedove (2.0.0.0-1) unstable; urgency=low + + * icedovising + * add debian/remove.nonfree + * set upstream application fixed to 'thunderbird' in update-orig, + so you can just drop thunderbird tarball and produce new orig + * fix debian/control.in, drop transition packages. update debian/control + for these modifications. + * no autogen of configure and debian/control for release + + -- Alexander Sack Thu, 17 May 2007 14:00:00 +0200 + +thunderbird (1.99.rc1+2.0-1) feisty; urgency=low + + * branch firefox-trunk package for 2.0 thunderbird package + * debian/control.in, debian/control: add transition packages: + mozilla-thunderbird, mozilla-thunderbird-dev; disable dom-inspector + package as there is nearly no hope that it ever will get maintained + upstream again. + * debian/rules: remove inspector extension from configure; add excludes + to dh_install of thunderbird and thunderbird-dev package: + - + DEB_DH_INSTALL_ARGS_thunderbird := -Xgnome -Ximgicon -Xmozlibthai + DEB_DH_INSTALL_ARGS_thunderbird-dev := -Xnspr -Xnss + + -- Alexander Sack Wed, 18 Apr 2007 13:35:34 +0200 + +icedove (1.5.0.10.dfsg1-3) unstable; urgency=low + + * debian/icedove*.xpm updated to use correct icon + (Closes: 413976, 416476) + * debian/patches/25_gnome_helpers_with_params.dpatch: + Make helper applications with parameters work (bz#273524); + this is an improved version of bugzilla patch by Mike Hommey + + + -- Alexander Sack Wed, 28 Mar 2007 21:55:08 +0200 + +icedove (1.5.0.10.dfsg1-2) unstable; urgency=low + + * debian/tmpls-typeaheadfind/install.rdf: fix version depends of + typeaheadfind (Closes: 413770) + + -- Alexander Sack Wed, 7 Mar 2007 13:13:13 +0100 + +icedove (1.5.0.10.dfsg1-1) unstable; urgency=low + + * new upstream release fixing security issues: + - CVE-2007-0008, MFSA 2006-06: SSLv2 Client Integer Underflow + Vulnerability + - CVE-2007-0009, MFSA 2006-06: SSLv2 Server Stack Overflow + Vulnerability + - CVE-2007-0775, CVE-2007-0776, CVE-2007-0777, MFSA 2007-01: + Crashes with evidence of memory corruption + * 91_credits_icedove.dpatch: dump new xml entities from + credits dialog (Closes: 404984, 412423) + * 50_kbsd_nspr.dpatch, 50_kbsd.dpatch: adapt kbsd patches to apply to + latest upstream code-base + + [ Christian Perrier ] + + * Rewrite debconf templates to fit the current Developer's Reference + recommendations + * Correct the name of the debconf templates file in debian/po/POTFILES.in + Closes: #407220 + * Debconf translations: + - Bulgarian added. Closes: #410627 + - Basque updated. Closes: #410633 + - German updated. Closes: #410672 + - Catalan updated. Closes: #410676 + - Spanish updated. Closes: #410709 + - Galician updated. Closes: #410720, #407944 + - Japanese updated. Closes: #410753 + - Tamil added. Closes: #410892 + - Portuguese updated. Closes: #409562 + - Vietnamese updated. + - Malayalam added. Closes: #408109 + - Russian updated. Closes: #411064, #405741 + - Swedish. Closes: #410632 + - Polish. Closes: #411302 + - Fix typo in Italian translation. Closes: #363806 + - Romanian. Closes: #411361 + - Czech. Closes: #411409 + - Danish. Closes: #411402 + - Dutch. Closes: #411406 + - Italian. Closes: #411452 + - Brazilian Portuguese. Closes: #411538 + - Korean. Closes: #411624, #411581 + - Malayalam. Closes: #411647 + - Finnish. Closes: #411765 + + -- Alexander Sack Fri, 23 Feb 2007 09:00:00 +0100 + +icedove (1.5.0.10.dfsg1-1.1) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n issues. + * Debconf translations: + - Italian fixed. Closes: #363806 + - Russian added. Closes: #405741 + - Galician added. Closes: #407944 + - Malayalam added. Closes: #408109 + - Portuguese updated. Closes: #409562 + + -- Christian Perrier Tue, 6 Feb 2007 06:55:08 +0100 + +icedove (1.5.0.9.dfsg1-1) unstable; urgency=high + + * new upstream version, fixes various security issues: + - CVE-2006-6497 mfsa2006-68 layout engine + - CVE-2006-6498 mfsa2006-68 javascript engine + - CVE-2006-6499 mfsa2006-68 floating point + - CVE-2006-6500 mfsa2006-69 + - CVE-2006-6501 mfsa2006-70 + - CVE-2006-6502 mfsa2006-71 + - CVE-2006-6503 mfsa2006-72 + - CVE-2006-6504 mfsa2006-73 + - CVE-2006-6505 mfsa2006-74 + - CVE-2006-6506 mfsa2006-75 + - CVE-2006-6507 mfsa2006-76 + * landing icedove artwork contributed by Ricardo Fernández + ; svgs are in debian/branding. xpms and some + pngs are generated with rsvg-convert and convert -> adding + build-depends to librsvg2-bin, imagemagick + * including es.po translation contributed by Felipe Caminos + (Closes: 402928) + * updateing pt_BR.po provided by André Luís Lopes + (Closes: 403827) + * adapting credits dialog and Icedove Motto in 91_credits_icedove.dpatch + * fix bad link in icedove manpage (icedove.sgml) (Closes: 398344) + * rebranding install.rdf of default theme for icedove in + 91_rebranding_theme.dpatch (Closes: 393134) + * adapt README.Debian to new icedove directories and name + * clean old/not-needed files from debian/ directory: + theme.part.defaultclassic, mail-jar.mn, messenger_jar_includes.csv + * disabling patch: 99_bz360409_deb400383, which is applied + upstream now. + + -- Alexander Sack Tue, 19 Dec 2006 12:00:00 +0100 + +icedove (1.5.0.8.dfsg1-1) unstable; urgency=medium + + * removing all currently known non-free and sourceless binaries + from source package by running the script included for + reference in debian/remove.nonfree from the gnuzilla project + (Closes: 400340) + * added upstream approved quickfix for grave bug in + debian/patches/99_bz360409_deb400383.dpatch (Closes: 400383) + * last chance kbsd upload ... reenabling kbsd patch with fix + by Petr Salinger (Closes: 399692) + * remove missed non-free icons from + debian/fhunderbird-branding.tmpl/ : background.png.uu, disk.icns.uu + + -- Alexander Sack Sun, 26 Nov 2006 19:00:00 +0100 + +icedove (1.5.0.8-3) unstable; urgency=low + + * disable kbsd patches in 00list because they appear to break + build on other platforms. In consequence, 399692 and 363865 + will be reopened. Reenable 90_ppc64-build-fix (Closes: 400090) + + -- Alexander Sack Mon, 22 Nov 2006 15:10:00 +0100 + +icedove (1.5.0.8-2) unstable; urgency=low + + * fix mozilla.in for real (for transitional thunderbird link + (Closes: 393123, 398037) + * apply basque debconf translation (eu.po) for real + (Closes: 398468) + * included nl.po provided by Nick Niktaris + renaming as icedove first (Closes: 378360) + * include greek translation in icedove.desktop provided by + Nick Niktaris (Closes: 384359) + * include updated de.po translation provided by + Alwin Meschede (Closes: 399083) + * apply FTBFS on GNU/kFreeBSD porters patch provided by + Petr Salinger (Closes: 399692), + which is claimed to provide a fix for ppc64 ftbfs too + (Closes: 363865) + * remove debug echo from icedove.preinst (Closes: 399723) + + -- Alexander Sack Mon, 21 Nov 2006 19:35:00 +0100 + +icedove (1.5.0.8-1) unstable; urgency=medium + + * new upstream version fixes various security issues + * added transition package: thunderbird-gnome-support + -> icedove-gnome-support as well as thunderbird-dbg + -> icedove-dbg (Closes: 393105) + * fix typo in postinst to fix browser integration scheme + recognition as selected by debconf (Closes: 393765, 398427) + * apply patch by Ted Percival to fix broken + transitional thunderbird symlink (Closes: 393123, 398037) + * apply patch by Andre Lehovich that fixes + icedove package description typos (Closes: 398468) + * add basque debconf translation (eu.po) provided by Piarres + Beobide (Closes: 398719) + * remove non-free rfc files from source tarball (Closes: 395095) + + -- Alexander Sack Wed, 15 Nov 2006 18:00:00 +0100 + +icedove (1.5.0.7-3) unstable; urgency=medium + + * unbrand thunderbird mail -> Icedove Mail/News due + to trademark issues (Closes: 354622) + + -- Alexander Sack Thu, 12 Oct 2006 13:00:00 +0100 + +thunderbird (1.5.0.7-2) unstable; urgency=low + + * go through new upload ... reenable thunderbird-dbg + * increase reference count for fontconfig charset + 91_fontconfig_reference_increment_388739 (Closes: 388739) + + -- Alexander Sack Wed, 27 Sep 2006 02:00:00 +0100 + +thunderbird (1.5.0.7-1) unstable; urgency=high + + * disabled new package to avoid queue new: thunderbird-dbg + * new upstream release fixes security issues: + + MFSA 2006-64 - CVE-2006-4571 + + MFSA 2006-63 - CVE-2006-4570 + + MFSA 2006-62 - CVE-2006-4569 + + MFSA 2006-61 - CVE-2006-4568 + + MFSA 2006-60 - CVE-2006-4340 (related to CVE-2006-4339) + + MFSA 2006-59 - CVE-2006-4253 + + MFSA 2006-58 - CVE-2006-4567 + + MFSA 2006-57 - CVE-2006-4565, CVE-2006-4566 + * disable patch 90_gcc-extern-fix, because it has been pulled in upstream + * disable 91_271815.overthespot.v1.2, because applied upstream + + -- Alexander Sack Fri, 15 Sep 2006 16:00:00 +0100 + +thunderbird (1.5.0.5-2) unstable; urgency=low + + * new package: thunderbird-dbg + + improve configure options + + enable svg + + use debian build options to determine optimization flags + * added build depends on libcairo-dev + + -- Alexander Sack Sat, 12 Aug 2006 15:00:00 +0100 + +thunderbird (1.5.0.5-1) unstable; urgency=high + + * new upstream release fixes various security flaws: + + MFSA 2006-44, CVE-2006-3801 + + MFSA 2006-46, CVE-2006-3113 + + MFSA 2006-47, CVE-2006-3802 + + MFSA 2006-48, CVE-2006-3803 + + MFSA 2006-49, CVE-2006-3804 + + MFSA 2006-50, CVE-2006-3805, CVE-2006-3806 + + MFSA 2006-51, CVE-2006-3807 + + MFSA 2006-52, CVE-2006-3808 + + MFSA 2006-53, CVE-2006-3809 + + MFSA 2006-54, CVE-2006-3810 + + MFSA 2006-55, CVE-2006-3811 + * including patch 91_271815.overthespot.v1.2.dpatch + (Closes: 379936, 363814) + * improve manpage: Document -g, --debug options (Closes: 381096) + * update for ja.po, contributed by Kenshi Muto + (Closes: 379946) + * update for pt.po, contributed by Rui Branco + (Closes: 381444) + * Provide virtual package news-reader (Closes: 363834) + * Apply patch which introduces ReplyToList MessageType. This is + the base to allow extensions that provide ReplyToList button to + get installed. Thanks to Armin Berres + for pointing out this unintrusive patch. (Closes: 381273) + * fix README.Debian for firefox integration as well as example of + global pref.js (firefox.js.tmpl) (Closes: 363723) + * further improvements for README.Debian + * fix gnome integration program path in a hard-coded fashion + in 91_gnome_path_fix.dpatch (Closes: 365610) + + -- Alexander Sack Sat, 12 Aug 2006 15:00:00 +0100 + +thunderbird (1.5.0.4-3) unstable; urgency=critical + + * fixing gcc-4.1 ftbfs (Closes: 377176) + * improved manpage by Bastian Kleineidam + documenting -safe-mode option (Closes: 370254) + * include *no xgot* patch for mips/mipsel contributed by + Thiemo Seufer (Closes: 374882) + + -- Alexander Sack Thu, 13 Jul 2006 15:00:00 +0100 + +thunderbird (1.5.0.4-2) unstable; urgency=critical + + * fix version in install.rdf for inspector and + typeaheafind (Closes: 374382) + * (last one was a new upstream release fixing + various security issues (Closes: 373878, 373553) + * urgency=critical + + -- Alexander Sack Mon, 19 Jun 2006 10:00:00 +0100 + +thunderbird (1.5.0.4-1) unstable; urgency=low + + * new upstream release fixing various security issues: + MFSA 2006-42, CVE-2006-2783: Web site XSS using BOM on UTF-8 pages + MFSA 2006-40, CVE-2006-2781: Double-free on malformed VCard + MFSA 2006-38, CVE-2006-2778: Buffer overflow in crypto.signText() + MFSA 2006-37, CVE-2006-2776: Remote compromise via content-defined + setter on object prototypes + MFSA 2006-35, CVE-2006-2775: Privilege escalation through XUL persist + MFSA 2006-33, CVE-2006-2786: HTTP response smuggling + MFSA 2006-32, CVE-2006-2779, CVE-2006-2780: Fixes for crashes with + potential memory corruption + MFSA 2006-31, CVE-2006-2787: EvalInSandbox escape (Proxy Autoconfig, + Greasemonkey) + * build depends: + + xorg-dev -> libx11-dev, libxt-dev, libxinerama-dev, + libxft-dev, libfreetype6-dev, libxrender-dev + + removed binutils, coreutils and po-debconf + * enable xinerama in debian/rules + * fixed lintian errors: + + do not depend on xorg dev meta package + + debhelper depend is now versioned + + changed package description(s) to not start with 'thunderbird' + + -- Alexander Sack Tue, 23 May 2006 15:00:00 +0100 + +thunderbird (1.5.0.2-3) unstable; urgency=low + + * patch-robbery from firefox package: + + removed old mips and arm patches + + added 50_arch_arm_fix + + added 50_arch_alpha_fix + + added 50_arch_m68k_fix + + added 50_arch_mips_Makefile_fix + + added 50_arch_mips_fix (Closes: 357755) + + added 50_arch_parisc_Makefile_fix + + added 50_arch_parisc_fix + * included install.rdf for default theme in extensions dir + (Closes: 363956) + * removed chrome.d locales.d extensions.d from var/lib/thunderbird + + -- Alexander Sack Tue, 16 May 2006 19:45:00 +0100 + +thunderbird (1.5.0.2-2) unstable; urgency=critical + + * debian/thunderbird.sgml. Greatly improved manpage for thunderbird, + thanks to Sam Morris for contributing this + (Closes: 361069) + * add missing build depend to sharutils to fix ftbfs (Closes: 365539) + * fix gnome-support package removing gnome dependencies from + pure thunderbird package. + * set urgency to critical which I forgot to set properly + for the last upload + + -- Alexander Sack Sat, 29 Apr 2006 14:00:00 +0100 + +thunderbird (1.5.0.2-1) unstable; urgency=low + + * removed enable xprint in order to build after X11R7 transition. + * removed xprint recommends from control file. + * 91_fontsfix_359763.dpatch: fix for 'thunderbird shows text illegibly' + for some encodings. (Closes: 359763) + * myspell is now depends (Closes: 357623) + * (re-)including 10_mips_optimization_patch + * debian/patches/90_ppc64-build-fix.dpatch: patch for + 'FTBFS (ppc64)', thanks to Andreas Jochens + for adding the final patch to the report. (Closes: 361036) + * Thanks to Bastian Kleineidam for + contributing: + * Standards version 3.6.2.1 + * Use debhelper v5 with debian/compat + * Remove unneeded thunderbird.conffiles now that debhelper v5 is used + * Remove CVS directories in debian/ + * Fix debian/changelog syntax errors, and convert to UTF-8 + * Fix bashism in debian/thunderbird.postrm, using 2> instead of &>. + * Add ${misc:Depends} to thunderbird* dependencies, fixing a missing + dependency on debconf + * Move db_input commands from postinst into a separate thunderbird.config + file. + * distinct gnome-support package added. adds a good bunch + of gnome build depends to allow module linking against + gnome libs. + * added new fhunderbird-branding in debian/fhunderbird-branding.tmpl + (Closes: 358198) + * use only one profile directory in configure + (Closes: 358378) + * Various security issues are fixed in this release. Namely: + CVE-2006-1741 CVE-2006-1742 CVE-2006-1737 CVE-2006-1738 + CVE-2006-1739 CVE-2006-1740 CVE-2006-1736 CVE-2006-1735 + CVE-2006-1734 CVE-2006-1733 CVE-2006-1732 CVE-2006-0749 + CVE-2006-1731 CVE-2006-1724 CVE-2006-0884 CVE-2006-1730 + CVE-2006-1729 CVE-2006-1728 CVE-2006-1727 CVE-2006-1045 + CVE-2006-0748 CVE-2006-1726 CVE-2006-1725 CVE-2005-2353 + CVE-2006-1529 CVE-2006-1530 CVE-2006-1531 CVE-2006-1723 + CVE-2006-0292/CVE-2006-0293 (Closes: 349242) + CVE-2006-0294 CVE-2006-0295 CVE-2006-0296 CVE-2006-0297 + CVE-2006-0298 CVE-2006-0299 + + -- Alexander Sack Thu, 20 Mar 2006 21:00:00 +0100 + +thunderbird (1.5-4) unstable; urgency=low + + * great package renaming release: mozilla-thunderbird -> thunderbird + * removed not maintained and not needed update-mozilla-thunderbird + facilities. Extensions/locales etc. don't need to call this anymore + in order to install themselves globally. + * added -fno-strict-aliasing -fno-unsigned-char as parameters to build + * patch: 10_visibility_hidden_patch.dpatch - by Adam Conrad + * new upstream version fixes various bugs + (Closes: 288601, 291912, 295662) + * included new fr.po translation by Mohammed Adnène Trojette + (Closes: 323367) + * included new cs.po translation by Jan Outrata + (Closes: 321736, 335354) + * included new pt.po translation by Traduz! + (Closes: 348440) + * included new da.po translation by Claus Hindsgaul + (Closes: 350687) + * added intl.locale.matchOS, true to debian/global-config.js instead + of hacking startup script + + -- Alexander Sack Tue, 28 Feb 2006 15:00:00 +0100 + +mozilla-thunderbird (1.5-2) experimental; urgency=low + + * reenable patch 20_mailnews_mime_makefile_in.dpatch + to export proper headers to -dev package for enigmail + * last upload with old package name + + -- Alexander Sack Thu, 12 Jan 2006 15:00:00 +0100 + +mozilla-thunderbird (1.5-1) experimental; urgency=low + + * experimental upload of 1.5 (Closes: 348007) + * major package housekeeping + + removed extension template pieces + + bye -offline extension release - this is now completely + integrated in thunderbird default install + + disable all patches ... but those that are obviously + needed - please shout if you got struck by a regression + due to this :). + + use upstream startup script in the hope that they + did fix it! + + branding removed again. Keep it white labeled - for + now. + + -- Alexander Sack Thu, 12 Jan 2006 15:00:00 +0100 + +mozilla-thunderbird (1.0.7-3) unstable; urgency=high + + * apply backported patch for amd64 (Closes: 332481,332484) + Thanks to Martin Sarsale + for testing and preparing the patch + + debian/patches/91_gcc4_imgLoader.fix.dpatch + * updated vietnam translation contributed by Clytie Siddall + (Closes: 324224) + * added swedish translation contributed by Daniel Nylander + (Closes: 331606) + + -- Alexander Sack Mon, 17 Oct 2005 23:30:00 +0100 + +mozilla-thunderbird (1.0.7-2) unstable; urgency=high + + * still high to indicate that security bugs have not been + fixed in etch. + * apply debian/patches/90_xptcinvoke_arm.dpatch to fix ftbfs on + arm/sid + + -- Alexander Sack Mon, 10 Oct 2005 19:00:00 +0100 + +mozilla-thunderbird (1.0.7-1) unstable; urgency=high + * MFSA-2005-57: IDN heap overrun + Summary: Tom Ferris reported a Firefox crash when processing a domain + name consisting solely of soft-hyphen characters. + Closes: - + CVE-Ids: CAN-2005-2871 + Bugzilla: 307259 + Issues addressed: + + CAN-2005-2871 - IDN heap overrun + * MFSA-2005-58: Accumulated vendor advisory for multiple vulnerabilities + Summary: Fixes for multiple vulnerabilities with an overall severity + of "critical" have been released in Mozilla Firefox 1.0.7 and + the Mozilla Suite 1.7.12 + Closes: - + CVE-Ids: CAN-2005-2701 CAN-2005-2702 CAN-2005-2703 CAN-2005-2704 + CAN-2005-2705 CAN-2005-2706 CAN-2005-2707 + Bugzilla: 300936 296134 297078 302263 299518 303213 304754 306261 + 306804 291178 300853 301180 302100 + Issues addressed: + + CAN-2005-2701 - Heap overrun in XBM image processing + + CAN-2005-2702 - Crash on "zero-width non-joiner" sequence + + CAN-2005-2703 - XMLHttpRequest header spoofing + + CAN-2005-2704 - Object spoofing using XBL + + CAN-2005-2705 - JavaScript integer overflow + + CAN-2005-2706 - Privilege escalation using about: scheme + + CAN-2005-2707 - Chrome window spoofing + + Regression fixes + * MFSA-2005-59: Command-line handling on Linux allows shell execution + -> was addressed in 1.0.6-4 already. Reverting upstream changes + to mozilla/mail/mozilla.in by copying debian/mozilla.in_1.0.6 over + to allow our patches to still apply. debian/patches/01_old_mozilla.in.dpatch + + -- Alexander Sack Sat, 1 Oct 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-4) unstable; urgency=high + + * now using bash to overcome possible security flaws of + our thunderbird start script (mozilla-thunderbird). Patch + by Florian Weimer + debian/mfsa_2005-59.debian.patch (Closes: 329664, 329667) + * added patch 50_ftbfs_alpha+arm+ia64_325536_fix.dpatch + to build on alpha, arm, and ia64 that now uses + __attribute__((used)) instead of ((unused)) by + Steve Langasek + (Closes: 325536) + * fix debsums error reported by Y Giridhar Appaji Nag + . Now removing files in postrm. + Further moved /usr/lib/mozilla-thunderbird/chrome/chrome.rdf + to the /var/... adding a link to the new location. + (Closes: 292475) + * added depends for system libs: mng, png, jpeg to not build with + unmaintained image included libs. + * modified 21_mozilla_in-patch.dpatch to recognize -mail as a -compose + alias. This makes thunderbird work well with current gnome default + mailto: command for thunderbird. Thanks to Sam Morris + for the workaround patch (Closes: 330168) + * still work left: fix window.open(); overlay problem. + added rejar-chrome.sh util script below debian. It + rejars .jar files by extracting paths given in + _jar_includes.csv from the .jar zip file + and zipping only those files to a new jar file again. Anyway, still + broken, thus disabled for this build. + (See: 306522) + + -- Alexander Sack Mon, 23 Sep 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-3) unstable; urgency=low + + * remove gcc-3.4 from amd64 build ... this time for sure + (Closes: 320723) + * remove special optimization flags for other archs too + + -- Alexander Sack Mon, 2 Aug 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-2) unstable; urgency=low + + * remove gcc-3.4 from amd64 build (Closes: 320723) + * added arabic po translation by Mohammed Adnène Trojette + (Closes: 320771) + + -- Alexander Sack Mon, 1 Aug 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-1) unstable; urgency=high + + * GCC/G++ 4.0 API transition upload. + * include 90_new_freetype_fix.dpatch to fix new freetype API + (Closes: 301481, 301481) - consumed from mozilla-firefox packages ... + thx to Eric Dorland + * include 90_gcc4_fix.dpatch + * fixes multiple security bugs (Closes: 318728) + CAN-2005-2270: Code execution through shared function objects + CAN-2005-2269: XHTML node spoofing + CAN-2005-2266: Same origin violation: frame calling top.focus() + CAN-2005-2265: Possible exploitable crash in InstallVersion.compareTo() + CAN-2005-2261: XML scripts ran even when Javascript disabled + CAN-2005-1532: Privilege escalation via non-DOM property overrides + CAN-2005-1160: Privilege escalation via DOM property overrides + CAN-2005-1159: Missing Install object instance checks + CAN-2005-0989: Javascript "lambda" replace exposes memory contents + * fix gdk_property_get problem that might cause a segfault (Closes: 317937) + patch by Loic Minier + debian/patches/gdk_property_get.dpatch + * fix CAN-2005-2353: insecure tmp file usage in run-mozilla.sh (Closes: 306893) + debian/patches/20_run-mozilla_sh_306893_fix.dpatch + * include german de.po translation (Closes: 318747) + by Alwin Meschede + * fixed whitespace in mozilla-thunderbird.templates (Closes: 308961) + hint by Clytie Siddall + * apply fix for seamonkey migration crash (Closes: 285728) + 90_mail_components_miration_src_nsSeamonkeyProfileMigrator_cpp + * fix 'find' in update-mozilla-thunderbird-chrome (Closes: 315588) + patch by Michael Spang + + -- Alexander Sack Thu, 21 Jul 2005 21:00:00 +0100 + +mozilla-thunderbird (1.0.2-3) unstable; urgency=high + + * last maybe sarge upload with urgency high, contains only + translations (po files + gnome .desktop file lines) + + cs translation by Jan Outrata + (Closes: 309023) + + fi translation by Matti Pöllä + (Closes: 303805) + + ja translation by Kenshi Muto + (Closes: 307005) + + pt_BR translation by Andre Luis Lopes + (Closes: 304261) + + vi translation by Clytie Siddall + (Closes: 308959) + + added missed translation entries in gnome .desktop files + for it, ko, pl + + -- Alexander Sack Thu, 02 Jun 2005 22:00:00 +0100 + +mozilla-thunderbird (1.0.2-2) unstable; urgency=low + + * fixed TYPO in 71_extensionManagerAutoReRegister.dpatch, + probably causing #302218 (Closes: 302218) + * extended patch 71_extensionManagerAutoReRegister.dpatch, + now checking components.ini timestamp instead of + compreg.dat timestamp. removing components.ini compreg.dat + and XUL.mfasl if global Extensions.rdf file is newer then + components.ini. Probably helping to fix #302218 too. + * renamed xprt-xprintorg recommends to xprint (Closes: 300975) + * (re-)enabled pref extension (Closes: 302130) + + -- Alexander Sack Thu, 31 Mar 2005 07:00:00 +0100 + +mozilla-thunderbird (1.0.2-1) unstable; urgency=medium + * new upstream version (Closes: 301542) fixes some + security issues according to upstream + (http://www.mozilla.org/projects/security/known-vulnerabilities.html) + 1.0.2 fixes the following security related issues. + + MFSA 2005-30 GIF heap overflow parsing Netscape extension 2 + MFSA 2005-25 Image drag and drop executable spoofing + MFSA 2005-21 Overwrite arbitrary files downloading .lnk twice + MFSA 2005-18 Memory overwrite in string library + MFSA 2005-17 Install source spoofing with user:pass@host + MFSA 2005-15 Heap overflow possible in UTF8 to Unicode conversion + + -- Alexander Sack Sun, 27 Mar 2005 16:00:00 +0100 + +mozilla-thunderbird (1.0-4) unstable; urgency=low + + * removed not needed build-deps: csh + * included debconf (and gnome .desktop file) translations for + various languages: (Closes: 292072, 294622, 291477, 292507) + + debian/po/fr.po (Mohammed Adnène TROJETTE , + Aurelien Jarno ) + + debian/po/nl.po (Luk Claes ) + + debian/po/ca.po (Jordi Mallach ) + + debian/po/ko.po (Yooseong Yang ) + + debian/po/it.po (Vittorio Palmisano ) + + debian/po/pl.po (Robert Luberda ) + * fixed startscript problem + - updated 21_mozilla_in-patch.dpatch - thanks to + Kevin B. McCarty + * moved code of component debCleanComp.js to + nsExtensionManager, so it can automatically restart the + application if needed. + This should again lower the probabilty that + some upgrade, downgrade of thunderbird or extensions + breaks the chrome or component registry in your profile + dir. + + -- Alexander Sack Sun, 13 Mar 2005 13:00:00 +0100 + +mozilla-thunderbird (1.0-3) unstable; urgency=low + + * first upload to official archive for tbird 1.0 + (first since 0.9-6) + * finally I decided to upload this package to unstable, + though there is a debian-legal discussion going on + about the mozilla trademark. Since it might take some + time until a solution is found, I decided to upload + as usual. + * started to debrand the app to 'Debian Thunderbird' + + -- Alexander Sack Sun, 16 Jan 2005 14:00:00 +0100 + +mozilla-thunderbird (1.0-2) unstable; urgency=low + + * Uninstall file and dummy-empty-file must not be empty + * Included latest patch for extension manager + * Included Jaap Haitsma icons (Closes: 257640) + * fixed regression compared to 0.9-6 official package + that had problems to build because empty files where + not included in diff.gz + + -- Alexander Sack Fri, 10 Dec 2004 23:00:00 +0100 + +mozilla-thunderbird (1.0-1) unstable; urgency=low + + * new upstream release - 1.0 (Closes: 284560) + * includes new icons as default theme + * changed start.html page to not use the mozilla partical + in the package naming. This app is now officially called + 'Debian Thunderbird' + * removed -O from sparch arch (See: 284532) + * README.Debian improved + * adapted new manpage inspired by Ralf Katz + + -- Alexander Sack Tue, 08 Dec 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-7) unstable; urgency=low + + * added debconf capability to define what browser + integration is wanted + -> added /etc/mozilla-thunderbird/auto-config.js + to store automatically generated configs by debconf + + -- Alexander Sack Thu, 24 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-6) unstable; urgency=low + + * fixed bug in preinst script by strictly testing + the existance of files before invoking mv + operations (Closes: 282186) + * fixed stupid upgrade bug in preinst script. + ls uses now -d to produce no garbage when + used as source for moving. This closes + a bug reported against enigmail, but is a + bug of the thunderbird package. This release + fixes it (Closes: 282505) + * still missing reply for current grave bug + 282506. I think this is due to the initial + upgrade problems. Those problem should not + occur anymore with the fixes of this packages + upgrade mechanism (Closes: 282506) + + -- Alexander Sack Thu, 24 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-5) unstable; urgency=low + + * added patch by Kevin B. McCarty + adds In-Reply-To mailto: link capability (Closes: 268055) + * late verification of bug fixed by preview package: + fixes: message editor steals keyboard focus (Closes: 274313) + + -- Alexander Sack Thu, 18 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-4) unstable; urgency=low + + * fixed upgrade bug - when /usr/lib/mozilla-thunderbird/extensions + is a link, remove it and create a directory for it! After that + move all extensions from /var/lib/mozilla-thunderbird/extensions + to the new folder. + * added example firefox-config.js.tmpl to use the new wrapper + script. This config should only be used if you are in a non + gconf capable window environment, e.g. pure openbox, etc. + See the README.Debian for further details on howto integrate + thunderbird properly. + * added uninstall and extension directory for default theme + extension. This should make it possible to remove the package + cleanly. + * Bug#280254: mozilla-thunderbird: Please package + thunderbird 0.9 (Closes: 280076) + * patch by Kevin McCarty , fixes + Subject munging if thunderbird is running (Closes: 263971) + * fixed: typo in welcome message for preview pane (Closes: 278690) + * thx to bug submitters that verified the fix of the following + bugs in my preview package at people.debian.org: + + Bug#277304: mozilla-thunderbird: thunderbird dies silently on + some mails (Closes: 277304) + + no sound when new mail arrives (Closes: 274044) + + Focus Problem when a filter is selected (Closes: 272157) + + "Get Mail" button fails intermittently on additional accounts + (Closes: 280482) + * added patch to fix /tmp/ file permissions during processing of + imap directory (Closes: 280363) + * cleaning up compreg.dat on Extensions.rdf change, so after + restart all troubles with this issue are gone (Closes: 273213) + * Already since 0.9-1, but I forgot to mention: + + set default smtp server option should work now + (Closes: 274177) + + with view filter: unread on, newly read messages are + not removed from the message list anymore (Closes: 275708) + * other bugs resolved by upstream: + + problems while threads refresh (Closes: 239203) + + Shortcuts conflict with ISO 14755 (Closes: 246916) + + -- Alexander Sack Mon, 15 Nov 2004 22:45:00 +0100 + +mozilla-thunderbird (0.9-3) unstable; urgency=low + + * rm -f /usr/lib/mozilla-thunderbird/extensions + in postinst if it is a link! After that move + stuff from /var/lib/mozilla-thunderbird/extensions + to /usr/lib/mozilla-thunderbird/extensions. + The rest will be done by update-mozilla-thunderbird-chrome + + -- Alexander Sack Thu, 11 Nov 2004 22:45:00 +0100 + +mozilla-thunderbird (0.9-2) unstable; urgency=low + + * fixed bad bug in mozilla-thunderbird.install, + that removed the fulls extensions dir + * fixed broken upgrade problem due to + mozilla-thunderbird-inspector that tried to + install resource files under /usr/lib/.../res, + but that is a link. Now storing under /usr/share/ + + -- Alexander Sack Wed, 10 Nov 2004 22:00:00 +0100 + +mozilla-thunderbird (0.9-1) unstable; urgency=low + + * new upstream version (0.9) + * include patch amd64: + by Frederik Schueler + -> use gcc-3.4,g++3.4 (Closes: 261365) + * pasting issues partially fixed (See: 279656) + * Local Folders needed, cannot be deleted anymore + (Closes: 226253) + * including great patch of Mike Hommey + who brought the final fix for the extension manager + problems; changed update-mozilla-thunderbird-chrome + according to the new -register capability + + -- Alexander Sack Wed, 10 Nov 2004 20:00:00 +0100 + +mozilla-thunderbird (0.8-3) unstable; urgency=medium + + * respin for new binutils version (Closes: 273354) + * removing essential and build-essential build + dependencies to: base-files, libc6-dev + * update-mozilla-thunderbird-chrome: output of find(s) + to /dev/null (Closes: 267661) + * included mozilla-thunderbird-compose script in docs + section + + -- Alexander Sack Sat, 26 Sep 2004 13:00:00 +0100 + +mozilla-thunderbird (0.8-2) unstable; urgency=medium + + * include good build_id during build fixes + upgrade problems + (Closes: 272175, 272182) + * fixed some startup-script regressions. Remote + commands are almost ready by upstream. Only + -compose argument is interpreted in a debian + specific way. Of course, locale settings + are still debian specific too. + * improved changelog to list important notes + for upgrading to 0.8 + * 10_mips_optimization_patch.dpatch: + thiemo seufers mips(el) workaround + removing CFLAGS="$CFLAGS -Wa,-xgot" and + CXXFLAGS="$CXXFLAGS -Wa,-xgot" and adding + inline when DEBUG is true (Closes: 272162). + + -- Alexander Sack Sat, 18 Sep 2004 21:00:00 +0100 + +mozilla-thunderbird (0.8-1) unstable; urgency=medium + + * new upstream version 0.8 + * fixes various security issues in sarge and sid + (Closes: 263752) + * hacked a tiny patch for nsExtensionManager.js.in bug that + lets thunderbird (and firefox) loop on startup if + launched with non-root account. + + -- Alexander Sack Fri, 17 Sep 2004 10:00:00 +0100 + +mozilla-thunderbird (0.7.3-6) unstable; urgency=high + + * still fixes the security bug in sarge (see #263752) + ... thus urgency=high + * applied 50_mozilla-thunderbird-xpcom-xptcall-mips.dpatch + provided by Thiemo Seufer + (Closes: 267017) + * removed as Uploader as he expressed + that he has no more time to co-maintaining this package. + Thanks for your work! + + -- Alexander Sack Sun, 12 Sep 2004 17:30:00 +0100 + +mozilla-thunderbird (0.7.3-5) unstable; urgency=high + + * ping tbird to find a running instance instead of searching + for lock file that could still be there after a crash (redone) + (Closes: 267144) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 21 Aug 2004 14:00:00 +0100 + +mozilla-thunderbird (0.7.3-4) unstable; urgency=high + + * ping tbird to find a running instance instead of searching + for lock file that could still be there after a crash + (Closes: 267144) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 21 Aug 2004 14:00:00 +0100 + +mozilla-thunderbird (0.7.3-3) unstable; urgency=high + + * extended patch for mips: 50_xpcom_xptcall_xptcstubs_asm_mips_s + (Closes: 266851) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 19 Aug 2004 17:00:00 +0100 + +mozilla-thunderbird (0.7.3-2) unstable; urgency=high + + * included patch for mips: 50_xpcom_xptcall_xptcstubs_asm_mips_s + * made global-config.js more up to date (Closes: 261815) + * recommend myspell-en-us | myspell-dictionary (Closes: 265272) + * enigmail is now suggested and not recommended anymore + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Wed, 18 Aug 2004 16:00:00 +0100 + +mozilla-thunderbird (0.7.3-1) unstable; urgency=high + + * new upstream release 0.7.3 - fixes security issues + (Closes: 263752) + * changed maintainer email to debian address + * removing /var/lib/mozilla-thunderbird dir on purge + (Closes: 260212). + * reverting gcc-3.2 and g++-3.2 for hppa architecture to back to + default gcc/g++ compiler + * fixed package description of mozilla-thunderbird-inspector and + mozilla-thunderbird-offline (Closes: 260374, 260376) + * plain mozilla-thunderbird now opens Inbox window to front + instead of profile manager when already running (Closes: 259476) + + -- Alexander Sack Wed, 04 Aug 2004 20:00:00 +0100 + +mozilla-thunderbird (0.7.1-3) unstable; urgency=low + + * updated README.Debian to be more specific + on the lost profile workaround! + * added 10_profile_migration.dpatch to fix + profile migration issues (Closes: 258741, 258747) + * updated .desktop file Comment (Closes: 257596) + * trying gcc-3.2 and g++-3.2 for hppa architecture + + -- Alexander Sack Tue, 13 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-2) unstable; urgency=low + + * added 10_profile_migration.dpatch to fix + profile migration issues (Closes: 258741, 258747) + * updated .desktop file Comment (Closes: 257596) + * trying gcc-3.2 and g++-3.2 for alpha and amd64 + architecture + + -- Alexander Sack Mon, 12 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-1) unstable; urgency=low + + * new upstream source 0.7.1 (Closes: 257320, 256843) + * fixed broken theme ID + * include extension descriptions and set them + to locked + * fixed typo in branding patch ( Hompage ->Homepage ) + * included movemail for handling local mail (Closes: 219893) + * provides new mozilla-thunderbird-dev + * does not build enigmail anymore. enigmail has got its + own source package for now. Hopefully this package will + build soon against mozilla-mailnews and mozilla-thunderbird, + so only one package is needed for both. + * update-mozilla-thunderbird-chrome: LD_LIBRARY_PATH bug fixed + (Closes: 254144) + * verified that -compose mailto:email@host.com works (Closes: 252261) + * include upgrade info in README.debian. Documented + new global-config.js file in README.debian too (Closes: 253315) + * crash on corrupt bmp fixed by upstream (Closes: 248857) + * added Provides: mail-reader, imap-client (Closes: 257199) + * renamed menu entry to 'Thunderbird Mail' (Closes: 257596) + + -- Alexander Sack Mon, 5 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-0.0.asac1) unstable; urgency=low + + * new upstream source 0.7.1 + * fixed broken theme ID + * include extension descriptions and set them + to locked + * fixed typo in branding patch ( Hompage ->Homepage ) + * included movemail for handling local mail + + -- Alexander Sack Thu, 1 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7-0.0.asac1) unstable; urgency=low + + * new upstream source 0.7 + * provides new mozilla-thunderbird-dev + * does not build enigmail anymore. enigmail has got its + own source package for now. Hopefully this package will + build soon against mozilla-mailnews and mozilla-thunderbird, + so only one package is needed for both. + * update-mozilla-thunderbird-chrome: LD_LIBRARY_PATH bug fixed + (Closes: 254144) + * verified that -compose mailto:email@host.com works (Closes: 252261) + * include upgrade info in README.debian (Closes: 253315) + * crash on corrupt bmp fixed by upstream (Closes: 248857) + + -- Alexander Sack Wed, 23 Jun 2004 11:00:00 +0100 + +mozilla-thunderbird (0.6-asac1) unstable; urgency=low + + * new binary package for development files + mozilla-thunderbird-dev + * mozilla-thunderbird now Provides: mail-reader and imap-client + + -- Alexander Sack Tue, 08 Jun 2004 15:00:00 +0100 + +mozilla-thunderbird (0.6-3) unstable; urgency=low + + * added libx11-dev, libxp-dev, libxt-dev to Build-Depends + * removed xlibs-dev from Build-Depends + * fixed typo in starting screen (Closes: 249850) + * removed duplicate readme file (Closes: 247162) + * added readme file upgrade note to remove the + chrome.rdf in the users profile directory after + upgrade. + + -- Alexander Sack Thu, 03 Jun 2004 00:20:00 +0100 + +mozilla-thunderbird (0.6-2) unstable; urgency=low + + * Fix missing build-dep on xlibs-dev, causing FTBFS errors + (closes: Bug#251166) + + -- Soeren Boll Overgaard Fri, 28 May 2004 11:02:07 +0000 + +mozilla-thunderbird (0.6-1) unstable; urgency=low + * accumulated changelog: 0.6-0.1rc1 + 0.6-0.1rc2 + * repackaged upstream source tarball to not-include + non-free icons of the trademarked new branding + * changed menu icon size to 32x32 + * added suggestions for mozilla-thunderbird-typeaheadfind + mozilla-thunderbird-offline and mozilla-thunderbird-inspector + * new upstream version: 0.6 + * MAP users can now benefit from support for the IMAP IDLE command + which allows the mail server to push notifications such as new + mail arriving as soon as it arrives (Closes: 232544) + * Thunderbird supports server wide news filters that apply to all + news groups on a server + * Mail filters can now mark messages as junk + * Offline support is now available as an extension package + (Closes: 231920) + * Command line parsing problems fixed (Closes: 232342) + * Find broken in view source is fixed (Closes: 232580) + * Alerts and crash when deleting multiple nested + folders inside the trash folder is fixed (Closes: 237705, 244414) + * shift-c selects all as read (Closes: 245039) + * menu hint changed to mail (Closes: 246211) + * Alt-A selects all messages (Closes: 229518) + * typeahead find extension added as extra package + (Closes: 232562) + * suggesting mozilla-firefox now (Closes: 240708, 234918) + * changed mozilla-thunderbird.xpm to envelope with flames + (Closes: 243028) + * new enigmail upstream version included (0.86.6), + (Closes: 235553) + * now bulding with -O2 on all platforms, but ia64, arm, + sparc, alpha, powerpc + * global enigmail config file now in + /etc/mozilla-thunderbird/pref/enigmail.js + * new binary targets: + mozilla-thunderbird-inspector, + mozilla-thunderbird-offline, + mozilla-thunderbird-typeaheadfind + * restructured conffiles: now a single global config + file exists: /etc/mozilla-thunderbird/global-config.js, + which may be used by admins to make their + preconfigurations. + Old config files in /etc/mozilla-thunderbird/pref + will be reserved till next --purge + + -- Alexander Sack Sat, 08 May 2004 08:45:00 +0100 + +mozilla-thunderbird (0.5+.040427-1) unstable; urgency=low + + * new snapshot of 040427 + * added build depend: libgnomevfs2-dev + * increased debian policy standard version to 3.6.1 + + -- Alexander Sack Tue, 27 Apr 2004 12:45:00 +0100 + +mozilla-thunderbird (0.5+.040418-1) unstable; urgency=low + + * new snapshot of 040418 + * changed desktop icon to envelope with flames (Closes: 243028) + + -- Alexander Sack Sun, 18 Apr 2004 12:45:00 +0100 + +mozilla-thunderbird (0.5+.040412-1) unstable; urgency=low + + * new snapshot of 040412 + * Updated enigmail to 0.83.6 + + -- Alexander Sack Mon, 12 Apr 2004 01:37:00 +0100 + +mozilla-thunderbird (0.5+.040330-1) unstable; urgency=low + + * new snapshot of 040320 + * Updated enigmail to 0.83.5 (Closes: 235553) + + -- Alexander Sack Tue, 30 Mar 2004 17:30:20 +0100 + +mozilla-thunderbird (0.5-4) unstable; urgency=low + + * reenabled hppa patch, which apparently led to FTBFS on hppa + + -- Alexander Sack Thu, 04 Mar 2004 21:30:20 +0100 + +mozilla-thunderbird (0.5-3) unstable; urgency=medium + + * preinst added to allow clean upgrade path to this + (Closes: 234118, Closes: 234267) + * added prerm script to allow a clean remove of package + + -- Alexander Sack Sun, 29 Feb 2004 10:30:20 +0100 + +mozilla-thunderbird (0.5-2) unstable; urgency=low + + * new source package layout!! Now using orig.tar.gz with diff.gz + (Closes: 232055) + * moved arch-indep chrome stuff to /usr/share/mozilla-thunderbird/chrome + * moved images to /usr/share/mozilla-thunderbird/res + /usr/share/mozilla-thunderbird/icons + /usr/share/mozilla-thunderbird/chrome/icons + + -- Alexander Sack Thu, 19 Feb 2004 19:30:20 +0100 + +mozilla-thunderbird (0.5-1.1) unstable; urgency=low + + * new source package layout!! Now using orig.tar.gz with diff.gz + + -- Alexander Sack Mon, 11 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.5-1) unstable; urgency=low + + * Aggregated changes since 0.4-1: + * new upstream release 0.5 included + * added xprt-xprintorg to Recommends (Closes: 226626) + * upgraded enigmail to 0.83.2 (Closes: 228678) + + includes a workaround for mozilla bug + leading to a crash in rare situations + (fixed in 0.82.6) + * improved package structure. Sources now are included as original archives + & are extracted to build-dir. (Closes: 225033) + * Minor wording changes in package description, pointed out by + Mark Stevenson. + * New debianization of appearance (branding) + * added switches for pref.js config entries for + individual doubleclick timeout & drag threshold + settings in gtk2 (Closes: 229146) + + -- Alexander Sack Mon, 09 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.5-0.1) unstable; urgency=low + + * preview of thunderbird-0.5 rc2 + + -- Alexander Sack Mon, 07 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.4-1.6) unstable; urgency=low + + * added basic gtk settings as mozilla prefs: + + widget.gtk2.dnd.threshold - treshold in pixel before a drag starts + + widget.gtk2.double_click_timeout - + maximum time in milliseconds between two clicks + to become recognized as double-click e.g. to get + rid of unexpected folder moves, etc. + * upgraded enigmail to 0.83.2 + + -- Alexander Sack Mon, 05 Feb 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.5) unstable; urgency=low + + * added xprt-xprintorg to Recommends + * upgraded enigmail to 0.83.1 + + -- Alexander Sack Mon, 04 Feb 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.4) unstable; urgency=low + + * improved package structure. Sources now are included as original archives + & are extracted to build-dir. (Closes: 225033) + * late checkin. Already uploaded to mentors + + -- Alexander Sack Mon, 27 Jan 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.31) unstable; urgency=low + + * Minor wording changes in package description, pointed out by + Mark Stevenson. + + -- Soeren Boll Overgaard Wed, 14 Jan 2004 12:46:23 +0000 + +mozilla-thunderbird (0.4-1.3) unstable; urgency=low + + * further debinized branding. updated 10_debian-branding patch + * do not use MOZILLA_FIVE_HOME. Always set the MOZILLA_FIVE_HOME + correctly. -> This is not anymore mozilla suite, so it is obsolete. + + -- Alexander Sack Mon, 06 Jan 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.2) unstable; urgency=low + + * updated enigmail to 0.82.6 - includes a workaround for mozilla bug + leading to a crash. + + -- Alexander Sack Mon, 30 Dec 2003 20:30:20 +0100 + +mozilla-thunderbird (0.4-1.1) unstable; urgency=low + + * switched to .orig.tgz file approach + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-1) unstable; urgency=low + + * version for first debian official upload of 0.4 + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.3) unstable; urgency=low + + * updated latest enigmail source to version 0.82.5 + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.2) unstable; urgency=low + + * added locale support: default locale is en-US + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.1) unstable; urgency=low + + * upgraded official 0.4 release + * browser integration works on gnome/kde + * new mozilla-theme + * latest engimail included + + -- Alexander Sack Mon, 10 Nov 2003 00:30:20 +0100 + +mozilla-thunderbird (0.3-7) unstable; urgency=low + + * added patches for hppa & alpha, arm & mips specfic stuff. took the patches from + the debian mozilla package + + -- Alexander Sack Mon, 10 Nov 2003 00:30:20 +0100 + +mozilla-thunderbird (0.3-6) unstable; urgency=low + + * added patch to switch from ex to sed which certainly won't + have terminal problems + * added .desktop file for menu integration in gnome, kde, etc. + + -- Alexander Sack Sun, 2 Nov 2003 22:23:40 +0100 + + +mozilla-thunderbird (0.3-5) unstable; urgency=low + + * Alexander Sack: + - added build depend nvi. + * Soeren Boll Overgaard + - added dependency on gnupg for enigmail. + + -- Alexander Sack Thu, 29 Oct 2003 21:00:59 +0200 + +mozilla-thunderbird (0.3-4) unstable; urgency=low + + * Soeren Boll Overgaard: + - Improve wording in long descriptions. + - Fix dependency problem of the enigmail-package. + + -- Soeren Boll Overgaard Tue, 28 Oct 2003 17:08:55 +0100 + +mozilla-thunderbird (0.3-3) unstable; urgency=low + + * Build-depend on m4 + * Actually do something in binary-arch + * asac: Applied Patch for myspell issue (closes: Bug#217555) + * fixed mozilla-thunderbird.sgml according to docbook DTD (closes: Bug#217708) + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 23:24:25 +0100 + +mozilla-thunderbird (0.3-2) unstable; urgency=low + + * Build-depend on dpatch. + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 13:26:31 +0100 + +mozilla-thunderbird (0.3-1) unstable; urgency=low + + * Make my name look right in Uploaders. + * Change version to one suited to Debian. + * Update standards version to 3.6.1 (No changes). + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 09:38:24 +0000 + +mozilla-thunderbird (0.3-0.3) unstable; urgency=low + + * readded forgotten patch hunks + + -- Alexander Sack Thu, 24 Oct 2003 09:00:59 +0200 + +mozilla-thunderbird (0.3-0.2) unstable; urgency=low + + * New upstream release + * latest patches of mozilla-thunderbird-0.2-3 are included + + -- Alexander Sack Thu, 21 Oct 2003 20:55:59 +0200 + +mozilla-thunderbird (0.2-3) unstable; urgency=low + + * fixed sudo bug (closes: Bug#216469) + * repackaging because of enigmail build exception + + -- Alexander Sack Wed, 15 Oct 2003 17:56:59 +0200 + +mozilla-thunderbird (0.2-2) unstable; urgency=low + + * Don't limit archs to i386. + + -- Soeren Boll Overgaard Sat, 18 Oct 2003 10:27:05 +0000 + +mozilla-thunderbird (0.2-1) unstable; urgency=low + + * restarted versioning for official debian upload + * Uploaded by S. Boll Overgaard + - Closes thunderbird ITP (closes: Bug#196504) + + -- Alexander Sack Wed, 15 Oct 2003 17:56:59 +0200 + +mozilla-thunderbird (0.3-0.1) unstable; urgency=low + + * New upstream release + + -- Alexander Sack Thu, 16 Oct 2003 10:51:59 +0200 + +mozilla-thunderbird (0.2asac-5) unstable; urgency=low + + * some more lintian cleaning of source package + * added boll@debian.org as co-maintainer + * reduction of build depends redundancy + + -- Alexander Sack Wed, 15 Oct 2003 17:56:50 +0000 + +mozilla-thunderbird (0.2asac-4) unstable; urgency=low + + * minimized build-depends & removed version constraints from build-deps to ease backporting + * added lintian override + * added long description for enigmail + * adjusted preference directory to $HOME/.mozilla-thunderbird + + -- Alexander Sack Mon, 13 Oct 2003 20:53:45 +0000 + +mozilla-thunderbird (0.2asac-3) unstable; urgency=low + + * needed to get the the source archive up again :( + + -- Alexander Sack Thu, 9 Oct 2003 18:51:01 +0200 + +mozilla-thunderbird (0.2asac-2) unstable; urgency=high + + * fixed the build procedure for enigmail binary package + + -- Alexander Sack Tue, 7 Oct 2003 23:04:01 +0200 + +mozilla-thunderbird (0.2asac-1) unstable; urgency=low + + * New upstream release + * added binary package mozilla-thunderbird-enigmail + * now update-chrome enabled + * startup hooks (currently for enigmail) allowed in + /var/lib/mozilla-thunderbird/startup-hooks.d + + -- Alexander Sack Fri, 3 Oct 2003 22:16:05 +0200 + +mozilla-thunderbird (0.2-5) unstable; urgency=low + + * changed menu entry image to gif image of size 32x32 -> lintian --check + tested + * added manual pages for mozilla-thunderbird & thunderbird + * remove mozilla-thunderbird-config from binary package + + -- Alexander Sack Thu, 2 Oct 2003 02:30:44 +0200 + +mozilla-thunderbird (0.2-4) unstable; urgency=low + + * fixed conflict with snapshot build + + + -- Alexander Sack Wed, 1 Oct 2003 16:50:33 +0200 + +mozilla-thunderbird (0.2-3) unstable; urgency=low + + * apply quickfix for bug #212604 (bugzilla.mozilla.org) + -> firebird ist remote startable even if thunderbird is + running + * added basic man pages + + -- Alexander Sack Wed, 1 Oct 2003 12:21:04 +0200 + +mozilla-thunderbird (0.2-2) unstable; urgency=low + + * corrected menu entry command to thunderbird + + -- Alexander Sack Thu, 25 Sep 2003 12:00:36 +0200 + +mozilla-thunderbird (0.2-1) unstable; urgency=low + + * Initial Release. + + -- Alexander Sack Wed, 24 Sep 2003 18:55:50 +0200 diff --git a/control b/control new file mode 100644 index 0000000000..f04e79da12 --- /dev/null +++ b/control @@ -0,0 +1,1259 @@ +Source: thunderbird +Section: mail +Priority: optional +Maintainer: Carsten Schoenert +Uploaders: + Christoph Goehre , +Build-Depends: + autoconf2.13, + bash-completion, + bzip2, + cargo (>= 0.57), + cbindgen (>= 0.19), + clang, + debhelper-compat (= 13), + dh-apparmor, + dh-exec, + dpkg (>= 1.16.18~), + dpkg-dev (>= 1.16.18~), + libasound2-dev [linux-any], + libatk-adaptor, + libcairo2-dev (>= 1.10.2-1.1~), + libclang-dev, + libdbus-glib-1-dev (>= 0.60), + libevent-dev (>= 1.4.1), + libffi-dev, + libfontconfig1-dev, + libglib2.0-dev (>= 2.22.0), + libgtk-3-dev (>= 3.4), + libhunspell-dev (>= 1.5.1~), + libicu-dev (>= 71.1~), + libidl-dev (>= 0.8.0), + libiw-dev [linux-any], + libnotify-dev, + libnspr4-dev (>= 2:4.32~), + libnss3-dev (>= 2:3.79.2~), + libpng-dev, + libpulse-dev, + libreadline-dev, + librnp-dev, + librust-toml-dev, + libstartup-notification0-dev, + libvpx-dev (>= 1.8.0), + libx11-dev, + libx11-xcb-dev, + libxau-dev, + libxft-dev, + libxt-dev, + llvm-dev, + mesa-common-dev, + nasm, + nodejs (>= 10.19.0), + python3, + rustc (>= 1.59), + unzip, + yasm (>= 1.1), + zip, + zlib1g-dev, +Rules-Requires-Root: no +Vcs-Git: https://salsa.debian.org/mozilla-team/thunderbird.git -b debian/sid +Vcs-Browser: https://salsa.debian.org/mozilla-team/thunderbird/commits/debian/sid/ +Homepage: https://www.thunderbird.net/ +X-Debian-Homepage: http://wiki.debian.org/Thunderbird +Standards-Version: 4.6.2 + +Package: thunderbird +Architecture: amd64 arm64 i386 mips64el ppc64el s390x ppc64 +Depends: + debianutils (>= 1.16), + fontconfig, + libotr5, + librnp0, + psmisc, + x11-utils | kdialog | zenity, + ${misc:Depends}, + ${shlibs:Depends}, +Recommends: + myspell-en-us | hunspell-dictionary | myspell-dictionary, +Suggests: + apparmor, + fonts-lyx, + libgssapi-krb5-2, +Provides: + mail-reader, +Breaks: + birdtray (<< 1.7.0+ds-1~), + calendar-google-provider (<=1:68.2.1-1), + enigmail (<< 2:2.2.0~), + jsunit (<< 0.2.2-1~), + webext-compactheader (<= 3.0.0~), + xul-ext-dispmua (<= 1.8.4.6-1), + webext-exteditor (<= 2.0.4-1), + xul-ext-sieve (<= 0.3.1+dfsg-1~), + webext-sogo-connector (<= 68.0.1-2~), +Description: mail/news client with RSS, chat and integrated spam filter support + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + It supports different mail accounts, no matter of the used protocol like + POP(s) or IMAP(s), has an integrated learning Spam filter, and offers easy + organization of mails with tagging and virtual folders. Also, more features + can be added by installing extensions. + . + Thunderbird also includes an integrated calendar for handling events, events + invitations and tasks in multiple calendars. It supports local calendars, + CalDAV and plain ics files on CardDAV and WebDAV. + . + The goal of Thunderbird is to produce a cross platform standalone mail + application using the XUL user interface language. + +Package: thunderbird-l10n-all +Architecture: all +Section: metapackages +Depends: + thunderbird-l10n-af (>= ${binary:Version}), + thunderbird-l10n-ar (>= ${binary:Version}), + thunderbird-l10n-ast (>= ${binary:Version}), + thunderbird-l10n-be (>= ${binary:Version}), + thunderbird-l10n-bg (>= ${binary:Version}), + thunderbird-l10n-br (>= ${binary:Version}), + thunderbird-l10n-ca (>= ${binary:Version}), + thunderbird-l10n-cak (>= ${binary:Version}), + thunderbird-l10n-cs (>= ${binary:Version}), + thunderbird-l10n-cy (>= ${binary:Version}), + thunderbird-l10n-da (>= ${binary:Version}), + thunderbird-l10n-de (>= ${binary:Version}), + thunderbird-l10n-dsb (>= ${binary:Version}), + thunderbird-l10n-el (>= ${binary:Version}), + thunderbird-l10n-en-ca (>= ${binary:Version}), + thunderbird-l10n-en-gb (>= ${binary:Version}), + thunderbird-l10n-es-ar (>= ${binary:Version}), + thunderbird-l10n-es-es (>= ${binary:Version}), + thunderbird-l10n-es-mx (>= ${binary:Version}), + thunderbird-l10n-et (>= ${binary:Version}), + thunderbird-l10n-eu (>= ${binary:Version}), + thunderbird-l10n-fi (>= ${binary:Version}), + thunderbird-l10n-fr (>= ${binary:Version}), + thunderbird-l10n-fy-nl (>= ${binary:Version}), + thunderbird-l10n-ga-ie (>= ${binary:Version}), + thunderbird-l10n-gd (>= ${binary:Version}), + thunderbird-l10n-gl (>= ${binary:Version}), + thunderbird-l10n-he (>= ${binary:Version}), + thunderbird-l10n-hr (>= ${binary:Version}), + thunderbird-l10n-hsb (>= ${binary:Version}), + thunderbird-l10n-hu (>= ${binary:Version}), + thunderbird-l10n-hy-am (>= ${binary:Version}), + thunderbird-l10n-id (>= ${binary:Version}), + thunderbird-l10n-is (>= ${binary:Version}), + thunderbird-l10n-it (>= ${binary:Version}), + thunderbird-l10n-ja (>= ${binary:Version}), + thunderbird-l10n-ka (>= ${binary:Version}), + thunderbird-l10n-kab (>= ${binary:Version}), + thunderbird-l10n-kk (>= ${binary:Version}), + thunderbird-l10n-ko (>= ${binary:Version}), + thunderbird-l10n-lt (>= ${binary:Version}), + thunderbird-l10n-lv (>= ${binary:Version}), + thunderbird-l10n-ms (>= ${binary:Version}), + thunderbird-l10n-nb-no (>= ${binary:Version}), + thunderbird-l10n-nl (>= ${binary:Version}), + thunderbird-l10n-nn-no (>= ${binary:Version}), + thunderbird-l10n-pa-in (>= ${binary:Version}), + thunderbird-l10n-pl (>= ${binary:Version}), + thunderbird-l10n-pt-br (>= ${binary:Version}), + thunderbird-l10n-pt-pt (>= ${binary:Version}), + thunderbird-l10n-rm (>= ${binary:Version}), + thunderbird-l10n-ro (>= ${binary:Version}), + thunderbird-l10n-ru (>= ${binary:Version}), + thunderbird-l10n-sk (>= ${binary:Version}), + thunderbird-l10n-sl (>= ${binary:Version}), + thunderbird-l10n-sq (>= ${binary:Version}), + thunderbird-l10n-sr (>= ${binary:Version}), + thunderbird-l10n-sv-se (>= ${binary:Version}), + thunderbird-l10n-th (>= ${binary:Version}), + thunderbird-l10n-tr (>= ${binary:Version}), + thunderbird-l10n-uk (>= ${binary:Version}), + thunderbird-l10n-uz (>= ${binary:Version}), + thunderbird-l10n-vi (>= ${binary:Version}), + thunderbird-l10n-zh-cn (>= ${binary:Version}), + thunderbird-l10n-zh-tw (>= ${binary:Version}), + ${misc:Depends}, +Description: All language packages for Thunderbird (meta) + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package is a metapackage depending on all available localization of + Thunderbird. + +Package: thunderbird-l10n-af +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:af +Recommends: + hunspell-af, +Description: Africaans language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Africaans. + +Package: thunderbird-l10n-ar +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ar +Recommends: + hunspell-ar, +Description: Arabic language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Arabic. + +Package: thunderbird-l10n-ast +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ast +Description: Asturian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Asturian. + +Package: thunderbird-l10n-be +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:be +Recommends: + hunspell-be, +Description: Belarusian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Belarusian. + +Package: thunderbird-l10n-bg +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:bg +Recommends: + hunspell-bg | myspell-bg, +Description: Bulgarian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Bulgarian. + +Package: thunderbird-l10n-br +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:br +Recommends: + hunspell-br, +Description: Breton language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Breton. + +Package: thunderbird-l10n-ca +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ca +Recommends: + hunspell-ca | myspell-ca, +Description: Catalan/Valencian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Catalan/Valencian. + +Package: thunderbird-l10n-cak +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cak-GT +Description: Kacqhikel language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kacqhikel. + +Package: thunderbird-l10n-cs +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cs +Recommends: + hunspell-cs | myspell-cs-cz, +Description: Czech language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Czech. + +Package: thunderbird-l10n-cy +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cy +Description: Welsh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Welsh. + +Package: thunderbird-l10n-da +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:da +Recommends: + myspell-da | hunspell-da, +Description: Danish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Danish. + +Package: thunderbird-l10n-de +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:de +Recommends: + hunspell-de-de | hunspell-de-at | hunspell-de-ch | myspell-de-de | myspell-de-at | myspell-de-ch, +Description: German language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in German. + +Package: thunderbird-l10n-dsb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:dsb +Description: Lower Sorbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Lower Sorbian. + +Package: thunderbird-l10n-el +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:el +Recommends: + hunspell-el | myspell-el-gr, +Description: Greek language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Greek. + +Package: thunderbird-l10n-en-ca +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:en-CA +Recommends: + hunspell-en-ca, +Description: English (Canada) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in English (Canada). + +Package: thunderbird-l10n-en-gb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:en-GB +Recommends: + hunspell-en-gb | hunspell-en-au | hunspell-en-ca | hunspell-en-za, +Description: English (Great Britain) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in English (Great + Britain). + +Package: thunderbird-l10n-es-ar +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:es-AR +Recommends: + hunspell-es | myspell-es, +Description: Spanish (Argentina) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Spanish (Argentina). + +Package: thunderbird-l10n-es-es +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:es-ES +Recommends: + hunspell-es | myspell-es, +Description: Spanish (Spain) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Spanish (Spain). + +Package: thunderbird-l10n-es-mx +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:es-MX +Recommends: + hunspell-es | myspell-es, +Description: Spanish (Mexican) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Spanish (Mexican). + +Package: thunderbird-l10n-et +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:et +Recommends: + myspell-et, +Description: Estonian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Estonian. + +Package: thunderbird-l10n-eu +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:eu +Recommends: + hunspell-eu, +Description: Basque language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Basque. + +Package: thunderbird-l10n-fi +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fi +Recommends: + myspell-fi, + xul-ext-mozvoikko, +Description: Finnish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Finnish. + +Package: thunderbird-l10n-fr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fr +Recommends: + hunspell-fr | myspell-fr | myspell-fr-gut, +Description: French language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in French. + +Package: thunderbird-l10n-fy-nl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fy-NL +Description: Frisian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Frisian. + +Package: thunderbird-l10n-ga-ie +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ga-IE +Description: Irish (Ireland) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Irish (Ireland). + +Package: thunderbird-l10n-gd +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:gd +Recommends: + hunspell-gd | myspell-gd, +Description: Gaelic (Scottish) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Gaelic (Scottish). + +Package: thunderbird-l10n-gl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:gl +Recommends: + hunspell-gl | hunspell-gl-es, +Description: Galician language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Galician. + +Package: thunderbird-l10n-he +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:he +Recommends: + hunspell-he | myspell-he, +Description: Hebrew language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Hebrew. + +Package: thunderbird-l10n-hr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hr +Recommends: + hunspell-hr | myspell-hr, +Description: Croatian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Croatian. + +Package: thunderbird-l10n-hsb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hsb +Recommends: + aspell-hsb, +Description: Upper Sorbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Upper Sorbian. + +Package: thunderbird-l10n-hu +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hu +Recommends: + hunspell-hu | myspell-hu, +Description: Hungarian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Hungarian. + +Package: thunderbird-l10n-hy-am +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hy-AM +Recommends: + myspell-hy, +Description: Armenian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Armenian. + +Package: thunderbird-l10n-id +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:id +Description: Indonesian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Indonesian. + +Package: thunderbird-l10n-is +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:is +Recommends: + hunspell-is, +Description: Icelandic language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Icelandic. + +Package: thunderbird-l10n-it +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:it +Recommends: + hunspell-it | myspell-it, +Description: Italian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Italian. + +Package: thunderbird-l10n-ja +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ja +Description: Japanese language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Japanese. + +Package: thunderbird-l10n-ka +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ka +Description: Georgian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Georgian. + +Package: thunderbird-l10n-kab +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:kab +Description: Kabyle language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kabyle. + +Package: thunderbird-l10n-kk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:kk +Recommends: + hunspell-kk, +Description: Kazakh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kazakh. + +Package: thunderbird-l10n-ko +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ko +Recommends: + hunspell-ko, +Description: Korean language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Korean. + +Package: thunderbird-l10n-lv +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:lv +Recommends: + hunspell-lv, +Description: Ltavian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Latvian. + +Package: thunderbird-l10n-lt +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:lt +Recommends: + hunspell-lt | myspell-lt, +Description: Lithuanian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Lithuanian. + +Package: thunderbird-l10n-ms +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ms +Description: Malay language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Malay. + +Package: thunderbird-l10n-nb-no +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nb-NO +Recommends: + hunspell-no | myspell-nb, +Description: Bokmaal (Norway) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Bokmaal (Norway). + +Package: thunderbird-l10n-nl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nl +Recommends: + hunspell-nl | myspell-nl, +Description: Dutch language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Dutch. + +Package: thunderbird-l10n-nn-no +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nn-NO +Recommends: + hunspell-no | myspell-nn, +Description: Nynorsk (Norway) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Nynorsk (Norway). + +Package: thunderbird-l10n-pa-in +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pa-IN +Description: Punjabi (Gurmukhi) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Punjabi (Gurmukhi). + +Package: thunderbird-l10n-pl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pl +Recommends: + hunspell-pl | myspell-pl, +Description: Polish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Polish. + +Package: thunderbird-l10n-pt-br +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pt-BR +Recommends: + hunspell-pt-br | myspell-pt-br | myspell-pt, +Description: Portuguese (Brazil) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Portuguese (Brazil). + +Package: thunderbird-l10n-pt-pt +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pt-PT +Recommends: + hunspell-pt-pt | myspell-pt-pt | myspell-pt, +Description: Portuguese (Portugal) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Portuguese (Portugal). + +Package: thunderbird-l10n-rm +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:rm +Description: Romansh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Romansh. + +Package: thunderbird-l10n-ro +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ro +Recommends: + hunspell-ro, +Description: Romania language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Romania. + +Package: thunderbird-l10n-ru +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ru +Recommends: + hunspell-ru | myspell-ru, +Description: Russian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Russian. + +Package: thunderbird-l10n-sk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sk +Recommends: + hunspell-sk | myspell-sk, +Description: Slovak language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Slovak. + +Package: thunderbird-l10n-sl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sl +Recommends: + hunspell-sl | myspell-sl, +Description: Slovenian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Slovenian. + +Package: thunderbird-l10n-sq +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sq +Description: Albanian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Albanian. + +Package: thunderbird-l10n-sr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sr +Recommends: + hunspell-sr, +Description: Serbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Serbian. + +Package: thunderbird-l10n-sv-se +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sv-SE +Recommends: + hunspell-sv | myspell-sv-se, +Description: Swedish (Sweden) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Swedish (Sweden). + +Package: thunderbird-l10n-th +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:th +Recommends: + hunspell-th +Description: Thai language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Thai. + +Package: thunderbird-l10n-tr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:tr +Description: Turkish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Turkish. + +Package: thunderbird-l10n-uk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:uk +Recommends: + hunspell-uk | myspell-uk +Description: Ukrainian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Ukrainian. + +Package: thunderbird-l10n-uz +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:uz +Recommends: + hunspell-uz | myspell-uz +Description: Uzbek language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Uzbek. + +Package: thunderbird-l10n-vi +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:vi +Recommends: + hunspell-vi, +Description: Vietnamese language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Vietnamese. + +Package: thunderbird-l10n-zh-cn +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:zh-CN +Description: Chinese (China) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Chinese (China). + +Package: thunderbird-l10n-zh-tw +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:zh-TW +Description: Chinese (Taiwan) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Chinese (Taiwan). diff --git a/copyright b/copyright new file mode 100644 index 0000000000..b66cc5e25b --- /dev/null +++ b/copyright @@ -0,0 +1,3002 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Thunderbird +Source: https://ftp.mozilla.org/pub/mozilla.org/thunderbird/ +Disclaimer: The original upstream tarball is modified from upstream by + removing a set of sourceless binary, non-free, and VCS-related files. You + can find a repack.py script in the debian directory doing this cleanup, + using filtering data present in a source.filter file in the same directory. + If this file is incomplete, which I'm pretty sure is the case, because it's + difficult not to forget anything in this huge amount of data, please file + a bug or contact me. + Some licensing terms are not included verbatim in this file on purpose, for + terms that are available in a file in subdirectories that are not used to + build the binary packages. + +Files: * + thunderbird-l10n/* +Copyright: 1998-2016, Mozilla Project +License: MPL-2.0 or GPL-2 or LGPL-2.1 + +Files: debian/* +Copyright: 2003-2009, Alexander Sack + 2008, Fabien Tassin + 2013-2022, Carsten Schoenert + 2009-2013, Guido Günther + 2010-2016, Christoph Goehre +License: MPL-1.1 or MPL-2.0 or GPL-2 or LGPL-2.1 + +Files: debian/logo/icedove/icedove_icon_plain.svg + debian/logo/icedove/icedove_icon_profile_plain.svg + debian/logo/icedove/icedove_icon_profile.svg + debian/logo/icedove/icedove_icon.svg + debian/logo/icedove/icedove_lettering.svg + debian/logo/icedove/icedove_logo.svg +Copyright: 2006-2007, Ricardo Fernández Fuentes +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/calendar/* +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/calendar/base/modules/* +Copyright: 2011-2012, Philipp Kewisch +License: MPL-2.0 + +Files: comm/calendar/itip/* +Copyright: 2007, Simdesk Technologies +License: MPL-1.1 + +Files: comm/calendar/libical/* +Copyright: Eric Busboom +License: MPL-1.1 or LGPL-2.1 + +Files: comm/calendar/libical/scripts/mkneticali.pl +Copyright: 1999, Eric Busboom +License: MPL-1.0 + +Files: comm/calendar/libical/scripts/mkparameterrestrictions.pl + comm/calendar/libical/scripts/mkrestrictionrecords.pl +Copyright: 1999, Graham Davison +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/astime.h + comm/calendar/libical/src/libical/caldate.c +Copyright: 1986-2000, Hiram Clawson +License: BSD-2-clause + +Files: comm/calendar/libical/src/libical/icalarray.c + comm/calendar/libical/src/libical/icalarray.h +Copyright: 2001, Ximian, Inc +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalattach.c +Copyright: 2000, Andrea Campi +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalattach.h + comm/calendar/libical/src/libical/icalattachimpl.h +Copyright: 2000, 2002, Andrea Campi +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalcomponent.c + comm/calendar/libical/src/libical/icalduration.c + comm/calendar/libical/src/libical/icalmime.c +Copyright: 2008, dothebart + 2000, Eric Busboom, http://www.softwarestudio.org +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/icalmemory.c + comm/calendar/libical/src/libical/icaltimezone.c + comm/calendar/libical/src/libical/icaltimezone.h + comm/calendar/libical/src/libical/icalparser.c + comm/calendar/libical/src/libical/sspm.c + comm/calendar/libical/src/libical/sspm.h +Copyright: 2008, dothebart +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/icptrholder.h + comm/calendar/libical/src/libical/vcomponent.h +Copyright: 2001, Critical Path +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/vsnprintf.c +Copyright: 1997, Theo de Raadt +License: BSD-2-clause + +Files: comm/chat/protocols/irc/test/test_sendBufferedCommand.js +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/chat/protocols/matrix +Copyright: 2021-2022 The Matrix.org Foundation C.I.C. +License: Apache-2.0 + +Files: comm/mail/base/test/unit/resources/* + comm/mail/base/test/unit/test_alertHook.js + comm/mail/base/test/unit/test_attachmentChecker.js + comm/mail/components/test/unit/test_about_support.js + comm/mail/locales/en-US/all-l10n.js +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +Copyright: 2020, MZLA Technologies Corporation +License: CC0-1.0 + +Files: comm/mailnews/* + browser/* +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/mailnews/base/src/nsMsgAccountManager.h + comm/mailnews/local/src/nsPop3Protocol.cpp + comm/mailnews/mime/src/mimebuf.cpp + comm/mailnews/mime/src/mimebuf.h + comm/mailnews/mime/src/mimedrft.cpp + comm/mailnews/mime/src/mimei.cpp + comm/mailnews/mime/src/mimemrel.cpp + comm/mailnews/mime/src/mimeobj.cpp + comm/mailnews/mime/src/mimetext.cpp +Copyright: 2000, International Business Machines (IBM) Corporation +License: MPL-2.0 + +Files: comm/mailnews/mime/src/modmimee.h +Copyright: 1996, Netscape Communications Corporation +License: MPL-2.0 + +Files: browser/components/translation/cld2/* +Copyright: 2013-2014, Google Inc. +License: Apache-2.0 + +Files: config/tests/unit-mozunit.py + config/tests/unitMozZipFile.py +Copyright: no-info-found +License: MPL-2.0 + +Files: docshell/test/* +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/base/nsPropertyTable.cpp + dom/base/nsPropertyTable.h +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: dom/canvas/WebGLTexelConversions.h +Copyright: 2010, Mozilla Corporation + 2010, Google Inc. + 2010, Apple Inc. +License: BSD-2-clause + +Files: dom/canvas/WebGLValidateStrings.h +Copyright: 2011, Mozilla Corporation + 2011, Apple Inc. +License: BSD-2-clause + +Files: dom/imptests/testharnessreport.js + dom/indexedDB/test/browser_bug839193.js + dom/indexedDB/test/bug839193.js +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/events/PointerEvent.cpp + dom/events/PointerEvent.h +Copyright: 2013, Microsoft Open Technologies, Inc. +License: MPL-2.0 + +Files: dom/media/gmp/GMPVideoEncodedFrameImpl.h +Copyright: 2014, Mozilla Corporation +License: BSD-2-clause + +Files: dom/media/gmp/gmp-api/* +Copyright: 2014, Mozilla Foundation + 2011, The WebRTC project authors. +License: BSD-3-clause + +Files: dom/media/gmp/gmp-api/gmp-storage.h +Copyright: 2012-2014, Mozilla Foundation and contributors +License: Apache-2.0 + +Files: dom/media/gmp/gmp-api/gmp-errors.h + dom/media/gmp/gmp-api/gmp-platform.h +Copyright: 2014, Mozilla +License: BSD-3-clause + +Files: dom/media/test/make-headers.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/media/webaudio/FFTBlock.cpp + dom/media/webaudio/blink/* +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: dom/media/webaudio/blink/DenormalDisabler.h + dom/media/webaudio/blink/HRTFPanner.cpp + dom/media/webaudio/blink/HRTFPanner.h +Copyright: 2010-2011, Google Inc. +License: BSD-2-clause + +Files: dom/media/webaudio/blink/IRC_Composite_C_R0195-incl.cpp +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/media/webspeech/recognition/endpointer.cc + dom/media/webspeech/recognition/endpointer.h + dom/media/webspeech/recognition/energy_endpointer.cc + dom/media/webspeech/recognition/energy_endpointer.h + dom/media/webspeech/recognition/energy_endpointer_params.cc + dom/media/webspeech/recognition/energy_endpointer_params.h +Copyright: 2006-2013, The Chromium Authors +License: BSD-3-clause + +Files: dom/svg/test/matrixUtils.js + dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js + dom/tests/browser/browser_bug1004814.js + dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js + dom/tests/browser/browser_frame_elements.js + dom/tests/mochitest/dom-level1-core/* + dom/tests/mochitest/dom-level2-core/* + dom/tests/unit/test_bug319968.js + dom/tests/unit/test_bug465752.js +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/tests/mochitest/ajax/jquery/dist/* +Copyright: 2006-2008, John Resig (jquery.com) +License: GPL-2 or Expat + +Files: dom/tests/mochitest/ajax/prototype/test/lib/* +Copyright: 2005, Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) + 2005, Michael Schuerig (http://www.schuerig.de/michael/) + 2005, Jon Tirsen (http://www.tirsen.com) +License: Expat + +Files: dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js +Copyright: 2005-2007, Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +License: Expat + +Files: dom/xul/nsXULElement.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: editor/libeditor/tests/* +Copyright: 2007-2008, 2010, 2012, Google Inc +License: Apache-2.0 + +Files: extensions/auth/gssapi.h +Copyright: 1993, OpenVision Technologies, Inc +License: other-1 + Permission to use, copy, modify, distribute, and sell this software + and its documentation for any purpose is hereby granted without fee, + provided that the above copyright notice appears in all copies and + that both that copyright notice and this permission notice appear in + supporting documentation, and that the name of OpenVision not be used + in advertising or publicity pertaining to distribution of the software + without specific, written prior permission. OpenVision makes no + representations about the suitability of this software for any + purpose. It is provided "as is" without express or implied warranty. + . + OPENVISION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + EVENT SHALL OPENVISION BE LIABLE FOR ANY SPECIAL, INDIRECT OR + CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF + USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + +Files: extensions/spellcheck/hunspell/* +Copyright: 2002-2005 Kevin B. Hendricks, Stratford, Ontario, Canada + 2002-2005 László Németh +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: extensions/spellcheck/hunspell/src/phonet.cxx + extensions/spellcheck/hunspell/src/phonet.hxx +Copyright: 2000, 2007 Bjoern Jacke + 2007, László Németh +License: LGPL-2.1 + +Files: extensions/spellcheck/locales/en-US/hunspell/* +Copyright: various contributors +License: other-2 + The complete text of the hunspell License can be found in the + `README_en_US.txt' file in the same directory as this file. + +Files: gfx/cairo/cairo/* +Copyright: 2005-2008, RedHat, Inc. + 2003, University of Southern California + 2007-2008, Carl D. Worth , + Kristian Høgsberg , + Keith Packard , + Adrian Johnson + various contributors +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-analysis-surface-private.h + gfx/cairo/cairo/src/cairo-scaled-font.c + gfx/cairo/cairo/src/cairo-wideint-private.h + gfx/cairo/cairo/src/cairo-wideint-type-private.h + gfx/cairo/cairo/src/cairo-wideint.c +Copyright: 2004-2005, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-analysis-surface.c +Copyright: 2007, Adrian Johnson + 2006, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-arc.c + gfx/cairo/cairo/src/cairo-directfb-surface.c + gfx/cairo/cairo/src/cairo-directfb.h + gfx/cairo/cairo/src/cairo-fixed.c + gfx/cairo/cairo/src/cairo-hull.c + gfx/cairo/cairo/src/cairo-matrix.c + gfx/cairo/cairo/src/cairo-path-bounds.c + gfx/cairo/cairo/src/cairo-path-fill.c + gfx/cairo/cairo/src/cairo-path-stroke.c + gfx/cairo/cairo/src/cairo-pdf.h + gfx/cairo/cairo/src/cairo-png.c + gfx/cairo/cairo/src/cairo-polygon.c + gfx/cairo/cairo/src/cairo-ps.h + gfx/cairo/cairo/src/cairo-slope.c + gfx/cairo/cairo/src/cairo-spline.c + gfx/cairo/cairo/src/cairo-xlib-xrender.h + gfx/cairo/cairo/src/cairo-xlib.h +Copyright: 2002-2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-atomic-private.h +Copyright: 2010, Andrea Canciani + 2007, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-atomic.c + gfx/cairo/cairo/src/cairo-drm.h + gfx/cairo/cairo/src/cairo-freed-pool-private.h + gfx/cairo/cairo/src/cairo-freed-pool.c + gfx/cairo/cairo/src/cairo-list-private.h + gfx/cairo/cairo/src/cairo-path-in-fill.c + gfx/cairo/cairo/src/cairo-reference-count-private.h + gfx/cairo/cairo/src/cairo-rtree-private.h + gfx/cairo/cairo/src/cairo-rtree.c + gfx/cairo/cairo/src/cairo-script-surface.c + gfx/cairo/cairo/src/cairo-script.h + gfx/cairo/cairo/src/cairo-surface-clipper-private.h + gfx/cairo/cairo/src/cairo-surface-clipper.c + gfx/cairo/cairo/src/cairo-tee-surface-private.h + gfx/cairo/cairo/src/cairo-tee.h + gfx/cairo/cairo/src/cairo-xlib-display.c + gfx/cairo/cairo/src/cairo-xml-surface.c + gfx/cairo/cairo/src/cairo-xml.h +Copyright: 2007-2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-base64-stream.c +Copyright: 2009, Chris Wilson + 2005-2007, Emmanuel Pacaud +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-bentley-ottmann-rectangular.c + gfx/cairo/cairo/src/cairo-bentley-ottmann-rectilinear.c + gfx/cairo/cairo/src/cairo-bentley-ottmann.c +Copyright: 2008-2009, Chris Wilson + 2006, Red Hat, Inc + 2004, Carl Worth +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-beos-surface.cpp + gfx/cairo/cairo/src/cairo-beos.h +Copyright: 2005, Christian Biesinger +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-botor-scan-converter.c +Copyright: 2009, Intel Corporation + 2008, M Joonas Pihlaja + 2008, Chris Wilson + 2007, David Turner + 2006, Red Hat, Inc + 2004, Carl Worth +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-boxes-private.h + gfx/cairo/cairo/src/cairo-boxes.c + gfx/cairo/cairo/src/cairo-composite-rectangles-private.h + gfx/cairo/cairo/src/cairo-composite-rectangles.c + gfx/cairo/cairo/src/cairo-device-private.h + gfx/cairo/cairo/src/cairo-device.c + gfx/cairo/cairo/src/cairo-observer.c + gfx/cairo/cairo/src/cairo-rectangular-scan-converter.c + gfx/cairo/cairo/src/cairo-surface-snapshot-private.h + gfx/cairo/cairo/src/cairo-surface-subsurface-private.h + gfx/cairo/cairo/src/cairo-surface-subsurface.c +Copyright: 2009-2010, Intel Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-cff-subset.c + gfx/cairo/cairo/src/cairo-deflate-stream.c + gfx/cairo/cairo/src/cairo-image-info-private.h + gfx/cairo/cairo/src/cairo-image-info.c + gfx/cairo/cairo/src/cairo-type3-glyph-surface-private.h + gfx/cairo/cairo/src/cairo-type3-glyph-surface.c +Copyright: 2006-2008, Adrian Johnson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-clip.c + gfx/cairo/cairo/src/cairo-surface-offset-private.h + gfx/cairo/cairo/src/cairo-surface-wrapper-private.h +Copyright: 2009, Chris Wilson + 2005, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-color.c + gfx/cairo/cairo/src/cairo-compiler-private.h + gfx/cairo/cairo/src/cairo-error-private.h + gfx/cairo/cairo/src/cairo-gstate.c + gfx/cairo/cairo/src/cairo-path-fixed.c + gfx/cairo/cairo/src/cairo-ps-surface-private.h + gfx/cairo/cairo/src/cairo-rectangle.c + gfx/cairo/cairo/src/cairo-scaled-font-private.h + gfx/cairo/cairo/src/cairo-slope-private.h + gfx/cairo/cairo/src/cairo-surface-fallback-private.h + gfx/cairo/cairo/src/cairo-surface-fallback.c + gfx/cairo/cairo/src/cairo-surface-private.h + gfx/cairo/cairo/src/cairo-surface.c + gfx/cairo/cairo/src/cairo-types-private.h + gfx/cairo/cairo/src/cairo-version.c + gfx/cairo/cairo/src/cairo-xlib-surface.c + gfx/cairo/cairo/src/cairo.c + gfx/cairo/cairo/src/cairo.h + gfx/cairo/cairo/src/cairoint.h +Copyright: 2005, 2006, Red Hat, Inc. + 2002, 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl-private.h + gfx/cairo/cairo/src/cairo-gl-surface.c + gfx/cairo/cairo/src/cairo-glx-context.c +Copyright: 2009, Eric Anholt + 2009, Chris Wilson + 2005, 2010, Red Hat, Inc +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-fixed-private.h + gfx/cairo/cairo/src/cairo-fixed-type-private.h + gfx/cairo/cairo/src/cairo-malloc-private.h + gfx/cairo/cairo/src/cairo-qt-surface.cpp + gfx/cairo/cairo/src/cairo-qt.h + gfx/cairo/cairo/src/cairo-quartz-font.c + gfx/cairo/cairo/src/cairo-quartz-image-surface.c + gfx/cairo/cairo/src/cairo-quartz-image.h + gfx/cairo/cairo/src/cairo-quartz-surface.c + gfx/cairo/cairo/src/cairo-quartz.h +Copyright: 2006-2008, Mozilla Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-face-twin.c + gfx/cairo/cairo/src/cairo-ft-font.c + gfx/cairo/cairo/src/cairo-traps.c + gfx/cairo/cairo/src/cairo-xlib-screen.c +Copyright: 2005, 2007, 2008, Red Hat, Inc + 2000, 2002, 2004, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-face.c + gfx/cairo/cairo/src/cairo-toy-font-face.c +Copyright: 2005, 2008, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-options.c +Copyright: 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-fontconfig-private.h +Copyright: 2010, Intel Corporation + 2005, Red Hat, Inc. + 2000, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl-glyphs.c +Copyright: 2010, Red Hat, Inc., Intel Corporation + 2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl-shaders.c +Copyright: 2010, Red Hat, Inc., Eric Anholt + 2009, T. Zachary Laine +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl.h +Copyright: 2009, Eric Anholt + 2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-image-surface.c + gfx/cairo/cairo/src/cairo-xcb-surface.c + gfx/cairo/cairo/src/cairo-xcb.h +Copyright: 2009-2010, Intel Corporation + 2002, 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-misc.c + gfx/cairo/cairo/src/cairo-ps-surface.c +Copyright: 2007, 2008, Adrian Johnson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-mutex-impl-private.h + gfx/cairo/cairo/src/cairo-mutex-private.h + gfx/cairo/cairo/src/cairo-mutex-type-private.h +Copyright: 2007, Mathias Hasselmann + 2005, 2007, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-mutex-list-private.h + gfx/cairo/cairo/src/cairo-mutex.c +Copyright: 2007, Mathias Hasselmann +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-os2-private.h + gfx/cairo/cairo/src/cairo-os2-surface.c + gfx/cairo/cairo/src/cairo-os2.h +Copyright: 2005, 2006, netlabs.org +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-paginated-surface.c + gfx/cairo/cairo/src/cairo-pdf-operators-private.h + gfx/cairo/cairo/src/cairo-pdf-operators.c + gfx/cairo/cairo/src/cairo-pdf-surface-private.h + gfx/cairo/cairo/src/cairo-pdf-surface.c + gfx/cairo/cairo/src/cairo-recording-surface.c +Copyright: 2007, 2008, Adrian Johnson + 2004-2006, Red Hat, Inc +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-pen.c +Copyright: 2008, Chris Wilson + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-platform.h +Copyright: 2005, Mozilla Foundation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-quartz-private.h +Copyright: 2006-2007, Mozilla Corporation + 2004, Calum Robinson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-scaled-font-subsets.c +Copyright: 2006, Keith Packard + 2005, 2006, Red Hat, Inc. + 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-spans-private.h + gfx/cairo/cairo/src/cairo-spans.c +Copyright: 2008, M Joonas Pihlaja +License: Expat + +Files: gfx/cairo/cairo/src/cairo-surface-offset.c + gfx/cairo/cairo/src/cairo-surface-wrapper.c +Copyright: 2009, Chris Wilson + 2007, Adrian Johnson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-surface-snapshot.c +Copyright: 2009, Intel Corporation + 2005, Red Hat, Inc + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-svg-surface-private.h + gfx/cairo/cairo/src/cairo-svg-surface.c +Copyright: 2005-2007, Emmanuel Pacaud + 2004, 2006, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-svg.h +Copyright: 2005, Emmanuel Pacaud +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-tee-surface.c +Copyright: 2009, Chris Wilson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-tor-scan-converter.c +Copyright: 2008, M Joonas Pihlaja + 2007, David Turner +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-unicode.c +Copyright: 2005, Red Hat, Inc + 1999, Tom Tromey +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-vg-surface.c +Copyright: 2009, Chris Wilson + 2008, Opened Hand Ltd +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-vg.h +Copyright: 2009, Chris Wilson + 2007, Mozilla Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/libpixman/src/* +Copyright: 2000 Keith Packard, member of The XFree86 Project, Inc., + 2005 Lars Knoll & Zack Rusin, Trolltech + 2008 Aaron Plattner, NVIDIA Corporation + 2008 Mozilla Corporation + 1999,2004 Keith Packard + 2000 SuSE, Inc. + 2004,2005,2007,2008 Red Hat, Inc. + 2004 Nicholas Miell + 2005 Trolltech AS + 2008 Rodrigo Kumpera + 2008 André Tupinambá + 2007 Luca Barbato +License: other-3 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of the copyright holder not be used in + advertising or publicity pertaining to distribution of the software without + specific, written prior permission. The copyright holder makes no + representations about the suitability of this software for any purpose. It + is provided "as is" without express or implied warranty. + . + THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS + SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY + SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN + AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING + OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/cairo/libpixman/src/pixman-arm-common.h + gfx/cairo/libpixman/src/pixman-arm-neon-asm.h +Copyright: 2009-2010, Nokia Corporation +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-combine-float.c +Copyright: 2010, 2012, Soren Sandmann Pedersen + 2010, 2012, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-filter.c +Copyright: 2012, Soren Sandmann + 2012, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-glyph.c +Copyright: 2010-2012, Red Hat, Inc. + 2010, 2012, Soren Sandmann +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-mips-dspr2-asm.h + gfx/cairo/libpixman/src/pixman-mips-dspr2.c + gfx/cairo/libpixman/src/pixman-mips-dspr2.h +Copyright: 2012, MIPS Technologies, Inc. +License: BSD-3-clause + +Files: gfx/cairo/libpixman/src/pixman-noop.c + gfx/cairo/libpixman/src/pixman-version.h +Copyright: 1996, 1998-1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-region.c +Copyright: 1998, Keith Packard + 1987-1989, Digital Equipment Coportation + 1987-1989, The Open Group +License: other-4 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation. + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + . + Except as contained in this notice, the name of The Open Group shall not be + used in advertising or otherwise to promote the sale, use or other dealings + in this Software without prior written authorization from The Open Group. + . + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Digital not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + . + DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/cairo/libpixman/src/pixman.h +Copyright: 2007, Red Hat, Inc. + 1998, 2004, Keith Packard + 1987, Digital Equipment Corporation, Maynard, Massachusetts + 1987, 1998, The Open Group +License: other-5 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation. + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + . + Except as contained in this notice, the name of The Open Group shall not be + used in advertising or otherwise to promote the sale, use or other dealings + in this Software without prior written authorization from The Open Group. + . + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Digital not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + . + DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/gl/ForceDiscreteGPUHelperCGL.h +Copyright: The Chromium Authors +License: MPL-2.0 + +Files: gfx/graphite2/* +Copyright: 2010-2013, SIL International +License: LGPL-2.1 + +Files: gfx/graphite2/src/MozGrMalloc.h +Copyright: no-info-found +License: MPL-2.0 + +Files: gfx/harfbuzz/* +Copyright: 1998-2004 David Turner and Werner Lemberg + 2005 David Turner + 2004, 2007-2009, 2010 Red Hat, Inc. + 2006 Behdad Esfahbod + 2007 Chris Wilson + 2009 Martin Hosken and SIL International + 2009 Keith Stribley + 2010, 2012 Mozilla Foundation + 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) + 2011 Codethink Limited + 2010,2011,2012 Google, Inc. +License: old-MIT + +Files: gfx/harfbuzz/src/hb-blob.cc + gfx/harfbuzz/src/hb-blob.h + gfx/harfbuzz/src/hb-face.h + gfx/harfbuzz/src/hb-font.h + gfx/harfbuzz/src/hb-ft.h + gfx/harfbuzz/src/hb-ot-layout.h + gfx/harfbuzz/src/hb-ot-shape.h + gfx/harfbuzz/src/hb-ot.h + gfx/harfbuzz/src/hb.h + gfx/harfbuzz/src/main.cc +Copyright: 1996, 1998-1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-buffer.cc + gfx/harfbuzz/src/hb-buffer.h +Copyright: 2011-2012, Google, Inc. + 2004, 2007, 2009, 2010, Red Hat, Inc. + 1998-2004, David Turner and Werner Lemberg +License: Expat + +Files: gfx/harfbuzz/src/hb-common.cc + gfx/harfbuzz/src/hb-common.h + gfx/harfbuzz/src/hb-face.cc + gfx/harfbuzz/src/hb-font.cc + gfx/harfbuzz/src/hb-glib.cc + gfx/harfbuzz/src/hb-glib.h + gfx/harfbuzz/src/hb-icu.h + gfx/harfbuzz/src/hb-ot-head-table.hh + gfx/harfbuzz/src/hb-ot-layout-gdef-table.hh + gfx/harfbuzz/src/hb-ot-layout-gpos-table.hh + gfx/harfbuzz/src/hb-ot-layout-gsub-table.hh + gfx/harfbuzz/src/hb-ot-map.cc + gfx/harfbuzz/src/hb-ot-shape.cc + gfx/harfbuzz/src/hb-ot-tag.cc + gfx/harfbuzz/src/hb-shape.cc + gfx/harfbuzz/src/hb-shape.h +Copyright: 2010-2013, Google, Inc. + 2007-2010, Red Hat, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-coretext.cc +Copyright: 2012-2013, Mozilla Foundation + 2012-2013, Google, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-coretext.h +Copyright: 2008-2014, Mozilla Foundation +License: Expat + +Files: gfx/harfbuzz/src/hb-ft.cc +Copyright: 2009, Red Hat, Inc. + 2009, Keith Stribley +License: Expat + +Files: gfx/harfbuzz/src/hb-graphite2.cc +Copyright: 2011, SIL International + 2011, Martin Hosken + 2011-2012, Google, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-graphite2.h +Copyright: 2011, SIL International + 2011, Martin Hosken +License: Expat + +Files: gfx/harfbuzz/src/hb-icu.cc +Copyright: 2011, Google, Inc. + 2009, Red Hat, Inc. + 2009, Keith Stribley +License: Expat + +Files: gfx/harfbuzz/src/hb-ot-layout.cc +Copyright: 2012-2013, Google, Inc. + 2007-2009, Red Hat, Inc. + 2006, Behdad Esfahbod + 1998-2004, David Turner and Werner Lemberg +License: Expat + +Files: gfx/harfbuzz/src/hb-unicode.cc + gfx/harfbuzz/src/hb-unicode.h +Copyright: 2011, Codethink Limited + 2010-2012, Google, Inc. + 2009, Red Hat, Inc. +License: Expat + +Files: gfx/ots/* +Copyright: 2009 The Chromium Authors +License: BSD-3-clause + +Files: gfx/ots/sync.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: gfx/qcms/* +Copyright: 2009, Mozilla Foundation + 1998-2007, Marti Maria +License: Expat + +Files: gfx/qcms/qcms.h +Copyright: 1994-1996, SunSoft, Inc. +License: Expat + +Files: gfx/thebes/gfxScriptItemizer.cpp + gfx/thebes/gfxScriptItemizer.h +Copyright: 1995-2009, International Business Machines (IBM) +License: MPL-2.0 or Expat + +Files: gfx/ycbcr/* +Copyright: 2006-2008 The Chromium Authors +License: BSD-3-clause + +Files: gfx/ycbcr/YCbCrUtils.cpp + gfx/ycbcr/YCbCrUtils.h + gfx/ycbcr/chromium_types.h + gfx/ycbcr/ycbcr_to_rgb565.cpp +Copyright: no-info-found +License: MPL-2.0 + +Files: intl/icu/source/tools/tzcode/* +Copyright: no-info-found +License: public-domain + +Files: intl/unicharutil/util/nsBidiUtils.cpp + intl/unicharutil/util/nsUnicharUtils.h +Copyright: 2000-2002, Japan Network Information Center +License: MPL-2.0 or BSD-3-clause + +Files: intl/unicharutil/util/nsUnicodePropertyData.cpp +Copyright: 1991-2014, Unicode, Inc. +License: MPL-2.0 + +Files: ipc/chromium/* +Copyright: 2006-2008 The Chromium Authors +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/* +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2000-2009, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/* +Copyright: 2000-2002 Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/WIN32-Code/tree.h +Copyright: 2002, Niels Provos +License: BSD-2-clause + +Files: ipc/chromium/src/third_party/libevent/arc4random.c +Copyright: 2010-2012, Niels Provos and Nick Mathewson + 2010, Chris Davis, Niels Provos, and Nick Mathewson + 2008, Damien Miller + 1996, David Mazieres +License: ISC + +Files: ipc/chromium/src/third_party/libevent/buffer_iocp.c + ipc/chromium/src/third_party/libevent/bufferevent-internal.h + ipc/chromium/src/third_party/libevent/bufferevent_async.c + ipc/chromium/src/third_party/libevent/bufferevent_openssl.c + ipc/chromium/src/third_party/libevent/changelist-internal.h + ipc/chromium/src/third_party/libevent/defer-internal.h + ipc/chromium/src/third_party/libevent/evmap-internal.h + ipc/chromium/src/third_party/libevent/evmap.c + ipc/chromium/src/third_party/libevent/evthread_pthread.c + ipc/chromium/src/third_party/libevent/evthread_win32.c + ipc/chromium/src/third_party/libevent/evutil.c + ipc/chromium/src/third_party/libevent/evutil_rand.c + ipc/chromium/src/third_party/libevent/iocp-internal.h + ipc/chromium/src/third_party/libevent/ipv6-internal.h + ipc/chromium/src/third_party/libevent/mm-internal.h + ipc/chromium/src/third_party/libevent/ratelim-internal.h + ipc/chromium/src/third_party/libevent/util-internal.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/bufferevent.c + ipc/chromium/src/third_party/libevent/epoll.c +Copyright: 2007-2012, Niels Provos, Nick Mathewson + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/bufferevent_pair.c + ipc/chromium/src/third_party/libevent/event_iocp.c + ipc/chromium/src/third_party/libevent/evthread-internal.h + ipc/chromium/src/third_party/libevent/evthread.c + ipc/chromium/src/third_party/libevent/listener.c +Copyright: 2008-2012, Niels Provos, Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/compat/* +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/evdns.c +Copyright: 2007-2012, Nick Mathewson and Niels Provos + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/evport.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2007, Sun Microsystems + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/buffer.h + ipc/chromium/src/third_party/libevent/include/event2/buffer_compat.h + ipc/chromium/src/third_party/libevent/include/event2/bufferevent_ssl.h + ipc/chromium/src/third_party/libevent/include/event2/thread.h + ipc/chromium/src/third_party/libevent/include/event2/util.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/bufferevent_compat.h +Copyright: 2007-2012, Niels Provos, Nick Mathewson + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/dns.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/log.c +Copyright: 2005-2012, Niels Provos and Nick Mathewson + 2000, Dug Song + 1993, University of California +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/minheap-internal.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2006, Maxim Yegorushkin +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/strlcpy.c +Copyright: 1998, Todd C. Miller +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/* +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/bench.c + ipc/chromium/src/third_party/libevent/test/regress.c + ipc/chromium/src/third_party/libevent/test/regress.h + ipc/chromium/src/third_party/libevent/test/regress_buffer.c + ipc/chromium/src/third_party/libevent/test/regress_bufferevent.c + ipc/chromium/src/third_party/libevent/test/regress_dns.c + ipc/chromium/src/third_party/libevent/test/regress_http.c + ipc/chromium/src/third_party/libevent/test/regress_main.c + ipc/chromium/src/third_party/libevent/test/regress_rpc.c + ipc/chromium/src/third_party/libevent/test/test-eof.c + ipc/chromium/src/third_party/libevent/test/test-init.c + ipc/chromium/src/third_party/libevent/test/test-time.c + ipc/chromium/src/third_party/libevent/test/test-weof.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2000-2009, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/regress_util.c +Copyright: 2009-2012, Nick Mathewson and Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/tinytest.c + ipc/chromium/src/third_party/libevent/test/tinytest.h + ipc/chromium/src/third_party/libevent/test/tinytest_macros.h +Copyright: 2009-2012, Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/win32select.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2003, Michael A. Davis + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/glue/StringUtil.cpp +Copyright: 2006-2008, The Chromium Authors. +License: MPL-2.0 + +Files: ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.cpp + ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.h + ipc/ipdl/test/cxx/IPDLUnitTestSubprocess.cpp + ipc/ipdl/test/cxx/IPDLUnitTestSubprocess.h + ipc/ipdl/test/cxx/IPDLUnitTestTypes.h + ipc/ipdl/test/cxx/IPDLUnitTests.h + ipc/ipdl/test/cxx/TestHighestPrio.cpp + ipc/ipdl/test/cxx/genIPDLUnitTests.py + ipc/ipdl/test/cxx/app/* +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/builtin/embedjs.py +Copyright: 2012, the V8 project authors +License: MPL-2.0 or BSD-3-clause + +Files: js/src/ctypes/libffi/ltmain.sh +Copyright: 1996-2001, 2003-2006, Free Software Foundation +License: GPL-2+ + +Files: js/src/ctypes/libffi/msvcc.sh +Copyright: 2009, Daniel Witte +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: js/src/ctypes/libffi/src/* +Copyright: 2011-2013, Anthony Green + 1996-2004, 2007, 2008, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/aarch64/* +Copyright: 2009-2012, ARM Ltd. +License: Expat + +Files: js/src/ctypes/libffi/src/arc/* +Copyright: 2013, Synopsys, Inc. (www.synopsys.com) + 2012, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/arc/ffi.c +Copyright: 2013, Synopsys, Inc. (www.synopsys.com) +License: Expat + +Files: js/src/ctypes/libffi/src/arm/* +Copyright: 2012, Anthony Green + 2010, CodeSourcery + 1996-2003, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/arm/ffi.c +Copyright: 2011, Timothy Wall + 2011, Plausible Labs Cooperative, Inc. + 2011, Free Software Foundation + 2011, Anthony Green + 1998, 2008, 2011, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/avr32/* +Copyright: 2011-2012, Anthony Green + 2009, Bradley Smith +License: Expat + +Files: js/src/ctypes/libffi/src/bfin/* +Copyright: 2012, Alexandre K. I. de Mendonca +License: Expat + +Files: js/src/ctypes/libffi/src/closures.c +Copyright: 2011, Plausible Labs Cooperative, Inc + 2007, 2009-2010, Red Hat, Inc + 2007, 2009-2010, Free Software Foundation, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/cris/ffi.c +Copyright: 2007, Free Software Foundation, Inc. + 2005, Axis Communications AB + 2004, Simon Posnjak + 1998, Cygnus Solutions +License: Expat + +Files: js/src/ctypes/libffi/src/debug.c + js/src/ctypes/libffi/src/java_raw_api.c + js/src/ctypes/libffi/src/raw_api.c + js/src/ctypes/libffi/src/types.c +Copyright: 1996, 1998, 1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/frv/ffi.c +Copyright: 2008, Red Hat, Inc. + 2007, Free Software Foundation, Inc. + 2004, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/ia64/ffi.c +Copyright: 2011, Anthony Green + 2000, Hewlett Packard Company + 1998, 2007, 2008, 2012, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/ia64/ia64_flags.h +Copyright: 2000, Hewlett Packard Company +License: Expat + +Files: js/src/ctypes/libffi/src/m32r/* +Copyright: 2008, Red Hat, Inc. + 2004, Renesas Technology +License: Expat + +Files: js/src/ctypes/libffi/src/m32r/ffitarget.h +Copyright: 2012, Anthony Green + 2004, Renesas Technology +License: Expat + +Files: js/src/ctypes/libffi/src/m88k/* +Copyright: 2013, Miodrag Vallat. +License: Expat + +Files: js/src/ctypes/libffi/src/metag/* +Copyright: 2013, Imagination Technologies Ltd. +License: Expat + +Files: js/src/ctypes/libffi/src/metag/ffi.c +Copyright: 2013, Imagination Technologies +License: Expat + +Files: js/src/ctypes/libffi/src/microblaze/* +Copyright: 2012, 2013, Xilinx, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/mips/ffi.c +Copyright: 2011, Anthony Green + 2008, David Daney + 1996, 2007, 2008, 2011, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/moxie/* +Copyright: 2012, 2013, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/nios2/* +Copyright: 2013, Mentor Graphics +License: Expat + +Files: js/src/ctypes/libffi/src/pa/ffi.c +Copyright: 2011, Anthony Green + 2008, Red Hat, Inc. + 2006, Free Software Foundation, Inc. + 2003, 2004, Randolph Chung +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/* +Copyright: 2013, IBM + 2011, Kyle Moffett + 2011, Anthony Green + 2008, Red Hat, Inc. + 2007, 2008, Free Software Foundation, Inc. + 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/asm.h +Copyright: 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/ffi_darwin.c +Copyright: 2002, 2006, 2007-2009-2010, Free Software Foundation, Inc. + 2001, John Hornkvist + 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/ffitarget.h +Copyright: 2012, Anthony Green + 2007-2008, 2010, Free Software Foundation, Inc. + 1996-2003, 2010, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/s390/ffi.c +Copyright: 2008, Red Hat, Inc. + 2000-2007, Software AG +License: Expat + +Files: js/src/ctypes/libffi/src/sh/ffi.c +Copyright: 2008, Red Hat, Inc. + 2002-2008, 2012, Kaz Kojima +License: Expat + +Files: js/src/ctypes/libffi/src/sh64/ffi.c +Copyright: 2008, Anthony Green + 2003, 2004, 2006-2007, 2012, Kaz Kojima +License: Expat + +Files: js/src/ctypes/libffi/src/tile/* +Copyright: 2012, Tilera Corp +License: Expat + +Files: js/src/ctypes/libffi/src/vax/* +Copyright: 2013, Miodrag Vallat. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/* +Copyright: 2012, Anthony Green + 2007, 2008, 2010, Free Software Foundation, Inc. + 1996-2003, 2010, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/ffi.c +Copyright: 2008, 2010, Free Software Foundation, Inc. + 2002, Roger Sayle + 2002, Ranjit Mathew + 2002, Bo Thorsen + 1996, 1998-1999, 2001, 2007-2008, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/ffi64.c +Copyright: 2013, The Written Word, Inc. + 2011, Anthony Green + 2008, 2010, Red Hat, Inc. + 2002, 2007, Bo Thorsen +License: Expat + +Files: js/src/ctypes/libffi/src/xtensa/* +Copyright: 2013, Tensilica, Inc. +License: Expat + +Files: js/src/devtools/rootAnalysis/analyze.py + js/src/devtools/vprof/testVprofMT.c + js/src/jit/BacktrackingAllocator.h +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/editline/* +Copyright: 1992-1993, Simmule Turner and Rich Salz +License: MPL-2.0 + +Files: js/src/irregexp/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: js/src/jit/ExecutableAllocator.cpp + js/src/jit/ExecutableAllocator.h +Copyright: 2006-2009, 2012, Apple Inc. +License: BSD-2-clause + +Files: js/src/jit/arm/Simulator-arm.cpp + js/src/jit/arm/Simulator-arm.h + js/src/octane/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: js/src/octane/code-load.js +Copyright: 2013, the Octane Benchmark project authors + 2012, The Closure Library Authors + 2012, John Resig, http://jquery.com +License: Apache-2.0 or BSD-3-clause or Expat + +Files: js/src/octane/deltablue.js +Copyright: 2008, the V8 project authors + 1996, John Maloney and Mario Wolczko +License: GPL-2+ + +Files: js/src/octane/gbemu-part1.js + js/src/octane/gbemu-part2.js +Copyright: 2013, Google, Inc. + 2010-2012, Grant Galitz +License: GPL-2 + +Files: js/src/octane/mandreel.js +Copyright: 2012, Onan Games + 2012, Google, Inc.F +License: BSD-3-clause + +Files: js/src/octane/navier-stokes.js +Copyright: 2013, the V8 project authors + 2009, Oliver Hunt +License: Expat + +Files: js/src/octane/typescript.js +Copyright: 2013, the Octane Benchmark project authors +License: BSD-3-clause + +Files: js/src/tests/lib/jittests.py + js/src/tests/shell/shell.js + js/src/tests/test262/browser.js + js/src/tests/test262/intl402/shell.js + js/xpconnect/tests/unit/head_watchdog.js + js/xpconnect/tests/unit/test_attributes.js + js/xpconnect/tests/unit/test_blob.js + js/xpconnect/tests/unit/test_blob2.js + js/xpconnect/tests/unit/test_bogus_files.js + js/xpconnect/tests/unit/test_bug1021312.js + js/xpconnect/tests/unit/test_bug408412.js + js/xpconnect/tests/unit/test_bug451678.js + js/xpconnect/tests/unit/test_bug780370.js + js/xpconnect/tests/unit/test_bug809652.js + js/xpconnect/tests/unit/test_bug809674.js + js/xpconnect/tests/unit/test_bug813901.js + js/xpconnect/tests/unit/test_bug867486.js + js/xpconnect/tests/unit/test_bug976151.js + js/xpconnect/tests/unit/test_bug_442086.js + js/xpconnect/tests/unit/test_file.js + js/xpconnect/tests/unit/test_file2.js + js/xpconnect/tests/unit/test_import.js + js/xpconnect/tests/unit/test_js_weak_references.js + js/xpconnect/tests/unit/test_nuke_sandbox.js + js/xpconnect/tests/unit/test_params.js + js/xpconnect/tests/unit/test_recursive_import.js + js/xpconnect/tests/unit/test_reflect_parse.js + js/xpconnect/tests/unit/test_returncode.js + js/xpconnect/tests/unit/test_sandbox_metadata.js + js/xpconnect/tests/unit/test_tearoffs.js + js/xpconnect/tests/unit/test_unload.js + js/xpconnect/tests/unit/test_watchdog_default.js + js/xpconnect/tests/unit/test_watchdog_disable.js + js/xpconnect/tests/unit/test_watchdog_enable.js + js/xpconnect/tests/unit/test_watchdog_hibernate.js + js/xpconnect/tests/unit/test_watchdog_toggle.js + js/xpconnect/tests/unit/test_xpcomutils.js + layout/base/tests/marionette/* + layout/reftests/border-image/* + layout/reftests/svg/* + layout/reftests/table-dom/* + media/libcubeb/include/* + media/libcubeb/src/cubeb_osx_run_loop.c +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/tests/test262/intl402/browser.js +Copyright: 2012, Mozilla Corporation +License: MPL-2.0 + +Files: js/src/vtune/* +Copyright: 2005-2013, Intel Corporation +License: BSD-3-clause or GPL-2 + +Files: layout/base/nsFrameManager.cpp + layout/base/nsFrameManager.h + layout/generic/nsLineLayout.h + layout/style/nsHTMLStyleSheet.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: layout/reftests/fonts/mark-generate.py + layout/reftests/fonts/math/* +Copyright: 2008, Mozilla Corporation +License: MPL-2.0 + +Files: media/gmp-clearkey/0.1/WMFH264Decoder.cpp + media/gmp-clearkey/0.1/WMFH264Decoder.h + media/gmp-clearkey/0.1/WMFUtils.cpp + media/gmp-clearkey/0.1/WMFUtils.h +Copyright: 2012-2014, Mozilla Foundation and contributors +License: Apache-2.0 + +Files: media/kiss_fft/_kiss_fft_guts.h + media/kiss_fft/kiss_fft.c + media/kiss_fft/kiss_fftr.c +Copyright: 2003-2010, Mark Borgerding +License: BSD-3-clause + +Files: media/libcubeb/src/android/* +Copyright: 2005-2013, The Android Open Source Project +License: Apache-2.0 + +Files: media/libnestegg/* +Copyright: 2010 Mozilla Foundation +License: ISC + +Files: media/libnestegg/src/* +Copyright: 2004-2010, Alex Pankratov +License: BSD-3-clause + +Files: media/libogg/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libopus/celt/* +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/_kiss_fft_guts.h +Copyright: 2003, 2004, Mark Borgerding +License: BSD-2-clause + +Files: media/libopus/celt/arch.h + media/libopus/celt/fixed_generic.h + media/libopus/celt/mathops.c + media/libopus/celt/mathops.h +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO + 2002-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/arm/* +Copyright: 2013, Parrot + 2010, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/arm/fixed_armv4.h + media/libopus/celt/arm/kiss_fft_armv4.h + media/libopus/celt/arm/kiss_fft_armv5e.h +Copyright: 2013, Xiph.Org Foundation and contributors +License: BSD-2-clause + +Files: media/libopus/celt/arm/fixed_armv5e.h +Copyright: 2013, Parrot + 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO + 2003-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/bands.c + media/libopus/celt/bands.h + media/libopus/celt/celt.c + media/libopus/celt/celt.h + media/libopus/celt/celt_decoder.c + media/libopus/celt/celt_encoder.c + media/libopus/celt/modes.c + media/libopus/celt/modes.h +Copyright: 2008-2012, Gregory Maxwell + 2007-2010, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/celt_lpc.c + media/libopus/celt/celt_lpc.h +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/cpu_support.h +Copyright: 2013, Parrot + 2010, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/cwrs.c + media/libopus/celt/cwrs.h +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2009, Timothy B. Terriberry + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/ecintrin.h + media/libopus/celt/entcode.h + media/libopus/celt/entdec.c + media/libopus/celt/entdec.h + media/libopus/celt/entenc.c + media/libopus/celt/entenc.h + media/libopus/celt/mfrngcod.h +Copyright: 2008-2009, Xiph.Org Foundation + 2001-2011, Timothy B. Terriberry +License: BSD-2-clause + +Files: media/libopus/celt/entcode.c +Copyright: 2001-2011, Timothy B. Terriberry +License: BSD-2-clause + +Files: media/libopus/celt/fixed_debug.h + media/libopus/celt/stack_alloc.h +Copyright: 2007-2012, Xiph.Org Foundation + 2002-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/float_cast.h +Copyright: 2001, Erik de Castro Lopo +License: BSD-2-clause + +Files: media/libopus/celt/kiss_fft.c + media/libopus/celt/kiss_fft.h +Copyright: 2008, Xiph.Org Foundation, CSIRO + 2005-2007, Xiph.Org Foundation + 2003-2004, Mark Borgerding +License: BSD-2-clause + +Files: media/libopus/celt/os_support.h +Copyright: 2007, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/x86/* +Copyright: 2013, Jean-Marc Valin and John Ridges +License: BSD-2-clause + +Files: media/libopus/include/* +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/include/opus.h + media/libopus/include/opus_defines.h +Copyright: 2010, 2011, Xiph.Org Foundation, Skype Limited +License: BSD-2-clause + +Files: media/libopus/include/opus_custom.h +Copyright: 2008-2012, Gregory Maxwell + 2007-2010, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/silk/* +Copyright: 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/MacroDebug.h +Copyright: 2012, Xiph.Org Foundation + 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/arm/* +Copyright: 2013, Parrot + 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/arm/SigProc_FIX_armv4.h +Copyright: 2013, Xiph.Org Foundation and contributors + 2013, Parrot +License: BSD-2-clause + +Files: media/libopus/silk/arm/macros_armv4.h +Copyright: 2013, Xiph.Org Foundation and contributors +License: BSD-2-clause + +Files: media/libopus/src/* +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/src/mlp.c + media/libopus/src/mlp.h +Copyright: 2008-2011, Octasic Inc. +License: BSD-2-clause + +Files: media/libopus/src/opus.c + media/libopus/src/opus_decoder.c + media/libopus/src/opus_encoder.c +Copyright: 2010, 2011, Xiph.Org Foundation, Skype Limited +License: BSD-2-clause + +Files: media/libpng/* +Copyright: 1998-2014, Glenn Randers-Pehrson + 1996-1997, Andreas Dilger + 1995-1996, Guy Eric Schalnat, Group 42, Inc. +License: libpng + +Files: media/libpng/arm/* +Copyright: 2014, Glenn Randers-Pehrson +License: libpng + +Files: media/libpng/pnglibconf.h +Copyright: no-info-found +License: MPL-2.0 + +Files: media/libsoundtouch/src/* +Copyright: Olli Parviainen +License: LGPL-2.1+ + +Files: media/libspeex_resampler/src/* +Copyright: 2002, 2003, 2007, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/resample.c + media/libspeex_resampler/src/resample_sse.c +Copyright: 2008, Thorvald Natvig + 2007-2008, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/resample_neon.c +Copyright: 2011, Texas Instruments + 2008, Thorvald Natvig + 2007-2008, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/simd_detect.cpp + media/libspeex_resampler/src/simd_detect.h +Copyright: no-info-found +License: MPL-2.0 + +Files: media/libtheora/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libvorbis/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libvpx/* +Copyright: 2010 Google Inc. +License: BSD-3-clause + +Files: mfbt/double-conversion/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: modules/brotli/* +Copyright: 2013, 2014, Google Inc. +License: Apache-2.0 + +Files: modules/freetype2/* +Copyright: various contributors +License: GPL-2+ + +Files: modules/freetype2/builds/unix/* +Copyright: 1996-2014, Free Software Foundation, Inc +License: GPL-2+ + +Files: modules/freetype2/src/bdf/bdf.h +Copyright: 2001-2004, 2011, Francesco Zappa Nardelli + 2000, Computing Research Labs, New Mexico State University +License: Expat + +Files: modules/freetype2/src/bdf/bdferror.h +Copyright: 2001-2002, 2012, Francesco Zappa Nardelli +License: Expat + +Files: modules/freetype2/src/bdf/bdflib.c +Copyright: 2001-2014, Francesco Zappa Nardelli + 2000, Computing Research Labs, New Mexico State University +License: Expat + +Files: modules/freetype2/src/gzip/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/freetype2/src/gzip/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/freetype2/src/gzip/zutil.c + modules/freetype2/src/gzip/zutil.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: modules/freetype2/src/gzip/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: modules/freetype2/src/pcf/* +Copyright: 2000-2014, by David Turner +License: Expat + +Files: modules/freetype2/src/tools/ftrandom/* +Copyright: 2005, 2007-2008, 2013, George Williams +License: BSD-3-clause + +Files: modules/libjar/test/unit/test_bug333423.js + modules/libjar/test/unit/test_bug597702.js + modules/libjar/test/unit/test_bug637286.js + modules/libjar/test/unit/test_corrupt_536911.js + modules/libjar/test/unit/test_corrupt_541828.js + modules/libjar/test/unit/test_dirjar_bug525755.js + modules/libjar/test/unit/test_jarinput_stream_zipreader_reference.js +Copyright: no-info-found +License: MPL-2.0 + +Files: modules/zlib/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/zlib/src/compress.c + modules/zlib/src/deflate.h + modules/zlib/src/trees.c + modules/zlib/src/uncompr.c + modules/zlib/src/zutil.c + modules/zlib/src/zutil.h + modules/zlib/src/zconf.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: modules/zlib/src/deflate.c + modules/zlib/src/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: modules/zlib/src/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: netwerk/dns/nsIDNKitInterface.h +Copyright: 2000-2002, Japan Network Information Center +License: BSD-3-clause + +Files: netwerk/dns/prepare_tlds.py +Copyright: no-info-found +License: MPL-2.0 + +Files: netwerk/sctp/src/* +Copyright: 2011-2012, Michael Tuexen + 2011-2012, Irene Ruengeler + 2009-2010, Humaira Kamal + 2009-2010, Brad Penoff +License: BSD-2-clause + +Files: netwerk/sctp/src/LocalArray.h + netwerk/sctp/src/ScopedFd.h + netwerk/sctp/src/ifaddrs-android-ext.h +Copyright: 2005-2013, The Android Open Source Project +License: Apache-2.0 + +Files: netwerk/sctp/src/netinet/* +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2001-2008, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_lock_userspace.h + netwerk/sctp/src/netinet/sctp_os_userspace.h +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2008-2012, Brad Penoff + 2001-2007, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_sha1.c +Copyright: 2013, Lally Singh + 2008-2013, Michael Tuexen + 2008-2012, Randall Stewart + 2001-2007, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_ss_functions.c +Copyright: 2010-2012, Robin Seggelmann + 2010-2012, Randall Stewart + 2010-2012, Michael Tuexen +License: BSD-2-clause + +Files: netwerk/sctp/src/netinet/sctp_userspace.c +Copyright: 2011, 2012, Michael Tuexen + 2011, 2012, Irene Ruengeler +License: BSD-2-clause + +Files: netwerk/sctp/src/netinet6/* +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2001-2008, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/user_inpcb.h + netwerk/sctp/src/user_socketvar.h +Copyright: 1982, 1986, 1990, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_ip6_var.h +Copyright: 1995-1997, and 1998, WIDE Project + 1982, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_ip_icmp.h +Copyright: 1982, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_malloc.h +Copyright: 2005, Robert N. M. Watson + 1987, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_mbuf.c + netwerk/sctp/src/user_mbuf.h +Copyright: 1982, 1986, 1988, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_queue.h +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_recv_thread.h +Copyright: 2011-2012, Michael Tuexen + 2011-2012, Irene Ruengeler +License: BSD-2-clause + +Files: netwerk/sctp/src/user_route.h +Copyright: 1980, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_socket.c +Copyright: 2011, 2012, Michael Tuexen + 2011, 2012, Irene Ruengeler + 2009, 2010, Humaira Kamal + 2009, 2010, Brad Penoff + 2004-2008, Robert N. M. Watson + 2004, The FreeBSD Foundation + 1982, 1986, 1988, 1990, 1993, University of California +License: BSD-2-clause + +Files: netwerk/streamconv/nsStreamConverterService.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: netwerk/test/unit/test_NetUtil.js + netwerk/test/unit/test_about_networking.js + netwerk/test/unit/test_about_protocol.js + netwerk/test/unit/test_auth_proxy.js + netwerk/test/unit/test_bug248970_cache.js + netwerk/test/unit/test_bug248970_cookie.js + netwerk/test/unit/test_bug856978.js + netwerk/test/unit/test_cookiejars.js + netwerk/test/unit/test_cookiejars_safebrowsing.js + netwerk/test/unit/test_dns_proxy_bypass.js + netwerk/test/unit/test_extract_charset_from_content_type.js + netwerk/test/unit/test_httpResponseTimeout.js + netwerk/test/unit/test_httpauth.js + netwerk/test/unit/test_mozTXTToHTMLConv.js + netwerk/test/unit/test_parse_content_type.js + netwerk/test/unit/test_ping_aboutnetworking.js + netwerk/test/unit/test_protocolproxyservice.js + netwerk/test/unit/test_safeoutputstream.js + netwerk/test/unit/test_speculative_connect.js + netwerk/test/unit/test_udpsocket.js + netwerk/test/unit/test_websocket_offline.js +Copyright: no-info-found +License: MPL-2.0 + +Files: netwerk/wifi/osx_wifi.h +Copyright: 2008, Google Inc. + 2006, Alf Watt +License: BSD-3-clause + +Files: nsprpub/lib/ds/plvrsion.c + nsprpub/lib/libc/src/plvrsion.c + nsprpub/lib/prstreams/plvrsion.c + nsprpub/pr/src/prvrsion.c +Copyright: 1998, Netscape Communications Corporation +License: MPL-2.0 + +Files: nsprpub/pr/include/prvrsion.h + nsprpub/pr/src/malloc/prmalloc.c +Copyright: no-info-found +License: MPL-2.0 + +Files: nsprpub/pr/src/misc/praton.c +Copyright: 2004, Internet Systems Consortium, Inc. ("ISC") + 1993, Digital Equipment Corporation + 1983, 1990, 1993, University of California +License: BSD-3-clause or ISC + +Files: nsprpub/pr/src/misc/prerrortable.c +Copyright: 1987, 1988, the Student Information Processing Board +License: MPL-2.0 + +Files: other-licenses/atk-1.0/* +Copyright: 2001-2002, Sun Microsystems Inc. +License: LGPL-2+ + +Files: other-licenses/atk-1.0/atk/atkplug.h + other-licenses/atk-1.0/atk/atksocket.h +Copyright: 2009, Novell, Inc. +License: LGPL-2+ + +Files: other-licenses/nsis/Contrib/CityHash/cityhash/* +Copyright: 2010-2014, Google, Inc. +License: Expat + +Files: other-licenses/nsis/Contrib/liteFirewall/liteFirewall.cpp +Copyright: 2007-2009, Olivier Marcoux +License: Zlib + +Files: other-licenses/snappy/* +Copyright: 2005, 2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: other-licenses/snappy/src/snappy-c.cc + other-licenses/snappy/src/snappy-c.h +Copyright: 2011, Martin Gieseking +License: BSD-3-clause + +Files: other-licenses/snappy/src/snappy.h + other-licenses/snappy/src/snappy_unittest.cc +Copyright: 2005, and onwards Google Inc +License: BSD-3-clause + +Files: parser/expat/* +Copyright: 1998, 1999, 2000 Thai Open Source Software Center Ltd + and Clark Cooper + 2001, 2002 Expat maintainers +License: Expat + +Files: parser/expat/lib/moz_extensions.c +Copyright: no-info-found +License: MPL-2.0 + +Files: parser/html/jArray.h + parser/html/nsHtml5ArrayCopy.h + parser/html/nsHtml5AttributeName.cpp + parser/html/nsHtml5AttributeName.h + parser/html/nsHtml5ElementName.cpp + parser/html/nsHtml5ElementName.h + parser/html/nsHtml5Macros.h + parser/html/nsHtml5NamedCharacters.cpp + parser/html/nsHtml5NamedCharacters.h + parser/html/nsHtml5Portability.h + parser/html/nsHtml5StateSnapshot.cpp + parser/html/nsHtml5StateSnapshot.h + parser/html/nsHtml5UTF16Buffer.cpp + parser/html/nsHtml5UTF16Buffer.h + parser/html/javasrc/* +Copyright: 2008-2014, Mozilla Foundation +License: Expat + +Files: parser/html/javasrc/StackNode.java +Copyright: 2007-2011, Mozilla Foundation + 2007, Henri Sivonen +License: Expat + +Files: parser/html/javasrc/Tokenizer.java + parser/html/javasrc/TreeBuilder.java +Copyright: 2007-2013, Mozilla Foundation + 2005-2007, Henri Sivonen + 2004-2010, Apple Computer, Inc. +License: Expat + +Files: parser/html/nsHtml5HtmlAttributes.cpp + parser/html/nsHtml5HtmlAttributes.h + parser/html/nsHtml5StackNode.cpp + parser/html/nsHtml5StackNode.h +Copyright: 2007-2011, Mozilla Foundation + 2007, Henri Sivonen +License: Expat + +Files: parser/html/nsHtml5Tokenizer.cpp + parser/html/nsHtml5Tokenizer.h + parser/html/nsHtml5TreeBuilder.cpp + parser/html/nsHtml5TreeBuilder.h +Copyright: 2007-2013, Mozilla Foundation + 2005-2007, Henri Sivonen + 2004-2010, Apple Computer, Inc. +License: Expat + +Files: parser/html/nsHtml5TokenizerCppSupplement.h + python/mach/* + python/mach_commands.py + python/mozboot/* + python/mozbuild/* + python/mozversioncontrol/* +Copyright: no-info-found +License: MPL-2.0 + +Files: security/certverifier/OCSPCache.cpp + security/certverifier/OCSPCache.h +Copyright: 2013-2015, Mozilla Contributors +License: Apache-2.0 or MPL-2.0 + +Files: security/nss/lib/dbm/* +Copyright: 1990, 1993-1994, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/ncompat.h + security/nss/lib/dbm/include/queue.h +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/extern.h +Copyright: 1991, 1993, 1994, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/hsearch.h + security/nss/lib/dbm/include/search.h +Copyright: 1990, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/db.c +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/h_func.c + security/nss/lib/dbm/src/memmove.c +Copyright: 1990, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/mktemp.c +Copyright: 1987, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/strerror.c +Copyright: 1988, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/tests/* +Copyright: no-info-found +License: MPL-2.0 + +Files: security/nss/lib/freebl/intel-gcm-wrap.c + security/nss/lib/freebl/intel-gcm.h +Copyright: 2013, Intel Corp. +License: MPL-2.0 + +Files: security/nss/lib/jar/jzconf.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: security/nss/lib/jar/jzlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: security/nss/lib/util/pkcs11.h + security/nss/lib/util/pkcs11f.h + security/nss/lib/util/pkcs11p.h + security/nss/lib/util/pkcs11u.h +Copyright: 1994-1999, RSA Security Inc. +License: MPL-2.0 + +Files: security/nss/lib/ssl/ssl3gthr.c + security/nss/lib/util/utilpars.c + services/common/tests/unit/head_helpers.js +Copyright: no-info-found +License: MPL-2.0 + +Files: security/nss/lib/zlib/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/compress.c + security/nss/lib/zlib/deflate.h + security/nss/lib/zlib/trees.c + security/nss/lib/zlib/uncompr.c + security/nss/lib/zlib/zutil.c + security/nss/lib/zlib/zutil.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: security/nss/lib/zlib/deflate.c + security/nss/lib/zlib/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/zconf.h +Copyright: 1995-2010, Jean-loup Gailly +License: Zlib + +Files: security/sandbox/chromium/base/third_party/dynamic_annotations/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: security/sandbox/chromium/base/third_party/superfasthash/* +Copyright: 2010, Paul Hsieh +License: BSD-2-clause + +Files: testing/mochitest/tests/SimpleTest/LogController.js + testing/mochitest/tests/SimpleTest/MemoryStats.js + testing/mochitest/tests/SimpleTest/MockObjects.js + testing/mochitest/tests/SimpleTest/setup.js + testing/mozbase/manifestparser/tests/test_convert_directory.py + testing/mozbase/manifestparser/tests/test_convert_symlinks.py + testing/mozbase/manifestparser/tests/test_manifestparser.py + testing/mozbase/mozfile/tests/test_tempdir.py + testing/mozbase/mozfile/tests/test_tempfile.py + testing/web-platform/tests/resources/testharnessreport.js + toolkit/components/ctypes/tests/unit/test_jsctypes.js + toolkit/components/mediasniffer/mp3sniff.c + toolkit/components/osfile/tests/xpcshell/test_file_URL_conversion.js + toolkit/components/osfile/tests/xpcshell/test_makeDir.js + toolkit/components/osfile/tests/xpcshell/test_path.js + toolkit/components/osfile/tests/xpcshell/test_path_constants.js + toolkit/components/osfile/tests/xpcshell/test_removeDir.js + toolkit/components/osfile/tests/xpcshell/test_removeEmptyDir.js + toolkit/components/passwordmgr/test/browser/* + toolkit/components/places/tests/favicons/head_favicons.js + toolkit/content/tests/browser/browser_save_resend_postdata.js + toolkit/content/tests/browser/common/* + toolkit/content/tests/unit/* +Copyright: no-info-found +License: MPL-2.0 + +Files: testing/tools/screenshot/* +Copyright: 2009, The Mozilla Foundation +License: BSD-3-clause + +Files: toolkit/components/protobuf/* +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/components/reader/Readability.js +Copyright: 2010, Arc90 Inc. +License: Apache-2.0 + +Files: toolkit/components/url-classifier/HashStore.cpp +Copyright: 2006-2013, The Chromium Authors. +License: BSD-3-clause + + +Files: toolkit/crashreporter/google-breakpad/* +Copyright: 2006-2009, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/arm_ex_reader.cc + toolkit/crashreporter/google-breakpad/src/common/arm_ex_reader.h + toolkit/crashreporter/google-breakpad/src/common/arm_ex_to_module.cc + toolkit/crashreporter/google-breakpad/src/common/arm_ex_to_module.h +Copyright: 2011, Linaro Limited + 2010-2011, Google Inc. +License: BSD-3-clause or Expat + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/* + toolkit/crashreporter/google-breakpad/src/common/linux/elf_symbols_to_module.cc + toolkit/crashreporter/google-breakpad/src/common/linux/elf_symbols_to_module.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/bytereader_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/cfi_assembler.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/cfi_assembler.h + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_cfi_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_die_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_test_common.h +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/types.h +Copyright: 2008, Google, Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/mac/GTMDefines.h + toolkit/crashreporter/google-breakpad/src/common/mac/GTMLogger.h + toolkit/crashreporter/google-breakpad/src/common/mac/GTMLogger.m + toolkit/crashreporter/google-breakpad/src/common/mac/testing/* +Copyright: 2007-2008, 2010, 2012, Google Inc. +License: Apache-2.0 + +Files: toolkit/crashreporter/google-breakpad/src/common/mac/testing/GTMSenTestCase.h +Copyright: 2007, 2008, Google Inc. + 1997-2005, Sen:te (Sente SA). +License: Apache-2.0 or BSD-2-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/md5.cc +Copyright: no-info-found +License: public-domain + +Files: toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc + toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86.cc + toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86.h + toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86_unittest.cc + toolkit/crashreporter/google-breakpad/src/processor/exploitability_unittest.cc +Copyright: no-info-found +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/processor/static_map-inl.h + toolkit/crashreporter/google-breakpad/src/processor/static_map.h + toolkit/crashreporter/google-breakpad/src/processor/static_map_iterator-inl.h + toolkit/crashreporter/google-breakpad/src/processor/static_map_iterator.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/third_party/lss/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/test/browser/browser_clearReports.js +Copyright: no-info-found +License: MPL-2.0 + +Files: toolkit/modules/tests/xpcshell/test_propertyListsUtils.js + toolkit/mozapps/extensions/test/xpcshell/*.js + toolkit/mozapps/update/tests/TestAUSReadStrings.cpp + toolkit/mozapps/update/tests/unit_aus_update/* + toolkit/mozapps/update/tests/unit_base_updater/marFailurePartial.js + toolkit/mozapps/update/tests/unit_base_updater/marStageFailurePartial.js + toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessComplete.js + toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessPartial.js + toolkit/mozapps/update/tests/unit_base_updater/marSuccessComplete.js + toolkit/mozapps/update/tests/unit_base_updater/marSuccessPartial.js + toolkit/mozapps/update/tests/unit_base_updater/marVersionDowngrade.js + toolkit/mozapps/update/tests/unit_base_updater/marWrongChannel.js + toolkit/mozapps/update/tests/unit_service_updater/marFailurePartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageFailurePartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessCompleteSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessPartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marSuccessCompleteSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marSuccessPartialSvc.js +Copyright: no-info-found +License: MPL-2.0 + +Files: tools/update-packaging/test/common.sh + tools/update-packaging/test/make_full_update.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: widget/x11/keysym2ucs.c +Copyright: Markus G. Kuhn +License: MPL-2.0 + +Files: xpcom/build/mach_override.h +Copyright: 2003-2009, Jonathan Wolf Rentzsch: +License: Expat + +Files: xpcom/components/nsComponentManager.cpp + xpcom/io/nsLocalFile.h +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: xpcom/io/SpecialSystemDirectory.cpp +Copyright: 1998 Netscape Communications Corporation, + 2007 Red Hat Inc. +License: MPL-2.0 + +Files: xpcom/tests/unit/data/* + xpcom/tests/unit/test_file_createUnique.js + xpcom/tests/unit/test_file_equality.js + xpcom/tests/unit/test_file_renameTo.js + xpcom/tests/unit/test_ioutil.js + xpcom/tests/unit/test_localfile.js + xpcom/tests/unit/test_notxpcom_scriptable.js + xpcom/tests/unit/test_nsIMutableArray.js + xpcom/tests/unit/test_nsIProcess.js + xpcom/tests/unit/test_pipe.js + xpcom/tests/unit/test_seek_multiplex.js + xpcom/tests/unit/test_storagestream.js + xpcom/tests/unit/test_stringstream.js + xpcom/tests/unit/test_systemInfo.js + xpcom/tests/unit/test_streams.js + comm/suite/browser/test/browser/browser_bug409624.js + comm/suite/browser/test/browser/browser_bug427559.js + comm/suite/browser/test/browser/browser_popupNotification.js + comm/suite/browser/test/browser/browser_privatebrowsing_protocolhandler.js + comm/suite/browser/test/browser/browser_relatedTabs.js + comm/suite/browser/test/browser/head.js + comm/suite/locales/en-US/chrome/browser/pageInfo.dtd + comm/suite/locales/en-US/chrome/common/aboutPrivateBrowsing.dtd + comm/suite/locales/en-US/suite-l10n.js +Copyright: no-info-found +License: MPL-2.0 + +License: Apache-2.0 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + http://www.apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS"BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian systems, the complete text of the Apache License, + Version 2.0 can be found in '/usr/share/common-licenses/Apache-2.0'. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice(s), this list of conditions and the following disclaimer as + the first lines of this file unmodified other than the possible + addition of one or more copyright notices. + 2. Redistributions in binary form must reproduce the above copyright + notice(s), this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-3-clause + Copyright © belongs to the uploader + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1.Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the owner nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: CC0-1.0 + The person who associated a work with this deed has dedicated the work to the + public domain by waiving all of his or her rights to the work worldwide under + copyright law, including all related and neighboring rights, to the extent + allowed by law. + . + You can copy, modify, distribute and perform the work, even for commercial + purposes, all without asking permission. See Other Information below. + . + * In no way are the patent or trademark rights of any person affected by CC0, + nor are the rights that other persons may have in the work or in how the + work is used, such as publicity or privacy rights. + * Unless expressly stated otherwise, the person who associated a work with + this deed makes no warranties about the work, and disclaims liability for + all uses of the work, to the fullest extent permitted by applicable law. + * When using or citing the work, you should not imply endorsement by the + author or the affirmer. + +License: Expat + The MIT License + . + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated + documentation files (the "Software"), to deal in the Software + without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to + whom the Software is furnished to do so, subject to the + following conditions: + . + The above copyright notice and this permission notice shall + be included in all copies or substantial portions of the + Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT + WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, + INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE AND NONINFRINGEMENT. IN NO EVENT + SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +License: GPL-2 + On Debian systems, the complete text of the GNU General Public + License can be found in the file /usr/share/common-licenses/GPL-2'. + +License: GPL-2+ + On Debian systems, the complete text of the GNU General Public + License can be found in the file /usr/share/common-licenses/GPL-2'. + +License: ISC + Copyright © 2004-2012 by Internet Systems Consortium, Inc. ("ISC") + Copyright © 1995-2003 by Internet Software Consortium + . + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted, provided that the + above copyright notice and this permission notice appear in all + copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY + SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT + OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: LGPL-2+ + This program is free software; you can redistribute it and/or modify it under + the terms of the GNU Library General Public License as published by the Free + Software Foundation; version 2 of the License, or (at your option) any later + version. + . + On Debian systems, the complete text of version 2 of the GNU Library + General Public License can be found in `/usr/share/common-licenses/LGPL-2'. + +License: LGPL-2.1 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/LGPL-2.1'. + +License: LGPL-2.1+ + This program is free software; you can redistribute it and/or modify it under + the terms of the GNU Library General Public License as published by the + Free Software Foundation; version 2.1 of the License, or (at your option) any + later version. + . + On Debian systems, the complete text of version 2.1 of the GNU General + Public License can be found in `/usr/share/common-licenses/LGPL-2.1'. + +License: old-MIT + Permission is hereby granted, without written agreement and without + license or royalty fees, to use, copy, modify, and distribute this + software and its documentation for any purpose, provided that the + above copyright notice and the following two paragraphs appear in + all copies of this software. + . + IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN + IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + . + THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, + BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO + PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + +License: MPL-1.0 + MOZILLA PUBLIC LICENSE + Version 1.0 + . + --------------- + . + 1. Definitions. + . + 1.1. "Contributor" means each entity that creates or contributes to + the creation of Modifications. + . + 1.2. "Contributor Version" means the combination of the Original + Code, prior Modifications used by a Contributor, and the + Modifications made by that particular Contributor. + . + 1.3. "Covered Code" means the Original Code or Modifications or the + combination of the Original Code and Modifications, in each + case including portions thereof. + . + 1.4. "Electronic Distribution Mechanism" means a mechanism + generally accepted in the software development community for + the electronic transfer of data. + . + 1.5. "Executable" means Covered Code in any form other than Source + Code. + . + 1.6. "Initial Developer" means the individual or entity identified + as the Initial Developer in the Source Code notice required by + Exhibit A. + . + 1.7. "Larger Work" means a work which combines Covered Code or + portions thereof with code not governed by the terms of this + License. + . + 1.8. "License" means this document. + . + 1.9. "Modifications" means any addition to or deletion from the + substance or structure of either the Original Code or any + previous Modifications. When Covered Code is released as a + series of files, a Modification is: + . + A. Any addition to or deletion from the contents of a file + containing Original Code or previous Modifications. + . + B. Any new file that contains any part of the Original Code + or previous Modifications. + . + 1.10. "Original Code" means Source Code of computer software code + which is described in the Source Code notice required by + Exhibit A as Original Code, and which, at the time of its + release under this License is not already Covered Code + governed by this License. + . + 1.11. "Source Code" means the preferred form of the Covered Code for + making modifications to it, including all modules it contains, + plus any associated interface definition files, scripts used + to control compilation and installation of an Executable, or a + list of source code differential comparisons against either + the Original Code or another well known, available Covered + Code of the Contributor's choice. The Source Code can be in a + compressed or archival form, provided the appropriate + decompression or de-archiving software is widely available for + no charge. + . + 1.12. "You" means an individual or a legal entity exercising rights + under, and complying with all of the terms of, this License + or a future version of this License issued under Section 6.1. + For legal entities, "You" includes any entity which controls, + is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, + direct or indirect, to cause the direction or management of + such entity, whether by contract or otherwise, or (b) + ownership of fifty percent (50%) or more of the outstanding + shares or beneficial ownership of such entity. + . + 2. Source Code License. + . + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, + non-exclusive license, subject to third party intellectual property + claims: + (a) to use, reproduce, modify, display, perform, sublicense and + distribute the Original Code (or portions thereof) with or + without Modifications, or as part of a Larger Work; and + (b) under patents now or hereafter owned or controlled by + Initial Developer, to make, have made, use and sell + ("Utilize") the Original Code (or portions thereof), but + solely to the extent that any such patent is reasonably + necessary to enable You to Utilize the Original Code (or + portions thereof) and not to any greater extent that may be + necessary to Utilize further Modifications or combinations. + . + 2.2. Contributor Grant. + Each Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license, subject to third party intellectual + property claims: + (a) to use, reproduce, modify, display, perform, + sublicense and distribute the Modifications created by such + Contributor (or portions thereof) either on an unmodified + basis, with other Modifications, as Covered Code or as part of + a Larger Work; and + (b) under patents now or hereafter owned or controlled by + Contributor, to Utilize the Contributor Version (or portions + thereof), but solely to the extent that any such patent is + reasonably necessary to enable You to Utilize the Contributor + Version (or portions thereof), and not to any greater extent + that may be necessary to Utilize further Modifications or + combinations. + . + 3. Distribution Obligations. + . + 3.1. Application of License. + The Modifications which You create or to which You contribute are + governed by the terms of this License, including without limitation + Section 2.2. The Source Code version of Covered Code may be + distributed only under the terms of this License or a future version + of this License released under Section 6.1, and You must include a + copy of this License with every copy of the Source Code You + distribute. You may not offer or impose any terms on any Source + Code version that alters or restricts the applicable version of + this License or the recipients' rights hereunder. However, You may + include an additional document offering the additional rights + described in Section 3.5. + . + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be + made available in Source Code form under the terms of this License + either on the same media as an Executable version or via an accepted + Electronic Distribution Mechanism to anyone to whom you made an + Executable version available; and if made available via Electronic + Distribution Mechanism, must remain available for at least twelve + (12) months after the date it initially became available, or at + least six (6) months after a subsequent version of that particular + Modification has been made available to such recipients. You are + responsible for ensuring that the Source Code version remains + available even if the Electronic Distribution Mechanism is + maintained by a third party. + . + 3.3. Description of Modifications. + You must cause all Covered Code to which you contribute to contain + a file documenting the changes You made to create that Covered Code + and the date of any change. You must include a prominent statement + that the Modification is derived, directly or indirectly, from + Original Code provided by the Initial Developer and including the + name of the Initial Developer in (a) the Source Code, and (b) in + any notice in an Executable version or related documentation in + which You describe the origin or ownership of the Covered Code. + . + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If You have knowledge that a party claims an intellectual + property right in particular functionality or code (or its + utilization under this License), you must include a text file + with the source code distribution titled "LEGAL" which + describes the claim and the party making the claim in + sufficient detail that a recipient will know whom to contact. + If you obtain such knowledge after You make Your Modification + available as described in Section 3.2, You shall promptly + modify the LEGAL file in all copies You make available + thereafter and shall take other steps (such as notifying + appropriate comm/mailing lists or newsgroups) reasonably calculated + to inform those who received the Covered Code that new + knowledge has been obtained. + (b) Contributor APIs. + If Your Modification is an application programming interface + and You own or control patents which are reasonably necessary + to implement that API, you must also include this information + in the LEGAL file. + . + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the + Source Code, and this License in any documentation for the Source + Code, where You describe recipients' rights relating to Covered + Code. If You created one or more Modification(s), You may add your + name as a Contributor to the notice described in Exhibit A. If it + is not possible to put such notice in a particular Source Code file + due to its structure, then you must include such notice in a + location (such as a relevant directory file) where a user would be + likely to look for such a notice. You may choose to offer, and to + charge a fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Code. However, You + may do so only on Your own behalf, and not on behalf of the Initial + Developer or any Contributor. You must make it absolutely clear than + any such warranty, support, indemnity or liability obligation is + offered by You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred by the + Initial Developer or such Contributor as a result of warranty, + support, indemnity or liability terms You offer. + . + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the + requirements of Section 3.1-3.5 have been met for that Covered Code, + and if You include a notice stating that the Source Code version of + the Covered Code is available under the terms of this License, + including a description of how and where You have fulfilled the + obligations of Section 3.2. The notice must be conspicuously + included in any notice in an Executable version, related + documentation or collateral in which You describe recipients' + rights relating to the Covered Code. You may distribute the + Executable version of Covered Code under a license of Your choice, + which may contain terms different from this License, provided that + You are in compliance with the terms of this License and that the + license for the Executable version does not attempt to limit or + alter the recipient's rights in the Source Code version from the + rights set forth in this License. If You distribute the Executable + version under a different license You must make it absolutely clear + that any terms which differ from this License are offered by You + alone, not by the Initial Developer or any Contributor. You hereby + agree to indemnify the Initial Developer and every Contributor for + any liability incurred by the Initial Developer or such Contributor + as a result of any such terms You offer. + . + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other + code not governed by the terms of this License and distribute the + Larger Work as a single product. In such a case, You must make sure + the requirements of this License are fulfilled for the Covered + Code. + . + 4. Inability to Comply Due to Statute or Regulation. + . + If it is impossible for You to comply with any of the terms of this + License with respect to some or all of the Covered Code due to + statute or regulation then You must: (a) comply with the terms of + this License to the maximum extent possible; and (b) describe the + limitations and the code they affect. Such description must be + included in the LEGAL file described in Section 3.4 and must be + included with all distributions of the Source Code. Except to the + extent prohibited by statute or regulation, such description must + be sufficiently detailed for a recipient of ordinary skill to be + able to understand it. + . + 5. Application of this License. + . + This License applies to code to which the Initial Developer has + attached the notice in Exhibit A, and to related Covered Code. + . + 6. Versions of the License. + . + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised + and/or new versions of the License from time to time. Each version + will be given a distinguishing version number. + . + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of + the License, You may always continue to use it under the terms of + that version. You may also choose to use such Covered Code under + the terms of any subsequent version of the License published by + Netscape. No one other than Netscape has the right to modify the + terms applicable to Covered Code created under this License. + . + 6.3. Derivative Works. + If you create or use a modified version of this License (which you + may only do in order to apply it to code which is not already + Covered Code governed by this License), you must (a) rename Your + license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", + "Netscape", "NPL" or any confusingly similar phrase do not appear + anywhere in your license and (b) otherwise make it clear that your + version of the license contains terms which differ from the Mozilla + Public License and Netscape Public License. (Filling in the name of + the Initial Developer, Original Code or Contributor in the notice + described in Exhibit A shall not of themselves be deemed to be + modifications of this License.) + . + 7. DISCLAIMER OF WARRANTY. + . + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS + FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR + NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF + THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE + DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY + OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, + REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN + ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS + AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. + . + 8. TERMINATION. + . + This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to + cure such breach within 30 days of becoming aware of the breach. + All sublicenses to the Covered Code which are properly granted + shall survive any termination of this License. Provisions which, by + their nature, must remain in effect beyond the termination of this + License shall survive. + . + 9. LIMITATION OF LIABILITY. + . + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE INITIAL + DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED + CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO YOU OR + ANY OTHER PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER + FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR + LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE + POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT + APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH + PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH + LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR + LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THAT EXCLUSION + AND LIMITATION MAY NOT APPLY TO YOU. + . + 10. U.S. GOVERNMENT END USERS. + . + The Covered Code is a "commercial item," as that term is defined in + 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer + software" and "commercial computer software documentation," as such + terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 + C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June + 1995), all U.S. Government End Users acquire Covered Code with only + those rights set forth herein. + . + 11. MISCELLANEOUS. + . + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the extent + necessary to make it enforceable. This License shall be governed by + California law provisions (except to the extent applicable law, if + any, provides otherwise), excluding its conflict-of-law provisions. + With respect to disputes in which at least one party is a citizen + of, or an entity chartered or registered to do business in, the + United States of America: (a) unless otherwise agreed in writing, + all disputes relating to this License (excepting any dispute + relating to intellectual property rights) shall be subject to final + and binding arbitration, with the losing party paying all costs of + arbitration; (b) any arbitration relating to this Agreement shall be + held in Santa Clara County, California, under the auspices of + JAMS/EndDispute; and (c) any litigation relating to this Agreement + shall be subject to the jurisdiction of the Federal Courts of the + Northern District of California, with venue lying in Santa Clara + County, California, with the losing party responsible for costs, + including without limitation, court costs and reasonable attorneys + fees and expenses. The application of the United Nations Convention + on Contracts for the International Sale of Goods is expressly + excluded. Any law or regulation which provides that the language of + a contract shall be construed against the drafter shall not apply + to this License. + . + 12. RESPONSIBILITY FOR CLAIMS. + . + Except in cases where another Contributor has failed to comply with + Section 3.4, You are responsible for damages arising, directly or + indirectly, out of Your utilization of rights under this License, + based on the number of copies of Covered Code you made available, + the revenues you received from utilizing such rights, and other + relevant factors. You agree to work with affected parties to + distribute responsibility on an equitable basis. + . + EXHIBIT A. + . + "The contents of this file are subject to the Mozilla Public License + Version 1.0 (the "License"); you may not use this file except in + compliance with the License. You may obtain a copy of the License + at http://www.mozilla.org/MPL/ + . + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See + the License for the specific language governing rights and + limitations under the License. + . + The Original Code is ______________________________________. + . + The Initial Developer of the Original Code is ____________________. + Portions created by ______________________ + are Copyright (C) ______ _______________________. All Rights + Reserved. + . + Contributor(s): ______________________________________." + . + The original content can be found on https://www.mozilla.org/MPL/1.0/ + +License: MPL-1.1 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/MPL-1.1'. + +License: MPL-2.0 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/MPL-2.0'. + +License: Zlib + The zlib License + . + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + . + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + . + 1. The origin of this software must not be misrepresented; you must + not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + . + 2. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + . + 3. This notice may not be removed or altered from any source + distribution. + +License: libpng + This copy of the libpng notices is provided for your convenience. In case of + any discrepancy between this copy and the notices in the file png.h that is + included in the libpng distribution, the latter shall prevail. + . + COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: + . + If you modify libpng you may insert additional notices immediately following + this sentence. + . + This code is released under the libpng license. + . + libpng versions 1.2.6, August 15, 2004, through 1.6.17, March 26, 2015, are + Copyright (c) 2004, 2006-2015 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-1.2.5 + with the following individual added to the list of Contributing Authors + . + Cosmin Truta + . + libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are + Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-1.0.6 + with the following individuals added to the list of Contributing Authors + . + Simon-Pierre Cadieux + Eric S. Raymond + Gilles Vollant + . + and with the following additions to the disclaimer: + . + There is no warranty against interference with your enjoyment of the + library or against infringement. There is no warranty that our + efforts or the library will fulfill any of your particular purposes + or needs. This library is provided with all faults, and the entire + risk of satisfactory quality, performance, accuracy, and effort is with + the user. + . + libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are + Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-0.96, + with the following individuals added to the list of Contributing Authors: + . + Tom Lane + Glenn Randers-Pehrson + Willem van Schaik + . + libpng versions 0.89, June 1996, through 0.96, May 1997, are + Copyright (c) 1996, 1997 Andreas Dilger + Distributed according to the same disclaimer and license as libpng-0.88, + with the following individuals added to the list of Contributing Authors: + . + John Bowler + Kevin Bracey + Sam Bushell + Magnus Holmgren + Greg Roelofs + Tom Tanner + . + libpng versions 0.5, May 1995, through 0.88, January 1996, are + Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. + . + For the purposes of this copyright and license, "Contributing Authors" + is defined as the following set of individuals: + . + Andreas Dilger + Dave Martindale + Guy Eric Schalnat + Paul Schmidt + Tim Wegner + . + The PNG Reference Library is supplied "AS IS". The Contributing Authors + and Group 42, Inc. disclaim all warranties, expressed or implied, + including, without limitation, the warranties of merchantability and of + fitness for any purpose. The Contributing Authors and Group 42, Inc. + assume no liability for direct, indirect, incidental, special, exemplary, + or consequential damages, which may result from the use of the PNG + Reference Library, even if advised of the possibility of such damage. + . + Permission is hereby granted to use, copy, modify, and distribute this + source code, or portions hereof, for any purpose, without fee, subject + to the following restrictions: + . + 1. The origin of this source code must not be misrepresented. + . + 2. Altered versions must be plainly marked as such and must not + be misrepresented as being the original source. + . + 3. This Copyright notice may not be removed or altered from any + source or altered source distribution. + . + The Contributing Authors and Group 42, Inc. specifically permit, without + fee, and encourage the use of this source code as a component to + supporting the PNG file format in commercial products. If you use this + source code in a product, acknowledgment is not required but would be + appreciated. + . + A "png_get_copyright" function is available, for convenient use in "about" + boxes and the like: + . + printf("%s",png_get_copyright(NULL)); + . + Also, the PNG logo (in PNG format, of course) is supplied in the + files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). + . + Libpng is OSI Certified Open Source Software. OSI Certified Open Source is + a certification mark of the Open Source Initiative. + . + Glenn Randers-Pehrson + glennrp at users.sourceforge.net + March 26, 2015 + . + The original content can be found on + http://www.libpng.org/pub/png/src/libpng-LICENSE.txt + +License: public-domain + They may be distributed freely and/or modified as long as the original + Author is mentioned! diff --git a/create-upstream-tarballs.py b/create-upstream-tarballs.py new file mode 100755 index 0000000000..4129a28e85 --- /dev/null +++ b/create-upstream-tarballs.py @@ -0,0 +1,532 @@ +#!/usr/bin/python3 + +# -*- coding: utf-8 -*- +# create-upstream-tarballs - Utility to create the required source tarballs +# to package Thunderbird within Debian +# Copyright (c) 2022 Carsten Schoenert +# +# SPDX-License-Identifier: GPL-2.0-or-later + +import argparse +import logging +import os +import requests +import shutil +import sys +import tarfile + +from lxml import html +from zipfile import ZipFile + +try: + from pkg_resources import parse_version +except ImportError: + print('pkg_resources library missing, please install python3-pkg-resources!') + sys.exit(1) + +try: + from tqdm.auto import tqdm +except ImportError: + print('tqdm library missing, please install python3-tqdm!') + sys.exit(1) + +# local stuff +import repack + + +tb_base_url_releases = 'https://ftp.mozilla.org/pub/thunderbird/releases/' +tb_base_url_candidates = 'https://ftp.mozilla.org/pub/thunderbird/candidates/' + +try: + import colorlog + HAVE_COLORLOG = True +except ImportError: + print('colorlog library missing, no colored log possible, please install python3-colorlog if wanted!') + HAVE_COLORLOG = False + + +def create_logger(): + ''' + Setup the logging environment. + ''' + log = logging.getLogger() # root logger + log.setLevel(logging.INFO) + format_str = '%(asctime)s - [%(lineno)4d] %(levelname)-8s- %(message)s' + date_format = '%Y-%m-%d %H:%M:%S' + if HAVE_COLORLOG and os.isatty(2): + cformat = '%(log_color)s' + format_str + colors = {'DEBUG' : 'white', + 'INFO' : 'green', + 'WARNING' : 'bold_yellow', + 'ERROR' : 'red', + 'CRITICAL': 'bold_red'} + formatter = colorlog.ColoredFormatter(cformat, + date_format, + log_colors=colors) + else: + formatter = logging.Formatter(format_str, date_format) + stream_handler = logging.StreamHandler() + stream_handler.setFormatter(formatter) + log.addHandler(stream_handler) + return logging.getLogger(__name__) + + +def option_parser(): + ''' + Creates an argparser for various options. + ''' + parser = argparse.ArgumentParser( + description = 'create-tarballs - collect all upstream data and creates ' + 'thunderbird_$version.tar.orig{-l10n}.xz tarballs') + + parser.add_argument('-d', '--debug', + action = 'store_true', + help = 'Enable output of debug messages.') + + parser.add_argument('-f', '--filter', + action = 'store_true', + help = 'Use dedicated file containing the elements to filter out.') + + parser.add_argument('-g', '--get-versions', + action = 'store_true', + help = 'Discover Mozilla CDN and returns the most ' + 'recent available Thunderbird versions.') + + parser.add_argument('-r', '--repack', + action = 'store_true', + help = 'Strip out the unwanted and non needed files and create ' + 'the thunderbird*.orig.tar.xz tarball, requires optional paramater -v.') + + parser.add_argument('-v', '--version', + action = 'store', + help = 'Picks the data for the given version and creates the ' + 'tarballs for later importing.') + + return parser + + +def get_website_data(site): + ''' + Get the raw HTML data from 'site' and returns the HTML dom data. + ''' + try: + page_data = requests.get(site) + except requests.exceptions.ConnectionError as e: + logging.error('Connection to Mozilla CDN not possible!') + logging.debug(f'The following error did happen:\n{e}') + sys.exit(1) + + if page_data.status_code == requests.codes.ok: + html_tree = html.fromstring(page_data.content) + return html_tree + else: + return 'None' + + +def get_latest_candidates_build(url): + ''' + Get the HTML data from the given URL and select all lines that are + elements and split of the path from href. + Finally count all found entries so we know the highest available build version. + ''' + logging.debug(f'Got URL {url}') + candidates_html = get_website_data(url) + candidates_href_entries = candidates_html.xpath('//a /@href') + latest_build = 0 + for elem in candidates_href_entries: + line = elem.split('/') + if len(line) == 7: + if line[5].startswith('build'): + build_count = int(line[5].strip('build')) + if build_count > latest_build: + latest_build = build_count + logging.debug(f'Found folder \'build{latest_build}/\' as most recent build.') + return latest_build + + +def check_for_version_transforming(version): + ''' + Transform a version string which contains a 'b' into a Debian conform + string for beta versions. + ''' + if 'b' in version: + return '{0}~b{1}'.format(version.split('b')[0], + version.split('b')[1]) + else: + return version + + +def get_versions(): + ''' + Checks available Release and Beta versions on the Mozilla CDN site for + Thunderbird. + ''' + + # Step 1 - Get data about ESR candidates + # + # Crawling data containing the final candidates (ESR) versions. New + # planned ESR versions will be first published and are visible here! + tb_release_candidates_html = get_website_data(tb_base_url_candidates) + + if tb_release_candidates_html != 'None': + tb_href_entries = tb_release_candidates_html.xpath('//a /@href') + # Variable to include all found planned ESR versions. + tb_upstream_candidates_versions = [] + for elem in tb_href_entries: + # Processing all href elements and collect all of them with a numeric version. + line = elem.split('/') + if (len(line) == 6 + and line[3] == 'candidates' + and line[4].endswith('candidates') + and 'b' not in line[4]): + # We have now all versions with '-candidates' as suffix which + # need to get split of. + tb_upstream_candidates_versions.append(line[4].split('-')[0]) + + else: + logging.error(f'Could not load versions from \'{tb_base_url_candidates}\'!') + sys.exit(1) + + release_planned_version = tb_upstream_candidates_versions[1] + for pos in range(2, len(tb_upstream_candidates_versions)): + check = parse_version(release_planned_version) < parse_version(tb_upstream_candidates_versions[pos]) + if check: + release_planned_version = tb_upstream_candidates_versions[pos] + + # Now searching the newest build for the found candidates version. + release_candidate_build = get_latest_candidates_build(f'{tb_base_url_candidates}{release_planned_version}-candidates/') + release_candidate_version = release_planned_version + + # Step 2 - Get data about released ESR and Beta versions + # + # Working on data containing the final released (ESR) versions. Found + # versions here are really released as officially. + tb_releases_html = get_website_data(tb_base_url_releases) + + if tb_releases_html != 'None': + tb_href_entries = tb_releases_html.xpath('//a /@href') + # Variable to include all released ESR versions. + tb_upstream_versions = [] + for elem in tb_href_entries: + # Processing all href elements and collect all of them with a numeric version. + line = elem.split('/') + if len(line) == 6: + # Exclude all non numeric elements. + if (line[4] not in ['custom-updates', 'latest', 'latest-beta'] + and not line[4].endswith(('esr', '-real'))): + tb_upstream_versions.append(line[4]) + + else: + logging.error(f'Could not load versions from \'{tb_base_url_releases}\'!') + sys.exit(1) + + # Step 3 - Find most recent Release and Beta versions. + # + release_version = tb_upstream_versions[1] + beta_version = release_version + for pos in range(2, len(tb_upstream_versions)): + if 'b' not in tb_upstream_versions[pos]: + check = parse_version(release_version) < parse_version(tb_upstream_versions[pos]) + if check: + release_version = tb_upstream_versions[pos] + + if 'b' in tb_upstream_versions[pos]: + check = parse_version(beta_version) < parse_version(tb_upstream_versions[pos]) + if check: + beta_version = tb_upstream_versions[pos] + + logging.debug(f'Current Release version: {release_version}') + logging.debug(f'Current (planned) Release version: {release_candidate_version} (build{release_candidate_build})') + logging.debug(f'Current Beta version: {beta_version}') + return [release_version, release_candidate_version, release_candidate_build, beta_version] + + +def get_xpi_languages(base_url): + ''' + Picks up the available XPI languages from a given URL. + ''' + logging.debug(f'Using {base_url} to search for xpi files.') + xpi_html = get_website_data(base_url) + xpi_href_entries = xpi_html.xpath('//a /@href') + xpi_list = [] + for elem in xpi_href_entries: + line = elem.split('/') + # We'll have a list like this: + # ['', 'pub', 'thunderbird', 'candidates', '$(version)-candidates', 'build1', 'linux-x86_64', 'xpi', '$(lang).xpi'] + # We can ignore the en-US language, as this is the native language of TB. + + # Catch up XPI data from release channel + if len(line) == 8 and line[3] == 'releases': + if not line[7].endswith('en-US.xpi'): + xpi_list.append(line[7]) + + # Catch up XPI data from candidates channel + if len(line) == 9 and line[3] == 'candidates': + if not line[8].endswith('en-US.xpi'): + xpi_list.append(line[8]) + + if len(xpi_list) > 0: + logging.info(f'Found {len(xpi_list)} xpi files on remote side.') + return xpi_list + else: + logging.error('Something went wrong while collecting XPI languages!') + sys.exit(1) + + +def select_upstream_version(detected_upstream_versions): + ''' + Gives back the upstream version the user wants to use. + ''' + while True: + print('\nPlease select the Thunderbird version to download!') + print(f'1 - Current Release version: {detected_upstream_versions[0]}') + print(f'2 - Current Planned version: {detected_upstream_versions[1]} build{detected_upstream_versions[2]}') + print(f'3 - Current Beta version : {detected_upstream_versions[3]}') + print('4 - Do nothing and Exit\n') + print('Your selection: ', end=' ') + version = int(input()) + if version not in [1, 2, 3, 4]: + print('Wrong input! Please select a valid number for choosing.') + elif version == 4: + logging.info('Action aborted by the user.') + sys.exit(1) + else: + print() + break + + if version == 1: + return detected_upstream_versions[0] + elif version == 2: + return [detected_upstream_versions[1], detected_upstream_versions[2]] + else: + return detected_upstream_versions[3] + + +def download_file(url, file, target_folder): + ''' + Download a given file. + If file is already locally available check if a new download is required. + ''' + with requests.get(url, stream=True) as r: + # Check header to get content length in bytes. + total_length = int(r.headers.get('Content-Length')) + if os.path.isfile(f'{target_folder}/{file}'): + file_size = os.path.getsize(f'{target_folder}/{file}') + if total_length != file_size: + logging.warning(f'Found file \'{file}\' locally, but existing file size differs! Removing!') + os.unlink(f'{target_folder}/{file}') + else: + logging.debug(f'Found file \'{file}\' locally and file size matches upstream size, skipping download.') + return + + logging.info(f'Download {url}') + with tqdm.wrapattr(r.raw, 'read', total=total_length, ncols=100, desc='{:9s}'.format(file))as raw: + with open(f'{target_folder}/{file}', 'wb') as output: + shutil.copyfileobj(raw, output) + + +def collect_tb_upstream_data(tb_version): + ''' + Collect all required upstream files needed to create and recreate the + tarballs locally. + ''' + + if not isinstance(tb_version, list): + file = f'thunderbird-{tb_version}.source.tar.xz' + # Concatenate URLs for ESR or Beta version. + if 'b' not in tb_version: + tb_url = f'{tb_base_url_releases}{tb_version}/source/{file}' + xpi_url = f'{tb_base_url_releases}{tb_version}/linux-x86_64/xpi' + else: + build_nb = get_latest_candidates_build(f'{tb_base_url_candidates}{tb_version}-candidates/') + tb_url = f'{tb_base_url_candidates}{tb_version}-candidates/build{build_nb}/source/{file}' + xpi_url = f'{tb_base_url_candidates}{tb_version}-candidates/build{build_nb}/linux-x86_64/xpi' + else: + file = f'thunderbird-{tb_version[0]}.source.tar.xz' + # Concatenate URLs for planned ESR version. + tb_url = f'{tb_base_url_candidates}{tb_version[0]}-candidates/build{tb_version[1]}/source/{file}' + xpi_url = f'{tb_base_url_candidates}{tb_version[0]}-candidates/build{tb_version[1]}/linux-x86_64/xpi' + + xpi_languages = get_xpi_languages(f'{xpi_url}/') + + if not os.path.isdir(download_folder): + logging.info(f'Create folder {download_folder}') + os.mkdir(download_folder) + + # Getting Thunderbird sources. + download_file(tb_url, + file, + download_folder) + + # Getting the language XPI files. + for xpi_file in xpi_languages: + download_file(f'{xpi_url}/{xpi_file}', + xpi_file, + download_folder) + return xpi_languages + + +def create_tb_l10n_tarball(xpi_languages, base_folder, upstream_version): + ''' + Create the additional thunderbird_$version.orig-l10n.tar.xz component + tarball. + ''' + logging.info('Prepare data for l10n component tarball.') + l10n_upstream_folder = f'{base_folder}/thunderbird-l10n' + if os.path.isdir(l10n_upstream_folder): + if len([entry for entry in os.listdir(l10n_upstream_folder)]) > 0: + for entry in os.scandir(l10n_upstream_folder): + if entry.is_dir(follow_symlinks=False) or entry.is_file(): + if entry.is_dir(): + logging.debug(f'Removing folder {l10n_upstream_folder}/{entry.name}') + shutil.rmtree(f'{l10n_upstream_folder}/{entry.name}') + if entry.is_file(): + logging.debug(f'Removing file {l10n_upstream_folder}/{entry.name}') + os.unlink(f'{l10n_upstream_folder}/{entry.name}') + else: + logging.debug(f'\'{l10n_upstream_folder}\' exists, but nothing to clean up.') + + else: + logging.debug(f'Create folder \'{l10n_upstream_folder}\' for xpi l10n upstream data.') + os.mkdir(l10n_upstream_folder) + + logging.info('Extract l10n data.') + for xpi in xpi_languages: + l10n_folder = f'{l10n_upstream_folder}/' + xpi.split('.')[0] + l10n_xpi_file = f'{base_folder}/{xpi}' + logging.debug(f'Create folder {l10n_folder}') + os.mkdir(l10n_folder) + logging.debug(f'Extract data from {l10n_xpi_file}') + with ZipFile(l10n_xpi_file, 'r') as zipfile: + zipfile.extractall(l10n_folder) + + if not isinstance(upstream_version, list): + # Version number for Beta and ESR versions. + version = check_for_version_transforming(upstream_version) + else: + # Version number for planned ESR version. + version = f'{upstream_version[0]}' + + l10n_component_name = f'thunderbird_{version}.orig-thunderbird-l10n.tar.xz' + logging.info(f'Build l10n component tarball {l10n_component_name}') + + # Build the component tarball with the l10n data. + with tarfile.open(f'{download_folder}/../{l10n_component_name}', "w:xz") as tar: + tar.add(l10n_upstream_folder, arcname=os.path.basename(l10n_upstream_folder)) + + return l10n_component_name + + +def compare_xpi_languages(l10n_languages_remote): + ''' + Doings some simple sanity checks to see if a new languages is provided by upstream. + ''' + # Get listing of the folder thunderbird-l10n. + l10n_languages_local = os.listdir(f'{os.path.dirname(os.path.abspath(__file__))}/../thunderbird-l10n') + l10n_languages_local_control = [] + + # Get a list l10n packages from debian/control. + with open(os.path.join(os.path.dirname(__file__), 'control')) as control: + lines = control.readlines() + for line in lines: + if line.startswith('Package: thunderbird-l10n-') and '-all' not in line: + l10n_languages_local_control.append(line.replace('\n', '').split('Package: thunderbird-l10n-')[1:][0]) + + for lang in l10n_languages_remote: + l10n_language_remote = lang.split('.')[0] + + if l10n_language_remote not in l10n_languages_local: + logging.warning(f'Found language \'{l10n_language_remote}\' within upstream data, but not in folder thunderbird-l10n/ !') + + if l10n_language_remote.lower() not in l10n_languages_local_control: + logging.warning(f'Found language \'{l10n_language_remote}\' within upstream data, but not in debian/control !') + + +def do_repack(source, target, filter_elements): + ''' + Takes the source tarball and filter out all the given elements into the + target tarball. + ''' + logging.debug(f'Create {target} from {source} using {filter_elements}.') + repack.filter_tar(source, target, filter_elements) + + +if __name__ == '__main__': + create_logger() + logging.info(f'{os.path.basename(sys.argv[0])} started') + + # The base path the tarballs will get placed finally. + tarball_path = os.path.dirname(os.path.abspath('./')) + + args = option_parser().parse_args() + + if args.debug: + logging.getLogger().setLevel(logging.DEBUG) + logging.debug(f'Using args: {args}') + + if not args.filter: + args.filter = os.path.join(os.path.dirname(__file__), "source.filter") + + if args.repack: + if args.get_versions: + logging.error('Option --get-versions can\'t be used together with --repack!') + option_parser().print_help() + sys.exit(1) + if not args.version: + logging.error('Option --repack requires parameter --version!') + sys.exit(1) + else: + version = args.version + source = f'{tarball_path}/thunderbird-{version}.source.tar.xz' + target = f'{tarball_path}/thunderbird_{version}.orig.tar.xz' + do_repack(source, target, args.filter) + + if args.get_versions: + upstream_versions = get_versions() + logging.info(f'Current most recent TB Release ESR version: {upstream_versions[0]}') + logging.info(f'Current most recent TB Release candidate version: {upstream_versions[1]} build{upstream_versions[2]}') + logging.info(f'Current most recent TB Beta version: {upstream_versions[3]}') + sys.exit(0) + + if args.version: + target_version = args.version + version = args.version + else: + target_version = select_upstream_version(get_versions()) + if not isinstance(target_version, list): + version = check_for_version_transforming(target_version) + else: + version = target_version[0] + + download_folder = f'../tb-preparation-{version}' + logging.debug(f'Upstream version to get: {version}') + + + # Download Thunderbird source tarball and also the upstream data of l10n + # languages Add-ons. + l10n_languages = collect_tb_upstream_data(target_version) + + # Build the additional Debian packaging component tarball. + tb_l10n_component_name = create_tb_l10n_tarball(l10n_languages, download_folder, target_version) + + if not isinstance(target_version, list): + version = check_for_version_transforming(target_version) + # Catching potential upstream Beta versions without any version + # string manipulation we need to do for Debian. + source = f'{download_folder}/thunderbird-{target_version}.source.tar.xz' + else: + version = target_version[0] + source = f'{download_folder}/thunderbird-{version}.source.tar.xz' + + target = f'{tarball_path}/thunderbird_{version}.orig.tar.xz' + logging.info(f'Build source tarball thunderbird_{version}.orig.tar.xz') + do_repack(source, target, args.filter) + + logging.info(f'Thunderbird source tarball prepared as: {tarball_path}/thunderbird_{version}.orig.tar.xz') + logging.info(f'Thunderbird l10n component tarball prepared as: {tarball_path}/{tb_l10n_component_name}') + + # Some checking if further adjustments are required to have packaging in + # sync to provided l10n data by upstream. + compare_xpi_languages(l10n_languages) + +# vim:tw=0: diff --git a/docs b/docs new file mode 100644 index 0000000000..5c24349bfa --- /dev/null +++ b/docs @@ -0,0 +1 @@ +mozilla/extensions/spellcheck/locales/en-US/hunspell/README_en_US.txt diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 0000000000..9aa23b3765 --- /dev/null +++ b/gbp.conf @@ -0,0 +1,20 @@ +# Configuration file for git-buildpackage and friends + +[DEFAULT] +# use pristine-tar: +pristine-tar = True +# generate xz compressed orig file +compression = xz +debian-branch = debian/bookworm +# default branch for upstream sources: +upstream-branch = upstream-102.x +components = [ 'thunderbird-l10n', ] + +[buildpackage] +sign-tags = True + +[pq] +patch-numbers = False + +[dch] +id-length = 7 diff --git a/logo/icedove/icedove.xpm b/logo/icedove/icedove.xpm new file mode 100644 index 0000000000..bf12bae8eb --- /dev/null +++ b/logo/icedove/icedove.xpm @@ -0,0 +1,204 @@ +/* XPM */ +static char *icedove[] = { +/* columns rows colors chars-per-pixel */ +"32 32 166 2 ", +" c #53575C", +". c #71787F", +"X c #55A30C", +"o c #58A60E", +"O c #5AA612", +"+ c #5CAA12", +"@ c #64AD1E", +"# c #61B115", +"$ c #66B21C", +"% c #69BB1A", +"& c #519A29", +"* c #66AF22", +"= c #69AF26", +"- c #67B021", +"; c #6AB324", +": c #6EBA24", +"> c #67B52B", +", c #6DB32A", +"< c #6FBA29", +"1 c #71B62E", +"2 c #70B82C", +"3 c #66B23A", +"4 c #6BB03A", +"5 c #73B632", +"6 c #75B934", +"7 c #75B639", +"8 c #77B838", +"9 c #7BBB3D", +"0 c #71C420", +"q c #75C924", +"w c #79CE27", +"e c #72C32E", +"r c #5A9D44", +"t c #5A985B", +"y c #69AD4A", +"u c #7EBC43", +"i c #77B548", +"p c #66A25B", +"a c #68A45C", +"s c #6CA95F", +"d c #74BB52", +"f c #5A9664", +"g c #619E6D", +"h c #6FA966", +"j c #74AA6B", +"k c #75B366", +"l c #77AB71", +"z c #79AD73", +"x c #7DB275", +"c c #7FB479", +"v c #81BD47", +"b c #84BE4E", +"n c #87BF51", +"m c #88BC74", +"M c #81B37D", +"N c #84BB7D", +"B c #81C046", +"V c #85C14B", +"C c #87C251", +"Z c #8BC355", +"A c #8EC55A", +"S c #95C766", +"D c #95CA63", +"F c #98CC67", +"G c #91C569", +"H c #9ACB6C", +"J c #9ECD70", +"K c #A2D076", +"L c #A6D37B", +"P c #727B82", +"I c #649A83", +"U c #6F9C9A", +"Y c #73A586", +"T c #73A19E", +"R c #7EAA9B", +"E c #719EA7", +"W c #759FB2", +"Q c #799FBB", +"! c #7EA8B5", +"~ c #7CA2BD", +"^ c #7B9FC1", +"/ c #7FA1C6", +"( c #83B583", +") c #8696A8", +"_ c #93B7A4", +"` c #80A6B8", +"' c #88AEBF", +"] c #9CBABB", +"[ c #98C681", +"{ c #9BC884", +"} c #ADD684", +"| c #AFD68C", +" . c #B0D989", +".. c #B7DB95", +"X. c #BCDE9B", +"o. c #A2C6A1", +"O. c #C0DEA4", +"+. c #C2E1A4", +"@. c #C7E4AB", +"#. c #C8E5AC", +"$. c #CBE5B3", +"%. c #C7E0BD", +"&. c #81A4C0", +"*. c #85A8C3", +"=. c #8CACC4", +"-. c #86A7C8", +";. c #86A8CF", +":. c #8EADCC", +">. c #92AFCB", +",. c #94B3D3", +"<. c #99B5D4", +"1. c #9DBAD2", +"2. c #A9B4C0", +"3. c #A3BBD7", +"4. c #A1BDDA", +"5. c #ABBFDB", +"6. c #ABC6C5", +"7. c #A8C1CA", +"8. c #B5CDC8", +"9. c #A7C0DA", +"0. c #B3C7DE", +"q. c #B3C9DC", +"w. c #AFC6E0", +"e. c #B3C7E1", +"r. c #B5CBE2", +"t. c #B9CCE2", +"y. c #BFD1E6", +"u. c #CCCDC9", +"i. c #CED0CB", +"p. c #D1D3CE", +"a. c #D2D4D0", +"s. c #D7D8D5", +"d. c #D8DAD6", +"f. c #DBDDD9", +"g. c #D4E9C0", +"h. c #D8ECC6", +"j. c #DEE0DD", +"k. c #E0E1DE", +"l. c #E0F1D0", +"z. c #C3D3E6", +"x. c #CDD8E6", +"c. c #C1D4E8", +"v. c #CEDDEC", +"b. c #D4DCE5", +"n. c #D2DDEB", +"m. c #D5E0ED", +"M. c #D9E2EE", +"N. c #D4E2F0", +"B. c #DBE6F1", +"V. c #DEE9F4", +"C. c #E4E5E2", +"Z. c #E7E8E6", +"A. c #E8E9E7", +"S. c #EBECEA", +"D. c #EFF1ED", +"F. c #F0F8EA", +"G. c #E4ECF5", +"H. c #E9EEF4", +"J. c #ECF1F6", +"K. c #ECF3F9", +"L. c #F3F4F3", +"P. c #F5FAF0", +"I. c #F2F5F9", +"U. c #F6F9FC", +"Y. c #FEFEFE", +"T. c None", +/* pixels */ +"T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.", +"T.T.d.U.d.Y.d.U.d.P.k.L.Z.S.S.Z.L.f.L.f.U.d.Y.d.U.f.L.k.L.Z.T.T.", +"T.T.S.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.U.T.T.", +"T.T.a.Y.3.q._ N N M M z z z z z z z z z >.q.=.Y N M 7.3.U.C.T.T.", +"T.T.L.Y.] : w 0 $ # # @ X X X X X X X X f G.Y.1.> e q j L.U.T.T.", +"T.T.p.Y.k q % # O o O X X X X X X X X X X r.Y.U.,.t.3 d I.j.T.T.", +"T.T.L.Y.k % # o X O @ X X X X X X X X X X U U.Y.y.U.<.y U.Y.T.T.", +"T.T.p.Y.a + o o O.@ X X X X O O X o o O X & v.Y.Y.K.m.t I.k.T.T.", +"T.T.L.Y.a o o + O.+ O O @ , 7 u u u 7 = + + 3.Y.Y.Y.U.;.U.Y.T.T.", +"T.T.a.Y.a + o 1 = O.$.H A Z n n n n A S J S ' Y.Y.Y.Y.4.I.k.T.T.", +"T.T.S.Y.a * v 8 H F.P.| , @ @ * = * * @ = , T Y.Y.Y.Y.t.L.U.T.T.", +"T.T.s.Y.a g.F.A 9 O.g.A = = , , , , , ; ; * f K.Y.Y.Y.n.I.Z.T.T.", +"T.T.A.Y.j $.h., @ ; 9 Z 1 5 6 6 5 5 5 1 1 , r G.Y.Y.Y.n.I.L.T.T.", +"T.T.f.Y.j V $ $ ; , 2 D Z 9 9 9 u 7 9 8 6 2 f H.Y.Y.Y.n.I.S.T.T.", +"T.T.C.Y.z 9 $ ; , 2 6 C K Z b V V V v u 9 8 ! Y.Y.Y.Y.n.U.S.T.T.", +"T.T.k.Y.( 2 ; < 2 6 9 v L } A A A A Z V B i r.Y.Y.Y.Y.n.I.D.T.T.", +"T.T.f.Y.( ; ; 2 6 9 B V J ..} F F D D A C *.U.Y.Y.Y.Y.n.I.A.T.T.", +"T.T.S.Y.( : 2 5 p I h Z F X.+.} L K H S -.J.Y.Y.Y.Y.Y.n.I.P.T.T.", +"T.T.a.Y.M : 4 Q v.U.v.:.G | $.#. .} [ 1.U.Y.Y.Y.Y.Y.Y.n.I.Z.T.T.", +"T.T.D.Y.x < ~ H.Y.Y.Y.Y.,.{ $.h.@.o.w.Y.Y.Y.Y.Y.Y.Y.Y.n.I.U.T.T.", +"T.T.i.Y.x g V. x.Y.U.) G.R X.l.8.r.Y.Y.Y.Y.Y.Y.Y.Y.Y.z.I.j.T.T.", +"T.T.L.Y.x E Y.H.K.Y.V.P H.W @.6.r.Y.Y.Y.K.Y.Y.Y.Y.v.v.e.I.U.T.T.", +"T.T.u.Y.Y ` Y.Y.2.P S.U.K./ %.e.Y.Y.Y.J.Y.Y.Y.Y.Y.K.n.z.U.f.T.T.", +"T.T.L.Y.<.9.Y.Y.Y.I.Y.U.J./ ` U.Y.Y.G.Y.Y.Y.Y.Y.Y.Y.U.z.I.Y.T.T.", +"T.T.i.Y.t.B.Y.Y.Y.Y.Y.U.K.-.1.Y.Y.U.B.Y.Y.Y.Y.Y.Y.Y.V.n.I.j.T.T.", +"T.T.L.Y.t.m.Y.Y.Y.Y.Y.Y.U.y.3.Y.Y.I.K.Y.Y.Y.Y.Y.J.V.Y.n.I.U.T.T.", +"T.T.p.Y.5.y.J.J.J.J.J.J.J.J.c.J.J.J.J.J.H.n.v.v.G.J.J.r.U.k.T.T.", +"T.T.S.Y.b.b.M.b.b.b.M.b.b.b.m.m.b.b.M.b.M.b.b.b.b.m.b.b.Y.U.T.T.", +"T.T.d.Y.f.f.Y.j.f.k.Y.Z.C.Z.L.L.Z.A.Y.j.Y.j.j.j.j.Y.k.k.Y.Z.T.T.", +"T.T.A.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.L.T.T.", +"T.T.j.Y.j.Y.k.Y.C.U.Z.L.A.S.L.Z.P.Z.U.k.Y.f.Y.j.Y.k.U.Z.L.S.T.T.", +"T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T." +}; diff --git a/logo/icedove/icedove_icon.svg b/logo/icedove/icedove_icon.svg new file mode 100644 index 0000000000..dab3a99da8 --- /dev/null +++ b/logo/icedove/icedove_icon.svg @@ -0,0 +1,1756 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Icon + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove icon + + + + icedove + ico + icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_plain.svg b/logo/icedove/icedove_icon_plain.svg new file mode 100644 index 0000000000..7733517d35 --- /dev/null +++ b/logo/icedove/icedove_icon_plain.svg @@ -0,0 +1,1438 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_profile.svg b/logo/icedove/icedove_icon_profile.svg new file mode 100644 index 0000000000..f4d9829eae --- /dev/null +++ b/logo/icedove/icedove_icon_profile.svg @@ -0,0 +1,1959 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Icon + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove icon + + + + icedove + ico + icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_profile_plain.svg b/logo/icedove/icedove_icon_profile_plain.svg new file mode 100644 index 0000000000..586ce11255 --- /dev/null +++ b/logo/icedove/icedove_icon_profile_plain.svg @@ -0,0 +1,1606 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_lettering.svg b/logo/icedove/icedove_lettering.svg new file mode 100644 index 0000000000..a2f9216210 --- /dev/null +++ b/logo/icedove/icedove_lettering.svg @@ -0,0 +1,994 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_logo.svg b/logo/icedove/icedove_logo.svg new file mode 100644 index 0000000000..885bb14685 --- /dev/null +++ b/logo/icedove/icedove_logo.svg @@ -0,0 +1,2407 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Logo + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove logo + + + + icedove + logo + logotipo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_logo_plain.svg b/logo/icedove/icedove_logo_plain.svg new file mode 100644 index 0000000000..7804a86f36 --- /dev/null +++ b/logo/icedove/icedove_logo_plain.svg @@ -0,0 +1,1939 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/license.txt b/logo/icedove/license.txt new file mode 100644 index 0000000000..55c6d2df09 --- /dev/null +++ b/logo/icedove/license.txt @@ -0,0 +1,23 @@ +License for iceweasel_icon/logo - icedove_icon/logo - iceape_icon/logo artworks. + +Version: MPL 1.1/GPL 2.0/LGPL 2.1 + +The contents of this file are subject to the Mozilla Public License Version +1.1 (the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at +http://www.mozilla.org/MPL/ + +Alternatively, the contents of this file may be used under the terms of +either the GNU General Public License Version 2 or later (the "GPL"), or +the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +in which case the provisions of the GPL or the LGPL are applicable instead +of those above. If you wish to allow use of your version of this file only +under the terms of either the GPL or the LGPL, and not to allow others to +use your version of this file under the terms of the MPL, indicate your +decision by deleting the provisions above and replace them with the notice +and other provisions required by the GPL or the LGPL. If you do not delete +the provisions above, a recipient may use your version of this file under +the terms of any one of the MPL, the GPL or the LGPL. + +Ricardo Fernández Fuentes. +ricardoffmadrid@gmail.com diff --git a/logo/thunderbird/create-pngs.sh b/logo/thunderbird/create-pngs.sh new file mode 100755 index 0000000000..507dacc521 --- /dev/null +++ b/logo/thunderbird/create-pngs.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +src=thunderbird.svg + +for d in 16 22 24 32 48 64 128 256 512; +do + # using ImageMagick + #convert -background none $src -resize ${d}x${d} mailicon${d}.png + + # using Inkscape + inkscape --export-png=mailicon${d}.png --export-width=$d --export-height=$d --export-background-opacity=0 --without-gui $src +done + diff --git a/logo/thunderbird/mailicon128.png b/logo/thunderbird/mailicon128.png new file mode 100644 index 0000000000000000000000000000000000000000..53e268fbb0f58d75b5a8d4d9b4d8469f50033486 GIT binary patch literal 13290 zcmVL5E%sFBA`q{AP|rk#tc-YQmIrWm8#Tu zs?NCgdfq?w8TOfK%B(z}Pu1DO+Uu;df4^r~&suA5cvJqQMV;&h91GdJS@hG*`z|z& za}kcY&_u?{BpUthmakrP@5yf4sV=8A0WSMR=UF734~Zl17b8tFI@%{)d-o9@`Lic~ z_=)b5-M-U7d?&jBGm$Ir*n6%?>dhwUTrEa0v1rWf-2=k|j~yAQ`^f8eeVGGvE^MNMu`!e-X7>^3t^n^KlQ^;e)__H z-+AU+&)fbDljyxb^>z2z`p~-kdNzLR*|M>CWhk&OF}D5t=Ojm5$IL zsB$q>h~P`tVI22Uj2ROnqZkf3B8S8=hmDbg%8_nI@tW9)*E_y{`N+w>7spyoc>-Mh z^Nwbt^)Ce3mFxxr9cf;+joMikh$v;!WjtlY2nEMY-f_o!%#F(?s~F-BvyVVirbq`qg@z3<$AvhUYS+by`@YcKGrV@7Ml(m0k6(Ha0H(u?Bf26gZL=BKx@ zd9yjWceJ#eas;^a-*$Y}*I4(z6sYNIubG~vPth%;wO*$!00u|>us_;XC%7pxZcQIb{g2=Bn>qRo*h^8+8|*wF<3|UVDuoj+t8730#QE(|Rq2WH5xN zY2P}dL>^RH{<-5vmp^kn?%_=2X1(^s`PYduUkTJ!o!xN7ThM-MN?JL&TgVUU z3M2c{WmDjbxa}0l_Wtl=#yDPKG%3w{ZWoR0QR-G!I}0-Q)uB2*3zzS1A$vfjII=s%%f&Iu$y z>j!VE4#v%Y7g2vDo)mQX{8`MtU?m7eK`9p0m2?Z!DO;?ZbMk_9D``vR;E`Kje(0vp zfI49;JRt-)^L@A9AWHsKQ1i0isL+0k`B$vR3I-<7UXO;(z%5Kjmb^NV6RZ8H+mN$S zJ~9$6i^eYB{?LujpU|&A9)_%baOwubEZ=sEnWx z63N1{j^oyc5yXI;Nbps`MvhqGU`1ownpRX^{N(1h*(ana$6C(3@%B}=?YmQHRtXAn zx=jjyWsrrJu0n(vYOg6;))+w$0t);JMk7wPoFmvt2V)z=fE&=AAejX8V!cXj+es_t zJNJz{-~RIPYL-48l`eb#9XH#?|2&pnCCWmyg(yvCTWjjhoSy+d=TD?C7%ckdT5L(h z4vq-60?|XuayHAjXi0CUFwS zF}go)psVb)N`VNWq2b4O-u<4-X4uk+T5)vJ`oY_(wJH0Rpx%zs8Q}A+04V04w~$bM zc`n!``tT-iJ1K&VU>lPHUJ!u_pia4(KN@w2#a+MeBpeda<1pdpM1h_Z9`rRq~!p;DhH1zO?W!n|XivS@`0Xd<&3E?WPt+aEo; zALoiS(+d||e^*&h^utQ&bJHNBG@`965wuGR9rUyCocSoNCW!E}WH2H`#b(STvBlts z!7&C0gJT@T7;2QoEN!JSh=!4fgJb8`=}RQAoFv*9jGp38JyD>iKrTvzJkZ@^c#c^_ z1ED3&O;@xYZoBtaGXgLrGa|sIO~3O+YZ7;h(wAqoKGn@j0iPxWTG6;-7G>4Jtf`-% zo0l+#VLMLLIM|Z%_r@S%GNWJtq-Fx3tGr8_N*xE#OK5aa&?hqaDbQU4>FhZXjBQ9(lx!0Sz;D%DyS?qmrommGGKffI}pJ5{S)7&qJf;sX16_oTaJ}U ze|Yy(+eL%D^m*mk&pYQNY?4D!0D`e`GwaCs!mW?qIPF==(^?qP`oVk7NAy1y(|k#p zDY0<1KSh9w`m#wgd*OJLSTcqs2IYt+#V4uB7zRre4Q17?B}sMvqA`bLkvzZG%4EQo z^rTMlkigyc#gq7BF+?kpWo0CTWd-2nNDe5ee-nZ30WkY91<<|a^UhfTAL$NmJXE1a zs^WV1h9EXOoDzs9Wx*Q{n$J0@NUT?w_o5r02-eUnWGksHp(@C4q z$S9RZ`UsAXp}gs0kGXbxxFrI%oN^`ne%i-tg|alt%KP+OuPg<5WyDg5KNq^On)=GK zul(r?(*Yl*90Q1|UcK{n(fa)SK+gqV6@ZVW@RtXusVgtp&2t>XSY$Zm>y7K5jlnXW zeG#h5stH&D50PLj=D4Q6!0)?6$ZB}rygtdZ02vZwKec1<$D)MB$3SbGP+;OH-3xlk zzfTzTdjh)jr(3V~5GS{cc4b;v_vd|6OX!pJ1M}E$yCrMXmKbHRuBqQxWl$7 z@RLbHIATu_ROU_NE@Aq!pi3@cQh(YQ0^{QZB2i2zg!ug>qVx$s&+JbIx-JO%(m;!C z5Gz}sXayEHgYjITlp+x0cag3~vS zuc;DAxgR&lmFw=6f<$G78n3H=8EBdc0Va(B5e-|VYKq|ryhhb>M1>Z<2E)){BLpuG6FSOl0~? zf$q7M9P41H>N!Mp*8%rzidHzY(L}kU6UV3#F(?E zgUbFPwBxYh?D>53!yDK#Y#|hm`q>I8Uh=g+`$v&u`9$$YBLv1H#Ov!&zI4AlZNBr(d8zZt z)nu(doVT;#wA_AhELw= z9}V;GqLh+!KR?~w^O$?_Daym6)OU7cC2h*e{QN(k+r-;0TLwVG&pYXh76xl1lUPm? z=kNdkbHl&mg}qzpo9p9$Z>-_mvq$*zC$7i=Kb~-M`~03d^MTJq`o#i14;kF9rpa_S z3j)I;)*(1NOx>O~hF7gfC6XvK_vGy>QiEjVnD?AxP+DLVf2!lo6U2)$#A&eQySQ zfJN25qQRPS+-{$VM(|0T@BZTZ3|TcivNOVupBlp|Q}`PiGx35kFdi$O@F|S+CpZ1+ zT*E{`pek}ceO+L9gxWoCfTl z+`qA=xo2K{`7M`Dn*bX=d8=PgUlOHKeqSM^EPx06U?fUycP}8UST>t)|I52rxUe>- zuC-0&ML`o|+&TD0n5BnUzh)Kv{qD4QCR zznnG!!Xx!JqSWGSgpt+$bcWC8B&q8;gaXc9H;;e$`ju2w6)u@tF}JKZ0YqaA5DXHd zoG)Ek#mWVKuGv_|r>~#Qoku>JWBSMAP6@w1Nu-|>&=vOii{}D7*~m$(L&e@sf&&9n z06j0z)5SC$%%O2alS>NQ$?@+hVHffJ#r_oI^BZe7z4c$;Uy1-lVgOO-d%v8~_*9PH z)qXN*-kR>iXvfevE5PQjY$6mY9!^w;bn!6&6v_y?qJrUYHA_~s^0RBg9FP|Ne$U4k zlDVl&p~G0z&Q1lF?4K{0z)B{u9LMdlx$So|l&QU9X1t`yHh4-dO)V;La%# zVA%)mevjZ=l^qJp(|!voMuzdn;#8C=E;%Pge_s!kEiFX}P!Z6XE?f=)ln?C~D67EN z+`_H;YxsJrFetS>-|O>K3MP|)qzM58vt z;RGEAM%mXBrn`5H-u@^f;dm-nklWWU2m~jv4mt6F5p*<8?Mu5DxL|#8&^@3P1Kk@4 zD!)dL#xSEnq(0~#izHL&=ZOfA9iQ+LKq-jKn_d5o_5b^wzkTU%9-Nc_pudoIBpLs& zT(gg*P{yHrXc&Mme&$@d_iba_wrw;vHd0YhQBYepiuYJmBZ$%%EX1)XpSKWSSp_1H zNIFDf#_j9pO%d}&B7{aqS-FuGE zv2O^IoZLDn4^hY?N@Zsc;bn`6&27kno&sdj=-)#MZQQ8dIy{auD+I=1MH5*9kPB{h z;K7HgsxJXD(bIZ4WtXgAM|G4P zJ9hBwv(Iw*<(C%#5GyuRD`1R5SwRA!a{Of##FB2HSFD>yJW2V;2(^CU=9|vs1Mh4l z5SZCyCZA8!y116s#kE{>`4Rx)ahvvzA$ITSXZNmtI`$sn!2V%O(#Z`Vi)0GDF+;

-T$L*{65h?38)gX}`v4AJIOhq=?z8 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 Ef-`IJ=l}o! literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon128.png b/logo/thunderbird/pre60/mailicon128.png new file mode 100644 index 0000000000000000000000000000000000000000..8b7e74b07bd2a447d7c622424913d7caac9c6cc2 GIT binary patch literal 19586 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�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 literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon16.png b/logo/thunderbird/pre60/mailicon16.png new file mode 100644 index 0000000000000000000000000000000000000000..16ff89ccdfcebcd5506feca7b43143749f011bab GIT binary patch literal 1027 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2>u z=YlX}jY;-GprB-lYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt*yOMIo6b zIjIc3`Bj-YIf)7(8KrqCsYOYdMJWnC`RVz=54HJ$D%~N*l@=wZGGvsL6ck(O>!+mZ zm1kyW7Nn+RCV~vr2l4b>5=&Aut)RxmBN-PDGET3!EdAG#pXV4Dn3+9Y978O6dnbG5 zNT*7)$@d>WSFtC3<#rv_(77huew>UwlT5s>?qYSB*wu0)%0fv`M<|G|gM*Kw(BaXc z#@;pw#nr8L+$_8 z58hXQTRid1i;o9OruRHit=@X%P7Ysvw6NEO=IFAZD6Ozf;$nPj=FObJIN_hJdjFon zrIs>P?;b3iGUxouHEG>v&c?a+vT>OF{-CLsbNNs}jN|=vCoD_fTNg4&Cj9vEME&}f zwkMxo+DxyDICkRiiLbJmr)D?V`^`Nbd)>os&cbEVIaf-uc0Jv6<|}`LvXO(uw2Ec> z3Yz}?6THTyWxhqMic9{p!{#HCf*-EG|2*=aYRBDcy-D0lYDAT%%d<{6uI7JQPVC9W z>f0+Kd^z6Q=$H5kXJw}P{|Y=3Hq|$G%Jh4`rbvDZxR{j@US!cC>s0$faOc7x4iB%Z zAC8snnqQM7zc+pP4M7VJi%X5pWr`}2mmfab_)%`zvQ;9RS9A0WFK1Bqiu(0#@9EUL zT}BsP9$j0}v3>g@mt6(FXGg@uBvt)VGS`y+!n^e4TfR-Z^&8LYKkhe4erJ}H;VKvuoj)r8_D_L&iBvp zdw;&u42}@HAy)lf{>i%#{kWsO2Cq7Pi3Pe(oDk{CG5OXnwzS-v2J7cr>M|~AI~EsX zaO?A``~`DP+U))L^m#nT<~a7#P7!Q}t`tVG?f)CQaN8&C-hI3=xBTxjJX`DE)3?9o zepT7C*I(b<gb)pSPp_bw)^8SmfurM9*6pI^Ny-&iE; vr?AAH$)9wEI?t(GxOYL|##ys(|CrnF8XOT=c!L?3!x%hW{an^LB{Ts5g3QoJ literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon22.png b/logo/thunderbird/pre60/mailicon22.png new file mode 100644 index 0000000000000000000000000000000000000000..9cf772af2168d2d39a5f41329eaaef17012d15a9 GIT binary patch literal 1537 zcmV+c2LAbpP)Hq)$8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H103LKjSaeirbZlh+O>cT>Y;0j5RA_Z>WMy(w#BOmAmzQ{gKQ z0000-bVXQnQ*U*0V`TtnbaZfYIxjC|WiEGVYiV$0WNBe8Z*pfZcWG;BFGOKV#Nq8A#IO*Yv?fG8a1NvZ~-cb z8y5l|wk&9ssz9j}tU_&Zuro~O-_EK3p@&tWwDe=L@DXlbaoznb!BGzj}B0H;bD$ zKlXCt;+8w>>jG+BV}q8PG00>Jq^I(vf6y^a3t^Y+VrFW`)Zmj3Tv6uObw!K$avlMPkmdAz#+NJanQbJMhTKpFHxV(!i2! zFShk;-qqD+d)k*KDdkqW7!=HQ#KvUmeBAx5{_8k7#zokc4d?uSsH*@f%52zOdOja!A+>f(l za~8!SoF6^HxnoDs>YJI(8_dj>amp5@vPoGlRoheZ-^4kVQvo8?>QgpexzRX4=QVx2 zo7Guz<7zCs1OMrrYzv-bCJ`nTsp5<~!PuE^NqyCdnry|#9eXH;9D z$)FE^hsfoTW%DiV#bp>93 z1+wNvI5t97u#rinXPCF}D$1wMlGY_8+eQg_aSJ+1RU9kzH~GR;6iV^w@sjKDYXBq` zHlt6a2q)VKB^r?=g`7Ui(IY1~@W~g5fS;ZlylJfNzFJ*z@)~WYZ~{Tk2VR!zvag;!IDMSl-=+IXyvT zrJs@#KugRgm(>Lf*fPMu-9xWVO%&Alf>u;j1J^-Q6qfg1OA6!Hafd5h|J6kouHFsHJY1myK2gI}C2KKIN{VOs`5xCqywA{ZtTsRZF7 zTpQt72-^bNAmN!~Swj_tvO&2pLoS!Y6cV;Rvgd!27f;5Xc;%4ah}CpWZ|%Rw*!lV! z!ZPN-buS(V90xASg=J6>NgREQVm3v{YY`IP<79?k_;2z6W+y*7xOip%#)+{Li$+FI zIlK1`<#xZbFXOQ?zEV+Fp$d?4;tyt;fWJlf~6psD)Wwx7; zmfigD{xgH`-B8F(JO;#ovH}bG{@BpjzrMY(wP~KWqpd|cc;rX^^z=W)#Kd=!rfFD~ zX#>5$&}G*qz|xhy>qkESbPMo4paF5967a|%Z|YjqXJ$zc1zW`i0+LA%ek32H5mlg#VA+-MxP0s#P0@RMoRD7MpiE n5~+Ie;%|N*T3TAXSE~6B%Q-x#;Uz{>00000NkvXXu0mjfD!bS# literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon24.png b/logo/thunderbird/pre60/mailicon24.png new file mode 100644 index 0000000000000000000000000000000000000000..e208cdd90213d132d21b33f78c032be0c4b3cb0d GIT binary patch literal 1724 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�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 RZ2<6(vVw+ut(;lt{{i*B6D$A# literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon32.png b/logo/thunderbird/pre60/mailicon32.png new file mode 100644 index 0000000000000000000000000000000000000000..9345f88cada1877b0585fb3749b8bcb297afaab5 GIT binary patch literal 2619 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 b!Px%-Wv4Gavy&k%00000NkvXXu0mjfKa4;C literal 0 HcmV?d00001 diff --git a/logo/thunderbird/pre60/mailicon512.png b/logo/thunderbird/pre60/mailicon512.png new file mode 100644 index 0000000000000000000000000000000000000000..907bb1b8a2c2fb857c2e18716e1c610794c2d14a GIT binary patch literal 117944 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 + + + + Mozilla Thunderbird Logo + + + + image/svg+xml + + Mozilla Thunderbird Logo + + + + + + https://de.wikipedia.org/wiki/Datei:Mozilla_Thunderbird_Logo.svg + + + Mozilla Foundation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/thunderbird/thunderbird.svg b/logo/thunderbird/thunderbird.svg new file mode 100644 index 0000000000..1cf2ac91c0 --- /dev/null +++ b/logo/thunderbird/thunderbird.svg @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mozconfig.default b/mozconfig.default new file mode 100644 index 0000000000..9a23f3e81c --- /dev/null +++ b/mozconfig.default @@ -0,0 +1,134 @@ +# -*- mode: makefile; coding: utf-8 -*- + +# mozconfig.default +# default settings for the various builds of Mozilla applications +# +# This file is needed to build multiple applications from the source. +# It set up some variables that are used in all builds, or they will be +# overridden later by some builds. The Mozilla build system supports various +# builds from the same source by separate obj-$directorys. +# Further information around the multiple applications build can be found +# on +# +# https://developer.mozilla.org/en-US/docs/Configuring_Build_Options#Building_with_an_Objdir +# +# The application specific obj-dir is set up within the separate +# mozconfig.$APPLICATION file! + +# use/use not packaged software instead of preshipped +ac_add_options --without-system-jpeg # Debian version causes issues on mips* +ac_add_options --with-system-icu +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +ac_add_options --with-system-librnp +ac_add_options --with-system-zlib + +# other packaged software +ac_add_options --with-system-libevent +ac_add_options --with-system-libvpx + +# disabled features +ac_add_options --disable-bootstrap +ac_add_options --disable-install-strip +ac_add_options --disable-strip +ac_add_options --disable-tests +ac_add_options --disable-updater +ac_add_options --disable-webrtc +ac_add_options --without-wasm-sandboxed-libraries + +# enabled features +ac_add_options --allow-addon-sideload +ac_add_options --enable-av1 +ac_add_options --enable-default-toolkit=cairo-gtk3-wayland +ac_add_options --enable-official-branding # use the official artwork +ac_add_options --enable-optimize +ac_add_options --enable-system-ffi +ac_add_options --with-unsigned-addon-scopes=app,system + +# Debian specific things +PARALLEL_BUILD=$(echo $DEB_BUILD_OPTIONS | sed -e '/parallel=/!s/.*/1/;s/.*parallel=\([0-9]\+\).*/\1/g') +mk_add_options MOZ_MAKE_FLAGS="-j$PARALLEL_BUILD" +ac_add_options --disable-debug +ac_add_options --host=$DEB_HOST_GNU_TYPE + +# some platform depended things +case `dpkg --print-architecture` in + alpha) + ac_add_options --enable-optimize=-O1 + ;; +# amd64) +# ac_add_options --enable-crashreporter +# ;; + arm64) + ac_add_options --enable-optimize=-O1 + ;; + armel) + ac_add_options --enable-optimize=-O1 +# ac_add_options --enable-crashreporter + ;; + armhf) + ac_add_options --enable-optimize=-O1 +# ac_add_options --enable-crashreporter + ;; + hurd-i386) + ac_add_options --disable-necko-wifi + ;; + hppa) + ac_add_options --disable-optimize + ac_add_options --with-intl-api + ;; + i386) +# ac_add_options --enable-crashreporter + ;; + ia64) + ac_add_options --enable-optimize=-O2 + ;; + kfreebsd-i386) + ac_add_options --disable-necko-wifi + ;; + kfreebsd-amd64) + ac_add_options --disable-necko-wifi + ;; + m68k) + ac_add_options --with-intl-api + ;; + mips) + ac_add_options --with-intl-api + ac_add_options --disable-ion + ;; + mips64el) + ac_add_options --with-intl-api + ac_add_options --disable-jit + ;; + mipsel) + ac_add_options --with-intl-api + ac_add_options --disable-jit + ;; + powerpc) + ac_add_options --with-intl-api + ;; + powerpcspe) + ac_add_options --with-intl-api + ;; + ppc64) + ac_add_options --disable-optimize + ac_add_options --with-intl-api + ;; + ppc64el) + ac_add_options --with-intl-api + ;; + sh4) + ac_add_options --disable-pie + ;; + sparc) + ac_add_options --enable-optimize=-O1 + ac_add_options --with-intl-api + ;; + sparc64) + ac_add_options --with-intl-api + ;; + s390x) + ac_add_options --enable-optimize=-O1 + ac_add_options --with-intl-api + ;; +esac diff --git a/mozconfig.thunderbird b/mozconfig.thunderbird new file mode 100644 index 0000000000..e353666c9b --- /dev/null +++ b/mozconfig.thunderbird @@ -0,0 +1,16 @@ +# -*- mode: makefile; coding: utf-8 -*- + +# mozconfig.thunderbird +# settings for the build of Icedove +# +# This file set up extra config options for the build of the Thunderbird +# application. +# Remember, options here will be overriden by sourcing any file later! + +# sourcing the default common settings +. $topsrcdir/mozconfig.default + +# Debian specific things +ac_add_options --enable-application=comm/mail # enable Thunderbird + +# setting the obj-dir (build directory, filled in by debian/rules) diff --git a/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch b/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch new file mode 100644 index 0000000000..5473e60c6d --- /dev/null +++ b/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch @@ -0,0 +1,30 @@ +From: Mike Hommey +Date: Sat, 21 Jun 2008 03:09:21 +0200 +Subject: Add another preferences directory for applications: + preferences/syspref + +This can be used to symlink to /etc/thunderbird/pref. +--- + toolkit/xre/nsXREDirProvider.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp +index 5536f44..5d9bad5 100644 +--- a/toolkit/xre/nsXREDirProvider.cpp ++++ b/toolkit/xre/nsXREDirProvider.cpp +@@ -765,6 +765,7 @@ static const char* const kAppendPrefDir[] = {"defaults", "preferences", + static const char* const kAppendBackgroundTasksPrefDir[] = { + "defaults", "backgroundtasks", nullptr}; + #endif ++static const char *const kAppendSysPrefDir[] = { "defaults", "syspref", nullptr }; + + nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty, + nsISimpleEnumerator** aResult) { +@@ -781,6 +782,7 @@ nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty, + LoadDirIntoArray(mXULAppDir, kAppendBackgroundTasksPrefDir, directories); + } + #endif ++ LoadDirIntoArray(mXULAppDir, kAppendSysPrefDir, directories); + + rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile)); + } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) { diff --git a/patches/debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch b/patches/debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch new file mode 100644 index 0000000000..42721aaa44 --- /dev/null +++ b/patches/debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch @@ -0,0 +1,21 @@ +From: Carsten Schoenert +Date: Sat, 19 Dec 2020 09:14:20 +0100 +Subject: Decrease Cargo minimal version to 1.46.0 + +--- + build/moz.configure/rust.configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/moz.configure/rust.configure b/build/moz.configure/rust.configure +index e64dc5d..af34c46 100644 +--- a/build/moz.configure/rust.configure ++++ b/build/moz.configure/rust.configure +@@ -171,7 +171,7 @@ def rust_compiler(rustc_info, cargo_info, target): + ) + ) + rustc_min_version = Version(MINIMUM_RUST_VERSION) +- cargo_min_version = rustc_min_version ++ cargo_min_version = Version('1.46.0') + + version = rustc_info.version + is_nightly = "nightly" in version.version diff --git a/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch b/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch new file mode 100644 index 0000000000..a278d4200b --- /dev/null +++ b/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch @@ -0,0 +1,48 @@ +From: Mike Hommey +Date: Mon, 5 Apr 2010 17:58:23 +0200 +Subject: Don't error-out when run-time libsqlite is older than build-time + libsqlite + +In Debian, we have shlibs to handle this. +--- + storage/mozStorageService.cpp | 27 +++++++++++++++++++++++++++ + 1 file changed, 27 insertions(+) + +diff --git a/storage/mozStorageService.cpp b/storage/mozStorageService.cpp +index 20c9601..cb5c905 100644 +--- a/storage/mozStorageService.cpp ++++ b/storage/mozStorageService.cpp +@@ -167,6 +167,33 @@ already_AddRefed Service::getSingleton() { + return do_AddRef(gService); + } + ++#if 0 ++ // Ensure that we are using the same version of SQLite that we compiled with ++ // or newer. Our configure check ensures we are using a new enough version ++ // at compile time. ++ if (SQLITE_VERSION_NUMBER > ::sqlite3_libversion_number() || ++ !::sqlite3_compileoption_used("SQLITE_SECURE_DELETE") || ++ !::sqlite3_compileoption_used("SQLITE_THREADSAFE=1") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_FTS3") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_UNLOCK_NOTIFY") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_DBSTAT_VTAB")) { ++ nsCOMPtr ps(do_GetService(NS_PROMPTSERVICE_CONTRACTID)); ++ if (ps) { ++ nsAutoString title, message; ++ title.AppendLiteral("SQLite Version Error"); ++ message.AppendLiteral( ++ "The application has been updated, but the SQLite " ++ "library wasn't updated properly and the application " ++ "cannot run. Please try to launch the application again. " ++ "If that should still fail, please try reinstalling " ++ "it, or contact the support of where you got the " ++ "application from."); ++ (void)ps->Alert(nullptr, title.get(), message.get()); ++ } ++ MOZ_CRASH("SQLite Version Error"); ++ } ++#endif ++ + // The first reference to the storage service must be obtained on the + // main thread. + NS_ENSURE_TRUE(NS_IsMainThread(), nullptr); diff --git a/patches/debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch b/patches/debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch new file mode 100644 index 0000000000..8249ccba33 --- /dev/null +++ b/patches/debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch @@ -0,0 +1,127 @@ +From: Carsten Schoenert +Date: Sun, 21 Nov 2021 18:24:23 +0100 +Subject: Fix Floating-Point Normalization breakage on 32bit Linux + +This patch is picked from ther bug report about broken +Floating-Point Normalization breaks build on 32bit Linux from the user +acmodor https://bugzilla.mozilla.org/attachment.cgi?id=9250378 + +Author: Christoph Moench-Tegeder and acmodor +Forwarded: https://bugzilla.mozilla.org/attachment.cgi?id=9250378 +--- + modules/fdlibm/src/math_private.h | 86 ++++++++++++++++++++++++++++++++++++++- + 1 file changed, 85 insertions(+), 1 deletion(-) + +diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h +index 51d79f9..9e4dd25 100644 +--- a/modules/fdlibm/src/math_private.h ++++ b/modules/fdlibm/src/math_private.h +@@ -30,9 +30,13 @@ + * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t + */ + ++#ifdef __LP64__ + typedef double __double_t; ++#else ++typedef long double __double_t; ++#endif + typedef __double_t double_t; +- ++typedef float __float_t; + /* + * The original fdlibm code used statements like: + * n0 = ((*(int*)&one)>>29)^1; * index of high word * +@@ -630,6 +634,53 @@ rnint(__double_t x) + return ((double)(x + 0x1.8p52) - 0x1.8p52); + } + ++static inline float ++rnintf(__float_t x) ++{ ++ /* ++ * As for rnint(), except we could just call that to handle the ++ * extra precision case, usually without losing efficiency. ++ */ ++ return ((float)(x + 0x1.8p23F) - 0x1.8p23F); ++} ++ ++#ifdef LDBL_MANT_DIG ++/* ++ * The complications for extra precision are smaller for rnintl() since it ++ * can safely assume that the rounding precision has been increased from ++ * its default to FP_PE on x86. We don't exploit that here to get small ++ * optimizations from limiting the rangle to double. We just need it for ++ * the magic number to work with long doubles. ld128 callers should use ++ * rnint() instead of this if possible. ld80 callers should prefer ++ * rnintl() since for amd64 this avoids swapping the register set, while ++ * for i386 it makes no difference (assuming FP_PE), and for other arches ++ * it makes little difference. ++ */ ++ ++static inline long double ++rnintl(long double x) ++{ ++ /* The WRAPPED__CONCAT() macro below is required for non-FreeBSD targets ++ which don't have a multi-level CONCAT macro implementation. On those ++ targets the hexadecimal floating-point values being created don't expand ++ properly resulting in code that cannot be compiled. ++ ++ The extra level provided by this macro should not affect FreeBSD, should ++ this code be used there. ++ ++ See the following for more details: ++ ++ https://gcc.gnu.org/onlinedocs/gcc-3.0.1/cpp_3.html#SEC32 ++ https://sources.debian.org/src/glibc/2.32-3/misc/sys/cdefs.h/ ++ https://github.com/freebsd/freebsd-src/blob/main/sys/sys/cdefs.h ++ */ ++ #define WRAPPED__CONCAT(x,y) __CONCAT(x,y) ++ ++ return (x + WRAPPED__CONCAT(0x1.8p, LDBL_MANT_DIG) / 2 - ++ WRAPPED__CONCAT(0x1.8p, LDBL_MANT_DIG) / 2); ++} ++#endif /* LDBL_MANT_DIG */ ++ + /* + * irint() and i64rint() give the same result as casting to their integer + * return type provided their arg is a floating point integer. They can +@@ -646,6 +697,39 @@ rnint(__double_t x) + #define irint(x) ((int)(x)) + #endif + ++#define i64rint(x) ((int64_t)(x)) /* only needed for ld128 so not opt. */ ++ ++#if defined(__i386__) && defined(__GNUCLIKE_ASM) ++static __inline int ++irintf(float x) ++{ ++ int n; ++ ++ __asm("fistl %0" : "=m" (n) : "t" (x)); ++ return (n); ++} ++ ++static __inline int ++irintd(double x) ++{ ++ int n; ++ ++ __asm("fistl %0" : "=m" (n) : "t" (x)); ++ return (n); ++} ++#endif ++ ++#if (defined(__amd64__) || defined(__i386__)) && defined(__GNUCLIKE_ASM) ++static __inline int ++irintl(long double x) ++{ ++ int n; ++ ++ __asm("fistl %0" : "=m" (n) : "t" (x)); ++ return (n); ++} ++#endif ++ + #ifdef DEBUG + #if defined(__amd64__) || defined(__i386__) + #define breakpoint() asm("int $3") diff --git a/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch b/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch new file mode 100644 index 0000000000..7b20cc50b1 --- /dev/null +++ b/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch @@ -0,0 +1,31 @@ +From: Carsten Schoenert +Date: Sun, 6 Oct 2019 10:03:15 +0200 +Subject: Make Thunderbird build reproducible + +Cherry picked from OpenSuse +https://build.opensuse.org/request/show/732106 +--- + python/mozbuild/mozbuild/action/langpack_manifest.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py +index 05adaa4..04f3a10 100644 +--- a/python/mozbuild/mozbuild/action/langpack_manifest.py ++++ b/python/mozbuild/mozbuild/action/langpack_manifest.py +@@ -16,6 +16,7 @@ import os + import json + import io + import datetime ++import time + import requests + import mozversioncontrol + import mozpack.path as mozpath +@@ -105,7 +106,7 @@ def get_timestamp_for_locale(path): + dt = get_dt_from_hg(path) + + if dt is None: +- dt = datetime.datetime.utcnow() ++ dt = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))) + + dt = dt.replace(microsecond=0) + return dt.strftime("%Y%m%d%H%M%S") diff --git a/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch b/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch new file mode 100644 index 0000000000..ff3680c6da --- /dev/null +++ b/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch @@ -0,0 +1,26 @@ +From: Mike Hommey +Date: Sun, 5 Feb 2017 08:41:22 +0900 +Subject: Set program name from the remoting name + +--- + toolkit/xre/nsAppRunner.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp +index 79baf84..1f6bc18 100644 +--- a/toolkit/xre/nsAppRunner.cpp ++++ b/toolkit/xre/nsAppRunner.cpp +@@ -4745,8 +4745,11 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { + // consistently. + + // Set program name to the one defined in application.ini. +- g_set_prgname(gAppData->remotingName); +- ++ { ++ nsAutoCString program(gAppData->remotingName); ++ ToLowerCase(program); ++ g_set_prgname(program.get()); ++ } + // Initialize GTK here for splash. + + # if defined(MOZ_WIDGET_GTK) && defined(MOZ_X11) diff --git a/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch b/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch new file mode 100644 index 0000000000..1c85d5d9e3 --- /dev/null +++ b/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch @@ -0,0 +1,24 @@ +From: =?utf-8?q?Guido_G=C3=BCnther?= +Date: Sat, 24 Nov 2012 11:39:58 +0100 +Subject: Strip version number from application before installation + +Strip thunderbird's version number from the installation directories so +we have a fixed location for extensions that build against it. +--- + config/baseconfig.mk | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/config/baseconfig.mk b/config/baseconfig.mk +index 8f3e920..47c442a 100644 +--- a/config/baseconfig.mk ++++ b/config/baseconfig.mk +@@ -3,6 +3,9 @@ + # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending + # whether a normal build is happening or whether the check is running. + installdir = $(libdir)/$(MOZ_APP_NAME) ++includedir := $(includedir)/$(MOZ_APP_NAME) ++idldir = $(datadir)/idl/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + ifeq (.,$(DEPTH)) + DIST = dist + else diff --git a/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch b/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch new file mode 100644 index 0000000000..2a5fc648af --- /dev/null +++ b/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch @@ -0,0 +1,77 @@ +From: Mike Hommey +Date: Sat, 21 Jun 2008 02:48:46 +0200 +Subject: Allow .js preference files to set locked prefs with lockPref() + +--- + modules/libpref/parser/src/lib.rs | 23 ++++++++++++----------- + 1 file changed, 12 insertions(+), 11 deletions(-) + +diff --git a/modules/libpref/parser/src/lib.rs b/modules/libpref/parser/src/lib.rs +index bce98c0..ac16f84 100644 +--- a/modules/libpref/parser/src/lib.rs ++++ b/modules/libpref/parser/src/lib.rs +@@ -11,7 +11,7 @@ + //! ```text + //! = * + //! = "(" "," ")" ";" +-//! = "user_pref" | "pref" | "sticky_pref" // in default pref files ++//! = "user_pref" | "pref" | "sticky_pref | lockPref" // in default pref files + //! = "user_pref" // in user pref files + //! = + //! = | "true" | "false" | +@@ -171,6 +171,7 @@ enum Token { + // Keywords + Pref, // pref + StickyPref, // sticky_pref ++ LockPref, // lockPref + UserPref, // user_pref + True, // true + False, // false +@@ -293,7 +294,7 @@ struct KeywordInfo { + token: Token, + } + +-const KEYWORD_INFOS: [KeywordInfo; 7] = [ ++const KEYWORD_INFOS: [KeywordInfo; 8] = [ + // These are ordered by frequency. + KeywordInfo { + string: b"pref", +@@ -323,6 +324,10 @@ const KEYWORD_INFOS: [KeywordInfo; 7] = [ + string: b"sticky_pref", + token: Token::StickyPref, + }, ++ KeywordInfo { ++ string: b"lock_pref", ++ token: Token::LockPref, ++ }, + ]; + + struct Parser<'t> { +@@ -375,14 +380,11 @@ impl<'t> Parser<'t> { + // this will be either the first token of a new pref, or EOF. + loop { + // +- let (pref_value_kind, mut is_sticky) = match token { +- Token::Pref if self.kind == PrefValueKind::Default => { +- (PrefValueKind::Default, false) +- } +- Token::StickyPref if self.kind == PrefValueKind::Default => { +- (PrefValueKind::Default, true) +- } +- Token::UserPref => (PrefValueKind::User, false), ++ let (pref_value_kind, mut is_sticky, mut is_locked) = match token { ++ Token::Pref => (PrefValueKind::Default, false, false), ++ Token::StickyPref => (PrefValueKind::Default, true, false), ++ Token::LockPref => (PrefValueKind::Default, false, true), ++ Token::UserPref => (PrefValueKind::User, false, false), + Token::SingleChar(EOF) => return !self.has_errors, + _ => { + token = self.error_and_recover( +@@ -492,7 +494,6 @@ impl<'t> Parser<'t> { + }; + + // ("," )* // default pref files only +- let mut is_locked = false; + let mut has_attrs = false; + if self.kind == PrefValueKind::Default { + let ok = loop { diff --git a/patches/fixes/Appdata-Adding-some-German-translations.patch b/patches/fixes/Appdata-Adding-some-German-translations.patch new file mode 100644 index 0000000000..13088078d8 --- /dev/null +++ b/patches/fixes/Appdata-Adding-some-German-translations.patch @@ -0,0 +1,48 @@ +From: Carsten Schoenert +Date: Sun, 18 Oct 2020 08:38:29 +0200 +Subject: Appdata: Adding some German translations + +--- + .../thunderbird/net.thunderbird.Thunderbird.appdata.xml | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +index 30397d1..d31e2dd 100644 +--- a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml ++++ b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +@@ -3,7 +3,9 @@ + net.thunderbird.Thunderbird + CC0-1.0 + Thunderbird ++ Thunderbird +

Thunderbird is a free and open source email, newsfeed, chat, and calendaring client ++ Thunderbird ist ein freier und Quelloffener Klient für E-Mail-, Newsfeed-, Chat- und Kalender + + +

+@@ -14,10 +16,25 @@ + that can’t communicate with each other. We want our users to have freedom + and choice in how they communicate. +

++ ++

++ Thunderbird ist ein kostenloses E-Mail-, Newsfeed-, Chat- und ++ Kalender-Programm, das einfach einzurichten und anzupassen ist. Eines ++ der Kernprinzipien von Thunderbird ist die Verwendung und Förderung ++ offener Standards – durch diesen Fokus lehnen wir die geschlossenen ++ Plattformen und Dienste unserer Welt ab, die nicht miteinander ++ kommunizieren können. Wir möchten, dass unsere Benutzer die Freiheit ++ und Wahl haben, wie sie kommunizieren. ++

++ +

+ Thunderbird is an open source project, which means anyone can contribute + ideas, designs, code, and time helping fellow users. +

++

++ Thunderbird ist ein Freies Softwareprojekt, jede Person kann Ideen, ++ Designs, Code und Zeit einbringen um anderen Benutzern zu helfen. ++

+
+ + Calendar diff --git a/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch b/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch new file mode 100644 index 0000000000..0472ed9173 --- /dev/null +++ b/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch @@ -0,0 +1,21 @@ +From: Carsten Schoenert +Date: Sun, 18 Oct 2020 08:39:44 +0200 +Subject: Appdata: Fix up AppStream error by adding missing field + +The AppStream data is missing the lauchable element. +--- + comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +index d31e2dd..1f20e06 100644 +--- a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml ++++ b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +@@ -2,6 +2,7 @@ + + net.thunderbird.Thunderbird + CC0-1.0 ++ thunderbird.desktop + Thunderbird + Thunderbird + Thunderbird is a free and open source email, newsfeed, chat, and calendaring client diff --git a/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch b/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch new file mode 100644 index 0000000000..4a38f7b408 --- /dev/null +++ b/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch @@ -0,0 +1,41 @@ +From: qiaopengcheng +Date: Sun, 2 Jun 2019 07:28:24 +0900 +Subject: Bug 1556197 - amend Bug-1544631 for fixing mips32. + +--- + js/src/jit/mips32/MacroAssembler-mips32-inl.h | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/js/src/jit/mips32/MacroAssembler-mips32-inl.h b/js/src/jit/mips32/MacroAssembler-mips32-inl.h +index 5cbcdd8..1a2688a 100644 +--- a/js/src/jit/mips32/MacroAssembler-mips32-inl.h ++++ b/js/src/jit/mips32/MacroAssembler-mips32-inl.h +@@ -901,16 +901,25 @@ void MacroAssembler::branchTestSymbol(Condition cond, const ValueOperand& value, + branchTestSymbol(cond, value.typeReg(), label); + } + ++void MacroAssembler::branchTestBigInt(Condition cond, Register tag, ++ Label* label) { ++ MOZ_ASSERT(cond == Equal || cond == NotEqual); ++ ma_b(tag, ImmTag(JSVAL_TAG_BIGINT), label, cond); ++} ++ + void MacroAssembler::branchTestBigInt(Condition cond, const BaseIndex& address, + Label* label) { + SecondScratchRegisterScope scratch2(*this); +- Register tag = extractTag(address, scratch2); +- branchTestBigInt(cond, tag, label); ++ computeEffectiveAddress(address, scratch2); ++ splitTag(scratch2, scratch2); ++ branchTestBigInt(cond, scratch2, label); + } + + void MacroAssembler::branchTestBigInt(Condition cond, const ValueOperand& value, + Label* label) { +- branchTestBigInt(cond, value.typeReg(), label); ++ SecondScratchRegisterScope scratch2(*this); ++ splitTag(value, scratch2); ++ branchTestBigInt(cond, scratch2, label); + } + + void MacroAssembler::branchTestBigIntTruthy(bool b, const ValueOperand& value, diff --git a/patches/fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch b/patches/fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch new file mode 100644 index 0000000000..96dd7326be --- /dev/null +++ b/patches/fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch @@ -0,0 +1,21 @@ +From: Christopher Aillon +Date: Tue, 8 Feb 2011 14:16:37 -0500 +Subject: Bug 628252 - os2.cc fails to compile against GCC 4.6, + missing #include ; r,a=roc + +--- + gfx/ots/src/os2.cc | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gfx/ots/src/os2.cc b/gfx/ots/src/os2.cc +index 5376a1d..c271d88 100644 +--- a/gfx/ots/src/os2.cc ++++ b/gfx/ots/src/os2.cc +@@ -3,6 +3,7 @@ + // found in the LICENSE file. + + #include ++#include + + #include "os2.h" + #include "head.h" diff --git a/patches/fixes/Load-dependent-libraries-with-their-real-path.patch b/patches/fixes/Load-dependent-libraries-with-their-real-path.patch new file mode 100644 index 0000000000..3377bf83d9 --- /dev/null +++ b/patches/fixes/Load-dependent-libraries-with-their-real-path.patch @@ -0,0 +1,22 @@ +From: Christoph Goehre +Date: Mon, 16 Sep 2013 20:40:57 +0200 +Subject: Load dependent libraries with their real path + +--- + xpcom/glue/standalone/nsXPCOMGlue.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/xpcom/glue/standalone/nsXPCOMGlue.cpp b/xpcom/glue/standalone/nsXPCOMGlue.cpp +index 2ed70cf..d6abc2f 100644 +--- a/xpcom/glue/standalone/nsXPCOMGlue.cpp ++++ b/xpcom/glue/standalone/nsXPCOMGlue.cpp +@@ -144,6 +144,9 @@ static ReadDependentCBResult ReadDependentCB( + ReadAheadLib(aDependentLib); + } + #endif ++ char lib[MAXPATHLEN]; ++ if (realpath(aDependentLib, lib)) ++ aDependentLib = lib; + LibHandleType libHandle; + MOZ_TRY_VAR(libHandle, GetLibHandle(aDependentLib)); + diff --git a/patches/fixes/gfx-Fix-inclusion-of-C-header.patch b/patches/fixes/gfx-Fix-inclusion-of-C-header.patch new file mode 100644 index 0000000000..29cda420a0 --- /dev/null +++ b/patches/fixes/gfx-Fix-inclusion-of-C-header.patch @@ -0,0 +1,22 @@ +From: Carsten Schoenert +Date: Wed, 26 Jul 2023 19:43:43 +0200 +Subject: gfx: Fix inclusion of C++ header + + isn't included so the compilation with gcc13 will be broken. +Adding the needed header for C integer types in GFX submodul. +--- + gfx/2d/Rect.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/gfx/2d/Rect.h b/gfx/2d/Rect.h +index 4875ad6..46b5bf4 100644 +--- a/gfx/2d/Rect.h ++++ b/gfx/2d/Rect.h +@@ -14,6 +14,7 @@ + #include "Tools.h" + #include "mozilla/Maybe.h" + ++#include + #include + + namespace mozilla { diff --git a/patches/fixes/toolkit-Fix-inclusion-of-C-header.patch b/patches/fixes/toolkit-Fix-inclusion-of-C-header.patch new file mode 100644 index 0000000000..c638a0e042 --- /dev/null +++ b/patches/fixes/toolkit-Fix-inclusion-of-C-header.patch @@ -0,0 +1,22 @@ +From: Carsten Schoenert +Date: Wed, 26 Jul 2023 19:52:12 +0200 +Subject: toolkit: Fix inclusion of C++ header + + isn't included so the compilation with gcc13 will be broken. +Adding the needed header for C integer types in toolkit/ folder. +--- + toolkit/components/telemetry/pingsender/pingsender.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/toolkit/components/telemetry/pingsender/pingsender.cpp b/toolkit/components/telemetry/pingsender/pingsender.cpp +index 01fdb63..03b0c6d 100644 +--- a/toolkit/components/telemetry/pingsender/pingsender.cpp ++++ b/toolkit/components/telemetry/pingsender/pingsender.cpp +@@ -3,6 +3,7 @@ + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + ++#include + #include + #include + #include diff --git a/patches/porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch b/patches/porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch new file mode 100644 index 0000000000..9a57898132 --- /dev/null +++ b/patches/porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch @@ -0,0 +1,21 @@ +From: Mike Hommey +Date: Tue, 22 May 2018 07:51:56 +0900 +Subject: Avoid using vmrs/vmsr on armel + +--- + dom/media/webaudio/blink/DenormalDisabler.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dom/media/webaudio/blink/DenormalDisabler.h b/dom/media/webaudio/blink/DenormalDisabler.h +index 51f56bd..ed06a09 100644 +--- a/dom/media/webaudio/blink/DenormalDisabler.h ++++ b/dom/media/webaudio/blink/DenormalDisabler.h +@@ -44,7 +44,7 @@ namespace WebCore { + # define HAVE_DENORMAL 1 + #endif + +-#if defined(__arm__) || defined(__aarch64__) ++#if (defined(__arm__) && !defined(__SOFTFP__)) || defined(__aarch64__) + # define HAVE_DENORMAL 1 + #endif + diff --git a/patches/porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch b/patches/porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch new file mode 100644 index 0000000000..47228d0943 --- /dev/null +++ b/patches/porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch @@ -0,0 +1,53 @@ +From: Mike Hommey +Date: Sat, 1 Jun 2019 09:06:01 +0900 +Subject: Bug 1526653 - Include struct definitions for user_vfp and + user_vfp_exc. + +--- + js/src/wasm/WasmSignalHandlers.cpp | 33 ++++++++++++++++++++++++++++++++- + 1 file changed, 32 insertions(+), 1 deletion(-) + +diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp +index 67d18a9..8420b87 100644 +--- a/js/src/wasm/WasmSignalHandlers.cpp ++++ b/js/src/wasm/WasmSignalHandlers.cpp +@@ -243,7 +243,38 @@ using mozilla::DebugOnly; + "Don't know how to read/write to the thread state via the mcontext_t." + # endif + +-# if defined(ANDROID) ++// On ARM Linux, including Android, unaligned FP accesses that were not flagged ++// as unaligned will tend to trap (with SIGBUS) and will need to be emulated. ++// ++// We can only perform this emulation if the system header files provide access ++// to the FP registers. In particular, must have definitions of ++// `struct user_vfp` and `struct user_vfp_exc`, as it does on Android. ++// ++// Those definitions are however not present in the headers of every Linux ++// distro - Raspbian is known to be a problem, for example. However those ++// distros are tier-3 platforms. ++// ++// If you run into compile problems on a tier-3 platform, you can disable the ++// emulation here. ++ ++#if defined(__linux__) && defined(__arm__) ++# define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS ++#endif ++ ++#ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS ++struct user_vfp { ++ unsigned long long fpregs[32]; ++ unsigned long fpscr; ++}; ++ ++struct user_vfp_exc { ++ unsigned long fpexc; ++ unsigned long fpinst; ++ unsigned long fpinst2; ++}; ++#endif ++ ++#if defined(ANDROID) + // Not all versions of the Android NDK define ucontext_t or mcontext_t. + // Detect this and provide custom but compatible definitions. Note that these + // follow the GLibc naming convention to access register values from diff --git a/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch b/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch new file mode 100644 index 0000000000..2505875849 --- /dev/null +++ b/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch @@ -0,0 +1,22 @@ +From: Christoph Goehre +Date: Sat, 6 Aug 2011 17:55:14 +0200 +Subject: Allow ipc code to build on GNU/hurd + +Thanks: Pino Toscano +--- + ipc/chromium/src/build/build_config.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ipc/chromium/src/build/build_config.h b/ipc/chromium/src/build/build_config.h +index c5979b4..e104c58 100644 +--- a/ipc/chromium/src/build/build_config.h ++++ b/ipc/chromium/src/build/build_config.h +@@ -22,7 +22,7 @@ + # define OS_LINUX 1 + #elif defined(__APPLE__) + # define OS_MACOSX 1 +-#elif defined(__linux__) || defined(__GLIBC__) ++#elif defined(__linux__) || defined(__GLIBC__) || defined(__GNU__) + # define OS_LINUX 1 + #elif defined(__DragonFly__) + # define OS_DRAGONFLY 1 diff --git a/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch b/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch new file mode 100644 index 0000000000..78adbfc5be --- /dev/null +++ b/patches/porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch @@ -0,0 +1,38 @@ +From: Mike Hommey +Date: Thu, 30 Jun 2011 18:29:22 +0200 +Subject: Allow ipc code to build on GNU/kfreebsd + +--- + ipc/chromium/src/base/platform_thread_posix.cc | 5 +++++ + ipc/chromium/src/build/build_config.h | 2 +- + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/ipc/chromium/src/base/platform_thread_posix.cc b/ipc/chromium/src/base/platform_thread_posix.cc +index 7c866b8..e0d6726 100644 +--- a/ipc/chromium/src/base/platform_thread_posix.cc ++++ b/ipc/chromium/src/base/platform_thread_posix.cc +@@ -51,6 +51,11 @@ PlatformThreadId PlatformThread::CurrentId() { + return port; + #elif defined(OS_LINUX) + return syscall(__NR_gettid); ++#ifdef __NR_gettid ++ return syscall(__NR_gettid); ++#else ++ return getpid(); ++#endif + #elif defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(__GLIBC__) + return (intptr_t)(pthread_self()); + #elif defined(OS_NETBSD) +diff --git a/ipc/chromium/src/build/build_config.h b/ipc/chromium/src/build/build_config.h +index de26701..c5979b4 100644 +--- a/ipc/chromium/src/build/build_config.h ++++ b/ipc/chromium/src/build/build_config.h +@@ -22,7 +22,7 @@ + # define OS_LINUX 1 + #elif defined(__APPLE__) + # define OS_MACOSX 1 +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__GLIBC__) + # define OS_LINUX 1 + #elif defined(__DragonFly__) + # define OS_DRAGONFLY 1 diff --git a/patches/porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch b/patches/porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch new file mode 100644 index 0000000000..a4f115d61f --- /dev/null +++ b/patches/porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch @@ -0,0 +1,201 @@ +From: Carsten Schoenert +Date: Sat, 29 Mar 2014 20:58:55 +0100 +Subject: FTBFS hurd: fixing unsupported platform Hurd + +On the Hurd platform the build failed in +js/src/jit/AsmJSSignalHandlers.cpp:131 because of unsupported +mode for reading / writing thead state with following message. + + # error "Don't know how to read/write to the thread state via the mcontext_t." + +The original patch comes from Richard Brown +https://lists.alioth.debian.org/pipermail/pkg-mozilla-maintainers/2014-March/015565.html + +After release of Thunderbird 44 there are additional changes made as the +various configuration files where split into more files. +--- + ipc/chromium/chromium-config.mozbuild | 5 +++++ + ipc/chromium/moz.build | 2 +- + ipc/chromium/src/base/message_loop.cc | 4 ++-- + ipc/chromium/src/base/process_util_posix.cc | 2 +- + ipc/chromium/src/build/build_config.h | 3 ++- + .../src/third_party/libeventcommon.mozbuild | 5 +++++ + ipc/glue/GeckoChildProcessHost.cpp | 25 +++++++++++++++++++--- + js/src/wasm/WasmSignalHandlers.cpp | 2 +- + 8 files changed, 39 insertions(+), 9 deletions(-) + +diff --git a/ipc/chromium/chromium-config.mozbuild b/ipc/chromium/chromium-config.mozbuild +index 968eb017..df2ec25 100644 +--- a/ipc/chromium/chromium-config.mozbuild ++++ b/ipc/chromium/chromium-config.mozbuild +@@ -56,5 +56,10 @@ else: + DEFINES['OS_OPENBSD'] = 1 + DEFINES['OS_BSD'] = 1 + ++ elif CONFIG['OS_ARCH'] == 'GNU': ++ DEFINES.update({ ++ 'OS_HURD': 1, ++ }) ++ + else: + DEFINES['OS_LINUX'] = 1 +diff --git a/ipc/chromium/moz.build b/ipc/chromium/moz.build +index 0a9ab34..2696bf7 100644 +--- a/ipc/chromium/moz.build ++++ b/ipc/chromium/moz.build +@@ -117,7 +117,7 @@ if os_bsd or os_linux: + "src/base/message_pump_glib.cc", + ] + +-if os_solaris: ++if os_solaris or os_hurd: + SOURCES += [ + "src/base/process_util_linux.cc", + "src/base/time_posix.cc", +diff --git a/ipc/chromium/src/base/message_loop.cc b/ipc/chromium/src/base/message_loop.cc +index 425d6c4..693f65c 100644 +--- a/ipc/chromium/src/base/message_loop.cc ++++ b/ipc/chromium/src/base/message_loop.cc +@@ -26,7 +26,7 @@ + #if defined(OS_POSIX) + # include "base/message_pump_libevent.h" + #endif +-#if defined(OS_LINUX) || defined(OS_BSD) ++#if defined(OS_LINUX) || defined(OS_BSD)|| defined(OS_HURD) + # if defined(MOZ_WIDGET_GTK) + # include "base/message_pump_glib.h" + # endif +@@ -291,7 +291,7 @@ MessageLoop::MessageLoop(Type type, nsISerialEventTarget* aEventTarget) + if (type_ == TYPE_UI) { + # if defined(OS_MACOSX) + pump_ = base::MessagePumpMac::Create(); +-# elif defined(OS_LINUX) || defined(OS_BSD) ++# elif defined(OS_LINUX) || defined(OS_BSD) || defined(OS_HURD) + pump_ = new base::MessagePumpForUI(); + # endif // OS_LINUX + } else if (type_ == TYPE_IO) { +diff --git a/ipc/chromium/src/base/process_util_posix.cc b/ipc/chromium/src/base/process_util_posix.cc +index 80e7ac0..4205262 100644 +--- a/ipc/chromium/src/base/process_util_posix.cc ++++ b/ipc/chromium/src/base/process_util_posix.cc +@@ -114,7 +114,7 @@ void CloseSuperfluousFds(void* aCtx, bool (*aShouldPreserve)(void*, int)) { + #if defined(ANDROID) + static const rlim_t kSystemDefaultMaxFds = 1024; + static const char kFDDir[] = "/proc/self/fd"; +-#elif defined(OS_LINUX) || defined(OS_SOLARIS) ++#elif defined(OS_LINUX) || defined(OS_SOLARIS) || defined(OS_HURD) + static const rlim_t kSystemDefaultMaxFds = 8192; + static const char kFDDir[] = "/proc/self/fd"; + #elif defined(OS_MACOSX) +diff --git a/ipc/chromium/src/build/build_config.h b/ipc/chromium/src/build/build_config.h +index e104c58..4e29cac 100644 +--- a/ipc/chromium/src/build/build_config.h ++++ b/ipc/chromium/src/build/build_config.h +@@ -24,6 +24,7 @@ + # define OS_MACOSX 1 + #elif defined(__linux__) || defined(__GLIBC__) || defined(__GNU__) + # define OS_LINUX 1 ++# define OS_HURD 1 + #elif defined(__DragonFly__) + # define OS_DRAGONFLY 1 + #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +@@ -50,7 +51,7 @@ + // For access to standard POSIX features, use OS_POSIX instead of a more + // specific macro. + #if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \ +- defined(OS_SOLARIS) ++ defined(OS_SOLARIS) || defined(OS_HURD) + # define OS_POSIX 1 + #endif + +diff --git a/ipc/chromium/src/third_party/libeventcommon.mozbuild b/ipc/chromium/src/third_party/libeventcommon.mozbuild +index 5037ec7..c858d9c 100644 +--- a/ipc/chromium/src/third_party/libeventcommon.mozbuild ++++ b/ipc/chromium/src/third_party/libeventcommon.mozbuild +@@ -8,6 +8,7 @@ os_win = 0 + os_posix = 0 + os_macosx = 0 + os_bsd = 0 ++os_hurd = 0 + os_linux = 0 + os_solaris = 0 + +@@ -25,6 +26,10 @@ else: + elif CONFIG['OS_ARCH'] == 'SunOS': + os_solaris = 1 + libevent_include_suffix = 'solaris' ++ # attempt to get GNU hurd into the build again, further modification probably needed ++ elif CONFIG['OS_ARCH'] == 'GNU': ++ os_hurd = 1 ++ libevent_include_suffix = 'gnu' + else: + os_linux = 1 + if CONFIG['OS_TARGET'] == 'Android': +diff --git a/ipc/glue/GeckoChildProcessHost.cpp b/ipc/glue/GeckoChildProcessHost.cpp +index 7a57948..61f23c8 100644 +--- a/ipc/glue/GeckoChildProcessHost.cpp ++++ b/ipc/glue/GeckoChildProcessHost.cpp +@@ -1115,12 +1115,31 @@ bool LinuxProcessLauncher::DoSetup() { + } + #endif // MOZ_WIDGET_GTK + +-#ifdef OS_POSIX ++#if defined(OS_POSIX) || defined(OS_HURD) + bool PosixProcessLauncher::DoSetup() { + if (!BaseProcessLauncher::DoSetup()) { + return false; + } + ++//-------------------------------------------------- ++ // For POSIX, we have to be extremely anal about *not* using ++ // std::wstring in code compiled with Mozilla's -fshort-wchar ++ // configuration, because chromium is compiled with -fno-short-wchar ++ // and passing wstrings from one config to the other is unsafe. So ++ // we split the logic here. ++ ++# if defined(MOZ_WIDGET_GTK) ++ if (mProcessType == GeckoProcessType_Content) { ++ // disable IM module to avoid sandbox violation ++ mLaunchOptions->env_map["GTK_IM_MODULE"] = "gtk-im-context-simple"; ++ ++ // Disable ATK accessibility code in content processes because it conflicts ++ // with the sandbox, and we proxy that information through the main process ++ // anyway. ++ mLaunchOptions->env_map["NO_AT_BRIDGE"] = "1"; ++ } ++# endif // defined(MOZ_WIDGET_GTK) ++ + // XPCOM may not be initialized in some subprocesses. We don't want + // to initialize XPCOM just for the directory service, especially + // since LD_LIBRARY_PATH is already set correctly in subprocesses +@@ -1129,7 +1148,7 @@ bool PosixProcessLauncher::DoSetup() { + MOZ_ASSERT(gGREBinPath); + nsCString path; + NS_CopyUnicodeToNative(nsDependentString(gGREBinPath), path); +-# if defined(OS_LINUX) || defined(OS_BSD) ++# if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_HURD) + const char* ld_library_path = PR_GetEnv("LD_LIBRARY_PATH"); + nsCString new_ld_lib_path(path.get()); + +@@ -1221,7 +1240,7 @@ bool PosixProcessLauncher::DoSetup() { + mChildArgv.push_back(mPidString); + + if (!CrashReporter::IsDummy()) { +-# if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) ++# if defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) || defined(OS_HURD) + int childCrashFd, childCrashRemapFd; + if (NS_WARN_IF(!CrashReporter::CreateNotificationPipeForChild( + &childCrashFd, &childCrashRemapFd))) { +diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp +index 4a45905..67d18a9 100644 +--- a/js/src/wasm/WasmSignalHandlers.cpp ++++ b/js/src/wasm/WasmSignalHandlers.cpp +@@ -111,7 +111,7 @@ using mozilla::DebugOnly; + # define R01_sig(p) ((p)->sc_frame.fixreg[1]) + # define R32_sig(p) ((p)->sc_frame.srr0) + # endif +-# elif defined(__linux__) || defined(__sun) ++# elif defined(__linux__) || defined(__sun) || defined(__GNU__) + # if defined(__linux__) + # define EIP_sig(p) ((p)->uc_mcontext.gregs[REG_EIP]) + # define EBP_sig(p) ((p)->uc_mcontext.gregs[REG_EBP]) diff --git a/patches/porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch b/patches/porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch new file mode 100644 index 0000000000..056f8a900e --- /dev/null +++ b/patches/porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch @@ -0,0 +1,50 @@ +From: Mike Hommey +Date: Tue, 11 Mar 2008 08:29:25 +0100 +Subject: LDAP: support building on GNU/kFreeBSD and GNU/Hurd + +https://bugzilla.mozilla.org/show_bug.cgi?id=356011 + +Squashed kFreeBSD/Hurd related fixes: +- Fix FTBFS on Hurd-i386 +- Build fixes for GNU/kFreeBSD in directory/ +- Missing bits for Hurd support +--- + nsprpub/config/nsinstall.c | 25 +++++++++++++++++++++++++ + 1 file changed, 25 insertions(+) + +diff --git a/nsprpub/config/nsinstall.c b/nsprpub/config/nsinstall.c +index ee6a111..87a90f5 100644 +--- a/nsprpub/config/nsinstall.c ++++ b/nsprpub/config/nsinstall.c +@@ -40,6 +40,31 @@ + #endif + + #if defined(LINUX) || defined(__GNU__) || defined(__GLIBC__) ++#ifdef NEXTSTEP ++#include ++ ++/* ++** balazs.pataki@sztaki.hu: The getcwd is broken in NEXTSTEP (returns 0), ++** when called on a mounted fs. Did anyone notice this? Here's an ugly ++** workaround ... ++*/ ++#define getcwd(b,s) my_getcwd(b,s) ++ ++static char * ++my_getcwd (char *buf, size_t size) ++{ ++ FILE *pwd = popen("pwd", "r"); ++ char *result = fgets(buf, size, pwd); ++ ++ if (result) { ++ buf[strlen(buf)-1] = '\0'; ++ } ++ pclose (pwd); ++ return buf; ++} ++#endif /* NEXTSTEP */ ++ ++#if defined(LINUX) || defined(__GLIBC__) || defined(__GNU__) + #include + #endif + diff --git a/patches/porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch b/patches/porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch new file mode 100644 index 0000000000..6b086f98a4 --- /dev/null +++ b/patches/porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch @@ -0,0 +1,260 @@ +From: Carsten Schoenert +Date: Sun, 24 Apr 2016 20:49:46 +0200 +Subject: adding missed HURD adoptions + +Based on https://lists.alioth.debian.org/pipermail/pkg-mozilla-maintainers/2016-April/027634.html +--- + ipc/chromium/src/base/platform_thread.h | 2 +- + ipc/chromium/src/base/platform_thread_posix.cc | 2 +- + ipc/chromium/src/base/port.h | 2 +- + ipc/chromium/src/base/process_util.h | 2 +- + ipc/chromium/src/base/process_util_posix.cc | 38 ++++++++++++++ + .../gtest/include/gtest/internal/gtest-port.h | 60 +++++++++++++++++++++- + security/sandbox/chromium/build/build_config.h | 4 +- + third_party/libwebrtc/build/build_config.h | 4 +- + third_party/sipcc/cpr_types.h | 2 +- + 9 files changed, 108 insertions(+), 8 deletions(-) + +diff --git a/ipc/chromium/src/base/platform_thread.h b/ipc/chromium/src/base/platform_thread.h +index 42f4865..41e84dc 100644 +--- a/ipc/chromium/src/base/platform_thread.h ++++ b/ipc/chromium/src/base/platform_thread.h +@@ -25,7 +25,7 @@ typedef void* PlatformThreadHandle; // HANDLE + # include + typedef pthread_t PlatformThreadHandle; + # if defined(OS_LINUX) || defined(OS_OPENBSD) || defined(OS_SOLARIS) || \ +- defined(__GLIBC__) ++ defined(__GLIBC__) || defined(OS_HURD) + # include + typedef pid_t PlatformThreadId; + # elif defined(OS_BSD) +diff --git a/ipc/chromium/src/base/platform_thread_posix.cc b/ipc/chromium/src/base/platform_thread_posix.cc +index 31b1592..609260e 100644 +--- a/ipc/chromium/src/base/platform_thread_posix.cc ++++ b/ipc/chromium/src/base/platform_thread_posix.cc +@@ -56,7 +56,7 @@ PlatformThreadId PlatformThread::CurrentId() { + #else + return getpid(); + #endif +-#elif defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(__GLIBC__) ++#elif defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(__GLIBC__) || defined(OS_HURD) + return (intptr_t)(pthread_self()); + #elif defined(OS_NETBSD) + return _lwp_self(); +diff --git a/ipc/chromium/src/base/port.h b/ipc/chromium/src/base/port.h +index 9d78f52..d6176c8 100644 +--- a/ipc/chromium/src/base/port.h ++++ b/ipc/chromium/src/base/port.h +@@ -58,7 +58,7 @@ namespace base { + // Define an OS-neutral wrapper for shared library entry points + #if defined(OS_WIN) + # define API_CALL __stdcall +-#elif defined(OS_LINUX) || defined(OS_MACOSX) ++#elif defined(OS_LINUX) || defined(OS_MACOSX) || defined(OS_HURD) + # define API_CALL + #endif + +diff --git a/ipc/chromium/src/base/process_util.h b/ipc/chromium/src/base/process_util.h +index b44c3dc..9ac8ec7 100644 +--- a/ipc/chromium/src/base/process_util.h ++++ b/ipc/chromium/src/base/process_util.h +@@ -16,7 +16,7 @@ + # include "mozilla/ipc/EnvironmentMap.h" + # include + # include +-#elif defined(OS_LINUX) || defined(__GLIBC__) ++#elif defined(OS_LINUX) || defined(__GLIBC__) || defined(OS_HURD) + # include + # include + # include +diff --git a/ipc/chromium/src/base/process_util_posix.cc b/ipc/chromium/src/base/process_util_posix.cc +index 4205262..ba4e5a4 100644 +--- a/ipc/chromium/src/base/process_util_posix.cc ++++ b/ipc/chromium/src/base/process_util_posix.cc +@@ -125,6 +125,10 @@ void CloseSuperfluousFds(void* aCtx, bool (*aShouldPreserve)(void*, int)) { + static const rlim_t kSystemDefaultMaxFds = 1024; + // at least /dev/fd will exist + static const char kFDDir[] = "/dev/fd"; ++#elif defined(OS_HURD) ++ static const rlim_t kSystemDefaultMaxFds = 1024; ++ // Currently always empty, but it exists ++ static const char kFDDir[] = "/dev/fd"; + #endif + + // Get the maximum number of FDs possible. +@@ -187,6 +191,40 @@ void CloseSuperfluousFds(void* aCtx, bool (*aShouldPreserve)(void*, int)) { + } + } + ++// Sets all file descriptors to close on exec except for stdin, stdout ++// and stderr. ++// TODO(agl): Remove this function. It's fundamentally broken for multithreaded ++// apps. ++void SetAllFDsToCloseOnExec() { ++#if defined(OS_LINUX) || defined(OS_SOLARIS) ++ const char fd_dir[] = "/proc/self/fd"; ++#elif defined(OS_MACOSX) || defined(OS_BSD) || defined(OS_HURD) ++ const char fd_dir[] = "/dev/fd"; ++#endif ++ ScopedDIR dir_closer(opendir(fd_dir)); ++ DIR *dir = dir_closer.get(); ++ if (NULL == dir) { ++ DLOG(ERROR) << "Unable to open " << fd_dir; ++ return; ++ } ++ ++ struct dirent *ent; ++ while ((ent = readdir(dir))) { ++ // Skip . and .. entries. ++ if (ent->d_name[0] == '.') ++ continue; ++ int i = atoi(ent->d_name); ++ // We don't close stdin, stdout or stderr. ++ if (i <= STDERR_FILENO) ++ continue; ++ ++ int flags = fcntl(i, F_GETFD); ++ if ((flags == -1) || (fcntl(i, F_SETFD, flags | FD_CLOEXEC) == -1)) { ++ DLOG(ERROR) << "fcntl failure."; ++ } ++ } ++} ++ + bool DidProcessCrash(bool* child_exited, ProcessHandle handle) { + #ifdef MOZ_ENABLE_FORKSERVER + if (mozilla::ipc::ForkServiceChild::Get()) { +diff --git a/security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-port.h b/security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-port.h +index 0953a78..da8f9c0 100644 +--- a/security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-port.h ++++ b/security/nss/gtests/google_test/gtest/include/gtest/internal/gtest-port.h +@@ -307,6 +307,64 @@ + (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__) + #endif // __GNUC__ + ++// Determines the platform on which Google Test is compiled. ++#ifdef __CYGWIN__ ++# define GTEST_OS_CYGWIN 1 ++#elif defined __SYMBIAN32__ ++# define GTEST_OS_SYMBIAN 1 ++#elif defined _WIN32 ++# define GTEST_OS_WINDOWS 1 ++# ifdef _WIN32_WCE ++# define GTEST_OS_WINDOWS_MOBILE 1 ++# elif defined(__MINGW__) || defined(__MINGW32__) ++# define GTEST_OS_WINDOWS_MINGW 1 ++# elif defined(WINAPI_FAMILY) ++# include ++# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ++# define GTEST_OS_WINDOWS_DESKTOP 1 ++# elif WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_PHONE_APP) ++# define GTEST_OS_WINDOWS_PHONE 1 ++# elif WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) ++# define GTEST_OS_WINDOWS_RT 1 ++# else ++ // WINAPI_FAMILY defined but no known partition matched. ++ // Default to desktop. ++# define GTEST_OS_WINDOWS_DESKTOP 1 ++# endif ++# else ++# define GTEST_OS_WINDOWS_DESKTOP 1 ++# endif // _WIN32_WCE ++#elif defined __APPLE__ ++# define GTEST_OS_MAC 1 ++# if TARGET_OS_IPHONE ++# define GTEST_OS_IOS 1 ++# if TARGET_IPHONE_SIMULATOR ++# define GTEST_OS_IOS_SIMULATOR 1 ++# endif ++# endif ++#elif defined __linux__ ++# define GTEST_OS_LINUX 1 ++# if defined __ANDROID__ ++# define GTEST_OS_LINUX_ANDROID 1 ++# endif ++#elif defined __MVS__ ++# define GTEST_OS_ZOS 1 ++#elif defined(__sun) && defined(__SVR4) ++# define GTEST_OS_SOLARIS 1 ++#elif defined(_AIX) ++# define GTEST_OS_AIX 1 ++#elif defined(__hpux) ++# define GTEST_OS_HPUX 1 ++#elif defined __native_client__ ++# define GTEST_OS_NACL 1 ++#elif defined __OpenBSD__ ++# define GTEST_OS_OPENBSD 1 ++#elif defined __QNX__ ++# define GTEST_OS_QNX 1 ++#elif defined(__GNU__) ++# define GTEST_OS_HURD 1 ++#endif // __CYGWIN__ ++ + // Macros for disabling Microsoft Visual C++ warnings. + // + // GTEST_DISABLE_MSC_WARNINGS_PUSH_(4800 4385) +@@ -547,7 +605,7 @@ typedef struct _RTL_CRITICAL_SECTION GTEST_CRITICAL_SECTION; + (GTEST_OS_LINUX || GTEST_OS_MAC || GTEST_OS_HPUX || GTEST_OS_QNX || \ + GTEST_OS_FREEBSD || GTEST_OS_NACL || GTEST_OS_NETBSD || GTEST_OS_FUCHSIA || \ + GTEST_OS_DRAGONFLY || GTEST_OS_GNU_KFREEBSD || GTEST_OS_OPENBSD || \ +- GTEST_OS_HAIKU) ++ GTEST_OS_HAIKU || GTEST_OS_HURD) + #endif // GTEST_HAS_PTHREAD + + #if GTEST_HAS_PTHREAD +diff --git a/security/sandbox/chromium/build/build_config.h b/security/sandbox/chromium/build/build_config.h +index 48109c4..1bcdb30 100644 +--- a/security/sandbox/chromium/build/build_config.h ++++ b/security/sandbox/chromium/build/build_config.h +@@ -47,6 +47,8 @@ + // we really are using glibc, not uClibc pretending to be glibc + #define LIBC_GLIBC 1 + #endif ++#elif defined(__GNU__) ++#define OS_HURD 1 + #elif defined(_WIN32) + #define OS_WIN 1 + #elif defined(__Fuchsia__) +@@ -82,7 +84,7 @@ + #if defined(OS_AIX) || defined(OS_ANDROID) || defined(OS_ASMJS) || \ + defined(OS_FREEBSD) || defined(OS_LINUX) || defined(OS_MACOSX) || \ + defined(OS_NACL) || defined(OS_NETBSD) || defined(OS_OPENBSD) || \ +- defined(OS_QNX) || defined(OS_SOLARIS) ++ defined(OS_QNX) || defined(OS_SOLARIS) || defined(OS_HURD) + #define OS_POSIX 1 + #endif + +diff --git a/third_party/libwebrtc/build/build_config.h b/third_party/libwebrtc/build/build_config.h +index e312ec5..0ff7509 100644 +--- a/third_party/libwebrtc/build/build_config.h ++++ b/third_party/libwebrtc/build/build_config.h +@@ -68,6 +68,8 @@ + // We really are using glibc, not uClibc pretending to be glibc. + #define LIBC_GLIBC 1 + #endif ++#elif defined(__GNU__) ++#define OS_HURD 1 + #elif defined(_WIN32) + #define OS_WIN 1 + #elif defined(__Fuchsia__) +@@ -108,7 +110,7 @@ + defined(OS_FREEBSD) || defined(OS_IOS) || defined(OS_LINUX) || \ + defined(OS_CHROMEOS) || defined(OS_MAC) || defined(OS_NACL) || \ + defined(OS_NETBSD) || defined(OS_OPENBSD) || defined(OS_QNX) || \ +- defined(OS_SOLARIS) ++ defined(OS_SOLARIS) || defined(OS_HURD) + #define OS_POSIX 1 + #endif + +diff --git a/third_party/sipcc/cpr_types.h b/third_party/sipcc/cpr_types.h +index f048e72..8bb0b59 100644 +--- a/third_party/sipcc/cpr_types.h ++++ b/third_party/sipcc/cpr_types.h +@@ -7,7 +7,7 @@ + + #include + +-#if defined SIP_OS_LINUX ++#if defined SIP_OS_LINUX || defined(SIP_OS_HURD) + #include "cpr_linux_types.h" + #elif defined SIP_OS_WINDOWS + #include "cpr_win_types.h" diff --git a/patches/porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch b/patches/porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch new file mode 100644 index 0000000000..79284cad0d --- /dev/null +++ b/patches/porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch @@ -0,0 +1,60 @@ +From: Christoph Goehre +Date: Wed, 31 Oct 2012 13:27:07 -0400 +Subject: ipc/chromium: fix #if define() for kFreeBSD and Hurd + +The kFreeBSD and Hurd platforms need some other macros to include +the correct needed headers. +Depended on this some minor changes to call the correct functions +also needed. Also the list of the cpp source file for the chromium +things needs to expanded. +The changes is an adoption of the previous dropped patch 'Fix +ipc/chromium on kFreeBSD and Hurd' from the version 17. +--- + ipc/chromium/src/base/platform_thread_posix.cc | 20 ++++++++++++++++++-- + 1 file changed, 18 insertions(+), 2 deletions(-) + +diff --git a/ipc/chromium/src/base/platform_thread_posix.cc b/ipc/chromium/src/base/platform_thread_posix.cc +index e0d6726..31b1592 100644 +--- a/ipc/chromium/src/base/platform_thread_posix.cc ++++ b/ipc/chromium/src/base/platform_thread_posix.cc +@@ -13,7 +13,7 @@ + # include + #elif defined(OS_NETBSD) + # include +-#elif defined(OS_LINUX) ++#elif defined(OS_LINUX) && !defined(__FreeBSD_kernel__) && !defined(__GNU__) + # include + # include + #endif +@@ -22,7 +22,7 @@ + # include + #endif + +-#if defined(OS_BSD) && !defined(OS_NETBSD) && !defined(__GLIBC__) ++#if defined(OS_BSD) && !defined(OS_NETBSD) && !defined(__GLIBC__) && !defined(__FreeBSD_kernel__) + # include + #endif + +@@ -100,6 +100,22 @@ void PlatformThread::SetName(const char* name) { + // also sets the thread name on the PRThread wrapper, and allows us to + // retrieve it using PR_GetThreadName. + NS_SetCurrentThreadName(name); ++ ++ // http://0pointer.de/blog/projects/name-your-threads.html ++ // Set the name for the LWP (which gets truncated to 15 characters). ++ // Note that glibc also has a 'pthread_setname_np' api, but it may not be ++ // available everywhere and it's only benefit over using prctl directly is ++ // that it can set the name of threads other than the current thread. ++#if defined(OS_LINUX) && !defined(__FreeBSD_kernel__) && !defined(__GNU__) ++ prctl(PR_SET_NAME, reinterpret_cast(name), 0, 0, 0); ++#elif defined(OS_NETBSD) ++ pthread_setname_np(pthread_self(), "%s", (void *)name); ++#elif defined(OS_BSD) && !defined(__GLIBC__) ++ pthread_set_name_np(pthread_self(), name); ++#elif defined(OS_SOLARIS) ++ pthread_setname_np(pthread_self(), name); ++#else ++#endif + } + #endif // !OS_MACOSX + diff --git a/patches/porting-ppc64el/work-around-a-build-failure-with-clang-on-ppc64el.patch b/patches/porting-ppc64el/work-around-a-build-failure-with-clang-on-ppc64el.patch new file mode 100644 index 0000000000..bdb22c5bfc --- /dev/null +++ b/patches/porting-ppc64el/work-around-a-build-failure-with-clang-on-ppc64el.patch @@ -0,0 +1,23 @@ +From: Carsten Schoenert +Date: Sat, 5 Oct 2019 15:34:16 +0200 +Subject: work around a build failure with clang on ppc64el + +Author: Olivier Tilloy +Bug: https://bugzilla.mozilla.org/1555531 +--- + security/nss/lib/freebl/mpi/mpcpucache.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/security/nss/lib/freebl/mpi/mpcpucache.c b/security/nss/lib/freebl/mpi/mpcpucache.c +index f09ff34..225edf2 100644 +--- a/security/nss/lib/freebl/mpi/mpcpucache.c ++++ b/security/nss/lib/freebl/mpi/mpcpucache.c +@@ -705,7 +705,7 @@ s_mpi_getProcessorLineSize() + #define MPI_GET_PROCESSOR_LINE_SIZE_DEFINED 1 + #endif + +-#if defined(__ppc64__) ++#if 0 + /* + * Sigh, The PPC has some really nice features to help us determine cache + * size, since it had lots of direct control functions to do so. The POWER diff --git a/patches/porting/Disable-optimization-on-alpha-for-the-url-classifier.patch b/patches/porting/Disable-optimization-on-alpha-for-the-url-classifier.patch new file mode 100644 index 0000000000..3cf2b0062f --- /dev/null +++ b/patches/porting/Disable-optimization-on-alpha-for-the-url-classifier.patch @@ -0,0 +1,21 @@ +From: Mike Hommey +Date: Sun, 2 Nov 2008 17:56:24 +0100 +Subject: Disable optimization on alpha for the url-classifier component + +The use of this component leads to crashes when built with optimizations. +--- + comm/suite/components/build/Makefile.in | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/comm/suite/components/build/Makefile.in b/comm/suite/components/build/Makefile.in +index 2387227..d5ca1ba 100644 +--- a/comm/suite/components/build/Makefile.in ++++ b/comm/suite/components/build/Makefile.in +@@ -6,3 +6,7 @@ include $(topsrcdir)/config/rules.mk + + # Ensure that we don't embed a manifest referencing the CRT. + EMBED_MANIFEST_AT = ++ ++ifeq ($(OS_TEST),alpha) ++MOZ_OPTIMIZE_FLAGS := -O0 ++endif diff --git a/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch b/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch new file mode 100644 index 0000000000..052d73d838 --- /dev/null +++ b/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch @@ -0,0 +1,24 @@ +From: Mike Hommey +Date: Fri, 12 Jul 2019 18:28:34 +0900 +Subject: Work around GCC ICE on mips*, i386 and s390x + +Cherry picked from Firefox packaging. + +Closes: #931757 +--- + gfx/skia/skia/third_party/skcms/src/Transform_inl.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h +index c4b3122..698acdc 100644 +--- a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h ++++ b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h +@@ -685,7 +685,7 @@ SI void sample_clut_16(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b) { + // GCC 7.2.0 hits an internal compiler error with -finline-functions (or -O3) + // when targeting MIPS 64, i386, or s390x, I think attempting to inline clut() into exec_ops(). + #if 1 && defined(__GNUC__) && !defined(__clang__) \ +- && (defined(__mips64) || defined(__i386) || defined(__s390x__)) ++ && (defined(__mips) || defined(__i386) || defined(__s390x__)) + #define MAYBE_NOINLINE __attribute__((noinline)) + #else + #define MAYBE_NOINLINE diff --git a/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch b/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch new file mode 100644 index 0000000000..aad0389a73 --- /dev/null +++ b/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch @@ -0,0 +1,21 @@ +From: Christoph Goehre +Date: Sat, 24 Mar 2012 11:54:43 +0100 +Subject: Don't auto-disable extensions in system directories + +--- + comm/mail/app/profile/all-thunderbird.js | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/comm/mail/app/profile/all-thunderbird.js b/comm/mail/app/profile/all-thunderbird.js +index c3287ff..4eb6033 100644 +--- a/comm/mail/app/profile/all-thunderbird.js ++++ b/comm/mail/app/profile/all-thunderbird.js +@@ -149,7 +149,7 @@ pref("extensions.hotfix.certs.2.sha1Fingerprint", "39:E7:2B:7A:5B:CF:37:78:F9:5D + // Disable add-ons installed into the shared user and shared system areas by + // default. This does not include the application directory. See the SCOPE + // constants in AddonManager.jsm for values to use here +-pref("extensions.autoDisableScopes", 15); ++pref("extensions.autoDisableScopes", 3); + + // Enable add-ons installed and owned by the application, like the default theme. + pref("extensions.startupScanScopes", 4); diff --git a/patches/prefs/Set-javascript.options.showInConsole.patch b/patches/prefs/Set-javascript.options.showInConsole.patch new file mode 100644 index 0000000000..4a96569282 --- /dev/null +++ b/patches/prefs/Set-javascript.options.showInConsole.patch @@ -0,0 +1,33 @@ +From: Mike Hommey +Date: Sat, 8 Dec 2007 19:24:40 +0100 +Subject: Set javascript.options.showInConsole + +--- + modules/libpref/init/all.js | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js +index 6e0effe..dc3c72b 100644 +--- a/modules/libpref/init/all.js ++++ b/modules/libpref/init/all.js +@@ -998,11 +998,20 @@ pref("javascript.options.throw_on_asmjs_validation_failure", false); + // memory, but makes things like Function.prototype.toSource() + // fail. + pref("javascript.options.discardSystemSource", false); ++pref("javascript.options.showInConsole", true); + + // Many of the the following preferences tune the SpiderMonkey GC, if you + // change the defaults here please also consider changing them in + // js/src/jsgc.cpp. They're documented in js/src/jsapi.h. + ++// JSGC_MAX_MALLOC_BYTES ++// How much malloc memory can be allocated before triggering a GC, in MB. ++// This preference limits the memory usage of javascript. ++// If you want to change these values for your device, ++// please find Bug 417052 comment 17 and Bug 456721 ++// Comment 32 and Bug 613551. ++pref("javascript.options.mem.high_water_mark", 128); ++ + // JSGC_MAX_BYTES + // SpiderMonkey defaults to 2^32-1 bytes, but this is measured in MB so that + // cannot be represented directly in order to show it in about:config. diff --git a/patches/series b/patches/series new file mode 100644 index 0000000000..1fcec47dd2 --- /dev/null +++ b/patches/series @@ -0,0 +1,29 @@ +thunderbird-l10n/sl-change-Edit-Uredi-to-CTRL-E.patch +debian-hacks/Strip-version-number-from-application-before-installation.patch +debian-hacks/Add-another-preferences-directory-for-applications-p.patch +porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch +porting/Disable-optimization-on-alpha-for-the-url-classifier.patch +fixes/Appdata-Adding-some-German-translations.patch +fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch +debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch +porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch +porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch +fixes/Load-dependent-libraries-with-their-real-path.patch +prefs/Set-javascript.options.showInConsole.patch +prefs/Don-t-auto-disable-extensions-in-system-directories.patch +fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch +porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch +porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch +porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch +porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch +porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch +fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch +fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch +debian-hacks/Set-program-name-from-the-remoting-name.patch +porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch +porting-ppc64el/work-around-a-build-failure-with-clang-on-ppc64el.patch +debian-hacks/Make-Thunderbird-build-reproducible.patch +debian-hacks/Decrease-Cargo-minimal-version-to-1.46.0.patch +debian-hacks/Fix-Floating-Point-Normalization-breakage-on-32bit-Linux.patch +fixes/gfx-Fix-inclusion-of-C-header.patch +fixes/toolkit-Fix-inclusion-of-C-header.patch diff --git a/patches/thunderbird-l10n/sl-change-Edit-Uredi-to-CTRL-E.patch b/patches/thunderbird-l10n/sl-change-Edit-Uredi-to-CTRL-E.patch new file mode 100644 index 0000000000..23792bd48c --- /dev/null +++ b/patches/thunderbird-l10n/sl-change-Edit-Uredi-to-CTRL-E.patch @@ -0,0 +1,22 @@ +From: Christoph Goehre +Date: Mon, 5 Sep 2011 19:21:25 +0200 +Subject: sl: change Edit (Uredi) to CTRL+E + +Closes: #601331 +--- + thunderbird-l10n/sl/chrome/sl/locale/sl/communicator/utilityOverlay.dtd | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/thunderbird-l10n/sl/chrome/sl/locale/sl/communicator/utilityOverlay.dtd b/thunderbird-l10n/sl/chrome/sl/locale/sl/communicator/utilityOverlay.dtd +index e586ac4..6572acf 100644 +--- a/thunderbird-l10n/sl/chrome/sl/locale/sl/communicator/utilityOverlay.dtd ++++ b/thunderbird-l10n/sl/chrome/sl/locale/sl/communicator/utilityOverlay.dtd +@@ -10,7 +10,7 @@ + + + +- ++ + + + diff --git a/repack.py b/repack.py new file mode 100755 index 0000000000..32c307d35b --- /dev/null +++ b/repack.py @@ -0,0 +1,209 @@ +#!/usr/bin/python3 + +import email +import fnmatch +import io +import os +import re +import sys +import tarfile +import urllib.request, urllib.error, urllib.parse + +from optparse import OptionParser +from urllib.parse import urlparse + + +class URLFile(object): + '''Simple proxy to urllib2.urlopen, that responds to seek only if + it's called before read. This is enough for tarfile to be happy''' + + def __init__(self, url): + self.file = urllib.request.urlopen(url) + + def seek(self, offset, whence = os.SEEK_SET): + if whence != os.SEEK_SET or offset != 0 or self.read == self._read: + raise "unsupported" + + def _read(self, size = -1): + return self.file.read(size) + + def read(self, size = -1): + self.read = self._read + return self._read(size) + + def close(self): + self.file.close() + + +def dirname(filespec): + '''Returns os.path.dirname if a file, and '' if an url''' + if urlparse(filespec).scheme: + return '' + return os.path.dirname(filespec) + + +class TarFilterList(object): + def __init__(self, filename): + self.patterns = {} + for filt in open(filename).readlines(): + f = filt.strip().split(None, 1) + if len(f) == 1: + [pat] = f + cmd = None + else: + [pat, cmd] = f + + pat = pat.split(os.sep) + self.add_pattern(pat, self.patterns, cmd) + + def add_pattern(self, pat, patterns, cmd): + if re.search(r'[\[\?\*]', pat[0]): + if not '*' in patterns: + patterns['*'] = [] + patterns['*'].append([os.sep.join(pat), cmd, False]) + else: + if not pat[0] in patterns: + patterns[pat[0]] = {} + if len(pat) > 2: + self.add_pattern(pat[1:], patterns[pat[0]], cmd) + else: + if not '*' in patterns[pat[0]]: + patterns[pat[0]]['*'] = [] + patterns[pat[0]]['*'].append([os.sep.join(pat[1:]), cmd, False]) + + def match(self, name): + name = name.split(os.sep)[1:] + if len(name) == 0: + return False + return self._match(name, self.patterns) + + def _match(self, name, patterns): + if len(name) > 1 and name[0] in patterns: + cmd = self._match(name[1:], patterns[name[0]]) + if cmd != False: + return cmd + if '*' in patterns: + for pat in patterns['*']: + if fnmatch.fnmatch(name[0], pat[0]) or fnmatch.fnmatch(os.sep.join(name), pat[0]): + pat[2] = True + return pat[1] + return False + + def unused(self, patterns=None, root=''): + result = [] + if root: + root += '/' + if not patterns: + patterns = self.patterns + for pat in patterns: + if pat != '*': + result += self.unused(patterns[pat], root + pat) + else: + for p in patterns[pat]: + if not p[2]: + result.append(root + p[0]) + return result + + +def file_extension(name): + return os.path.splitext(name)[1][1:] + + +def filter_tar(orig, new, filt): + def u8(x): + return x.decode('utf-8') + + filt = TarFilterList(filt) + if urlparse(orig).scheme: + tar = tarfile.open(orig, "r:" + file_extension(orig), URLFile(orig)) + else: + tar = tarfile.open(orig, "r:" + file_extension(orig)) + new_tar = tarfile.open(f'{new}.new', "w:" + file_extension(new)) + + while True: + info = tar.next() + if not info: + break + do_filt = filt.match(info.name) + if do_filt == None: + print(f'Removing {info.name}', file=sys.stderr) + continue + + if info.isfile(): + file = tar.extractfile(info) + if do_filt: + print(f'Filtering {info.name}', file=sys.stderr) + orig = file + file = io.BytesIO() + the_filt = lambda l: u8(l) + if do_filt[0].isalpha(): + f = do_filt.split(do_filt[1]) + if f[0] == 's': + the_filt = lambda l: re.sub(f[1], f[2], u8(l)) + else: + f = do_filt.split(do_filt[0]) + if f[2] == 'd': + the_filt = lambda l: "" if re.search(f[1], u8(l)) else u8(l) + file.writelines([x.encode('utf-8') for x in map(the_filt, orig.readlines())]) + file.seek(2, 0) + info.size = file.tell() + file.seek(0); + new_tar.addfile(info, file) + else: + new_tar.addfile(info) + + tar.close() + new_tar.close() + os.rename(new_tar.name, new) + unused = filt.unused() + if unused: + print('\nUnused filters:') + for ele in unused: + if not ele.startswith('#'): + print(ele) + + +def get_package_name(): + control = os.path.join(os.path.dirname(__file__), "control") + return email.parser.Parser().parse(open(control), headersonly=True)["Source"] + + +def main(): + parser = OptionParser("%prog [options] tarball") + parser.add_option("-u", "--upstream-version", dest="upstream_version", + help="define upstream version number to use when creating the file", + metavar="VERSION") + parser.add_option("-f", "--filter", dest="filter", + help="use the given filter list", metavar="FILE") + parser.add_option("-p", "--package", dest="package", + help="use the given package name", metavar="NAME") + parser.add_option("-c", "--compression", dest="compression", + help="use the given compression for the new tarball") + (options, args) = parser.parse_args() + + if len(args) < 1 or len(args) > 1: + parser.error("Too few arguments! You may want to use option '--help' for usage first?") + return + + if not options.upstream_version: + parser.error("Need an upstream version") + return + + if not options.filter: + options.filter = os.path.join(os.path.dirname(__file__), "source.filter") + if not options.package: + options.package = get_package_name() + + if os.path.islink(args[0]): + orig = os.path.realpath(args[0]) + new_file = args[0] + else: + orig = args[0] + compression = options.compression or file_extension(orig) + new_file = f'{options.package}_{options.upstream_version}.orig.tar.{compression}' + new_file = os.path.realpath(os.path.join(dirname(orig), new_file)) + print(f'Source: {orig} - Target: {new_file}\n') + filter_tar(orig, new_file, options.filter) + +if __name__ == '__main__': + main() diff --git a/rules b/rules new file mode 100755 index 0000000000..30c1f77f41 --- /dev/null +++ b/rules @@ -0,0 +1,211 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +# export DH_VERBOSE=1 + +# checking the release type, if $(RELEASE)=UNRELEASED we won't build +# the thunderbird-dbgsym package +include /usr/share/dpkg/pkg-info.mk +RELEASE := $(DEB_DISTRIBUTION) + +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +endif + +THUNDERBIRD_VERSION=$(shell tail -1 comm/mail/config/version.txt) +DEB_AUTO_UPDATE_AUTOCONF=2.13 + +# build directory used for building the thunderbird-l10n files +THUNDERBIRD_L10N_BUILDDIR=debian/thunderbird-l10n-build + +# ID of the l10n language packs from upstream, need to match the application.id +# in thunderbird-l10n/$LANG/manifest.json +export MOZ_LANGPACK_ID = $(shell grep MOZ_LANGPACK_EID comm/mail/locales/Makefile.in | cut -f2 -d @) + +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/buildflags.mk +include /usr/share/dpkg/architecture.mk + +# Use dpkg-buildflags to get build flags, but exclude -g, that is dealt with +# via configure options. Picked partially from FF. + +dpkg_buildflags = $(and $(1),$(shell DEB_CFLAGS_MAINT_STRIP="-g" DEB_CXXFLAGS_MAINT_STRIP="-g" dpkg-buildflags --get $(1))) +lazy = $(eval $(1) = $$(if $$(___$(1)),,$$(eval ___$(1) := $(2)))$$(___$(1))) +$(call lazy,CFLAGS,$$(call dpkg_buildflags,CFLAGS)) +$(call lazy,CXXFLAGS,$$(call dpkg_buildflags,CXXFLAGS)) +$(call lazy,CPPFLAGS,$$(call dpkg_buildflags,CPPFLAGS)) +$(call lazy,LDFLAGS,$$(call dpkg_buildflags,LDFLAGS)) + +# special CFLAGS for various platforms +ifeq ($(DEB_BUILD_ARCH),armel) + CFLAGS += -D__ARM_PCS + LDFLAGS += -Wl,-z,muldefs +endif +ifeq ($(DEB_BUILD_ARCH),ppc64el) + # Work around upstream bug 1757271 + CFLAGS += -DSQLITE_BYTEORDER=1234 +endif + +# Reduce memory usage of the linker at the expense of processing time +# This should help on lower-end architectures like arm and mips, which +# spend an immense amount of time swapping. +LDFLAGS += -Wl,--reduce-memory-overheads +LDFLAGS += -Wl,--no-keep-memory +LDFLAGS += -Wl,--as-needed + +# Make the linker generate compressed debug sections. dh_strip would do +# the same anyways, but it allows elfhack to work in combination with +# unstripped binaries when they would normally be larger than 2GiB. +# Doing this only on 64bit architectures. +ifeq (64,$(DEB_BUILD_ARCH_BITS)) + LDFLAGS += -Wl,--compress-debug-sections=zlib +endif + +# Add execution time and memory usage stats in the logs +LDFLAGS += -Wl,--stats + +# Using the timestamp for MOZ_BUILD_DATE from the file './sourcestamp.txt' +# which is set by Mozilla while creating the release. +# This ensures we have a one-to-one date across the various package builds +# within Debian for one upstream version. This is important for user which +# are performing a dist-upgrade to a new release. +export MOZ_BUILD_DATE := ${shell head -n1 $(CURDIR)/sourcestamp.txt} +export MOZCONFIG=$(shell pwd)/mozconfig.thunderbird +export MOZILLA_OFFICIAL=1 +export DEB_BUILD_GNU_TYPE +export DEB_HOST_GNU_TYPE +export DEB_BUILD_OPTIONS +# Some Debian build tools clear out some variables +export SHELL=/bin/bash +# Work around https://github.com/rust-lang/cargo/issues/7147 +export CARGO_HOME=$(CURDIR)/debian/.cargo +export MOZBUILD_STATE_PATH = $(CURDIR)/debian/.mozbuild +export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system + +%: + dh $@ + +build: + dh $@ + +override_dh_auto_clean: + dh_auto_clean --builddirectory=obj-thunderbird + find -type f -name "*.pyc" -exec rm {} \; + rm -rf third_party/python/psutil/tmp + rm -f configure old-configure js/src/configure js/src/old-configure mozconfig.* + # needed for thunderbird-l10n + rm -rf $(THUNDERBIRD_L10N_BUILDDIR) + rm -rf $(CARGO_HOME) + rm -rf $(MOZBUILD_STATE_PATH) + +override_dh_auto_configure: + # run autoconf for all configure files + if [ "Z$(DEB_AUTO_UPDATE_AUTOCONF)" != Z ] || [ ! -e $(CURDIR)/configure ]; then \ + cd $(CURDIR) && `which autoconf$(DEB_AUTO_UPDATE_AUTOCONF) || which autoconf`; fi + if [ "Z$(DEB_AUTO_UPDATE_AUTOCONF)" != Z ] || [ ! -e $(CURDIR)/js/src/configure ]; then \ + cd $(CURDIR)/js/src && `which autoconf$(DEB_AUTO_UPDATE_AUTOCONF) || which autoconf`; fi + # copy the mozconfig files + cp debian/mozconfig.* . + # Disable debug symbols when building on 32-bits machines, because + # a) the rust compiler can't deal with it in the available address + # space, and b) the linker can't deal with it in the available address + # space either. +ifeq (32,$(DEB_BUILD_ARCH_BITS)) + echo 'ac_add_options --disable-debug-symbols' >> mozconfig.default +endif + echo 'mk_add_options MOZ_OBJDIR=$(CURDIR)/obj-thunderbird' >> mozconfig.thunderbird + echo 'ac_add_options --prefix=$(CURDIR)/debian/tmp/usr' >> mozconfig.default + # configure the various build settings for thunderbird + DIST= python3 ./mach -v configure + +# Ignore autoreconf, there is nothing that could be reconfigured. It's all +# newly generated right before debhelper would call that target. +override_dh_autoreconf: + +override_dh_auto_build: + # building the stuff + dh_auto_build --builddirectory=obj-thunderbird + # build thunderbird-l10n + mkdir -p $(THUNDERBIRD_L10N_BUILDDIR) + cd $(CURDIR)/thunderbird-l10n ;\ + for XPI in *; do \ + locale=`basename $${XPI}` ;\ + USED_LANGPACK_ID=`grep langpack- $${XPI}/manifest.json | tr '"' ' ' | awk '{print $$3}' | cut -f2-3 -d @` ;\ + if [ "$${USED_LANGPACK_ID}" != "$${MOZ_LANGPACK_ID}" ]; then \ + echo "MOZ_LANGPACK_ID mismatch! '$${USED_LANGPACK_ID}' != '$${MOZ_LANGPACK_ID}'" ;\ + echo "thunderbird-l10n l10n source '$${XPI}' uses a different MOZ_LANGPACK_ID than defined in $(CURDIR)/comm/mail/locales/Makefile.in!";\ + exit 1 ;\ + else \ + $(CURDIR)/debian/xpi-pack.sh $${XPI} ../$(THUNDERBIRD_L10N_BUILDDIR)/langpack-$${locale}@$${MOZ_LANGPACK_ID}.xpi ;\ + fi \ + done + +override_dh_auto_install: +ifneq (,$(filter mips,$(DEB_BUILD_ARCH))) + sed -i '/"javascript.options.\(baselinejit\|ion\)"/s/true/false/' obj-thunderbird/dist/bin/greprefs.js +endif + # install thunderbird into temp install folder + python3 ./mach -v install + # install, symlinking thunderbird-l10n packages + cd $(CURDIR)/thunderbird-l10n ;\ + for LANG in *; do \ + locale=`basename $${LANG}` ;\ + lowercase_locale=`echo $${locale} | tr 'A-Z' 'a-z'` ;\ + echo "preparing and working on 'thunderbird-l10n-$${lowercase_locale} (langpack-$${locale}@$${MOZ_LANGPACK_ID}.xpi)" ;\ + mkdir -p $(CURDIR)/debian/thunderbird-l10n-$${lowercase_locale}/usr/lib/thunderbird/extensions/ ;\ + install -D -m 644 ../$(THUNDERBIRD_L10N_BUILDDIR)/langpack-$${locale}@$${MOZ_LANGPACK_ID}.xpi $(CURDIR)/debian/thunderbird-l10n-$${lowercase_locale}/usr/lib/thunderbird/extensions/langpack-$${locale}@$${MOZ_LANGPACK_ID}.xpi ;\ + done + dh_bash-completion + +override_dh_install-arch: + dh_install + # apparmor profile installed by dh_install + dh_apparmor --profile-name=usr.bin.thunderbird -pthunderbird + +override_dh_install-indep: + dh_install + # remove executable rights on *.js, *.png, *.xul files + find debian/thunderbird-l10n*/ -type f \( -name "*.dtd" -o -name "*.js" -o -name "*.png" -o -name "*.properties" -o -name "*.xul" \) -exec chmod 644 {} \; + +override_dh_strip: + if [ "$(RELEASE)" != "UNRELEASED" ]; then \ + dh_strip --automatic-dbgsym ;\ + else \ + dh_strip --no-automatic-dbgsym ;\ + fi + +override_dh_shlibdeps: + dh_shlibdeps -a -l $(CURDIR)/debian/tmp/usr/lib/thunderbird -- -xlibgtk2.0-0 + +override_dh_builddeb: + # just build all packages if there is no 'UNRELEASED' within the changelog + # found, otherwise skip the thunderbird-dbgsym package, it isn't there + if [ "$(RELEASE)" != "UNRELEASED" ]; then \ + dh_builddeb ;\ + else \ + dh_builddeb -pthunderbird ;\ + dh_builddeb -plightning ;\ + for package in `grep -e \ + 'Package: thunderbird-l10n\|Package: lightning-l10n' debian/control | awk '{print $$2;}'`; do \ + dh_builddeb -p$$package ;\ + done ;\ + sed -i '/thunderbird-dbgsym/d' debian/files ;\ + fi + +override_dh_missing: + dh_missing -X usr/bin/thunderbird \ + -X usr/lib/thunderbird/Throbber-small.gif \ + -X usr/lib/thunderbird/crashreporter \ + -X usr/lib/thunderbird/minidump-analyzer \ + -X usr/lib/thunderbird/pingsender + +override_dh_dwz: + # Don't use dwz for now, it fails with: + # dwz: debian/thunderbird/usr/lib/thunderbird/libldap60.so: Found compressed .debug_info section, not attempting dwz compression + # dwz: debian/thunderbird/usr/lib/thunderbird/libldif60.so: Found compressed .debug_info section, not attempting dwz compression + # ... + # dwz: debian/thunderbird/usr/lib/thunderbird/thunderbird-bin: Found compressed .debug_info section, not attempting dwz compression + # dwz: Too few files for multifile optimization + +.PHONY: build diff --git a/source.filter b/source.filter new file mode 100644 index 0000000000..4afdc8a5ee --- /dev/null +++ b/source.filter @@ -0,0 +1,428 @@ +# Lines that are commented out are files that are needed later while building. +# Don't remove those files! +*/__pycache__ +browser/app/profile/firefox.js +browser/base/content/test/general/browser_bug477014.js +browser/base/content/test/general/browser_contentAreaClick.js +browser/base/content/test/general/browser_tabkeynavigation.js +# browser/base/content/test/urlbar/browser_action_searchengine_alias.js +browser/components/enterprisepolicies/tests/browser/browser_policy_block_set_desktop_background.js +browser/components/enterprisepolicies/tests/browser/browser_policy_bookmarks.js +browser/components/extensions/test/browser/browser_ext_contextMenus_icons.js +# browser/components/extensions/test/browser/browser_ext_themes_icons.js +browser/components/migration/tests/unit/test_IE7_passwords.js +browser/components/translation/cld2/cld-worker.js +browser/components/translation/test/unit/test_cld2.js +browser/extensions/formautofill/content/*.js +build/pgo/blueprint/sample.html +build/pgo/blueprint/valid.png +build/pgo/js-input/sunspider/string-tagcloud.html +build/pgo/js-input/sunspider/string-unpack-code.html +# comm/editor/ui/texzilla/content/TeXZilla.js +# comm/im/themes/messages/bubbles/Footer.html +# comm/mail/app/profile/all-thunderbird.js +# comm/mail/components/compose/content/cloudAttachmentLinkManager.js +# comm/mail/components/im/messages/bubbles/Footer.html +# comm/mail/test/resources/mozmill/docs/_build/html/_static/jquery.js +# comm/mail/test/resources/mozmill/mozmill/extension/content/editor/bespin/BespinEmbedded.js +# comm/mail/test/resources/mozmill/mozmill/extension/content/editor/bespin/BespinMain.js +# comm/mail/test/resources/mozmill/mozmill/extension/content/editor/bespin/BespinWorker.js +comm/mailnews/addrbook/test/unit/test_nsIAbCard.js +comm/mailnews/base/test/unit/test_compactColumnSave.js +comm/other-licenses/7zstub +comm/third_party/rnp/src/tests/* +configure +# devtools/client/debugger/new/debugger.js +# devtools/client/debugger/new/parser-worker.js +# devtools/client/debugger/new/pretty-print-worker.js +# devtools/client/debugger/new/search-worker.js +# devtools/client/debugger/new/test/mochitest/examples/sourcemaps-reload/v1.bundle.js +# devtools/client/debugger/new/test/mochitest/examples/sourcemaps-reload/v2.bundle.js +# devtools/client/debugger/new/test/mochitest/examples/sourcemaps3/bundle.js +# devtools/client/inspector/markup/test/browser_markup_image_tooltip_mutations.js +devtools/client/inspector/markup/test/lib_react_dom_15.4.1.js +devtools/client/inspector/markup/test/lib_react_with_addons_15.4.1.js +# devtools/client/inspector/shared/test/browser_styleinspector_tooltip-background-image.js +# devtools/client/inspector/shared/test/browser_styleinspector_tooltip-multiple-background-images.js +# devtools/client/netmonitor/test/head.js +# devtools/client/shared/demangle.js +# devtools/client/shared/source-map/assets/ +# devtools/client/shared/source-map/index.js +# devtools/client/shared/source-map/worker.js +# devtools/client/shared/test +# devtools/client/shared/vendor/WasmParser.js +# devtools/client/shared/vendor/dagre-d3.js +# devtools/client/shared/vendor/jszip.js +devtools/client/shared/vendor/react-dom-dev.js +devtools/client/shared/vendor/react-dom-server-dev.js +# devtools/client/shared/vendor/react-dom-server.js +# devtools/client/shared/vendor/react-dom.js +# devtools/client/shared/vendor/react-prop-types-dev.js +# devtools/client/shared/vendor/react-prop-types.js +# devtools/client/shared/vendor/react-redux.js +# devtools/client/shared/vendor/react-test-renderer-shallow.js +# devtools/client/shared/vendor/redux.js +# devtools/client/sourceeditor/codemirror/codemirror.bundle.js +# devtools/client/sourceeditor/codemirror/lib/codemirror.js +# devtools/client/sourceeditor/tern/ecma5.js +# devtools/server/actors/utils/automation-timeline.js +# devtools/server/tests/unit/babel_and_browserify_script_with_source_map.js +# devtools/server/tests/unit/test_sourcemaps-09.js +# devtools/shared/acorn/acorn.js +# devtools/shared/acorn/acorn_loose.js +# devtools/shared/acorn/walk.js +# devtools/shared/sourcemap/tests/unit/test_source_node.js +dom/base/crashtests/561981-1-iframe.xhtml +dom/base/crashtests/827190.html +dom/base/crashtests/849727.html +dom/base/crashtests/xhr_html_nullresponse.html +dom/base/test/reftest/test_bug920877.html +dom/base/test/test_bug650776.html +dom/base/test/test_data_uri.html +# dom/canvas/test/crash/test_createImageBitmap-video.html +# dom/canvas/test/test_canvas.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/attrib-location-length-limits.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/shader-with-1024-character-define.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/shader-with-1024-character-identifier.frag.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/shader-with-1025-character-define.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/shader-with-1025-character-identifier.frag.html +dom/canvas/test/webgl-conf/checkout/conformance2/glsl3/uniform-location-length-limits.html +dom/canvas/test/webgl-conf/checkout/conformance/glsl/misc/glsl-long-variable-names.html +dom/canvas/test/webgl-conf/checkout/deqp/deqp-deps.js +dom/canvas/test/webgl-conf/checkout/deqp/framework/referencerenderer/rrFragmentOperations.js +dom/canvas/test/webgl-conf/checkout/deqp/functional/gles3/es3fDefaultVertexAttributeTests.js +# dom/encoding/test/test_BOMEncoding.js +# dom/encoding/test/test_TextDecoder.js +# dom/encoding/test/unit/test_big5.js +# dom/encoding/test/unit/test_euc-jp.js +# dom/encoding/test/unit/test_euc-kr.js +# dom/encoding/test/unit/test_gbk.js +# dom/encoding/test/unit/test_iso-2022-jp.js +# dom/encoding/test/unit/test_misc.js +# dom/encoding/test/unit/test_shift_jis.js +dom/html/reftests/toblob-todataurl/sample.js +dom/html/test/bug445004-outer-write.html +# dom/html/test/test_bug582412-2.html +# dom/html/test/test_iframe_sandbox_general.html +# dom/imptests/html/js/builtins/Math.maxmin.js +# dom/indexedDB/test/test_filehandle_write_read_data.html +# dom/indexedDB/test/unit/test_filehandle_append_read_data.js +# dom/indexedDB/test/unit/test_filehandle_append_read_data.js +# dom/indexedDB/test/unit/test_snappyUpgrade.js +# dom/json/test/unit/test_decode_long_input.js +# dom/media/test/test_decoder_disable.html +dom/media/tests/crashtests/1367930_1.html +dom/media/tests/crashtests/1367930_2.html +dom/media/tests/crashtests/855796.html +dom/media/tests/crashtests/863929.html +# dom/push/test/xpcshell/test_crypto.js +dom/security/test/general/test_allow_opening_data_pdf.html +dom/tests/mochitest/localstorage/frameQuota.html +dom/tests/mochitest/localstorage/frameQuotaSessionOnly.html +editor/libeditor/tests/browserscope/lib/richtext/richtext/js/range.js +# editor/libeditor/tests/test_bug520189.html +# editor/libeditor/tests/test_inline_style_cache.html +gfx/angle/checkout/src/libEGL/*.rc +gfx/angle/checkout/src/libEGL/resource.h +gfx/angle/checkout/src/libGLESv2/libGLESv2.rc +gfx/angle/checkout/src/libGLESv2/resource.h +gradle/wrapper/gradle-wrapper.jar +# image/test/reftest/pngsuite-transparency +image/test/reftest/reftest.list /pngsuite-transparency/d +# image/test/unit/test_async_notification_animated.js +# image/test/unit/test_moz_icon_uri.js +intl/uconv/tests/test_long_doc.html +intl/uconv/tests/unit +js/src/configure +js/src/devtools/rootAnalysis/annotations.js +js/src/jit-test/lib/bullet.js +js/src/jit-test/lib/mandelbrot-results.js +js/src/jit-test/tests +js/src/octane/box2d.js +js/src/octane/pdfjs.js +js/src/octane/regexp.js +js/src/octane/typescript-input.js +js/src/old-configure +js/src/tests/non262/jit/regress-452498-01.js +js/src/tests/non262/RegExp/regress-209067.js +js/src/tests/non262/RegExp/regress-307456.js +js/src/tests/non262/regress/regress-243174.js +js/src/tests/non262/regress/regress-274888.js +js/src/tests/non262/regress/regress-280769.js +js/src/tests/non262/regress/regress-311629.js +js/src/tests/test262/built-ins/Array/prototype/reverse/S15.4.4.8_A2_T1.js +js/src/tests/test262/built-ins/Array/prototype/reverse/S15.4.4.8_A2_T2.js +js/src/tests/test262/built-ins/Array/prototype/reverse/S15.4.4.8_A2_T3.js +js/src/tests/test262/built-ins/encodeURIComponent/S15.1.3.4_A4_T2.js +js/src/tests/test262/built-ins/RegExp/prototype/exec/S15.10.6.2_A4_T12.js +js/src/tests/test262/built-ins/String/prototype/charAt/S15.5.4.4_A1_T1.js +js/src/tests/test262/built-ins/String/prototype/charAt/S15.5.4.4_A1_T2.js +js/src/tests/test262/built-ins/String/prototype/charCodeAt/S15.5.4.5_A1_T1.js +js/src/tests/test262/built-ins/String/prototype/concat/S15.5.4.6_A1_T10.js +js/src/tests/test262/built-ins/String/prototype/constructor/S15.5.4.1_A1_T2.js +js/src/tests/test262/built-ins/String/S15.5.5.1_A5.js +js/src/tests/test262/language/expressions/delete/S8.12.7_A3.js +js/src/tests/test262/language/expressions/exponentiation/bigint-arithmetic.js +js/src/tests/test262/language/types/string/S8.4_A6.1.js +js/src/tests/test262/language/types/string/S8.4_A6.2.js +layout/base/crashtests/378325-1.html +# layout/base/tests/test_scroll_snapping.html +layout/docs +layout/generic/crashtests/simple_blank.swf +layout/generic/crashtests/text-overflow-form-elements.html +layout/mathml/tests/stretchy-and-large-operators.js +layout/reftests/bugs/256180-6.html +layout/reftests/bugs/424465-1.html +layout/reftests/font-loading-api/src-list-data-1.html +layout/reftests/svg/nesting-invalid-01.js +layout/style/crashtests/404470-1.html +layout/style/test/test_shorthand_property_getters.html +layout/tools/reftest/reftest-analyzer-structured.xhtml +layout/tools/reftest/reftest-analyzer.xhtml +mobile/android/components/extensions/test/mochitest/head.js +# modules/libpref/init/all.js +modules/freetype2/docs +netwerk/test/crashtests/785753-1.html +netwerk/test/unit/data/signed_win.exe +netwerk/test/unit/test_readline.js +*old-configure +*.orig +other-licenses/7zstub/* +# other-licenses/7zstub/firefox/7zSD.sfx +other-licenses/nsis/Contrib/ApplicationID/ApplicationID.rc +other-licenses/nsis/Contrib/ApplicationID/resource.h +other-licenses/nsis/Contrib/ServicesHelper/resource.h +other-licenses/nsis/Contrib/ServicesHelper/ServicesHelper.rc +other-licenses/nsis/nsisui.exe +other-licenses/nsis/Plugins +parser/html/java/named-character-references.html +parser/xml/test +*.pyc +*.rej +# services/common/kinto-http-client.js +# services/common/kinto-offline-client.js +# testing/marionette/atom.js +# testing/marionette/harness/marionette_harness/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/jquery.js +# testing/marionette/harness/marionette_harness/runner/mixins/browsermob-proxy-py/docs/_build/html/_static/underscore.js +testing/mochitest/browser-test.js +testing/modules/sinon-7.2.7.js +testing/talos/talos/startup_test/sessionrestore/profile-manywindows/sessionstore.js +testing/talos/talos/startup_test/sessionrestore/profile/sessionstore.js +testing/talos/talos/tests/devtools/addon/content/pages/custom/debugger/static/js/main.js +testing/talos/talos/tests/dromaeo/lib/ext-base.js +testing/talos/talos/tests/dromaeo/lib/ext-core.js +testing/talos/talos/tests/dromaeo/tests/sunspider-string-tagcloud.html +testing/talos/talos/tests/dromaeo/tests/sunspider-string-unpack-code.html +testing/talos/talos/tests/dromaeo/webrunner.js +testing/talos/talos/tests/v8_7/regexp.js +testing/web-platform/meta/css/css-backgrounds/#inheritance.sub.html.ini# +testing/web-platform/tests/IndexedDB/keypath_maxsize.htm +testing/web-platform/tests/WebCryptoAPI/derive_bits_keys/ecdh_bits.js +testing/web-platform/tests/WebCryptoAPI/derive_bits_keys/ecdh_keys.js +testing/web-platform/tests/WebCryptoAPI/encrypt_decrypt/aes_ctr_vectors.js +testing/web-platform/tests/WebCryptoAPI/encrypt_decrypt/rsa_vectors.js +testing/web-platform/tests/WebCryptoAPI/sign_verify/ecdsa_vectors.js +testing/web-platform/tests/WebCryptoAPI/sign_verify/hmac_vectors.js +testing/web-platform/tests/WebCryptoAPI/sign_verify/rsa_pkcs_vectors.js +testing/web-platform/tests/WebCryptoAPI/sign_verify/rsa_pss_vectors.js +testing/web-platform/tests/acid/acid3/test.html +testing/web-platform/tests/common/performance-timeline-utils.js +testing/web-platform/tests/conformance-checkers/html/elements/table/integrity/Naser_al-Din_Shah_Qajar-novalid.html +testing/web-platform/tests/content-security-policy/support/media/flash.swf +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-001.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-002.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-003.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-004.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-005.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-006.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-007.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-008.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-009.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-010.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-011.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-012.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-013.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-014.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-015.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-016.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-017.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-018.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-019.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-020.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-021.xht +testing/web-platform/tests/css/CSS2/text/text-transform-bicameral-022.xht +testing/web-platform/tests/editing/data/indent.js +testing/web-platform/tests/encoding/legacy-mb-japanese/euc-jp/jis0208_index.js +testing/web-platform/tests/encoding/legacy-mb-japanese/euc-jp/jis0212_index.js +testing/web-platform/tests/encoding/legacy-mb-japanese/iso-2022-jp/jis0208_index.js +testing/web-platform/tests/encoding/legacy-mb-japanese/shift_jis/jis0208_index.js +testing/web-platform/tests/encoding/legacy-mb-korean/euc-kr/euckr_index.js +testing/web-platform/tests/encoding/legacy-mb-tchinese/big5/big5_index.js +testing/web-platform/tests/encrypted-media/content/content-metadata.js +testing/web-platform/tests/encrypted-media/util/drm-messagehandler.js +testing/web-platform/tests/html/editing/dnd/datastore/001.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/002.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/003.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/004.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/005.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/006.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/007.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/008.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/009-1.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/009.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/010.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/011.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/012.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/013-1.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/014-1.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/016.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/017.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/018.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/019.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/020.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/021.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/022.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/023.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/024.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/025.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/026.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/027.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/028.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/029.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/030.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/031.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/032.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/033.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/034.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/035.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/036.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/037.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/038.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/039.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/040.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/041.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/042.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/043.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/044.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/045.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/046.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/047.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/048.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/049.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/050.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/051.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/052.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/056.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/057.xhtml +testing/web-platform/tests/html/editing/dnd/datastore/helper-drop-box-here.xhtml +testing/web-platform/tests/html/editing/dnd/resources/boxnavy.swf +testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm +testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html +testing/web-platform/tests/html/semantics/forms/the-form-element/form-autocomplete.html +testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/075.html +testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/094.html +testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/101.html +testing/web-platform/tests/html/semantics/scripting-1/the-script-element/execution-timing/102.html +testing/web-platform/tests/html/syntax/parsing/html5lib_adoption01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_adoption02.html +testing/web-platform/tests/html/syntax/parsing/html5lib_comments01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_doctype01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_domjs-unsafe.html +testing/web-platform/tests/html/syntax/parsing/html5lib_entities01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_entities02.html +testing/web-platform/tests/html/syntax/parsing/html5lib_html5test-com.html +testing/web-platform/tests/html/syntax/parsing/html5lib_inbody01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_foreign-fragment.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_math.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_tests4.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_tests6.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_tests_innerHTML_1.html +testing/web-platform/tests/html/syntax/parsing/html5lib_innerHTML_webkit02.html +testing/web-platform/tests/html/syntax/parsing/html5lib_isindex.html +testing/web-platform/tests/html/syntax/parsing/html5lib_main-element.html +testing/web-platform/tests/html/syntax/parsing/html5lib_menuitem-element.html +testing/web-platform/tests/html/syntax/parsing/html5lib_namespace-sensitivity.html +testing/web-platform/tests/html/syntax/parsing/html5lib_pending-spec-changes.html +testing/web-platform/tests/html/syntax/parsing/html5lib_plain-text-unsafe.html +testing/web-platform/tests/html/syntax/parsing/html5lib_ruby.html +testing/web-platform/tests/html/syntax/parsing/html5lib_scriptdata01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_scripted_adoption01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_scripted_ark.html +testing/web-platform/tests/html/syntax/parsing/html5lib_scripted_webkit01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tables01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_template.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests1.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests10.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests11.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests12.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests14.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests15.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests16.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests17.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests18.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests19.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests2.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests20.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests21.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests22.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests23.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests24.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests25.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests26.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests3.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests5.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests6.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests7.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests8.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tests9.html +testing/web-platform/tests/html/syntax/parsing/html5lib_tricky01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_webkit01.html +testing/web-platform/tests/html/syntax/parsing/html5lib_webkit02.html +testing/web-platform/tests/navigation-timing/resources/webperftestharness.js +testing/web-platform/tests/pointerevents/pointerevent_support.js +testing/web-platform/tests/resource-timing/resources/webperftestharness.js +testing/web-platform/tests/tools/third_party/packaging/tests/manylinux +testing/web-platform/tests/user-timing/resources/webperftestharness.js +testing/web-platform/tests/workers/constructors/Worker/unexpected-self-properties.worker.js +testing/xpcshell/moz-http2/moz-http2.js +testing/xpcshell/node-http2/test/compressor.js +third_party/python/gyp/test/win/rc-build/Resource.h +third_party/python/gyp/test/win/rc-build/*.rc +third_party/python/gyp/test/win/rc-build/subdir/hello2.rc +third_party/python/pip/pip/_vendor/distlib/*.exe +third_party/python/setuptools/setuptools/*.exe +third_party/python/virtualenv/__virtualenv__/distlib-0.3.2-py2.py3-none-any/*/*.exe +# third_party/rust/libloading* +# third_party/rust/pkcs11/NOTICE +third_party/rust/winapi-*-pc-windows-gnu/lib/*.a +third_party/webkit/PerformanceTests/ARES-6/* +third_party/webkit/PerformanceTests/MotionMark/resources/debug-runner/d3.min.js +third_party/webkit/PerformanceTests/Speedometer/resources/todomvc +third_party/webkit/PerformanceTests/wasm-godot/godot.wasm +toolkit/components/formautofill/addressmetadata/*.js +toolkit/components/maintenanceservice/maintenanceservice.rc +toolkit/components/maintenanceservice/resource.h +toolkit/components/mediasniffer/test/unit/data/*.exe +toolkit/components/normandy/vendor/*.js +# toolkit/components/passwordmgr/test/unit/test_OSCrypto_win.js +toolkit/components/places/tests/favicons/test_moz-anno_favicon_mime_type.js +toolkit/components/places/tests/unit/test_bookmarks_html.js +toolkit/components/places/tests/unit/test_bookmarks_json.js +# toolkit/components/prompts/test/test_bug619644.html +toolkit/components/reputationservice/test/unit/data/*.exe +# toolkit/components/search/tests/xpcshell/test_json_cache.js +# toolkit/components/telemetry/tests/marionette +toolkit/components/telemetry/tests/unit/*.dll +toolkit/components/url-classifier/tests/unit/test_hashcompleter_v4.js +toolkit/content/tests/browser/browser_default_image_filename.js +toolkit/crashreporter/client/crashreporter.rc +toolkit/crashreporter/client/resource.h +toolkit/crashreporter/google-breakpad/src/tools/solaris/dump_syms/testdata/dump_syms_regtest.o +toolkit/crashreporter/google-breakpad/src/tools/windows/binaries +toolkit/crashreporter/test/unit/*.exe +toolkit/mozapps/update/tests/data/*.exe +toolkit/mozapps/update/updater/macbuild/Contents/PkgInfo +toolkit/mozapps/update/updater/macbuild/Contents/Resources/English.lproj/MainMenu.nib/keyedobjects.nib +toolkit/mozapps/update/updater/resource.h +toolkit/mozapps/update/updater/updater.rc +# widget/windows/* diff --git a/source/format b/source/format new file mode 100644 index 0000000000..163aaf8d82 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/include-binaries b/source/include-binaries new file mode 100644 index 0000000000..29271e72a4 --- /dev/null +++ b/source/include-binaries @@ -0,0 +1,18 @@ +debian/logo/thunderbird/pre60/mailicon256.png +debian/logo/thunderbird/pre60/mailicon48.png +debian/logo/thunderbird/pre60/mailicon512.png +debian/logo/thunderbird/pre60/mailicon128.png +debian/logo/thunderbird/pre60/mailicon22.png +debian/logo/thunderbird/pre60/mailicon32.png +debian/logo/thunderbird/pre60/mailicon24.png +debian/logo/thunderbird/pre60/mailicon64.png +debian/logo/thunderbird/pre60/mailicon16.png +debian/logo/thunderbird/mailicon48.png +debian/logo/thunderbird/mailicon22.png +debian/logo/thunderbird/mailicon32.png +debian/logo/thunderbird/mailicon64.png +debian/logo/thunderbird/mailicon16.png +debian/logo/thunderbird/mailicon24.png +debian/logo/thunderbird/mailicon128.png +debian/logo/thunderbird/mailicon256.png +debian/logo/thunderbird/mailicon512.png diff --git a/source/lintian-overrides b/source/lintian-overrides new file mode 100644 index 0000000000..832ee0b319 --- /dev/null +++ b/source/lintian-overrides @@ -0,0 +1,37 @@ +# ignoring files within the test cases +source: source-is-missing [devtools/*] +source: source-is-missing [*/tests/*] +source: source-is-missing [*/test/*] + +# TexZilla isn't packaged yet too +source: source-is-missing [comm/suite/editor/components/texzilla/content/TeXZilla.js] + +# files are under MPL-2 license with some long lines +source: source-is-missing [comm/mail/components/compose/content/cloudAttachmentLinkManager.js] + +# needed by TB, some various long lines +source: source-is-missing [*/crashtests/*] +source: source-is-missing [browser/base/content/default-bookmarks.html] +source: source-is-missing [browser/components/newtab/data/content/activity-stream.bundle.js] +source: source-is-missing [browser/components/newtab/vendor/*.js] +source: source-is-missing [browser/components/pocket/content/panels/js/*] +source: source-is-missing [browser/components/pocket/content/pktUI.js] +source: source-is-missing [browser/extensions/screenshots/build/*.js] +source: source-is-missing [browser/tools/mozscreenshots/mozscreenshots/extension/lib/mozscreenshots.html] +source: source-is-missing [comm/chat/protocols/matrix/lib/*] +source: source-is-missing [comm/mail/components/compose/texzilla/TeXZilla.js] +source: source-is-missing [gfx/wr/wrench/script/reftest-analyzer.xhtml] +source: source-is-missing [js/src/devtools/rootAnalysis/computeGCTypes.js] +source: source-is-missing [js/src/octane/*.js] +source: source-is-missing [layout/reftests/*] +source: source-is-missing [modules/libpref/init/all.js] +source: source-is-missing [remote/marionette/atom.js] +source: source-is-missing [security/nss/doc/html/*.html] +source: source-is-missing [services/common/kinto-http-client.js] +source: source-is-missing [third_party/js/cfworker/json-schema.js] +source: source-is-missing [third_party/js/d3/d3.js] +source: source-is-missing [third_party/webkit/PerformanceTests/*] +source: source-is-missing [toolkit/components/certviewer/content/vendor/*] +source: source-is-missing [toolkit/components/pdfjs/content/build/pdf.js] +source: source-is-missing [toolkit/components/pdfjs/content/build/pdf.worker.js] +source: source-is-missing [toolkit/components/utils/mozjexl.js] diff --git a/tests/check-global-config-path.py b/tests/check-global-config-path.py new file mode 100755 index 0000000000..3a2ec7c909 --- /dev/null +++ b/tests/check-global-config-path.py @@ -0,0 +1,61 @@ +#!/usr/bin/python3 + +# Copyright 2021, Carsten Schoenert +# SPDX-License-Identifier: GPL-2.0+ + +# Simple check if the thunderbird binary is trying to successfully read any +# content of the folder /usr/lib/thunderbird/defaults/syspref which is a +# symlink to /etc/thunderbird/pref/ even if the folder is empty. +# +# Purpose if this check is to ensure we don't have disabled the inclusion of +# this folder for Thunderbird by accident as we ship important default settings +# within this folder. + +import subprocess +import sys + +# Set the CLI call we want to inspect. +command = 'strace -e trace=access thunderbird -h' +pattern = '/usr/lib/thunderbird/defaults/syspref' + +# Setup the sub-process object. +proc = subprocess.Popen(command, + shell=True, + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE) + +# Execute the call. +stdout_value,stderr_value = proc.communicate() + +# Once we have a valid response, split the return output. Currently we are not +# (yet) interested on the content for stdout. +if stdout_value: + stdout_value = stdout_value.split() + +# Processing and output the check. +print(f'\nOutput on stderr for command \'{command}\':\n') + +for line in stderr_value.splitlines(): + print(line.decode('utf-8')) +print() + +print('Analysing strace call:') +for line in stderr_value.splitlines(): + if f'{pattern}' in line.decode('utf-8'): + print(f'\tPattern for accessing \"{pattern}\" found.') + print('\t\t' + '---> ' + line.decode('utf-8')) + if '0' in line.decode('utf-8').split('=')[1].lstrip(): + print(f'\tAccess to folder/symlink \'{pattern}\' marked as successful (found F_OK = 0)') + print('\tCheck SUCCESSFUL!\n') + sys.exit(0) + + else: + print(f'\tFailed to access to folder/symlink \'{pattern}\'!!!') + print('\tCheck FAILED!\n') + sys.exit(1) + +# If we going until here we need to fix something! :-( +print(f'\tPattern for accessing \"{pattern}\" wasn\'t found!!!') +print('\tCheck FAILED!\n') +sys.exit(1) diff --git a/tests/control b/tests/control new file mode 100644 index 0000000000..47f67f2b93 --- /dev/null +++ b/tests/control @@ -0,0 +1,26 @@ +Tests: help.sh +Architecture: !armel !armhf +Depends: + thunderbird, + xauth, + xvfb, +Restrictions: superficial + +Tests: check-global-config-path.py +Depends: + thunderbird, + strace, +Restrictions: allow-stderr +Architecture: amd64 i386 + +#Tests: xpcshellTest.sh +#Depends: thunderbird-dev + +#Tests: idlTest.sh +#Depends: thunderbird-dev, build-essential + +#Tests: icudatfileTest.sh +#Depends: thunderbird-dev + +#Tests: soSymlinkTest.sh +#Depends: thunderbird-dev diff --git a/tests/help.sh b/tests/help.sh new file mode 100755 index 0000000000..79bf075020 --- /dev/null +++ b/tests/help.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +set -e + +# At least check we can execute the main binary +# to catch missing dependencies +echo -n "Test1: checking help output..." +xvfb-run -a /usr/lib/thunderbird/thunderbird -help >/dev/null +echo "done." + +echo -n "Test2: checking version output..." +xvfb-run -a /usr/lib/thunderbird/thunderbird --version | grep -qs Thunderbird +echo "done." diff --git a/tests/icudatfileTest.sh b/tests/icudatfileTest.sh new file mode 100755 index 0000000000..8e3ec99916 --- /dev/null +++ b/tests/icudatfileTest.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +TESTFILE=$(basename $0 .sh) +ICUDATFILE=$(basename /usr/lib/thunderbird/icud*.dat) + +if [ -f "/usr/lib/thunderbird/${ICUDATFILE}" ]; then + echo "Running tests in ${TESTFILE}" + + echo -n "Test1: Check if /usr/lib/thunderbird/${ICUDATFILE} is linked to /usr/share/thunderbird/${ICUDATFILE}..." + if [ "$(readlink -e "/usr/share/thunderbird/${ICUDATFILE}")" = "/usr/lib/thunderbird/${ICUDATFILE}" ]; then + echo "done" + else + echo "No!" + exit 1 + fi +else + echo "Nothing to be done here." +fi + +echo "All Tests in ${TESTFILE} finished succesfully." diff --git a/tests/idlTest.idl b/tests/idlTest.idl new file mode 100644 index 0000000000..148e5d3a4b --- /dev/null +++ b/tests/idlTest.idl @@ -0,0 +1,10 @@ +// Include a file from thunderbird so we're sure these ended up in the right +// location +#include "nsIMsgIncomingServer.idl" + +[scriptable, uuid(1b9d7057-90f5-4ca5-a379-a59aa47acbd2)] +interface IdlTestIncomingServer : nsIMsgIncomingServer +{ + readonly attribute boolean thisIsATest; +}; + diff --git a/tests/idlTest.sh b/tests/idlTest.sh new file mode 100755 index 0000000000..38657399b7 --- /dev/null +++ b/tests/idlTest.sh @@ -0,0 +1,51 @@ +#!/bin/sh + +set -e + +cleanup() { + [ ! -d "${SCRATCHDIR}" ] || rm -rf "${SCRATCHDIR}" +} + +#trap cleanup EXIT + +SCRATCHDIR=`mktemp -d` +TEST_IDL_FILE="debian/tests/idlTest.idl" +TESTFILE=$(basename $0 .sh) + +echo "Running tests in ${TESTFILE}" + +echo -n "Test1: Make sure we can generate typelibs..." +/usr/lib/thunderbird-devel/sdk/bin/typelib.py \ + -I"/usr/lib/thunderbird-devel/idl" \ + -o "${SCRATCHDIR}/test.xpt" \ + "${TEST_IDL_FILE}" +if [ -f "${SCRATCHDIR}/test.xpt" ]; then + echo "done." +else + echo "No!" + echo "Test call successful but no outputfile '${SCRATCHDIR}/test.xpt' found!" + exit 1 +fi + +echo -n "Test2: Make sure we can generate C++ headers..." +/usr/lib/thunderbird-devel/sdk/bin/header.py \ + -I"/usr/lib/thunderbird-devel/idl" \ + -o "${SCRATCHDIR}/test.h" \ + "${TEST_IDL_FILE}" +if [ -f "${SCRATCHDIR}/test.h" ]; then + echo "done." +else + echo "No!" + echo "Test call successful but no outputfile '${SCRATCHDIR}/test.h' found!" + exit 1 +fi + +echo -n "Test3: Compiling generated file..." +g++ -std=c++11 \ + -I/usr/include/thunderbird \ + -I/usr/include/nspr \ + -o "${SCRATCHDIR}/test.o" \ + "${SCRATCHDIR}/test.h" +echo "done." + +echo "All Tests in ${TESTFILE} finished successfully." diff --git a/tests/soSymlinkTest.sh b/tests/soSymlinkTest.sh new file mode 100755 index 0000000000..972f6289c7 --- /dev/null +++ b/tests/soSymlinkTest.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +FAIL=0 + +echo "Check for symlinked .so files in dev package..." + +for SOFILE in `ls /usr/lib/thunderbird-devel/sdk/lib/*.so`; do + if [ ! -L ${SOFILE} ]; then + echo ${SOFILE} is not a symlink! + FAIL=1 + fi +done + +echo -n "Test result is " +if [ ${FAIL} -eq 0 ]; then + echo "done." +else + echo "FAILED!" + exit 1 +fi diff --git a/tests/xpcshellTest.js b/tests/xpcshellTest.js new file mode 100644 index 0000000000..806b28998a --- /dev/null +++ b/tests/xpcshellTest.js @@ -0,0 +1 @@ +dump("running xpcshell..."); diff --git a/tests/xpcshellTest.sh b/tests/xpcshellTest.sh new file mode 100755 index 0000000000..f924bc13de --- /dev/null +++ b/tests/xpcshellTest.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +set -e + +echo -n "Checking if we can run xpcshell..." + +LD_LIBRARY_PATH=/usr/lib/thunderbird/ \ +/usr/lib/thunderbird-devel/sdk/bin/xpcshell \ + -g /usr/share/thunderbird/ debian/tests/xpcshellTest.js + +echo "done." diff --git a/thunderbird-l10n-all.lintian-overrides b/thunderbird-l10n-all.lintian-overrides new file mode 100644 index 0000000000..3658b09a45 --- /dev/null +++ b/thunderbird-l10n-all.lintian-overrides @@ -0,0 +1,2 @@ +# no, this is metapackage +thunderbird-l10n-all: wrong-section-according-to-package-name thunderbird-l10n-all => localization diff --git a/thunderbird-wrapper-helper.sh b/thunderbird-wrapper-helper.sh new file mode 100644 index 0000000000..e41166cb58 --- /dev/null +++ b/thunderbird-wrapper-helper.sh @@ -0,0 +1,429 @@ +# vim: autoindent tabstop=4 shiftwidth=4 expandtab softtabstop=4 filetype=sh textwidth=76 +# +# File: +# /usr/lib/thunderbird/thunderbird-wrapper-helper.sh +# +# Purpose: +# This shell script has helper functions and variables that are used or +# called from the main wrapper-script /usr/bin/thunderbird. +# +# Copyright: +# Licensed under the terms of GPLv2+. + + +# trying to get the DE +if [ "${XDG_CURRENT_DESKTOP}" = "" ]; then + DESKTOP=$(echo "${XDG_DATA_DIRS}" | sed 's/.*\(gnome\|kde\|mate\|xfce\).*/\1/') +else + DESKTOP=${XDG_CURRENT_DESKTOP} +fi + +# timestamp like '2017-02-26-113855' +DATE=$(date +%F-%H%M%S) + +# convert to lower case shell safe +DESKTOP=$(echo "$DESKTOP" | tr '[:upper:]' '[:lower:]') + +######################################### +# message templates for the X11 dialogs # +######################################### + +DEFAULT_X11_MSG="\ +If you see this message something went wrong while +migrating your Icedove profile(s) into the Thunderbird +profile folder. + +The following error occurred:" + +DOT_THUNDERBIRD_EXISTS="\ +${DEFAULT_X11_MSG} + +An existing profile folder (or symlink) '.thunderbird' and a folder +(or symlink) '.icedove' was found in your home directory '${HOME}/' +while trying to migrate the Icedove profile(s) folder. + +This can be caused by an old, currently unused profile folder or you might +be using Thunderbird as provided by upstream Mozilla. +If you don't need this old profile folder, you can remove or backup +it and start Thunderbird again. + +Sorry, but please investigate the situation yourself. + +The Debian wiki has extra information about the migration from +Icedove to Thunderbird. + + https://wiki.debian.org/Thunderbird + +Please also read the information in section 'Profile Migration' in + + /usr/share/doc/thunderbird/README.Debian.gz +" + +THUNDERBIRD_PROFILE_LINKING_ERROR="\ +${DEFAULT_X11_MSG} + +A needed symlink for the Thunderbird profile(s) folder '.thunderbird' +to the old existing Icedove profile '.icedove' couldn't created. + +Sorry, but please investigate the situation by yourself. + +Please mind also the information in section 'Profile Migration' +given in the file + + /usr/share/doc/thunderbird/README.Debian.gz +" + +START_MIGRATION="\ +You see this window because you're starting Thunderbird for the +first time and have profile(s) for Icedove. +The Debian Icedove package is de-branded back to Thunderbird. + +The Icedove profile(s) will now be migrated to the Thunderbird folder. +This will take a short time! + +Please be patient, the Thunderbird program will be started right after +the changes. + +If you need more information on the de-branding and migration please +read + + /usr/share/doc/thunderbird/README.Debian.gz + +The Debian wiki is also holding extra information about the migration of +Icedove to Thunderbird. + + https://wiki.debian.org/Thunderbird +" + +TITLE="Icedove to Thunderbird Profile migration" + +################### +# local functions # +################### + +# Simple search all files where we made a backup from +do_collect_backup_files () { +output_debug "Collecting all files we've made a backup of." +BACKUP_FILES=$(find -L "${TB_PROFILE_FOLDER}/" -type f -name "*backup_thunderbird_migration*") +if [ "${BACKUP_FILES}" != "" ]; then + output_info "The following backups related to the Icedove to Thunderbird transition exist:" + output_info "" + cat << EOF +${BACKUP_FILES} +EOF + output_info "" +else + output_info "No backups related to the Icedove to Thunderbird transition found." +fi +} + +# Create the file .thunderbird/.migrated with some content +do_create_migrated_mark_file (){ +cat < "${TB_PROFILE_FOLDER}/.migrated" +This file is automatically created by /usr/bin/thunderbird, it will be +created on every start of Thunderbird if does not exist. +Remove that file only if you know the propose of this file. + +/usr/share/doc/thunderbird/README.Debian.gz has some information about this +dot file. +EOF +} + +# Fix the file(s) ${TB_PROFILE_FOLDER}/${TB_PROFILE}/mimeTypes.rdf +# Search for pattern of '/usr/bin/iceweasel' and 'icedove' in the file and +# replace them with '/usr/bin/x-www-browser' and 'thunderbird'. +do_fix_mimetypes_rdf (){ +for MIME_TYPES_RDF_FILE in $(find -L "${TB_PROFILE_FOLDER}/" -name mimeTypes.rdf); do + RDF_SEARCH_PATTERN=$(grep '/usr/bin/iceweasel\|icedove' "${MIME_TYPES_RDF_FILE}") + if [ "${RDF_SEARCH_PATTERN}" != "" ]; then + output_debug "Backup ${MIME_TYPES_RDF_FILE} to ${MIME_TYPES_RDF_FILE}.backup_thunderbird_migration-${DATE}" + cp "${MIME_TYPES_RDF_FILE}" "${MIME_TYPES_RDF_FILE}.backup_thunderbird_migration-${DATE}" + + output_debug "Fixing possible broken 'mimeTypes.rdf'." + sed -i "s|/usr/bin/iceweasel|/usr/bin/x-www-browser|g;s|icedove|thunderbird|g" "${MIME_TYPES_RDF_FILE}" + else + output_info "No fix up for ${MIME_TYPES_RDF_FILE} needed." + fi +done +} + +# Inform the user we will starting the migration +do_inform_migration_start () { +# A system admin may avoid the dialog ... +if [ ! -f /etc/thunderbird/no_migration_popup ]; then + case "${DESKTOP}" in + gnome|mate|xfce) + local_zenity --info --no-wrap --title "${TITLE}" --text "${START_MIGRATION}" + if [ $? -ne 0 ]; then + local_xmessage -center "${START_MIGRATION}" + fi + ;; + + kde) + local_kdialog --title "${TITLE}" --msgbox "${START_MIGRATION}" + if [ $? -ne 0 ]; then + local_xmessage -center "${START_MIGRATION}" + fi + ;; + + *) + xmessage -center "${START_MIGRATION}" + ;; + esac +fi +} + +# Function that will do the fixing of mimeapps.list files +do_migrate_old_icedove_desktop() { +# Fix mimeapps.list files in the following folders which may still have +# icedove.desktop associations +# +# ~/.config/ +# ~/.local/share/applications/ +# +# icedove.desktop files are now deprecated, but still commonly around. +# We normally could remove them, but for safety only modify the files. +# These mimeapps.list files configures default applications for MIME types. + +# Only jump in loop if we haven't already done a migration before or the +# user is forcing this by the option '--fixmime'. +if [ ! -f "${TB_PROFILE_FOLDER}/.migrated" ] || [ "${FORCE_MIMEAPPS_MIGRATE}" = "1" ]; then + if [ ! -f "${TB_PROFILE_FOLDER}/.migrated" ]; then + output_debug "No migration mark '${TB_PROFILE_FOLDER}/.migrated' found, checking mimeapps.list files for possible migration." + elif [ "${FORCE_MIMEAPPS_MIGRATE}" = "1" ]; then + output_debug "Migration enforced by user. Checking mimeapps.list files once again for possible migration." + fi + for MIMEAPPS_LIST in ${HOME}/.config/mimeapps.list ${HOME}/.local/share/applications/mimeapps.list; do + # Check if file exists and has old icedove entry + if [ -e "${MIMEAPPS_LIST}" ] && \ + grep -iq "\(userapp-\)*icedove\(-.*\)*\.desktop" "${MIMEAPPS_LIST}"; then + + output_debug "Fixing broken '${MIMEAPPS_LIST}'." + MIMEAPPS_LIST_COPY="${MIMEAPPS_LIST}.backup_thunderbird_migration-${DATE}" + + # Fix mimeapps.list and create a backup, but it's really unlikely we + # have an existing backup so no further checking here! + # (requires GNU sed 3.02 or ssed for case-insensitive "I") + sed -i.backup_thunderbird_migration-"${DATE}" "s|\(userapp-\)*icedove\(-.*\)*\.desktop|thunderbird.desktop|gI" "${MIMEAPPS_LIST}" + if [ $? -ne 0 ]; then + output_info "The configuration file for default applications for some MIME types" + output_info "'${MIMEAPPS_LIST}' couldn't be fixed." + output_info "Please check for potential problems like low disk space or wrong access rights!" + logger -i -p warning -s "$0: [profile migration] Couldn't fix '${MIMEAPPS_LIST}'!" + exit 1 + else + output_debug "A copy of the configuration file of default applications for some MIME types" + output_debug "was saved to '${MIMEAPPS_LIST_COPY}'." + fi + else + output_info "No fix up for ${MIMEAPPS_LIST} needed." + fi + done + output_debug "Setting migration mark '${TB_PROFILE_FOLDER}/.migrated'." + do_create_migrated_mark_file +fi + +# Migrate old user specific *.desktop entries +# Users may have created custom desktop shortcuts for Icedove in +# the past. These associations (files named like 'userapp-Icedove-*.desktop') +# are done in the folder $(HOME)/.local/share/applications/. + +# Remove such old icedove.desktop files, superseeded by system-wide +# /usr/share/applications/thunderbird.desktop. The old ones in $HOME don't +# receive updates and might have missing/outdated fields. +# *.desktop files and their reverse mimeinfo cache provide information +# about available applications. + +for ICEDOVE_DESKTOP in $(find "${HOME}/.local/share/applications/" -iname "*icedove*.desktop"); do + output_debug "Backup ${ICEDOVE_DESKTOP} to ${ICEDOVE_DESKTOP}.backup_thunderbird_migration-${DATE}" + ICEDOVE_DESKTOP_COPY=${ICEDOVE_DESKTOP}.backup_thunderbird_migration-${DATE} + mv "${ICEDOVE_DESKTOP}" "${ICEDOVE_DESKTOP_COPY}" + # Update the mimeinfo cache. + # Not existing *.desktop files in there should simply be ignored by the system anyway. + if [ -x "$(which update-desktop-database)" ]; then + output_debug "Call 'update-desktop-database' to update the mimeinfo cache." + update-desktop-database "${HOME}/.local/share/applications/" + fi +done +} + +# Print out an error message about failed migration +do_thunderbird2icedove_error_out (){ +case "${DESKTOP}" in + gnome|mate|xfce) + local_zenity --info --no-wrap --title "${TITLE}" --text "${DOT_THUNDERBIRD_EXISTS}" + if [ $? -ne 0 ]; then + local_xmessage -center "${DOT_THUNDERBIRD_EXISTS}" + fi + TB_FAIL=1 + ;; + kde) + local_kdialog --title "${TITLE}" --msgbox "${DOT_THUNDERBIRD_EXISTS}" + if [ $? -ne 0 ]; then + local_xmessage -center "${DOT_THUNDERBIRD_EXISTS}" + fi + TB_FAIL=1 + ;; + *) + xmessage -center "${DOT_THUNDERBIRD_EXISTS}" + TB_FAIL=1 + ;; +esac +} + +# Symlink .thunderbird to .icedove +do_thunderbird2icedove_symlink () { +output_debug "Trying to symlink '${TB_PROFILE_FOLDER}' to '${ID_PROFILE_FOLDER}'" +if ln -s "${ID_PROFILE_FOLDER}" "${TB_PROFILE_FOLDER}"; then + output_debug "success." + return 0 +else + case "${DESKTOP}" in + gnome|mate|xfce) + local_zenity --info --no-wrap --title "${TITLE}" --text "${THUNDERBIRD_PROFILE_LINKING_ERROR}" + if [ $? -ne 0 ]; then + local_xmessage -center "${THUNDERBIRD_PROFILE_LINKING_ERROR}" + fi + TB_FAIL=1 + ;; + kde) + local_kdialog --title "${TITLE}" --msgbox "${THUNDERBIRD_PROFILE_LINKING_ERROR}" + if [ $? -ne 0 ]; then + local_xmessage -center "${THUNDERBIRD_PROFILE_LINKING_ERROR}" + fi + TB_FAIL=1 + ;; + *) + xmessage -center "${THUNDERBIRD_PROFILE_LINKING_ERROR}" + TB_FAIL=1 + ;; + esac + output_debug "Ohh, that wasn't working, sorry! Do you have access rights to create a symlink?" + return 1 +fi +} + +# Wrapping /usr/bin/kdialog calls +local_kdialog () { +if [ -f /usr/bin/kdialog ]; then + /usr/bin/kdialog "$@" + return 0 +else + return 1 +fi +} + +# Wrapping /usr/bin/xmessage calls +local_xmessage () { +if [ -f /usr/bin/xmessage ]; then + /usr/bin/xmessage "$@" +else + # this should never be reached as thunderbird has a dependency on x11-utils! + output_info "xmessage not found" +fi +} + +# Wrapping /usr/bin/zenity calls +local_zenity () { +if [ -f /usr/bin/zenity ]; then + /usr/bin/zenity "$@" + return 0 +else + return 1 +fi +} + +# Simple info output function +output_info () { +echo "INFO -> $1" +} + +# Simple debugging output function +output_debug () { +if [ "${TB_VERBOSE}" = "1" ]; then + echo "DEBUG -> $1" +fi +} + +# How this script can be called +usage () { +cat << EOF + +Usage: ${0##*/} [--help|-? ] | [--verbose ] [ -g ] [args-passed-to-thunderbird...] + +This script parses its command line options and passes everything else on to +Thunderbird. Note that some Thunderbird options need an additional argument +that can't be naturally mixed with other options! + + -g Starts Thunderbird within gdb (needs package thunderbird-dbgsym) + + --help or ? Display this help and exit + + --verbose Verbose mode, increase the output messages to stdout + (Logging to /var/log/syslog isn't touched or increased by this + option!) + +Additional options: + + --fixmime Only fixes MIME associations in + ~/.thunderbird/$profile/mimeTypes.rdf and exits. Can be + combined with '--verbose'. + + --show-backup Collect the backup files which where made and print them to + stdout and exits. +EOF +cat << EOF + +Examples: + + ${0##*/} --help + + Writes this help messages on stdout. If any other option is given it + will be ignored. Note that Thunderbird has a '-h' option which needs + to be used if you want the help output for Thunderbird. + + ${0##*/} --verbose + + Enable more debug messages on stdout. Only useful while developing the + thunderbird packages or during profile migration. + + ${0##*/} -g + + Starts Thunderbird in a GDB session if packages gdb and + thunderbird-dbgsym are installed. +EOF +# other debuggers will be added later, we need maybe a separate valgrind +# package! Note MDN site for valgrind +# https://developer.mozilla.org/en-US/docs/Mozilla/Testing/Valgrind +# ${0##*/} -d gdb +# The same as above, only manually specified the GDB debugging tool as +# argument. Note that you probably will need additional parameter to +# enable e.g. writing to a logfile. +# It's also possible to specify valgrind, that will need to add additional +# quoted arguments in any case! +# The thunderbird binary must be compiled with valgrind support if you +# want to use valgrind here! +# +# ${0##*/} -d 'valgrind --arg1 --arg2' -thunderbird-arg1 +cat << EOF + + ${0##*/} [args-passed-to-thunderbird...] + + Some example for invoking Thunderbird from the ommand line: + Run in safe-mode with the JS Error console: + + ${0##*/} --safe-mode --jsconsole + + Call Thunderbird directly to compose a message with a specific + attachement. + + ${0##*/} -compose "to='recipient@tld.org','attachment=/path/attachment'" + + See the all possible arguments for Thunderbird: + + ${0##*/} -h + +EOF +} + +# end local functions diff --git a/thunderbird-wrapper.sh b/thunderbird-wrapper.sh new file mode 100755 index 0000000000..b3f7c2e7b7 --- /dev/null +++ b/thunderbird-wrapper.sh @@ -0,0 +1,270 @@ +#!/bin/bash +# vim: autoindent tabstop=4 shiftwidth=4 expandtab softtabstop=4 filetype=sh textwidth=76 +# +# File: +# /usr/bin/thunderbird +# +# Purpose: +# This is a wrapper script for starting the thunderbird binary with taking +# care of the searching for an old user Icedove profile folder and adopting +# the folder into the new place if possible. +# +# Environment: +# The Icedove binary was using the profile folder '${HOME}/.icedove'. The +# Mozilla default for the Thunderbird binary is '${HOME}/.thunderbird'. +# The script will looking for the old profile folder and will symlink the +# folder '${HOME}/.thunderbird' to the profile folder '${HOME}/.icedove'. +# +# Copyright: +# Licensed under the terms of GPLv2+. + +#set -x + +TB_HELPER=${TB_HELPER:-"/usr/lib/thunderbird/thunderbird-wrapper-helper.sh"} +# sourcing external variables and helper functions +# hide the sourcing for http://www.shellcheck.net/ +# shellcheck source=/dev/null +. "${TB_HELPER}" +if [ $? -ne 0 ]; then + echo "sourcing ${TB_HELPER} failed - giving up." + exit 1 +fi + +# some global variables +MOZ_APP_NAME=thunderbird +MOZ_APP_LAUNCHER=$(command -v "$0") +MOZ_LIBDIR=/usr/lib/${MOZ_APP_NAME} +ID_PROFILE_FOLDER=${HOME}/.icedove +TB_PROFILE_FOLDER=${HOME}/.thunderbird +TB_GDB_DEFAULT_OPTS=${TB_GDB_DEFAULT_OPTS:-"-ex \"handle SIG38 nostop\" -ex \"handle SIGPIPE nostop\""} + +export TB_HELP=0 +export TB_FAIL=0 +export FORCE_MIMEAPPS_MIGRATE=0 +export TB_VERBOSE=0 +unset DEBUG +unset DEBUGGER + +# set MOZ_APP_LAUNCHER for gnome-session +export MOZ_APP_LAUNCHER + +# let Thunderbird detect the system dictionaries +export DICPATH=/usr/share/hunspell + +declare -a TB_ARGS=() + +for ARG in "$@"; do + case "${ARG}" in + --fixmime) + FIXMIME=1 + FORCE_MIMEAPPS_MIGRATE=1 + ;; + -g) + DEBUGGER=1 + DEBUG=1 + ;; +# -d) +# USER_DEBUGGER=$2 +# DEBUG=1 +# shift +# ;; + --help) + TB_HELP=1 + ;; + --show-backup) + SHOW_BACKUP=1 + ;; + --verbose) + output_info "[[ ... using verbose mode ... ]]" + TB_VERBOSE=1 + ;; + '?') + usage >&2 + exit 1 + ;; + # Every other argument is needed to get down to the TB starting call. + *) + TB_ARGS+=("${ARG}") + ;; + esac + shift +done + +# sanity check +if [ "$DEBUGGER" != "" ] && [ "$USER_DEBUGGER" != "" ]; then + output_info "You can't use option '-g and '-d' at the same time!" + usage + exit 1 +fi + +# If '--help' was called show usage() and exit immediately without other +# helpers can be called. +if [ "${TB_HELP}" = "1" ]; then + usage + exit 0 +fi + +# The user is forcing to do the MIME fixing (again). If called a used +# profile(s) folder ~/.thunderbird will be also reworked. That's not the +# case if the user is starting this wrapper for a first time and only a +# folder ~/.thunderbird is existing! +if [ "${FIXMIME}" = "1" ]; then + do_fix_mimetypes_rdf + do_migrate_old_icedove_desktop + do_collect_backup_files + exit 0 +fi + +if [ "${SHOW_BACKUP}" = "1" ]; then + do_collect_backup_files + exit 0 +fi + +############################################################################# +# User Thunderbird Profile Adoptions # +# # +# The users Icedove/Thunderbird profile(s) doesn't need to be modified in a # +# different and complicated way. We simply need to ensure that the # +# Thunderbird binary is finding the existing profiles in the folder # +# $(HOME)/.thunderbird folder or a valid symlink pointing to the profiles. # +# # +# To "migrate" an old existing Icedove profile we can simply do a symlink # +# from $(HOME)/.thunderbird --> $(HOME)/.icedove . # +# # +# Afterwards do some changes to the file mimeTypes.rdf within every # +# profile. Also we can modify existing *icedove*.desktop entries in the # +# files. # +# # +# $(HOME)/.config/mimeapps.list # +# $(HOME)/.local/share/applications/mimeapps.list # +# # +############################################################################# + +# First try the default case for modification, there is only a folder +# ${ID_PROFILE_FOLDER} and we can symlink to this. +if { [ -d "${ID_PROFILE_FOLDER}" ] || [ -L "${ID_PROFILE_FOLDER}" ]; } && \ + { [ ! -d "${TB_PROFILE_FOLDER}" ] && [ ! -L "${TB_PROFILE_FOLDER}" ]; }; then + output_debug "found folder '${ID_PROFILE_FOLDER}'" + output_debug "not found folder or symlink '${TB_PROFILE_FOLDER}'" + output_debug "Start Thunderbird profile adoptions, please be patient!" + + # open a pop-up window with a message about starting migration + do_inform_migration_start + + # do the symlinking + do_thunderbird2icedove_symlink + + # fixing mimeTypes.rdf which may have registered the iceweasel binary + # as browser, instead of x-www-browser + do_fix_mimetypes_rdf + + # Fix local mimeapp.list and *.desktop entries + do_migrate_old_icedove_desktop + + # we are finished + output_info "Thunderbird Profile adoptions done." + do_collect_backup_files +fi + +# We found both profile folder, and .thunderbird is a symlink, +# we need to check if .thunderbird is symlinked to .icedove +if { [ -d "${ID_PROFILE_FOLDER}" ] && [ -L "${TB_PROFILE_FOLDER}" ]; } && \ + [ "$(readlink -e "${TB_PROFILE_FOLDER}")" = "${ID_PROFILE_FOLDER}" ];then + + output_debug "Found folder ${ID_PROFILE_FOLDER}, found a symlink ${TB_PROFILE_FOLDER} pointing to ${ID_PROFILE_FOLDER}" + + # Check if we need to do some migration, the linking could be existing + # before we switched back to Thunderbird. + if [ ! -f "${TB_PROFILE_FOLDER}/.migrated" ]; then + # Fixing mimeTypes.rdf which may have registered the iceweasel binary + # as browser, instead of x-www-browser + do_fix_mimetypes_rdf + + # Fix local mimeapp.list and *.desktop entries + do_migrate_old_icedove_desktop + fi + +# ... or the opposite if .icedove is symlinked to .thunderbird +elif { [ -d "${TB_PROFILE_FOLDER}" ] && [ -L "${ID_PROFILE_FOLDER}" ]; } && \ + [ "$(readlink -e "${ID_PROFILE_FOLDER}")" = "${TB_PROFILE_FOLDER}" ];then + + output_debug "Found folder ${TB_PROFILE_FOLDER}, found a symlink ${ID_PROFILE_FOLDER} pointing to ${TB_PROFILE_FOLDER}" + output_debug "You may want to remove the symlink ${ID_PROFILE_FOLDER}? It's probably not needed anymore." + + # Check if we need to do some migration ... + if [ ! -f "${TB_PROFILE_FOLDER}/.migrated" ]; then + # Fixing mimeTypes.rdf which may have registered the iceweasel binary + # as browser, instead of x-www-browser + do_fix_mimetypes_rdf + + # Fix local mimeapps.list and *.desktop entries + do_migrate_old_icedove_desktop + fi + +# We found both profile folder, but they are not linked to each other! This +# is a state we can't solve on our own !!! The user needs to interact and +# has probably an old or otherwise used Thunderbird installation. Which one +# is the correct one to use? +elif { [ -d "${ID_PROFILE_FOLDER}" ] || [ -L "${ID_PROFILE_FOLDER}" ]; } && \ + { [ -d "${TB_PROFILE_FOLDER}" ] || [ -L "${TB_PROFILE_FOLDER}" ]; } && \ + [ "$(readlink -e "${TB_PROFILE_FOLDER}")" != "$(readlink -e "${ID_PROFILE_FOLDER}")" ]; then + + for CHECK in ${ID_PROFILE_FOLDER} ${TB_PROFILE_FOLDER}; do + FILE_CHECK=$(readlink -e "${CHECK}") + if [ "${FILE_CHECK}" != "" ] && [ -L "${CHECK}" ]; then + output_debug "Found symlink '${CHECK}' pointing to '${FILE_CHECK}'." + elif [ "${FILE_CHECK}" != "" ] && [ -d "${CHECK}" ]; then + output_debug "Found folder '${FILE_CHECK}'." + else + output_debug "${CHECK} is probably a symlink pointing to a non existing target, at least not to ${ID_PROFILE_FOLDER}." + logger -i -p warning -s "$0: [profile migration] ${CHECK} is probably a symlink pointing to a non existing target, at least not to ${ID_PROFILE_FOLDER}." + fi + done + + output_debug "There are already the folders or symlinks '${TB_PROFILE_FOLDER}' and '${ID_PROFILE_FOLDER}'" + output_debug "which not pointing to each other, will do nothing as don't know which folder to use." + output_debug "Please investigate by yourself! Maybe you will find additional information in '/usr/share/doc/thunderbird/README.Debian.gz'." + logger -i -p warning -s "$0: [profile migration] Couldn't migrate Icedove into Thunderbird profile due existing or symlinked folder '${TB_PROFILE_FOLDER}'!" + + # display a graphical advice if possible + do_thunderbird2icedove_error_out + +fi + +if [ "${TB_FAIL}" = 1 ]; then + output_info "An error happened while trying to migrate the old Icedove profile folder '${ID_PROFILE_FOLDER}'." + output_info "Please take a look into the syslog file!" + exit 1 +fi + +# If we are here we going simply further by starting Thunderbird. + +if [ "${DEBUG}" = "" ]; then + TB_ARGS_LINE=$(echo "${TB_ARGS[@]}" | sed "s/'/\"/g") + output_debug "call '${MOZ_LIBDIR}/${MOZ_APP_NAME} ${TB_ARGS_LINE}'" + exec "${MOZ_LIBDIR}"/"${MOZ_APP_NAME}" "${TB_ARGS[@]}" +else + # User has selected GDB? + if [ "${DEBUGGER}" = "1" ]; then + # checking for GDB + if [ -f /usr/bin/gdb ]; then + if dpkg-query -W -f='${Version}' thunderbird-dbgsym &>/dev/null ; then + output_info "Starting Thunderbird with GDB ..." + TB_ARGS_LINE="/usr/bin/gdb ${TB_GDB_DEFAULT_OPTS} -ex run ${MOZ_LIBDIR}/${MOZ_APP_NAME}$(printf ' %q' "${TB_ARGS[@]}")" + output_info "LANG= ${TB_ARGS_LINE}" + LANG='' eval "exec ${TB_ARGS_LINE}" + else + output_info "No package 'thunderbird-dbgsym' installed! Please install first and restart." + output_info "More information how to adjust your sources.list to being able installing" + output_info "dbgsym packages in generally can be found here:" + output_info "https://wiki.debian.org/HowToGetABacktrace#Installing_the_debugging_symbols" + exit 1 + fi + else + output_info "No package 'gdb' installed! Please install first and try again." + exit 1 + fi + fi +fi + +exit 0 diff --git a/thunderbird.1 b/thunderbird.1 new file mode 100644 index 0000000000..7942daa85f --- /dev/null +++ b/thunderbird.1 @@ -0,0 +1,194 @@ +.TH "THUNDERBIRD" "1" "February 27, 2010" "Christoph Göhre" "Linux User's Manual" +.SH "NAME" +thunderbird \- Mail User Agent (MUA) and newsgroup/RSS client for X11 derived from the Mozilla Thunderbird. +.SH "SYNOPSIS" +.B /usr/lib/thunderbird/thunderbird +[\fIOPTIONS\fR] [\fIURL\fR] + +.B /usr/lib/thunderbird/thunderbird\-bin +[\fIOPTIONS\fR] [\fIURL\fR] + +.SH "DESCRIPTION" +\fBThunderbird\fR provides IMAP/POP support, a built-in RSS reader, support for +HTML mail, powerful quick search, saved search folders, advanced message +filtering, junk mail controls, message grouping, labels, return receipts, smart +address book, LDAP address completion, import tools and the ability to manage +multiple identities in email and newsgroup accounts. +.PP +\fBThunderbird\fR provides enterprise and government grade security such as S/MIME, +digital signing, message encryption, and support for certificates and security +devices. + +.SH "USAGE" +\fBthunderbird\fR is a executable file that will set up the +environment for the starting executable, \fBthunderbird\-bin\fR. +If there is an Thunderbird mail client already running, \fBthunderbird\fR will +arrange for it to create a new mail client window; otherwise it will start +the Thunderbird application. + +.SH "OPTIONS" +A summary of the options supported by \fBthunderbird\fR is included below. + +.SS "X11 options" +.TP +.BI \-\-display= DISPLAY +X display to use +.TP +.B \-\-sync +Make X calls synchronous +.TP +.B \-\-g\-fatal\-warnings +Make all warnings fatal + +.SS "Mozilla options" +.TP +.B \-h, \-help +Show summary of options. +.TP +.B \-v, \-version +Print the Thunderbird version. +.TP +\fB\-P\fR [\fIprofile\fR] +Start with \fIprofile\fR. When no profile is given, displays the Profile Manager. May require \fB\-no\-remote\fR, see below. +.TP +.B \-\-profile [\fIpath\fR] +Start with with [\fIprofile\fR] from the given [\fIpath\fR]. +.TP +.B \-\-migration +Start with migration wizard. May require \fB\-no\-remote\fR, see below. +.TP +.B \-\-ProfileManager +Start with profile manager. May require \fB\-no\-remote\fR, see below. +.TP +.B \-\-no\-remote +Don't connect to a running Thunderbird instance. Don't accept or send remote +commands. This option can be necessary in conjunction to several of the options +above, that won't have any effect when an Thunderbird instance is running unless +\fB\-no\-remote\fR is used at the same time. +.TP +.B \-\-new\-instance +Open a new instance instead of a new windows in the running instance. +.TP +\fB\-\-UILocale\fR \fIlocale\fR +Start with \fIlocale\fR resources as User Interface locale. By default, it is +guessed from environment and available locales for Thunderbird. +.TP +.B \-\-safe\-mode +Starts Thunderbird in safe mode, i.e. disabling all extensions and +showing a bit more debugging messages. +.TP +.B \-\-jsconsole +Start with Javascript Console +.TP +.B \-addressbook +Open the address book at startup. +.TP +.B \-compose +Compose a mail or news message. +.TP +.B \-mail +Open the mail folder view. +.TP +\fB\-mail\fR \fIURL\fR +Open the message specified by this \fIURL\fR. +.TP +.B \-news +Open the news client. +.TP +.B \-setDefaultMail +Set Thunderbird as the default mail client. +.TP +.B \-options +Open the options dialog. +.TP +.B \-file +Open the specified email file. + +.SH "DEBUGGING" +.TP +.B \-g +Starts Thunderbird through a debugger (gdb by default). + +.SH "ENVIRONMENT" +\fIMOZILLA_DISABLE_PLUGINS\fR \- when set, totally disables loading plugins. + +.SH "FILES" +\fI/usr/bin/thunderbird\fR \- shell script wrapping +\fBthunderbird\-bin\fR +.br + +\fI/usr/lib/thunderbird/thunderbird\-bin\fR \- \fBthunderbird\fR +executable +.br + +.SH "EXAMPLES" +.SS "Some typical use case for starting Thunderbird from a console" +.sp +Starting Thunderbird without any extra options, useful to any messages from thunderbird in case something went not o.k.: +.sp +.if n \{\ +.RS 4 +.\} +.nf +thunderbird +.fi +.if n \{\ +.RE +.\} +.sp +Starting Thunderbird without any extensions or themes, useful if extensions may make some trouble: +.sp +.if n \{\ +.RS 4 +.\} +.nf +thunderbird \-\-safe-mode +.fi +.if n \{\ +.RE +.\} +.sp +Starting Thunderbird with a composing window: +.sp +.if n \{\ +.RS 4 +.\} +.nf +thunderbird \-compose +.fi +.if n \{\ +.RE +.\} +.sp +Starting Thunderbird with the default debugger: +.sp +.if n \{\ +.RS 4 +.\} +.nf +/usr/lib/thunderbird/run-mozilla.sh \-debug /usr/lib/thunderbird/thunderbird-bin +.fi +.if n \{\ +.RE +.\} +.sp +Starting Thunderbird with the specific debugger: +.sp +.if n \{\ +.RS 4 +.\} +.nf +/usr/lib/thunderbird/run-mozilla.sh \-\-debugger /foo/bar/debugger /usr/lib/thunderbird/thunderbird-bin +.fi +.if n \{\ +.RE +.\} + +.SH "BUGS" +To report a bug, please visit \fIhttp://bugzilla.mozilla.org/\fR and/or report bugs +to the Debian Bug Tracking System, as usual. + +.SH "AUTHORS" +.TP +.B The Mozilla Organization +.I http://www.mozilla.org/about.html diff --git a/thunderbird.NEWS b/thunderbird.NEWS new file mode 100644 index 0000000000..dd9fc3d261 --- /dev/null +++ b/thunderbird.NEWS @@ -0,0 +1,112 @@ +thunderbird (1:78.3.1-1) unstable; urgency=medium + + The Thunderbird ESR series starting with version 78.x has finally dropped the + support for legacy Add-ons and also for legacy WebExtension Add-ons. + By this some packaged Add-ons within Debian, but also some external installed + Add-ons might not working any more! + + The very popular Add-on Enigmail, which was providing OpenPGP support within + the Thunderbird application, isn't getting further development as an external + Add-on due a consequence of the changed Add-on API. + Instead Thunderbird now has Built-In OpenPGP support since version 78.0. + The latest version of the Enigmail Add-on (>= 2.2) will provide an migration + wizard which helps to migrate the existing OpenPGP keys into Thunderbird. + + Please have a look for further information about Enigmail on the project + homepage and the Add-on website. + + https://www.enigmail.net/index.php/en/home/news + https://addons.thunderbird.net/en/thunderbird/addon/enigmail/ + https://wiki.mozilla.org/Thunderbird:OpenPGP:Smartcards + + You might also want to have a look at README.Debian for more information. + + -- Carsten Schoenert Sun, 20 Sep 2020 8:40:00 +0200 + +thunderbird (1:68.2.2-1) unstable; urgency=medium + + Starting with version 68.2.2-1 src:thunderbird isn't building the binary + package calendar-google-provider any more. + + If you want or need to use this Add-on please install this extension from + + https://addons.thunderbird.net/en-GB/thunderbird/addon/provider-for-google-calendar/ + + (Please choose your preferred language!) + + The removal of this Add-on from the Thunderbird source was discussed within + this issue: + + https://bugzilla.mozilla.org/show_bug.cgi?id=1584614 + + -- Carsten Schoenert Sun, 10 Nov 2019 11:07:00 +0100 + +thunderbird (1:60.0-3) unstable; urgency=medium + + intl.locale.matchOS is replaced by intl.locale.requested + + Thunderbird has taken the locale from the user session by using the + preference 'intl.locale.matchOS' up until version 57. + This preference is replaced by 'intl.locale.requested' since version 58. + + Thunderbird is detecting (again) the locale from the system by using this + preference with an empty string as value. + Starting with this version Thunderbird is taking care of this possibility + by adding this preference to the system wide configuration within + '/etc/thunderbird/pref/thunderbird.js. + + If you have used Thunderbird packages < 1:60.0-3 *and* you have used this + environment settings within your profile by adding a dedicated locale value + which is equal to the system language you can remove this and let + Thunderbird pick up the locale from the system automatically. To do so + remove the following key completely from your local settings: + + intl.locale.requested + + More information can be found here + + https://bugzilla.mozilla.org/show_bug.cgi?id=1437480 + https://bugzilla.mozilla.org/show_bug.cgi?id=1413866 + + Please have also a look into README.Debian for a more in deep explanation, + especially section + 'Enable l10n languages in Thunderbird >= 1:60.0~b2'. + + -- Carsten Schoenert Wed, 5 Aug 2018 20:45:00 +0200 + +thunderbird (1:60.0~b2-1) experimental; urgency=medium + + thunderbird-l10n and lightning-l10n packages are known broken + + Due the modifications by upstream started with Thunderbird 59 related to the + needed changes for the WebExtensions the various l10n packages for + thunderbird itself but also for lightning are currently not working like + previously out of the box. + This is a known fact and mostly confirmed by upstream. + + By a manual workaround for the local profile it's possible to (re-)enable the + requested l10n language. Please have a look at the file README.Debian in the + section 'Enable l10n languages in Thunderbird >= 1:60.0~b2'. + + For more information on this issue you can visit + + https://bugzilla.mozilla.org/show_bug.cgi?id=1437480 + + -- Carsten Schoenert Sat, 7 Apr 2018 10:21:00 +0200 + +thunderbird (1:52.5.0-1) unstable; urgency=high + + The profile for AppArmor within Thunderbird is now disabled by default. + Since the activated Recommends for the apparmor package in recent + kernel-image packages it turns out there are to many things that simply not + working like before if Thunderbird is using the current AppArmor profile. + + Please read README.apparmor for getting more information about the + re-enabling of the AppArmor profile. + People who wants to help to improve the AppAprmor profile are appreciated. + + Take also a look at #882048 for the reason behind that decision. + + https://bugs.debian.org/882048 + + -- Carsten Schoenert Sun, 26 Nov 2017 12:45:00 +0200 diff --git a/thunderbird.bash-completion b/thunderbird.bash-completion new file mode 100644 index 0000000000..e61cb10946 --- /dev/null +++ b/thunderbird.bash-completion @@ -0,0 +1,65 @@ +# bash completion for thunderbird(1) -*- shell-script -*- +# +# Copyright (C) 2017 Carsten Schoenert + +_thunderbird() { +local cur prev OPTS FLAG_FIXMIME FLAG_SHOW_BACKUP +COMPREPLY=() +cur="${COMP_WORDS[COMP_CWORD]}" +prev="${COMP_WORDS[COMP_CWORD-1]}" +OPTS="--fixmime --help --show-backup -g --verbose" + +case $prev in + '--fixmime') + # Check if '--verbose' is already given, this is the only option that + # '--fixmime' should be combined + if [ ! $(compgen -W "${COMP_WORDS[*]}" -- "--verbose") ]; then + COMPREPLY=( $(compgen -W "--verbose" -- $cur) ) + fi + return 0 + ;; + + '--help'|'-g') + return 0 + ;; + + '--show-backup') + # Check if '--verbose' is already given, this is the only option that + # --show-backup should be combined + if [ ! $(compgen -W "${COMP_WORDS[*]}" -- "--verbose") ]; then + COMPREPLY=( $(compgen -W "--verbose" -- $cur) ) + fi + return 0 + ;; + + '--verbose') + FLAG_FIXMIME="" + FLAG_SHOW_BACKUP="" + + # Check if '--fixmime' is already given + if [ $(compgen -W "${COMP_WORDS[*]}" -- "--fixmime") ]; then + # Yes, we have seen '-fixmime' + FLAG_FIXMIME=1 + fi + + # Check if '--show-backup' is already given + if [ $(compgen -W "${COMP_WORDS[*]}" -- "--show-backup") ]; then + # Yes, we have seen '--show-backup' + FLAG_SHOW_BACKUP=1 + fi + + if [ "$FLAG_FIXMIME" != "1" ] && [ "$FLAG_SHOW_BACKUP" != "1" ]; then + COMPREPLY=( $(compgen -W "--fixmime --show-backup" -- $cur) ) + fi + return 0 + ;; + +esac + + COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) + return 0 + +} && +complete -F _thunderbird thunderbird + +# ex: ts=4 sw=4 et filetype=sh diff --git a/thunderbird.desktop b/thunderbird.desktop new file mode 100644 index 0000000000..7ac4b218cb --- /dev/null +++ b/thunderbird.desktop @@ -0,0 +1,115 @@ +[Desktop Entry] +Name=Thunderbird +Comment=Read/Write Mail/News with Thunderbird +GenericName=Mail Client +Exec=/usr/bin/thunderbird %u +Terminal=false +X-MultipleArgs=false +Type=Application +Version=1.0 +Icon=thunderbird +Categories=Network;Email;News;GTK; +MimeType=message/rfc822;x-scheme-handler/mailto;text/calendar;text/x-vcard; +StartupWMClass=thunderbird-default +StartupNotify=true +Name[ast]=Veceru de corréu Thunderbird +Name[ca]=Client de correu Thunderbird +Name[cs]=Poštovní klient Thunderbird +Name[da]=Mozilla Thunderbird - e-post/nyhedsgruppe +Name[de]=Thunderbird E-Mail und Nachrichten +Name[el]=Ηλεκτρονική αλληλογραφία Thunderbird +Name[es]=Cliente de correo Thunderbird +Name[fi]=Thunderbird-sähköposti +Name[fr]=Messagerie Thunderbird +Name[gl]=Cliente de correo Thunderbird +Name[he]=Mozilla Thunderbird דוא״ל/חדשות +Name[hr]=Mozilla Thunderbird e-pošta/novosti +Name[hu]=Thunderbird levelezőkliens +Name[it]=Email Mozilla Thunderbird +Name[ja]=Thunderbird電子メールクライアント +Name[ko]=Mozilla Thunderbird +Name[nl]=Mozilla Thunderbird e-mail/nieuws +Name[pl]=Klient poczty Thunderbird +Name[pt_BR]=Cliente de E-mail Thunderbird +Name[ru]=Почтовый клиент Thunderbird +Name[sk]=Thunderbird - poštový klient +Name[sv]=E-postklienten Thunderbird +Name[ug]=Mozilla Thunderbird ئېلخەت/خەۋەر +Name[uk]=Поштова програма Thunderbird +Name[vi]=Trình điện thư Mozilla Thunderbird +Name[zh_CN]=Thunderbird 邮件/新闻 +Name[zh_TW]=Thunderbird 郵件 +Comment[ast]=Lleer y escribir corréu electrónicu +Comment[ca]=Llegiu i escriviu correu +Comment[cs]=Čtení a psaní pošty +Comment[da]=Læs/skriv post/nyheder med Thunderbird +Comment[de]=E-Mails und Nachrichten mit Thunderbird lesen und schreiben +Comment[el]=Διαβάστε και γράψτε γράμματα με το Mozilla Thunderbird +Comment[es]=Lea y escriba correos y noticias con Thunderbird +Comment[fi]=Lue ja kirjoita sähköposteja +Comment[fr]=Lire et écrire des courriels +Comment[gl]=Lea e escriba correo electrónico +Comment[he]=קריאה/כתיבה של דוא״ל/חדשות באמצעות Mozilla Thunderbird +Comment[hr]=Čitajte/šaljite e-poštu s Thunderbird +Comment[hu]=Levelek írása és olvasása a Thunderbirddel +Comment[it]=Per leggere e scrivere email +Comment[ja]=メールの読み書き +Comment[ko]=Mozilla Thunderbird 메일/뉴스 읽기 및 쓰기 클라이언트 +Comment[nl]=E-mail/nieuws lezen en schrijven met Mozilla Thunderbird +Comment[pl]=Czytanie i wysyłanie e-maili +Comment[pt_BR]=Leia e escreva suas mensagens +Comment[ru]=Читайте и пишите письма +Comment[sk]=Čítajte a píšte poštu pomocou programu Thunderbird +Comment[sv]=Läs och skriv e-post +Comment[ug]=ئېلخەت ۋە خەۋەرلەرنى Mozilla Thunderbird دا كۆرۈش ۋە يېزىش +Comment[uk]=Читання та написання листів +Comment[vi]=Đọc và soạn thư điện tử +Comment[zh_CN]=阅读邮件或新闻 +Comment[zh_TW]=以 Mozilla Thunderbird 讀寫郵件或新聞 +GenericName[ast]=Client de correu +GenericName[ca]=Client de correu +GenericName[cs]=Poštovní klient +GenericName[da]=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[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]=郵件用戶端 +Keywords=EMail;E-mail;Contact;Addressbook;News; +Keywords[ast]=Corréu;Corréu-e;Noticies;Discusiones;Mensaxes;Canales;RSS +Keywords[ca]=Correu;Email;E-mail;Mailing;Llistes;Notícies;RSS +Keywords[cs]=Email;E-mail;Pošta;Elektronická pošta;Diskusní skupiny;Čtečka;RSS +Keywords[da]=Email;E-mail;Epost;E-post;Ebrev;E-brev;Kontakt;Adressebog;Nyheder; +Keywords[de]=Mail;E-Mail;Newsgroup;Nachrichten;Feed;RSS;Post;News;Usenet;online;lesen;schreiben +Keywords[el]=Email;E-mail;Newsgroup;Feed;RSS;ημαιλ;Αλληλογραφία;Ροή;ΡΣΣ;Συζητήσεις;Γράμματα +Keywords[es]=Email;Correo electrónico;Noticias;Discusiones;Mensajes;Canales;RSS +Keywords[fi]=Mail;E-Mail;Email;Newsgroup;Feed;RSS;posti;sähköposti;maili;meili;Usenet;uutisryhmät;syöte +Keywords[fr]=Mails;Mels;E-Mails;Emails;Courriels;Courriers;Newsgroup;Feed;RSS;Poster;Thunderbird;Lire;Écrire +Keywords[he]=דוא"ל;דוא״ל;מייל;אי-מייל;אימייל;הודעות;מוזילה;תאנדרבירד;ת׳אנדרבירד;ת'אנדרבירד;ת׳אנדרברד;ת'אנדרברד;דואל; +Keywords[hr]=email;e-mail;e-pošta;pošta;RSS +Keywords[hu]=Email;E-mail;Levél;Levelezés;Hírcsoport;Feed;Hírforrás;RSS +Keywords[it]=Email;Mail;Posta;Newsgroup;Feed;RSS +Keywords[is]=tölvupóstur;rafpóstur;fréttir;fréttahópar;samtöl;skilaboð;fréttastraumar;RSS +Keywords[ja]=Eメール;イーメール;mail;e-mail;email;メール;電子メール;ニュースグループ;ネットニュース;RSS;フィードリーダー;書く;読む;Mozilla +Keywords[nl]=Email;E-mail;Newsgroup;Feed;RSS;Nieuwsgroep;Post +Keywords[ru]=Email;E-mail;Newsgroup;Feed;RSS;почта;письма;новости;фиды +Keywords[sk]=Email;E-mail;Elektronická pošta;Diskusné skupiny;Čítačka kanálov;RSS +Keywords[uk]=Email;E-mail;Newsgroup;Feed;RSS;пошта;новини;подачі;стрічка +Keywords[vi]=Mail;E-Mail;Email;Newsgroup;Feed;RSS;Thư điện tử;Gửi thư +Keywords[zh_CN]=Mail;E-Mail;Email;Newsgroup;Feed;RSS;电子;邮件;新闻;Thunderbird;tb;雷鸟;电邮;邮箱;阅读器; diff --git a/thunderbird.dirs b/thunderbird.dirs new file mode 100644 index 0000000000..8c66407e7a --- /dev/null +++ b/thunderbird.dirs @@ -0,0 +1,11 @@ +etc/apparmor.d/disable +usr/bin +usr/share/icons/hicolor/16x16/apps +usr/share/icons/hicolor/22x22/apps +usr/share/icons/hicolor/24x24/apps +usr/share/icons/hicolor/32x32/apps +usr/share/icons/hicolor/48x48/apps +usr/share/icons/hicolor/64x64/apps +usr/share/icons/hicolor/128x128/apps +usr/share/icons/hicolor/256x256/apps +usr/share/icons/hicolor/scalable/apps diff --git a/thunderbird.docs b/thunderbird.docs new file mode 100644 index 0000000000..396d6bbfdb --- /dev/null +++ b/thunderbird.docs @@ -0,0 +1,2 @@ +debian/README.apparmor +third_party/rust/pkcs11/NOTICE diff --git a/thunderbird.install b/thunderbird.install new file mode 100755 index 0000000000..093e272491 --- /dev/null +++ b/thunderbird.install @@ -0,0 +1,33 @@ +#!/usr/bin/dh-exec +debian/logo/thunderbird/mailicon16.png => usr/share/icons/hicolor/16x16/apps/thunderbird.png +debian/logo/thunderbird/mailicon22.png => usr/share/icons/hicolor/22x22/apps/thunderbird.png +debian/logo/thunderbird/mailicon24.png => usr/share/icons/hicolor/24x24/apps/thunderbird.png +debian/logo/thunderbird/mailicon32.png => usr/share/icons/hicolor/32x32/apps/thunderbird.png +debian/logo/thunderbird/mailicon48.png => usr/share/icons/hicolor/48x48/apps/thunderbird.png +debian/logo/thunderbird/mailicon64.png => usr/share/icons/hicolor/64x64/apps/thunderbird.png +debian/logo/thunderbird/mailicon128.png => usr/share/icons/hicolor/128x128/apps/thunderbird.png +debian/logo/thunderbird/mailicon256.png => usr/share/icons/hicolor/256x256/apps/thunderbird.png +debian/thunderbird-wrapper.sh => usr/bin/thunderbird + +comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml usr/share/metainfo +debian/account-autoconfig/* usr/share/thunderbird/isp +debian/logo/thunderbird/thunderbird.svg usr/share/icons/hicolor/scalable/apps +debian/thunderbird.desktop usr/share/applications +debian/thunderbird.js etc/thunderbird/pref +debian/thunderbird-wrapper-helper.sh usr/lib/thunderbird +debian/apparmor/usr.bin.thunderbird etc/apparmor.d +debian/tmp/usr/lib/thunderbird/fonts +debian/tmp/usr/lib/thunderbird/*.ini +debian/tmp/usr/lib/thunderbird/chrome usr/share/thunderbird +debian/tmp/usr/lib/thunderbird/defaults/messenger usr/share/thunderbird/defaults +debian/tmp/usr/lib/thunderbird/defaults/pref usr/share/thunderbird/defaults +debian/tmp/usr/lib/thunderbird/dependentlibs.list +debian/tmp/usr/lib/thunderbird/thunderbird* +debian/tmp/usr/lib/thunderbird/isp usr/share/thunderbird +debian/tmp/usr/lib/thunderbird/lib* +debian/tmp/usr/lib/thunderbird/omni.ja usr/share/thunderbird +debian/tmp/usr/lib/thunderbird/plugin-container +debian/tmp/usr/lib/thunderbird/removed-files +#[amd64 armel armhf i386] debian/tmp/usr/lib/thunderbird/Throbber-small.gif +#[amd64 armel armhf i386] debian/tmp/usr/lib/thunderbird/crashreporter +debian/vendor.js usr/share/thunderbird/defaults/pref diff --git a/thunderbird.js b/thunderbird.js new file mode 100644 index 0000000000..ad5c492621 --- /dev/null +++ b/thunderbird.js @@ -0,0 +1,42 @@ +// This is the Debian specific preferences file for Mozilla Thunderbird +// You can make any change in here, it is the purpose of this file. +// You can, with this file and all files present in the directory +// +// /etc/thunderbird/pref directory +// +// override any preference that is present in the directory +// +// /usr/lib/thunderbird/defaults/pref +// +// While your changes will be kept on upgrade if you modify files in +// /etc/thunderbird/pref, please note that they won't be kept if you +// do them in /usr/lib/thunderbird/defaults/pref. + +pref("extensions.update.enabled", true); + +// Use LANG environment variable to choose locale from system +// The old environment setting 'pref("intl.locale.matchOS", true);' is +// currently not working anymore. The new introduced setting +// 'intl.locale.requested' is now used for this. Setting an empty string is +// pulling the system locale into Thunderbird. +pref("intl.locale.requested", ""); + +// Disable default mail checking (gnome). +pref("mail.shell.checkDefaultMail", false); + +// Disable default mail client check +pref("mail.shell.checkDefaultClient", false); + +// if you are not using gnome +pref("network.protocol-handler.app.http", "x-www-browser"); +pref("network.protocol-handler.app.https", "x-www-browser"); + +// This setting is a workaround for some crashes inside the JS engine. +// By this Thunderbird will use more memory and acting slower as the sharing +// memory between interacting JS files is disabled. +pref ("javascript.options.baselinejit", false); + +// Uncomment the follwing setting if you want to have a extra mail header field +// for X-Debbugs-Cc, only needed in case you have to work with the Debian +// Bug Tracking System more deeply +//pref("mail.compose.other.header", "X-Debbugs-Cc"); diff --git a/thunderbird.links b/thunderbird.links new file mode 100644 index 0000000000..8328955178 --- /dev/null +++ b/thunderbird.links @@ -0,0 +1,10 @@ +/etc/thunderbird/pref usr/share/thunderbird/defaults/syspref +/usr/share/hunspell usr/lib/thunderbird/dictionaries +# don't link /usr/bin/thunderbird -> /usr/lib/thunderbird/thunderbird +# we need to use a wrapper for Icedove user profile migration +#usr/lib/thunderbird/thunderbird usr/bin/thunderbird +usr/share/thunderbird/chrome usr/lib/thunderbird/chrome +usr/share/thunderbird/defaults usr/lib/thunderbird/defaults +usr/share/thunderbird/isp usr/lib/thunderbird/isp +usr/share/thunderbird/omni.ja usr/lib/thunderbird/omni.ja +usr/lib/thunderbird/thunderbird-bin usr/lib/thunderbird/thunderbird diff --git a/thunderbird.lintian-overrides b/thunderbird.lintian-overrides new file mode 100644 index 0000000000..ec81bf9fce --- /dev/null +++ b/thunderbird.lintian-overrides @@ -0,0 +1,15 @@ +# The embedded libjpeg is libjpeg-turbo, not libjpeg. +thunderbird: embedded-library libjpeg [usr/lib/thunderbird/libxul.so] +# Upstream code is not ready to use system library. +#thunderbird: embedded-library srtp usr/lib/thunderbird/libxul.so +thunderbird: embedded-library libtheora [usr/lib/thunderbird/libxul.so] +# The embedded libpng is patched for APNG support. +thunderbird: embedded-library libpng [usr/lib/thunderbird/libxul.so] +# We currently need to use the embedded libjsoncpp library. +thunderbird: embedded-library libjsoncpp [usr/lib/thunderbird/libxul.so] + +## Uncomment entries if NSPR4 and/or NSS3 are not available in the archive +# NSPR isn't packaged in the required version yet +#thunderbird: embedded-library usr/lib/thunderbird/libnspr4.so: nspr +# NSS isn't packaged in the required version yet +#thunderbird: embedded-library usr/lib/thunderbird/libnss3.so: nss diff --git a/thunderbird.maintscript b/thunderbird.maintscript new file mode 100644 index 0000000000..2d9e3f514f --- /dev/null +++ b/thunderbird.maintscript @@ -0,0 +1,3 @@ +# remove the old Icedove configfile +# command conffile start-version package +rm_conffile /etc/icedove/pref/icedove.js 1:45.7.1-2~ icedove diff --git a/thunderbird.manpages b/thunderbird.manpages new file mode 100644 index 0000000000..52afef8193 --- /dev/null +++ b/thunderbird.manpages @@ -0,0 +1 @@ +debian/thunderbird.1 diff --git a/thunderbird.postinst b/thunderbird.postinst new file mode 100644 index 0000000000..0ce7686497 --- /dev/null +++ b/thunderbird.postinst @@ -0,0 +1,98 @@ +#!/bin/sh +# postinst script for thunderbird +# +# see: dh_installdeb(1) + +set -e +#set -x +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-remove' +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +ICEDOVE_PREF=/etc/icedove/pref +THUNDERBIRD_PREF=/etc/thunderbird/pref +THUNDERBIRD_LIBDIR=/usr/lib/thunderbird +TO_DELETE=0 + +case "$1" in + configure) + # The users might have put some additional files/dirs into the old + # preferences folder '/etc/icedove/pref/', we need to move those files + # into '/etc/thunderbird/pref/' so Thunderbird is picking up those + # configurations as well. + if [ -d ${ICEDOVE_PREF} ]; then + # Check if we have to move files and/or directories. + if [ `ls -a "${ICEDOVE_PREF}" | wc -l` -gt 2 ]; then + # Yes, we found existing data to move! + echo "Moving old Icedove related preferences files ..." + mv ${ICEDOVE_PREF}/* /etc/thunderbird/pref/ + if [ "$?" != "0" ]; then + echo "Something went wrong while moving old Icedove preferences files!" + echo "Please validate files at '/etc/thunderbird/pref' !" + else + # Moving files went fine, we can delete ${ICEDOVE_PREF}. + TO_DELETE=1 + fi + else + # There was nothing, marking folder ${ICEDOVE_PREF} for deleting. + TO_DELETE=1 + fi + if [ "${TO_DELETE}" -eq 1 ]; then + # removing old empty folder /etc/icedove/profile if still existing (last used in squeeze) + if [ -d /etc/icedove/profile ]; then + rmdir /etc/icedove/profile || true + fi + echo "Removing old Icedove pref directory ..." + rmdir ${ICEDOVE_PREF} || true + rmdir /etc/icedove || true + rm -f ${THUNDERBIRD_PREF}/icedove.js.dpkg-remove || true + if [ -f ${THUNDERBIRD_PREF}/icedove.js ]; then + # If dpkg-mainthelper-script wasn't faster and hasn't already removed icedove.js ... + if [ "`md5sum /etc/thunderbird/pref/icedove.js`" = "f7d035193281c76a304391fb07dfd590" ] || \ + [ "`md5sum /etc/thunderbird/pref/icedove.js`" = "049566d25ab2630db3b705197b96f47e" ] ; then + # Remove the file icedove.js, it's the from previous installed Icedove package. + # f7d035193281c76a304391fb07dfd590 <= 1:45.3.0-1 + # 049566d25ab2630db3b705197b96f47e == 1:45.5.1-1 + rm ${THUNDERBIRD_PREF}/icedove.js || true + else + # We have a user modified file icedove.js. + mv ${THUNDERBIRD_PREF}/icedove.js ${THUNDERBIRD_PREF}/icedove.js.dpkg-backup || true + fi + fi + fi + fi + # Disable apparmor on new installations and when we're upgrading from + # a version that had it enabled by default + if test -n "$2" && dpkg --compare-versions "$2" gt "1:52.5.0-1~"; then + : # Leave the disable/ symlink at users choice if + # upgrading from a version that ships the symlink + else + mkdir -p /etc/apparmor.d/disable + [ -f /etc/apparmor.d/disable/usr.bin.thunderbird ] || ln -s /etc/apparmor.d/usr.bin.thunderbird /etc/apparmor.d/disable/usr.bin.thunderbird + fi + ;; + + configure|abort-upgrade) + touch ${THUNDERBID_LIBDIR}/.autoreg + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/thunderbird.prerm b/thunderbird.prerm new file mode 100644 index 0000000000..81a5211a13 --- /dev/null +++ b/thunderbird.prerm @@ -0,0 +1,11 @@ +#!/bin/sh + +set -e + +LIBDIR=/usr/lib/thunderbird + +if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ] || [ "$1" = upgrade ]; then + rm -f $LIBDIR/.autoreg +fi + +#DEBHELPER# diff --git a/vendor.js b/vendor.js new file mode 100644 index 0000000000..1a5daea0a2 --- /dev/null +++ b/vendor.js @@ -0,0 +1,2 @@ +// Forbid application updates +pref("app.update.enabled", false, locked); diff --git a/watch b/watch new file mode 100644 index 0000000000..6129767632 --- /dev/null +++ b/watch @@ -0,0 +1,3 @@ +version=4 +opts=dversionmangle=s/^(\d\.[\d\.]+)\+dfsg$/$1/ \ +https://download-origin.cdn.mozilla.net/pub/thunderbird/releases/(\d{3}\.[\d\.]+)/source/thunderbird-([\d\.]+).source\.tar\.xz debian python3 -B debian/repack.py diff --git a/xpi-pack.sh b/xpi-pack.sh new file mode 100755 index 0000000000..555e6239fc --- /dev/null +++ b/xpi-pack.sh @@ -0,0 +1,89 @@ +#!/bin/sh + +# Copyright (c) 2008 Alexander Sack, Sasa Bodiroza +# Description: Script to pack indir to xpifile +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +# The script searches indir for unpacked jar files, which must be located in +# ./input_dir/path/to/file.jar!/ dir. It will jar it up to +# ./input_dir/path/to/file.jar, and then remove the contents of unpacked dir. +# After that, it will zip up the contents of indir to xpi file. +# Example: xpi-pack ubufox.out ubufox-ver.xpi + +INDIR=$1; +XPIFILE=$2; + +usage() { + echo "$0 - Script to produce XPI file from input directory." + echo + echo "The output XPI file is placed in top-level of the input directory."; + echo "To place it somewhere else, provide relative or absolute path to the"; + echo "output XPI file." + echo + echo "To run it call:"; + echo "$ $0 input_directory output_xpi_file" + echo + echo " input_directory - directory with the XPI source tree"; + echo " output_xpi_file - name of the produced file"; + exit 1; +} + +if [ "$1" = "--help" -o "$1" = "-h" ] ; then + usage +fi; + +if [ -z $INDIR ] ; then + echo "Missing input directory." + echo + usage; +fi; +if [ -z $XPIFILE ] ; then + echo "Missing XPI name." + echo + usage; +fi; +if [ ! -d $INDIR ] ; then + echo "E: Input directory doesn't exist." + echo + usage; +fi; + +START_DIR=`pwd`; +PACK_JAR_PATHS=""; +cd $INDIR; +for JAR_DIR in `find . -type d -name '*.jar\!'` ; do + JAR_FILE=`echo $JAR_DIR | sed "s/jar\!$/jar/"`; + ABS_JAR_PATH=`cd $JAR_DIR ; pwd`; + ABS_JAR_FILE=`echo $ABS_JAR_PATH | sed "s/jar\!$/jar/"`; + ABS_CUR_DIR=`pwd`; + cd $ABS_JAR_PATH; + echo "Packing $JAR_FILE"; + TZ=UTC zip -q -X -r $ABS_JAR_FILE .; + cd $ABS_CUR_DIR; + PACK_JAR_PATHS="$ABS_JAR_FILE $PACK_JAR_PATHS"; + rm -rf $ABS_JAR_PATH; +done; +echo "Packing $XPIFILE"; +TZ=UTC zip -q -X -r $START_DIR/$XPIFILE * -x debian/\* temp-*/\*; +[ -f $START_DIR/$XPIFILE ] && XPIDIR=`dirname $START_DIR/$XPIFILE` +ABS_XPIDIR=`cd $XPIDIR; pwd`; +echo "Packed XPI file. It is located in $ABS_XPIDIR"; +for JAR_PATH in $PACK_JAR_PATHS ; do + echo "Unpacking and removing $JAR_PATH"; + TZ=UTC unzip -q $JAR_PATH -d $JAR_PATH!; + rm -f $JAR_PATH; +done; +cd $START_DIR; -- 2.30.2

}M`Bw^!aeEd?2bFNpk)(U7fB>q{1(YBFC=zpLEx2OC*H%2T{i`|i z266~sZ1W+pER|#a$p(Jf7(%0C)KmretB-5|VBNZP95`@*g9i_?XU`s%FJGQ>!*?AH zLy_Q3M4+r3U0KD@xRaU2oont5{*f_)v2kv=qJ@v&u#)P^z>I*ONP>9DV3kdF2N_O|u2FZCB0jTKmjbayh;KSbr;Zbp_bnizB=u0rLT|ETSPn2O|e zB#!?`EEC!1`}bVmUlBXRmMXsTiSt;txaQcPJw@^REtV~x&9ddQffbqK{fEOGJTT0m14A6@8lvyu2t$2g zhL4Of*cYaL$8LsKE=pzeikp8moIqJ%8bVo806LoM>jQ@)Zk(h``}bm+?@d0X&p9>a z*rCv6pWJY(|NGlNm6Hcr5Aaov^KL=QksO$}$CeKs$= z@B&Xi{WMoybrnh}2F8=jp9_oU`>3seSNGW@ji$URfK-&xe;`aGoXCyt6E?n)F!g@n zFF(45_guONor!!-zRaFe#q2p%tUIT`odRGd9X|0$56>Qsmo)z>0RH`9;&nkJ;P%8t zDS~5(90DjK+2|k0)$U>hP=#eu=dd)UGUV%s4u2W=$8>u=c>wkPOuz@(8dBg}wvA;w zTzbJGX4RDy{P0z)Rxx+(T>AU_*|~Ek0QbInkbuu^(6U7VE;^@@GtaD|yuJ*r6@j4V zaWDxRH5?{5FwCD_JePaE{Wh+&UFqbHrBJpTR9XYkOa>4He>job z-_J|z6i@o7!ty1qbIOAd@Z~Ho%Md`JE=_NF-9Vbb{ zcI;qiXb5AumL_g1!U;t|{rFmHtB$>| zKT-0wg%tz?Ixjht&G@NQ7SBHz&6M#C$5O#w>C|qqL7$1r=)Ce0^kattORu?Rb9uV0 z8erA+ch!qhYrUP!^uR=Vq{<&p;IlO6te#WyhgVisa_+h3;y4alw{E4j+O5wEemLPC zvy+B{FZW`14|3)DdhYn27xMpo@f^-va$wlQ%{7zuyH~7O zL04B7-QC?(uY^c47yP877$1&t@Y(&m_xw5B{1+>kKfBPSobGb&oHCy1i@L!dWa24n zEP<7DGJ%~Hwb4ljU&7A#|LOYo;@!c*9)pt9z>_cVA>f;k4g$5hBz0N#!H1q8P!w26 zn==;W4)m0gi!Qo|U;XM=I0EAy@WXME65^L4NdaMH84Zf988KWsGqXZ~od`fZltYA(YP}Uc5JJ}u}wMa=I zClByS5XEs&ePNXC88S9*W>K^|r9bJnJ`A7_Hymt1soW(o`6f8uT*Nq1z_8jNJ>*CX-l`~$5K zpYL)2A6k2|I%(}E_mD~@D`a}ht?Q~QSg8-94z^>=7|G-U{3VxP{qf22Du1ev50zb` zXpu~scc%V5KkzFSFcL|)CSo*(TIlww)Tq1i32`mD1oRRBEy(iBw?eiBo+Pta?)Z8v zKK&<_efsjHT(_=*a5&749XqCd{pl<#Q@M;lI6=8b8;{1nPkNp0xHGA>LejB?5@aCa zuI5Tv0OJqT1860(H1iCp9(IK`c=k@B(dDo(O;9@n z{DB;akePIt3JlF)JjWtrRvT%J@%vV5pmOqG0?CRH(S*&u?wP+j&*$^8Y11aO)@<9h zjc7DF( zDa7Yn>;rNvfC41l5tQ^lg|RFWRptEtm0nt#r z_U_%w{{8#0?c8p%Wm!~Kl%YnmKo$T^5kjO*c9C<~1~VKd%^a09D8CPc=@4kc>Jd0}T4BjI>vO4v+9Yt5!jo4D`3`*`ui z7nwJ29@W*8#G}(a}L$TN|-h?%GSG6pf9Iw6?a=($d0f4|cF8JXl1#^9kT4 zhRl%&y0N?@0nA|P`_er$4Q3#UMD3LM_JHgm0s@kHdW=fVQx~nud>{!RXFN7-5x#lz z3O@7W-3%lhcVZ`+(Z*V~Jm1YVmz{A`H?gX!igV66hv%MqjxAfZaP`$!qf_tQI~64o ziLihFe%jmH85|tUIhO{#rKN?ImKMs&vbQsubTU4=_;9Xg*f!xHeNoixvdo;qoa;nz zdLucYDiM-hV=3PNq#qGfKm^=>9wLZO2Yf&>$Ie4)3N)O#pn^L;yN1u-@dmH;M?oOo zRL6Z=I**zF04rCnq^qloo}M0FdF2(>uU~)EbskHxZJX}yZaO+T=;`Tk-&*RC#>PgL zELpP?bK5_`f575hFLPj`2iEj z#TQ@9efQnRtFOMwf&~khHEY&U*LgG|BJ}t7vv==a_U+q8GMW3Z>Dt;_T3T9YZEek& z{ai|-IRx-%J9&X!!bx@6K#~qx`*O?MCZ+x4fNBrLQ+1`Sg5(ha3fw_@-?EesVF08# zZB8V0fzMJ{+P%PUDL()91$^S7dEB>ikjFblczplpF(E*Cc{vwecp;BJ{y1BEn39VrAujOXqZ;Labw6lN62dd$R&W&8_fWe zGaEQnCeb;D7*ZE_Vzv|+Bn4_A5rDklFMAEjhmwKZUV!`QE3)vWJYaFt`q|vHe)hC( z!er9i+)Qh0EA8#=Y~Q|}^Upv3nATrPqR}Xwot<=ccGB0E`@ZLjiVB*Wn`vojVa}Y= z^B^Y@BQTU+#+?`V<(U3(5@$4#1uT`?&5)x%jx&_VT$d?W#MBoO!BZyBJt#qZ%HgmZ z6u5sXwU9G$JYTX*sfopl7t_+xg3mX-nNCxc-f$iP0PnIbr!S5( zlJG?JZXsRnE|`h8jUlmOi5w{G=a(P?OynMHpAx6deMFVJz){j`xYda#0Km0>XP^K8 z6I)3{K~#nf8|dljp|`h}S6_XVwQJW-`C2dN`}Xb2Nz!PoX=-YsrKN@D=4JwcL*jsjED(5xHeqTzcuH+<*W5y!`UZ%$YN1!XV5TLtkGXU0q#tc6R0r zFin)8IT6w}FrJO(A!7+<1^je%jgV1&PqePfEMjeAIAOaus8E>ID@p`P27ej%VB5pK z*YE!L;F;I`s>kEC6h^d zdU`l;-~c^6Jvrtbrr%dT9%2OAh9X%Dfcts&oN5*(e00hYpfFl@#vKok`TchaG`uts zAWN9y?m;I_uj~92zgHsfPFn%D65+_m%%*@H3u$d_<+mOIW&eDK#}Ge|cHkz&K;6XECvNMBzc0|Ns*@W2BF z=hF$AmZRvaA1`^~;80d^jqt&hP5k+J%_v|vlFTvtSw)rNM3^Y6SAqyId7PkaXNOAw zTR)-v?xRlx1ENtP92z*e6E=K4AD3Nr84o=0KxQ6cy06~a+DcQ?l%9utQsjva_X(&~ z!2h~(6=%-Lj&^qSj~4`gUVw6l;2tPKmweaUNTW(= zKL{O%a#NxwLuzVjxa_jaXm4+)rKN?YrluKp4NsK3-XEqvlHk9rp3hBd=i|4se!v)^ zCx1w{1VHH|Rne?oDI&NRP8uiZXxwaiwEvY<2Uv-gpFAa)>m~KTMMSgrC?a4Zy!pHxT=x>O$F2fB4p~IiUy#vv!RZ>!$BtBYB)8>p(8 z+OvY*6ju_q;UDhaO(gDkz#3ypz#b%Jh3QRgcHUzthPIKRhUp}#!|rypX|Ph+erGo z2?9me2Bh|_BO?hr5&l+w`%2FD>VM;b{>By8)+*SDQlKqMMaI$LAsj~-?jL9GYkj=@ zbSJ(0M-UNaFRViOleD+L!IsCKr)}4M8fMi|U2}3KWt?nzao;fC`b|e_&(+dJv&vbL zj4}Fr8#9s(@Cz9c?vcf3uKJdZYvz9y$yx7_noXRrtLCoyOla#&Q1!9Pt)#~|DPbHpx zYb;9Ht9!rp)U#jw+hT2`H;d&fn8RAlHIjWZOnSw6S0yZqooyZPp~pUUhj4{-LZYU0ZlWD9%F zDL{|M3GLjEiYG`m&m}QGwM7FMwk^bi8($y|49R`83VTXR~bmd|Fq}#rBQy$YZ}@bRbIW(j}c6 zFFbGdtj31ZI?>Qr9i*|uV|9Q3hi)>nfk>^z6a|(hv3PFQ-{%E#dLT?$TQ?*f(3<3& zT2EkE{F>n2L+D8Szdii?e=V8HostCrSpA+KY(n&7qAg2Al4{Fu{3PO&f}i$bf+PW7 zdif~=mQT^VqLJn6=hM1+9>Fp{fC&bJug{yiAh~wU>gA_98N3pUCAseXw-Jq|RwjA0 zHNJE{PGgPdxGT!G33T-0Kb%h93HF>i;;l^+#tHsIg9P^;da-f-{PXX=`-YN}I;Onp zqi^>EopY95QwCgw)|LcAMjbw=rU*WOW0d*4LcIe)gJ6s>)Hg=kD~EXDi8tun(?_7p zzo&LqdE@ZNQ0tyI_V{-0-1*wTk>T#DimK}Jin7!9H6p;1TlVqzQyrw^{d83CG}Mq> z-011QD-gkVc$mG^*V#UMUuU}s27|B8oipEFyJpR@*>g@m%kbFm+T9HWLh6~lejkaY z^D>|#g0F8F|A8aun0H#fnf;d}@vet{^IOe&>EuxXhz;`b;{A*kM;V&!=UHw+U+y~TopGf9;R?#8tx7M|f zJ=}lSU3XbSLqi*Z>wz1A*`(aW=|qO!!(l%7(YtXRlM}SXRyAYlD$wB=zP@36hlf$= zhfU@66eQpydiGNH)h|H)IK35)5_+u@W!r6`^5j{MJo2SUXZ22-003uQ`<*76z&26V zLKz+s^WxJ=#7qpnYbM&;V!v4mup)HjVjHtyJs^TpQ-M?ju?EM`QIEFgb?MSQh4{)vsWF0_(|}+NjSsCoMP2;l*3WI5O1ox60D!gc{6DKj>nBjwY^S>eXZI^i0zLwWHs|b(JhB~N0~`Fq zfmweeO8yoI;=M{hiF~Fb`Ply{_WgNe_yEvIiVSmR&ogV*tXVo|-t1H2wIt!OIM?5N zryKl<h4VGwz1e#p2t+_{=uAA4^S;}BnTQOH zv**d0)vH_QHZ`6!GW_KB9sKBL9(Ozu2_W-^7WW*OppW=jt%%>sEo+3pzFz!2sda|J zR&5P#dh*H5Q+}@hQ4s*(tgCK0)3NxSK%>2L2hO1bCBaYabuWy?Tb|^}f<~U!7gr-MWV+v^iU8@IDPnP0w`lp=%Q?|-?Wc88Q9k(bUlK`a ze~x&GP$ZM55KxNf+7?W8S?06?^jM7G?gQvZEPcGs_9f4L?uq}}GoAJwH30zDzw4Hz z;@FQEZ7ojjdI{%HS1It_Pov(~k@(HMrRrP4Wi=9z%Z-vNl&JNH{HQbe#4Xcp*92sE zrM{-oUblYD@&${Ujw>0y{_UrE_|Z1cjn3<{Pht)1=0*~WW@o{7j5~LrXTY7Y<(@D~ zSEi@3+db&Plwn6Z^p4qTr`ugx__iW$A-(b}p1cUEQ?r$g2u{*bWm$Plwb|fBq z^;mxYRAmA(?5(ez6<)h`eQR^e{G*!Pl1Mmw@(T~pv45x_V>cCRAZ0;fXDvZR;`sW8 zvHFJ536Iy5%=JHd=BdB>*i74bObL*db(j3(7YJ2+(-|JrvDg2A*vb5UJ|MSr#2@{O zRsy?!Q{rZ-cA~D0k z-Y}o~;zJCNq#sZ<3D7f$4S=o0gI66b_;8#Fkd~Dz|MK!cP3_MGH9OL_6DJ%dWd(+H zg2f#?HuKkzoB%0B2CenJ>Z-cvx^-tQKBIL}`Di%Kr@r(s-3L=YCof@hjI6;Eb|CrQ z=N~RUzCT?#Ap}Uv>eZk7tgou(eX(Q z^2i`qoxge3Kl@O>T`^;zC$R=v@ z2w_kkdG@hS-g7+Ke^Lo>y33~PzgroJmfr_l3Y1Rmih2@c)0C`1E(u-{qd&0iu}|ze zKEI&I;?Or`YO>*)+h;{$6_1bxA4o66bhiPeL|`+DPC zH08W^|K#H+{WMA~%4#mznYjSS4olQqlvXb)CEv@g*GrczY7Jt*<~ki+f1<#LY0e4! zQnSkGn5dfV9c>JkM_&__}j2@z1e_vOp+cwgEL6xINRsGb9ik1wZxq z?aj|T@Tsm7{kz^Iz!YS|wLgDbG8y|mO0~M!xf3)q>aSEn!EKh|AD;X5pZ9FM{;o1B zI(`qZI_>Kv9U!Lvxq0IIL4S4I!ynywQhpe3#sCw_hU@RD!H#`Hp+26q*;(Kf457Hi zX!V`#_kQRQz=msXE!PsfUnwqgix;GFMTvS;wAuW^uRr$O3H&)lk@D`?}lC*G9eztOfbKGU_p9nTKEa)y>0002>0mku*_5c6?8FWQhbW?9;ba!ELWdL_~cP?peYja~^ zaAhuUa%Y?FJQ@H10})9?K~y-6byG`dRA(4H|Kr{}kIZN$nMtNjGEI@8CKE%X);1`$ zRBFjW`=Eu|MMVmQE(-3%y&!@Mp%2hwR;MLEs9~OW8v(I+;v}?)xz9lZ-IKy5HaxYV>xgf$HGrEyH$MzURB?^=k98sZHLBnmJYfK_csNp%|L#Cj?J zP$`$oVPRomwW--`qF5}VP$0u3XTH4QUEU$|;X9-x(cB0sttbNT<^%6bb-< zbUKax{(b}`RI?YZ?m2&Ua^~{X%(C$88)m7Je5$8A#Mr|x)H%hEr!Qf}V<5f+v&5fQ z#@>C00l@Oz3%@11M@-Lghvy0pUcNRyKbGBLoV<0Tc=M0hxmbC{>}(1>bmoVmB9Sr^V6i5MjT)m7G3qyi#t&*VF@{Kt2?n`*=ar&MRwBa_F*|;J+fs9~ zJOCgQ1(t3)^FH(WKQN6f;dx4}G>4Vuu##MANn=zu%|52c=5u@2{_&r{)vLdG&>fz( zwP1c_ot3d~z*0A$W|D(iCM2a0OaY`sFgB3YVN?0)i)V3iQgQN_E5)ev383k1th^~Sc2CFOe1%ck~eFw(Cbt}JZ%oP-W0WU*A zsUI1`0Q!4TpiDs`VZpW}80XMaDX5MO;q!vJ6fj)@bE{B1D&SU;CfcI8zQsp-dRng2 zHEVV;+aLUzx(MD|QUJyU{1=X6nf(<;NAs{V9I9zTHBD%y3E$u#in^~s_3I!(7er74 z_c8En4)AEmmKC=E024KD1zgmAn^<|%Z92G$U?VTN9MIElDJlDn#B6XIt&l@qG7QICyoOj zuPQ@DnQyGIGfI7UVp+x5x^>vXn!~-&`jXH&2lW6wohR8`Kw z(3K2!Zm7BqI-cr^T$q~Y@MbNj9si+SiMskx^(~0?kXHG6yW3gN$X7*L61~km9-dA+!%<002Ip50+)YH1B@3hGC$i zqXTViZP0Zc?tlxbTSCcm(3A-|n1iGQLf4q0F&STZ|1^K3{NJlrR8*j~wG}lrH82bV z(P$Jx2!z97L?RIYfCP}lRba$~a0Eoc1|$I#1}UVZO5Qp@IFgfhp028@3T-WAVPx92(1uV5bD~X#uHFNQFTv3`_`%icI#WW2diW?gYDBF4Wi8qqMXX zgxo!=$^vf8n>iIyVIV?|L7^~^ymOKH?``Ppi)Eilwx22C+(Ox`>7bNO+Ps_ktfdRF z&VGqpugv(hs|VvahI`w&v+%+ym_-fV@-MCx8KP}$+Y7mj-W)yG?B9T z#NpR=-}FuRHBF>>Pj9Pdf@~#H{zZg%l1Lns(s}3f{#SZ$_5Ck!ebe`|rJb)MBHvCV kX%LeBdT#H!E8}_p0d09M-LYhw`~Uy|07*qoM6N<$g8eah*#H0l literal 0 HcmV?d00001 diff --git a/logo/thunderbird/mailicon24.png b/logo/thunderbird/mailicon24.png new file mode 100644 index 0000000000000000000000000000000000000000..5afa52eb4e081b80ca88a74544567853fcefc4bf GIT binary patch literal 1514 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 literal 0 HcmV?d00001 diff --git a/logo/thunderbird/mailicon32.png b/logo/thunderbird/mailicon32.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a2837376e71d8cd016d32e415b1ee22e47b2e5 GIT binary patch literal 2230 zcmV;n2ub&eP)csw(AJ*Ph=2?;nPmUuOz@6OEmzUMt>&UbaLU>dsipS>-5XkddsJobc&#k>Bu zab-B2{HY|)XV8jQj1?dF=-x0taa)ibkWqX_RahwJeB%_tQV>M0KcUM(w~lzh3X9Jj ze(Glb3p3Dh*JJgy9T#mUo@@`x0f840lmh}cBy>Z9a!BBYXg5HGK9(04rK3sd`S;Dd zwCVnHtrTBfO%IJL#iJE6LYS}AYvAw8{)emWiLP(O_UEQ4i|`|`gHm!XeEfs zOA3V6G}R7`LYQiYR6~l; z4Hz%var2|p`#x2nqA(E1Gq&m{z4_G5OroNQvTyJ&y@PFuxg5_Gxp;=) z8!H;oK}cVJp1$5O2Kq}BOMbLwL4{Br$blF2e7<9RwR6ddfGLAJDzhLX>gyIZ+*N&RPcJrG5j{@&yC z_2lU99^s*~OMg0zCfoA1L?2G@s{=Wb$MWcE8`}nHfmA0A z7$h;GnDb)`VP9p0q&fkKxDCL{i!=QCr4gREbs-67ie5j5md;9G2~9i<5QPvK7f1!t zszf!EM<#5dxU*JjXh8_v({2fi=FH^2WfHeEF>N@&g0w|Lb`mQtuwqnVTwoDm#es1b z@@0agGgk^h6M&m^7#%NvVq(!E-hcmnq9~dcJeSL{ud@@|cd?ukV5ee2j+ap-4-*-5 z-bberDTy($`Xr@AO=Y?dWUmS80nRvav8 zP+^26BBH!U*k1%CF-j8IN?Ahdd`;4-dS*i#*(cj3l}bA*|KGb&*{rIKOW=inJESeB}P@5sH71} zR=~!9Fcl-1qPXa$Ez3Qp`jx$#za^6K>9^ce3bjEBSo6DADYyZgm^J1E*cdQi4R?h6hKOzhKU^&AdBU1OeG?2XKdrxQph1t*~+hbSe%) z63dP}wCCkJUr+!eT~9?V7q0G%(zRE5J>9diAB}QoZ+C9r>qpF<-TOrD_;Ba&z=+-4 z(v*rh_Bl_|_30S%s$*<)Q{x7hE#y`ktN-y5Bi)#OgaXm}+WnOgT>MtY)_U z>oEHd4nh&;-e_#7N~3S@cCY-~ z!uYOh0x7zVm9}RAHf`E8*S6y~O4Qo=nGJ2rmR~umdPe$Gt>Y6e-~GW>N<|N048~UY z7c^t{kD|sWf4Xbuj~+NVcFGyFwf%gJKR&X_&t)gO%iG$4vv$bl&70>KBX1H$-B3TX zq3x>WS2W!FK&ROIR{tk$2MDb(M&G~tu~8FGm(G#-Td=CXB~H% z9(?fO1+N^4Jvx-*>k=ZPwK{RCeRchl>7-ZwhcIR>hNp$r zt1zZk7;{h~yK@9Pqwx7!FgAYhFV%tMGSBjhb_UeR~S+2HU6 ztU%lPCo^`WYpcc@-!4=Q)Cd(`XQF8D{^xHydOrF82jaZpq?5ejYXATM07*qoM6N<$ Ef*O)EoB#j- literal 0 HcmV?d00001 diff --git a/logo/thunderbird/mailicon48.png b/logo/thunderbird/mailicon48.png new file mode 100644 index 0000000000000000000000000000000000000000..f3fe3ee834db66dec38f0b5310af9d39218e320f GIT binary patch literal 3781 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 literal 0 HcmV?d00001 diff --git a/logo/thunderbird/mailicon512.png b/logo/thunderbird/mailicon512.png new file mode 100644 index 0000000000000000000000000000000000000000..cff71b60fed6c2c551110cbd25486f46b26cc9b3 GIT binary patch literal 75482 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 B9ozr_ literal 0 HcmV?d00001 diff --git a/logo/thunderbird/mailicon64.png b/logo/thunderbird/mailicon64.png new file mode 100644 index 0000000000000000000000000000000000000000..01d41ada298e3b99c2c4806ff0cba02190baa4fe GIT binary patch literal 5506 zcmV-|6@BW7P)emZ^XcHP@m_5J>q`u*yT6qj2>)Rup2S|f?R4SIO+ zKVJBQ51+d1bDoE&%Qf(wPaZ8D8H)X`%LZR`XU_CVSIYxI&DF>Ku2b2U{``)f%Qf%$ z%4H#7>%TPLXG8a0mrNIg@4l^FY1MDJ(#roMsbSxi%>IrfM;2I1q4i?U1!3RHB5JJ-9WE1Mg$UFP zp!3(0`joY38=^yt5{IDr(CT?rT=uPF58ra|Qmq*-5dj-M^MgAoKeFLbRaj7#2Rbci zJ0s}PK0=GO5pZXGoY52J@-yj_3B&J(zW)~|e{}oM#jgFL2v~FH_wGcQZ&cl~W@Ef& z_5>gW-#?6}?moQZ6EB?i5a%Mx zKmE_OhLCKUw~ne_bP}XGG~5Q5sMb&nu^T-GUkYJ`5e9a|BNC5els^G@K