Commit graph

720 commits

Author SHA1 Message Date
41b4ffd9fb
Cleanup pylint sections 2022-04-08 18:38:55 -06:00
312df1ee9d
Refactor import logic for wk.hw.diags 2022-04-08 15:38:03 -06:00
20f91f01d1
Add type hints to hardware functions 2022-04-06 19:08:23 -06:00
3d7881328f
Move ddrescue out of wk/hw section 2022-04-06 19:08:09 -06:00
f79e578aaf
Remove pylint warning from sensors 2022-04-06 16:23:44 -06:00
46eb737dc8
Move SMART functions to their own file 2022-04-06 16:22:58 -06:00
99dd7661d4
Split hardware diagnostics into multiple files 2022-04-05 18:11:06 -06:00
fc2bb07d11
Track test groups as list instead of a dict
By only including selected tests we can skip checking for the
enabled/disabled status.  This will also simplify the process
of disabling future tests for a disk if a failure is detected.
2022-04-05 14:45:14 -06:00
5ffa6d8261
Replace references to details with attributes 2022-04-04 18:58:45 -06:00
4647efb971
Fix broken import 2022-04-04 18:33:03 -06:00
8582046948
Update HW diags and ddrescue to use new HW classes 2022-04-04 18:31:52 -06:00
56e145942a
Update generate_object_report() to handle slots 2022-04-04 18:31:15 -06:00
172cb398ba
Convert hardware objects to dataclasses 2022-04-04 18:30:21 -06:00
a3abf03a23
Merge branch 'new-ddrescue-arguments' into dev 2022-03-31 17:40:46 -06:00
8dd8701e8d
Split read phase into two parts
Addresses issue #184

The first read phase will skip a lot more to try to recover more data
from the whole source.  Then the second read phase will fill in like
the previous configuration.
2022-03-25 18:45:28 -06:00
4817fe6d1f
Use larger --skip-size by default 2022-03-25 16:53:29 -06:00
817cfc3de7
Skip --reopen-on-error by default for all presets 2022-03-25 15:48:00 -06:00
2a70997a6c
Use sessions in requests when downloading files 2022-03-10 15:36:58 -07:00
4e61025e99
Fix --sector-size argument 2022-03-08 13:02:33 -07:00
b66f25dfea
Only open ddrescueview if running with a DISPLAY 2022-03-08 12:36:49 -07:00
b82493b12b
Generate new map files when starting a recovery
This is done to define the domain size and let us use --complete-only.

This also enables us to open ddrescueview immediately since that tool
requires a valid map file from the start.  If you open an empty map
file ddrescueview doesn't auto-reload the file correctly.

Addresses #184
2022-03-08 11:55:23 -07:00
9d2eb8b175
Fix initial and max skip sizes
ddrescue's minimum is 64KiB so we should respect that.

Addresses #184
2022-03-08 11:53:56 -07:00
ea9e3b3696
Disable broken --sector-size argument
Addresses #184
2022-03-08 11:52:04 -07:00
c3ec690318
Add new ddrescue argument options
Addresses #184
2022-03-07 23:49:15 -07:00
f58f6d9da1
Update source URLs 2022-02-23 12:47:22 -07:00
a35ffdda23
Open ddrescueview during recovery
Addresses issue #182
2022-02-20 18:10:13 -07:00
82a2e7f85c
Add support for renaming macWK boot.efi files
This prevents those boot entries from appearing in the macOS boot menu
2021-12-14 21:04:44 -07:00
32d7cd44ff
Save extra image list to UFD to support --update
Addresses #176
2021-12-14 15:08:01 -07:00
a19714d735
Skip CPU tests by default for TestStations
Addresses #179
2021-12-14 14:08:22 -07:00
8075dfe45c
Fix run_adwcleaner() 2021-12-13 22:07:05 -07:00
125431a767
Update XMPlay skin 2021-12-13 19:29:19 -07:00
3ebfdbbedb
Update tool versions 2021-12-13 17:54:29 -07:00
0e56ccccfd
Remove extraneous registry hive names 2021-12-08 21:26:04 -07:00
93b2422044
Refactor Autologon sections
In some cases when Autologon was skipped initially it was still called in
end_session().  This caused old passwords to be reinstated in some cases.
2021-12-08 21:17:27 -07:00
8ecac36a64
Fix Secure Boot sections 2021-11-10 22:59:25 -07:00
7006a6453d
Add debug console launcher 2021-11-07 19:31:16 -07:00
5fb6dc4205
Fix volume free percentage calculation 2021-11-07 17:35:40 -07:00
6f0ae5a6ad
Set AdwCleaner settings before running 2021-10-28 23:15:28 -06:00
7dac69de14
Fix LibreOffice XCU data 2021-10-27 20:39:45 -06:00
4c0afb498b
Set custom power plan description 2021-10-27 20:25:49 -06:00
545cc20e48
Add support for more encodings for profiles.ini 2021-10-27 20:01:05 -06:00
49e8d5c894
Remove FastCopy setup after extraction 2021-10-27 19:37:19 -06:00
9fb5a221fb
Remove unused borrowed script 2021-10-27 18:05:43 -06:00
a18a8f8156
Set custom power plan name and sleep timeouts 2021-10-27 18:03:52 -06:00
d3f5cccdb2
Update disable_chrome_notifications() 2021-10-20 23:08:48 -06:00
194f694309
Fix Windows Defender passive mode check 2021-10-20 22:40:41 -06:00
a5a96dd598
Drop 7za in favor of the full version 2021-10-20 21:59:49 -06:00
98f3ebb49e
Change how OS_VERSION is set
By only using the float type for 8.1 we can just print OS_VERSION to get
7, 8, 8.1, 10, and maybe 11?

