@@ -895,6 +895,7 @@ class Options(NamedTuple):
895895 node_chromedriver_from_electron : str
896896 electron_ffmpeg : str
897897 electron_node_headers : bool
898+ electron_from_rcfile : bool
898899 nwjs_version : str
899900 nwjs_node_headers : bool
900901 nwjs_ffmpeg : bool
@@ -905,6 +906,7 @@ def __init__(self, gen: ManifestGenerator, options: Options):
905906 self .node_chromedriver_from_electron = options .node_chromedriver_from_electron
906907 self .electron_ffmpeg = options .electron_ffmpeg
907908 self .electron_node_headers = options .electron_node_headers
909+ self .electron_bins_for_headers = options .electron_from_rcfile
908910 self .nwjs_version = options .nwjs_version
909911 self .nwjs_node_headers = options .nwjs_node_headers
910912 self .nwjs_ffmpeg = options .nwjs_ffmpeg
@@ -1242,6 +1244,9 @@ async def generate_node_headers(self,
12421244 self .gen .add_archive_source (url , metadata .integrity , destination = dest )
12431245 self .gen .add_data_source (install_version , destination = dest / 'installVersion' )
12441246
1247+ if self .electron_bins_for_headers and node_headers .runtime == "electron" :
1248+ await self .__add_electron (node_headers .target )
1249+
12451250 async def generate_special_sources (self , package : Package ) -> None :
12461251 if isinstance (Requests .instance , StubRequests ):
12471252 # This is going to crash and burn.
@@ -1877,6 +1882,10 @@ async def main() -> None:
18771882 parser .add_argument ('--electron-node-headers' ,
18781883 action = 'store_true' ,
18791884 help = 'Download the electron node headers' )
1885+ parser .add_argument ('--electron-from-rcfile' ,
1886+ action = 'store_true' ,
1887+ help = 'Download electron version corresponding to '
1888+ 'the node headers version(s) from .yarnrc/.npmrc' )
18801889 parser .add_argument ('--nwjs-version' ,
18811890 help = 'Specify NW.js version (will use latest otherwise)' )
18821891 parser .add_argument ('--nwjs-node-headers' ,
@@ -1967,7 +1976,8 @@ async def main() -> None:
19671976 nwjs_ffmpeg = args .nwjs_ffmpeg ,
19681977 xdg_layout = args .xdg_layout ,
19691978 electron_ffmpeg = args .electron_ffmpeg ,
1970- electron_node_headers = args .electron_node_headers )
1979+ electron_node_headers = args .electron_node_headers ,
1980+ electron_from_rcfile = args .electron_from_rcfile )
19711981 special = SpecialSourceProvider (gen , options )
19721982
19731983 with provider_factory .create_module_provider (gen , special ) as module_provider :
0 commit comments