diff --git a/modules/path.py b/modules/path.py index 571aded..c4b3694 100644 --- a/modules/path.py +++ b/modules/path.py @@ -1,28 +1,40 @@ # Module for PATH actions import os -os.popen('cls') -existing_path_value_l = os.popen('PATH').read()[5:].replace('\n', '') # Get the existing path value -print('Existing path value: ' + existing_path_value_l) -existing_path_value_s = set() -for i in existing_path_value_l.split(';'): - existing_path_value_s.add(i + ';') -existing_path_value_s = list(existing_path_value_s) -existing_path_value_s.sort() -existing_path_value = str() -for i in existing_path_value_s: - existing_path_value += i +import winreg + + +def get_path() -> str: + """ + Returns the current PATH variable + """ + existing_path_value_s = set() + for i in os.popen('PATH').read()[5:].replace('\n', '').split(';'): + existing_path_value_s.add(i + ';') + existing_path_value = str() + for i in sorted(list(existing_path_value_s)): + existing_path_value += i + + return existing_path_value def add_to_path(program_path: str): - import winreg + """ + Adds a program to the PATH variable + """ + existing_path_value = get_path() with winreg.ConnectRegistry(None, winreg.HKEY_CURRENT_USER) as root: # Get the current user's registry with winreg.OpenKey(root, "Environment", 0, winreg.KEY_ALL_ACCESS) as key: # Open the environment key - new_path_value = existing_path_value + f'{";" if existing_path_value[-1] != ";" else ""}' + \ - program_path + ';' + program_path + "\\apps;" # Create new + new_path_value = \ + existing_path_value + \ + f'{";" if existing_path_value[-1] != ";" else ""}' + \ + program_path + ';' + program_path + "\\apps;" # Create new path value winreg.SetValueEx(key, "PATH", 0, winreg.REG_EXPAND_SZ, new_path_value) # Update the path value def add_var(horsy_path: str): + """ + Creates HORSYPATH environment variable + """ import winreg with winreg.ConnectRegistry(None, winreg.HKEY_CURRENT_USER) as root: # Get the current user's registry with winreg.OpenKey(root, "Environment", 0, winreg.KEY_ALL_ACCESS) as key: # Open the environment key