From f9d4b1e3a3f274cd4a3320e0f841e773491e3de7 Mon Sep 17 00:00:00 2001 From: 2Shirt <2xShirt@gmail.com> Date: Mon, 27 Sep 2021 19:44:25 -0600 Subject: [PATCH] Add UAC sections --- scripts/auto_setup.py | 2 +- scripts/wk/setup/win.py | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/scripts/auto_setup.py b/scripts/auto_setup.py index 8bf6fee0..48874875 100644 --- a/scripts/auto_setup.py +++ b/scripts/auto_setup.py @@ -132,7 +132,7 @@ BASE_MENUS = { MenuEntry('Set System Restore Size', 'auto_system_restore_set_size'), MenuEntry('Create System Restore', 'auto_system_restore_create'), MenuEntry('Enable Windows Updates', 'auto_windows_updates_enable'), - MenuEntry('User Account Control', no_op), + MenuEntry('User Account Control', 'auto_restore_default_uac'), MenuEntry('Windows Activation', no_op), MenuEntry('Windows Explorer', no_op), MenuEntry(r'Windows\Temp Fix', no_op), diff --git a/scripts/wk/setup/win.py b/scripts/wk/setup/win.py index 1f80ff99..42270c82 100644 --- a/scripts/wk/setup/win.py +++ b/scripts/wk/setup/win.py @@ -153,6 +153,27 @@ REG_OPEN_SHELL_SETTINGS = { ), }, } +UAC_DEFAULTS_WIN7 = { + 'HKLM': { + r'Software\Microsoft\Windows\CurrentVersion\Policies\System': ( + ('ConsentPromptBehaviorAdmin', 5, 'DWORD'), + ('EnableLUA', 1, 'DWORD'), + ('PromptOnSecureDesktop', 1, 'DWORD'), + ), + }, + } +UAC_DEFAULTS_WIN10 = { + 'HKLM': { + r'Software\Microsoft\Windows\CurrentVersion\Policies\System': ( + ('ConsentPromptBehaviorAdmin', 5, 'DWORD'), + ('ConsentPromptBehaviorUser', 3, 'DWORD'), + ('EnableInstallerDetection', 1, 'DWORD'), + ('EnableLUA', 1, 'DWORD'), + ('EnableVirtualization', 1, 'DWORD'), + ('PromptOnSecureDesktop', 1, 'DWORD'), + ), + }, + } SYSTEMDRIVE = os.environ.get('SYSTEMDRIVE', 'C:') WIDTH = 50 TRY_PRINT = TryAndPrint() @@ -462,6 +483,11 @@ def auto_install_vcredists(): TRY_PRINT.run('Visual C++ Runtimes...', install_vcredists) +def auto_restore_default_uac(): + """Restore default UAC settings.""" + TRY_PRINT.run('User Account Control...', restore_default_uac) + + # Configure Functions def disable_chrome_notifications(): """Disable notifications in Google Chrome.""" @@ -542,6 +568,15 @@ def enable_ublock_origin(): popen_program(cmd) +def restore_default_uac(): + """Restore default UAC settings.""" + settings = UAC_DEFAULTS_WIN10 + if OS_VERSION != 10: + settings = UAC_DEFAULTS_WIN7 + + reg_write_settings(settings) + + # Install Functions def install_firefox(): """Install Firefox.