|
8 | 8 | # be tested in an installation. |
9 | 9 |
|
10 | 10 | import os |
11 | | -import re |
12 | 11 | import sys |
13 | | -from os.path import exists, isfile, join |
14 | | - |
15 | | -try: |
16 | | - import winreg |
17 | | -except ImportError: |
18 | | - import _winreg as winreg |
| 12 | +from os.path import exists, join |
19 | 13 |
|
20 | 14 | ROOT_PREFIX = sys.prefix |
21 | 15 |
|
@@ -57,36 +51,6 @@ def err(x): |
57 | 51 | OutputDebugString('_nsis.py: Error: ' + x) |
58 | 52 |
|
59 | 53 |
|
60 | | -class NSISReg: |
61 | | - def __init__(self, reg_path): |
62 | | - self.reg_path = reg_path |
63 | | - if exists(join(ROOT_PREFIX, '.nonadmin')): |
64 | | - self.main_key = winreg.HKEY_CURRENT_USER |
65 | | - else: |
66 | | - self.main_key = winreg.HKEY_LOCAL_MACHINE |
67 | | - |
68 | | - def set(self, name, value): |
69 | | - try: |
70 | | - winreg.CreateKey(self.main_key, self.reg_path) |
71 | | - registry_key = winreg.OpenKey(self.main_key, self.reg_path, 0, |
72 | | - winreg.KEY_WRITE) |
73 | | - winreg.SetValueEx(registry_key, name, 0, winreg.REG_SZ, value) |
74 | | - winreg.CloseKey(registry_key) |
75 | | - return True |
76 | | - except WindowsError: |
77 | | - return False |
78 | | - |
79 | | - def get(self, name): |
80 | | - try: |
81 | | - registry_key = winreg.OpenKey(self.main_key, self.reg_path, 0, |
82 | | - winreg.KEY_READ) |
83 | | - value, regtype = winreg.QueryValueEx(registry_key, name) |
84 | | - winreg.CloseKey(registry_key) |
85 | | - return value |
86 | | - except WindowsError: |
87 | | - return None |
88 | | - |
89 | | - |
90 | 54 | allusers = (not exists(join(ROOT_PREFIX, '.nonadmin'))) |
91 | 55 | # out('allusers is %s\n' % allusers) |
92 | 56 |
|
@@ -157,25 +121,9 @@ def add_condabin_to_path(): |
157 | 121 | broadcast_environment_settings_change() |
158 | 122 |
|
159 | 123 |
|
160 | | -def rm_regkeys(): |
161 | | - cmdproc_reg_entry = NSISReg(r'Software\Microsoft\Command Processor') |
162 | | - cmdproc_autorun_val = cmdproc_reg_entry.get('AutoRun') |
163 | | - conda_hook_regex_pat = r'((\s+&\s+)?(if +exist)?(\s*?\"[^\"]*?conda[-_]hook\.bat\"))' |
164 | | - if join(ROOT_PREFIX, 'condabin') in (cmdproc_autorun_val or ''): |
165 | | - cmdproc_autorun_newval = re.sub(conda_hook_regex_pat, '', |
166 | | - cmdproc_autorun_val) |
167 | | - try: |
168 | | - cmdproc_reg_entry.set('AutoRun', cmdproc_autorun_newval) |
169 | | - except Exception: |
170 | | - # Hey, at least we made an attempt to cleanup |
171 | | - pass |
172 | | - |
173 | | - |
174 | 124 | def main(): |
175 | 125 | cmd = sys.argv[1].strip() |
176 | | - if cmd == 'rmreg': |
177 | | - rm_regkeys() |
178 | | - elif cmd == 'addpath': |
| 126 | + if cmd == 'addpath': |
179 | 127 | # These checks are probably overkill, but could be useful |
180 | 128 | # if I forget to update something that uses this code. |
181 | 129 | if len(sys.argv) > 2: |
|
0 commit comments