To future me, sorry if you decide to add type hints to the project.
2021-10-20 20:51:04 -06:00
6a9299dea1
Add bad workaround for now 2021-10-15 02:30:03 -06:00
7940e3a219
Avoid crash if profiles.ini is using UTF-16 LE BOM 2021-10-15 01:19:24 -06:00
fd27af040b
Accept the Autologon EULA automatically 2021-10-15 01:06:02 -06:00
2f655787e5
Avoid if quitting Auto Repairs without running it
i.e. Opened the script, get to the main menu, and then exit.
2021-10-15 01:04:36 -06:00
cc95bbe68b
Add embedded_python_env.py
Allows for faster debugging when using the embedded version of Python.
2021-10-14 23:59:26 -06:00
7388d94c50
Fix bugs 2021-10-14 23:58:46 -06:00
c66c39669c
Fix typo 2021-10-14 22:38:04 -06:00
2efd84b1df
Preserve ACL in FastCopy
Addresses issue #160
2021-10-14 20:32:51 -06:00
135e7e5d78
Add missing launchers 2021-10-14 20:19:16 -06:00
1ff17f4bb8
Support Prog32.exe stile naming in launchers 2021-10-14 20:12:34 -06:00
1f41a67350
Updated OpenShell sections
There's no point in downloading very X days if the URLs are version locked.
2021-10-14 17:55:15 -06:00
e9d2fb6f40
Add header to README 2021-10-14 17:42:12 -06:00
c5fca8f04f
Use specific versions to select UAC settings 2021-10-14 17:40:07 -06:00
e750a9c66d
Update script descriptions for consistency 2021-10-13 20:50:40 -06:00
b5021674ee
Remove old code
Finally
2021-10-13 18:31:29 -06:00
ccd6933f51
Add Windows Kit build sections 2021-10-13 17:59:46 -06:00
b7d54e1469
Apply bugfixes 2021-10-13 17:57:19 -06:00
aa0e35cbaa
Add copy_file() function to wk.io 2021-10-13 17:56:47 -06:00
0725674a3b
Update Windows kit layout and update tool configs
Going forward cbin/.cbin will only be used if necessary and not by
default.  This removes a step for most tools when used and better
aligns with the new auto_repairs and auto_setup scripts.
2021-10-13 17:51:55 -06:00
d4392b7285
Cleanup imports 2021-10-09 17:16:46 -06:00
bc0a358ac0
Update source URLs 2021-10-08 20:53:21 -06:00
2b2f371482
Use run_tool to extract ERUNT 2021-10-08 20:36:46 -06:00
a7779a9c1f
Refactor Windows kit build process for new layout 2021-10-08 20:05:08 -06:00
24269f801c
Update RegDelNull section 2021-10-02 20:02:17 -06:00
e57b859bd3
Remove unused sources 2021-10-02 20:02:04 -06:00
7db0ece687
Move msword-search back to scripts/ 2021-10-02 19:32:24 -06:00
f7e6f88b9c
Merge duplicate efforts to restore UAC defaults 2021-10-02 19:30:59 -06:00
659d71c0eb
Move repair and setup settings to wk/cfg 2021-10-02 19:19:24 -06:00
e62a008800
Disable opening news and interests on hover over 2021-10-02 18:07:00 -06:00
6a0fd46523
Add "Custom" option to Auto Setup 2021-09-30 18:55:32 -06:00
4a21ade0b4
Ask selection questions during load_preset() 2021-09-30 18:50:49 -06:00
d214e3f363
Adjust whitelist usage 2021-09-30 17:43:09 -06:00
625539c786
Avoid crash when downloading files 2021-09-30 15:37:06 -06:00
7391c863f9
Old code cleanup 2021-09-30 04:20:39 -06:00
0fc5c4b146
Add initial questions to Auto Setup 2021-09-30 03:38:25 -06:00
02055c5b30
Add open programs sections to Auto Setup 2021-09-30 02:00:16 -06:00
bd0a03e283
Combine browser configuration menu options 2021-09-30 01:59:26 -06:00
eacab48c1e
Add 4K alignment checks to Auto Setup 2021-09-29 20:31:46 -06:00
f1645f80e6
Add AV check to Auto Setup 2021-09-29 20:27:35 -06:00
30e43b9814
Add storage status sections 2021-09-29 19:56:49 -06:00
526f6e26eb
Add installed RAM sections 2021-09-29 01:24:07 -06:00
337b6d95e1
Add activation and Secure Boot sections 2021-09-29 00:59:06 -06:00
423cd343fb
Add show_os_name() with support status checks 2021-09-28 23:23:05 -06:00
d725837f9b
Add AIDA64 sections
Replaced old report profiles with a new basic profile.
Several sections that just slow down the process have been removed.
2021-09-28 19:21:30 -06:00
f0451a9803
Adjust Windows-specific imports and STATIC VARS 2021-09-28 18:34:50 -06:00
90fb97ad91
Fix various pylint warnings 2021-09-27 21:48:11 -06:00
2e485505d4
Skip backup sections if backup previously run 2021-09-27 21:21:09 -06:00
8289df1d62
Don't prepend exception name for WK generic types 2021-09-27 20:49:39 -06:00
528602d98e
Check if activated before getting the BIOS key 2021-09-27 20:48:55 -06:00
bc320b4d87
Add remaining 'Configure System' sections 2021-09-27 20:48:19 -06:00
f9d4b1e3a3
Add UAC sections 2021-09-27 19:44:25 -06:00
7009a074c7
Add BSoD minidump sections 2021-09-27 19:30:12 -06:00
cb3ec42b92
Add functions to disable Chrome notifications 2021-09-27 18:41:34 -06:00
b61f243cc8
Disable display sleep only during auto-repairs 2021-09-27 16:51:01 -06:00
a03d772788
Add software bundle sections 2021-09-27 16:41:57 -06:00
49d7e6d78a
Misc updates 2021-09-25 20:39:08 -06:00
68d8e292cc
Restrict OpenShell installs to Windows 10 2021-09-25 20:37:39 -06:00
b05835d80f
Enable uBlock Origin in more browsers 2021-09-25 20:35:47 -06:00
14ff5a9437
Add Firefox and uBlock Origin sections 2021-09-25 18:11:05 -06:00
578925cb70
Add Open-Shell install sections 2021-09-15 18:02:36 -06:00
38fd38f1ec
Support suffixes other than exe for kit tools 2021-09-15 16:38:11 -06:00
90f2a37531
Rename wk/cfg/tools.py to wk/cfg/sources.py 2021-09-15 16:37:25 -06:00
bec4ed520c
Add LibreOffice install sections 2021-09-15 12:25:32 -06:00
3d984f5f29
Import standard repair functions instead of auto 2021-09-15 09:58:01 -06:00
673a92b323
Add install_vcredists() 2021-09-15 09:56:09 -06:00
e485cc9674
Add Auto Setup scripts 2021-09-15 09:18:02 -06:00
ae4a72036d
Extract ERUNT before running 2021-09-14 19:14:44 -06:00
e90b59853c
Update launch scripts to use new config location 2021-09-14 19:14:01 -06:00
56a8ffea03
Fix path to main.py config file 2021-09-13 20:45:16 -06:00
7dfd399e6e
Update __init__.py files 2021-09-13 18:42:36 -06:00
0e124dc1f2
Skip Autologon cleanup if it wasn't used
We found in a few cases systems starting requiring logon passwords after
Auto Repairs were run.  Autologon might be the cause so we should avoid
running it, and the cleanup, if settings are already present.

