summaryrefslogtreecommitdiff
path: root/app-editors/atom
diff options
context:
space:
mode:
Diffstat (limited to 'app-editors/atom')
-rw-r--r--app-editors/atom/Manifest54
-rw-r--r--app-editors/atom/atom-1.23.3.ebuild535
-rw-r--r--app-editors/atom/atom-1.24.0_beta3.ebuild535
-rw-r--r--app-editors/atom/atom-1.32.1.ebuild561
-rw-r--r--app-editors/atom/files/atom-fix-app-restart-r1.patch12
-rw-r--r--app-editors/atom/files/atom-fix-app-restart-r2.patch24
-rw-r--r--app-editors/atom/files/atom-fix-config-watcher-r1.patch41
-rw-r--r--app-editors/atom/files/atom-license-path-r1.patch11
-rw-r--r--app-editors/atom/files/atom-python-r1.patch25
-rw-r--r--app-editors/atom/files/atom-python.patch10
-rw-r--r--app-editors/atom/files/atom-unbundle-electron-r3.patch (renamed from app-editors/atom/files/atom-unbundle-electron-r1.patch)28
-rw-r--r--app-editors/atom/files/transpile-coffee-script.js6
12 files changed, 698 insertions, 1144 deletions
diff --git a/app-editors/atom/Manifest b/app-editors/atom/Manifest
index fc7deb0e208b..a2a3559ca49c 100644
--- a/app-editors/atom/Manifest
+++ b/app-editors/atom/Manifest
@@ -1,32 +1,42 @@
AUX apm-python.patch 388 BLAKE2B 1f3187b4219bb849ce87fd83dd19c335f9c163c63a8660b552235dda2a16b3247c56cc82c17eae7bd7b45516a8dbf345332fb0d22d57589cf7edcd4c448da27c SHA512 5d280b2a37c8f1b03156627c1622d0a5c76edda7523353b7b60e6ba563f090e6472eae318689bd964cc98503a963aa591d3ed37929f1df36f81ab893ad437f21
AUX atom-apm-path-r2.patch 537 BLAKE2B 68f5a53be36f34a4953450f6ff466bb00256c028adf290b3bd8c63b966c06dbdc9fcb6a12c95172aabc9010f0b1a4c6522390a4ad6012a0f60e11a38a61373cd SHA512 1172c72c94d25538d63e04202f273b87f794431847d9b1138d4eb43d4578d47ca1ecf2636170a8648eef2afaf01a35114752ebecad2b9cd8c7d4ae04dcbc741d
-AUX atom-fix-app-restart-r1.patch 402 BLAKE2B 95c61f01f11751fd00cfee81c39daa10e06268f0cb4bf37787be89ce8965d765bc7f7f5fa36b226412c2183151481456661b09faa866e9a929856061f41e7b5f SHA512 6218175e2513f7afdbd6ed4875037929e375fdfd84683f84430e387bb8302aaf472845d74d46f75a79409b867a79b29f06ecfaea4a95ff48d229d080dc74f68f
-AUX atom-license-path-r1.patch 719 BLAKE2B 72fbead68a55b5c013f353320581aa431a188e6676b17967a4024de6302e651e0d28ba1efab7689d5dc62014e32d0e968821a6660a530cc5a5d500f2fb2f85e0 SHA512 2909f47f37d065afe5ef4fd86b8b1c01a1a4d4f9f03e7c762cfdb0f97b53ebec2eaa803b34273bf3401c5a0e1faf03ef10c3caf6f96000d1786883cd08d7b964
+AUX atom-fix-app-restart-r2.patch 835 BLAKE2B fba9d512852126cdc2e06564642e1c2b70d83b60eb39921d43f6d00c8808e8ad6ddcbfbd90e2bee5a09df4bd2c6348b17abdff100b212fbf3aa0c6e251ce068b SHA512 abd16c7474b9aa190907a9f8052ac87f35b7747c2495c2a2ab8821054c36b7bdedc976ed9f4fc7f790ae340cb8d5b201f9f865a546ab398c6e61afe1bcfd5b5f
+AUX atom-fix-config-watcher-r1.patch 1581 BLAKE2B 668fcc63dab8ee2aa0ecd118ff28c42139b69effb8a11a2129e9fe5f3cd8a058c3f8e5a84bd677207013a9e3788d803de673ad01008a8504912e9ed5722242ba SHA512 c6d5729d12cd66ffdc60f7a21387d228207acc30c987ae66f3df9d0aaacd41f64e83047f3afbd952cfebacee60fe77a808e8e34b73c08b5dac86470c8d3c5ee1
AUX atom-marker-layer-r1.patch 418 BLAKE2B 4001c4e8bd64cf6389bb2f5550e5b243fb0fabb0627e76e70ba8c863a3d9be6b2412cfc6dffbb3911e450484d636dfc705f721ef16654aa7c435d5cb2ad0fc1e SHA512 c8bd34e4747626642a57596ef36c4ddbaee36273a213aa4439d0c64557084c7c5bdb25735ffc3c118533ce43dbf2ad638258c29b52a58a28e417163279ada925
-AUX atom-python.patch 168 BLAKE2B d836061d772d187b039b9c88f8755cfac5d236a2c694c34fbd0d5a1a79fd9792c33f52d3ba54d085d6a7f375f309c2d5b5f57be78ea426b1e13fe2d8aad8e71c SHA512 813e79528fd2e814d8e4c5d54cf4d59d2eb7f82683669b787604c713a165b8ea952fe31012c8cf0a208d3ecdb8fa7fdd70c9abd1090aeae549f9aaeb713be5ee
-AUX atom-unbundle-electron-r1.patch 1531 BLAKE2B 51f0072ad40e5d9268d9dbfc107201b8518a41a6272fe026fc612d121e109c7bcd5c6781b2340ebec4bff1e8030eead44018b825421bc1b094a95d072ebb2dfa SHA512 40f3f39720cd801f28d1d9e8e202d51848e7f5667f85c543caca623ad33b088b49cf6d5383dcd940448d4247991aaf1a33e868364830f000619856e39b4ec443
+AUX atom-python-r1.patch 506 BLAKE2B 8df707aa71b1db54bdcd5934cc88f66cd75564669365e93a3cb1e5d628257a2a160d339bf31402e88b44fadcff59870cd9e4704ecb7b3d65c631f2ce08143c70 SHA512 a7c1db374705ec5c215440d2c4c1e5a13333ed65c2c43ac4e05fd9d8bde58c2c2966e2f695129f40cb4e6a29e9da0e5123042ddc85001913e7489809764bddc9
+AUX atom-unbundle-electron-r3.patch 1214 BLAKE2B dbc0891872074f6de0067ed14b947b292665686686498ecf7d10fced4025c07b851bd12a4c78ef3a413c908602e252a1ecbef00cb98d47728e123ac885c1d82a SHA512 d9df0a496f6ef1cfa0462397e3da0d887fa681c575edc4a9958e1b187833b90733df8f0eebafc84ba70877c4a264443994afa86c09dbdd3e5dc15ae3ed26753d
AUX gyp-unbundle.py 3933 BLAKE2B 638bf2ad17c5e052c4b1972ac91a1d0d6b0d9d361cb0d04c3e732c892af54a30b099069ac4bfb0f8882ac3d049c25a53d698cc95aeb23a486d92284a1ac21376 SHA512 5de7aab9b2fcf135fac5429a2655acfb53ed40871ca51281be237393b0318b06339d20af196275bc48acac456eac61e884821da7abeefb9991bf2502d2835cfe
-AUX transpile-coffee-script.js 589 BLAKE2B 0fa75fef95437d8c2f3eb5619734b577f843bd11ca4cfe96174408315c6defb57352ea29a22b69d0d6f1e2d01f3515e65cde2793914c42c60a28e936046b0304 SHA512 383772d0a8df6ab3f4950dcda87eb21222d71463007e15cf54c768aedcdd06d4791bf92660c042542aaf2c6fe283ff33f8e6c60488907bd309c450712bb94496
-DIST asar-0.13.0.tar.gz 1622264 BLAKE2B 018bccc3d2b54040fe7c6e6c1ecfbe0ab4d52554feab78fae41a09d35b7e934720cba45f77239eda46d746390c4f072b3e0eecdf7f0953882d6f27cb940de018 SHA512 619b59e9576a185905b455b780630188ce32aed72b424c69967a7bf15236d1edf2f5d92f7dde972599679c88fe0a80f05295a3d82b2ae0944be08d332a659aee
-DIST atom-1.23.3.tar.gz 9553983 BLAKE2B ed5f77a51fbbf7a5ba828f5c488b139067636865fef30c88926baf5855b89a7283a35de383cfc65a06391479ec70c067e8ddacd5132b46859b4d4c6ee5cf35e8 SHA512 879a6a209659b612efcef6d3cac9c218da033295b3cc915259e2d4ab51567627a2369b2b8630f6e8a4706aa7b4e0cfb7cc3a55b635f559c8a913cc19e702d524
-DIST atom-1.24.0-beta3.tar.gz 9550090 BLAKE2B e74923afb56573530a3297d7ce27197af478b2697f49e3d1d9d239e12281a43ab614f8bb9356451372723af7a2bb6cfe2dc21c2e672a321eeeeca6455dcedd9b SHA512 31dc4e9be108fdd5e770a21e94f1284f3e5aa3a8293bce542fbf5a449930bb4f9a3f2405653e27809ccb3d2395b9bf3e0e630b4b1d6c2f7995859b2af391c554
-DIST atom-bin-1.23.3.rpm 129956012 BLAKE2B eedb8a55955dbd30d85073e536435a6faa214e9f197acda4f3c7a46408ed5fdcff16141b28c519b1d1fc680d0a17f77d0f22ccb561eaea9665c7836ef282ab8d SHA512 f17b0edc33c537ced60360ff5daba44257ac2a85fdb8cf10e886133429093cbd99cd5835ea1ec451a2c1c485971dd5176585357b980d7dbab17f12ee0adacbe8
-DIST atom-bin-1.24.0-beta3.rpm 129894085 BLAKE2B 9c58bd91ed3d4c9eaf97de0b2ba168c1f4118890f40f8aa9c4f50a9fe24d614c1d52ce8d91f0efdfc8b7bb01891096d8e39a2e2f67faefdd6db33e0114288892 SHA512 a942732dfc975c44c3db11c8e43b88e6dbe247245947964704ee2ada79a8732da5a6f6cedd960556349844ca92333c3504541b300975bd4daad639abb3ce309b
+AUX transpile-coffee-script.js 602 BLAKE2B 42dd30146f463b598d3d8681229eb479554df3486a9e7bab6950999961c5adbe3c9eb42b2dba733ea96388766616de4ffab898feb1cbe076b6fb2af4d2b40d98 SHA512 f82cb3108cc6dd806f0931e88f1bb4451f2aa3b7ad38e2e458a6810a78cbfa5e2ca68e3db0c7a2f400097b7b2978ba5f5ba29669e6f1598521f9f9533bdfc1a4
+DIST asar-0.14.3.tar.gz 1516628 BLAKE2B 4f04d08c3084843bc3974e99dea2bd327843afd97575fbedcc0ae224c9511be2b2a178a0ff0e555f1c890218d768cca6616a39a0a4fb2fd119f94b074db73ef7 SHA512 8dc099d038d7c8748d20d64adb037167e43640bb923391d2d94f1e2859d41700b39d6b631ee959505cffc695b8284f7e09d43a914af7effc349a768cfaf1efb4
+DIST atom-1.32.1.tar.gz 11685572 BLAKE2B 4e2463d56d3c4c54e3661e8eeb665a86b165f317dd221d849fd6b447bf6e895ac573b019356695fce0da0c176702356cbd5ff53e0878edbd49aa95e15323cda5 SHA512 8220c7cf1bb602dbcb312e986b4c2ff560baf3e46903e770135da36d92920da4d9f2490e9a5dc6b04821dbbb033415b6008f0f483d88c841996c06a9bf36f7e3
+DIST atom-bin-1.32.1.rpm 281163511 BLAKE2B 4ff4e055d1cad690c37e6264a7e5771bf50047246950fc45a94cb5217e6cfef2abb8c067efa1ca780550db7f046a8fecc623013cab27fe56df3e22af68f018b6 SHA512 9ff621cb8bcfb185c36eb56cac698a9bd0d2a02b5cc9c7982786b0db241a625188fc6ea9079943bb2c83a122f916a387810fa30161ee9531c1c5c3e28f876f52
DIST atomdep-atom--nsfw-1.0.18.tar.gz 20870 BLAKE2B 2e90e2cc337b2d40805db44c48a6f9da2b4e749bd5d036bdeec78790286a0d0c7e4536a8d461480b91c45552ce1f6db06e6f70f975e52b2ec90146714c4a0fb9 SHA512 61c78a57d6b75fada687843bf0dca2f1a4d16a8546769789047a202fc831535ee206112962fc4680c7d37b4da3d611f6b5a153e1b6ab919e51759906288b09ff
-DIST atomdep-cached-run-in-this-context-0.4.1.tar.gz 2388 BLAKE2B 9cf59f69c3433a9982c1dedf58c03eef5e1ccf1275f92ed192a2de601f38caceea5926e9b3a8571e2124b83e49c99a14f262db39a44732e1ff6550d6cd46d500 SHA512 942db40139b0beda616a25628772e515ce92ceca3e9a5288b10920e68c35149c52677a975e6e30f278ec64f06ae341fa1fa00702b339b2fb8f7af1cf9685efe5
+DIST atomdep-atom--watcher-1.0.8.tar.gz 702118 BLAKE2B 21fdb472bc1cd6cc396f686e45f1048ff5507d2126e71d92e1531601d142339a97f3ab8748b34cf8ff8c935fc4f2fa36e86a379a05f79403c7bc3949f5ae8ebb SHA512 e77ba7faf192698ec5b1bbe683c81ead8380dc84a2a4c591dea89847d8595aa49fbc5b24b1725f1ab985b1f6c18f7baa19143780f4e2eb0a717054968db59515
+DIST atomdep-cached-run-in-this-context-0.5.0.tar.gz 2697 BLAKE2B aada7cb35fa57abc4e97bc76a1a1c77f167441bf82bec4743b4e570721f67edd1c037033dcf058bf72957c7423c957343697e816e85c401e6497c43af41aa3a1 SHA512 15db433f4bbc5a37ad43de672f3f6f234e9e7c94c5ae6b66939653e85102a724ca8bd69a90d2cc1f2307db55916c66325a56e607f42546807f83595c129ca333
DIST atomdep-ctags-3.0.0.tar.gz 12864 BLAKE2B 561a64734f67cd7943f2d6f972e4d1ec55913934357e7a0d3077c2910f938071b090f55880788ebeab5d7fcaa3009c8984a9045dc83089c46d276152653eb156 SHA512 af1d3764cc3a6bb781a9a2357eeb8503886fc14481c3dbe4a899d3c672fea9325524aed3a4c1c87965bc4cce2fbae20b56b32690849afc1fcb751cd5462adbcc
-DIST atomdep-fs-admin-0.1.6.tar.gz 5539 BLAKE2B 9ee1857152cca343673a270c1044ad33a3ddbfb5b8389f2e0449e99348d0bdd4aaaa7e4c07bfb8871ae840f1a69cd90074a769f80fa3cc7f914050bc6f45b29c SHA512 2474523d5441ad882000633a929bcdbc5771b859a80f16a69c15504ff240a59b558e2edb1ca6e12ce91ad58da935243f3950a16e664529c59da70b9912903ae7
-DIST atomdep-git-utils-5.1.0.tar.gz 4141959 BLAKE2B 7504a4ba57b093da659ed0ba7319863636d7f9f1e9a6a4bbd4b6c6fcf9922c9ca32398b44550e4a94d519471ca5cf249976426583f998186398c147c6cce5636 SHA512 1f9c38646b25a526c0399d538e58864c552d65802402df82f8303a936374121db40f61195ea3254e56e31dd9d25b847b325264911f62d6beddfc24931a9367bf
-DIST atomdep-keyboard-layout-2.0.13.tar.gz 17881 BLAKE2B e86a399be545a43768a53d5d9279dae1bc4d87fd99af87a10861f2e3367d6786e3631f8dc77671b08b06e30290f2c97833402e3732a010ae31c7c1c02d9d6afd SHA512 5b155cddb0484edb47a334b21183eccabe6b376290b97b4469732541f4231337b526b90bc37d321ff6dc367d481b1e3c6feb5d39dc9ba67abef8914b53615a66
-DIST atomdep-keytar-4.1.0.tar.gz 8564 BLAKE2B 69b745c6afd22dd4ffd5694205294f4cc7985b9ae5df51e5c7671cee296a2d28732ccd453417eeb60cc66fdfd39247ee90205808fdbfbea8b5585029c22d4d76 SHA512 2f72aa89232da558ad96e838bae23e2b95cb9def52015105584f120902214221f4200fc24dba27e6fe69ad52ca2b429e9f9e28d8ef15f4771e29a829c09ba6f9
-DIST atomdep-nsfw-1.0.16.tar.gz 43214 BLAKE2B 261539bebfe494aad0b372f1837a87c7c2a410bb591df523ea25bd5acd008f7eb0e8460a218fd4ee70d98bc26dd166472e9ea0aea265971cf2e904da913dda88 SHA512 0060d7fb5016454aaaf7df438d973b9a389a6e5f7a166c5d402cf8ef8bcda724501c3bfbd44e37e9e6c38d5f1decaeb48c571aad9145dec38ba0c94073b9702a
+DIST atomdep-fs-admin-0.1.7.tar.gz 5465 BLAKE2B 50e2f5a2b013d3ca877ad608f62c0bb5464b32af55167d3d97b5d03530ff53cf7e84360fe8de2a7e3b29a226ee462b4735ffe5a16d9e6a6e51027f5bd34431b6 SHA512 110362a2a50782d9d7f44acc88fbaf1c2031d0cd5549af6ee28c4617e10655804bd79320e41c44cc606b4c06075100c3a1bab0d5873ee98a995b048821ef84c1
+DIST atomdep-git-utils-5.2.1.tar.gz 4142068 BLAKE2B 7a803e0bbfb8c6afc2e7c82f782d3d80482646935b94e6d878d13120dc0294818a60bfb898a82d3fdea02300bbe473640c1c8fdf2ece9a531eb4b0eb564edad5 SHA512 3eb5da5f8a9bead8bdc94e29d794567969251ddc845c210871d8db9b75f998058bd55085a65d613ddc64ed3daa70544d845ed3557ab7822a2d9c95677bed61b4
+DIST atomdep-keyboard-layout-2.0.14.tar.gz 17919 BLAKE2B 9b2a83cf0b4db13e402d6a97fd8729041a25e7296f5e5be23181bad84a314a9012dc69cc387699b3edc5d37a98fcfe8923feb457c3f80e7d0db7b1610542e49b SHA512 42e09fa440bca1a8ba17ca1a3507718b9fb5408a5a42ef4749523dcb3902d876c85de0676a1cc7143455194b70c005a2367ce33418d423f763b2b30651380ad7
+DIST atomdep-keytar-4.3.0.tar.gz 8896 BLAKE2B 56d669320ee7eeb78eb676a76de6efe4417b80b5931507009b73cf4aa70b4125fd96a7b1ec0bf05ada86d3107dbdb82028517eccccabfb1d61b1fecd08261de8 SHA512 a5dfbefeff9f4b42d02a6cd6956e91d65ce24d716a85f19e4bab182dfb9322a132da90f301b8eeb5b496f1ff6d9c974410c9fff578404254f7e1502d97d87831
DIST atomdep-nslog-3.0.0.tar.gz 2270 BLAKE2B 3258b7e7d7f94a89b0e5a21bfedfbe71bbfe3d776871aaeb3443ce6a7759860abfef2b8af823dab009183b5378c1ed06c7b2729df9acc09d3c5ea6a5f47ff160 SHA512 6a0ce8970ae12fdefd0935916e5501bb89e366fb66b05fffade884f3adf4add4b135eb4f0f208684e28424fdb9858ee8193eb1f3db1f7eac3cb49bdb5d1a4bb1
-DIST atomdep-oniguruma-6.2.1.tar.gz 586350 BLAKE2B 65574ef004c98cced7a9f5917845015ccd84b2383a85d889365da5c73313114454458b441bf6588eaee2a17150d674b7754ccc0bbb2d68ae3d98f7d5ca63530e SHA512 faa46dc4c1b8d7e75ab54512de9a823c5b958a7ccb43333375b33e16de47a464ea2a9ba9996596a8359d423a3e8c9d63cc92a5162b3f9d44b4485304073b41f1
+DIST atomdep-oniguruma-7.0.2.tar.gz 584590 BLAKE2B 2e3e622fdf7c463fa670786f0af8815ffbb1d7a85ff5759b8b13fa2b4ed8cec5959b4186b09521a3060e42abb5d83505f7b925a18f41c99e4d9dab809e39ec01 SHA512 cc2b1d3714ebac1e3254f33185c20e0c6bf5a7835506ef56bec5a720684ca6ee5d8cee0c4165eb0bb60a8edcdaf8eca846aaa0cb6ec2a9859ad61e5ed830db8a
DIST atomdep-pathwatcher-8.0.1.tar.gz 18357 BLAKE2B 8e2b86da307757c352d0cab5eff64cc31e6745bf10a982f6ef11a0fd92eeeadf5b438aaaaa00e679100600691e59ff7aa7badf33e62c33a2497b5573cf7b4711 SHA512 34df8fecf456753f1977517018e5ff78b143f2d36e1417435bfcac2f9b9f8bd045a8080e7d0ad5d2930c63fa110c539911447863c46e757a4bb8f8c4f5bda999
DIST atomdep-scrollbar-style-3.2.0.tar.gz 3498 BLAKE2B 2d1a88f2764b5a51da92e41f5dd5424a4ffbc13ec9b2e826236097ff7ebb0babd22b4e4cd00873e786aa52d901eedce49bd102ad6398eda614734bdd78b8b4e3 SHA512 9f5fcc2bcb13cb81e95a52aa6db0c99ffd67c9cd48a9faf0223587359f4082c3e867cb384497dc6be3e8230b4cd035e910a7048d431e81a28dfded0bc572da18
-DIST atomdep-spellchecker-3.4.4.tar.gz 481892 BLAKE2B 3bae26ffffbaffdbac6f082c6f33ea4f5127583663e1df3ed8d98cebed2ce11ea0d9965615e369383695df6ad55aa996e8968e6616415d359ffae640a679f47b SHA512 974b3ce9866ce7e3f30137856ea0f4b1348c105edb833a94620c6b53cfa7052c37575f6dcd160a322fa10c61babfc32c916786d9d44ad10efdb2ab3578620ac1
-DIST atomdep-superstring-2.2.16.tar.gz 795922 BLAKE2B 58f66a51f20f11bd6d4335c945c5af2418ab5e210af989f9480e319a55cf273d63c97db2c5a32e8196dc06c14bbb552ea1e34d2e8910807f8e2d04925c953b41 SHA512 1ea105483032a5f6fb3b752dce33cef7498a9d597cdef35efb00ef26dba95c84dda863452eaa954d38c9c22510397aedfeed2ed44874560fdca4151d87d49e5c
-DIST nodejs-nan-2.6.2.tar.gz 161949 BLAKE2B f74e8d56e67ae03e60e0be7752ed9527bd8499c01f7df8899f3eb6735b1286633753e8bf595781b6d3d1446df20483fc0377bd745be10c6bae0ad66426751b79 SHA512 d1b5ed12e90accfa117cb73b9432897631ed2dd6045f93fa8b53237a13cec0ec467b14c035e9e4d4a5c6588949c1c80b0eef48a46d5c9c0a1f81ef400da031c3
-EBUILD atom-1.23.3.ebuild 14818 BLAKE2B 1e1d81e555efdc6e0ac073ece2b4c2d0128b3aee89c09656e9a58e00979b883d6d22facc55e51f34e38609412f6661780e54035fc312c797c69ed737190dfee0 SHA512 23a70450f5223b3e2f4b8a63240efdf5a6f1337aeee386c5848224f3963211621fde3fa071208d99c1d06def823c6001e496a6ac21e5cc399a80d2a29e91ad3f
-EBUILD atom-1.24.0_beta3.ebuild 14821 BLAKE2B 7d50260f0e4fa4ddf0486d694fb23c87ed049bffd4fdc424c30be7fc7fcb014298d2db907b999329d54af7f1b0481931981c11c318e9a79d6bb9b0b218273a83 SHA512 afa15e00d2446ab6f9104840641588977c0a9b1094c0df66fd00ec39514aed614c09f3c072a5d373fe8ed8e1d3efa01c48665e5e0f4d4ad8e3c257e0d2a1fc2a
+DIST atomdep-spellchecker-3.5.0.tar.gz 476758 BLAKE2B 73ca0225bedf7daa0b9f9e3ad5a549cb124443de0887ee77f1a7a7c1e31f1a1c363a5f0118ecb17e70c4ae64338eac83c24dbe4cd13a6ae182d314d22bef3dc4 SHA512 5daed79d1ba562187937f5c435e2f63bcffcef95e12c18e8b3b05e9afd2b7dc815ea88cd60c4ab5ec714654189c27897dadebb798fa535425ea6d0f56cc6ae1d
+DIST atomdep-superstring-2.3.4.tar.gz 822697 BLAKE2B 0e81ab0fe8d429c80298a70034c0645412e16dcd38540f5a87433689581c741b554a82739e6bb6954d316bd9a9a6425b9770b3880fe883e27199ea1aa10bbe81 SHA512 0dc3644c2741f45dc531945d5114802ec1e2fbb0d6a85088d1c1fe120f26c0183e93142ce86781dcbac652f088e5b101e83b65bb6a31f1460dd289cf37825e65
+DIST atomdep-tree-sitter-0.13.15.tar.gz 193608 BLAKE2B adcc1cec97e0675868b4782a4dede09bbad58e3d85fb55eba9ec0867bc4bc91045db8023aff3975471748297563325359cd6a4819c4474e5aedfec3e8d7565c9 SHA512 16ebd4f9cb0eeedfeb42a2dd2f7fb0e0983ee19976d98e2e0a2e0bf57fea246e7b667ef56733f7a07b434918298889acea0dd8edc109bc5ecafeb0b0d75abdd9
+DIST atomdep-tree-sitter-bash-0.13.6.tar.gz 346883 BLAKE2B f1a7bd0391d3d21223d889deb4e38ecf5e323051977cd42095fdb2ac458803968d1c435e6f7c12b0073486eb677ab2f2748fc7dd76e9228e746ac634221ea1c5 SHA512 9761d822c2f5f608950fa4f91b237db136afd4d545b708412b993f89785eb3a931a9a29fc3a652169af20e3c8281ab28ca117bc59bb4b1f2e1dfb6298c843712
+DIST atomdep-tree-sitter-c-0.13.7.tar.gz 192058 BLAKE2B e673311a6903736d204b149a983159f7ca52ffc3e1b44f7e800f6a8fcebb49059d6fd6e341506d50d19d3781b495bf0414f8794af2f9e6a93e341fd55fdfa264 SHA512 af533977d06be796c3c1a98fbc44f60cf46a4fdc0f233edd9766c462cdad5116398231863d9cfbe4ffb49befe9bf97466c6d8b9a1535d0af835aa0242e4f5ed5
+DIST atomdep-tree-sitter-cpp-0.13.8.tar.gz 610448 BLAKE2B df5ac56a6317c39b5ac1a4d248b0c96751ebed08868977417f68daf30a1c04806874128dd75667d7b543b3062d168ba570783df291931c0a3bed990526eea727 SHA512 3d3b488f8b1e277a73c9c961bf48f3207e6720faac5731d1ed9a02bd01fad0bd844180e867f2bc7b3bc278fe5d218d6808e0e191cf20c763d9fa7e326b34de4e
+DIST atomdep-tree-sitter-css-0.13.7.tar.gz 79065 BLAKE2B 5671e6395f41b3dd2f3154d335e9b581507a8a7ad90ed3f4f27bd89055c96bef82d883984055dbf1675c93fe8aa9edce5151902261300d1cedf1dc7d955b9149 SHA512 c4c85564779300081c5f8991eb7ab32eecd5e477eba7c2217430ec2c0b276bba5b4f5107859c412bba68b1531fd5089c6db9491f81aa1409d9e9f3aa5036ca5d
+DIST atomdep-tree-sitter-embedded-template-0.13.0.tar.gz 6153 BLAKE2B 7da15e09def3a4088b16f691273f0e99311aea53a20577a618026fbd3f4bd78d3cb4c5a6aa694ed3122465621128d26dd084c85d492f8a6d62246a1e50f29a2f SHA512 20956331c2f6060faa17e1e26ed1174c5e0213a03aea9a464aa53c13ed9d767da90aa0ed646444848f8a7ea7ab17d369292a353ad6ef8578845cf75740034b1a
+DIST atomdep-tree-sitter-go-0.13.3.tar.gz 162468 BLAKE2B a3530580f1cddd672807d1d4c6652405a0558edf7d362523d507edacb6ba2abefa58fefe50d762e9c611ab51f6a4b6e62000f2e898058ac3f892fe6e6a11940c SHA512 a579e5103330ac276761a3b37c4ce53255aa644283257106e1b3ef73d8f925277b2180d606bc31a3e5d7bab68b4a56e3d6624bda428b2033bc70a0cdc54b1c1f
+DIST atomdep-tree-sitter-html-0.13.5.tar.gz 13738 BLAKE2B c33b69eeb6b1eba0c864988eafe49327eb2f9a770678b03c49548aeb2fff2a1f31a5132565ca4025c008914a410d6cd0a757e9e435efc90cba58443cc2dc88be SHA512 95ac288df0e58fff6e8c462f2e85b8f964d3876a1cad80983f60f0e4b9b0c6ebef136947aff0f845603c5b53788e9479f2d55e7f4492aa79d0c09925d6934878
+DIST atomdep-tree-sitter-javascript-0.13.8.tar.gz 1729028 BLAKE2B ea2c8de9091ae224e595b0f50d4b32797c0b87937698b074e6603cdde0ecbfd57e6da7d9d6540d0de7175c6386130de5fb3db6a537a935c121eee8c5ae46879a SHA512 a7bbba657117d6c2238063408ae48d9cae8f4a5e45894b10cc457640e018547e46375ddc52752ca1afc189a0cc590dee75da0d5f04ddc6107c530340a258b341
+DIST atomdep-tree-sitter-python-0.13.4.tar.gz 204998 BLAKE2B 54d22a4482705cf482cd13bf8786f2d4a26e709b836007a1cd2bf43a537738a2b27474bc050253462f834f7f211b4c6b5b8b82cc3a1de41faa334c93fdc02db3 SHA512 250ef9ffaf15b0f3125ad7a88ad37181d4e5030e6ca5b4c518ad97822478d6d893b6493c70e35db5f07b3dedb25928285c60cdb5cbb4fd392ae07acaad6aca7d
+DIST atomdep-tree-sitter-regex-0.13.1.tar.gz 17153 BLAKE2B 44e137c5464af5e77011a9d8bb9cd6ffa7abf50bbd27a6fc3b8e53739fd6e6c664bce7c1ed348ecbb2a27e8f301caa8a783c5ba756870622fbe1bfe76ee4a8bb SHA512 03e50bb9539cdfb34e8e69a675da97311c14abc839d4509167b612ba92dd15c1e7825d5a748de70513ec902f40f1efbef6317ee5f2f2b700385fab875bfbff9a
+DIST atomdep-tree-sitter-ruby-0.13.11.tar.gz 2020951 BLAKE2B 106eb35468106d971338e3387484470a61c84da8a1a2f9632eecd0e84fe13dc801da527652817633083469668f03cc9ea4241526cfe414a7c0c2c2d96d44f311 SHA512 101981059db4c9aa11a834604287fd622af6f7fde5bf9718ff2f140d40b51b345fe6961de02b185345808c827b77202ffb79fba77cbf2ceb9793224b888375c0
+DIST atomdep-tree-sitter-typescript-0.13.6.tar.gz 662334 BLAKE2B a4e7898fc115fd73c9a86578aa214cfb11ac0b57bcfe3db8226463a7613d78bec11b987311f8ee884a4aa679ff16deaee158eb36ba8a370be65daff98e41cdac SHA512 d5cb2f0ab5b981fe1de03d195c272db150ebd0cf9f3825d87d7fd3bdee8e01e1d4745bb426c23e084b12e97dd51fbba65f9ffad910d87b57306ef3a10ae2225c
+DIST nodejs-nan-2.11.1.tar.gz 170929 BLAKE2B 21287b45865c578257399abddd2fb6a7234891da47bb97073b7595ace6bafc83630f44141d871b061e5d13b6c4b9e02c0d4883ef0a6d6f0d9851ff645a0ab616 SHA512 a80c2857c2f15c085c506cabd081338e25a5de2028327567a039ed9219b912d36ebdfec80f13bebab9872b981d86a2fcc2c8145739b428b8f4148d1a883e408f
+EBUILD atom-1.32.1.ebuild 17693 BLAKE2B 51d22760a70b631a3e00ab5f64add70c05d94737ed12c22b49b52958616bd2cbdcb3c5ced11812b53f018747bbdc7c91222cc1219e8136b1733a9210d4e2421a SHA512 d9c1923bc47d1cede665518ff07dad87aa76e52eaa4f1cd00f3973cb4306a884520498f17210a14d6c31b9634434b7ed3620b184c05f4a0554de1129210d9c0a
MISC metadata.xml 531 BLAKE2B 75dc8465fe585ee047f3e702b40d1e951759c67b28e63cbba370813e34c5213748529022dd3ecc8477bedcee3657f87ce162bde4984a3d4afbe2b2a200cc1060 SHA512 ba84d0e101f6d53dbd6abb0e441d426bfd04f890331bd5357c18d7a34eea903897a06d725f45d50d95a645018f5ba6b519be07b7dd1ba6cbcfb30bbf1602ff12
diff --git a/app-editors/atom/atom-1.23.3.ebuild b/app-editors/atom/atom-1.23.3.ebuild
deleted file mode 100644
index 14043a200d4f..000000000000
--- a/app-editors/atom/atom-1.23.3.ebuild
+++ /dev/null
@@ -1,535 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# NOTE: this ebuild has been generated by atom-ebuild-gen.py from the
-# atom overlay. If you would like to make changes, please consider
-# modifying the ebuild template and submitting a PR to
-# https://github.com/elprans/atom-overlay.
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-inherit python-single-r1 multiprocessing rpm virtualx xdg-utils
-
-DESCRIPTION="A hackable text editor for the 21st Century"
-HOMEPAGE="https://atom.io"
-MY_PV="${PV//_/-}"
-
-ELECTRON_V=1.6.15
-ELECTRON_SLOT=1.6
-
-ASAR_V=0.13.0
-# All binary packages depend on this
-NAN_V=2.6.2
-
-ATOM__NSFW_V=1.0.18
-CACHED_RUN_IN_THIS_CONTEXT_V=0.4.1
-CTAGS_V=3.0.0
-FS_ADMIN_V=0.1.6
-GIT_UTILS_V=5.1.0
-KEYBOARD_LAYOUT_V=2.0.13
-KEYTAR_V=4.1.0
-NSFW_V=1.0.16
-NSLOG_V=3.0.0
-ONIGURUMA_V=6.2.1
-PATHWATCHER_V=8.0.1
-SCROLLBAR_STYLE_V=3.2.0
-SPELLCHECKER_V=3.4.4
-SUPERSTRING_V=2.2.16
-
-# The x86_64 arch below is irrelevant, as we will rebuild all binary packages.
-SRC_URI="
- https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/atom.x86_64.rpm -> atom-bin-${MY_PV}.rpm
- https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> atom-${MY_PV}.tar.gz
- https://github.com/elprans/asar/releases/download/v${ASAR_V}-gentoo/asar-build.tar.gz -> asar-${ASAR_V}.tar.gz
- https://github.com/nodejs/nan/archive/v${NAN_V}.tar.gz -> nodejs-nan-${NAN_V}.tar.gz
- https://registry.npmjs.org/@atom/nsfw/-/nsfw-1.0.18.tgz -> atomdep-atom--nsfw-1.0.18.tar.gz
- https://registry.npmjs.org/cached-run-in-this-context/-/cached-run-in-this-context-0.4.1.tgz -> atomdep-cached-run-in-this-context-0.4.1.tar.gz
- https://registry.npmjs.org/ctags/-/ctags-3.0.0.tgz -> atomdep-ctags-3.0.0.tar.gz
- https://registry.npmjs.org/fs-admin/-/fs-admin-0.1.6.tgz -> atomdep-fs-admin-0.1.6.tar.gz
- https://registry.npmjs.org/git-utils/-/git-utils-5.1.0.tgz -> atomdep-git-utils-5.1.0.tar.gz
- https://registry.npmjs.org/keyboard-layout/-/keyboard-layout-2.0.13.tgz -> atomdep-keyboard-layout-2.0.13.tar.gz
- https://registry.npmjs.org/keytar/-/keytar-4.1.0.tgz -> atomdep-keytar-4.1.0.tar.gz
- https://registry.npmjs.org/nsfw/-/nsfw-1.0.16.tgz -> atomdep-nsfw-1.0.16.tar.gz
- https://registry.npmjs.org/nslog/-/nslog-3.0.0.tgz -> atomdep-nslog-3.0.0.tar.gz
- https://registry.npmjs.org/oniguruma/-/oniguruma-6.2.1.tgz -> atomdep-oniguruma-6.2.1.tar.gz
- https://registry.npmjs.org/pathwatcher/-/pathwatcher-8.0.1.tgz -> atomdep-pathwatcher-8.0.1.tar.gz
- https://registry.npmjs.org/scrollbar-style/-/scrollbar-style-3.2.0.tgz -> atomdep-scrollbar-style-3.2.0.tar.gz
- https://registry.npmjs.org/spellchecker/-/spellchecker-3.4.4.tgz -> atomdep-spellchecker-3.4.4.tar.gz
- https://registry.npmjs.org/superstring/-/superstring-2.2.16.tgz -> atomdep-superstring-2.2.16.tar.gz
-"
-
-BINMODS=(
- atom--nsfw
- cached-run-in-this-context
- ctags
- fs-admin
- git-utils
- keyboard-layout
- keytar
- nsfw
- nslog
- oniguruma
- pathwatcher
- scrollbar-style
- spellchecker
- superstring
-)
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
- ${PYTHON_DEPS}
- >=app-text/hunspell-1.3.3:=
- >=dev-libs/libgit2-0.23:=[ssh]
- >=dev-libs/libpcre2-10.22:=[jit,pcre16]
- >=gnome-base/libgnome-keyring-3.12:=
- >=dev-libs/oniguruma-6.6.0:=
- >=dev-util/ctags-5.8
- >=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
- x11-libs/libxkbfile"
-RDEPEND="
- ${DEPEND}
- !sys-apps/apmd
-"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-BIN_S="${WORKDIR}/${PN}-bin-${MY_PV}"
-BUILD_DIR="${S}/out"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- local a
-
- for a in ${A} ; do
- case ${a} in
- *.rpm) srcrpm_unpack "${a}" ;;
- *) _unpack "${a}" ;;
- esac
- done
-
- mkdir "${BIN_S}" || die
- mv "${WORKDIR}/usr" "${BIN_S}" || die
-}
-
-src_prepare() {
- local install_dir="$(get_install_dir)"
- local suffix="$(get_install_suffix)"
- local nan_s="${WORKDIR}/nodejs-nan-${NAN_V}"
- local patch
- local binmod
- local _s
-
- mkdir "${BUILD_DIR}" || die
- cp -a "${BIN_S}/$(get_atom_rpmdir)/resources/app" \
- "${BUILD_DIR}/app" || die
-
- # Add source files omitted from the upstream binary distribution,
- # and which we want to include in ours.
- cp -a -t "${BUILD_DIR}/app" "${S}/spec" || die
-
- # Unpack app.asar
- if [ -e "${BIN_S}/$(get_atom_rpmdir)/resources/app.asar" ]; then
- easar extract "${BIN_S}/$(get_atom_rpmdir)/resources/app.asar" \
- "${BUILD_DIR}/app"
- fi
-
- cd "${BUILD_DIR}/app" || die
-
- eapply "${FILESDIR}/atom-python.patch"
- eapply "${FILESDIR}/apm-python.patch"
- eapply "${FILESDIR}/atom-unbundle-electron-r1.patch"
- eapply "${FILESDIR}/atom-apm-path-r2.patch"
- eapply "${FILESDIR}/atom-license-path-r1.patch"
- eapply "${FILESDIR}/atom-fix-app-restart-r1.patch"
- eapply "${FILESDIR}/atom-marker-layer-r1.patch"
-
- sed -i -e "s|{{NPM_CONFIG_NODEDIR}}|$(get_electron_nodedir)|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_PATH}}|$(get_electron_dir)/electron|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_RESOURCE_PATH}}|${EROOT%/}${install_dir}/app.asar|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_PREFIX}}|${EROOT%/}|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|^#!/bin/bash|#!${EROOT%/}/bin/bash|g" \
- ./atom.sh \
- || die
-
- local env="export NPM_CONFIG_NODEDIR=$(get_electron_nodedir)\n\
- export ELECTRON_NO_ASAR=1"
- sed -i -e \
- "s|\"\$binDir/\$nodeBin\"|${env}\nexec $(get_electron_dir)/node|g" \
- apm/bin/apm || die
-
- sed -i -e \
- "s|^\([[:space:]]*\)node[[:space:]]\+|\1\"$(get_electron_dir)/node\" |g" \
- apm/node_modules/npm/bin/node-gyp-bin/node-gyp || die
-
- sed -i -e \
- "s|atomCommand = 'atom';|atomCommand = '${EROOT%/}/usr/bin/atom${suffix}'|g" \
- apm/lib/test.js || die
-
- rm apm/bin/node || die
-
- sed -i -e "s|/$(get_atom_rpmdir)/atom|${EROOT%/}/usr/bin/atom${suffix}|g" \
- "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" || die
-
- for binmod in ${BINMODS[@]}; do
- _s="${WORKDIR}/$(package_dir ${binmod})"
- cd "${_s}" || die
- if _have_patches_for "${binmod}"; then
- for patch in "${FILESDIR}"/${binmod}-*.patch; do
- eapply "${patch}"
- done
- fi
- done
-
- cd "${BUILD_DIR}/app" || die
-
- # Unbundle bundled libs from modules
-
- _s="${WORKDIR}/$(package_dir git-utils)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "git;libgit2;git2" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir oniguruma)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "onig_scanner;oniguruma;onig" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir spellchecker)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "spellchecker;hunspell;hunspell" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir superstring)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle \
- "superstring_core;./vendor/pcre/pcre.gyp:pcre;pcre2-16; \
- -DPCRE2_CODE_UNIT_WIDTH=16" \
- "${_s}/binding.gyp" || die
-
- for binmod in ${BINMODS[@]}; do
- _s="${WORKDIR}/$(package_dir ${binmod})"
- mkdir -p "${_s}/node_modules" || die
- ln -s "${nan_s}" "${_s}/node_modules/nan" || die
- done
-
- sed -i -e "s|{{ATOM_PREFIX}}|${EROOT%/}|g" \
- "${BUILD_DIR}/app/src/config-schema.js" || die
-
- sed -i -e "s|{{ATOM_SUFFIX}}|${suffix}|g" \
- "${BUILD_DIR}/app/src/config-schema.js" || die
-
- eapply_user
-}
-
-src_configure() {
- local binmod
-
- for binmod in ${BINMODS[@]}; do
- einfo "Configuring ${binmod}..."
- cd "${WORKDIR}/$(package_dir ${binmod})" || die
- enodegyp_atom configure
- done
-}
-
-src_compile() {
- local binmod
- local x
- local ctags_d="node_modules/symbols-view/vendor"
- local jobs=$(makeopts_jobs)
- local gypopts
-
- # Transpile any yet untranspiled files.
- ecoffeescript "${BUILD_DIR}/app/spec/*.coffee"
-
- gypopts="--verbose"
-
- if [[ ${MAKEOPTS} == *-j* && ${jobs} != 999 ]]; then
- gypopts+=" --jobs ${jobs}"
- fi
-
- mkdir -p "${BUILD_DIR}/modules/" || die
-
- for binmod in ${BINMODS[@]}; do
- einfo "Building ${binmod}..."
- cd "${WORKDIR}/$(package_dir ${binmod})" || die
- enodegyp_atom ${gypopts} build
- x=${binmod##node-}
- mkdir -p "${BUILD_DIR}/modules/${x}" || die
- cp build/Release/*.node "${BUILD_DIR}/modules/${x}" || die
- done
-
- # Put compiled binary modules in place
- _fix_binmods "${BUILD_DIR}/app" "apm"
- _fix_binmods "${BUILD_DIR}/app" "node_modules"
-
- # Remove non-Linux vendored ctags binaries
- rm "${BUILD_DIR}/app/${ctags_d}/ctags-darwin" \
- "${BUILD_DIR}/app/${ctags_d}/ctags-win32.exe" || die
-
- # Re-pack app.asar
- # Keep unpack rules in sync with build/tasks/generate-asar-task.coffee
- cd "${BUILD_DIR}" || die
- x="--unpack={*.node,ctags-config,ctags-linux,**/spec/fixtures/**,**/node_modules/spellchecker/**,**/resources/atom.png}"
- xd="--unpack-dir=apm"
- easar pack "${x}" "${xd}" "app" "app.asar"
-
- rm -r "${BUILD_DIR}/app.asar.unpacked/apm" || die
-
- # Replace vendored ctags with a symlink to system ctags
- rm "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
- ln -s "${EROOT%/}/usr/bin/ctags" \
- "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
-}
-
-src_test() {
- local electron="$(get_electron_dir)/electron"
- local app="${BUILD_DIR}/app.asar"
-
- virtx "${electron}" --app="${app}" --test "${app}/spec"
-}
-
-src_install() {
- local install_dir="$(get_install_dir)"
- local suffix="$(get_install_suffix)"
-
- insinto "${install_dir}"
-
- doins "${BUILD_DIR}/app.asar"
- doins -r "${BUILD_DIR}/app.asar.unpacked"
-
- insinto "${install_dir}/app"
- doins -r "${BUILD_DIR}/app/apm"
-
- insinto "/usr/share/applications/"
- newins "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" \
- "atom${suffix}.desktop"
-
- insinto "/usr/share/icons/"
- doins -r "${BIN_S}/usr/share/icons/hicolor"
-
- exeinto "${install_dir}"
- newexe "${BUILD_DIR}/app/atom.sh" atom
- insinto "/usr/share/licenses/${PN}${suffix}"
- doins "${BIN_S}/$(get_atom_rpmdir)/resources/LICENSE.md"
- dosym "${install_dir}/atom" "/usr/bin/atom${suffix}"
- dosym "${install_dir}/app/apm/bin/apm" "/usr/bin/apm${suffix}"
-
- _fix_executables "${install_dir}/app/apm/bin"
- _fix_executables "${install_dir}/app/apm/node_modules/.bin"
- _fix_executables "${install_dir}/app/apm/node_modules/npm/bin"
- _fix_executables "${install_dir}/app/apm/node_modules/npm/bin/node-gyp-bin"
- _fix_executables "${install_dir}/app/apm/node_modules/node-gyp/bin"
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
-}
-
-# Helpers
-# -------
-
-# Return the installation suffix appropriate for the slot.
-get_install_suffix() {
- local c=(${SLOT//\// })
- local slot=${c[0]}
- local suffix
-
- if [[ "${slot}" == "0" ]]; then
- suffix=""
- else
- suffix="-${slot}"
- fi
-
- echo -n "${suffix}"
-}
-
-# Return the upstream app name appropriate for $PV.
-get_atom_appname() {
- if [[ "${PV}" == *beta* ]]; then
- echo -n "atom-beta"
- else
- echo -n "atom"
- fi
-}
-
-# Return the app installation path inside the upstream archive.
-get_atom_rpmdir() {
- echo -n "usr/share/$(get_atom_appname)"
-}
-
-# Return the installation target directory.
-get_install_dir() {
- echo -n "/usr/$(get_libdir)/atom$(get_install_suffix)"
-}
-
-# Return the Electron installation directory.
-get_electron_dir() {
- echo -n "${EROOT%/}/usr/$(get_libdir)/electron-${ELECTRON_SLOT}"
-}
-
-# Return the directory containing appropriate Node headers
-# for the required version of Electron.
-get_electron_nodedir() {
- echo -n "${EROOT%/}/usr/include/electron-${ELECTRON_SLOT}/node/"
-}
-
-# Run JavaScript using Electron's version of Node.
-enode_electron() {
- "$(get_electron_dir)"/node $@
-}
-
-# Run node-gyp using Electron's version of Node.
-enodegyp_atom() {
- local apmpath="$(get_atom_rpmdir)/resources/app/apm"
- local nodegyp="${BIN_S}/${apmpath}/node_modules/node-gyp/bin/node-gyp.js"
-
- PATH="$(get_electron_dir):${PATH}" \
- enode_electron "${nodegyp}" \
- --nodedir="$(get_electron_nodedir)" $@ || die
-}
-
-# Coffee Script wrapper.
-ecoffeescript() {
- local cscript="${FILESDIR}/transpile-coffee-script.js"
-
- # Disable shell glob expansion, as we want the coffee script
- # transpiler to do that instead.
- set -f
- echo "ecoffeescript" $@
- ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
- NODE_PATH="${BUILD_DIR}/app/node_modules" \
- enode_electron "${cscript}" $@ || die
- set +f
-}
-
-# asar wrapper.
-easar() {
- local asar="${WORKDIR}/$(package_dir asar)/node_modules/asar/bin/asar"
- echo "asar" $@
- enode_electron "${asar}" $@ || die
-}
-
-# Return a $WORKDIR directory for a given package name.
-package_dir() {
- local binmod="${1//-/_}"
- local binmod_v="${binmod^^}_V"
- echo -n ${1}-${!binmod_v}
-}
-
-# Check if there are patches for a given package.
-_have_patches_for() {
- local _patches="${1}-*.patch" _find
- _find=$(find "${FILESDIR}" -maxdepth 1 -name "${_patches}" -print -quit)
- test -n "$_find"
-}
-
-# Tarballs on registry.npmjs.org are wildly inconsistent,
-# and violate the convention of having ${P} as the top directory name.
-# This helper detects and fixes that.
-_unpack() {
- local a="${1}"
- local b="${a%.tar.gz}"
- local p="${b#atomdep-}"
- local dir="$(tar -tzf "${DISTDIR}/${a}" | head -1 | cut -f1 -d'/')"
-
- unpack "${a}"
-
- if [[ "${dir}" != "${p}" ]]; then
- # Set the correct name for the unpacked directory.
- mv "${WORKDIR}/${dir}" "${WORKDIR}/${p}" || die
- fi
-}
-
-# Check if the binary node module is actually a valid dependency.
-# Sometimes the upstream removes a dependency from package.json but
-# forgets to remove the module from node_modules.
-_is_valid_binmod() {
- local mod
-
- for mod in "${BINMODS[@]}"; do
- if [[ "${mod}" == "${1}" ]]; then
- return 0
- fi
- done
-
- return 1
-}
-
-# Replace binary node modules with the newly compiled versions thereof.
-_fix_binmods() {
- local _dir="${2}"
- local _prefix="${1}"
- local path
- local relpath
- local modpath
- local mod
- local f
- local d
- local cruft
-
- (find "${_prefix}/${_dir}" -name '*.node' -print || die) \
- | while IFS= read -r path; do
- f=$(basename "${path}")
- d=$(dirname "${path}")
- relpath=${path#${_prefix}}
- relpath=${relpath##/}
- relpath=${relpath#W${_dir}}
- modpath=$(dirname ${relpath})
- modpath=${modpath%build/Release}
- mod=$(basename ${modpath})
-
- _is_valid_binmod "${mod}" || continue
-
- # must copy here as symlinks will cause the module loading to fail
- cp -f "${BUILD_DIR}/modules/${mod}/${f}" "${path}" || die
- cruft=$(find "${d}" -name '*.a' -print)
- if [[ -n "${cruft}" ]]; then
- rm ${cruft} || die
- fi
- done
-}
-
-# Fix script permissions and shebangs to point to the correct version
-# of Node.
-_fix_executables() {
- local _dir="${1}"
- local _node_sb="#!$(get_electron_dir)"/node
-
- (find -L "${ED}/${_dir}" -maxdepth 1 -mindepth 1 -type f -print || die) \
- | while IFS= read -r f; do
- IFS= read -r shebang < "${f}"
-
- if [[ ${shebang} == '#!'* ]]; then
- fperms +x "${f#${ED}}"
- if [[ "${shebang}" == "#!/usr/bin/env node" || "${shebang}" == "#!/usr/bin/node" ]]; then
- einfo "Fixing node shebang in ${f#${ED}}"
- sed --follow-symlinks -i \
- -e "1s:${shebang}$:${_node_sb}:" "${f}" || die
- fi
- fi
- done || die
-}
diff --git a/app-editors/atom/atom-1.24.0_beta3.ebuild b/app-editors/atom/atom-1.24.0_beta3.ebuild
deleted file mode 100644
index be1bdba86e3e..000000000000
--- a/app-editors/atom/atom-1.24.0_beta3.ebuild
+++ /dev/null
@@ -1,535 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# NOTE: this ebuild has been generated by atom-ebuild-gen.py from the
-# atom overlay. If you would like to make changes, please consider
-# modifying the ebuild template and submitting a PR to
-# https://github.com/elprans/atom-overlay.
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-inherit python-single-r1 multiprocessing rpm virtualx xdg-utils
-
-DESCRIPTION="A hackable text editor for the 21st Century"
-HOMEPAGE="https://atom.io"
-MY_PV="${PV//_/-}"
-
-ELECTRON_V=1.6.15
-ELECTRON_SLOT=1.6
-
-ASAR_V=0.13.0
-# All binary packages depend on this
-NAN_V=2.6.2
-
-ATOM__NSFW_V=1.0.18
-CACHED_RUN_IN_THIS_CONTEXT_V=0.4.1
-CTAGS_V=3.0.0
-FS_ADMIN_V=0.1.6
-GIT_UTILS_V=5.1.0
-KEYBOARD_LAYOUT_V=2.0.13
-KEYTAR_V=4.1.0
-NSFW_V=1.0.16
-NSLOG_V=3.0.0
-ONIGURUMA_V=6.2.1
-PATHWATCHER_V=8.0.1
-SCROLLBAR_STYLE_V=3.2.0
-SPELLCHECKER_V=3.4.4
-SUPERSTRING_V=2.2.16
-
-# The x86_64 arch below is irrelevant, as we will rebuild all binary packages.
-SRC_URI="
- https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/atom.x86_64.rpm -> atom-bin-${MY_PV}.rpm
- https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> atom-${MY_PV}.tar.gz
- https://github.com/elprans/asar/releases/download/v${ASAR_V}-gentoo/asar-build.tar.gz -> asar-${ASAR_V}.tar.gz
- https://github.com/nodejs/nan/archive/v${NAN_V}.tar.gz -> nodejs-nan-${NAN_V}.tar.gz
- https://registry.npmjs.org/@atom/nsfw/-/nsfw-1.0.18.tgz -> atomdep-atom--nsfw-1.0.18.tar.gz
- https://registry.npmjs.org/cached-run-in-this-context/-/cached-run-in-this-context-0.4.1.tgz -> atomdep-cached-run-in-this-context-0.4.1.tar.gz
- https://registry.npmjs.org/ctags/-/ctags-3.0.0.tgz -> atomdep-ctags-3.0.0.tar.gz
- https://registry.npmjs.org/fs-admin/-/fs-admin-0.1.6.tgz -> atomdep-fs-admin-0.1.6.tar.gz
- https://registry.npmjs.org/git-utils/-/git-utils-5.1.0.tgz -> atomdep-git-utils-5.1.0.tar.gz
- https://registry.npmjs.org/keyboard-layout/-/keyboard-layout-2.0.13.tgz -> atomdep-keyboard-layout-2.0.13.tar.gz
- https://registry.npmjs.org/keytar/-/keytar-4.1.0.tgz -> atomdep-keytar-4.1.0.tar.gz
- https://registry.npmjs.org/nsfw/-/nsfw-1.0.16.tgz -> atomdep-nsfw-1.0.16.tar.gz
- https://registry.npmjs.org/nslog/-/nslog-3.0.0.tgz -> atomdep-nslog-3.0.0.tar.gz
- https://registry.npmjs.org/oniguruma/-/oniguruma-6.2.1.tgz -> atomdep-oniguruma-6.2.1.tar.gz
- https://registry.npmjs.org/pathwatcher/-/pathwatcher-8.0.1.tgz -> atomdep-pathwatcher-8.0.1.tar.gz
- https://registry.npmjs.org/scrollbar-style/-/scrollbar-style-3.2.0.tgz -> atomdep-scrollbar-style-3.2.0.tar.gz
- https://registry.npmjs.org/spellchecker/-/spellchecker-3.4.4.tgz -> atomdep-spellchecker-3.4.4.tar.gz
- https://registry.npmjs.org/superstring/-/superstring-2.2.16.tgz -> atomdep-superstring-2.2.16.tar.gz
-"
-
-BINMODS=(
- atom--nsfw
- cached-run-in-this-context
- ctags
- fs-admin
- git-utils
- keyboard-layout
- keytar
- nsfw
- nslog
- oniguruma
- pathwatcher
- scrollbar-style
- spellchecker
- superstring
-)
-
-LICENSE="MIT"
-SLOT="beta"
-KEYWORDS="~amd64"
-IUSE=""
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
- ${PYTHON_DEPS}
- >=app-text/hunspell-1.3.3:=
- >=dev-libs/libgit2-0.23:=[ssh]
- >=dev-libs/libpcre2-10.22:=[jit,pcre16]
- >=gnome-base/libgnome-keyring-3.12:=
- >=dev-libs/oniguruma-6.6.0:=
- >=dev-util/ctags-5.8
- >=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
- x11-libs/libxkbfile"
-RDEPEND="
- ${DEPEND}
- !sys-apps/apmd
-"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-BIN_S="${WORKDIR}/${PN}-bin-${MY_PV}"
-BUILD_DIR="${S}/out"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- local a
-
- for a in ${A} ; do
- case ${a} in
- *.rpm) srcrpm_unpack "${a}" ;;
- *) _unpack "${a}" ;;
- esac
- done
-
- mkdir "${BIN_S}" || die
- mv "${WORKDIR}/usr" "${BIN_S}" || die
-}
-
-src_prepare() {
- local install_dir="$(get_install_dir)"
- local suffix="$(get_install_suffix)"
- local nan_s="${WORKDIR}/nodejs-nan-${NAN_V}"
- local patch
- local binmod
- local _s
-
- mkdir "${BUILD_DIR}" || die
- cp -a "${BIN_S}/$(get_atom_rpmdir)/resources/app" \
- "${BUILD_DIR}/app" || die
-
- # Add source files omitted from the upstream binary distribution,
- # and which we want to include in ours.
- cp -a -t "${BUILD_DIR}/app" "${S}/spec" || die
-
- # Unpack app.asar
- if [ -e "${BIN_S}/$(get_atom_rpmdir)/resources/app.asar" ]; then
- easar extract "${BIN_S}/$(get_atom_rpmdir)/resources/app.asar" \
- "${BUILD_DIR}/app"
- fi
-
- cd "${BUILD_DIR}/app" || die
-
- eapply "${FILESDIR}/atom-python.patch"
- eapply "${FILESDIR}/apm-python.patch"
- eapply "${FILESDIR}/atom-unbundle-electron-r1.patch"
- eapply "${FILESDIR}/atom-apm-path-r2.patch"
- eapply "${FILESDIR}/atom-license-path-r1.patch"
- eapply "${FILESDIR}/atom-fix-app-restart-r1.patch"
- eapply "${FILESDIR}/atom-marker-layer-r1.patch"
-
- sed -i -e "s|{{NPM_CONFIG_NODEDIR}}|$(get_electron_nodedir)|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_PATH}}|$(get_electron_dir)/electron|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_RESOURCE_PATH}}|${EROOT%/}${install_dir}/app.asar|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|{{ATOM_PREFIX}}|${EROOT%/}|g" \
- ./atom.sh \
- || die
-
- sed -i -e "s|^#!/bin/bash|#!${EROOT%/}/bin/bash|g" \
- ./atom.sh \
- || die
-
- local env="export NPM_CONFIG_NODEDIR=$(get_electron_nodedir)\n\
- export ELECTRON_NO_ASAR=1"
- sed -i -e \
- "s|\"\$binDir/\$nodeBin\"|${env}\nexec $(get_electron_dir)/node|g" \
- apm/bin/apm || die
-
- sed -i -e \
- "s|^\([[:space:]]*\)node[[:space:]]\+|\1\"$(get_electron_dir)/node\" |g" \
- apm/node_modules/npm/bin/node-gyp-bin/node-gyp || die
-
- sed -i -e \
- "s|atomCommand = 'atom';|atomCommand = '${EROOT%/}/usr/bin/atom${suffix}'|g" \
- apm/lib/test.js || die
-
- rm apm/bin/node || die
-
- sed -i -e "s|/$(get_atom_rpmdir)/atom|${EROOT%/}/usr/bin/atom${suffix}|g" \
- "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" || die
-
- for binmod in ${BINMODS[@]}; do
- _s="${WORKDIR}/$(package_dir ${binmod})"
- cd "${_s}" || die
- if _have_patches_for "${binmod}"; then
- for patch in "${FILESDIR}"/${binmod}-*.patch; do
- eapply "${patch}"
- done
- fi
- done
-
- cd "${BUILD_DIR}/app" || die
-
- # Unbundle bundled libs from modules
-
- _s="${WORKDIR}/$(package_dir git-utils)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "git;libgit2;git2" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir oniguruma)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "onig_scanner;oniguruma;onig" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir spellchecker)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle "spellchecker;hunspell;hunspell" \
- "${_s}/binding.gyp" || die
-
- _s="${WORKDIR}/$(package_dir superstring)"
- ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
- --inplace --unbundle \
- "superstring_core;./vendor/pcre/pcre.gyp:pcre;pcre2-16; \
- -DPCRE2_CODE_UNIT_WIDTH=16" \
- "${_s}/binding.gyp" || die
-
- for binmod in ${BINMODS[@]}; do
- _s="${WORKDIR}/$(package_dir ${binmod})"
- mkdir -p "${_s}/node_modules" || die
- ln -s "${nan_s}" "${_s}/node_modules/nan" || die
- done
-
- sed -i -e "s|{{ATOM_PREFIX}}|${EROOT%/}|g" \
- "${BUILD_DIR}/app/src/config-schema.js" || die
-
- sed -i -e "s|{{ATOM_SUFFIX}}|${suffix}|g" \
- "${BUILD_DIR}/app/src/config-schema.js" || die
-
- eapply_user
-}
-
-src_configure() {
- local binmod
-
- for binmod in ${BINMODS[@]}; do
- einfo "Configuring ${binmod}..."
- cd "${WORKDIR}/$(package_dir ${binmod})" || die
- enodegyp_atom configure
- done
-}
-
-src_compile() {
- local binmod
- local x
- local ctags_d="node_modules/symbols-view/vendor"
- local jobs=$(makeopts_jobs)
- local gypopts
-
- # Transpile any yet untranspiled files.
- ecoffeescript "${BUILD_DIR}/app/spec/*.coffee"
-
- gypopts="--verbose"
-
- if [[ ${MAKEOPTS} == *-j* && ${jobs} != 999 ]]; then
- gypopts+=" --jobs ${jobs}"
- fi
-
- mkdir -p "${BUILD_DIR}/modules/" || die
-
- for binmod in ${BINMODS[@]}; do
- einfo "Building ${binmod}..."
- cd "${WORKDIR}/$(package_dir ${binmod})" || die
- enodegyp_atom ${gypopts} build
- x=${binmod##node-}
- mkdir -p "${BUILD_DIR}/modules/${x}" || die
- cp build/Release/*.node "${BUILD_DIR}/modules/${x}" || die
- done
-
- # Put compiled binary modules in place
- _fix_binmods "${BUILD_DIR}/app" "apm"
- _fix_binmods "${BUILD_DIR}/app" "node_modules"
-
- # Remove non-Linux vendored ctags binaries
- rm "${BUILD_DIR}/app/${ctags_d}/ctags-darwin" \
- "${BUILD_DIR}/app/${ctags_d}/ctags-win32.exe" || die
-
- # Re-pack app.asar
- # Keep unpack rules in sync with build/tasks/generate-asar-task.coffee
- cd "${BUILD_DIR}" || die
- x="--unpack={*.node,ctags-config,ctags-linux,**/spec/fixtures/**,**/node_modules/spellchecker/**,**/resources/atom.png}"
- xd="--unpack-dir=apm"
- easar pack "${x}" "${xd}" "app" "app.asar"
-
- rm -r "${BUILD_DIR}/app.asar.unpacked/apm" || die
-
- # Replace vendored ctags with a symlink to system ctags
- rm "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
- ln -s "${EROOT%/}/usr/bin/ctags" \
- "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
-}
-
-src_test() {
- local electron="$(get_electron_dir)/electron"
- local app="${BUILD_DIR}/app.asar"
-
- virtx "${electron}" --app="${app}" --test "${app}/spec"
-}
-
-src_install() {
- local install_dir="$(get_install_dir)"
- local suffix="$(get_install_suffix)"
-
- insinto "${install_dir}"
-
- doins "${BUILD_DIR}/app.asar"
- doins -r "${BUILD_DIR}/app.asar.unpacked"
-
- insinto "${install_dir}/app"
- doins -r "${BUILD_DIR}/app/apm"
-
- insinto "/usr/share/applications/"
- newins "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" \
- "atom${suffix}.desktop"
-
- insinto "/usr/share/icons/"
- doins -r "${BIN_S}/usr/share/icons/hicolor"
-
- exeinto "${install_dir}"
- newexe "${BUILD_DIR}/app/atom.sh" atom
- insinto "/usr/share/licenses/${PN}${suffix}"
- doins "${BIN_S}/$(get_atom_rpmdir)/resources/LICENSE.md"
- dosym "${install_dir}/atom" "/usr/bin/atom${suffix}"
- dosym "${install_dir}/app/apm/bin/apm" "/usr/bin/apm${suffix}"
-
- _fix_executables "${install_dir}/app/apm/bin"
- _fix_executables "${install_dir}/app/apm/node_modules/.bin"
- _fix_executables "${install_dir}/app/apm/node_modules/npm/bin"
- _fix_executables "${install_dir}/app/apm/node_modules/npm/bin/node-gyp-bin"
- _fix_executables "${install_dir}/app/apm/node_modules/node-gyp/bin"
-}
-
-pkg_postinst() {
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_desktop_database_update
-}
-
-# Helpers
-# -------
-
-# Return the installation suffix appropriate for the slot.
-get_install_suffix() {
- local c=(${SLOT//\// })
- local slot=${c[0]}
- local suffix
-
- if [[ "${slot}" == "0" ]]; then
- suffix=""
- else
- suffix="-${slot}"
- fi
-
- echo -n "${suffix}"
-}
-
-# Return the upstream app name appropriate for $PV.
-get_atom_appname() {
- if [[ "${PV}" == *beta* ]]; then
- echo -n "atom-beta"
- else
- echo -n "atom"
- fi
-}
-
-# Return the app installation path inside the upstream archive.
-get_atom_rpmdir() {
- echo -n "usr/share/$(get_atom_appname)"
-}
-
-# Return the installation target directory.
-get_install_dir() {
- echo -n "/usr/$(get_libdir)/atom$(get_install_suffix)"
-}
-
-# Return the Electron installation directory.
-get_electron_dir() {
- echo -n "${EROOT%/}/usr/$(get_libdir)/electron-${ELECTRON_SLOT}"
-}
-
-# Return the directory containing appropriate Node headers
-# for the required version of Electron.
-get_electron_nodedir() {
- echo -n "${EROOT%/}/usr/include/electron-${ELECTRON_SLOT}/node/"
-}
-
-# Run JavaScript using Electron's version of Node.
-enode_electron() {
- "$(get_electron_dir)"/node $@
-}
-
-# Run node-gyp using Electron's version of Node.
-enodegyp_atom() {
- local apmpath="$(get_atom_rpmdir)/resources/app/apm"
- local nodegyp="${BIN_S}/${apmpath}/node_modules/node-gyp/bin/node-gyp.js"
-
- PATH="$(get_electron_dir):${PATH}" \
- enode_electron "${nodegyp}" \
- --nodedir="$(get_electron_nodedir)" $@ || die
-}
-
-# Coffee Script wrapper.
-ecoffeescript() {
- local cscript="${FILESDIR}/transpile-coffee-script.js"
-
- # Disable shell glob expansion, as we want the coffee script
- # transpiler to do that instead.
- set -f
- echo "ecoffeescript" $@
- ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
- NODE_PATH="${BUILD_DIR}/app/node_modules" \
- enode_electron "${cscript}" $@ || die
- set +f
-}
-
-# asar wrapper.
-easar() {
- local asar="${WORKDIR}/$(package_dir asar)/node_modules/asar/bin/asar"
- echo "asar" $@
- enode_electron "${asar}" $@ || die
-}
-
-# Return a $WORKDIR directory for a given package name.
-package_dir() {
- local binmod="${1//-/_}"
- local binmod_v="${binmod^^}_V"
- echo -n ${1}-${!binmod_v}
-}
-
-# Check if there are patches for a given package.
-_have_patches_for() {
- local _patches="${1}-*.patch" _find
- _find=$(find "${FILESDIR}" -maxdepth 1 -name "${_patches}" -print -quit)
- test -n "$_find"
-}
-
-# Tarballs on registry.npmjs.org are wildly inconsistent,
-# and violate the convention of having ${P} as the top directory name.
-# This helper detects and fixes that.
-_unpack() {
- local a="${1}"
- local b="${a%.tar.gz}"
- local p="${b#atomdep-}"
- local dir="$(tar -tzf "${DISTDIR}/${a}" | head -1 | cut -f1 -d'/')"
-
- unpack "${a}"
-
- if [[ "${dir}" != "${p}" ]]; then
- # Set the correct name for the unpacked directory.
- mv "${WORKDIR}/${dir}" "${WORKDIR}/${p}" || die
- fi
-}
-
-# Check if the binary node module is actually a valid dependency.
-# Sometimes the upstream removes a dependency from package.json but
-# forgets to remove the module from node_modules.
-_is_valid_binmod() {
- local mod
-
- for mod in "${BINMODS[@]}"; do
- if [[ "${mod}" == "${1}" ]]; then
- return 0
- fi
- done
-
- return 1
-}
-
-# Replace binary node modules with the newly compiled versions thereof.
-_fix_binmods() {
- local _dir="${2}"
- local _prefix="${1}"
- local path
- local relpath
- local modpath
- local mod
- local f
- local d
- local cruft
-
- (find "${_prefix}/${_dir}" -name '*.node' -print || die) \
- | while IFS= read -r path; do
- f=$(basename "${path}")
- d=$(dirname "${path}")
- relpath=${path#${_prefix}}
- relpath=${relpath##/}
- relpath=${relpath#W${_dir}}
- modpath=$(dirname ${relpath})
- modpath=${modpath%build/Release}
- mod=$(basename ${modpath})
-
- _is_valid_binmod "${mod}" || continue
-
- # must copy here as symlinks will cause the module loading to fail
- cp -f "${BUILD_DIR}/modules/${mod}/${f}" "${path}" || die
- cruft=$(find "${d}" -name '*.a' -print)
- if [[ -n "${cruft}" ]]; then
- rm ${cruft} || die
- fi
- done
-}
-
-# Fix script permissions and shebangs to point to the correct version
-# of Node.
-_fix_executables() {
- local _dir="${1}"
- local _node_sb="#!$(get_electron_dir)"/node
-
- (find -L "${ED}/${_dir}" -maxdepth 1 -mindepth 1 -type f -print || die) \
- | while IFS= read -r f; do
- IFS= read -r shebang < "${f}"
-
- if [[ ${shebang} == '#!'* ]]; then
- fperms +x "${f#${ED}}"
- if [[ "${shebang}" == "#!/usr/bin/env node" || "${shebang}" == "#!/usr/bin/node" ]]; then
- einfo "Fixing node shebang in ${f#${ED}}"
- sed --follow-symlinks -i \
- -e "1s:${shebang}$:${_node_sb}:" "${f}" || die
- fi
- fi
- done || die
-}
diff --git a/app-editors/atom/atom-1.32.1.ebuild b/app-editors/atom/atom-1.32.1.ebuild
new file mode 100644
index 000000000000..cffe7192d2ed
--- /dev/null
+++ b/app-editors/atom/atom-1.32.1.ebuild
@@ -0,0 +1,561 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# NOTE: this ebuild has been generated by atom-ebuild-gen.py from the
+# atom overlay. If you would like to make changes, please consider
+# modifying the ebuild template and submitting a PR to
+# https://github.com/elprans/atom-overlay.
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+inherit multiprocessing python-single-r1 rpm xdg-utils
+
+DESCRIPTION="A hackable text editor for the 21st Century"
+HOMEPAGE="https://atom.io"
+MY_PV="${PV//_/-}"
+
+ELECTRON_V=2.0.9
+ELECTRON_SLOT=2.0
+
+ASAR_V=0.14.3
+# All binary packages depend on this
+NAN_V=2.11.1
+
+ATOM__NSFW_V=1.0.18
+ATOM__WATCHER_V=1.0.8
+CACHED_RUN_IN_THIS_CONTEXT_V=0.5.0
+CTAGS_V=3.0.0
+FS_ADMIN_V=0.1.7
+GIT_UTILS_V=5.2.1
+KEYBOARD_LAYOUT_V=2.0.14
+KEYTAR_V=4.3.0
+NSLOG_V=3.0.0
+ONIGURUMA_V=7.0.2
+PATHWATCHER_V=8.0.1
+SCROLLBAR_STYLE_V=3.2.0
+SPELLCHECKER_V=3.5.0
+SUPERSTRING_V=2.3.4
+TREE_SITTER_V=0.13.15
+TREE_SITTER_BASH_V=0.13.6
+TREE_SITTER_C_V=0.13.7
+TREE_SITTER_CPP_V=0.13.8
+TREE_SITTER_CSS_V=0.13.7
+TREE_SITTER_EMBEDDED_TEMPLATE_V=0.13.0
+TREE_SITTER_GO_V=0.13.3
+TREE_SITTER_HTML_V=0.13.5
+TREE_SITTER_JAVASCRIPT_V=0.13.8
+TREE_SITTER_PYTHON_V=0.13.4
+TREE_SITTER_REGEX_V=0.13.1
+TREE_SITTER_RUBY_V=0.13.11
+TREE_SITTER_TYPESCRIPT_V=0.13.6
+
+# The x86_64 arch below is irrelevant, as we will rebuild all binary packages.
+SRC_URI="
+ https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/atom.x86_64.rpm -> atom-bin-${MY_PV}.rpm
+ https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> atom-${MY_PV}.tar.gz
+ https://github.com/elprans/asar/releases/download/v${ASAR_V}-gentoo/asar-build.tar.gz -> asar-${ASAR_V}.tar.gz
+ https://github.com/nodejs/nan/archive/v${NAN_V}.tar.gz -> nodejs-nan-${NAN_V}.tar.gz
+ https://registry.npmjs.org/@atom/nsfw/-/nsfw-1.0.18.tgz -> atomdep-atom--nsfw-${ATOM__NSFW_V}.tar.gz
+ https://registry.npmjs.org/@atom/watcher/-/watcher-1.0.8.tgz -> atomdep-atom--watcher-${ATOM__WATCHER_V}.tar.gz
+ https://registry.npmjs.org/cached-run-in-this-context/-/cached-run-in-this-context-0.5.0.tgz -> atomdep-cached-run-in-this-context-${CACHED_RUN_IN_THIS_CONTEXT_V}.tar.gz
+ https://registry.npmjs.org/ctags/-/ctags-3.0.0.tgz -> atomdep-ctags-${CTAGS_V}.tar.gz
+ https://registry.npmjs.org/fs-admin/-/fs-admin-0.1.7.tgz -> atomdep-fs-admin-${FS_ADMIN_V}.tar.gz
+ https://registry.npmjs.org/git-utils/-/git-utils-5.2.1.tgz -> atomdep-git-utils-${GIT_UTILS_V}.tar.gz
+ https://registry.npmjs.org/keyboard-layout/-/keyboard-layout-2.0.14.tgz -> atomdep-keyboard-layout-${KEYBOARD_LAYOUT_V}.tar.gz
+ https://registry.npmjs.org/keytar/-/keytar-4.3.0.tgz -> atomdep-keytar-${KEYTAR_V}.tar.gz
+ https://registry.npmjs.org/nslog/-/nslog-3.0.0.tgz -> atomdep-nslog-${NSLOG_V}.tar.gz
+ https://registry.npmjs.org/oniguruma/-/oniguruma-7.0.2.tgz -> atomdep-oniguruma-${ONIGURUMA_V}.tar.gz
+ https://registry.npmjs.org/pathwatcher/-/pathwatcher-8.0.1.tgz -> atomdep-pathwatcher-${PATHWATCHER_V}.tar.gz
+ https://registry.npmjs.org/scrollbar-style/-/scrollbar-style-3.2.0.tgz -> atomdep-scrollbar-style-${SCROLLBAR_STYLE_V}.tar.gz
+ https://registry.npmjs.org/spellchecker/-/spellchecker-3.5.0.tgz -> atomdep-spellchecker-${SPELLCHECKER_V}.tar.gz
+ https://registry.npmjs.org/superstring/-/superstring-2.3.4.tgz -> atomdep-superstring-${SUPERSTRING_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter/-/tree-sitter-0.13.15.tgz -> atomdep-tree-sitter-${TREE_SITTER_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-bash/-/tree-sitter-bash-0.13.6.tgz -> atomdep-tree-sitter-bash-${TREE_SITTER_BASH_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-c/-/tree-sitter-c-0.13.7.tgz -> atomdep-tree-sitter-c-${TREE_SITTER_C_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-cpp/-/tree-sitter-cpp-0.13.8.tgz -> atomdep-tree-sitter-cpp-${TREE_SITTER_CPP_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-css/-/tree-sitter-css-0.13.7.tgz -> atomdep-tree-sitter-css-${TREE_SITTER_CSS_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-embedded-template/-/tree-sitter-embedded-template-0.13.0.tgz -> atomdep-tree-sitter-embedded-template-${TREE_SITTER_EMBEDDED_TEMPLATE_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-go/-/tree-sitter-go-0.13.3.tgz -> atomdep-tree-sitter-go-${TREE_SITTER_GO_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-html/-/tree-sitter-html-0.13.5.tgz -> atomdep-tree-sitter-html-${TREE_SITTER_HTML_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-javascript/-/tree-sitter-javascript-0.13.8.tgz -> atomdep-tree-sitter-javascript-${TREE_SITTER_JAVASCRIPT_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-python/-/tree-sitter-python-0.13.4.tgz -> atomdep-tree-sitter-python-${TREE_SITTER_PYTHON_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-regex/-/tree-sitter-regex-0.13.1.tgz -> atomdep-tree-sitter-regex-${TREE_SITTER_REGEX_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-ruby/-/tree-sitter-ruby-0.13.11.tgz -> atomdep-tree-sitter-ruby-${TREE_SITTER_RUBY_V}.tar.gz
+ https://registry.npmjs.org/tree-sitter-typescript/-/tree-sitter-typescript-0.13.6.tgz -> atomdep-tree-sitter-typescript-${TREE_SITTER_TYPESCRIPT_V}.tar.gz
+"
+
+BINMODS=(
+ atom--nsfw
+ atom--watcher
+ cached-run-in-this-context
+ ctags
+ fs-admin
+ git-utils
+ keyboard-layout
+ keytar
+ nslog
+ oniguruma
+ pathwatcher
+ scrollbar-style
+ spellchecker
+ superstring
+ tree-sitter
+ tree-sitter-bash
+ tree-sitter-c
+ tree-sitter-cpp
+ tree-sitter-css
+ tree-sitter-embedded-template
+ tree-sitter-go
+ tree-sitter-html
+ tree-sitter-javascript
+ tree-sitter-python
+ tree-sitter-regex
+ tree-sitter-ruby
+ tree-sitter-typescript
+)
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
+"
+
+DEPEND="
+ >=app-text/hunspell-1.3.3:=
+ >=dev-libs/libgit2-0.23:=[ssh]
+ >=dev-libs/libpcre2-10.22:=[jit,pcre16]
+ >=dev-libs/oniguruma-6.6.0:=
+ >=dev-util/ctags-5.8
+ >=gnome-base/libgnome-keyring-3.12:=
+ x11-libs/libxkbfile
+"
+
+RDEPEND="
+ ${DEPEND}
+ >=dev-util/electron-${ELECTRON_V}:${ELECTRON_SLOT}
+ dev-vcs/git
+ !sys-apps/apmd
+"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+BIN_S="${WORKDIR}/${PN}-bin-${MY_PV}"
+BUILD_DIR="${S}/out"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_unpack() {
+ local a
+
+ mkdir "${BIN_S}" || die
+
+ for a in ${A} ; do
+ case "${a}" in
+ *.rpm)
+ pushd "${BIN_S}" >/dev/null || die
+ srcrpm_unpack "${a}"
+ popd >/dev/null || die
+ ;;
+
+ *.tar|*.tar.gz|*.tar.bz2|*.tar.xz)
+ # Tarballs on registry.npmjs.org are wildly inconsistent,
+ # and violate the convention of having ${P} as the top
+ # directory name, so we strip the first component and
+ # unpack into a correct directory explicitly.
+ local basename=${a%.tar.*}
+ local destdir=${WORKDIR}/${basename#atomdep-}
+ mkdir "${destdir}" || die
+ tar -C "${destdir}" -x -o --strip-components 1 \
+ -f "${DISTDIR}/${a}" || die
+ ;;
+
+ *)
+ # Fallback to the default unpacker.
+ unpack "${a}"
+ ;;
+ esac
+ done
+}
+
+src_prepare() {
+ local suffix="$(get_install_suffix)"
+ local atom_rpmdir=$(get_atom_rpmdir)
+ local install_dir="${EPREFIX}$(get_install_dir)"
+ local electron_dir="${EPREFIX}$(get_electron_dir)"
+ local electron_path="${electron_dir}/electron"
+ local node_path="${electron_dir}/node"
+ local node_includes="${EPREFIX}$(get_node_includedir)"
+ local binmod
+ local pkgdir
+
+ mkdir "${BUILD_DIR}" || die
+ cp -a "${BIN_S}/${atom_rpmdir}/resources/app" \
+ "${BUILD_DIR}/app" || die
+
+ # Add source files omitted from the upstream binary distribution,
+ # and which we want to include in ours.
+ cp -a "${S}/spec" "${BUILD_DIR}/app" || die
+
+ # Unpack app.asar
+ easar extract "${BIN_S}/${atom_rpmdir}/resources/app.asar" \
+ "${BUILD_DIR}/app"
+
+ cd "${BUILD_DIR}/app" || die
+
+ eapply "${FILESDIR}/apm-python.patch"
+ eapply "${FILESDIR}/atom-unbundle-electron-r3.patch"
+ eapply "${FILESDIR}/atom-python-r1.patch"
+ eapply "${FILESDIR}/atom-apm-path-r2.patch"
+ eapply "${FILESDIR}/atom-fix-app-restart-r2.patch"
+ eapply "${FILESDIR}/atom-marker-layer-r1.patch"
+ eapply "${FILESDIR}/atom-fix-config-watcher-r1.patch"
+
+ sed -i -e "s|path.join(process.resourcesPath, 'LICENSE.md')|'/usr/share/licenses/$(get_atom_appname)/LICENSE.md'|g" \
+ ./src/main-process/atom-application.js \
+ || die
+
+ sed -i -e "s|{{NPM_CONFIG_NODEDIR}}|${node_includes}|g" \
+ -e "s|{{ATOM_PATH}}|${electron_path}|g" \
+ -e "s|{{ATOM_RESOURCE_PATH}}|${install_dir}/app.asar|g" \
+ -e "s|{{ATOM_PREFIX}}|${EPREFIX}|g" \
+ -e "s|^#!/bin/bash|#!${EPREFIX}/bin/bash|g" \
+ ./atom.sh \
+ || die
+
+ local env="export NPM_CONFIG_NODEDIR=${node_includes}\nexport ELECTRON_NO_ASAR=1"
+ sed -i -e \
+ "s|\"\$binDir/\$nodeBin\"|${env}\nexec \"${node_path}\"|g" \
+ apm/bin/apm || die
+
+ sed -i -e \
+ "s|^\([[:space:]]*\)node[[:space:]]\+|\1\"${node_path}\" |g" \
+ apm/node_modules/npm/bin/node-gyp-bin/node-gyp || die
+
+ sed -i -e \
+ "s|atomCommand = 'atom';|atomCommand = '${EPREFIX}/usr/bin/atom${suffix}'|g" \
+ apm/lib/test.js || die
+
+ rm apm/bin/node || die
+
+ sed -i -e "s|/${atom_rpmdir}/atom|${EPREFIX}/usr/bin/atom${suffix}|g" \
+ "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" || die
+
+ for binmod in "${BINMODS[@]}"; do
+ pkgdir="${WORKDIR}/$(package_dir ${binmod})"
+ cd "${pkgdir}" || die
+ if have_patches_for "${binmod}"; then
+ eapply "${FILESDIR}"/${binmod}-*.patch
+ fi
+ done
+
+ cd "${BUILD_DIR}/app" || die
+
+ # Unbundle bundled libs from modules
+
+ pkgdir="${WORKDIR}/$(package_dir git-utils)"
+ ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
+ --inplace --unbundle "git;libgit2;git2" \
+ "${pkgdir}/binding.gyp" || die
+
+ pkgdir="${WORKDIR}/$(package_dir oniguruma)"
+ ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
+ --inplace --unbundle "onig_scanner;oniguruma;onig" \
+ "${pkgdir}/binding.gyp" || die
+
+ pkgdir="${WORKDIR}/$(package_dir spellchecker)"
+ ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
+ --inplace --unbundle "spellchecker;hunspell;hunspell" \
+ "${pkgdir}/binding.gyp" || die
+
+ pkgdir="${WORKDIR}/$(package_dir superstring)"
+ ${EPYTHON} "${FILESDIR}/gyp-unbundle.py" \
+ --inplace --unbundle \
+ "superstring_core;./vendor/pcre/pcre.gyp:pcre;pcre2-16; \
+ -DPCRE2_CODE_UNIT_WIDTH=16" \
+ "${pkgdir}/binding.gyp" || die
+
+ for binmod in "${BINMODS[@]}"; do
+ pkgdir="${WORKDIR}/$(package_dir ${binmod})"
+ mkdir -p "${pkgdir}/node_modules" || die
+ ln -s "${WORKDIR}/nodejs-nan-${NAN_V}" \
+ "${pkgdir}/node_modules/nan" || die
+ done
+
+ sed -i -e "s|{{ATOM_PREFIX}}|${EPREFIX}|g" \
+ "${BUILD_DIR}/app/src/config-schema.js" || die
+
+ sed -i -e "s|{{ATOM_SUFFIX}}|${suffix}|g" \
+ "${BUILD_DIR}/app/src/config-schema.js" || die
+
+ eapply_user
+}
+
+src_configure() {
+ local binmod
+
+ for binmod in "${BINMODS[@]}"; do
+ einfo "Configuring ${binmod}..."
+ cd "${WORKDIR}/$(package_dir ${binmod})" || die
+ enodegyp_atom configure
+ done
+}
+
+src_compile() {
+ local binmod
+ local ctags_d="node_modules/symbols-view/vendor"
+ local jobs=$(makeopts_jobs)
+ local unpacked_paths
+
+ # Transpile any yet untranspiled files.
+ ecoffeescript "${BUILD_DIR}"/app/spec/'*.coffee'
+
+ mkdir -p "${BUILD_DIR}/modules/" || die
+
+ for binmod in "${BINMODS[@]}"; do
+ local binmod_name=${binmod##node-}
+
+ einfo "Building ${binmod}..."
+ cd "${WORKDIR}/$(package_dir ${binmod})" || die
+ enodegyp_atom --verbose --jobs="$(makeopts_jobs)" build
+ mkdir -p "${BUILD_DIR}/modules/${binmod_name}" || die
+ cp build/Release/*.node "${BUILD_DIR}/modules/${binmod_name}" || die
+ done
+
+ # Put compiled binary modules in place
+ fix_binmods "${BUILD_DIR}/app" "apm"
+ fix_binmods "${BUILD_DIR}/app" "node_modules"
+
+ # Remove non-Linux vendored ctags binaries
+ rm "${BUILD_DIR}/app/${ctags_d}/ctags-darwin" \
+ "${BUILD_DIR}/app/${ctags_d}/ctags-win32.exe" || die
+
+ # Remove bundled git
+ rm -r "${BUILD_DIR}/app/node_modules/dugite/git" || die
+
+ # Re-pack app.asar
+ # Keep unpack rules in sync with buildAsarUnpackGlobExpression()
+ # in script/lib/package-application.js
+ unpacked_paths=(
+ "*.node"
+ "ctags-config"
+ "ctags-linux"
+ "**/spec/fixtures/**"
+ "**/node_modules/github/bin/**"
+ "**/node_modules/spellchecker/**"
+ "**/resources/atom.png")
+
+ unpacked_paths=$(IFS=,; echo "${unpacked_paths[*]}")
+
+ cd "${BUILD_DIR}" || die
+ easar pack --unpack="{${unpacked_paths}}" --unpack-dir=apm "app" "app.asar"
+
+ rm -r "${BUILD_DIR}/app.asar.unpacked/apm" || die
+
+ # Replace vendored ctags with a symlink to system ctags
+ rm "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
+ ln -s "${EPREFIX}/usr/bin/ctags" \
+ "${BUILD_DIR}/app.asar.unpacked/${ctags_d}/ctags-linux" || die
+}
+
+src_install() {
+ local install_dir="$(get_install_dir)"
+ local suffix="$(get_install_suffix)"
+
+ insinto "${install_dir}"
+
+ doins "${BUILD_DIR}/app.asar"
+ doins -r "${BUILD_DIR}/app.asar.unpacked"
+
+ insinto "${install_dir}/app"
+ doins -r "${BUILD_DIR}/app/apm"
+
+ insinto "/usr/share/applications/"
+ newins "${BIN_S}/usr/share/applications/$(get_atom_appname).desktop" \
+ "atom${suffix}.desktop"
+
+ insinto "/usr/share/icons/"
+ doins -r "${BIN_S}/usr/share/icons/hicolor"
+
+ exeinto "${install_dir}"
+ newexe "${BUILD_DIR}/app/atom.sh" atom
+ insinto "/usr/share/licenses/${PN}${suffix}"
+ doins "${BIN_S}/$(get_atom_rpmdir)/resources/LICENSE.md"
+ dosym "../..${install_dir}/atom" "/usr/bin/atom${suffix}"
+ dosym "../..${install_dir}/app/apm/bin/apm" "/usr/bin/apm${suffix}"
+
+ fix_executables "${install_dir}/app/apm/bin"
+ fix_executables "${install_dir}/app/apm/node_modules/.bin"
+ fix_executables "${install_dir}/app/apm/node_modules/npm/bin"
+ fix_executables "${install_dir}/app/apm/node_modules/npm/bin/node-gyp-bin"
+ fix_executables "${install_dir}/app/apm/node_modules/node-gyp/bin"
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+}
+
+# Helpers
+# -------
+
+# Return the installation suffix appropriate for the slot.
+get_install_suffix() {
+ local slot=${SLOT%%/*}
+ local suffix
+
+ if [[ "${slot}" == "0" ]]; then
+ suffix=""
+ else
+ suffix="-${slot}"
+ fi
+
+ echo "${suffix}"
+}
+
+# Return the upstream app name appropriate for $PV.
+get_atom_appname() {
+ if [[ "${PV}" == *beta* ]]; then
+ echo "atom-beta"
+ else
+ echo "atom"
+ fi
+}
+
+# Return the app installation path inside the upstream archive.
+get_atom_rpmdir() {
+ echo "usr/share/$(get_atom_appname)"
+}
+
+# Return the installation target directory.
+get_install_dir() {
+ echo "/usr/$(get_libdir)/atom$(get_install_suffix)"
+}
+
+# Return the Electron installation directory.
+get_electron_dir() {
+ echo "/usr/$(get_libdir)/electron-${ELECTRON_SLOT}"
+}
+
+# Return the directory containing appropriate Node headers
+# for the required version of Electron.
+get_node_includedir() {
+ echo "/usr/include/electron-${ELECTRON_SLOT}/node/"
+}
+
+# Run JavaScript using Electron's version of Node.
+enode_electron() {
+ "${BROOT}/$(get_electron_dir)"/node "${@}"
+}
+
+# Run node-gyp using Electron's version of Node.
+enodegyp_atom() {
+ local apmpath="$(get_atom_rpmdir)/resources/app/apm"
+ local nodegyp="${BIN_S}/${apmpath}/node_modules/node-gyp/bin/node-gyp.js"
+
+ PATH="${BROOT}/$(get_electron_dir):${PATH}" \
+ enode_electron "${nodegyp}" \
+ --nodedir="${BROOT}/$(get_node_includedir)" "${@}" || die
+}
+
+# Coffee Script wrapper.
+ecoffeescript() {
+ local cscript="${FILESDIR}/transpile-coffee-script.js"
+
+ echo "ecoffeescript" "${@}"
+ echo ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
+ NODE_PATH="${BUILD_DIR}/app/node_modules" \
+ enode_electron "${cscript}" "${@}" || die
+ ATOM_HOME="${T}/.atom" ATOM_SRC_ROOT="${BUILD_DIR}/app" \
+ NODE_PATH="${BUILD_DIR}/app/node_modules" \
+ enode_electron "${cscript}" "${@}" || die
+}
+
+# asar wrapper.
+easar() {
+ local asar="${WORKDIR}/$(package_dir asar)/node_modules/asar/bin/asar"
+ echo "asar" "${@}"
+ enode_electron "${asar}" "${@}" || die
+}
+
+# Return a $WORKDIR directory for a given package name.
+package_dir() {
+ local binmod="${1//-/_}"
+ local binmod_v="${binmod^^}_V"
+ if [[ -z "${binmod_v}" ]]; then
+ die "${binmod_v} is not set."
+ fi
+
+ echo ${1}-${!binmod_v}
+}
+
+# Check if there are patches for a given package.
+have_patches_for() {
+ local patches="${1}-*.patch"
+ local found
+ found=$(find "${FILESDIR}" -maxdepth 1 -name "${patches}" -print -quit)
+ test -n "${found}"
+}
+
+# Replace binary node modules with the newly compiled versions thereof.
+fix_binmods() {
+ local dir="${2}"
+ local prefix="${1}"
+ local path
+ local relpath
+ local modpath
+ local mod
+ local cruft
+
+ while IFS= read -r -d '' path; do
+ relpath=${path#${prefix}}
+ relpath=${relpath##/}
+ relpath=${relpath#W${dir}}
+ modpath=$(dirname ${relpath})
+ modpath=${modpath%build/Release}
+ mod=$(basename ${modpath})
+
+ # Check if the binary node module is actually a valid dependency.
+ # Sometimes the upstream removes a dependency from package.json but
+ # forgets to remove the module from node_modules.
+ has "${mod}" "${BINMODS[@]}" || continue
+
+ # Must copy here as symlinks will cause the module loading to fail.
+ cp -f "${BUILD_DIR}/modules/${mod}/${path##*/}" "${path}" || die
+
+ # Drop unnecessary static libraries.
+ find "${path%/*}" -name '*.a' -delete || die
+ done < <(find "${prefix}/${dir}" -name '*.node' -print0 || die)
+}
+
+# Fix script permissions and shebangs to point to the correct version
+# of Node.
+fix_executables() {
+ local dir="${1}"
+ local node_sb="#!${EPREFIX}$(get_electron_dir)"/node
+
+ while IFS= read -r -d '' f; do
+ IFS= read -r shebang < "${f}"
+
+ if [[ ${shebang} == '#!'* ]]; then
+ fperms +x "${f#${ED}}"
+ if [[ "${shebang}" == "#!/usr/bin/env node" || \
+ "${shebang}" == "#!/usr/bin/node" ]]; then
+ einfo "Fixing node shebang in ${f#${ED}}"
+ sed --follow-symlinks -i \
+ -e "1s:${shebang}$:${node_sb}:" "${f}" || die
+ fi
+ fi
+ done < <(find -L "${ED}${dir}" -maxdepth 1 -mindepth 1 -type f -print0 || die)
+}
diff --git a/app-editors/atom/files/atom-fix-app-restart-r1.patch b/app-editors/atom/files/atom-fix-app-restart-r1.patch
deleted file mode 100644
index f984d7841be9..000000000000
--- a/app-editors/atom/files/atom-fix-app-restart-r1.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/atom-application.js.orig b/atom-application.js
-index 92d985f..9a120e6 100644
---- a/src/main-process/atom-application.js
-+++ b/src/main-process/atom-application.js
-@@ -1178,6 +1178,7 @@
- AtomApplication.prototype.restart = function() {
- var args;
- args = [];
-+ args.push("--app=" + this.resourcePath);
- if (this.safeMode) {
- args.push("--safe");
- }
diff --git a/app-editors/atom/files/atom-fix-app-restart-r2.patch b/app-editors/atom/files/atom-fix-app-restart-r2.patch
new file mode 100644
index 000000000000..a2defa21db2f
--- /dev/null
+++ b/app-editors/atom/files/atom-fix-app-restart-r2.patch
@@ -0,0 +1,24 @@
+From bf4c1ab651a82eb369ffa3dc4b20246d043d797a Mon Sep 17 00:00:00 2001
+From: Elvis Pranskevichus <elvis@magic.io>
+Date: Wed, 28 Mar 2018 12:02:53 -0400
+Subject: [PATCH] Fix app restart
+
+---
+ src/main-process/atom-application.js | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/main-process/atom-application.js b/src/main-process/atom-application.js
+index 10b791761..d16a68fba 100644
+--- a/src/main-process/atom-application.js
++++ b/src/main-process/atom-application.js
+@@ -1344,6 +1344,7 @@ class AtomApplication extends EventEmitter {
+
+ restart () {
+ const args = []
++ args.push("--app=" + this.resourcePath);
+ if (this.safeMode) args.push('--safe')
+ if (this.logFile != null) args.push(`--log-file=${this.logFile}`)
+ if (this.socketPath != null) args.push(`--socket-path=${this.socketPath}`)
+--
+2.16.1
+
diff --git a/app-editors/atom/files/atom-fix-config-watcher-r1.patch b/app-editors/atom/files/atom-fix-config-watcher-r1.patch
new file mode 100644
index 000000000000..7af82050d46b
--- /dev/null
+++ b/app-editors/atom/files/atom-fix-config-watcher-r1.patch
@@ -0,0 +1,41 @@
+From 5f1f840372611b8f42d8fd3be7b680f90958f015 Mon Sep 17 00:00:00 2001
+From: Elvis Pranskevichus <elvis@magic.io>
+Date: Wed, 28 Mar 2018 18:52:58 -0400
+Subject: [PATCH] Unbreak config watcher in the main process
+
+---
+ src/path-watcher.js | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/src/path-watcher.js b/src/path-watcher.js
+index 6693489ef..f3ddc6fe4 100644
+--- a/src/path-watcher.js
++++ b/src/path-watcher.js
+@@ -544,12 +544,22 @@ class PathWatcherManager {
+ // Private: Access the currently active manager instance, creating one if necessary.
+ static active () {
+ if (!this.activeManager) {
+- this.activeManager = new PathWatcherManager(atom.config.get('core.fileSystemWatcher'))
+- this.sub = atom.config.onDidChange('core.fileSystemWatcher', ({newValue}) => { this.transitionTo(newValue) })
++ let config = this.getConfig()
++ this.activeManager = new PathWatcherManager(config.get('core.fileSystemWatcher'))
++ this.sub = config.onDidChange('core.fileSystemWatcher', ({newValue}) => { this.transitionTo(newValue) })
+ }
+ return this.activeManager
+ }
+
++ // Private: get config instance for the current application
++ static getConfig() {
++ if (typeof(global.atom) != 'undefined') {
++ return global.atom.config
++ } else {
++ return global.atomApplication.config
++ }
++ }
++
+ // Private: Replace the active {PathWatcherManager} with a new one that creates [NativeWatchers]{NativeWatcher}
+ // based on the value of `setting`.
+ static async transitionTo (setting) {
+--
+2.17.0
+
diff --git a/app-editors/atom/files/atom-license-path-r1.patch b/app-editors/atom/files/atom-license-path-r1.patch
deleted file mode 100644
index c8d6ab9784f0..000000000000
--- a/app-editors/atom/files/atom-license-path-r1.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/main-process/atom-application.js
-+++ b/src/main-process/atom-application.js
-@@ -406,7 +406,7 @@
- this.openPathOnEvent('application:open-your-keymap', 'atom://.atom/keymap');
- this.openPathOnEvent('application:open-your-snippets', 'atom://.atom/snippets');
- this.openPathOnEvent('application:open-your-stylesheet', 'atom://.atom/stylesheet');
-- this.openPathOnEvent('application:open-license', path.join(process.resourcesPath, 'LICENSE.md'));
-+ this.openPathOnEvent('application:open-license', '/usr/share/licenses/atom/LICENSE.md');
- this.disposable.add(ipcHelpers.on(app, 'before-quit', (function(_this) {
- return function(event) {
- if (!_this.quitting) {
diff --git a/app-editors/atom/files/atom-python-r1.patch b/app-editors/atom/files/atom-python-r1.patch
new file mode 100644
index 000000000000..96d6b0327faf
--- /dev/null
+++ b/app-editors/atom/files/atom-python-r1.patch
@@ -0,0 +1,25 @@
+From fae3881a3fa5bf58c696c5bd9c74c62a2113cb12 Mon Sep 17 00:00:00 2001
+From: Elvis Pranskevichus <elvis@magic.io>
+Date: Sat, 29 Sep 2018 16:12:39 -0400
+Subject: [PATCH] Use Python 2
+
+---
+ atom.sh | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/atom.sh b/atom.sh
+index 0ad3f5b23..62fe682fe 100755
+--- a/atom.sh
++++ b/atom.sh
+@@ -62,6 +62,8 @@ if [ $REDIRECT_STDERR ]; then
+ exec 2> /dev/null
+ fi
+
++export PYTHON=python2
++
+ ATOM_HOME="${ATOM_HOME:-$HOME/.atom}"
+ mkdir -p "$ATOM_HOME"
+
+--
+2.16.4
+
diff --git a/app-editors/atom/files/atom-python.patch b/app-editors/atom/files/atom-python.patch
deleted file mode 100644
index 57a475ecce02..000000000000
--- a/app-editors/atom/files/atom-python.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/atom.sh
-+++ b/atom.sh
-@@ -92,6 +92,7 @@
- fi
-
- ATOM_HOME="${ATOM_HOME:-$HOME/.atom}"
-+ export PYTHON=python2
- mkdir -p "$ATOM_HOME"
-
- : ${TMPDIR:=/tmp}
diff --git a/app-editors/atom/files/atom-unbundle-electron-r1.patch b/app-editors/atom/files/atom-unbundle-electron-r3.patch
index 85c0c64ab794..1a6ea109d05c 100644
--- a/app-editors/atom/files/atom-unbundle-electron-r1.patch
+++ b/app-editors/atom/files/atom-unbundle-electron-r3.patch
@@ -1,33 +1,27 @@
-From ea6d1be3558d7610ccc82b3a44dd30657a686639 Mon Sep 17 00:00:00 2001
+From 342dc685f8139e950924c04f1d460052e7531fb5 Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@magic.io>
-Date: Thu, 27 Jul 2017 13:18:54 -0400
+Date: Thu, 5 May 2016 17:23:35 -0400
Subject: [PATCH] Unbundle electron
---
- atom.sh | 13 ++++++-------
- 1 file changed, 6 insertions(+), 7 deletions(-)
+ atom.sh | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/atom.sh b/atom.sh
-index 6b0e94430..ea8e0dc2e 100755
+index 935204bfc..0ad3f5b23 100755
--- a/atom.sh
+++ b/atom.sh
-@@ -102,11 +102,10 @@ elif [ $OS == 'Linux' ]; then
- SCRIPT=$(readlink -f "$0")
- USR_DIRECTORY=$(readlink -f $(dirname $SCRIPT)/..)
+@@ -138,16 +138,21 @@ elif [ $OS == 'Linux' ]; then
+ ;;
+ esac
-- if [ -n "$BETA_VERSION" ]; then
-- ATOM_PATH="$USR_DIRECTORY/share/atom-beta/atom"
-- else
-- ATOM_PATH="$USR_DIRECTORY/share/atom/atom"
-- fi
+ export NPM_CONFIG_NODEDIR="{{NPM_CONFIG_NODEDIR}}"
+ export ATOM_RESOURCE_PATH="{{ATOM_RESOURCE_PATH}}"
+ export LOCAL_GIT_DIRECTORY="{{ATOM_PREFIX}}/usr"
+ ATOM_PATH="{{ATOM_PATH}}"
++
+ : ${TMPDIR:=/tmp}
- ATOM_HOME="${ATOM_HOME:-$HOME/.atom}"
- mkdir -p "$ATOM_HOME"
-@@ -116,11 +115,11 @@ elif [ $OS == 'Linux' ]; then
[ -x "$ATOM_PATH" ] || ATOM_PATH="$TMPDIR/atom-build/Atom/atom"
if [ $EXPECT_OUTPUT ]; then
@@ -42,4 +36,4 @@ index 6b0e94430..ea8e0dc2e 100755
cat "$ATOM_HOME/nohup.out"
exit $?
--
-2.13.3
+2.16.4
diff --git a/app-editors/atom/files/transpile-coffee-script.js b/app-editors/atom/files/transpile-coffee-script.js
index c32e09cad92d..bbea175b6721 100644
--- a/app-editors/atom/files/transpile-coffee-script.js
+++ b/app-editors/atom/files/transpile-coffee-script.js
@@ -5,7 +5,7 @@ const fs = require('fs')
const glob = require('glob')
const path = require('path')
-module.exports = function () {
+function do_compile() {
let paths = new Set()
for (let pattern of process.argv.slice(2)) {
@@ -14,10 +14,12 @@ module.exports = function () {
}
}
- for (let path of paths) {
+ for (let coffeePath of paths) {
let jsPath = coffeePath.replace(/coffee$/g, 'js')
fs.writeFileSync(
jsPath, CompileCache.addPathToCache(coffeePath, process.env.ATOM_HOME))
fs.unlinkSync(coffeePath)
}
}
+
+do_compile()