[PR] #87 from RealFX-Code: Windows git command check
This commit is contained in:
commit
b9eeb068fa
2 changed files with 27 additions and 1 deletions
15
.vscode/launch.json
vendored
Normal file
15
.vscode/launch.json
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Python: Module",
|
||||
"type": "python",
|
||||
"request": "launch",
|
||||
"module": "hyfetch",
|
||||
"justMyCode": true
|
||||
}
|
||||
]
|
||||
}
|
|
@ -7,6 +7,7 @@ import shlex
|
|||
import subprocess
|
||||
import sys
|
||||
import zipfile
|
||||
import shutil
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from subprocess import check_output
|
||||
|
@ -150,7 +151,6 @@ def get_command_path() -> str:
|
|||
|
||||
return cmd_path
|
||||
|
||||
|
||||
def ensure_git_bash() -> Path:
|
||||
"""
|
||||
Ensure git bash installation for windows
|
||||
|
@ -163,6 +163,17 @@ def ensure_git_bash() -> Path:
|
|||
if def_path.is_file():
|
||||
return def_path
|
||||
|
||||
# Labda expression that finds out if a command exists
|
||||
cmd_exists = lambda x: shutil.which(x) is not None
|
||||
|
||||
# TEMP-FIX: Make git not hard-coded to being installed "officially" via the git-for-windows installer
|
||||
if ( cmd_exists("git.exe") ):
|
||||
pth = Path(shutil.which("git")).parent
|
||||
if(os.path.isfile(pth / r'bash.exe')):
|
||||
return pth / r'bash.exe'
|
||||
elif ( os.path.isfile(pth / r'/bin/bash.exe')):
|
||||
return pth / r'/bin/bash.exe'
|
||||
|
||||
# Find installation in PATH (C:\Program Files\Git\cmd should be in path)
|
||||
pth = (os.environ.get('PATH') or '').lower().split(';')
|
||||
pth = [p for p in pth if p.endswith(r'\git\cmd')]
|
||||
|
|
Loading…
Reference in a new issue