Robin nano V2, TFT LVGL UI parameters, and more (#18500)
This commit is contained in:
		
							
								
								
									
										46
									
								
								buildroot/share/PlatformIO/scripts/download_mks_assets.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								buildroot/share/PlatformIO/scripts/download_mks_assets.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | ||||
| Import("env") | ||||
| import os | ||||
| import requests | ||||
| import zipfile | ||||
| import tempfile | ||||
| import shutil | ||||
|  | ||||
| url = "https://github.com/makerbase-mks/Mks-Robin-Nano-Marlin2.0-Firmware/archive/master.zip" | ||||
| zip_path = os.path.join(env.Dictionary("PROJECT_LIBDEPS_DIR"), "mks-assets.zip") | ||||
| assets_path = os.path.join(env.Dictionary("PROJECT_BUILD_DIR"), env.Dictionary("PIOENV"), "assets") | ||||
|  | ||||
| def download_mks_assets(): | ||||
| 	print("Downloading MKS Assets") | ||||
| 	r = requests.get(url, stream=True) | ||||
| 	# the user may have a very clean workspace, | ||||
| 	# so create the PROJECT_LIBDEPS_DIR directory if not exits | ||||
| 	if os.path.exists(env.Dictionary("PROJECT_LIBDEPS_DIR")) == False: | ||||
| 		os.mkdir(env.Dictionary("PROJECT_LIBDEPS_DIR")) | ||||
| 	with open(zip_path, 'wb') as fd: | ||||
| 		for chunk in r.iter_content(chunk_size=128): | ||||
| 			fd.write(chunk) | ||||
|  | ||||
| def copy_mks_assets(): | ||||
| 	print("Copying MKS Assets") | ||||
| 	output_path = tempfile.mkdtemp() | ||||
| 	zip_obj = zipfile.ZipFile(zip_path, 'r') | ||||
| 	zip_obj.extractall(output_path) | ||||
| 	zip_obj.close() | ||||
| 	if os.path.exists(assets_path) == True and os.path.isdir(assets_path) == False: | ||||
| 		os.unlink(assets_path) | ||||
| 	if os.path.exists(assets_path) == False: | ||||
| 		os.mkdir(assets_path) | ||||
| 	base_path = '' | ||||
| 	for filename in os.listdir(output_path): | ||||
| 		base_path = filename | ||||
| 	for filename in os.listdir(os.path.join(output_path, base_path, 'Firmware', 'mks_font')): | ||||
| 		shutil.copy(os.path.join(output_path, base_path, 'Firmware', 'mks_font', filename), assets_path) | ||||
| 	for filename in os.listdir(os.path.join(output_path, base_path, 'Firmware', 'mks_pic')): | ||||
| 		shutil.copy(os.path.join(output_path, base_path, 'Firmware', 'mks_pic', filename), assets_path) | ||||
| 	shutil.rmtree(output_path, ignore_errors=True) | ||||
|  | ||||
| if os.path.exists(zip_path) == False: | ||||
| 	download_mks_assets() | ||||
|  | ||||
| if os.path.exists(assets_path) == False: | ||||
| 	copy_mks_assets() | ||||
		Reference in New Issue
	
	Block a user