{ stdenv, lib, buildMozillaMach, callPackage, fetchurl, fetchpatch, nixosTests, icu, fetchpatch2 }: rec { thunderbird = thunderbird-115; thunderbird-102 = (buildMozillaMach rec { pname = "thunderbird"; version = "102.14.0"; application = "comm/mail"; applicationName = "Mozilla Thunderbird"; binaryName = pname; src = fetchurl { url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz"; sha512 = "4ae3f216833aec55421f827d55bc1b5fc2f0ad4fefecb27724a5be3318c351df24d30a4897b924e733ed2e3995be284b6d135049d46001143fb1c961fefc1830"; }; extraPatches = [ # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`. ./no-buildconfig.patch ]; meta = with lib; { changelog = "https://www.thunderbird.net/en-US/thunderbird/${version}/releasenotes/"; description = "A full-featured e-mail client"; homepage = "https://thunderbird.net/"; maintainers = with maintainers; [ eelco lovesegfault pierron vcunat ]; platforms = platforms.unix; badPlatforms = platforms.darwin; broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory". # not in `badPlatforms` because cross-compilation on 64-bit machine might work. license = licenses.mpl20; }; updateScript = callPackage ./update.nix { attrPath = "thunderbird-unwrapped"; versionPrefix = "102"; }; }).override { geolocationSupport = false; webrtcSupport = false; pgoSupport = false; # console.warn: feeds: "downloadFeed: network connection unavailable" }; thunderbird-115 = (buildMozillaMach rec { pname = "thunderbird"; version = "115.1.1"; application = "comm/mail"; applicationName = "Mozilla Thunderbird"; binaryName = pname; src = fetchurl { url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz"; sha512 = "26f69dded43bd24ffce9acb0de204bef8c10c8df3cb82b33594d035e41179cb7450cb7c10470bfc92a933c1d801fb968049ea8a17d838d16de9973f5dddff9fc"; }; extraPatches = [ # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`. ./no-buildconfig-115.patch ]; meta = with lib; { changelog = "https://www.thunderbird.net/en-US/thunderbird/${version}/releasenotes/"; description = "A full-featured e-mail client"; homepage = "https://thunderbird.net/"; maintainers = with maintainers; [ eelco lovesegfault pierron vcunat ]; platforms = platforms.unix; badPlatforms = platforms.darwin; broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory". # not in `badPlatforms` because cross-compilation on 64-bit machine might work. license = licenses.mpl20; }; updateScript = callPackage ./update.nix { attrPath = "thunderbird-unwrapped"; versionPrefix = "115"; }; }).override { geolocationSupport = false; webrtcSupport = false; pgoSupport = false; # console.warn: feeds: "downloadFeed: network connection unavailable" icu = icu.overrideAttrs (attrs: { # standardize vtzone output # Work around ICU-22132 https://unicode-org.atlassian.net/browse/ICU-22132 # https://bugzilla.mozilla.org/show_bug.cgi?id=1790071 patches = attrs.patches ++ [(fetchpatch2 { url = "https://hg.mozilla.org/mozilla-central/raw-file/fb8582f80c558000436922fb37572adcd4efeafc/intl/icu-patches/bug-1790071-ICU-22132-standardize-vtzone-output.diff"; stripLen = 3; hash = "sha256-MGNnWix+kDNtLuACrrONDNcFxzjlUcLhesxwVZFzPAM="; })]; }); }; }