Commit graph

745 commits

Author SHA1 Message Date
38e867d3e3
Lower default skip-size values 2022-07-09 18:52:51 -07:00
9e874f8034
Fix bug locking ddrescue-tui to pass Read-Skip 2022-06-24 10:36:10 -07:00
989fe9f047
Add workaround in Open Shell for S0 LOW POWER IDLE
If the system supports that power state Open Shell can't enter sleep
mode.  The workaround removes the standard sleep option from the list
and adds a new sleep button above the shutdown button that just turns
the monitor off.

Addresses issue #719
2022-06-16 19:27:05 -07:00
301c64be4c
Assume bytes for bare numbers in string_to_bytes() 2022-05-24 16:23:27 -07:00
7b13b7de26
Remove useless replace() call 2022-05-24 12:35:10 -07:00
b4547c3555
Remove magic numbers 2022-05-21 17:38:28 -07:00
7abd4c21c3
Refactor Disk children sections
Child devices are not added by default to improve performance.
Disk.children is always present to avoid overly cautious lookups.
2022-05-21 15:03:44 -07:00
193d207d5b
Fix mount-all-volumes 2022-05-21 15:03:34 -07:00
e03956f2fe
Convert Disk description to a property 2022-05-21 14:39:42 -07:00
1616379398
Update mount_volumes to match build_volume_report 2022-05-21 14:35:25 -07:00
29d4e80f7e
Refactor get_disks_macos() to improve performance
Found a way to easily exclude disk images from the list under El Cap
2022-05-20 19:44:12 -07:00
544ffb1aff
Refactor partition table type lookup sections 2022-05-20 17:58:07 -07:00
cf7ed909b3
Remove Python 3.10 requirement 2022-05-20 17:08:10 -07:00
fddd77e6fd
Fix typehint typo 2022-05-19 17:27:49 -07:00
0370ba213b
Add unmount aliases 2022-05-19 15:13:50 -07:00
068f1773aa
Update Linux mount volume sections 2022-05-18 14:59:14 -07:00
5fc5cda86d
Avoid adding duplicate attribute failure notes 2022-05-14 17:51:43 -07:00
0ecc4d4146
Add test mode to Hardware Diagnostics
Addresses issue #192
2022-05-14 17:48:04 -07:00
47308c1508
Allow non-integer number of minute countdowns 2022-05-14 16:19:18 -07:00
859bc990e0
Fix destination size checks
Addresses issue #166
2022-05-01 16:53:48 -07:00
6642aad2c8
Update ddrescue-tui to use new Disk object vars 2022-05-01 16:20:39 -07:00
2585ed584c
Refactor disk safety checks 2022-04-18 09:21:29 -07:00
95cd3b645d
Remove SMARTSelfTestInProgressError sections
Going forward this is a non-blocking error.
2022-04-11 16:50:21 -06:00
d667695e9e
Move surface scan check to its own function 2022-04-11 14:30:42 -06:00
af8b2b7dd3
Refactor SMART self-test sections 2022-04-08 19:19:23 -06:00
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