diff --git a/bin/installer/generate-sections.py b/bin/installer/generate-sections.py index 373e01d..cfd8cc7 100644 --- a/bin/installer/generate-sections.py +++ b/bin/installer/generate-sections.py @@ -88,7 +88,7 @@ class GenerateInstall: 'die', 'exeinfope', 'pestudio', # decompilers - '[android] jadx', '[java] recaf', '[dotnet] ilspy', + '[android] jadx', '[dotnet] ilspy', '[java] recaf', # dissasembler 'x64dbg', @@ -108,6 +108,31 @@ class GenerateInstall: # unpacking 'qunpack', 'rl!depacker', 'uniextract', 'xvolkolak', ] + self.typical_tool_list = [ + # analysis + 'capa', 'die', 'exeinfope', 'pe-bear', 'pestudio', 'xapkdetector', + + # decompilers + '[android] jadx', '[dotnet] ilspy', '[java] jd-gui', '[java] recaf', + + # dissasembler + 'cutter', 'x64dbg', + + # hex editor + 'hxd', 'imhex', + + # monitor + 'api monitor', 'process explorer', 'process hacker 3', 'procmon', 'tcpview', + + # other + 'apkstudio', 'floss', 'hashcalc', 'resource hacker', 'scylla', 'virustotaluploader', 'x64dbgpluginmanager', + + # rootkits detector + 'gmer', 'sysinspector', + + # unpacking + 'qunpack', 'rl!depacker', 'uniextract', 'xvolkolak', + ] self.disable_unpack = [ # decompilers 'graywolf - 1.83.7z', @@ -137,11 +162,16 @@ class GenerateInstall: return f'{{#MyAppToolsIconsFolder}}\\{name}.ico' - def iss_types(self, name): - if name.lower() in self.compact_tool_list: - return 'full compact' + def iss_types(self): + types = 'full' - return 'full' + if self.tool_name.lower() in self.compact_tool_list: + types += ' compact' + + if self.tool_name.lower() in self.typical_tool_list: + types += ' typical' + + return types # script steps def iterate_sections(self, folder_path): @@ -182,7 +212,7 @@ class GenerateInstall: self.section_list.append( f'Name: "{component_name(self.section_name)}\\{component_name(self.tool_name)}"; ' f'Description: "{self.tool_name}"; ' - f'Types: {self.iss_types(self.tool_name)}; ' + f'Types: {self.iss_types()}; ' ) self.section_list.append('') diff --git a/bin/installer/sections/analysis.iss b/bin/installer/sections/analysis.iss index 166b087..61521a8 100644 --- a/bin/installer/sections/analysis.iss +++ b/bin/installer/sections/analysis.iss @@ -13,7 +13,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\4n4lDetector"; Filename: "{#MyA ; CAPA [Components] -Name: "analysis\capa"; Description: "CAPA"; Types: full; +Name: "analysis\capa"; Description: "CAPA"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\CAPA\*"; DestDir: "{#MyAppToolsFolder}\Analysis\CAPA"; Components: "analysis\capa"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -26,7 +26,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\CAPA x64"; Filename: "{sys}\cmd ; DIE [Components] -Name: "analysis\die"; Description: "DIE"; Types: full compact; +Name: "analysis\die"; Description: "DIE"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\DIE\*"; DestDir: "{#MyAppToolsFolder}\Analysis\DIE"; Components: "analysis\die"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -52,7 +52,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\ExeExplorer"; Filename: "{#MyAp ; ExeinfoPe [Components] -Name: "analysis\exeinfope"; Description: "ExeinfoPe"; Types: full compact; +Name: "analysis\exeinfope"; Description: "ExeinfoPe"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\ExeinfoPe\*"; DestDir: "{#MyAppToolsFolder}\Analysis\ExeinfoPe"; Components: "analysis\exeinfope"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -65,7 +65,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\ExeinfoPe"; Filename: "{#MyAppT ; PE-Bear [Components] -Name: "analysis\pebear"; Description: "PE-Bear"; Types: full; +Name: "analysis\pebear"; Description: "PE-Bear"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\PE-Bear\*"; DestDir: "{#MyAppToolsFolder}\Analysis\PE-Bear"; Components: "analysis\pebear"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -91,7 +91,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\PEiD"; Filename: "{#MyAppToolsF ; PEStudio [Components] -Name: "analysis\pestudio"; Description: "PEStudio"; Types: full compact; +Name: "analysis\pestudio"; Description: "PEStudio"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\PEStudio\*"; DestDir: "{#MyAppToolsFolder}\Analysis\PEStudio"; Components: "analysis\pestudio"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -117,7 +117,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Analysis\ProtectionID"; Filename: "{#MyA ; XAPKDetector [Components] -Name: "analysis\xapkdetector"; Description: "XAPKDetector"; Types: full; +Name: "analysis\xapkdetector"; Description: "XAPKDetector"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Analysis\XAPKDetector\*"; DestDir: "{#MyAppToolsFolder}\Analysis\XAPKDetector"; Components: "analysis\xapkdetector"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/decompilers.iss b/bin/installer/sections/decompilers.iss index d170bc7..80b4b1c 100644 --- a/bin/installer/sections/decompilers.iss +++ b/bin/installer/sections/decompilers.iss @@ -1,6 +1,6 @@ ; [ANDROID] JADX [Components] -Name: "decompilers\androidjadx"; Description: "[ANDROID] JADX"; Types: full compact; +Name: "decompilers\androidjadx"; Description: "[ANDROID] JADX"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Decompilers\[ANDROID] JADX\*"; DestDir: "{#MyAppToolsFolder}\Decompilers\[ANDROID] JADX"; Components: "decompilers\androidjadx"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -91,7 +91,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Decompilers\[DOTNET] GrayWolf"; Filename ; [DOTNET] ILSpy [Components] -Name: "decompilers\dotnetilspy"; Description: "[DOTNET] ILSpy"; Types: full compact; +Name: "decompilers\dotnetilspy"; Description: "[DOTNET] ILSpy"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Decompilers\[DOTNET] ILSpy\*"; DestDir: "{#MyAppToolsFolder}\Decompilers\[DOTNET] ILSpy"; Components: "decompilers\dotnetilspy"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -104,7 +104,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Decompilers\[DOTNET] ILSpy"; Filename: " ; [JAVA] JD-GUI [Components] -Name: "decompilers\javajdgui"; Description: "[JAVA] JD-GUI"; Types: full; +Name: "decompilers\javajdgui"; Description: "[JAVA] JD-GUI"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Decompilers\[JAVA] JD-GUI\*"; DestDir: "{#MyAppToolsFolder}\Decompilers\[JAVA] JD-GUI"; Components: "decompilers\javajdgui"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -117,7 +117,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Decompilers\[JAVA] JD-GUI"; Filename: "{ ; [JAVA] Recaf [Components] -Name: "decompilers\javarecaf"; Description: "[JAVA] Recaf"; Types: full compact; +Name: "decompilers\javarecaf"; Description: "[JAVA] Recaf"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Decompilers\[JAVA] Recaf\*"; DestDir: "{#MyAppToolsFolder}\Decompilers\[JAVA] Recaf"; Components: "decompilers\javarecaf"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/dissasembler.iss b/bin/installer/sections/dissasembler.iss index 512a97a..7f5de86 100644 --- a/bin/installer/sections/dissasembler.iss +++ b/bin/installer/sections/dissasembler.iss @@ -13,7 +13,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Dissasembler\BDASM"; Filename: "{#MyAppT ; Cutter [Components] -Name: "dissasembler\cutter"; Description: "Cutter"; Types: full; +Name: "dissasembler\cutter"; Description: "Cutter"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Dissasembler\Cutter\*"; DestDir: "{#MyAppToolsFolder}\Dissasembler\Cutter"; Components: "dissasembler\cutter"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -65,7 +65,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Dissasembler\w32Dasm"; Filename: "{#MyAp ; x64dbg [Components] -Name: "dissasembler\x64dbg"; Description: "x64dbg"; Types: full compact; +Name: "dissasembler\x64dbg"; Description: "x64dbg"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Dissasembler\x64dbg\*"; DestDir: "{#MyAppToolsFolder}\Dissasembler\x64dbg"; Components: "dissasembler\x64dbg"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/hex-editor.iss b/bin/installer/sections/hex-editor.iss index 7015f08..e23691c 100644 --- a/bin/installer/sections/hex-editor.iss +++ b/bin/installer/sections/hex-editor.iss @@ -1,6 +1,6 @@ ; HxD [Components] -Name: "hexeditor\hxd"; Description: "HxD"; Types: full compact; +Name: "hexeditor\hxd"; Description: "HxD"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\HEX Editor\HxD\*"; DestDir: "{#MyAppToolsFolder}\HEX Editor\HxD"; Components: "hexeditor\hxd"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -17,7 +17,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\HEX Editor\HxD x64"; Filename: "{#MyAppT ; ImHex [Components] -Name: "hexeditor\imhex"; Description: "ImHex"; Types: full compact; +Name: "hexeditor\imhex"; Description: "ImHex"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\HEX Editor\ImHex\*"; DestDir: "{#MyAppToolsFolder}\HEX Editor\ImHex"; Components: "hexeditor\imhex"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/monitor.iss b/bin/installer/sections/monitor.iss index 7b7cb8a..1b8731f 100644 --- a/bin/installer/sections/monitor.iss +++ b/bin/installer/sections/monitor.iss @@ -1,6 +1,6 @@ ; Api Monitor [Components] -Name: "monitor\apimonitor"; Description: "Api Monitor"; Types: full; +Name: "monitor\apimonitor"; Description: "Api Monitor"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Monitor\Api Monitor\*"; DestDir: "{#MyAppToolsFolder}\Monitor\Api Monitor"; Components: "monitor\apimonitor"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -99,7 +99,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Monitor\Portmon"; Filename: "{#MyAppTool ; Process Explorer [Components] -Name: "monitor\processexplorer"; Description: "Process Explorer"; Types: full; +Name: "monitor\processexplorer"; Description: "Process Explorer"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Monitor\Process Explorer\*"; DestDir: "{#MyAppToolsFolder}\Monitor\Process Explorer"; Components: "monitor\processexplorer"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -116,7 +116,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Monitor\Process Explorer x64"; Filename: ; Process Hacker 3 [Components] -Name: "monitor\processhacker3"; Description: "Process Hacker 3"; Types: full compact; +Name: "monitor\processhacker3"; Description: "Process Hacker 3"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Monitor\Process Hacker 3\*"; DestDir: "{#MyAppToolsFolder}\Monitor\Process Hacker 3"; Components: "monitor\processhacker3"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -133,7 +133,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Monitor\Process Hacker 3 x64"; Filename: ; Procmon [Components] -Name: "monitor\procmon"; Description: "Procmon"; Types: full compact; +Name: "monitor\procmon"; Description: "Procmon"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Monitor\Procmon\*"; DestDir: "{#MyAppToolsFolder}\Monitor\Procmon"; Components: "monitor\procmon"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -180,7 +180,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Monitor\SysAnalyzer"; Filename: "{#MyApp ; TCPView [Components] -Name: "monitor\tcpview"; Description: "TCPView"; Types: full compact; +Name: "monitor\tcpview"; Description: "TCPView"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Monitor\TCPView\*"; DestDir: "{#MyAppToolsFolder}\Monitor\TCPView"; Components: "monitor\tcpview"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/other.iss b/bin/installer/sections/other.iss index 6d8ceba..a17800b 100644 --- a/bin/installer/sections/other.iss +++ b/bin/installer/sections/other.iss @@ -13,7 +13,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\APKEasyTool"; Filename: "{#MyAppTo ; ApkStudio [Components] -Name: "other\apkstudio"; Description: "ApkStudio"; Types: full; +Name: "other\apkstudio"; Description: "ApkStudio"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Other\ApkStudio\*"; DestDir: "{#MyAppToolsFolder}\Other\ApkStudio"; Components: "other\apkstudio"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -52,7 +52,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\AVFucker"; Filename: "{#MyAppTools ; FLOSS [Components] -Name: "other\floss"; Description: "FLOSS"; Types: full; +Name: "other\floss"; Description: "FLOSS"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Other\FLOSS\*"; DestDir: "{#MyAppToolsFolder}\Other\FLOSS"; Components: "other\floss"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -65,7 +65,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\FLOSS x64"; Filename: "{sys}\cmd.e ; HashCalc [Components] -Name: "other\hashcalc"; Description: "HashCalc"; Types: full compact; +Name: "other\hashcalc"; Description: "HashCalc"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Other\HashCalc\*"; DestDir: "{#MyAppToolsFolder}\Other\HashCalc"; Components: "other\hashcalc"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -151,7 +151,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\Process-Dump x64"; Filename: "{sys ; Resource Hacker [Components] -Name: "other\resourcehacker"; Description: "Resource Hacker"; Types: full compact; +Name: "other\resourcehacker"; Description: "Resource Hacker"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Other\Resource Hacker\*"; DestDir: "{#MyAppToolsFolder}\Other\Resource Hacker"; Components: "other\resourcehacker"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -164,7 +164,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\Resource Hacker"; Filename: "{#MyA ; Scylla [Components] -Name: "other\scylla"; Description: "Scylla"; Types: full; +Name: "other\scylla"; Description: "Scylla"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Other\Scylla\*"; DestDir: "{#MyAppToolsFolder}\Other\Scylla"; Components: "other\scylla"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -224,7 +224,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\Threadtear"; Filename: "{#MyAppToo ; VirusTotalUploader [Components] -Name: "other\virustotaluploader"; Description: "VirusTotalUploader"; Types: full compact; +Name: "other\virustotaluploader"; Description: "VirusTotalUploader"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Other\VirusTotalUploader\*"; DestDir: "{#MyAppToolsFolder}\Other\VirusTotalUploader"; Components: "other\virustotaluploader"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -237,7 +237,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Other\VirusTotalUploader"; Filename: "{# ; x64dbgPluginManager [Components] -Name: "other\x64dbgpluginmanager"; Description: "x64dbgPluginManager"; Types: full; +Name: "other\x64dbgpluginmanager"; Description: "x64dbgPluginManager"; Types: full typical; [Files] Source: "{#MySrcDir}\toolkit\Other\x64dbgPluginManager\*"; DestDir: "{#MyAppToolsFolder}\Other\x64dbgPluginManager"; Components: "other\x64dbgpluginmanager"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/rootkits-detector.iss b/bin/installer/sections/rootkits-detector.iss index 678a769..c0c3e26 100644 --- a/bin/installer/sections/rootkits-detector.iss +++ b/bin/installer/sections/rootkits-detector.iss @@ -1,6 +1,6 @@ ; GMER [Components] -Name: "rootkitsdetector\gmer"; Description: "GMER"; Types: full compact; +Name: "rootkitsdetector\gmer"; Description: "GMER"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Rootkits Detector\GMER\*"; DestDir: "{#MyAppToolsFolder}\Rootkits Detector\GMER"; Components: "rootkitsdetector\gmer"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -13,7 +13,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\Rootkits Detector\GMER"; Filename: "{#My ; Sysinspector [Components] -Name: "rootkitsdetector\sysinspector"; Description: "Sysinspector"; Types: full compact; +Name: "rootkitsdetector\sysinspector"; Description: "Sysinspector"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\Rootkits Detector\Sysinspector\*"; DestDir: "{#MyAppToolsFolder}\Rootkits Detector\Sysinspector"; Components: "rootkitsdetector\sysinspector"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/sections/unpacking.iss b/bin/installer/sections/unpacking.iss index 81f0858..88c0733 100644 --- a/bin/installer/sections/unpacking.iss +++ b/bin/installer/sections/unpacking.iss @@ -47,7 +47,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\UnPacking\NETUnpack"; Filename: "{#MyApp ; QUnpack [Components] -Name: "unpacking\qunpack"; Description: "QUnpack"; Types: full compact; +Name: "unpacking\qunpack"; Description: "QUnpack"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\UnPacking\QUnpack\*"; DestDir: "{#MyAppToolsFolder}\UnPacking\QUnpack"; Components: "unpacking\qunpack"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -64,7 +64,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\UnPacking\QUnpack x64"; Filename: "{#MyA ; RL!dePacker [Components] -Name: "unpacking\rldepacker"; Description: "RL!dePacker"; Types: full compact; +Name: "unpacking\rldepacker"; Description: "RL!dePacker"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\UnPacking\RL!dePacker\*"; DestDir: "{#MyAppToolsFolder}\UnPacking\RL!dePacker"; Components: "unpacking\rldepacker"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -77,7 +77,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\UnPacking\RL!dePacker"; Filename: "{#MyA ; UniExtract [Components] -Name: "unpacking\uniextract"; Description: "UniExtract"; Types: full compact; +Name: "unpacking\uniextract"; Description: "UniExtract"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\UnPacking\UniExtract\*"; DestDir: "{#MyAppToolsFolder}\UnPacking\UniExtract"; Components: "unpacking\uniextract"; Flags: ignoreversion recursesubdirs createallsubdirs; @@ -103,7 +103,7 @@ Name: "{#MyAppBinsFolder}\sendto\sendto\UnPacking\VMUnpacker"; Filename: "{#MyAp ; XVolkolak [Components] -Name: "unpacking\xvolkolak"; Description: "XVolkolak"; Types: full compact; +Name: "unpacking\xvolkolak"; Description: "XVolkolak"; Types: full compact typical; [Files] Source: "{#MySrcDir}\toolkit\UnPacking\XVolkolak\*"; DestDir: "{#MyAppToolsFolder}\UnPacking\XVolkolak"; Components: "unpacking\xvolkolak"; Flags: ignoreversion recursesubdirs createallsubdirs; diff --git a/bin/installer/setup.iss b/bin/installer/setup.iss index dd70c83..48cd075 100644 --- a/bin/installer/setup.iss +++ b/bin/installer/setup.iss @@ -40,6 +40,11 @@ Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl" Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl" Name: "portuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl" +[Types] +Name: "full"; Description: "Full installation" +Name: "compact"; Description: "Compact installation" +Name: "typical"; Description: "Typical installation"; Flags: iscustom + [Components] Name: "analysis"; Description: "Analysis tools"; Types: full; #include "sections\analysis.iss"