From 59ecefe83970e2861b0ade8647f034fb7517afbd Mon Sep 17 00:00:00 2001 From: Alan Mason <1923621+2Shirt@users.noreply.github.com> Date: Sun, 19 Nov 2017 02:51:33 -0800 Subject: [PATCH] Added initial cbin downloads * Need to add rest of the tools and compression sections --- .bin/Scripts/build_kit.ps1 | 13 +- .bin/Scripts/functions/build.py | 157 ------ .bin/Scripts/functions/update.py | 509 ++++++++++++++++++ .bin/Scripts/update_kit.py | 218 ++------ {.bin => .cbin/_include}/AIDA64/full.rpf | 0 .../_include}/AIDA64/installed_programs.rpf | 0 {.bin => .cbin/_include}/AIDA64/licenses.rpf | 0 .../_include}/NotepadPlusPlus/config.xml | 0 .../_include}/XYplorerFree/Data/XYplorer.ini | Bin .gitignore | 6 +- UPDATEME.cmd | 130 +++++ 11 files changed, 707 insertions(+), 326 deletions(-) delete mode 100644 .bin/Scripts/functions/build.py create mode 100644 .bin/Scripts/functions/update.py rename {.bin => .cbin/_include}/AIDA64/full.rpf (100%) rename {.bin => .cbin/_include}/AIDA64/installed_programs.rpf (100%) rename {.bin => .cbin/_include}/AIDA64/licenses.rpf (100%) rename {.bin => .cbin/_include}/NotepadPlusPlus/config.xml (100%) rename {.bin => .cbin/_include}/XYplorerFree/Data/XYplorer.ini (100%) create mode 100644 UPDATEME.cmd diff --git a/.bin/Scripts/build_kit.ps1 b/.bin/Scripts/build_kit.ps1 index 6338cc99..2d54a413 100644 --- a/.bin/Scripts/build_kit.ps1 +++ b/.bin/Scripts/build_kit.ps1 @@ -5,6 +5,8 @@ clear $host.UI.RawUI.WindowTitle = "Wizard Kit: Build Tool" $wd = $(Split-Path $MyInvocation.MyCommand.Path) $bin = (Get-Item $wd).Parent.FullName +$root = (Get-Item "$bin\..").FullName # Get-Item $bin fails + # (I'm assuming that starting with a '.' is the issue) $tmp = "{0}\tmp" -f $bin $errors = 0 pushd "$wd" @@ -154,12 +156,21 @@ catch { } ## Cleanup ## -Move-Item "$bin\..\Build Kit.cmd" "$bin\Scripts\Build Kit.cmd" +Move-Item "$root\Build Kit.cmd" "$bin\Scripts\Build Kit.cmd" +Move-Item "$root\.root_items\*" "$root\" +New-Item "$root\.cbin" +Remove-Item "$root\.root_items" +foreach ($item in @(".bin", ".cbin")) { + if (Test-Path "$root\$item") { + (Get-Item "$root\$item").attributes = "Hidden" + } +} ## Configure ## Write-Host "Configuring kit" wk_pause "Press Enter to open settings..." start "$bin\NotepadPlusPlus\notepadplusplus.exe" -argumentlist @("$bin\Scripts\settings\main.py") -wait +Start-Sleep 1 ## Done ## popd diff --git a/.bin/Scripts/functions/build.py b/.bin/Scripts/functions/build.py deleted file mode 100644 index ae7009c2..00000000 --- a/.bin/Scripts/functions/build.py +++ /dev/null @@ -1,157 +0,0 @@ -# Wizard Kit: Functions - Build / Update - -from functions.common import * - -def download_file(out_dir, out_name, source_url): - """Downloads a file using curl.""" - extract_item('curl', silent=True) - _cmd = [ - global_vars['Tools']['curl'], - # '-#LSfo', # ProgressBar - '-Lfso', - '{}/{}'.format(out_dir, out_name), - source_url] - os.makedirs(out_dir, exist_ok=True) - run_program(_cmd, pipe=False) - -def resolve_dynamic_url(source_url, regex): - """Scan source_url for a url using the regex provided; returns str.""" - # Download the "download page" - extract_item('curl', silent=True) - _tmp_file = r'{TmpDir}\webpage.tmp'.format(**global_vars) - _cmd = [ - global_vars['Tools']['curl'], - '-#LSfo', - _tmp_file, - source_url] - try: - run_program(_cmd) - except Exception: - # "Fail silently as the download_file() function will catch it - return None - - # Scan the file for the regex - with open(_tmp_file, 'r') as file: - for line in file: - if re.search(regex, line): - _url = line.strip() - _url = re.sub(r'.*(a |)href="([^"]+)".*', r'\2', _url) - _url = re.sub(r".*(a |)href='([^']+)'.*", r'\2', _url) - break - - # Cleanup and return - os.remove(_tmp_file) - return _url - -def update_adwcleaner(): - _path = global_vars['BinDir'] - _name = 'AdwCleaner.exe' - _dl_page = 'http://www.bleepingcomputer.com/download/adwcleaner/dl/125/' - _regex = r'href=.*http(s|)://download\.bleepingcomputer\.com/dl/[a-zA-Z0-9]+/[a-zA-Z0-9]+/windows/security/security-utilities/a/adwcleaner/AdwCleaner\.exe' - _url = resolve_dynamic_url(_dl_page, _regex) - download_file(_path, _name, _url) - -def update_eset(): - _path = global_vars['BinDir'] - _name = 'ESET.exe' - _url = 'http://download.eset.com/special/eos/esetsmartinstaller_enu.exe' - download_file(_path, _name, _url) - -def update_jrt(): - _path = global_vars['BinDir'] - _name = 'JRT.exe' - _url = 'http://downloads.malwarebytes.org/file/jrt' - download_file(_path, _name, _url) - -def update_kvrt(): - _path = global_vars['BinDir'] - _name = 'KVRT.exe' - _url = 'http://devbuilds.kaspersky-labs.com/devbuilds/KVRT/latest/full/KVRT.exe' - download_file(_path, _name, _url) - -def update_hitmanpro(): - _path = '{BinDir}/HitmanPro'.format(**global_vars) - _name = 'HitmanPro.exe' - _url = 'http://dl.surfright.nl/HitmanPro.exe' - download_file(_path, _name, _url) - - _name = 'HitmanPro64.exe' - _url = 'http://dl.surfright.nl/HitmanPro_x64.exe' - download_file(_path, _name, _url) - -def update_intel_driver_utility(): - _path = '{BinDir}/_Drivers'.format(**global_vars) - _name = 'Intel Driver Update Utility.exe' - _dl_page = 'http://www.intel.com/content/www/us/en/support/detect.html' - _regex = r'a href.*http(s|)://downloadmirror\.intel\.com/[a-zA-Z0-9]+/[a-zA-Z0-9]+/Intel%20Driver%20Update%20Utility%20Installer.exe' - _url = resolve_dynamic_url(_dl_page, _regex) - _url = resolve_dynamic_url(_dl_page, _regex) - download_file(_path, _name, _url) - -def update_intel_ssd_toolbox(): - _path = '{BinDir}/_Drivers'.format(**global_vars) - _name = 'Intel SSD Toolbox.exe' - _dl_page = 'https://downloadcenter.intel.com/download/26085/Intel-Solid-State-Drive-Toolbox' - _regex = r'href=./downloads/eula/[0-9]+/Intel-Solid-State-Drive-Toolbox.httpDown=https\%3A\%2F\%2Fdownloadmirror\.intel\.com\%2F[0-9]+\%2Feng\%2FIntel\%20SSD\%20Toolbox\%20-\%20v[0-9\.]+.exe' - _url = resolve_dynamic_url(_dl_page, _regex) - _url = re.sub(r'.*httpDown=(.*)', r'\1', _url, re.IGNORECASE) - _url = _url.replace('%3A', ':') - _url = _url.replace('%2F', '/') - download_file(_path, _name, _url) - -def update_rkill(): - _path = '{BinDir}/RKill'.format(**global_vars) - _name = 'RKill.exe' - _dl_page = 'http://www.bleepingcomputer.com/download/rkill/dl/10/' - _regex = r'href=.*http(s|)://download\.bleepingcomputer\.com/dl/[a-zA-Z0-9]+/[a-zA-Z0-9]+/windows/security/security-utilities/r/rkill/rkill\.exe' - _url = resolve_dynamic_url(_dl_page, _regex) - download_file(_path, _name, _url) - -def update_samsung_magician(): - print_warning('Disabled.') - #~Broken~# _path = '{BinDir}/_Drivers'.format(**global_vars) - #~Broken~# _name = 'Samsung Magician.zip' - #~Broken~# _dl_page = 'http://www.samsung.com/semiconductor/minisite/ssd/download/tools.html' - #~Broken~# _regex = r'href=./semiconductor/minisite/ssd/downloads/software/Samsung_Magician_Setup_v[0-9]+.zip' - #~Broken~# _url = resolve_dynamic_url(_dl_page, _regex) - #~Broken~# # Convert relative url to absolute - #~Broken~# _url = 'http://www.samsung.com' + _url - #~Broken~# download_file(_path, _name, _url) - #~Broken~# # Extract and replace old copy - #~Broken~# _args = [ - #~Broken~# 'e', '"{BinDir}/_Drivers/Samsung Magician.zip"'.format(**global_vars), - #~Broken~# '-aoa', '-bso0', '-bsp0', - #~Broken~# '-o"{BinDir}/_Drivers"'.format(**global_vars) - #~Broken~# ] - #~Broken~# run_program(seven_zip, _args) - #~Broken~# try: - #~Broken~# os.remove('{BinDir}/_Drivers/Samsung Magician.zip'.format(**global_vars)) - #~Broken~# #~PoSH~# Move-Item "$bin\_Drivers\Samsung*exe" "$bin\_Drivers\Samsung Magician.exe" $path 2>&1 | Out-Null - #~Broken~# except Exception: - #~Broken~# pass - pass - -def update_sysinternalssuite(): - _path = '{BinDir}/tmp'.format(**global_vars) - _name = 'SysinternalsSuite.zip' - _url = 'https://download.sysinternals.com/files/SysinternalsSuite.zip' - download_file(_path, _name, _url) - # Extract - _args = [ - 'e', '"{BinDir}/tmp/SysinternalsSuite.zip"'.format(**global_vars), - '-aoa', '-bso0', '-bsp0', - '-o"{BinDir}/SysinternalsSuite"'.format(**global_vars)] - run_program(seven_zip, _args) - try: - os.remove('{BinDir}/tmp/SysinternalsSuite.zip'.format(**global_vars)) - except Exception: - pass - -def update_tdsskiller(): - _path = global_vars['BinDir'] - _name = 'TDSSKiller.exe' - _url = 'http://media.kaspersky.com/utilities/VirusUtilities/EN/tdsskiller.exe' - download_file(_path, _name, _url) - -if __name__ == '__main__': - print("This file is not meant to be called directly.") diff --git a/.bin/Scripts/functions/update.py b/.bin/Scripts/functions/update.py new file mode 100644 index 00000000..43b1f5db --- /dev/null +++ b/.bin/Scripts/functions/update.py @@ -0,0 +1,509 @@ +# Wizard Kit: Functions - Build / Update +## NOTE: This file is full of magic strings! + +import requests + +from functions.common import * +from settings.launchers import * + +def download_to_temp(out_name, source_url): + """Downloads a file using requests.""" + ## Code based on this Q&A: https://stackoverflow.com/q/16694907 + ### Asked by: https://stackoverflow.com/users/427457/roman-podlinov + ### Edited by: https://stackoverflow.com/users/657427/christophe-roussy + ### Using answer: https://stackoverflow.com/a/39217788 + ### Answer from: https://stackoverflow.com/users/4323/john-zwinck + out_dir = global_vars['TmpDir'] + os.makedirs(out_dir, exist_ok=True) + out_path = '{}/{}'.format(out_dir, out_name) + try: + r = requests.get(source_url, stream=True) + with open(out_path, 'wb') as f: + shutil.copyfileobj(r.raw, f) + r.close() + except: + raise GenericError('Failed to download file.') + +def resolve_dynamic_url(source_url, regex, tmp_file='webpage.tmp'): + """Scan source_url for a url using the regex provided; returns str.""" + # Download the "download page" + try: + download_to_temp('webpage.tmp', source_url) + except Exception: + # "Fail silently as the download_to_temp() function will catch it + return None + + # Scan the file for the regex + tmp_file = r'{}\{}'.format(global_vars['TmpDir'], tmp_file) + with open(tmp_file, 'r') as file: + for line in file: + if re.search(regex, line): + url = line.strip() + url = re.sub(r'.*(a |)href="([^"]+)".*', r'\2', url) + url = re.sub(r".*(a |)href='([^']+)'.*", r'\2', url) + break + + # Cleanup and return + os.remove(tmp_file) + return url + +def extract_from_temp(source, root, dest, *args): + cmd = [ + global_vars['Tools']['SevenZip'], + 'e', r'{}\{}'.format(global_vars['TmpDir'], source), + r'-o{}\{}'.format(root, dest), + '-aoa', '-bso0', '-bse0', + ] + cmd.extend(args) + run_program(cmd) + +def extract_to_bin(source, item, *args): + extract_from_temp(source, global_vars['BinDir'], item, *args) + +def extract_to_cbin(source, item, *args): + dest = r'{}\{}'.format(global_vars['CBinDir'], item) + include_path = r'{}\_include\{}'.format(global_vars['CBinDir'], item) + if os.path.exists(include_path): + shutil.copytree(include_path, dest) + extract_from_temp(source, global_vars['CBinDir'], item, *args) + +def remove_from_kit(item): + bin_path = r'{}\{}'.format(global_vars['BinDir'], item) + cbin_path = r'{}\{}'.format(global_vars['CBinDir'], item) + shutil.rmtree(bin_path, ignore_errors=True) + shutil.rmtree(cbin_path, ignore_errors=True) + +def remove_from_temp(item): + os.remove(r'{}\{}'.format(global_vars['TmpDir'], item)) + +## .bin (NOT compressed) ## +def update_fastcopy(): + # Stop running processes + for process in ['FastCopy.exe', 'FastCopy64.exe']: + kill_process(process) + + # Download + name = 'FastCopy32.zip' + url = 'http://ftp.vector.co.jp/69/28/2323/FastCopy332.zip' + download_to_temp(name, url) + + name = 'FastCopy64.zip' + url = 'http://ftp.vector.co.jp/69/28/2323/FastCopy332_x64.zip' + download_to_temp(name, url) + + # Extract + extract_to_bin('FastCopy64.zip', 'FastCopy', 'FastCopy.exe') + shutil.move( + r'{}\FastCopy\FastCopy.exe'.format(global_vars['BinDir']), + r'{}\FastCopy\FastCopy64.exe'.format(global_vars['BinDir'])) + extract_to_bin('FastCopy32.zip', 'FastCopy', r'-x!setup.exe', r'-x!*.dll') + + # Cleanup + remove_from_temp('FastCopy32.zip') + remove_from_temp('FastCopy64.zip') + +def update_hwinfo(): + # Stop running processes + for exe in ['HWiNFO32.exe', 'HWiNFO64.exe']: + kill_process(exe) + + # Download + name = 'HWiNFO32.zip' + url = 'http://app.oldfoss.com:81/download/HWiNFO/hw32_560.zip' + download_to_temp(name, url) + + name = 'HWiNFO64.zip' + url = 'http://app.oldfoss.com:81/download/HWiNFO/hw64_560.zip' + download_to_temp(name, url) + + # Extract files + extract_to_bin('HWiNFO32.zip', 'HWiNFO') + extract_to_bin('HWiNFO64.zip', 'HWiNFO') + + # Cleanup + remove_from_temp('HWiNFO32.zip') + remove_from_temp('HWiNFO64.zip') + +## Data Recovery ## +def update_testdisk(): + # Stop running processes + for exe in ['fidentify_win.exe', 'photorec_win.exe', + 'qphotorec_win.exe', 'testdisk_win.exe']: + kill_process(exe) + + # Remove existing folders + remove_from_kit('TestDisk') + + # Download + name = 'testdisk_wip.zip' + url = 'https://www.cgsecurity.org/testdisk-7.1-WIP.win.zip' + download_to_temp(name, url) + + # Extract files + extract_to_cbin('testdisk_wip.zip', 'TestDisk') + + # Cleanup + remove_from_temp('testdisk_wip.zip') + +## Data Transfers ## +def update_xyplorer(): + # Stop running processes + kill_process('XYplorerFree.exe') + + # Remove existing folders + remove_from_kit('XYplorerFree') + + # Download + name = 'xyplorer_free.zip' + url = 'https://www.xyplorer.com/download/xyplorer_free_noinstall.zip' + download_to_temp(name, url) + + # Extract files + extract_to_cbin('xyplorer_free.zip', 'XYplorerFree') + + # Cleanup + remove_from_temp('xyplorer_free.zip') + +## Diagnostics ## +def update_aida64(): + # Stop running processes + kill_process('notepadplusplus.exe') + + # Remove existing folders + remove_from_kit('AIDA64') + + # Download + name = 'aida64.zip' + url = 'http://download.aida64.com/aida64engineer592.zip' + download_to_temp(name, url) + + # Extract files + extract_to_cbin('aida64.zip', 'AIDA64') + + # Cleanup + remove_from_temp('aida64.zip') + +def update_autoruns(): + pass + +def update_bleachbit(): + pass + +def update_bluescreenview(): + pass + +def update_du(): + pass + +def update_erunt(): + pass + +def update_hitmanpro(): + #def download_hitmanpro(): + # path = '{CBinDir}/HitmanPro'.format(**global_vars) + # name = 'HitmanPro.exe' + # url = 'http://dl.surfright.nl/HitmanPro.exe' + # download_to_temp(path, name, url) + # + # name = 'HitmanPro64.exe' + # url = 'http://dl.surfright.nl/HitmanPro_x64.exe' + # download_to_temp(path, name, url) + # + pass + +def update_produkey(): + # Stop running processes + for exe in ['ProduKey.exe', 'ProduKey64.exe']: + kill_process(exe) + + # Remove existing folders + remove_from_kit('ProduKey') + + # Download + name = 'produkey.zip' + url = 'http://www.nirsoft.net/utils/produkey.zip' + download_to_temp(name, url) + + name = 'produkey64.zip' + url = 'http://www.nirsoft.net/utils/produkey-x64.zip' + download_to_temp(name, url) + + # Extract files + extract_to_cbin('produkey64.zip', 'ProduKey', 'ProduKey.exe') + shutil.move( + r'{}\ProduKey\ProduKey.exe'.format(global_vars['CBinDir']), + r'{}\ProduKey\ProduKey64.exe'.format(global_vars['CBinDir'])) + extract_to_cbin('produkey.zip', 'ProduKey') + + # Cleanup + remove_from_temp('produkey.zip') + remove_from_temp('produkey64.zip') + +## Drivers ## +def update_intel_rst(): + pass + +def update_intel_ssd_toolbox(): + #def update_intel_ssd_toolbox(): + # path = '{BinDir}/_Drivers'.format(**global_vars) + # name = 'Intel SSD Toolbox.exe' + # _dl_page = 'https://downloadcenter.intel.com/download/26085/Intel-Solid-State-Drive-Toolbox' + # _regex = r'href=./downloads/eula/[0-9]+/Intel-Solid-State-Drive-Toolbox.httpDown=https\%3A\%2F\%2Fdownloadmirror\.intel\.com\%2F[0-9]+\%2Feng\%2FIntel\%20SSD\%20Toolbox\%20-\%20v[0-9\.]+.exe' + # url = resolve_dynamic_url(_dl_page, _regex) + # url = re.sub(r'.*httpDown=(.*)', r'\1', url, re.IGNORECASE) + # url = url.replace('%3A', ':') + # url = url.replace('%2F', '/') + # download_to_temp(path, name, url) + pass + +def update_samsing_magician(): + #def update_samsung_magician(): + # print_warning('Disabled.') + # #~Broken~# path = '{BinDir}/_Drivers'.format(**global_vars) + # #~Broken~# name = 'Samsung Magician.zip' + # #~Broken~# _dl_page = 'http://www.samsung.com/semiconductor/minisite/ssd/download/tools.html' + # #~Broken~# _regex = r'href=./semiconductor/minisite/ssd/downloads/software/Samsung_Magician_Setup_v[0-9]+.zip' + # #~Broken~# url = resolve_dynamic_url(_dl_page, _regex) + # #~Broken~# # Convert relative url to absolute + # #~Broken~# url = 'http://www.samsung.com' + url + # #~Broken~# download_to_temp(path, name, url) + # #~Broken~# # Extract and replace old copy + # #~Broken~# _args = [ + # #~Broken~# 'e', '"{BinDir}/_Drivers/Samsung Magician.zip"'.format(**global_vars), + # #~Broken~# '-aoa', '-bso0', '-bsp0', + # #~Broken~# '-o"{BinDir}/_Drivers"'.format(**global_vars) + # #~Broken~# ] + # #~Broken~# run_program(seven_zip, _args) + # #~Broken~# try: + # #~Broken~# os.remove('{BinDir}/_Drivers/Samsung Magician.zip'.format(**global_vars)) + # #~Broken~# #~PoSH~# Move-Item "$bin\_Drivers\Samsung*exe" "$bin\_Drivers\Samsung Magician.exe" $path 2>&1 | Out-Null + # #~Broken~# except Exception: + # #~Broken~# pass + # pass + pass + +def update_sdi(): + pass + +## Installers ## +def update_adobe_reader(): + pass + +def update_ninite(): + # Ninite - Bundles + # print_info('Installers') + # print_success(' '*4 + 'Ninite Bundles') + # _path = r'{BaseDir}\Installers\Extras\Bundles'.format(**global_vars) + # try_and_print(message='Runtimes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Runtimes.exe', source_url='https://ninite.com/.net4.7-air-java8-silverlight/ninite.exe') + # try_and_print(message='Legacy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Legacy.exe', source_url='https://ninite.com/.net4.7-7zip-air-chrome-firefox-java8-silverlight-vlc/ninite.exe') + # try_and_print(message='Modern.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Modern.exe', source_url='https://ninite.com/.net4.7-7zip-air-chrome-classicstart-firefox-java8-silverlight-vlc/ninite.exe') + + # # Ninite - Audio-Video + # print_success(' '*4 + 'Audio-Video') + # _path = r'{BaseDir}\Installers\Extras\Audio-Video'.format(**global_vars) + # try_and_print(message='AIMP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='AIMP.exe', source_url='https://ninite.com/aimp/ninite.exe') + # try_and_print(message='Audacity.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Audacity.exe', source_url='https://ninite.com/audacity/ninite.exe') + # try_and_print(message='CCCP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CCCP.exe', source_url='https://ninite.com/cccp/ninite.exe') + # try_and_print(message='Foobar2000.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Foobar2000.exe', source_url='https://ninite.com/foobar/ninite.exe') + # try_and_print(message='GOM.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='GOM.exe', source_url='https://ninite.com/gom/ninite.exe') + # try_and_print(message='iTunes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='HandBrake.exe', source_url='https://ninite.com/handbrake/ninite.exe') + # try_and_print(message='iTunes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='iTunes.exe', source_url='https://ninite.com/itunes/ninite.exe') + # try_and_print(message='K-Lite Codecs.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='K-Lite Codecs.exe', source_url='https://ninite.com/klitecodecs/ninite.exe') + # try_and_print(message='MediaMonkey.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='MediaMonkey.exe', source_url='https://ninite.com/mediamonkey/ninite.exe') + # try_and_print(message='MusicBee.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='MusicBee.exe', source_url='https://ninite.com/musicbee/ninite.exe') + # try_and_print(message='Spotify.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Spotify.exe', source_url='https://ninite.com/spotify/ninite.exe') + # try_and_print(message='VLC.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='VLC.exe', source_url='https://ninite.com/vlc/ninite.exe') + # try_and_print(message='Winamp.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Winamp.exe', source_url='https://ninite.com/winamp/ninite.exe') + + # # Ninite - Cloud Storage + # print_success(' '*4 + 'Cloud Storage') + # _path = r'{BaseDir}\Installers\Extras\Cloud Storage'.format(**global_vars) + # try_and_print(message='Dropbox.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Dropbox.exe', source_url='https://ninite.com/dropbox/ninite.exe') + # try_and_print(message='Google Backup & Sync.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Backup & Sync.exe', source_url='https://ninite.com/googlebackupandsync/ninite.exe') + # try_and_print(message='Mozy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Mozy.exe', source_url='https://ninite.com/mozy/ninite.exe') + # try_and_print(message='OneDrive.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='OneDrive.exe', source_url='https://ninite.com/onedrive/ninite.exe') + # try_and_print(message='SugarSync.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SugarSync.exe', source_url='https://ninite.com/sugarsync/ninite.exe') + + # # Ninite - Communication + # print_success(' '*4 + 'Communication') + # _path = r'{BaseDir}\Installers\Extras\Communication'.format(**global_vars) + # try_and_print(message='Pidgin.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Pidgin.exe', source_url='https://ninite.com/pidgin/ninite.exe') + # try_and_print(message='Skype.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Skype.exe', source_url='https://ninite.com/skype/ninite.exe') + # try_and_print(message='Trillian.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Trillian.exe', source_url='https://ninite.com/trillian/ninite.exe') + + # # Ninite - Compression + # print_success(' '*4 + 'Compression') + # _path = r'{BaseDir}\Installers\Extras\Compression'.format(**global_vars) + # try_and_print(message='7-Zip.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='7-Zip.exe', source_url='https://ninite.com/7zip/ninite.exe') + # try_and_print(message='PeaZip.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PeaZip.exe', source_url='https://ninite.com/peazip/ninite.exe') + # try_and_print(message='WinRAR.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinRAR.exe', source_url='https://ninite.com/winrar/ninite.exe') + + # # Ninite - Developer + # print_success(' '*4 + 'Developer') + # _path = r'{BaseDir}\Installers\Extras\Developer'.format(**global_vars) + # try_and_print(message='Eclipse.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Eclipse.exe', source_url='https://ninite.com/eclipse/ninite.exe') + # try_and_print(message='FileZilla.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='FileZilla.exe', source_url='https://ninite.com/filezilla/ninite.exe') + # try_and_print(message='JDK 8.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='JDK 8.exe', source_url='https://ninite.com/jdk8/ninite.exe') + # try_and_print(message='JDK 8 (x64).exe', function=download_file, other_results=other_results, out_dir=_path, out_name='JDK 8 (x64).exe', source_url='https://ninite.com/jdkx8/ninite.exe') + # try_and_print(message='Notepad++.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Notepad++.exe', source_url='https://ninite.com/notepadplusplus/ninite.exe') + # try_and_print(message='PuTTY.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PuTTY.exe', source_url='https://ninite.com/putty/ninite.exe') + # try_and_print(message='Python 2.7.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Python 2.exe', source_url='https://ninite.com/python/ninite.exe') + # try_and_print(message='Visual Studio Code.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Visual Studio Code.exe', source_url='https://ninite.com/vscode/ninite.exe') + # try_and_print(message='WinMerge.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinMerge.exe', source_url='https://ninite.com/winmerge/ninite.exe') + # try_and_print(message='WinSCP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinSCP.exe', source_url='https://ninite.com/winscp/ninite.exe') + + # # Ninite - File Sharing + # print_success(' '*4 + 'File Sharing') + # _path = r'{BaseDir}\Installers\Extras\File Sharing'.format(**global_vars) + # try_and_print(message='qBittorrent.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='qBittorrent.exe', source_url='https://ninite.com/qbittorrent/ninite.exe') + + # # Ninite - Image-Photo + # print_success(' '*4 + 'Image-Photo') + # _path = r'{BaseDir}\Installers\Extras\Image-Photo'.format(**global_vars) + # try_and_print(message='Blender.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Blender.exe', source_url='https://ninite.com/blender/ninite.exe') + # try_and_print(message='FastStone.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='FastStone.exe', source_url='https://ninite.com/faststone/ninite.exe') + # try_and_print(message='GIMP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='GIMP.exe', source_url='https://ninite.com/gimp/ninite.exe') + # try_and_print(message='Greenshot.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Greenshot.exe', source_url='https://ninite.com/greenshot/ninite.exe') + # try_and_print(message='Inkscape.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Inkscape.exe', source_url='https://ninite.com/inkscape/ninite.exe') + # try_and_print(message='IrfanView.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='IrfanView.exe', source_url='https://ninite.com/irfanview/ninite.exe') + # try_and_print(message='Krita.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Krita.exe', source_url='https://ninite.com/krita/ninite.exe') + # try_and_print(message='Paint.NET.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Paint.NET.exe', source_url='https://ninite.com/paint.net/ninite.exe') + # try_and_print(message='ShareX.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='ShareX.exe', source_url='https://ninite.com/sharex/ninite.exe') + # try_and_print(message='XnView.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='XnView.exe', source_url='https://ninite.com/xnview/ninite.exe') + + # # Ninite - Misc + # print_success(' '*4 + 'Misc') + # _path = r'{BaseDir}\Installers\Extras\Misc'.format(**global_vars) + # try_and_print(message='Evernote.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Evernote.exe', source_url='https://ninite.com/evernote/ninite.exe') + # try_and_print(message='Everything.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Everything.exe', source_url='https://ninite.com/everything/ninite.exe') + # try_and_print(message='KeePass 2.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='KeePass 2.exe', source_url='https://ninite.com/keepass2/ninite.exe') + # try_and_print(message='Google Earth.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Earth.exe', source_url='https://ninite.com/googleearth/ninite.exe') + # try_and_print(message='NV Access.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='NV Access.exe', source_url='https://ninite.com/nvda/ninite.exe') + # try_and_print(message='Steam.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Steam.exe', source_url='https://ninite.com/steam/ninite.exe') + + # # Ninite - Office + # print_success(' '*4 + 'Office') + # _path = r'{BaseDir}\Installers\Extras\Office'.format(**global_vars) + # try_and_print(message='CutePDF.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CutePDF.exe', source_url='https://ninite.com/cutepdf/ninite.exe') + # try_and_print(message='Foxit Reader.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Foxit Reader.exe', source_url='https://ninite.com/foxit/ninite.exe') + # try_and_print(message='LibreOffice.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='LibreOffice.exe', source_url='https://ninite.com/libreoffice/ninite.exe') + # try_and_print(message='OpenOffice.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='OpenOffice.exe', source_url='https://ninite.com/openoffice/ninite.exe') + # try_and_print(message='PDFCreator.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PDFCreator.exe', source_url='https://ninite.com/pdfcreator/ninite.exe') + # try_and_print(message='SumatraPDF.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SumatraPDF.exe', source_url='https://ninite.com/sumatrapdf/ninite.exe') + # try_and_print(message='Thunderbird.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Thunderbird.exe', source_url='https://ninite.com/thunderbird/ninite.exe') + + # # Ninite - Runtimes + # print_success(' '*4 + 'Runtimes') + # _path = r'{BaseDir}\Installers\Extras\Runtimes'.format(**global_vars) + # try_and_print(message='Adobe Air.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Adobe Air.exe', source_url='https://ninite.com/air/ninite.exe') + # try_and_print(message='dotNET.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='dotNET.exe', source_url='https://ninite.com/.net4.7/ninite.exe') + # try_and_print(message='Java 8.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Java 8.exe', source_url='https://ninite.com/java8/ninite.exe') + # try_and_print(message='Shockwave.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Shockwave.exe', source_url='https://ninite.com/shockwave/ninite.exe') + # try_and_print(message='Silverlight.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Silverlight.exe', source_url='https://ninite.com/silverlight/ninite.exe') + + # # Ninite - Security + # print_success(' '*4 + 'Security') + # _path = r'{BaseDir}\Installers\Extras\Security'.format(**global_vars) + # try_and_print(message='Avast.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Avast.exe', source_url='https://ninite.com/avast/ninite.exe') + # try_and_print(message='AVG.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='AVG.exe', source_url='https://ninite.com/avg/ninite.exe') + # try_and_print(message='Avira.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Avira.exe', source_url='https://ninite.com/avira/ninite.exe') + # try_and_print(message='Microsoft Security Essentials.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Microsoft Security Essentials.exe', source_url='https://ninite.com/essentials/ninite.exe') + # try_and_print(message='Malwarebytes Anti-Malware.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Malwarebytes Anti-Malware.exe', source_url='https://ninite.com/malwarebytes/ninite.exe') + # try_and_print(message='Spybot 2.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Spybot 2.exe', source_url='https://ninite.com/spybot2/ninite.exe') + # try_and_print(message='SUPERAntiSpyware.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SUPERAntiSpyware.exe', source_url='https://ninite.com/super/ninite.exe') + + # # Ninite - Utilities + # print_success(' '*4 + 'Utilities') + # _path = r'{BaseDir}\Installers\Extras\Utilities'.format(**global_vars) + # try_and_print(message='CDBurnerXP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CDBurnerXP.exe', source_url='https://ninite.com/cdburnerxp/ninite.exe') + # try_and_print(message='Classic Start.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Classic Start.exe', source_url='https://ninite.com/classicstart/ninite.exe') + # try_and_print(message='Glary Utilities.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Glary Utilities.exe', source_url='https://ninite.com/glary/ninite.exe') + # try_and_print(message='ImgBurn.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='ImgBurn.exe', source_url='https://ninite.com/imgburn/ninite.exe') + # try_and_print(message='InfraRecorder.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='InfraRecorder.exe', source_url='https://ninite.com/infrarecorder/ninite.exe') + # try_and_print(message='Launchy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Launchy.exe', source_url='https://ninite.com/launchy/ninite.exe') + # try_and_print(message='RealVNC.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='RealVNC.exe', source_url='https://ninite.com/realvnc/ninite.exe') + # try_and_print(message='Revo Uninstaller.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Revo Uninstaller.exe', source_url='https://ninite.com/revo/ninite.exe') + # try_and_print(message='TeamViewer 12.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='TeamViewer 12.exe', source_url='https://ninite.com/teamviewer12/ninite.exe') + # try_and_print(message='TeraCopy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='TeraCopy.exe', source_url='https://ninite.com/teracopy/ninite.exe') + # try_and_print(message='WinDirStat.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinDirStat.exe', source_url='https://ninite.com/windirstat/ninite.exe') + + # # Ninite - Web Browsers + # print_success(' '*4 + 'Web Browsers') + # _path = r'{BaseDir}\Installers\Extras\Web Browsers'.format(**global_vars) + # try_and_print(message='Google Chrome.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Chrome.exe', source_url='https://ninite.com/chrome/ninite.exe') + # try_and_print(message='Mozilla Firefox.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Mozilla Firefox.exe', source_url='https://ninite.com/firefox/ninite.exe') + # try_and_print(message='Opera Chromium.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Opera Chromium.exe', source_url='https://ninite.com/operaChromium/ninite.exe') + pass + +## Misc ## +def update_everything(): + pass + +def update_notepadplusplus(): + # Stop running processes + kill_process('notepadplusplus.exe') + + # Remove existing folders + remove_from_kit('NotepadPlusPlus') + + # Download + name = 'npp.7z' + url = 'https://notepad-plus-plus.org/repository/7.x/7.5.1/npp.7.5.1.bin.minimalist.7z' + download_to_temp(name, url) + + # Extract files + extract_to_cbin('npp.7z', 'NotepadPlusPlus') + + # Cleanup + remove_from_temp('npp.7z') + +def update_treesizefree(): + pass + +def update_xmplay(): + pass + +## Repairs ## +def update_adwcleaner(): + #def update_adwcleaner(): + # path = global_vars['BinDir'] + # name = 'AdwCleaner.exe' + # _dl_page = 'http://www.bleepingcomputer.com/download/adwcleaner/dl/125/' + # _regex = r'href=.*http(s|)://download\.bleepingcomputer\.com/dl/[a-zA-Z0-9]+/[a-zA-Z0-9]+/windows/security/security-utilities/a/adwcleaner/AdwCleaner\.exe' + # url = resolve_dynamic_url(_dl_page, _regex) + # download_to_temp(path, name, url) + # + pass + +def update_kvrt(): + #def update_kvrt(): + # path = global_vars['BinDir'] + # name = 'KVRT.exe' + # url = 'http://devbuilds.kaspersky-labs.com/devbuilds/KVRT/latest/full/KVRT.exe' + # download_to_temp(path, name, url) + pass + +def update_rkill(): + #def update_rkill(): + # path = '{BinDir}/RKill'.format(**global_vars) + # name = 'RKill.exe' + # _dl_page = 'http://www.bleepingcomputer.com/download/rkill/dl/10/' + # _regex = r'href=.*http(s|)://download\.bleepingcomputer\.com/dl/[a-zA-Z0-9]+/[a-zA-Z0-9]+/windows/security/security-utilities/r/rkill/rkill\.exe' + # url = resolve_dynamic_url(_dl_page, _regex) + # download_to_temp(path, name, url) + pass + +def update_tdsskiller(): + #def update_tdsskiller(): + # path = global_vars['BinDir'] + # name = 'TDSSKiller.exe' + # url = 'http://media.kaspersky.com/utilities/VirusUtilities/EN/tdsskiller.exe' + # download_to_temp(path, name, url) + pass + +## Uninstallers ## +def update_iobit_uninstaller(): + pass + +if __name__ == '__main__': + print("This file is not meant to be called directly.") diff --git a/.bin/Scripts/update_kit.py b/.bin/Scripts/update_kit.py index 96807cfd..ed9d9e0a 100644 --- a/.bin/Scripts/update_kit.py +++ b/.bin/Scripts/update_kit.py @@ -6,188 +6,72 @@ import sys # Init os.chdir(os.path.dirname(os.path.realpath(__file__))) sys.path.append(os.getcwd()) -from functions.build import * +from functions.update import * init_global_vars() os.system('title {}: Kit Update Tool'.format(KIT_NAME_FULL)) if __name__ == '__main__': - print('Loaded update_kit.py!') - pause('Hmm...') - exit_script() try: other_results = { 'Error': { - 'CalledProcessError': 'Unknown Error', + 'CalledProcessError': 'Unknown Error', }} stay_awake() + os.system('cls') + print_info('Updating Kit Tools') + + ## Download ## + # .bin (Not compressed) + print_info('\n.bin') + try_and_print(message='FastCopy...', function=update_fastcopy, other_results=other_results) + try_and_print(message='HWiNFO...', function=update_hwinfo, other_results=other_results) + + # Data Recovery + print_info('\nData Recovery') + try_and_print(message='TestDisk / PhotoRec...', function=update_testdisk, other_results=other_results) + + # Data Transfers + print_info('\nData Transfers') + try_and_print(message='XYplorer...', function=update_xyplorer, other_results=other_results) # Diagnostics - # print_info('Diagnostics') - # try_and_print(message='HitmanPro...', function=update_hitmanpro, other_results=other_results) + print_info('\nDiagnostics') + try_and_print(message='AIDA64...', function=update_aida64, other_results=other_results) + try_and_print(message='Autoruns...', function=update_autoruns, other_results=other_results) + try_and_print(message='BleachBit...', function=update_bleachbit, other_results=other_results) + try_and_print(message='BlueScreenView...', function=update_bluescreenview, other_results=other_results) + try_and_print(message='ERUNT...', function=update_erunt, other_results=other_results) + try_and_print(message='HitmanPro...', function=update_hitmanpro, other_results=other_results) + try_and_print(message='ProduKey...', function=update_produkey, other_results=other_results) - # VR/OSR - # print_info('VR/OSR') - # try_and_print(message='AdwCleaner...', function=update_adwcleaner, other_results=other_results) - # try_and_print(message='ESET...', function=update_eset, other_results=other_results) - # try_and_print(message='JRT...', function=update_jrt, other_results=other_results) - # try_and_print(message='KVRT...', function=update_kvrt, other_results=other_results) - # try_and_print(message='RKill...', function=update_rkill, other_results=other_results) - # try_and_print(message='TDSSKiller...', function=update_tdsskiller, other_results=other_results) + # Drivers + print_info('\nDrivers') + try_and_print(message='Intel RST...', function=update_intel_rst, other_results=other_results) + try_and_print(message='Intel SSD Toolbox...', function=update_intel_ssd_toolbox, other_results=other_results) + try_and_print(message='Samsing Magician...', function=update_samsing_magician, other_results=other_results) + try_and_print(message='Snappy Driver Installer...', function=update_sdi, other_results=other_results) - # Driver Tools - print_info('Driver Tools') - # try_and_print(message='Intel Driver Update Utility...', function=update_intel_driver_utility, other_results=other_results) - # try_and_print(message='Intel SSD Toolbox...', function=update_intel_ssd_toolbox, other_results=other_results) - # try_and_print(message='Samsung Magician...', function=update_samsung_magician, other_results=other_results) - try_and_print(message='Samsung Magician...', function=update_samsung_magician, silent_function=False) - - # Ninite - Bundles - print_info('Installers') - print_success(' '*4 + 'Ninite Bundles') - _path = r'{BaseDir}\Installers\Extras\Bundles'.format(**global_vars) - try_and_print(message='Runtimes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Runtimes.exe', source_url='https://ninite.com/.net4.7-air-java8-silverlight/ninite.exe') - try_and_print(message='Legacy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Legacy.exe', source_url='https://ninite.com/.net4.7-7zip-air-chrome-firefox-java8-silverlight-vlc/ninite.exe') - try_and_print(message='Modern.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Modern.exe', source_url='https://ninite.com/.net4.7-7zip-air-chrome-classicstart-firefox-java8-silverlight-vlc/ninite.exe') - - # Ninite - Audio-Video - print_success(' '*4 + 'Audio-Video') - _path = r'{BaseDir}\Installers\Extras\Audio-Video'.format(**global_vars) - try_and_print(message='AIMP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='AIMP.exe', source_url='https://ninite.com/aimp/ninite.exe') - try_and_print(message='Audacity.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Audacity.exe', source_url='https://ninite.com/audacity/ninite.exe') - try_and_print(message='CCCP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CCCP.exe', source_url='https://ninite.com/cccp/ninite.exe') - try_and_print(message='Foobar2000.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Foobar2000.exe', source_url='https://ninite.com/foobar/ninite.exe') - try_and_print(message='GOM.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='GOM.exe', source_url='https://ninite.com/gom/ninite.exe') - try_and_print(message='iTunes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='HandBrake.exe', source_url='https://ninite.com/handbrake/ninite.exe') - try_and_print(message='iTunes.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='iTunes.exe', source_url='https://ninite.com/itunes/ninite.exe') - try_and_print(message='K-Lite Codecs.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='K-Lite Codecs.exe', source_url='https://ninite.com/klitecodecs/ninite.exe') - try_and_print(message='MediaMonkey.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='MediaMonkey.exe', source_url='https://ninite.com/mediamonkey/ninite.exe') - try_and_print(message='MusicBee.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='MusicBee.exe', source_url='https://ninite.com/musicbee/ninite.exe') - try_and_print(message='Spotify.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Spotify.exe', source_url='https://ninite.com/spotify/ninite.exe') - try_and_print(message='VLC.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='VLC.exe', source_url='https://ninite.com/vlc/ninite.exe') - try_and_print(message='Winamp.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Winamp.exe', source_url='https://ninite.com/winamp/ninite.exe') - - # Ninite - Cloud Storage - print_success(' '*4 + 'Cloud Storage') - _path = r'{BaseDir}\Installers\Extras\Cloud Storage'.format(**global_vars) - try_and_print(message='Dropbox.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Dropbox.exe', source_url='https://ninite.com/dropbox/ninite.exe') - try_and_print(message='Google Backup & Sync.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Backup & Sync.exe', source_url='https://ninite.com/googlebackupandsync/ninite.exe') - try_and_print(message='Mozy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Mozy.exe', source_url='https://ninite.com/mozy/ninite.exe') - try_and_print(message='OneDrive.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='OneDrive.exe', source_url='https://ninite.com/onedrive/ninite.exe') - try_and_print(message='SugarSync.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SugarSync.exe', source_url='https://ninite.com/sugarsync/ninite.exe') - - # Ninite - Communication - print_success(' '*4 + 'Communication') - _path = r'{BaseDir}\Installers\Extras\Communication'.format(**global_vars) - try_and_print(message='Pidgin.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Pidgin.exe', source_url='https://ninite.com/pidgin/ninite.exe') - try_and_print(message='Skype.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Skype.exe', source_url='https://ninite.com/skype/ninite.exe') - try_and_print(message='Trillian.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Trillian.exe', source_url='https://ninite.com/trillian/ninite.exe') - - # Ninite - Compression - print_success(' '*4 + 'Compression') - _path = r'{BaseDir}\Installers\Extras\Compression'.format(**global_vars) - try_and_print(message='7-Zip.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='7-Zip.exe', source_url='https://ninite.com/7zip/ninite.exe') - try_and_print(message='PeaZip.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PeaZip.exe', source_url='https://ninite.com/peazip/ninite.exe') - try_and_print(message='WinRAR.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinRAR.exe', source_url='https://ninite.com/winrar/ninite.exe') - - # Ninite - Developer - print_success(' '*4 + 'Developer') - _path = r'{BaseDir}\Installers\Extras\Developer'.format(**global_vars) - try_and_print(message='Eclipse.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Eclipse.exe', source_url='https://ninite.com/eclipse/ninite.exe') - try_and_print(message='FileZilla.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='FileZilla.exe', source_url='https://ninite.com/filezilla/ninite.exe') - try_and_print(message='JDK 8.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='JDK 8.exe', source_url='https://ninite.com/jdk8/ninite.exe') - try_and_print(message='JDK 8 (x64).exe', function=download_file, other_results=other_results, out_dir=_path, out_name='JDK 8 (x64).exe', source_url='https://ninite.com/jdkx8/ninite.exe') - try_and_print(message='Notepad++.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Notepad++.exe', source_url='https://ninite.com/notepadplusplus/ninite.exe') - try_and_print(message='PuTTY.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PuTTY.exe', source_url='https://ninite.com/putty/ninite.exe') - try_and_print(message='Python 2.7.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Python 2.exe', source_url='https://ninite.com/python/ninite.exe') - try_and_print(message='Visual Studio Code.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Visual Studio Code.exe', source_url='https://ninite.com/vscode/ninite.exe') - try_and_print(message='WinMerge.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinMerge.exe', source_url='https://ninite.com/winmerge/ninite.exe') - try_and_print(message='WinSCP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinSCP.exe', source_url='https://ninite.com/winscp/ninite.exe') - - # Ninite - File Sharing - print_success(' '*4 + 'File Sharing') - _path = r'{BaseDir}\Installers\Extras\File Sharing'.format(**global_vars) - try_and_print(message='qBittorrent.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='qBittorrent.exe', source_url='https://ninite.com/qbittorrent/ninite.exe') - - # Ninite - Image-Photo - print_success(' '*4 + 'Image-Photo') - _path = r'{BaseDir}\Installers\Extras\Image-Photo'.format(**global_vars) - try_and_print(message='Blender.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Blender.exe', source_url='https://ninite.com/blender/ninite.exe') - try_and_print(message='FastStone.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='FastStone.exe', source_url='https://ninite.com/faststone/ninite.exe') - try_and_print(message='GIMP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='GIMP.exe', source_url='https://ninite.com/gimp/ninite.exe') - try_and_print(message='Greenshot.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Greenshot.exe', source_url='https://ninite.com/greenshot/ninite.exe') - try_and_print(message='Inkscape.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Inkscape.exe', source_url='https://ninite.com/inkscape/ninite.exe') - try_and_print(message='IrfanView.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='IrfanView.exe', source_url='https://ninite.com/irfanview/ninite.exe') - try_and_print(message='Krita.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Krita.exe', source_url='https://ninite.com/krita/ninite.exe') - try_and_print(message='Paint.NET.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Paint.NET.exe', source_url='https://ninite.com/paint.net/ninite.exe') - try_and_print(message='ShareX.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='ShareX.exe', source_url='https://ninite.com/sharex/ninite.exe') - try_and_print(message='XnView.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='XnView.exe', source_url='https://ninite.com/xnview/ninite.exe') - - # Ninite - Misc - print_success(' '*4 + 'Misc') - _path = r'{BaseDir}\Installers\Extras\Misc'.format(**global_vars) - try_and_print(message='Evernote.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Evernote.exe', source_url='https://ninite.com/evernote/ninite.exe') - try_and_print(message='Everything.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Everything.exe', source_url='https://ninite.com/everything/ninite.exe') - try_and_print(message='KeePass 2.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='KeePass 2.exe', source_url='https://ninite.com/keepass2/ninite.exe') - try_and_print(message='Google Earth.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Earth.exe', source_url='https://ninite.com/googleearth/ninite.exe') - try_and_print(message='NV Access.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='NV Access.exe', source_url='https://ninite.com/nvda/ninite.exe') - try_and_print(message='Steam.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Steam.exe', source_url='https://ninite.com/steam/ninite.exe') - - # Ninite - Office - print_success(' '*4 + 'Office') - _path = r'{BaseDir}\Installers\Extras\Office'.format(**global_vars) - try_and_print(message='CutePDF.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CutePDF.exe', source_url='https://ninite.com/cutepdf/ninite.exe') - try_and_print(message='Foxit Reader.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Foxit Reader.exe', source_url='https://ninite.com/foxit/ninite.exe') - try_and_print(message='LibreOffice.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='LibreOffice.exe', source_url='https://ninite.com/libreoffice/ninite.exe') - try_and_print(message='OpenOffice.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='OpenOffice.exe', source_url='https://ninite.com/openoffice/ninite.exe') - try_and_print(message='PDFCreator.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='PDFCreator.exe', source_url='https://ninite.com/pdfcreator/ninite.exe') - try_and_print(message='SumatraPDF.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SumatraPDF.exe', source_url='https://ninite.com/sumatrapdf/ninite.exe') - try_and_print(message='Thunderbird.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Thunderbird.exe', source_url='https://ninite.com/thunderbird/ninite.exe') - - # Ninite - Runtimes - print_success(' '*4 + 'Runtimes') - _path = r'{BaseDir}\Installers\Extras\Runtimes'.format(**global_vars) - try_and_print(message='Adobe Air.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Adobe Air.exe', source_url='https://ninite.com/air/ninite.exe') - try_and_print(message='dotNET.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='dotNET.exe', source_url='https://ninite.com/.net4.7/ninite.exe') - try_and_print(message='Java 8.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Java 8.exe', source_url='https://ninite.com/java8/ninite.exe') - try_and_print(message='Shockwave.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Shockwave.exe', source_url='https://ninite.com/shockwave/ninite.exe') - try_and_print(message='Silverlight.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Silverlight.exe', source_url='https://ninite.com/silverlight/ninite.exe') - - # Ninite - Security - print_success(' '*4 + 'Security') - _path = r'{BaseDir}\Installers\Extras\Security'.format(**global_vars) - try_and_print(message='Avast.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Avast.exe', source_url='https://ninite.com/avast/ninite.exe') - try_and_print(message='AVG.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='AVG.exe', source_url='https://ninite.com/avg/ninite.exe') - try_and_print(message='Avira.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Avira.exe', source_url='https://ninite.com/avira/ninite.exe') - try_and_print(message='Microsoft Security Essentials.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Microsoft Security Essentials.exe', source_url='https://ninite.com/essentials/ninite.exe') - try_and_print(message='Malwarebytes Anti-Malware.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Malwarebytes Anti-Malware.exe', source_url='https://ninite.com/malwarebytes/ninite.exe') - try_and_print(message='Spybot 2.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Spybot 2.exe', source_url='https://ninite.com/spybot2/ninite.exe') - try_and_print(message='SUPERAntiSpyware.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='SUPERAntiSpyware.exe', source_url='https://ninite.com/super/ninite.exe') - - # Ninite - Utilities - print_success(' '*4 + 'Utilities') - _path = r'{BaseDir}\Installers\Extras\Utilities'.format(**global_vars) - try_and_print(message='CDBurnerXP.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='CDBurnerXP.exe', source_url='https://ninite.com/cdburnerxp/ninite.exe') - try_and_print(message='Classic Start.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Classic Start.exe', source_url='https://ninite.com/classicstart/ninite.exe') - try_and_print(message='Glary Utilities.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Glary Utilities.exe', source_url='https://ninite.com/glary/ninite.exe') - try_and_print(message='ImgBurn.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='ImgBurn.exe', source_url='https://ninite.com/imgburn/ninite.exe') - try_and_print(message='InfraRecorder.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='InfraRecorder.exe', source_url='https://ninite.com/infrarecorder/ninite.exe') - try_and_print(message='Launchy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Launchy.exe', source_url='https://ninite.com/launchy/ninite.exe') - try_and_print(message='RealVNC.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='RealVNC.exe', source_url='https://ninite.com/realvnc/ninite.exe') - try_and_print(message='Revo Uninstaller.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Revo Uninstaller.exe', source_url='https://ninite.com/revo/ninite.exe') - try_and_print(message='TeamViewer 12.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='TeamViewer 12.exe', source_url='https://ninite.com/teamviewer12/ninite.exe') - try_and_print(message='TeraCopy.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='TeraCopy.exe', source_url='https://ninite.com/teracopy/ninite.exe') - try_and_print(message='WinDirStat.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='WinDirStat.exe', source_url='https://ninite.com/windirstat/ninite.exe') - - # Ninite - Web Browsers - print_success(' '*4 + 'Web Browsers') - _path = r'{BaseDir}\Installers\Extras\Web Browsers'.format(**global_vars) - try_and_print(message='Google Chrome.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Google Chrome.exe', source_url='https://ninite.com/chrome/ninite.exe') - try_and_print(message='Mozilla Firefox.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Mozilla Firefox.exe', source_url='https://ninite.com/firefox/ninite.exe') - try_and_print(message='Opera Chromium.exe', function=download_file, other_results=other_results, out_dir=_path, out_name='Opera Chromium.exe', source_url='https://ninite.com/operaChromium/ninite.exe') + # Installers + print_info('\nInstallers') + try_and_print(message='Adobe Reader DC...', function=update_adobe_reader_dc, other_results=other_results) + try_and_print(message='Ninite Installers...', function=update_ninite, other_results=other_results) # Misc - # print_info('Misc') - # try_and_print(message='SysinternalsSuite...', function=update_sysinternalssuite, other_results=other_results) + print_info('\nMisc') + try_and_print(message='Everything...', function=update_everything, other_results=other_results) + try_and_print(message='TreeSizeFree...', function=update_treesizefree, other_results=other_results) + try_and_print(message='XMPlay...', function=update_xmplay, other_results=other_results) + + # Repairs + print_info('\nRepairs') + try_and_print(message='AdwCleaner...', function=update_adwcleaner, other_results=other_results) + try_and_print(message='KVRT...', function=update_kvrt, other_results=other_results) + try_and_print(message='RKill...', function=update_rkill, other_results=other_results) + try_and_print(message='TDSSKiller...', function=update_tdsskiller, other_results=other_results) + + # Uninstallers + print_info('\nUninstallers') + try_and_print(message='IObit Uninstaller...', function=update_iobit_uninstaller, other_results=other_results) # Done print_standard('\nDone.') diff --git a/.bin/AIDA64/full.rpf b/.cbin/_include/AIDA64/full.rpf similarity index 100% rename from .bin/AIDA64/full.rpf rename to .cbin/_include/AIDA64/full.rpf diff --git a/.bin/AIDA64/installed_programs.rpf b/.cbin/_include/AIDA64/installed_programs.rpf similarity index 100% rename from .bin/AIDA64/installed_programs.rpf rename to .cbin/_include/AIDA64/installed_programs.rpf diff --git a/.bin/AIDA64/licenses.rpf b/.cbin/_include/AIDA64/licenses.rpf similarity index 100% rename from .bin/AIDA64/licenses.rpf rename to .cbin/_include/AIDA64/licenses.rpf diff --git a/.bin/NotepadPlusPlus/config.xml b/.cbin/_include/NotepadPlusPlus/config.xml similarity index 100% rename from .bin/NotepadPlusPlus/config.xml rename to .cbin/_include/NotepadPlusPlus/config.xml diff --git a/.bin/XYplorerFree/Data/XYplorer.ini b/.cbin/_include/XYplorerFree/Data/XYplorer.ini similarity index 100% rename from .bin/XYplorerFree/Data/XYplorer.ini rename to .cbin/_include/XYplorerFree/Data/XYplorer.ini diff --git a/.gitignore b/.gitignore index bf961f6b..abb51302 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ .bin/ConEmu/ .bin/Erunt/ .bin/Everything/ +.bin/FastCopy/ .bin/HWiNFO/HWiNFO*.ini .bin/NotepadPlusPlus/ .bin/ProcessKiller/ @@ -14,4 +15,7 @@ .bin/Python/ .bin/Tmp/ .bin/XMPlay/ -.cbin/ +.cbin/AIDA64/ +.cbin/ProduKey/ +.cbin/TestDisk/ +.cbin/XYplorerFree/ diff --git a/UPDATEME.cmd b/UPDATEME.cmd new file mode 100644 index 00000000..3897f26b --- /dev/null +++ b/UPDATEME.cmd @@ -0,0 +1,130 @@ +:: Wizard Kit: Launcher Script :: +:: +:: This script works by setting env variables and then calling Launch.cmd +:: which inherits the variables. This bypasses batch file argument parsing +:: which is awful. +@echo off + +:Init +setlocal EnableDelayedExpansion +title Wizard Kit: Launcher +call :CheckFlags %* +call :FindBin +call :SetTitle Launcher + +:Optional +:: This section is for any work that needs done before launching L_ITEM +rem EXTRA_CODE_GOES_HERE + +:DefineLaunch +:: Set L_TYPE to one of these options: +:: Console, Folder, Office, Program, PSScript, or PyScript +:: Set L_PATH to the path to the program folder +:: NOTE: Launch.cmd will test for L_PATH in the following order: +:: 1: %cbin%\L_PATH.7z (which will be extracted to %bin%\L_PATH) +:: 2: %bin%\L_PATH +:: 3. %L_PATH% (i.e. treat L_PATH as an absolute path) +:: Set L_ITEM to one of the following: +:: 1. The filename of the item to launch +:: 2. The Office product to install +:: 3. '.' to open extracted folder +:: Set L_ARGS to include any necessary arguments (if any) +:: Set L_7ZIP to include any necessary arguments for extraction +:: Set L_CHCK to True to have Launch.cmd to stay open if an error is encountered +:: Set L_ELEV to True to launch with elevated permissions +:: Set L_NCMD to True to stay in the native console window +:: Set L_WAIT to True to have the script wait until L_ITEM has comlpeted +set L_TYPE=PyScript +set L_PATH=Scripts +set L_ITEM=update_kit.py +set L_ARGS= +set L_7ZIP= +set L_CHCK=True +set L_ELEV= +set L_NCMD= +set L_WAIT= + +::::::::::::::::::::::::::::::::::::::::::: +:: Do not edit anything below this line! :: +::::::::::::::::::::::::::::::::::::::::::: + +:LaunchPrep +rem Verifies the environment before launching item +if not defined bin (goto ErrorNoBin) +if not exist "%bin%\Scripts\Launch.cmd" (goto ErrorLaunchCMDMissing) + +:Launch +rem Calls the Launch.cmd script using the variables defined above +call "%bin%\Scripts\Launch.cmd" || goto ErrorLaunchCMD +goto Exit + +:: Functions :: +:CheckFlags +rem Loops through all arguments to check for accepted flags +set DEBUG= +for %%f in (%*) do ( + if /i "%%f" == "/DEBUG" (@echo on & set "DEBUG=/DEBUG") +) +@exit /b 0 + +:FindBin +rem Checks the current directory and all parents for the ".bin" folder +rem NOTE: Has not been tested for UNC paths +set bin= +pushd "%~dp0" +:FindBinInner +if exist ".bin" (goto FindBinDone) +if "%~d0\" == "%cd%" (popd & @exit /b 1) +cd .. +goto FindBinInner +:FindBinDone +set "bin=%cd%\.bin" +set "cbin=%cd%\.cbin" +popd +@exit /b 0 + +:SetTitle +rem Sets title using KIT_NAME_FULL from settings\main.py +set "SETTINGS=%bin%\Scripts\settings\main.py" +for /f "tokens=* usebackq" %%f in (`findstr KIT_NAME_FULL %SETTINGS%`) do ( + set "_v=%%f" + set "_v=!_v:*'=!" + set "KIT_NAME_FULL=!_v:~0,-1!" +) +set "window_title=%*" +if not defined window_title set "window_title=Launcher" +set "window_title=%KIT_NAME_FULL%: %window_title%" +title %window_title% +@exit /b 0 + +:: Errors :: +:ErrorLaunchCMD +echo. +echo ERROR: Launch.cmd did not run correctly. Try using the /DEBUG flag? +goto Abort + +:ErrorLaunchCMDMissing +echo. +echo ERROR: Launch.cmd script not found. +goto Abort + +:ErrorNoBin +echo. +echo ERROR: ".bin" folder not found. +goto Abort + +:Abort +color 4e +echo Aborted. +echo. +echo Press any key to exit... +pause>nul +color +rem Set errorlevel to 1 by calling color incorrectly +color 00 +goto Exit + +:: Cleanup and exit :: +:Exit +endlocal +exit /b %errorlevel% \ No newline at end of file