From fb1e99c1c92066ce2b7d9e5b5c3c5ff143511669 Mon Sep 17 00:00:00 2001 From: Thomas Deutschmann Date: Tue, 23 Feb 2021 22:34:55 +0100 Subject: mail-client/thunderbird: bump to v78.8.0 Package-Manager: Portage-3.0.15, Repoman-3.0.2 Signed-off-by: Thomas Deutschmann --- mail-client/thunderbird/Manifest | 66 ++ mail-client/thunderbird/thunderbird-78.8.0.ebuild | 1108 +++++++++++++++++++++ 2 files changed, 1174 insertions(+) create mode 100644 mail-client/thunderbird/thunderbird-78.8.0.ebuild (limited to 'mail-client') diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index d31cad2eef56..9249b115bec3 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,4 +1,5 @@ DIST firefox-78esr-patches-09.tar.xz 67480 BLAKE2B dde764add31a755765df996aeb50bc647881f9956c9b18c87ccc1c79325ec6f4c3a7ae3a8be1a64c5d80a9aece90d05697a8920912a7a37fd62d62bf2e03a536 SHA512 aa0eb6183ead7efe231ecb2922f22d5028a9edb656e65bfebfbb175af868f8c8ae05668e4bc2a982befcd04698cca43d3abb5b261aa2931bc7d8c7808a8495f4 +DIST firefox-78esr-patches-10.tar.xz 66396 BLAKE2B c29b723e47c58b10885b220080568aba751e1b73c58e28fce62a2da4c4c3ba8c71b63e60448d17599a3df4446dbd9f9387b4b2b75da5ed1e545591aafe8ec83c SHA512 6bb9caf1f6867b894ab315a73f8ae6f381b5c80c90539f38e786ee653c72c0df055aade854faa23f22cab2253f54abaf918a756945b76ed88f5a224ba8a8f12f DIST thunderbird-78.7.1-af.xpi 548331 BLAKE2B cce90f640602a186d4ff62ca183bf324d0f0a7f439932c12b20422ed19c1c810017317e7f35ab84eb45f0fcea08e2a227c24aa8a90c4dd313b415e98eaeffee6 SHA512 65937e5eb081588e9297cc4cb1f273248b83d50f1d4f41b460943ffba316bb05f8d369271718fd568ce110c5aeb4af081943a30465ea2d916d83a65c9fc4376b DIST thunderbird-78.7.1-ar.xpi 648602 BLAKE2B c2f8a333b25b271794194e98036d5b7bb9c33b3e126a5c13f0e9b1a11afd1ce5e443c01ba1425201376b17158fe72e8550410db08da25a174ad49a4e3c47e22f SHA512 34a430b789c0032b5f093d206ac3cfb7b63c59d0e08fd439f0793790475eb1691932b8babac5a067d48c381e497127e9d11f9abdecd8e70f953320142403f539 DIST thunderbird-78.7.1-ast.xpi 561255 BLAKE2B 72a927b2b7914cd30bdf5fd787c9c73bbc7b31c496b3980b07db0d7945df33ecd53fdd21e8742f48bbdd906c4ea7d03f2c95d599bf2345be37cf8ae424e90f8f SHA512 dfe810e362fa0947d4a44445f491b0899def9e9da463f39af4335634dc843172a3a296a49dc0d13e5d8a25fce6acb608b7ab82b8a32236eb52815a05372231af @@ -64,3 +65,68 @@ DIST thunderbird-78.7.1-vi.xpi 674614 BLAKE2B 50c7c2280b2e804813286f32752196db4f DIST thunderbird-78.7.1-zh-CN.xpi 687176 BLAKE2B 0848a228e62a77160f8667c6fa0baffa03c039ddf165421e88f49e736859499874e57cc7978956e5f0da7ae383fb5d31ca25b0d2f84464e3dda9c414ba731963 SHA512 abf954d65768e9598534232d74da8ea44bf9491453d71bf17ad64a4deacb3572985abbca16bfb9047b64f3b2e33f379a6ee50a29eb470006f8f442bb05d6a597 DIST thunderbird-78.7.1-zh-TW.xpi 687622 BLAKE2B e9ba2b698c944c33d080e7522bffce093b74494b480ccfe0df9942b93b7ad16347a65e9bdccc5b67953dae032310c70c6bac5f192b5d44dfeaedc707318ba79a SHA512 871fe27f95cc17e29145039f52d4fbbb126d231a7bdd27fcb11a2e5d1925631a708e49c3fa8c8d08f0f2fee838f3ca929c1e7619761d0444843f8c8d47611c7a DIST thunderbird-78.7.1.source.tar.xz 361610852 BLAKE2B 71b6ec2aa5e99d8c5114f66ff670d2930f246c57c461cddcc6c61b4beb8c629d5269197de62fe10cb0bde1be796312e4cc316b63e5c75d28cb9e6bbe9298dbbd SHA512 fe5635eda67ea356cc83e8e5ced4ca3c4555a964192c3e77fa0095a26a8e7366c6520604283bb9f3a5f529fee18baf54ca169bdcb7b402bd3752157b95848bc4 +DIST thunderbird-78.8.0-af.xpi 548342 BLAKE2B 4165c5723013c15bab04013dc316f6c7574acdbdcac676d9971b35d6eadd13ed0cbeb2d4425faaa0d0b73b543920c7a2b4d569bc8ebc5f3502030dd85950c3f4 SHA512 6919ddf5549197a398a75ea9ec0e8074bd521772e9b1a0977f9322e4967fcf4db09ea708e07c73badd3ffddf351443719d0010b80edaead75cb3b75f8eb1b0a7 +DIST thunderbird-78.8.0-ar.xpi 648607 BLAKE2B aa6a845c9fee67edde83c77864bcefd4987d6e0de7bbe74dd393d04a29b3ab13d1063c5c05700e8f9aec4ed272d2dbc75c0b90977fa92047cef1abedf7cfac7f SHA512 6a607ca466ba05bbe439b3188a470782e3f5bdd1346c4d24eafd7ca7127c4f456d26de006208affda019a010e4290e1e6940943764ee03af6b4c0933153601ae +DIST thunderbird-78.8.0-ast.xpi 561254 BLAKE2B 86b08175ae6aff2d3c32068cda3a814d6a7a004032f9998b5876a0c6c75ca619effd7c4b647d5dc92110f82da4c78e86dc38dfc180353a2eca5ba5119029ae8e SHA512 009df4311c18d408211bbd40179cc566dc248a9ff38eeabf7373b8a5551493c92486aeee114a09ca831f759e1ba321b56ce370f7f4be7eed82f0e90e6af5e449 +DIST thunderbird-78.8.0-be.xpi 666671 BLAKE2B 6f7d5d82f1e596678e0a2341e2be5ab53ac12fcbca51187ed27f9736bf19b606e09fb2d4f54630863e942e549e9499da8fcc01d8ab2fa1e50aedda347e2f24a2 SHA512 c3b4f7a251b558f5cd3925f99d47e03372ab2512ab538c98451866a58c8c0460230316079699ddecfd0e725f09a6cc0765d4194f5751da80814587bbe04bdecb +DIST thunderbird-78.8.0-bg.xpi 672415 BLAKE2B 9d750e1fbc1bef06c645e79ca6588e428eae3a5c5d35e9d5a7b7df967faa7596a7332e52c251779b2d4768ea8c8dbdfa22dc021b63d5beb1d2adbf6b551bfee1 SHA512 58468edfcda578fc9b262524d38f31857d59411a4e63a608c5db517bfa9bd7b7bb20261ee25647ac74f5b48bc18c9ff542c8715323d59a63b2f01a0245e43647 +DIST thunderbird-78.8.0-br.xpi 604536 BLAKE2B a33c63a80b534e48f5cf38205b3711673a02b3de2163413b99d652cc048b9ee9726192d67a53636343bf2e1f80e6b7e9bbc8f37bda0fb00e994ae64556037b8b SHA512 f28ca741d5860347964388fcbdab173223ef56766c37051dfc05ccde0f1e77184d57fb41dced3636967f895ef1f92119b99982cb37f2e991ae833ff5de00a169 +DIST thunderbird-78.8.0-ca.xpi 620451 BLAKE2B c32b0469dccc4cae5bb4bcd3ced1a503df8cec0ef750bef6c6d11057b9549e327a93bdeaf293d0fb06a00e3b8cfa8c8bd2e02f5d464f2c1d6eb482e23d899537 SHA512 60fb3eb0e0e24c5a52ea5b3203fe1a2c83920579607cdffa5054e6a8d861e8963598ff23c24fb7e0fb5febf997e9b79126046b0413a01b5fc067547cffd64879 +DIST thunderbird-78.8.0-cak.xpi 635653 BLAKE2B ce92ac946377fb7144e50dfc170946360d673bf29095a7be4aff0dded75f34307c25679750b7ec766a98711e0f07ca681556026c99b073b51094a4ed362d527f SHA512 64e8d64f9729dedc63eb5a140237f060e5a4a37fad6fe1c71d5d04738dcead20ab44690c6cf12b1bcdca31a3a7ab2f6f06c4985ac3cd7e9356fb5c0370200f4c +DIST thunderbird-78.8.0-cs.xpi 635349 BLAKE2B ead7ef55525a86804386ee118eb6f40dc850d3f83d9f70534b7841510a80b6eaf3ac3c8c306852bd610207c9f71409b3a085f2e173edd9a47ac49e627f78aea1 SHA512 3ba9a8ad0ad92c1f95f60fecbc5b06e9b4afc8e5862c19c5d7204a014b689e9022b05f7f25e7bea76a12bb53bc35fb2daeb0bafff248002490193e5a96091155 +DIST thunderbird-78.8.0-cy.xpi 646245 BLAKE2B 3bf8ae9c19903c49618ea9837f00a35ac61ca76c3b1b6d63544bc86e5d5fdf913646fde3fc2fadd12da373ad388bdf9527a2334d6ffccf73a776ffb97ae2d49f SHA512 e2859b10dd6a21cd534ed066cbf45f73b020624c0822ffe7c00a9bd38fced0f1e0d6684e907c855475e68d031934346d8c79a4280f91141b4bc6a6c3684b0f88 +DIST thunderbird-78.8.0-da.xpi 620998 BLAKE2B ad2d11535c67bb990da63b8c34bec78afb9ff2dea92f3fb82628b34c5cb144925d8f977937489a5c8bdbc3ed118ef26e8a9efd6bc866f694f22cd0147041f1ee SHA512 5df2c6e9d88554a120613839d07d13c7d181dcab4cb45941122ebae16311f810ff82e99464124a5de672c41a1dc99fe89a54da425ceaf3df0053e340049ace4a +DIST thunderbird-78.8.0-de.xpi 665187 BLAKE2B 5f4326eee7d7b566d273e62dc8924f20d6ff515d49523552ef3dd982cf1b2c6646844785bd56bced0df65a3149c2c349d54067106f6d0c85b315698c4afb17d6 SHA512 7178f9d97fabc04d46e6c1b0857709ce88720f44e316868799e92e6c96a7186a5c978635f72f63cc5568b356a03b85a9e4bc4067eccef9bccc8a1e6ef4d61517 +DIST thunderbird-78.8.0-dsb.xpi 666773 BLAKE2B c8348d6df73e4d60bd4df2f71052862cda7b25684efd2b3a658e98015423546b5a2762e8f6c16e40960b29e6742390394a6223c939f105a34012f0a29d15a8ee SHA512 2b1eabf4fd17d1b99acad9fc0741093dc4d79fd94fab023868aa8f61d9e7dd92b53d2a963754584d2d4cf0ab95a167292cd4cf8a3d50d724f5ba4513c2564334 +DIST thunderbird-78.8.0-el.xpi 774460 BLAKE2B d9830af62f3e07e4655ccb4efe7eecb1dcd512cb2b12169b1a40388d1cb65a387cbf69d23f0c29c1764b9478fe427373665af7056d544302af6c1016d8ea789f SHA512 9753aca2e05439818e5d45a6bcbc64c48f3342a3ca7414378fd8edd72304637404b29581833ced3320640b8cb6bf66f5410a090f76df331cd56beac013c99a9f +DIST thunderbird-78.8.0-en-CA.xpi 611769 BLAKE2B 88f182b41a461f19cedc03c3dbe54637e50bb08c34fc78c10aa680ec8b7cb97fd721b8758edbf49c3be0dfc8fd4784452864010a296d7cd9a1ffc9045fe06ce4 SHA512 cbfffc53c1b5fd4fce0037aca6ad8d795e997ed260583dc2794428da89dc43cb4a73e1ff04567b902266603421ad52e2d82e9ad3bd8b702f938d2db1b7532abf +DIST thunderbird-78.8.0-en-GB.xpi 611186 BLAKE2B 170d4dfe3ed46b2ca6e912ee4bd4ebb297486104f4b9db4f7720ae2a44ab74a18b556e9b6a4212bb7e386b0cf7b7c73b8630d1be3ffff1acc1f8dc55c452d322 SHA512 ee301f1dbdc7c687b6825e7636121c583a6410465bef77965b3230638a4584dd45caa75b938d001a2b378a58a965e324912637fecb06a96b841aa0f11897899f +DIST thunderbird-78.8.0-es-AR.xpi 657788 BLAKE2B 2c58fcc67575130a21f3c863247e300f79f675737857dbe2f48510bc37e9d2f982c8d93972b86087aaeb59a3b9e64e62e871a8f37f6e6e45f123e593f3b56444 SHA512 977a2dfbe08e86b5b15c5165d77a0c8b4218fd3a77c7c26b9d6ed60422ca2467e661b0fbb9a5e7fb0e791fb2e6c58743a2a540bd10b0efe077cd3f2a24f3c515 +DIST thunderbird-78.8.0-es-ES.xpi 569795 BLAKE2B a383ded35dab81b3777cc2431455df3b680110a4769d638aeef8d42f38744965a5c51d04ec9d9d56cfae5e7bfffdb92630e9159dadbc102cfb41a594ca6dd83a SHA512 24e84d2b01313466235fc0979b8d2547a453d4fbb5db42c606c3e95241a1e0047aee7e130f5095ab57a71a3f581c3bb312aac8a92c7dfe0b4f8b89d1072eda75 +DIST thunderbird-78.8.0-et.xpi 597734 BLAKE2B e14bb1b238e3f1d6e83a1b2cab5b8d4e7c72dc9d134128a190feeb9d8d1bd30aaa543f9613a93dc164fd54e31eaad53700e777fc21f98cf58dc26ac2d97360f4 SHA512 9cb6647db768f9693e93b9dc81f2fcc13c87465dc713661ef26f0e238bc7d61fd393749e26e85aff434fb5de253f8435cb81ade6637456cfc6a5cf52ad362522 +DIST thunderbird-78.8.0-eu.xpi 632966 BLAKE2B 181574e2029b48b613877c306a0802fd90e040b73e93a6cfa1ce1cdb38008ac4a598350ae1fbde9e5bd075f7f70e8269003c1f37f31f8ca9c62c35fabcea1068 SHA512 f00eda0202e562e64e0432978d2b0ab778189d28288c0e7afbe91a9e12d084b0b0e3c8b19ec329ab0112155713c67876fe9d81a9218e537d8e751b59a57af9b1 +DIST thunderbird-78.8.0-fa.xpi 639752 BLAKE2B 2641ae1d68498c9ea3f35917ce961d83f8248e320da3d4737f316f1338c548cc10384303095c7ddf6e16e8b67538e0b535394bb4cf879cbddee9cda6031ee0b5 SHA512 48c807a6ac991434a425122d41c8aaf0eefe184949c9113268a9d2cb872f1d6afdd189e48b04f1bf172a61f9ea0eef258396fea8621afa5fc99a74079afeacfb +DIST thunderbird-78.8.0-fi.xpi 642446 BLAKE2B 9021bf414f4456c4bf31100fa9971c1d86ddbeafdda00afed720168e26259e8fc3662a01f6768e3e03dc11c35bd128c36aecf1ad3d62b910079df1ea1096063a SHA512 c1cccb2c151496009e19e11003f0ecb9b790a8d38eee729665ee5f0a60e8301a42187a6b7d6994cb01f429d282d4eaea8f8456898eb3ed02b35456e9aa029e80 +DIST thunderbird-78.8.0-fr.xpi 669487 BLAKE2B e3fe0ff95281e34809deee629ba2c4b373a51283da037a62b214f7168d2222166140b36a770cd77554c594240940eee0f297a40bd0f601bdba558477b168f98a SHA512 1db2d3a5315ef3354d62e0d3137f6c3a67686379b57d77db37c9528e9d7be2769fb0fec69923de792cd1c2e6f9d2021d18ab335bdb175f12b46dba4d761f29bf +DIST thunderbird-78.8.0-fy-NL.xpi 653081 BLAKE2B e9f6970daa8443ce773d4f6cb1034ac80fbcaa26459d7b5462dfe55fb2f641ac5972e0170f066b1c6f274be3fc31de4c3dc6fccec5093d884be9eb294fb34f25 SHA512 be36ab1dc00f94924671aa208e5d0ce9026c207a905943e6858de8c3d1e5c3f3cca17090e43371802069079e05eba7d3d1fdd1a076d3f998959fbc1fe33a97fe +DIST thunderbird-78.8.0-ga-IE.xpi 600699 BLAKE2B be75208495a5e984a5ca52d044be90ed08594f03f24c8aef2ff518907e7f8a1d5efff472664a45cd40bb75c209f02bf1c9b70454441160ad521ff0bd09a6b88b SHA512 f3ca1e2a43f67b30ece5ca766c6446a09ca840be153677947a0648365a36d863e2b6f9696856a8a0be489c3162c80f61b9e47984c6f139f9dd19841af2b14ccc +DIST thunderbird-78.8.0-gd.xpi 609386 BLAKE2B deff30da088dcf3e8f001ac8b7c734aceba8cfb86f4ccf53887a0dd6ad4da6ab600eff9b0e6d276ced2f69e47b02463cda9a751c48cfc78de2c7d27e1d65d873 SHA512 7c1f1f955dbe7c93179e5cb0d4868af1c99947202e886016d74018aee79d29fe93a1fceba7bc14de2ccc354532f9a7b0bc27554041cd78a4bc064ba2ea5993c6 +DIST thunderbird-78.8.0-gl.xpi 615725 BLAKE2B feef84503450168170ddfe839fb21e24ee28004495c60591f55da021274c2db6d5871760fd2df46e99def462191c9a60cb565d0def417a57a3af78d8165b6271 SHA512 2703e48c68aaf84c7da1c71f59784e9df8cd0986da9e3174e968e41300acd51ba28adac97e293eef2f41c32fc7818037bb0e6df7ac9ef9a6e502cc1400107df2 +DIST thunderbird-78.8.0-he.xpi 640504 BLAKE2B 017cda134569d13b0e0200f0a63fef92925f6e37c465cdcecf5203b3e6994eb0ae4187fac66f538b8956db1fd6d1be824a76ce1ccde401394be7f82a0b8c5ade SHA512 84e4695b4d68b4adfb39a6937857473cbb03385f7508cd3644888ec27c9508e4a7fb370d80731ba319187dfaf0af62e46030c36b872dcca7995abfdd2caf188b +DIST thunderbird-78.8.0-hr.xpi 629030 BLAKE2B 3816d4da01efde04b61912113b1c306c129a2b990788d64daaf2c16ee962fe88da4826c4396dd2414134e171f89458e283e09511c068da739053c4ea5bd0d4bb SHA512 09e7c9d85e59c0bb4a4c4e767fd240bf28a0271c4146bc1a77bb77fb5b23307fea046c711c1039e9914944f62287b2be749a2c2e1e1632b6726e6d8dbca6192d +DIST thunderbird-78.8.0-hsb.xpi 668598 BLAKE2B 051f0348d5f5c61ed0c2b256fc3877cbe9ed66053a085aaa8e61fb7f81ef5ad9b3ec1f254b3e52d965fd0e2e60c5305da84c7d661e303eea0b2ddd34cf461c74 SHA512 04893aea2509b5d36283700a028e85399a25543308f70cae30d0023bdf580b3bba1aca47a042170029cb670d3ac16d5b4a48aeef7c29080a4c1c8e68050d74d8 +DIST thunderbird-78.8.0-hu.xpi 679835 BLAKE2B c66d7819ac1a878fddc35864472181be7b3b25718c13b9b9db8d075e3c234e224414ec3c1cc5028cf3f0f9ac8eaae142af61cae01b286df2607b5df3e6e42c76 SHA512 b79e5658913c27628ea94a3c8b0d52aa17dcb9009afeaf138dafd4d70945ff90c466666676f634c9f4c5808dfc71587ef72628e576b1d6389e6bd576130d41a3 +DIST thunderbird-78.8.0-hy-AM.xpi 713331 BLAKE2B 84f0385c330658fe89adc14e5a33b1298ddce4cb03ce2d79207f9165b9e9b2de8bd659c142f207f0d383bb24d8f6d258679149850501384305153ba2bfac1bab SHA512 779b0fd7be93ae028d3af8dfc1b90852fdd39eed6beaeedfef7608dd9b7d020e692939d441b0c59fec5f3cfceefacd36e2aaf0fd7b10084df97ce5630d59e069 +DIST thunderbird-78.8.0-id.xpi 620677 BLAKE2B 473a0ee4ffc941bde1ef51d3d604bcf34926b7134a638ff2a1b5352e72ae6dd4d6d3af2def8913d69ff668615eaaacd5afccccd8ed7f92f746fb9540128c7feb SHA512 e1416db889b9be0c023b4578cdba75adcbf9d4b88b29f6e00d5647c09aeaf1ab1afdcbd88f2fe2e3151454452b4077011e20fc5517d3ca528f36b2cfdfa67ca0 +DIST thunderbird-78.8.0-is.xpi 581648 BLAKE2B f436e88f7fd4aa3a45796dd31a26e8e356dc64f274b8b47fd96629c9a117fa30e0532180b895c15d434ca7472d10b05174e18bffd692314545515afa96e419c7 SHA512 6c4e2c9ee83130b64b150e85446df8b979af5984630de3a32e0f11f5a39cead50068a532c5a5971ee93ee9242190c176bf2ca4ae81d48d140e4fbef37bcd7a41 +DIST thunderbird-78.8.0-it.xpi 572965 BLAKE2B bd14e0ea976377cadeefb826843805481ccba23f5c287ec11190b0dcccd5a08fa6c859be4b105d5a5a56152a142ff9ef33d763996276ac5a51c7d686c43dcf62 SHA512 22024982614c700e1fe7ef048b83859e099d40499b57559758a03a8ea116dd36c1ab9820fa7ef550558c09f9558515b12dbe786f3d7b6d27a3ec077b8fee4d4e +DIST thunderbird-78.8.0-ja.xpi 722454 BLAKE2B fe11bc934e89893e7f352fdfacec5b330b0bacfafded38d4574e96e1762a5a9ed9caec370fc1ea805d30d7a236b9927840a3b331dd86d506676daaef0a581816 SHA512 92f2590362935cada2769cb84e3f27395353953493bf15d1e8e6cbb8875cbeb594d071a3208d040ce4c79da501066ea2c082923ee8faefc46c3e158a4c1a23f0 +DIST thunderbird-78.8.0-ka.xpi 717017 BLAKE2B a9fd20a0064e7ebaf9b990c8bd0cb795331656ef5a8a8bb523262e46931048d00f4475d128787d90a2a8062b4c0207672ebb1bab8d93073e434cbe5863ac8c07 SHA512 a1a85daac4b3751db10ca9fcab144324ead5023245f02c10c2d712f7a027d6ff5dae5ca04a5f6e0875cb7fa9c2ddc0376d503c7cf06cb878db5c27ca8d9d5a7c +DIST thunderbird-78.8.0-kab.xpi 651922 BLAKE2B 41bff182cfe72c270cd94e15512c8b134ab4d384dc7ec52bba86a808192312886e3256ca5c128f0523e99674789b516089d6239e432a6b694da0bdc01751d154 SHA512 49a75c15a0b6ecb97f518181afa711e15cf2c7e3b2e368582166d4e092fa9beebcadf4e572eeb729d8531f1ec5ccbfc688edde024c733dda5980be09101ae52b +DIST thunderbird-78.8.0-kk.xpi 720468 BLAKE2B 21815445c1665808abe1ff93a77252d2f4622971b80e5210828746020850546e350c8764b8b7de5b4b22b7210662bd32df14d65ef84ade8769bced175cba310c SHA512 db40436d08152560134671e6e5c52e3ef1d5981561523519fe0bbffe88c2b0e305940fdb034837715aa1e7f2d40e9993f90f5614dc949fb4bd35aad3afc22efa +DIST thunderbird-78.8.0-ko.xpi 688207 BLAKE2B 2666812be58bb367bd92f98712e83323ad61677431e8a3d1283bb943382b182e16b28ec58f435ec59861d819abeef1ebdd37712ae4ad94324d629c1a969dc2b9 SHA512 2e1b468fb2f74cebb4c8d1978549a12bf2472b8dc07581281e8eb993b2454c5c23c1fbf99adbc4360daa00b4f6744b1d7e45d165e3c835a1a656f0dd22976e9c +DIST thunderbird-78.8.0-lt.xpi 660298 BLAKE2B 5f1bfe651c3af4fb008fcbce06f31747fb5145fc92180743ad08ff2a9afd585dd8b1a2cbf9fd2f2bc0dedae3a70319aaa796d4e763d4b8ea5ecb0a96e8900d68 SHA512 0e454ea9c7a87d34235d11ba843e9801bbd2a093366f5d845a2eaf0cc7e07430409f266a09f8608750e2bc78564e8a0a24591b95ffc2880452546e60f94b72a0 +DIST thunderbird-78.8.0-ms.xpi 572174 BLAKE2B d72c780ac2766622b72eaee552b9957750d0cca30b7ecef4ef1a5bfaa26f6c34a32f86b3e5200d03c487514b83abfa99ad3e82cb14d9bf98544f2968dbdf4976 SHA512 7872308796d453a7d04423f51d6e8e47ef320e49b0e43543bd0e381acea30d4a4a0539c2a5d29529fd5b5bfc0ffc9bf6f113229bc413f4c6e4d8a2a492ef1c17 +DIST thunderbird-78.8.0-nb-NO.xpi 637239 BLAKE2B ae4daad96278e5b4154b4be4675a84d838c1d3def8762904a73d33e20e458c1a676ca4796f46fd72742195c3d76565f116849fb2512ac88b46e9de7f1d46149e SHA512 ba07b4ea6a9e46b707306cb18074bc67e318195a1fd257d2632b90ac6de8c5c45db178dd04e51e2b168a9021ff278bd487597bd6840da1883f8874a37c0be17e +DIST thunderbird-78.8.0-nl.xpi 644359 BLAKE2B 41965faf73c3c0f9fb017965b47468beaf4faa9e5dfd09b66cc984b1d0931963b0fa8f34fe641f7392731d86425e29ddfdd474b5f0d2debeb5d3af4d9a33701d SHA512 1053066a04e48dfaab69e409389cbc248b03aa32b9806c77f1c5ab2e69adbc9fa5d91142f4b87d8407d01daf958a035e73d44f7f0c3d1c13c141c79ff19ca9a4 +DIST thunderbird-78.8.0-nn-NO.xpi 640690 BLAKE2B 46cc9ac54bb43b20202213e033b7153be0c3c5313e48e44442f85c90a56222b77185511c244d67663205117391e02cb7ecfc1f28ce997be170bcc3a4bfe35d34 SHA512 1c08b8daa87b50ba0474d55a4d72161796e58e76e23a88e6c88035bf019aaad9834a625f8fd45cb42d106043252b15f346296573fdcafb7d11643ef2c73376a3 +DIST thunderbird-78.8.0-pa-IN.xpi 633219 BLAKE2B 4d508e848a9bc05aeaf4c54ee34d061187effed00dd2610bf27cb28df166866dfdf17e2fcf2745f973b6945eeb444bf6ab165f26b18f366874559e8acd28921f SHA512 65993d2cd037692b6b56eba803fe027f7dd5ac567dce89ae5d4929ffe99501d681976b3b0a99b9c74ec7b40223aba30de002923f87e8ec0ec7e38bfe0e49482e +DIST thunderbird-78.8.0-pl.xpi 637132 BLAKE2B 795bdc308f7dbf56195cf6cf9c4a71d017795f367caf61611515cb37b4057313299efad6823274e56a7b23fb0daab5aaf7ce89fe4e24b9d4a043b7af56326c4d SHA512 cce74e59f21757582e83ee05035682dc6371f3e171226dcb20284c5528f9415c07254a3b1643e74a9d361f1d2441fb6b4d9194fc84630d58a35213bbc3bc3394 +DIST thunderbird-78.8.0-pt-BR.xpi 649415 BLAKE2B eb9b29ff21191682e402a31e63a6c24d6cb870f2608f525933a18da4e663db1d9cd6faa6979724a297c79e2dc1f0398ecd89ea623e1d7972cca675f5712cb2ca SHA512 bb6c5a9d6895de4faf6b19500d9c244976ec11fa88b16226c15fca17264a09f1ee7deaab7eb7b2b9b22b176c959a05aec578d9b28b4c0415f73e42300cc6d097 +DIST thunderbird-78.8.0-pt-PT.xpi 655502 BLAKE2B 450bce6537e58ac2750c7c8790270dfe994cf38e4bfb07fe322b9d1e6fec47665b7535724326cd4ebf8a0f790b30734db29b123b9289325d355038b2fd622fde SHA512 ec04f1ffb87cb5c83f1a0d1fff72d39e01621e35fd506344cf50217ba056428f6afb52a89824d89ae2968041a9f4a316532deecb10ea4621ac9eb93524b0299f +DIST thunderbird-78.8.0-rm.xpi 646531 BLAKE2B 09ff8eb94d3d7b2d25104d4c17ad957ec6046a37f4b45d6c88a5d60c12e00eab5833204ade5f69f06bf689548eacc92e7e7db9b69bc06efd2bf1b0fc2b0d0755 SHA512 1bcfc9d9139fb30e0c65b688b1bb483d9c0cad0830840dd56b958c03e842400922351a5152a0c3d7a3e843fde35a51a26568a18ae664697ddead2a37c2fcbebe +DIST thunderbird-78.8.0-ro.xpi 662627 BLAKE2B c82d2130d5ae2dc7b57b21f2f4465fc5d775ea71d504decaec25ccab59a6621816636a7d9051986c4809ebcbf617c2b88a0ec81ddd8a254bd74af62e871f2380 SHA512 7ba6221fb3282b13c399aacb5d68063a0bb4755d222099f74d63970a4b9087170e40a87c190b1201f1cbb2a932479bdced737cb52ae29715b64df0b827e18aaf +DIST thunderbird-78.8.0-ru.xpi 756189 BLAKE2B 10eea9117fed75fe4cd4cc3ce74e36bf72047164e569dfc74f3fd38814e82e0c7597a9ec9577f92e7c59f482b56689c44b7186f373f3997a40a2a3ebbbd2fdef SHA512 79a8c316282f73bd2c717f8b01cea00d7899fe22b0e295c31350d81a1c4ab7e663d0489102284355daebbc58c3b1377a7f8495484a128cab9f5cbeda99bb8682 +DIST thunderbird-78.8.0-si.xpi 651103 BLAKE2B 9ac083d464dfddac5d265d80bf4d411e8c2f66f20e05e000a64e063da6e33176f400d4e47f27eb1adcf970e2aed563ed5f4ab62d0e34e29c3a2952405daee55f SHA512 673d7a600704c4539acc6a7e800f0403197303648633c860f38d330112ce6e17a99132019f95f011ed4f2073221358a758765577980565d6b941547daa0e83f6 +DIST thunderbird-78.8.0-sk.xpi 643225 BLAKE2B 249d1d14f0097792677ae71e780ba21293985f40db4acd9ec95111499554a53b4195730399f9aca514ca0ead37d3839271115fb38bb58756c139924269968bfb SHA512 44438e9c6fd938630ebdf768659acca14067ffbb7831e889def33109e09f24d551a5f181925587ffddf7d54c8abe5a4320c8c7110459bbba44f3b867c450d1d1 +DIST thunderbird-78.8.0-sl.xpi 632384 BLAKE2B 2fb5c7668b6933ce48fd236c3b38970de9219214aa8b215260f5753b9e2d4b1842c41356c43aa16825aa073ead5c3e68dc19f94e2bae6889f3f3d2458c525f5d SHA512 6fe972a136683994b595743527640d51f4d0bb3880b794df5c4c611a349dc56f5968a651b3fd62bec58511a6fe7c6ef7d30a77e7c469b20f1060b4444be4e2ef +DIST thunderbird-78.8.0-sq.xpi 657816 BLAKE2B 9517fd6f8c35534350905919d1f0bb97a1702b8ad3a10f29861e9add9e88b4d489166b0fefd5fbd4a8b229169ab35dfb8ca2a6b390b82d4f984095e4de3ab3a8 SHA512 e9e9b22d813f5b825f660a977d3107caa7efabd6c9b8a7a2e9371cf18d5dbb3364bf400dce589864fd4252f9513227e3396589561939595e19ae575bb4b3d2dc +DIST thunderbird-78.8.0-sr.xpi 683123 BLAKE2B 5deb3e13d436744c4b7f8c52c5eecfb9abfbdc069993fe7cad47a9b2e73e9685ca670c1ed0457e769b1e8b4233d88f275194ce5301adef77863d4d6685d020fd SHA512 0026010d0aff81ae619e1db8e9d595e1c51177aeb45c1e98d04d6ed276f3dbe4cc4758898d1982a6443f35869d0cdc89cb44ac9f2367a00fa2ecb350e294e0f3 +DIST thunderbird-78.8.0-sv-SE.xpi 648867 BLAKE2B a6c7b6137a8d540a506f3405119725dfc68c1136be2e715f9d72e25ae0cbbc4ed91f659f560cbc1c069aff8cbbe5fe1b7a094d87f73c2b2d5da557deae21d6d6 SHA512 1c25d41ceca01c6300c9cc42d643e59a5d97ed73aad810c148d2845dd51d28561bca1342f4d86da61285a511cba39aeeeb455325c38334586d5acfcd1d1e2768 +DIST thunderbird-78.8.0-th.xpi 712027 BLAKE2B 39a6186ed96ab458743ae3d03b938a694611a441340dd1dcccbc7ca3de8fb765e42387edcb529b228196fab01dc785ed13cb882d839a50dae98a10fbafec4278 SHA512 58f730506782d014ea1e0e0ba8a6c9f6226a3d3d617e793350703fab925606695a10f5eac396c9c3aa3d294f41989e94b7c5220a3af08c01e031cf6327c3d123 +DIST thunderbird-78.8.0-tr.xpi 649070 BLAKE2B 7d5c22de6bde5843914b05fd3aaa4679aa947103e447e0a5ac0d68cadabb2623a065bc973869cdd79223067aff334e2ebf87e4642d9cd2dba67b5cfd64857f4d SHA512 bcb6026d3deb8490998feae8504f729bcb559ad6c7dde330d6f8fb2a1e4eeff090e7ce1313fd2a6a7e8a44fcad519a4f2c8f2f40d739b4ad17cf0bd795ca85cc +DIST thunderbird-78.8.0-uz.xpi 586600 BLAKE2B fbe31d8a104bbd3c3900c449bbac350144a11255f4fb8ac060809a221de2ebe364205838b43eaf9f6183451bae45e3b68e34b84e5a63bd9d0dcf636c99c7803f SHA512 09ea336d739be09ec97371f75f914a5b36f89042f1b8eb88bb2f89951ee55820ff74f3bc5b8ac17bf199ce0778e5404891dde4fc71bd4e671336c44b6171caea +DIST thunderbird-78.8.0-vi.xpi 674601 BLAKE2B 4ffcd7e4015a24b72b2c6e63bc3be529900bced5e1ab42f82f9a8e7c7a1ebf1218b5cb36025318f7c774e135951476226d924223754626ddbb3e9cd59418eea4 SHA512 9bdf8e207003bfc9b82919794d7c8d94dc27d4acef4527fce2dafcbd8721f92c63fff72ae0f59f8f44d16d993e85a8c32672a62be8767172027565b1026c324a +DIST thunderbird-78.8.0-zh-CN.xpi 687183 BLAKE2B 87e0d1b874cb21eef72b3cd53faeb5cd660fa39a0e9779e4c83321f25fa94c7c43b1ba3b268b33b9c637af671cfcdac03f8128f7edf371f5d8afe2a1e6422f66 SHA512 cc9a7ea3cf683c91066072121b1686057bbaf55d5e43a63deefbf40df8a14491e37d3c361babb38fbb839ac24aa31ff2a0cc9dbb48848a4bcd2047371fcc7bb7 +DIST thunderbird-78.8.0-zh-TW.xpi 687626 BLAKE2B a4a0c70b226b1f0672b25dd467d2000270042f5d474ef257dc56973949f06fbca51c1a8b520860762a9feec04c3d65ab4af537fff702affea38a7c724921b7e1 SHA512 e98b5772218608e5355635a80dc49156ccc18297c59368e5e4a6c5a40b3716b240e67e9ec3f69b8f230b8e7ed4b32cb6073743e843242d67e16c11937adab50a +DIST thunderbird-78.8.0.source.tar.xz 353232724 BLAKE2B 3c691393e0dbc71f345557632c734138cb7e603ffadbc364837c3fb759be07bac3f8b022b3e1261a7d850fc33bb917d7bb8fe314ea4c39dec6286d882f1c7f00 SHA512 c7d31ab6b2863c14fe7e11df4e805ca0ecd1f6e6b5e7d5ec73939500c5125faeec213b4df25f23a5f152345027926356b7df47efcfa60ff0f9e5b825119f0e51 diff --git a/mail-client/thunderbird/thunderbird-78.8.0.ebuild b/mail-client/thunderbird/thunderbird-78.8.0.ebuild new file mode 100644 index 000000000000..8e7bee22cf5c --- /dev/null +++ b/mail-client/thunderbird/thunderbird-78.8.0.ebuild @@ -0,0 +1,1108 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +FIREFOX_PATCHSET="firefox-78esr-patches-10.tar.xz" + +LLVM_MAX_SLOT=11 + +PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_REQ_USE="ncurses,sqlite,ssl" + +WANT_AUTOCONF="2.1" + +VIRTUALX_REQUIRED="pgo" + +MOZ_ESR= + +MOZ_PV=${PV} +MOZ_PV_SUFFIX= +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then + MOZ_PV_SUFFIX=${BASH_REMATCH[1]} + + # Convert the ebuild version to the upstream Mozilla version + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI +fi + +if [[ -n ${MOZ_ESR} ]] ; then + # ESR releases have slightly different version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +MOZ_PN="${PN%-bin}" +MOZ_P="${MOZ_PN}-${MOZ_PV}" +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" + +inherit autotools check-reqs desktop flag-o-matic gnome2-utils llvm \ + multiprocessing pax-utils python-any-r1 toolchain-funcs \ + virtualx xdg + +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" + +if [[ ${PV} == *_rc* ]] ; then + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" +fi + +PATCH_URIS=( + https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET} +) + +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz + ${PATCH_URIS[@]}" + +DESCRIPTION="Thunderbird Mail Client" +HOMEPAGE="https://www.mozilla.org/thunderbird" + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +SLOT="0/$(ver_cut 1)" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free + hardened hwaccel jack lto +openh264 pgo pulseaudio selinux + +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent + +system-libvpx +system-webp wayland wifi" + +REQUIRED_USE="wifi? ( dbus )" + +BDEPEND="${PYTHON_DEPS} + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.14.3 + >=net-libs/nodejs-10.21.0 + virtual/pkgconfig + >=virtual/rust-1.41.0 + || ( + ( + sys-devel/clang:11 + sys-devel/llvm:11 + clang? ( + =sys-devel/lld-11* + pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] ) + ) + ) + ( + sys-devel/clang:10 + sys-devel/llvm:10 + clang? ( + =sys-devel/lld-10* + pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] ) + ) + ) + ( + sys-devel/clang:9 + sys-devel/llvm:9 + clang? ( + =sys-devel/lld-9* + pgo? ( =sys-libs/compiler-rt-sanitizers-9*[profile] ) + ) + ) + ) + lto? ( + !clang? ( sys-devel/binutils[gold] ) + ) + amd64? ( >=dev-lang/yasm-1.1 ) + x86? ( >=dev-lang/yasm-1.1 ) + !system-av1? ( + amd64? ( >=dev-lang/nasm-2.13 ) + x86? ( >=dev-lang/nasm-2.13 ) + )" + +CDEPEND=" + >=dev-libs/nss-3.53.1 + >=dev-libs/nspr-4.25 + dev-libs/atk + dev-libs/expat + >=x11-libs/cairo-1.10[X] + >=x11-libs/gtk+-2.18:2 + >=x11-libs/gtk+-3.4.0:3[X] + x11-libs/gdk-pixbuf + >=x11-libs/pango-1.22.0 + >=media-libs/libpng-1.6.35:0=[apng] + >=media-libs/mesa-10.2:* + media-libs/fontconfig + >=media-libs/freetype-2.4.10 + kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) ) + virtual/freedesktop-icon-theme + >=x11-libs/pixman-0.19.2 + >=dev-libs/glib-2.26:2 + >=sys-libs/zlib-1.2.3 + >=dev-libs/libffi-3.0.10:= + media-video/ffmpeg + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrender + x11-libs/libXt + dbus? ( + sys-apps/dbus + dev-libs/dbus-glib + ) + system-av1? ( + >=media-libs/dav1d-0.3.0:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-libs/harfbuzz-2.6.8:0= + >=media-gfx/graphite2-1.3.13 + ) + system-icu? ( >=dev-libs/icu-67.1:= ) + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) + system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] ) + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) + system-webp? ( >=media-libs/libwebp-1.1.0:0= ) + wifi? ( + kernel_linux? ( + sys-apps/dbus + dev-libs/dbus-glib + net-misc/networkmanager + ) + ) + jack? ( virtual/jack ) + selinux? ( sec-policy/selinux-mozilla )" + +RDEPEND="${CDEPEND} + jack? ( virtual/jack ) + openh264? ( media-libs/openh264:*[plugin] ) + pulseaudio? ( + || ( + media-sound/pulseaudio + >=media-sound/apulse-0.1.12-r4 + ) + ) + selinux? ( sec-policy/selinux-mozilla ) + !&2 + return 1 + fi + + if use clang ; then + if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then + ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if use pgo ; then + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then + ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb el en-CA en-GB en-US + es-AR es-ES et eu fa fi fr fy-NL ga-IE gd gl he hr hsb hu hy-AM + id is it ja ka kab kk ko lt ms nb-NO nl nn-NO pa-IN pl pt-BR + pt-PT rm ro ru si sk sl sq sr sv-SE th tr uz vi zh-CN zh-TW +) + +mozilla_set_globals() { + # https://bugs.gentoo.org/587334 + local MOZ_TOO_REGIONALIZED_FOR_L10N=( + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE + ) + + local lang xflag + for lang in "${MOZ_LANGS[@]}" ; do + # en and en_US are handled internally + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then + continue + fi + + # strip region subtag if $lang is in the list + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then + xflag=${lang%%-*} + else + xflag=${lang} + fi + + SRC_URI+=" l10n_${xflag/[_@]/-}? (" + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" + SRC_URI+=" )" + IUSE+=" l10n_${xflag/[_@]/-}" + done +} +mozilla_set_globals + +moz_clear_vendor_checksums() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -ne 1 ]] ; then + die "${FUNCNAME} requires exact one argument" + fi + + einfo "Clearing cargo checksums for ${1} ..." + + sed -i \ + -e 's/\("files":{\)[^}]*/\1/' \ + "${S}"/third_party/rust/${1}/.cargo-checksum.json \ + || die +} + +moz_install_xpi() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local DESTDIR=${1} + shift + + insinto "${DESTDIR}" + + local emid xpi_file xpi_tmp_dir + for xpi_file in "${@}" ; do + emid= + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") + + # Unpack XPI + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die + + # Determine extension ID + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" + else + die "failed to determine extension id" + fi + + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." + newins "${xpi_file}" "${emid}.xpi" + done +} + +mozconfig_add_options_ac() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_add_options_mk() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 2 ]] ; then + die "${FUNCNAME} requires at least two arguments" + fi + + local reason=${1} + shift + + local option + for option in ${@} ; do + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} + done +} + +mozconfig_use_enable() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_enable "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +mozconfig_use_with() { + debug-print-function ${FUNCNAME} "$@" + + if [[ ${#} -lt 1 ]] ; then + die "${FUNCNAME} requires at least one arguments" + fi + + local flag=$(use_with "${@}") + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" +} + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has usersandbox $FEATURES ; then + die "You must enable usersandbox as X server can not run as root!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6400M" + fi + + check-reqs_pkg_pretend + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] ; then + if use pgo ; then + if ! has userpriv ${FEATURES} ; then + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" + fi + fi + + # Ensure we have enough disk space to compile + if use pgo || use lto || use debug ; then + CHECKREQS_DISK_BUILD="13500M" + else + CHECKREQS_DISK_BUILD="6400M" + fi + + check-reqs_pkg_setup + + llvm_pkg_setup + + if use clang && use lto ; then + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" + + # temp fix for https://bugs.gentoo.org/768543 + # we can assume that rust 1.{49,50}.0 always uses llvm 11 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }') + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}") + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!" + + if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then + local version_llvm_rust="11" + else + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" + fi + + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" + eerror " - Build ${CATEGORY}/${PN} without USE=lto" + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" + fi + fi + + python-any-r1_pkg_setup + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset \ + DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XAUTHORITY \ + XDG_CACHE_HOME \ + XDG_SESSION_COOKIE + + # Build system is using /proc/self/oom_score_adj, bug #604394 + addpredict /proc/self/oom_score_adj + + if ! mountpoint -q /dev/shm ; then + # If /dev/shm is not available, configure is known to fail with + # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py + ewarn "/dev/shm is not mounted -- expect build failures!" + fi + + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" + fi + + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" + fi + + # Mozilla API keys (see https://location.services.mozilla.com/api) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" + fi + + # Ensure we use C locale when building, bug #746215 + export LC_ALL=C + fi +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + unpack ${_src_file} + fi + done +} + +src_prepare() { + use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch + eapply "${WORKDIR}/firefox-patches" + + # Allow user to apply any additional patches without modifing ebuild + eapply_user + + # Make LTO respect MAKEOPTS + sed -i \ + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/build/moz.configure/lto-pgo.configure \ + || die "sed failed to set num_cores" + + # Make ICU respect MAKEOPTS + sed -i \ + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/intl/icu_sources_data.py \ + || die "sed failed to set num_cores" + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ + || die "sed failed to set toolchain prefix" + + sed -i \ + -e 's/ccache_stats = None/return None/' \ + "${S}"/python/mozbuild/mozbuild/controller/building.py \ + || die "sed failed to disable ccache stats call" + + einfo "Removing pre-built binaries ..." + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die + + # Clearing checksums where we have applied patches + moz_clear_vendor_checksums target-lexicon-0.9.0 + + # Create build dir + BUILD_DIR="${WORKDIR}/${PN}_build" + mkdir -p "${BUILD_DIR}" || die + + # Write API keys to disk + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die + + xdg_src_prepare +} + +src_configure() { + # Show flags set at the beginning + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + local have_switched_compiler= + if use clang && ! tc-is-clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + have_switched_compiler=yes + AR=llvm-ar + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + AR=gcc-ar + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + NM=gcc-nm + RANLIB=gcc-ranlib + fi + + if [[ -n "${have_switched_compiler}" ]] ; then + # Because we switched active compiler we have to ensure + # that no unsupported flags are set + strip-unsupported-flags + fi + + # Ensure we use correct toolchain + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=comm/mail + mozconfig_add_options_ac '' --enable-calendar + + # Set Gentoo defaults + export MOZILLA_OFFICIAL=1 + + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-install-strip \ + --disable-strip \ + --disable-updater \ + --enable-official-branding \ + --enable-release \ + --enable-system-ffi \ + --enable-system-pixman \ + --host="${CBUILD:-${CHOST}}" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --prefix="${EPREFIX}/usr" \ + --target="${CHOST}" \ + --without-ccache \ + --with-intl-api \ + --with-libclang-path="$(llvm-config --libdir)" \ + --with-system-nspr \ + --with-system-nss \ + --with-system-png \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${SYSROOT}${EPREFIX}/usr/include" \ + --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + if [[ -s "${S}/api-location.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-location.key" + else + einfo "Building without Location API key ..." + fi + + if [[ -s "${S}/api-mozilla.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-mozilla-api-keyfile="${S}/api-mozilla.key" + else + einfo "Building without Mozilla API key ..." + fi + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr" + mozconfig_use_with system-libvpx + mozconfig_use_with system-webp + + mozconfig_use_enable dbus + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + fi + + mozconfig_use_enable jack + + mozconfig_use_enable pulseaudio + # force the deprecated alsa sound code if pulseaudio is disabled + if use kernel_linux && ! use pulseaudio ; then + mozconfig_add_options_ac '-pulseaudio' --enable-alsa + fi + + mozconfig_use_enable wifi necko-wifi + + if use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland + else + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 + fi + + if use lto ; then + if use clang ; then + # Upstream only supports lld when using clang + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + + mozconfig_add_options_ac '+lto' --enable-lto=cross + else + # Linking only works when using ld.gold when LTO is enabled + mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold + + # ThinLTO is currently broken, see bmo#1644409 + mozconfig_add_options_ac '+lto' --enable-lto=full + fi + + if use pgo ; then + mozconfig_add_options_ac '+pgo' MOZ_PGO=1 + + if use clang ; then + # Used in build/pgo/profileserver.py + export LLVM_PROFDATA="llvm-profdata" + fi + fi + else + # Avoid auto-magic on linker + if use clang ; then + # This is upstream's default + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld + elif tc-ld-is-gold ; then + mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold + else + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + fi + + # LTO flag was handled via configure + filter-flags '-flto*' + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + else + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # Modifications to better support ARM, bug #553364 + if use cpu_flags_arm_neon ; then + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon + + if ! tc-is-clang ; then + # thumb options aren't supported when using clang, bug 666966 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \ + --with-thumb=yes \ + --with-thumb-interwork=no + fi + fi + + if [[ ${CHOST} == armv*h* ]] ; then + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard + + if ! use system-libvpx ; then + sed -i \ + -e "s|softfp|hard|" \ + "${S}"/media/libvpx/moz.build \ + || die + fi + fi + + if use clang ; then + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') + local disable_elf_hack= + if use amd64 ; then + disable_elf_hack=yes + elif use x86 ; then + disable_elf_hack=yes + elif use arm ; then + disable_elf_hack=yes + fi + + if [[ -n ${disable_elf_hack} ]] ; then + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack + fi + elif tc-is-gcc ; then + if ver_test $(gcc-fullversion) -ge 10 ; then + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." + append-cxxflags -fno-tree-loop-vectorize + fi + fi + + # Additional ARCH support + case "${ARCH}" in + arm) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif tc-ld-is-gold || use lto ; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads + fi + ;; + esac + + if ! use elibc_glibc ; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export MACH_USE_SYSTEM_PYTHON=1 + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Build system requires xargs but is unable to find it + mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" + + # Set build dir + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" + + # Show flags we will use + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + # Handle EXTRA_CONF and show summary + local ac opt hash reason + + # Apply EXTRA_ECONF entries to $MOZCONFIG + if [[ -n ${EXTRA_ECONF} ]] ; then + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} + for opt in "${ac[@]}"; do + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} + done + fi + + echo + echo "==========================================================" + echo "Building ${PF} with the following configuration" + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do + [[ -z ${hash} || ${hash} == \# ]] \ + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" + done + echo "==========================================================" + echo + + ./mach configure || die +} + +src_compile() { + local virtx_cmd= + + if use pgo ; then + virtx_cmd=virtx + + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + addpredict /root + fi + + local -x GDK_BACKEND=x11 + + ${virtx_cmd} ./mach build --verbose \ + || die +} + +src_install() { + # xpcshell is getting called during install + pax-mark m \ + "${BUILD_DIR}"/dist/bin/xpcshell \ + "${BUILD_DIR}"/dist/bin/${PN} \ + "${BUILD_DIR}"/dist/bin/plugin-container + + DESTDIR="${D}" ./mach install || die + + # Upstream cannot ship symlink but we can (bmo#658850) + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin + + # Don't install llvm-symbolizer from sys-devel/llvm package + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die + fi + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/distribution.ini distribution.ini + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" + + # Set dictionary path to use system hunspell + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); + EOF + + # Force hwaccel prefs if USE=hwaccel is enabled + if use hwaccel ; then + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ + >>"${GENTOO_PREFS}" \ + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" + fi + + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it + if use system-harfbuzz ; then + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" + sticky_pref("gfx.font_rendering.graphite.enabled", true); + EOF + fi + + # Install language packs + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) + if [[ -n "${langpacks}" ]] ; then + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" + fi + + # Install icons + local icon_srcdir="${S}/comm/mail/branding/thunderbird" + local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" + + insinto /usr/share/icons/hicolor/symbolic/apps + newins "${icon_symbolic_file}" ${PN}-symbolic.svg + + local icon size + for icon in "${icon_srcdir}"/default*.png ; do + size=${icon%.png} + size=${size##*/default} + + if [[ ${size} -eq 48 ]] ; then + newicon "${icon}" ${PN}.png + fi + + newicon -s ${size} "${icon}" ${PN}.png + done + + # Install menus + local wrapper_wayland="${PN}-wayland.sh" + local wrapper_x11="${PN}-x11.sh" + local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" + local display_protocols="auto X11" + local icon="${PN}" + local name="Mozilla ${MOZ_PN^}" + local use_wayland="false" + + if use wayland ; then + display_protocols+=" Wayland" + use_wayland="true" + fi + + local app_name desktop_filename display_protocol exec_command + for display_protocol in ${display_protocols} ; do + app_name="${name} on ${display_protocol}" + desktop_filename="${PN}-${display_protocol,,}.desktop" + + case ${display_protocol} in + Wayland) + exec_command="${PN}-wayland --name ${PN}-wayland" + newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland + ;; + X11) + if ! use wayland ; then + # Exit loop here because there's no choice so + # we don't need wrapper/.desktop file for X11. + continue + fi + + exec_command="${PN}-x11 --name ${PN}-x11" + newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11 + ;; + *) + app_name="${name}" + desktop_filename="${PN}.desktop" + exec_command="${PN}" + ;; + esac + + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die + + sed -i \ + -e "s:@NAME@:${app_name}:" \ + -e "s:@EXEC@:${exec_command}:" \ + -e "s:@ICON@:${icon}:" \ + "${WORKDIR}/${PN}.desktop-template" \ + || die + + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" + + rm "${WORKDIR}/${PN}.desktop-template" || die + done + + # Install generic wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}.sh" ${PN} + + # Update wrapper + local wrapper + for wrapper in \ + "${ED}/usr/bin/${PN}" \ + "${ED}/usr/bin/${PN}-x11" \ + "${ED}/usr/bin/${PN}-wayland" \ + ; do + [[ ! -f "${wrapper}" ]] && continue + + sed -i \ + -e "s:@PREFIX@:${EPREFIX}/usr:" \ + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ + -e "s:@APULSELIB_DIR@:${apulselib}:" \ + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ + "${wrapper}" \ + || die + done +} + +pkg_preinst() { + xdg_pkg_preinst + + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse + # does not need to be forced into the LD_LIBRARY_PATH + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + einfo "APULSE found; Generating library symlinks for sound support ..." + local lib + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do + # A quickpkg rolled by hand will grab symlinks as part of the package, + # so we need to avoid creating them if they already exist. + if [[ ! -L ${lib##*/} ]] ; then + ln -s "${lib}" ${lib##*/} || die + fi + done + popd &>/dev/null || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then + elog "Apulse was detected at merge time on this system and so it will always be" + elog "used for sound. If you wish to use pulseaudio instead please unmerge" + elog "media-sound/apulse." + elog + fi + + local show_doh_information + + if [[ -z "${REPLACING_VERSIONS}" ]] ; then + # New install; Tell user that DoH is disabled by default + show_doh_information=yes + fi + + if [[ -n "${show_doh_information}" ]] ; then + elog + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" + elog "DNS traffic to Cloudflare by default is not a good idea and applications" + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" + elog "(\"Off by choice\") by default." + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." + fi +} -- cgit v1.2.3-65-gdbad