Addresses issue #175
2021-08-31 17:06:38 -06:00
e7f6dc6b86
Remove erroneous docstring 2021-08-25 16:05:38 -06:00
3189fc464a
Add macOS boot options 2021-08-25 12:32:55 -06:00
dd50852a68
Enable numlock in Linux 2021-07-23 22:58:28 -06:00
bf6482a594
Fix possible crash in reset_windows_updates()
Auto Repairs could end up in an endless boot loop if
SoftwareDistribution.old exists before running
2021-07-23 21:58:47 -06:00
8a685d4e60
Add option to include extra images in build-ufd 2021-06-30 01:02:03 -06:00
f9f947fab6
Update wk.std.bytes_to_string() 2021-06-29 22:40:40 -06:00
9c5767f71f
Update CPU testing sections 2021-06-23 23:33:45 -06:00
e4fbc7fe69
Prevent 100% CPU usage in NonBlockingStreamReader 2021-06-23 23:30:19 -06:00
d76dca8fd7
Catch and log missing commands
It's better to be explicit in what's going wrong in the case of
a missing command or program.
2021-06-23 21:33:27 -06:00
3cf371177c
Move broken msword-search script to review folder 2021-06-22 20:16:46 -06:00
8e0fdf641b
Retest temps with sysbench if Prime95 runs too hot
If the CPU reaches the failing temps during Prime95 then sysbench will be
run to emulate a less artificial workload.  The both the overall and sysbench
max temps are recorded and shown in the results.

