mirror of
				https://github.com/devine-dl/devine.git
				synced 2025-10-31 10:14:50 +00:00 
			
		
		
		
	refactor(utilities): Remove get_binary_path, use binaries.find instead
The function now located at core/binaries should only be used by services to find a specific binary not listed in there already, or if the name of the binary needed by your service differs.
This commit is contained in:
		
							parent
							
								
									677fd9c56a
								
							
						
					
					
						commit
						fd64e6acf4
					
				| @ -1,34 +1,45 @@ | |||||||
|  | import shutil | ||||||
| import sys | import sys | ||||||
| 
 | from pathlib import Path | ||||||
| from devine.core.utilities import get_binary_path | from typing import Optional | ||||||
| 
 | 
 | ||||||
| __shaka_platform = { | __shaka_platform = { | ||||||
|     "win32": "win", |     "win32": "win", | ||||||
|     "darwin": "osx" |     "darwin": "osx" | ||||||
| }.get(sys.platform, sys.platform) | }.get(sys.platform, sys.platform) | ||||||
| 
 | 
 | ||||||
| FFMPEG = get_binary_path("ffmpeg") | 
 | ||||||
| FFProbe = get_binary_path("ffprobe") | def find(*names: str) -> Optional[Path]: | ||||||
| FFPlay = get_binary_path("ffplay") |     """Find the path of the first found binary name.""" | ||||||
| SubtitleEdit = get_binary_path("SubtitleEdit") |     for name in names: | ||||||
| ShakaPackager = get_binary_path( |         path = shutil.which(name) | ||||||
|  |         if path: | ||||||
|  |             return Path(path) | ||||||
|  |     return None | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | FFMPEG = find("ffmpeg") | ||||||
|  | FFProbe = find("ffprobe") | ||||||
|  | FFPlay = find("ffplay") | ||||||
|  | SubtitleEdit = find("SubtitleEdit") | ||||||
|  | ShakaPackager = find( | ||||||
|     "shaka-packager", |     "shaka-packager", | ||||||
|     "packager", |     "packager", | ||||||
|     f"packager-{__shaka_platform}", |     f"packager-{__shaka_platform}", | ||||||
|     f"packager-{__shaka_platform}-x64" |     f"packager-{__shaka_platform}-x64" | ||||||
| ) | ) | ||||||
| Aria2 = get_binary_path("aria2c", "aria2") | Aria2 = find("aria2c", "aria2") | ||||||
| CCExtractor = get_binary_path( | CCExtractor = find( | ||||||
|     "ccextractor", |     "ccextractor", | ||||||
|     "ccextractorwin", |     "ccextractorwin", | ||||||
|     "ccextractorwinfull" |     "ccextractorwinfull" | ||||||
| ) | ) | ||||||
| HolaProxy = get_binary_path("hola-proxy") | HolaProxy = find("hola-proxy") | ||||||
| MPV = get_binary_path("mpv") | MPV = find("mpv") | ||||||
| Caddy = get_binary_path("caddy") | Caddy = find("caddy") | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| __all__ = ( | __all__ = ( | ||||||
|     "FFMPEG", "FFProbe", "FFPlay", "SubtitleEdit", "ShakaPackager", |     "FFMPEG", "FFProbe", "FFPlay", "SubtitleEdit", "ShakaPackager", | ||||||
|     "Aria2", "CCExtractor", "HolaProxy", "MPV", "Caddy" |     "Aria2", "CCExtractor", "HolaProxy", "MPV", "Caddy", "find" | ||||||
| ) | ) | ||||||
|  | |||||||
| @ -3,7 +3,6 @@ import contextlib | |||||||
| import importlib.util | import importlib.util | ||||||
| import os | import os | ||||||
| import re | import re | ||||||
| import shutil |  | ||||||
| import socket | import socket | ||||||
| import sys | import sys | ||||||
| import time | import time | ||||||
| @ -87,15 +86,6 @@ def import_module_by_path(path: Path) -> ModuleType: | |||||||
|     return module |     return module | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def get_binary_path(*names: str) -> Optional[Path]: |  | ||||||
|     """Find the path of the first found binary name.""" |  | ||||||
|     for name in names: |  | ||||||
|         path = shutil.which(name) |  | ||||||
|         if path: |  | ||||||
|             return Path(path) |  | ||||||
|     return None |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| def sanitize_filename(filename: str, spacer: str = ".") -> str: | def sanitize_filename(filename: str, spacer: str = ".") -> str: | ||||||
|     """ |     """ | ||||||
|     Sanitize a string to be filename safe. |     Sanitize a string to be filename safe. | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user