From 5c5fba103e4408654fbddd6e234400ed93c12d44 Mon Sep 17 00:00:00 2001 From: Alan Mason <1923621+2Shirt@users.noreply.github.com> Date: Mon, 20 Nov 2017 21:23:41 -0800 Subject: [PATCH] Downloads finished Testing and compression next --- .bin/Scripts/build_kit.ps1 | 2 +- .bin/Scripts/functions/common.py | 51 +-- .bin/Scripts/functions/update.py | 568 +++++++++++++++------------- .bin/Scripts/settings/launchers.py | 8 +- .bin/Scripts/settings/music.py | 70 ++++ .bin/Scripts/settings/sources.py | 173 +++++++++ .bin/Scripts/settings/tools.py | 55 +++ .bin/Scripts/update_kit.py | 6 +- .bin/{SDI => _Drivers/SDIO}/sdi.cfg | 3 +- .cbin/_include/XMPlay/xmplay.ini | 139 +++++++ .gitignore | 5 + 11 files changed, 750 insertions(+), 330 deletions(-) create mode 100644 .bin/Scripts/settings/music.py create mode 100644 .bin/Scripts/settings/sources.py create mode 100644 .bin/Scripts/settings/tools.py rename .bin/{SDI => _Drivers/SDIO}/sdi.cfg (79%) create mode 100644 .cbin/_include/XMPlay/xmplay.ini diff --git a/.bin/Scripts/build_kit.ps1 b/.bin/Scripts/build_kit.ps1 index 2d54a413..75d9bff2 100644 --- a/.bin/Scripts/build_kit.ps1 +++ b/.bin/Scripts/build_kit.ps1 @@ -177,5 +177,5 @@ popd if ($errors -gt 0) { wk_pause "Press Enter to exit..." } else { - start "$bin\ConEmu\ConEmu.exe" -argumentlist @("-run", "$bin\Python\x32\python.exe", "$bin\Scripts\update_kit.py") + start "$bin\ConEmu\ConEmu.exe" -argumentlist @("-run", "$bin\Python\x32\python.exe", "$bin\Scripts\update_kit.py", "-new_console:c") } diff --git a/.bin/Scripts/functions/common.py b/.bin/Scripts/functions/common.py index a204fef5..4fb57739 100644 --- a/.bin/Scripts/functions/common.py +++ b/.bin/Scripts/functions/common.py @@ -13,6 +13,7 @@ import winreg from subprocess import CalledProcessError from settings.main import * +from settings.tools import * # Global variables global_vars = {} @@ -28,56 +29,6 @@ COLORS = { HKU = winreg.HKEY_USERS HKCU = winreg.HKEY_CURRENT_USER HKLM = winreg.HKEY_LOCAL_MACHINE -TOOLS = { - # NOTE: BinDir will be prepended to these paths at runtime - 'AIDA64': { - '32': r'AIDA64\aida64.exe'}, - 'AutoRuns': { - '32': r'Autoruns\autoruns.exe', - '64': r'Autoruns\autoruns64.exe'}, - 'BleachBit': { - '32': r'BleachBit-Portable\bleachbit_console.exe'}, - 'Caffeine': { - '32': r'Caffeine\caffeine.exe'}, - 'Du': { - '32': r'Du\du.exe', - '64': r'Du\du64.exe'}, - 'ERUNT': { - '32': r'ERUNT\ERUNT.EXE'}, - 'Everything': { - '32': r'Everything\Everything.exe', - '64': r'Everything\Everything64.exe'}, - 'FastCopy': { - '32': r'FastCopy\FastCopy.exe', - '64': r'FastCopy\FastCopy64.exe'}, - 'HitmanPro': { - '32': r'HitmanPro\HitmanPro.exe', - '64': r'HitmanPro\HitmanPro64.exe'}, - 'HWiNFO': { - '32': r'HWiNFO\HWiNFO.exe', - '64': r'HWiNFO\HWiNFO64.exe'}, - 'KVRT': { - '32': r'KVRT\KVRT.exe'}, - 'NotepadPlusPlus': { - '32': r'NotepadPlusPlus\notepadplusplus.exe'}, - 'ProduKey': { - '32': r'ProduKey\ProduKey.exe', - '64': r'ProduKey\ProduKey64.exe'}, - 'PuTTY-PSFTP': { - '32': r'PuTTY\PSFTP.EXE'}, - 'RKill': { - '32': r'RKill\RKill.exe'}, - 'SevenZip': { - '32': r'7-Zip\7za.exe', - '64': r'7-Zip\7za64.exe'}, - 'TDSSKiller': { - '32': r'TDSSKiller\TDSSKiller.exe'}, - 'wimlib-imagex': { - '32': r'wimlib\x32\wimlib-imagex.exe', - '64': r'wimlib\x64\wimlib-imagex.exe'}, - 'XMPlay': { - '32': r'XMPlay\xmplay.exe'}, -} # Error Classes class BinNotFoundError(Exception): diff --git a/.bin/Scripts/functions/update.py b/.bin/Scripts/functions/update.py index a5c39450..4a34f633 100644 --- a/.bin/Scripts/functions/update.py +++ b/.bin/Scripts/functions/update.py @@ -5,134 +5,8 @@ import requests from functions.common import * from settings.launchers import * - -NINITE_FILES = { - 'Bundles': { - 'Runtimes.exe': '.net4.7-air-java8-silverlight', - 'Legacy.exe': '.net4.7-7zip-air-chrome-firefox-java8-silverlight-vlc', - 'Modern.exe': '.net4.7-7zip-air-chrome-classicstart-firefox-java8-silverlight-vlc', - }, - 'Audio-Video': { - 'AIMP.exe': 'aimp', - 'Audacity.exe': 'audacity', - 'CCCP.exe': 'cccp', - 'Foobar2000.exe': 'foobar', - 'GOM.exe': 'gom', - 'HandBrake.exe': 'handbrake', - 'iTunes.exe': 'itunes', - 'K-Lite Codecs.exe': 'klitecodecs', - 'MediaMonkey.exe': 'mediamonkey', - 'MusicBee.exe': 'musicbee', - 'Spotify.exe': 'spotify', - 'VLC.exe': 'vlc', - 'Winamp.exe': 'winamp', - }, - 'Cloud Storage': { - 'Dropbox.exe': 'dropbox', - 'Google Backup & Sync.exe': 'googlebackupandsync', - 'Mozy.exe': 'mozy', - 'OneDrive.exe': 'onedrive', - 'SugarSync.exe': 'sugarsync', - }, - 'Communication': { - 'Pidgin.exe': 'pidgin', - 'Skype.exe': 'skype', - 'Trillian.exe': 'trillian', - }, - 'Compression': { - '7-Zip.exe': '7zip', - 'PeaZip.exe': 'peazip', - 'WinRAR.exe': 'winrar', - }, - 'Developer': { - 'Eclipse.exe': 'eclipse', - 'FileZilla.exe': 'filezilla', - 'JDK 8.exe': 'jdk8', - 'JDK 8 (x64).exe': 'jdkx8', - 'Notepad++.exe': 'notepadplusplus', - 'PuTTY.exe': 'putty', - 'Python 2.exe': 'python', - 'Visual Studio Code.exe': 'vscode', - 'WinMerge.exe': 'winmerge', - 'WinSCP.exe': 'winscp', - }, - 'File Sharing': { - 'qBittorrent.exe': 'qbittorrent', - }, - 'Image-Photo': { - 'Blender.exe': 'blender', - 'FastStone.exe': 'faststone', - 'GIMP.exe': 'gimp', - 'Greenshot.exe': 'greenshot', - 'Inkscape.exe': 'inkscape', - 'IrfanView.exe': 'irfanview', - 'Krita.exe': 'krita', - 'Paint.NET.exe': 'paint.net', - 'ShareX.exe': 'sharex', - 'XnView.exe': 'xnview', - }, - 'Misc': { - 'Evernote.exe': 'evernote', - 'Everything.exe': 'everything', - 'KeePass 2.exe': 'keepass2', - 'Google Earth.exe': 'googleearth', - 'NV Access.exe': 'nvda', - 'Steam.exe': 'steam', - }, - 'Office': { - 'CutePDF.exe': 'cutepdf', - 'Foxit Reader.exe': 'foxit', - 'LibreOffice.exe': 'libreoffice', - 'OpenOffice.exe': 'openoffice', - 'PDFCreator.exe': 'pdfcreator', - 'SumatraPDF.exe': 'sumatrapdf', - 'Thunderbird.exe': 'thunderbird', - }, - 'Runtimes': { - 'Adobe Air.exe': 'air', - 'dotNET.exe': '.net4.7', - 'Java 8.exe': 'java8', - 'Shockwave.exe': 'shockwave', - 'Silverlight.exe': 'silverlight', - }, - 'Security': { - 'Avast.exe': 'avast', - 'AVG.exe': 'avg', - 'Avira.exe': 'avira', - 'Microsoft Security Essentials.exe': 'essentials', - 'Malwarebytes Anti-Malware.exe': 'malwarebytes', - 'Spybot 2.exe': 'spybot2', - 'SUPERAntiSpyware.exe': 'super', - }, - 'Utilities': { - 'CDBurnerXP.exe': 'cdburnerxp', - 'Classic Start.exe': 'classicstart', - 'Glary Utilities.exe': 'glary', - 'ImgBurn.exe': 'imgburn', - 'InfraRecorder.exe': 'infrarecorder', - 'Launchy.exe': 'launchy', - 'RealVNC.exe': 'realvnc', - 'Revo Uninstaller.exe': 'revo', - 'TeamViewer 12.exe': 'teamviewer12', - 'TeraCopy.exe': 'teracopy', - 'WinDirStat.exe': 'windirstat', - }, - 'Web Browsers': { - 'Google Chrome.exe': 'chrome', - 'Mozilla Firefox.exe': 'firefox', - 'Opera Chromium.exe': 'operaChromium', - }, - } -RST_FILES = { - #SetupRST_12.0.exe : Removed from download center? - #SetupRST_12.5.exe : Removed from download center? - #SetupRST_12.8.exe : Removed from download center? - 'SetupRST_12.9.exe': 'https://downloadmirror.intel.com/23496/eng/SetupRST.exe', - #SetupRST_13.x.exe : Broken, doesn't support > .NET 4.5 - 'SetupRST_14.0.exe': 'https://downloadmirror.intel.com/25091/eng/SetupRST.exe', - 'SetupRST_14.8.exe': 'https://downloadmirror.intel.com/26759/eng/setuprst.exe', - 'SetupRST_15.8.exe': 'https://downloadmirror.intel.com/27147/eng/SetupRST.exe', - } +from settings.music import * +from settings.sources import * def download_generic(out_dir, out_name, source_url): """Downloads a file using requests.""" @@ -154,29 +28,6 @@ def download_generic(out_dir, out_name, source_url): def download_to_temp(out_name, source_url): download_generic(global_vars['TmpDir'], out_name, source_url) -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_generic(source, dest, mode='x', sz_args=[]): cmd = [ global_vars['Tools']['SevenZip'], @@ -199,20 +50,45 @@ def extract_temp_to_cbin(source, item, mode='x', sz_args=[]): shutil.copytree(include_path, dest) extract_generic(source, dest, mode, sz_args) +def remove_item(item_path): + if os.path.exists(item_path): + if os.path.isdir(item_path): + shutil.rmtree(item_path, ignore_errors=True) + else: + os.remove(item_path) + def remove_from_kit(item): item_locations = [] for p in [global_vars['BinDir'], global_vars['CBinDir']]: item_locations.append(r'{}\{}'.format(p, item)) item_locations.append(r'{}\_Drivers\{}'.format(p, item)) for item_path in item_locations: - if os.path.exists(item_path): - if os.path.isdir(item_path): - shutil.rmtree(item_path, ignore_errors=True) - else: - os.remove(item_path) + remove_item(item_path) def remove_from_temp(item): - os.remove(r'{}\{}'.format(global_vars['TmpDir'], item)) + item_path = r'{}\{}'.format(global_vars['TmpDir'], item) + remove_item(item_path) + +def resolve_dynamic_url(source_url, regex): + """Scan source_url for a url using the regex provided; returns str.""" + # Load the download page + try: + download_page = requests.get(source_url) + except Exception: + # "Fail silently as the download_to_temp() function will catch it + return None + + # Scan for the url using the regex provided + url = None + for line in download_page.content.decode().splitlines(): + 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 + + # Return + return url ## Data Recovery ## def update_testdisk(): @@ -225,9 +101,7 @@ def update_testdisk(): 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) + download_to_temp('testdisk_wip.zip', SOURCE_URLS['TestDisk']) # Extract files extract_temp_to_cbin('testdisk_wip.zip', 'TestDisk') @@ -253,13 +127,8 @@ def update_fastcopy(): remove_from_kit('FastCopy') # 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) + download_to_temp('FastCopy32.zip', SOURCE_URLS['FastCopy32']) + download_to_temp('FastCopy64.zip', SOURCE_URLS['FastCopy64']) # Extract extract_temp_to_bin('FastCopy64.zip', 'FastCopy', sz_args=['FastCopy.exe']) @@ -280,9 +149,7 @@ def update_xyplorer(): remove_from_kit('XYplorerFree') # Download - name = 'xyplorer_free.zip' - url = 'https://www.xyplorer.com/download/xyplorer_free_noinstall.zip' - download_to_temp(name, url) + download_to_temp('xyplorer_free.zip', SOURCE_URLS['XYplorerFree']) # Extract files extract_temp_to_cbin('xyplorer_free.zip', 'XYplorerFree') @@ -299,9 +166,7 @@ def update_aida64(): remove_from_kit('AIDA64') # Download - name = 'aida64.zip' - url = 'http://download.aida64.com/aida64engineer592.zip' - download_to_temp(name, url) + download_to_temp('aida64.zip', SOURCE_URLS['AIDA64']) # Extract files extract_temp_to_cbin('aida64.zip', 'AIDA64') @@ -318,9 +183,7 @@ def update_autoruns(): remove_from_kit('Autoruns') # Download - name = 'Autoruns.zip' - url = 'https://download.sysinternals.com/files/Autoruns.zip' - download_to_temp(name, url) + download_to_temp('Autoruns.zip', SOURCE_URLS['Autoruns']) # Extract files extract_temp_to_cbin('Autoruns.zip', 'Autoruns') @@ -336,15 +199,11 @@ def update_bleachbit(): remove_from_kit('BleachBit-Portable') # Download - name = 'BleachBit-Portable.zip' - url = 'https://download.bleachbit.org/beta/1.17/BleachBit-1.17-portable.zip' - download_to_temp(name, url) - name = 'Winapp2.zip' - url = 'https://github.com/MoscaDotTo/Winapp2/archive/master.zip' - download_to_temp(name, url) + download_to_temp('bleachbit.zip', SOURCE_URLS['BleachBit']) + download_to_temp('Winapp2.zip', SOURCE_URLS['Winapp2']) # Extract files - extract_temp_to_cbin('BleachBit-Portable.zip', 'BleachBit-Portable') + extract_temp_to_cbin('bleachbit.zip', 'BleachBit-Portable') extract_generic( r'{}\Winapp2.zip'.format(global_vars['TmpDir']), r'{}\BleachBit-Portable\cleaners'.format(global_vars['CBinDir']), @@ -360,7 +219,7 @@ def update_bleachbit(): r'{}\BleachBit-Portable\BleachBit-Portable'.format(global_vars['CBinDir'])) # Cleanup - remove_from_temp('BleachBit-Portable.zip') + remove_from_temp('bleachbit.zip') remove_from_temp('Winapp2.zip') def update_bluescreenview(): @@ -372,23 +231,18 @@ def update_bluescreenview(): remove_from_kit('BlueScreenView') # Download - name = 'bluescreenview.zip' - url = 'http://www.nirsoft.net/utils/bluescreenview.zip' - download_to_temp(name, url) - - name = 'bluescreenview64.zip' - url = 'http://www.nirsoft.net/utils/bluescreenview-x64.zip' - download_to_temp(name, url) + download_to_temp('bluescreenview32.zip', SOURCE_URLS['BlueScreenView32']) + download_to_temp('bluescreenview64.zip', SOURCE_URLS['BlueScreenView64']) # Extract files extract_temp_to_cbin('bluescreenview64.zip', 'BlueScreenView', sz_args=['BlueScreenView.exe']) shutil.move( r'{}\BlueScreenView\BlueScreenView.exe'.format(global_vars['CBinDir']), r'{}\BlueScreenView\BlueScreenView64.exe'.format(global_vars['CBinDir'])) - extract_temp_to_cbin('bluescreenview.zip', 'BlueScreenView') + extract_temp_to_cbin('bluescreenview32.zip', 'BlueScreenView') # Cleanup - remove_from_temp('bluescreenview.zip') + remove_from_temp('bluescreenview32.zip') remove_from_temp('bluescreenview64.zip') def update_du(): @@ -400,9 +254,7 @@ def update_du(): remove_from_kit('Du') # Download - name = 'du.zip' - url = 'https://download.sysinternals.com/files/DU.zip' - download_to_temp(name, url) + download_to_temp('du.zip', SOURCE_URLS['Du']) # Extract files extract_temp_to_cbin('du.zip', 'Du') @@ -418,9 +270,7 @@ def update_erunt(): remove_from_kit('ERUNT') # Download - name = 'erunt.zip' - url = 'http://www.aumha.org/downloads/erunt.zip' - download_to_temp(name, url) + download_to_temp('erunt.zip', SOURCE_URLS['ERUNT']) # Extract files extract_temp_to_cbin('erunt.zip', 'ERUNT') @@ -438,13 +288,8 @@ def update_hitmanpro(): # Download dest = r'{}\HitmanPro'.format(global_vars['CBinDir']) - name = 'HitmanPro.exe' - url = 'https://dl.surfright.nl/HitmanPro.exe' - download_generic(dest, name, url) - - name = 'HitmanPro64.exe' - url = 'https://dl.surfright.nl/HitmanPro_x64.exe' - download_generic(dest, name, url) + download_generic(dest, 'HitmanPro.exe', SOURCE_URLS['HitmanPro32']) + download_generic(dest, 'HitmanPro64.exe', SOURCE_URLS['HitmanPro64']) def update_hwinfo(): ## NOTE: Lives in .bin uncompressed @@ -453,13 +298,8 @@ def update_hwinfo(): 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) + download_to_temp('HWiNFO32.zip', SOURCE_URLS['HWiNFO32']) + download_to_temp('HWiNFO64.zip', SOURCE_URLS['HWiNFO64']) # Extract files extract_temp_to_bin('HWiNFO32.zip', 'HWiNFO') @@ -478,23 +318,18 @@ def update_produkey(): 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) + download_to_temp('produkey32.zip', SOURCE_URLS['ProduKey32']) + download_to_temp('produkey64.zip', SOURCE_URLS['ProduKey64']) # Extract files extract_temp_to_cbin('produkey64.zip', 'ProduKey', sz_args=['ProduKey.exe']) shutil.move( r'{}\ProduKey\ProduKey.exe'.format(global_vars['CBinDir']), r'{}\ProduKey\ProduKey64.exe'.format(global_vars['CBinDir'])) - extract_temp_to_cbin('produkey.zip', 'ProduKey') + extract_temp_to_cbin('produkey32.zip', 'ProduKey') # Cleanup - remove_from_temp('produkey.zip') + remove_from_temp('produkey32.zip') remove_from_temp('produkey64.zip') ## Drivers ## @@ -510,7 +345,7 @@ def update_intel_rst(): shutil.copytree(include_path, dest) # Download - for name, url in RST_FILES.items(): + for name, url in RST_SOURCES.items(): download_generic(dest, name, url) def update_intel_ssd_toolbox(): @@ -518,32 +353,118 @@ def update_intel_ssd_toolbox(): remove_from_kit('Intel SSD Toolbox.exe') # Download - dest = r'{}\_Drivers'.format(global_vars['CBinDir']) - name = 'Intel SSD Toolbox.exe' - url = r'https://downloadmirror.intel.com/27330/eng/Intel%20SSD%20Toolbox%20-%20v3.4.9.exe' - download_generic(dest, name, url) + download_generic( + r'{}\_Drivers'.format(global_vars['CBinDir']), + 'Intel SSD Toolbox.exe', + SOURCE_URLS['Intel SSD Toolbox']) def update_samsung_magician(): # Remove existing folders remove_from_kit('Samsung Magician.exe') # Download - dest = r'{}\_Drivers'.format(global_vars['CBinDir']) - name = 'Samsung Magician.exe' - url = 'http://downloadcenter.samsung.com/content/SW/201710/20171019164455812/Samsung_Magician_Installer.exe' - download_generic(dest, name, url) + download_generic( + r'{}\_Drivers'.format(global_vars['CBinDir']), + 'Samsung Magician.exe', + SOURCE_URLS['Samsung Magician']) -def update_sdi(): - #TODO - pass +def update_sdi_origin(): + # Download aria2 + download_to_temp('aria2.zip', SOURCE_URLS['aria2']) + aria_source = r'{}\aria2.zip'.format(global_vars['TmpDir']) + aria_dest = r'{}\aria2'.format(global_vars['TmpDir']) + aria = r'{}\aria2c.exe'.format(aria_dest) + extract_generic(aria_source, aria_dest, mode='e') + + # Prep for torrent download + download_to_temp('sdio.torrent', SOURCE_URLS['SDIO Torrent']) + sdio_torrent = r'{}\sdio.torrent'.format(global_vars['TmpDir']) + out = run_program([aria, sdio_torrent, '-S']) + indexes = [] + for line in out.stdout.decode().splitlines(): + r = re.search(r'^\s*(\d+)\|(.*)', line) + if r and not re.search(r'(\.(bat|inf)|Video|Server|Printer|XP)', line, re.IGNORECASE): + indexes.append(int(r.group(1))) + indexes = [str(i) for i in sorted(indexes)] + + # Download SDI Origin + cmd = [ + aria, + '--select-file={}'.format(','.join(indexes)), + '-d', aria_dest, + '--seed-time=0', + sdio_torrent, + '-new_console:n', '-new_console:s33V', + ] + run_program(cmd, pipe=False, check=False, shell=True) + sleep(1) + wait_for_process('aria2c') + + # Download SDI Origin extra themes + download_to_temp('sdio_themes.zip', SOURCE_URLS['SDIO Themes']) + theme_source = r'{}\sdio_themes.zip'.format(global_vars['TmpDir']) + theme_dest = r'{}\SDIO_Update\tools\SDI\themes'.format(aria_dest) + extract_generic(theme_source, theme_dest) + + # Move files into place + for item in os.scandir(r'{}\SDIO_Update'.format(aria_dest)): + dest_item = '{}\_Drivers\SDIO\{}'.format( + global_vars['BinDir'], item.name) + r = re.search(r'^SDIO_x?(64|)_?R.*exe$', item.name, re.IGNORECASE) + if r: + dest_item = dest_item.replace(item.name, 'SDIO{}.exe'.format( + r.group(1))) + if (not os.path.exists(dest_item) + and not re.search(r'\.(inf|bat)$', item.name, re.IGNORECASE)): + shutil.move(item.path, dest_item) + + # Cleanup + remove_from_temp('aria2') + remove_from_temp('aria2.zip') + remove_from_temp('sdio.torrent') + remove_from_temp('sdio_themes.zip') ## Installers ## def update_adobe_reader_dc(): - pass + # Prep + dest = r'{}\.root_items\Installers\Extras\Office'.format( + global_vars['BaseDir']) + if os.path.exists(r'{}\Installers'.format(global_vars['BaseDir'])): + dest = dest.replace(r'\.root_items', '') + + # Remove existing folders + try: + os.remove(r'{}\Adobe Reader DC.exe'.format(dest)) + except FileNotFoundError: + pass + + # Download + download_generic( + dest, 'Adobe Reader DC.exe', SOURCE_URLS['Adobe Reader DC']) ## Misc ## def update_everything(): - pass + # Stop running processes + for exe in ['Everything.exe', 'Everything64.exe']: + kill_process(exe) + + # Remove existing folders + remove_from_kit('Everything') + + # Download + download_to_temp('everything32.zip', SOURCE_URLS['Everything32']) + download_to_temp('everything64.zip', SOURCE_URLS['Everything64']) + + # Extract files + extract_temp_to_cbin('everything64.zip', 'Everything', sz_args=['Everything.exe']) + shutil.move( + r'{}\Everything\Everything.exe'.format(global_vars['CBinDir']), + r'{}\Everything\Everything64.exe'.format(global_vars['CBinDir'])) + extract_temp_to_cbin('everything32.zip', 'Everything') + + # Cleanup + remove_from_temp('everything32.zip') + remove_from_temp('everything64.zip') def update_notepadplusplus(): # Stop running processes @@ -553,9 +474,7 @@ def update_notepadplusplus(): 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) + download_to_temp('npp.7z', SOURCE_URLS['NotepadPlusPlus']) # Extract files extract_temp_to_cbin('npp.7z', 'NotepadPlusPlus') @@ -568,52 +487,159 @@ def update_notepadplusplus(): remove_from_temp('npp.7z') def update_treesizefree(): - pass + # Stop running processes + kill_process('TreeSizeFree.exe') + + # Remove existing folders + remove_from_kit('TreeSizeFree-Portable') + + # Download + download_to_temp( + 'treesizefree.zip.gz', SOURCE_URLS['TreeSizeFree-Portable']) + + # Extract files + ## NOTE: When downloaded using requests it is a .zip.gz? + source = r'{}\treesizefree.zip.gz'.format(global_vars['TmpDir']) + download_to_temp(name, url) + extract_generic(source, global_vars['TmpDir']) + extract_temp_to_cbin('treesizefree.zip', 'TreeSizeFree-Portable') + + # Cleanup + remove_from_temp('treesizefree.zip') + remove_from_temp('treesizefree.zip.gz') def update_xmplay(): - pass + # Stop running processes + kill_process('xmplay.exe') + + # Remove existing folders + remove_from_kit('XMPlay') + + # Download + download_to_temp('xmplay.zip', SOURCE_URLS['XMPlay']) + download_to_temp('xmp-7z.zip', SOURCE_URLS['XMPlay 7z']) + download_to_temp('xmp-gme.zip', SOURCE_URLS['XMPlay Game']) + download_to_temp('xmp-rar.zip', SOURCE_URLS['XMPlay RAR']) + download_to_temp('WAModern.zip', SOURCE_URLS['XMPlay WAModern']) + + # Extract files + extract_temp_to_cbin('xmplay.zip', 'XMPlay', + mode='e', sz_args=['xmplay.exe', 'xmplay.txt']) + for item in ['xmp-7z', 'xmp-gme', 'xmp-rar', 'WAModern']: + filter = [] + if item == 'WAModern': + filter.append('WAModern NightVision.xmpskin') + extract_generic( + r'{}\{}.zip'.format(global_vars['TmpDir'], item), + r'{}\XMPlay\plugins'.format(global_vars['CBinDir']), + mode='e', sz_args=filter) + + # Download Music + dest = r'{}\XMPlay\music_tmp\MOD'.format(global_vars['CBinDir']) + for mod in MUSIC_MOD: + name = mod.split('#')[-1] + url = 'https://api.modarchive.org/downloads.php?moduleid={}'.format(mod) + download_generic(dest, name, url) + dest = r'{}\XMPlay\music_tmp\SNES'.format(global_vars['CBinDir']) + for game in MUSIC_SNES: + name = '{}.rsn'.format(game) + url = 'http://snesmusic.org/v2/download.php?spcNow={}'.format(game) + download_generic(dest, name, url) + + # Compress Music + cmd = [ + global_vars['Tools']['SevenZip'], + 'a', r'{}\XMPlay\music.7z'.format(global_vars['CBinDir']), + '-t7z', '-mx=9', '-bso0', '-bse0', + r'{}\XMPlay\music_tmp\*'.format(global_vars['CBinDir']), + ] + run_program(cmd) + + # Cleanup + remove_item(r'{}\XMPlay\music_tmp'.format(global_vars['CBinDir'])) + remove_from_temp('xmplay.zip') + remove_from_temp('xmp-7z.zip') + remove_from_temp('xmp-gme.zip') + remove_from_temp('xmp-rar.zip') + remove_from_temp('WAModern.zip') ## 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 + # Stop running processes + kill_process('AdwCleaner.exe') + + # Remove existing folders + remove_from_kit('AdwCleaner') + + # Download + url = resolve_dynamic_url( + SOURCE_URLS['AdwCleaner'], + 'id="downloadLink"') + download_generic( + r'{}\AdwCleaner'.format(global_vars['CBinDir']), 'AdwCleaner.exe', url) 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 + # Stop running processes + kill_process('KVRT.exe') + + # Remove existing folders + remove_from_kit('KVRT') + + # Download + download_generic( + r'{}\KVRT'.format(global_vars['CBinDir']), + 'KVRT.exe', + SOURCE_URLS['KVRT']) 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 + # Stop running processes + kill_process('RKill.exe') + + # Remove existing folders + remove_from_kit('RKill') + + # Download + url = resolve_dynamic_url( + SOURCE_URLS['RKill'], + 'href.*rkill\.exe') + download_generic( + r'{}\RKill'.format(global_vars['CBinDir']), 'RKill.exe', url) 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 + # Stop running processes + kill_process('TDSSKiller.exe') + + # Remove existing folders + remove_from_kit('TDSSKiller') + + # Download + download_generic( + r'{}\TDSSKiller'.format(global_vars['CBinDir']), + 'TDSSKiller.exe', + SOURCE_URLS['TDSSKiller']) ## Uninstallers ## def update_iobit_uninstaller(): - pass + # Stop running processes + kill_process('IObitUninstallerPortable.exe') + + # Remove existing folders + remove_from_kit('IObitUninstallerPortable') + + # Download + download_generic( + global_vars['CBinDir'], + 'IObitUninstallerPortable.exe', + SOURCE_URLS['IOBit_Uninstaller']) + + # "Install" + cmd = r'{}\IObitUninstallerPortable.exe'.format(global_vars['CBinDir']) + popen_program(cmd) + sleep(1) + wait_for_process('IObitUninstallerPortable') + + # Cleanup + remove_from_kit('IObitUninstallerPortable.exe') if __name__ == '__main__': print("This file is not meant to be called directly.") diff --git a/.bin/Scripts/settings/launchers.py b/.bin/Scripts/settings/launchers.py index 3adca3a1..17e58865 100644 --- a/.bin/Scripts/settings/launchers.py +++ b/.bin/Scripts/settings/launchers.py @@ -443,10 +443,10 @@ LAUNCHERS = { 'L_NCMD': 'True', 'L_WAIT': '', }, - 'Snappy Driver Installer': { + 'Snappy Driver Installer Origin': { 'L_TYPE': 'Program', - 'L_PATH': '_Drivers\SDI', - 'L_ITEM': 'SDI.exe', + 'L_PATH': '_Drivers\SDIO', + 'L_ITEM': 'SDIO.exe', 'L_ARGS': '', 'L_7ZIP': '', 'L_CHCK': 'True', @@ -676,7 +676,7 @@ LAUNCHERS = { 'L_NCMD': 'True', 'L_WAIT': '', }, - 'TreeSizeFree': { + 'TreeSizeFree-Portable': { 'L_TYPE': 'Program', 'L_PATH': 'TreeSizeFree', 'L_ITEM': 'TreeSizeFree.exe', diff --git a/.bin/Scripts/settings/music.py b/.bin/Scripts/settings/music.py new file mode 100644 index 00000000..a2d49f31 --- /dev/null +++ b/.bin/Scripts/settings/music.py @@ -0,0 +1,70 @@ +# Wizard Kit: Settings - Music + +MUSIC_MOD = [ + '104208#banana_boat.mod', + '114971#tilbury_fair.mod', + '132563#ufo_tune.mod', + '135906#magnetik_girl.xm', + '140628#autumn_in_budapest.xm', + '143198#summer_memories_3.xm', + '144405#hillbilly_billyboy.xm', + '154795#4mat_-_eternity.xm', + '155845#bookworm.mo3', + '155914#battleofsteel.xm', + '158975#1_channel_moog.it', + '165495#trans.s3m', + '168513#necros_-_introspection.s3m', + '169628#radix_-_feng_shui_schematics.xm', + '175238#unknown48_-_twilight.mod', + '33432#ambrozia.xm', + '33460#amigatre.mod', + '34594#CHARIOT.S3M', + '34596#BUTTERFL.XM', + '34654#CTGOBLIN.S3M', + '35151#bananasplit.mod', + '35280#DEADLOCK.XM', + '38591#compo_liam.xm', + '39987#crystald.s3m', + '40475#ELYSIUM.MOD', + '42146#enigma.mod', + '42519#GHOST2.MOD', + '42560#GSLINGER.MOD', + '42872#existing.xm', + '50427#nf-stven.xm', + '51549#overture.mod', + '54250#SATELL.S3M', + '54313#realmk.s3m', + '55789#scrambld.mod', + '57934#spacedeb.mod', + '59344#stardstm.mod', + '60395#2ND_PM.S3M', + '66187#external.xm', + '66343#beek-substitutionology.it', + '67561#radix-unreal_superhero.xm', + '70829#inside_out.s3m', + '83779#beyond_music.mod', + ] + +MUSIC_SNES = [ + 'actr', + 'crock', + 'ct', + 'dkc', + 'dkq', + 'ff6', + 'fz', + 'loz3', + 'mmx', + 'ptws', + 'scv4', + 'sf', + 'sf2', + 'sgng', + 'smk', + 'smw', + 'yi', + 'zamn' + ] + +if __name__ == '__main__': + print("This file is not meant to be called directly.") diff --git a/.bin/Scripts/settings/sources.py b/.bin/Scripts/settings/sources.py new file mode 100644 index 00000000..00a23d43 --- /dev/null +++ b/.bin/Scripts/settings/sources.py @@ -0,0 +1,173 @@ +# Wizard Kit: Settings - Sources + +SOURCE_URLS = { + 'NotepadPlusPlus': 'https://notepad-plus-plus.org/repository/7.x/7.5.1/npp.7.5.1.bin.minimalist.7z', + 'TestDisk': 'https://www.cgsecurity.org/testdisk-7.1-WIP.win.zip', + 'FastCopy32': 'http://ftp.vector.co.jp/69/28/2323/FastCopy332.zip', + 'FastCopy64': 'http://ftp.vector.co.jp/69/28/2323/FastCopy332_x64.zip', + 'XYplorerFree': 'https://www.xyplorer.com/download/xyplorer_free_noinstall.zip', + 'AIDA64': 'http://download.aida64.com/aida64engineer592.zip', + 'Autoruns': 'https://download.sysinternals.com/files/Autoruns.zip', + 'BleachBit': 'https://download.bleachbit.org/beta/1.17/BleachBit-1.17-portable.zip', + 'Winapp2': 'https://github.com/MoscaDotTo/Winapp2/archive/master.zip', + 'BlueScreenView32': 'http://www.nirsoft.net/utils/bluescreenview.zip', + 'BlueScreenView64': 'http://www.nirsoft.net/utils/bluescreenview-x64.zip', + 'Du': 'https://download.sysinternals.com/files/DU.zip', + 'ERUNT': 'http://www.aumha.org/downloads/erunt.zip', + 'HitmanPro32': 'https://dl.surfright.nl/HitmanPro.exe', + 'HitmanPro64': 'https://dl.surfright.nl/HitmanPro_x64.exe', + 'HWiNFO32': 'http://app.oldfoss.com:81/download/HWiNFO/hw32_560.zip', + 'HWiNFO64': 'http://app.oldfoss.com:81/download/HWiNFO/hw64_560.zip', + 'ProduKey32': 'http://www.nirsoft.net/utils/produkey.zip', + 'ProduKey64': 'http://www.nirsoft.net/utils/produkey-x64.zip', + 'Intel SSD Toolbox': r'https://downloadmirror.intel.com/27330/eng/Intel%20SSD%20Toolbox%20-%20v3.4.9.exe', + 'Samsung Magician': 'http://downloadcenter.samsung.com/content/SW/201710/20171019164455812/Samsung_Magician_Installer.exe', + 'aria2': 'https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip', + 'SDIO Torrent': 'http://snappy-driver-installer.org/downloads/SDIO_Update.torrent', + 'SDIO Themes': 'http://snappy-driver-installer.org/downloads/SDIO_Themes.zip', + 'Adobe Reader DC': 'http://ardownload.adobe.com/pub/adobe/reader/win/AcrobatDC/1800920044/AcroRdrDC1800920044_en_US.exe', + 'Everything32': 'https://www.voidtools.com/Everything-1.4.1.877.x86.zip', + 'Everything64': 'https://www.voidtools.com/Everything-1.4.1.877.x64.zip', + 'TreeSizeFree-Portable': 'https://www.jam-software.com/treesize_free/TreeSizeFree-Portable.zip', + 'XMPlay': 'http://support.xmplay.com/files/20/xmplay3823.zip?v=115916', + 'XMPlay 7z': 'http://support.xmplay.com/files/16/xmp-7z.zip?v=800962', + 'XMPlay Game': 'http://support.xmplay.com/files/12/xmp-gme.zip?v=515637', + 'XMPlay RAR': 'http://support.xmplay.com/files/16/xmp-rar.zip?v=409646', + 'XMPlay WAModern': 'http://support.xmplay.com/files/10/WAModern.zip?v=207099', + 'AdwCleaner': 'https://toolslib.net/downloads/finish/1-adwcleaner/', + 'KVRT': 'http://devbuilds.kaspersky-labs.com/devbuilds/KVRT/latest/full/KVRT.exe', + 'RKill': 'https://www.bleepingcomputer.com/download/rkill/dl/10/', + 'TDSSKiller': 'https://media.kaspersky.com/utilities/VirusUtilities/EN/tdsskiller.exe', + 'IOBit_Uninstaller': 'https://portableapps.com/redirect/?a=IObitUninstallerPortable&t=http%3A%2F%2Fdownloads.portableapps.com%2Fportableapps%2Fiobituninstallerportable%2FIObitUninstallerPortable_7.0.2.49.paf.exe', + } +NINITE_SOURCES = { + 'Bundles': { + 'Runtimes.exe': '.net4.7-air-java8-silverlight', + 'Legacy.exe': '.net4.7-7zip-air-chrome-firefox-java8-silverlight-vlc', + 'Modern.exe': '.net4.7-7zip-air-chrome-classicstart-firefox-java8-silverlight-vlc', + }, + 'Audio-Video': { + 'AIMP.exe': 'aimp', + 'Audacity.exe': 'audacity', + 'CCCP.exe': 'cccp', + 'Foobar2000.exe': 'foobar', + 'GOM.exe': 'gom', + 'HandBrake.exe': 'handbrake', + 'iTunes.exe': 'itunes', + 'K-Lite Codecs.exe': 'klitecodecs', + 'MediaMonkey.exe': 'mediamonkey', + 'MusicBee.exe': 'musicbee', + 'Spotify.exe': 'spotify', + 'VLC.exe': 'vlc', + 'Winamp.exe': 'winamp', + }, + 'Cloud Storage': { + 'Dropbox.exe': 'dropbox', + 'Google Backup & Sync.exe': 'googlebackupandsync', + 'Mozy.exe': 'mozy', + 'OneDrive.exe': 'onedrive', + 'SugarSync.exe': 'sugarsync', + }, + 'Communication': { + 'Pidgin.exe': 'pidgin', + 'Skype.exe': 'skype', + 'Trillian.exe': 'trillian', + }, + 'Compression': { + '7-Zip.exe': '7zip', + 'PeaZip.exe': 'peazip', + 'WinRAR.exe': 'winrar', + }, + 'Developer': { + 'Eclipse.exe': 'eclipse', + 'FileZilla.exe': 'filezilla', + 'JDK 8.exe': 'jdk8', + 'JDK 8 (x64).exe': 'jdkx8', + 'Notepad++.exe': 'notepadplusplus', + 'PuTTY.exe': 'putty', + 'Python 2.exe': 'python', + 'Visual Studio Code.exe': 'vscode', + 'WinMerge.exe': 'winmerge', + 'WinSCP.exe': 'winscp', + }, + 'File Sharing': { + 'qBittorrent.exe': 'qbittorrent', + }, + 'Image-Photo': { + 'Blender.exe': 'blender', + 'FastStone.exe': 'faststone', + 'GIMP.exe': 'gimp', + 'Greenshot.exe': 'greenshot', + 'Inkscape.exe': 'inkscape', + 'IrfanView.exe': 'irfanview', + 'Krita.exe': 'krita', + 'Paint.NET.exe': 'paint.net', + 'ShareX.exe': 'sharex', + 'XnView.exe': 'xnview', + }, + 'Misc': { + 'Evernote.exe': 'evernote', + 'Everything.exe': 'everything', + 'KeePass 2.exe': 'keepass2', + 'Google Earth.exe': 'googleearth', + 'NV Access.exe': 'nvda', + 'Steam.exe': 'steam', + }, + 'Office': { + 'CutePDF.exe': 'cutepdf', + 'Foxit Reader.exe': 'foxit', + 'LibreOffice.exe': 'libreoffice', + 'OpenOffice.exe': 'openoffice', + 'PDFCreator.exe': 'pdfcreator', + 'SumatraPDF.exe': 'sumatrapdf', + 'Thunderbird.exe': 'thunderbird', + }, + 'Runtimes': { + 'Adobe Air.exe': 'air', + 'dotNET.exe': '.net4.7', + 'Java 8.exe': 'java8', + 'Shockwave.exe': 'shockwave', + 'Silverlight.exe': 'silverlight', + }, + 'Security': { + 'Avast.exe': 'avast', + 'AVG.exe': 'avg', + 'Avira.exe': 'avira', + 'Microsoft Security Essentials.exe': 'essentials', + 'Malwarebytes Anti-Malware.exe': 'malwarebytes', + 'Spybot 2.exe': 'spybot2', + 'SUPERAntiSpyware.exe': 'super', + }, + 'Utilities': { + 'CDBurnerXP.exe': 'cdburnerxp', + 'Classic Start.exe': 'classicstart', + 'Glary Utilities.exe': 'glary', + 'ImgBurn.exe': 'imgburn', + 'InfraRecorder.exe': 'infrarecorder', + 'Launchy.exe': 'launchy', + 'RealVNC.exe': 'realvnc', + 'Revo Uninstaller.exe': 'revo', + 'TeamViewer 12.exe': 'teamviewer12', + 'TeraCopy.exe': 'teracopy', + 'WinDirStat.exe': 'windirstat', + }, + 'Web Browsers': { + 'Google Chrome.exe': 'chrome', + 'Mozilla Firefox.exe': 'firefox', + 'Opera Chromium.exe': 'operaChromium', + }, + } +RST_SOURCES = { + #SetupRST_12.0.exe : Removed from download center? + #SetupRST_12.5.exe : Removed from download center? + #SetupRST_12.8.exe : Removed from download center? + 'SetupRST_12.9.exe': 'https://downloadmirror.intel.com/23496/eng/SetupRST.exe', + #SetupRST_13.x.exe : Broken, doesn't support > .NET 4.5 + 'SetupRST_14.0.exe': 'https://downloadmirror.intel.com/25091/eng/SetupRST.exe', + 'SetupRST_14.8.exe': 'https://downloadmirror.intel.com/26759/eng/setuprst.exe', + 'SetupRST_15.8.exe': 'https://downloadmirror.intel.com/27147/eng/SetupRST.exe', + } + + +if __name__ == '__main__': + print("This file is not meant to be called directly.") diff --git a/.bin/Scripts/settings/tools.py b/.bin/Scripts/settings/tools.py new file mode 100644 index 00000000..118119a4 --- /dev/null +++ b/.bin/Scripts/settings/tools.py @@ -0,0 +1,55 @@ +# Wizard Kit: Settings - Tools + +TOOLS = { + # NOTE: BinDir will be prepended to these paths at runtime + 'AIDA64': { + '32': r'AIDA64\aida64.exe'}, + 'AutoRuns': { + '32': r'Autoruns\autoruns.exe', + '64': r'Autoruns\autoruns64.exe'}, + 'BleachBit': { + '32': r'BleachBit-Portable\bleachbit_console.exe'}, + 'Caffeine': { + '32': r'Caffeine\caffeine.exe'}, + 'Du': { + '32': r'Du\du.exe', + '64': r'Du\du64.exe'}, + 'ERUNT': { + '32': r'ERUNT\ERUNT.EXE'}, + 'Everything': { + '32': r'Everything\Everything.exe', + '64': r'Everything\Everything64.exe'}, + 'FastCopy': { + '32': r'FastCopy\FastCopy.exe', + '64': r'FastCopy\FastCopy64.exe'}, + 'HitmanPro': { + '32': r'HitmanPro\HitmanPro.exe', + '64': r'HitmanPro\HitmanPro64.exe'}, + 'HWiNFO': { + '32': r'HWiNFO\HWiNFO.exe', + '64': r'HWiNFO\HWiNFO64.exe'}, + 'KVRT': { + '32': r'KVRT\KVRT.exe'}, + 'NotepadPlusPlus': { + '32': r'NotepadPlusPlus\notepadplusplus.exe'}, + 'ProduKey': { + '32': r'ProduKey\ProduKey.exe', + '64': r'ProduKey\ProduKey64.exe'}, + 'PuTTY-PSFTP': { + '32': r'PuTTY\PSFTP.EXE'}, + 'RKill': { + '32': r'RKill\RKill.exe'}, + 'SevenZip': { + '32': r'7-Zip\7za.exe', + '64': r'7-Zip\7za64.exe'}, + 'TDSSKiller': { + '32': r'TDSSKiller\TDSSKiller.exe'}, + 'wimlib-imagex': { + '32': r'wimlib\x32\wimlib-imagex.exe', + '64': r'wimlib\x64\wimlib-imagex.exe'}, + 'XMPlay': { + '32': r'XMPlay\xmplay.exe'}, + } + +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 71cec02b..fc32186b 100644 --- a/.bin/Scripts/update_kit.py +++ b/.bin/Scripts/update_kit.py @@ -49,16 +49,16 @@ if __name__ == '__main__': 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_samsung_magician, other_results=other_results) - try_and_print(message='Snappy Driver Installer...', function=update_sdi, other_results=other_results) + try_and_print(message='Snappy Driver Installer Origin...', function=update_sdi_origin, other_results=other_results) # Installers print_info('\nInstallers') try_and_print(message='Adobe Reader DC...', function=update_adobe_reader_dc, other_results=other_results) print_info('\nNinite') - for section in sorted(NINITE_FILES.keys()): + for section in sorted(NINITE_SOURCES.keys()): print_success(' {}'.format(section)) dest = r'{}\_Ninite\{}'.format(global_vars['CBinDir'], section) - for name, url in sorted(NINITE_FILES[section].items()): + for name, url in sorted(NINITE_SOURCES[section].items()): url = 'https://ninite.com/{}/ninite.exe'.format(url) try_and_print(message=name, function=download_generic, other_results=other_results, diff --git a/.bin/SDI/sdi.cfg b/.bin/_Drivers/SDIO/sdi.cfg similarity index 79% rename from .bin/SDI/sdi.cfg rename to .bin/_Drivers/SDIO/sdi.cfg index 471c83d1..9abde84d 100644 --- a/.bin/SDI/sdi.cfg +++ b/.bin/_Drivers/SDIO/sdi.cfg @@ -13,6 +13,7 @@ -hintdelay:250 -license:1 -scale:256 +-wndsc:3 -filters:166 -port:50171 @@ -20,4 +21,4 @@ -uplimit:1 -connections:0 --expertmode -norestorepnt -novirusalerts -showdrpnames2 -onlyupdates -preservecfg \ No newline at end of file +-expertmode -norestorepnt -showdrpnames2 -onlyupdates -preservecfg \ No newline at end of file diff --git a/.cbin/_include/XMPlay/xmplay.ini b/.cbin/_include/XMPlay/xmplay.ini new file mode 100644 index 00000000..5432bfdf --- /dev/null +++ b/.cbin/_include/XMPlay/xmplay.ini @@ -0,0 +1,139 @@ +[XMPlay] +MixMode=56 +AutoName=0 +WriteSource=0 +WriteSourceRes=1 +WriteSepInst=0 +WriteNoExt=0 +WriteTitle=0 +AutoAmp=1 +RGain=0 +RGainAmp=0 +RGainLimit=0 +Time=1 +ShowTenths=1 +TimeHours=1 +Volume=90 +LogVolume=1 +Balance=50 +Amplify=-1074017600 +AmpReset=1 +PanSep=50 +Loop=0 +LoopLimit=1 +LoopLimitTime=0 +DecayEnd=5 +LoopList=1 +ListTotal=0 +UnloadLast=0 +AutoAdvance=1 +ListSort=0 +FollowList=0 +AutoRemove=0 +Trim=0 +NoMute=0 +Fade=0 +NetBuffer=5 +NetPreBuffer=3 +NetTimeout=10 +RestrictRate=0 +AutoReconnect=0 +Proxy=1 +ProxyConfig= +Dither=0 +CrossFadeLen=0 +CrossFadeChange=0 +MODmode=0 +MODtimeinfo=1 +MODxfx=0 +MODloop=1 +MODloopreset=0 +MODvirtchans=256 +Mini=0 +InTray=0 +OnTop=259 +MultiInstance=0 +SaveClosePos=0 +Bubbles=3 +FadeBubbles=1 +InfoMove=0 +WindowLock=0 +PanelPos=-268374016 +ListFilenames=0 +ListQueue=0 +ListClick=1793 +AutoSave=0 +ListCols=-2146959349 +Verify=1 +NoDuplicates=0 +ScanHTML=1 +ArchiveLevel=2 +SearchDrives=0 +Random=3 +DeadStop=0 +Queue=0 +QueueStop=0 +QueuePlay=0 +QueueToggle=1 +SubDir=0 +TitleNoExt=0 +TitleSpaces=0 +TitleSubsongs=0 +TitleCUE=1 +TitleScroll=1 +TitleTray=3 +Clipboard=0 +AutoSet=0 +InfoResize=1 +InfoResizeLimit=500 +InfoTextSize=0 +InfoWidth=80 +InfoList=15 +InfoPaty=234 +InfoPatmc=20 +RestrictVis=0 +RestrictVisW=290 +RestrictVisH=218 +SpectrumSpeed=1 +VisSync=0 +VisTextSize=0 +VisRefresh=40 +HelpTextSize=0 +PanelOpen=0 +InfoPos=00020000000200005D0300003E030000 +VisSize=22010000DA000000 +FindSize=0000000000000000C8000000 +LibWidth=600 +LibSort=2 +LibMode=0 +LibCols=0000000000000000010000000000E04102000000000050410300000000005041040000000000E040050000000000E04006000000000040410700000000000000080000000000C04009000000000000000A0000000000E0400B0000000000E0400C000000000000000D000000000000000E000000000000000F00000000000000 +LibParseList=0 +LibFilePath=0 +LibAbrSize=1 +LibInlineText=1 +LibInfoTags=1 +LibKeepOverridden=1 +LibPlayTime=0 +LibAvgCount=0 +LibPlayReplace=0 +UpdateCheck=0 +UpdateTime=0 +IgnoreTypes=avi mpg mpeg +FilePath= +WritePath=X:\ +TitleForm=%?2{%2 - }%?1{%1|%0} +TitleFormList= +Find= +FindPlay=0 +FindAutoList=0 +FindIn=3 +NoCheckDead=0 +CurTrack=64 +Info=197379 +Skin=plugins\WAModern NightVision +External=464C414300666C6163202D54205449544C453D2531202D54204152544953543D2532202D5420414C42554D3D2533202D5420444154453D2534202D5420545241434B4E554D4245523D2535202D542047454E52453D2536202D5420434F4D4D454E543D2537202D6F20256F202D00666C616300404C414D45006C616D65202D2D616C742D707265736574207374616E64617264202D2D69676E6F72652D7461672D6572726F7273202D2D7474202531202D2D7461202532202D2D746C202533202D2D7479202534202D2D746E202535202D2D7467202536202D2D7463202537202D20256F006D703300864F4747454E43006F6767656E63202D74202531202D61202532202D6C202533202D64202534202D4E202535202D47202536202D6320636F6D6D656E743D2537202D6F20256F202D006F676700C800 +DSP=FF000200100000000000000040410000004100008041000100280000000000000000000000000000000000000000000000000000000000000000000000000000000000 +PluginTypes= +Shortcuts=060000004F0018020C0000004F04180250000000500019025100000050041902500000001300450251000000130445025200000027004D035300000025004B0354000000240047035600000027044D035500000025044B03810000002100490380000000220051038200000023004F03700100002D005203710100002D045203900100005A022C027B0100005100100277010000BF0435025001000026004803580100002604480351010000280050035901000028045003540100002602480354010000280250035501000041021E02560100004902170260010000460221026401000046012102610100004600210262010000460421026301000046062102740100000D001C02750100002000390276010000BF0035027E010000BF023502720100002E005303730100002E045303000200006B004E02010200006D004A02070200006F003503080200006A003702010000004D003202020000004E003102030000004E0431020A00000073013E020B00000073053E0205000000780043020101000070003B020201000071003C020301000072003D020401000073003E020501000074003F0260020000750040020801000043022E02060100006800480207010000620050022101000064004B022201000066004D022301000065004C0224010000670047022501000069004902040000007B005802 +DeviceMode=0000000080BB000002000000020000008A0200000000000003000000 +Track1=0 diff --git a/.gitignore b/.gitignore index b619bc53..ee338c3c 100644 --- a/.gitignore +++ b/.gitignore @@ -15,12 +15,17 @@ .bin/Python/ .bin/Tmp/ .bin/XMPlay/ +.bin/_Drivers/SDIO/ .cbin/AIDA64/ .cbin/Autoruns/ .cbin/BleachBit-Portable/ .cbin/BlueScreenView/ .cbin/Du/ +.cbin/Everything/ +.cbin/IObitUninstallerPortable/ .cbin/ProduKey/ .cbin/TestDisk/ +.cbin/TreeSizeFree-Portable/ +.cbin/XMPlay/ .cbin/XYplorerFree/ .cbin/_Drivers/