Added new option to track an alternate max temp value in wk.hw.sensors.
This was needed so show two different max temps recorded during CPU testing.

Sysbench was added to the Linux package list and is compiled for macOS.
Without manually compiling the package it brings in way too many dependencies
to support SQL DB testing (which we don't need).
2021-06-17 03:16:34 -06:00
93de0645cd
Use custom power plan during Auto Repairs 2021-05-14 15:38:54 -06:00
527a5b2e97
Avoid crash during HW Diagnostics 2021-05-13 21:32:46 -06:00
32b25f912d
Remove with_stem() usage to support Python 3.8 2021-05-13 21:30:52 -06:00
f3e3483b46
Support new Archiso layout in UFD sections 2021-05-13 21:30:32 -06:00
a5b0758d30
Adjust exception formatting in TryAndPrint() 2021-05-13 21:08:38 -06:00
e83bcb864c
Fix Autologon sections 2021-05-13 21:04:39 -06:00
de6ee523b0
Add support for running on Python 3.8 2021-05-07 23:51:48 -06:00
1f618a4152
Run AVRemover on first run of Auto Repairs 2021-05-07 23:50:34 -06:00
b7b8f20e24
Add timezone check to Auto Repairs 2021-05-07 18:18:38 -06:00
59fd85429c
Abort on KeyboardInterrupts 2021-05-07 02:38:55 -06:00
d2fb8250bc
Update backups and quarantine paths 2021-05-07 02:24:57 -06:00
bde9863b98
Add backup browsers sections 2021-05-07 00:31:26 -06:00
4928989913
Fix bug in download_tool()
Skip check to ensure the correct architecture path is returned.
2021-05-05 23:56:12 -06:00
6a00444bd4
Support multiple architectures in get_tool_path()
This change was necessary to avoid using the wrong paths for
tools with speparate executables for different architectures.
2021-05-05 23:29:29 -06:00
4872a18e91
Support tools with multiple architectures 2021-05-05 23:10:38 -06:00
acc3a4dccc
Add extract_tool() function 2021-05-02 02:16:34 -06:00
461bc8ac9c
Merge branch 'auto-repair' into dev 2021-05-02 01:10:45 -06:00
e9db4238ff
Run Autologon before any scans 2021-05-01 21:17:42 -06:00
b1acb6a076
Remove placeholder functions 2021-05-01 20:49:28 -06:00
2d4ae65188
Run KVRT in new pane under ConEmu 2021-05-01 20:41:24 -06:00