[wgem] config | allowing to use system nativefier

This commit is contained in:
Vinícius Moreira
2019-12-17 15:23:40 -03:00
parent f12b653393
commit e87c95ea9e
5 changed files with 73 additions and 18 deletions

View File

@@ -1,13 +1,24 @@
from typing import List
from bauh.commons.system import SimpleProcess
from bauh.commons.system import SimpleProcess, run_cmd
from bauh.gems.web import NATIVEFIER_BIN_PATH, NODE_PATHS
def install(url: str, name: str, output_dir: str, electron_version: str, cwd: str, extra_options: List[str] = None) -> SimpleProcess:
cmd = [NATIVEFIER_BIN_PATH, url, '--name', name, '-e', electron_version, output_dir]
def install(url: str, name: str, output_dir: str, electron_version: str, cwd: str, system: bool, extra_options: List[str] = None) -> SimpleProcess:
cmd = [NATIVEFIER_BIN_PATH if not system else 'nativefier', url, '--name', name, '-e', electron_version, output_dir]
if extra_options:
cmd.extend(extra_options)
return SimpleProcess(cmd, cwd=cwd, extra_paths=NODE_PATHS)
return SimpleProcess(cmd, cwd=cwd, extra_paths=NODE_PATHS if not system else None)
def is_available() -> bool:
res = run_cmd('which nativefier', print_error=False)
return res and not res.strip().startswith('which ')
def get_version() -> str:
return run_cmd('{} --version'.format(NATIVEFIER_BIN_PATH), print_error=False, extra_paths=NODE_PATHS)