Nintendo Switch Cleaner and Builder. A batchfile, python and html script based in hacbuild and Nut's python libraries. Designed initially to erase titlerights encryption from nsp files and make multicontent nsp/xci files, nowadays is a multicontent tool specialized in batch processing and file information, someone called it a Switch's knife and he may be right.
MIT License
Bot releases are hidden (Show)
Resources
DBI 156 was launched, you can get it directly from the kefir pack:
https://github.com/rashevskyv/switch/releases/
It can also be downloaded individually as nro or nsp here.
You can find information on how to setup NSCB libraries, google drive auth tokens and 1 fichier auth tokens here:
Here's also a little readme with some DBI information:
https://github.com/julesontheroad/NSC_BUILDER/tree/master/py/Documentation%20and%20Resources/DBI
Note: x86 build is made with pyinstaller 4.0 if you get a false positive in the antivirus is a common ocurrence with newer pyinstaller, referenced here:
https://github.com/pyinstaller/pyinstaller/issues/4633
https://github.com/pyinstaller/pyinstaller/issues/4724
DBI installation setup and save management changes on 155, this release supports both older DBI versions and newer ones.
This option only has an effect on DBI>155, matching a newer DBI function.
This option will support installation of multiprogram and normal xci|xcz files from google drive. It won't support multiprogram files from google drive on this version, these kind of files are supported for local installation on any format or as nsp|nsz.
Known multiprogram files are Super Mario 3D All-Stars, Grandia Collection, Hotline Miami Collection, ...
User can now setup the locations DBI will scan on the SD card to find xci files on the zconfig\mtp_xci_locations.txt, this file already includes standard xci locations. If this file is removed DBI will scan the whole SDCard so it's not recommended to remove it but to add or delete locations to it if needed.
When selection from game registry is activated the autostart is set to false and user will be asked to manually select what games to update via the file picker.
This function won't check which games are installed or xci on the SDCard, instead it will use the game registry that includes archived games and registered xci files, independently of their location. This will show files that are on a HDD for example.
File id is now added to text file, also files ids are now stored in json files on cache mode.
The tkinter file selector that uses windows browser now allows to select multiple files at once if they are on the same folder.
Multiprogram files with removed titlerights will give a false corruption positive for html manual files, this issue has been corrected. A patched file is a file with titlerights removed or keygeneration changes
If database configuration is setup to a number higher than 9999 hours the autoupdate function is turned off. No autoupdate zip already includes this setup.
Published by julesontheroad about 4 years ago
x64 and x86 builds were missing the ztools/bin folder which will make mtp mode crash. If you downloaded those you're using the old nscb_mtp.exe which won't support DBI>155 and doesn't have the latest improvements so is recommended to redownload.
Fixed latest DBI link 138 -> 156
Resources
DBI 156 was launched, you can get it directly from the kefir pack:
https://github.com/rashevskyv/switch/releases/
It can also be downloaded individually as nro or nsp here.
You can find information on how to setup NSCB libraries, google drive auth tokens and 1 fichier auth tokens here:
Here's also a little readme with some DBI information:
https://github.com/julesontheroad/NSC_BUILDER/tree/master/py/Documentation%20and%20Resources/DBI
DBI installation setup and save management changes on 155, this release supports both older DBI versions and newer ones.
This option only has an effect on DBI>155, matching a newer DBI function.
This option will support installation of multiprogram and normal xci|xcz files from google drive. It won't support multiprogram files from google drive on this version, these kind of files are supported for local installation on any format or as nsp|nsz.
Known multiprogram files are Super Mario 3D All-Stars, Grandia Collection, Hotline Miami Collection, ...
User can now setup the locations DBI will scan on the SD card to find xci files on the zconfig\mtp_xci_locations.txt, this file already includes standard xci locations. If this file is removed DBI will scan the whole SDCard so it's not recommended to remove it but to add or delete locations to it if needed.
When selection from game registry is activated the autostart is set to false and user will be asked to manually select what games to update via the file picker.
This function won't check which games are installed or xci on the SDCard, instead it will use the game registry that includes archived games and registered xci files, independently of their location. This will show files that are on a HDD for example.
File id is now added to text file, also files ids are now stored in json files on cache mode.
The tkinter file selector that uses windows browser now allows to select multiple files at once if they are on the same folder.
Multiprogram files with removed titlerights will give a false corruption positive for html manual files, this issue has been corrected. A patched file is a file with titlerights removed or keygeneration changes
If database configuration is setup to a number higher than 9999 hours the autoupdate function is turned off. No autoupdate zip already includes this setup.
Published by julesontheroad about 4 years ago
Resources
DBI 138 was launched, you can get it directly from the kefir pack:
https://github.com/rashevskyv/switch/releases/tag/462
It can also be downloaded individually as nro or nsp here.
You can find information on how to setup NSCB libraries, google drive auth tokens and 1 fichier auth tokens here:
Here's also a little readme with some DBI information:
https://github.com/julesontheroad/NSC_BUILDER/tree/master/py/Documentation%20and%20Resources/DBI
Fixed issue where autoupdater from google drive may not show messages in some system triggered by windows-curses.
Fixed issue #183 where window selector wasn't working. Added file extension filter to window selector dependent of the mode it is called from.
Added exceptions to handle possible situations when parsing non tagged xci files on SD. These files are ignored when id,version,etc.. can't be parsed correctly from name (missing tags).
Fixed issue where generating or updating cache libraries from google drive will except when the google api called doesn't return any data.
Fixes to functions in mtp_gdrive.py where the use of curses prevented some prints on filters.
Fixed indentation in mtpsp and mtpxci library which derived in "No module named 'mtpsp'" and "No module named 'mtxci'" errors in the exe builds.
Fixed issue where on some systems some search filters wouldn't show the message asking for an input.
Fixed bug introduced by 1.00 that would stop the databases update in the middle of the process.
If you already setup 1.00 just override ztools by the 1.00d version. There's no changes in the config files.
NSCB.exe is a small .net console app that opens NSCB.bat inside itself when it's in the same folder. It supports Drag and Drop for auto mode and allows to hook NSCB to the windows bar or the start section in windows 10. First version doesn't support configurations though a second one will at least allow redirection via a config file.
Information on how to setup NSCB.exe and source here. By recompiling the source you can change the icon or paths NSCB.exe points into. I'll add some configuration choices in the future.
NSCB 1.0 can install now nsp, nsz, xci, xcz over usb-mtp with the help of DBI directly on the switch without preconversion. It supports multiprogram xci and multicontent xci too.
Multicontent xci or nsp will virtually be separated in several files which will trigger different installations per content.
Checking on content installed for each content in the multifile wasn't yet implemented but will be on 1.01.
If activated NSCB 1.0 will patch directly the stream during installation without preconversion to lower keygeneration if the reported FW on the Switch is lower than the required by the installed files.
Additionally a standard crypto option was implemented, if activated trough the configuration files will always be installed as ticketless, removing titlerights on the fly.
With NSCB 1.0 xci and multixci can be created directly on the SD from xci and nsp sources. If sources include nsz or xcz the xci will be created first locally on the PC and transfer to the Switch.
The reason for this behavior is that zstd decompression and re-encryption wasn't yet implemented on the mtp api hook.
Folder walker will allow you to search on any folder on pc or google drive. The first folder-walker step is searching a folder, if the folder is the final folder on the path it will change automatically to the file phase.
In case the folder isn't the end of the path you change to file phase by pressing "E" as the file-picker instructions specify. On the local sources walker a second option is offered "R" or recursive, this option will show files in current folder and in it's subdirectories, beware since it'll be slower if there's hundreds of thousands of files between the directory and subdirectories.
The walker will filter file extensions depending on the supported extensions on each mode, while mtp filetransfer won't hide extensions other modes may only show nsp,nsz,xci,xcz, ... depending on what each mode supports.
Folder-Walker also supports search filters and file sorting by size, date and name.
Al local modes will now use the local libraries if setup, With support for search filters and file sorting by size, date and name.
This function will only work properly if run minimized is activated. Both will work properly with the noconsole option too but run minimized is needed.
Note: When moving from noconsole to console-attached versions of server and interface run the option twice, the first time after the change is possible that output doesn't show on the console, from the second time onwards you should be able to see output properly.
Published by julesontheroad about 4 years ago
Resources
DBI 138 was launched, you can get it directly from the kefir pack:
https://github.com/rashevskyv/switch/releases/tag/462
It can also be downloaded individually as nro or nsp here.
You can find information on how to setup NSCB libraries, google drive auth tokens and 1 fichier auth tokens here:
Here's also a little readme with some DBI information:
https://github.com/julesontheroad/NSC_BUILDER/tree/master/py/Documentation%20and%20Resources/DBI
Fixes to functions in mtp_gdrive.py where the use of curses prevented some prints on filters.
Fixed indentation in mtpsp and mtpxci library which derived in "No module named 'mtpsp'" and "No module named 'mtxci'" errors in the exe builds.
Fixed issue where on some systems some search filters wouldn't show the message asking for an input.
Fixed bug introduced by 1.00 that would stop the databases update in the middle of the process.
If you already setup 1.00 just override ztools by the 1.00c version. There's no changes in the config files.
NSCB.exe is a small .net console app that opens NSCB.bat inside itself when it's in the same folder. It supports Drag and Drop for auto mode and allows to hook NSCB to the windows bar or the start section in windows 10. First version doesn't support configurations though a second one will at least allow redirection via a config file.
Information on how to setup NSCB.exe and source here. By recompiling the source you can change the icon or paths NSCB.exe points into. I'll add some configuration choices in the future.
Note: NSCB.exe is not needed, it's reason is to be able to link the program to the windows bar or init section. You can keep using the NSCB.bat if you feel more comfortable with it, NSCB.exe can also be deleted since it's equivalent to a shortcut.
NSCB 1.0 can install now nsp, nsz, xci, xcz over usb-mtp with the help of DBI directly on the switch without preconversion. It supports multiprogram xci and multicontent xci too.
Multicontent xci or nsp will virtually be separated in several files which will trigger different installations per content.
Checking on content installed for each content in the multifile wasn't yet implemented but will be on 1.01.
If activated NSCB 1.0 will patch directly the stream during installation without preconversion to lower keygeneration if the reported FW on the Switch is lower than the required by the installed files.
Additionally a standard crypto option was implemented, if activated trough the configuration files will always be installed as ticketless, removing titlerights on the fly.
With NSCB 1.0 xci and multixci can be created directly on the SD from xci and nsp sources. If sources include nsz or xcz the xci will be created first locally on the PC and transfer to the Switch.
The reason for this behavior is that zstd decompression and re-encryption wasn't yet implemented on the mtp api hook.
Folder walker will allow you to search on any folder on pc or google drive. The first folder-walker step is searching a folder, if the folder is the final folder on the path it will change automatically to the file phase.
In case the folder isn't the end of the path you change to file phase by pressing "E" as the file-picker instructions specify. On the local sources walker a second option is offered "R" or recursive, this option will show files in current folder and in it's subdirectories, beware since it'll be slower if there's hundreds of thousands of files between the directory and subdirectories.
The walker will filter file extensions depending on the supported extensions on each mode, while mtp filetransfer won't hide extensions other modes may only show nsp,nsz,xci,xcz, ... depending on what each mode supports.
Folder-Walker also supports search filters and file sorting by size, date and name.
Al local modes will now use the local libraries if setup, With support for search filters and file sorting by size, date and name.
This function will only work properly if run minimized is activated. Both will work properly with the noconsole option too but run minimized is needed.
Note: When moving from noconsole to console-attached versions of server and interface run the option twice, the first time after the change is possible that output doesn't show on the console, from the second time onwards you should be able to see output properly.
Published by julesontheroad over 4 years ago
DBI is a installer made by DuckBill and the Kefir Team in a similar fashion as old tinfoil by Adubbz with extended functions and a MTP responder mode that allows access to the Nintendo Switch via the MTP protocol to transfer files between Switch and pc and to get several information from the switch like installed games, storage used, firmware on the Switch, etc...
When you open the nro or installed DBI program on your switch and run the MTP responder option you'll be able to connect your switch via usb to your pc, allowing NSC_Builder v0.99 to work together with DBI an access your Switch providing a whole lot of functions.
The tested version of DBI is 1.25, which can be downloaded as part of the following keffir release:
https://github.com/rashevskyv/switch/releases/tag/456
It can also be downloaded individually as nro or nsp here:
More information about DBI here:
Transfer any file from local or remote locations.
DBI allows transfers of more than 4GB via mtp autoarchiving in Nintendo format, that means the transfer mode can transfer with ease xcis or movies to the setup locations on the SD.
To get full support for every function on NSCB mtp mode you'll need to setup several library files, examples for this files can be found in zconfig. You'll have to edit the example and delete the example tag in the file name. Specifically mtp mode makes use of the files depicted in this section. Bellow you can find the meaning of each file and how to set it up.
mtp_download_libraries_example.txt > mtp_download_libraries.txt
Libraries to setup the dumps and savegames and in general files the pc receives from the Switch.
Setup: library_name|path
Example: Dumps|C:\Dumps
mtp_SD_libraries_example.txt > mtp_SD_libraries.txt
Libraries to setup the folders in which the switch will receive files pushed with the transfer function.
Setup: library_name|path
Example: SD_XCI|1: External SD Card\sxos\xci
As you can see the SD locations starts with *1: External SD Card* this is the name of the SD mount DBI makes on your pc, start your locations on the sd with that string.
mtp_source_libraries_example.txt > mtp_source_libraries.txt
Libraries to setup the local folders from your pc that will be used by the autoupdate function to search for new files, as well as with the install and transfer functions.
Setup: library_name|path|Update
Example: BASE|C:\NSP\BASE|FALSE or UPDATES|C:\NSP\UPDATES|TRUE
As you can see a Update parameter is added, this sets up what folders are scanned in the autoupdate function. If TRUE the folder is scanned if FALSE it won't get scanned. The non scanned libraries will get used by the installer and transfer mode in the future.
remote_libraries_example.txt > remote_libraries.txt
Libraries to setup the google drive folders that will be used by the remote installer, remote autoupdater and remote transfer functions.
It will also be used in the NSCB Drive Mode and in the library function from NSCB Web Interface.
Setup: library_name|path|TD_name|Update
Example: BASE|drive:/base|TD_Name|FALSE or UPD|drive:/updates|None|TRUE
The Update parameter sets up what folders are scanned in the autoupdate function. If TRUE the folder is scanned if FALSE it won't get scanned. The non scanned libraries are used by the remote installer and remote transfer functions.
The TD parameter is used when your files or folders are in a TeamDrive or Shared Drives as are called currently. If your files aren't in a TD input None there or ||. With double bar it'll look as UPD|drive:/updates||TRUE
Remember that drive is your token name.
remote_cache_location_example.txt > remote_cache_location.txt
Folder in your google drive account where public files are stored to avoid quota and get a better support on the google drive API. Is recommended for the Interface and required for the mtp mode when using public links.
Setup: library_name|path|TD_name
Example: cache|token:/cache| or cache|drive:/cache|TDName
As you can see if you don't have a TD just add a | at the end, you can also add None if you have a TD add your TeamDrive name.
local_libraries_example.txt > local_libraries.txt
Folder where your local library is stored. This is used currently by the HTML interface local libraries
Setup: library_name|path
Example: Folder1|C:\Nintendo
download_libraries_example.txt > download_libraries.txt
This is used on the Drive mode to setup folder where the program will download or generate files
Setup: library_name|path
Example: Folder1|C:\Downloads
To enable the google drive api you need to go here https://developers.google.com/drive/api/v3/quickstart/python and press on Enable the drive api, select Desktop App, press Create and the press Download Client Configuration, you'll get a credentials json.
You can use that file to generate tokens for any account, but you'll get a message of not verified app if you use it with a different account. This is unrelated to NSCB since you're using your own app, setup with that credentials file
Once a token is generated you can delete the credentials file though you can also have several files renamed as token_name.json Token name is the name of the token you plan to setup on the next step.
To setup the token, open NSCB go to configuration and google drive configuration, then press 1 to register an account, it'll ask you the name of the token, once you input that a browser will be open and you'll log into the account you mean to setup.
The token name is important NSCB uses your token as if it was a path letter, so a token called mydrive will be able to setup locations such as mydrive:/Switch/nsp
For 1fichier auth you need to store the 1fichier token in zconfig/credentials with the name _1fichier_token.tk
To get the token you need a 1fichier account, then in this page https://1fichier.com/console/params.pl you'll find a section called API Key, press in Enable API usage, get the key and paste it in an empty txt file, then rename the file to _1fichier_token.tk
Published by julesontheroad over 4 years ago
squirrel.py -lib_call Drive.private create_token "token_name"
Go to zconfig and use "remote_libraries_example.txt" to create a "remote_libraries.txt"
Parameters are Library_Name, Route\Path (starting by token_name) and Team Drive Name.
If the location isn't in a TD put None in the last parameter.
Go to zconfig and use "download_libraries_example.txt" to create a "download_libraries.txt"
Parameters are Library_Name, System Path to folder
* Folders and libraries allow for filter search and when needed the program will allow you to select the TD for the account.
* Folders and libraries allow for search using a name.
* When a xci\xcz\nsz file is detected you will be prompt to select the options to handle it: (uncompress\trimm\supertrimm ...)
Published by julesontheroad almost 5 years ago
squirrel.py -lib_call Drive.private create_token "token_name"
Go to zconfig and use "remote_libraries_example.txt" to create a "remote_libraries.txt"
Parameters are Library_Name, Route\Path (starting by token_name) and Team Drive Name.
If the location isn't in a TD put None in the last parameter.
Go to zconfig and use "download_libraries_example.txt" to create a "download_libraries.txt"
Parameters are Library_Name, System Path to folder
* Folders and libraries allow for filter search and when needed the program will allow you to select the TD for the account.
* Folders and libraries allow for search using a name.
* When a xci\xcz\nsz file is detected you will be prompt to select the options to handle it: (uncompress\trimm\supertrimm ...)
Published by julesontheroad almost 5 years ago
Published by julesontheroad almost 5 years ago
In tests i managed to compress 20 files at the same time while keeping a 2-3Mb\s speed ratio per file with level 22 compression. This will depend on your computer or server.
Published by julesontheroad almost 5 years ago
Published by julesontheroad almost 5 years ago
Rommenu SX OS gallery installer currently doesn't work properly with games using master_key_09\keygeneration 10. These won't install properly in that installer and xci or cxci that uses that masterkey will show a white icon in the loader, though they will mount properly due to the system handling that part.
The solution is to lower the keygeneration, as it happened before in FW 6.2 if my memory serves me right. I checked and lowering these games to keygeneration 9 (master_key_08) will show the icons as expected and allow to install those games under that installer.
If you only plan to install them remember you can use other alternative like SX Installer, tinfoil, OGTinfoil, lithium or goldleaf.
Published by julesontheroad almost 5 years ago
Note: All the building processes and verification of unmodified files were unafected the
issue was in header restoration to keygeneration10 since it must be specified in hex as
0A instead of 10.
Published by julesontheroad about 5 years ago
Published by julesontheroad about 5 years ago
Note: Nothing to do with SX OS note or xci game-info, that wasn't changed since hacbuild got replaced by squirrel in v0.79 f(27 of January 2019). Any xci gameinfo after that date is perfectly fine and previous xcis can get fixed when reprocessed.
Note 2: You'll note decompression has a higher listed size in the bar, it's actually not measuring final size but writes, since the decompressed plaintext is written first and then gets encrypted to restore the ncas to original form. Even if it looks a little weird i thought it was more understandable than tqdm cycles.
Note 3: Corrected settings in nutdb_not_auto_update.zip it was set to update each 24h by mistake.
Note 4: Remember, if you don't use internet with the program you need to download the nutdb_not_auto_update.zip and unzip it's contents into zconfig.
Published by julesontheroad about 5 years ago
https://github.com/blawar/nsz
Published by julesontheroad about 5 years ago
Yes, it has game-icons, pictures and that stuff you guys like.
* Game Information. Combines data read from file with eshop data from nutdb
* Description: Description from the eshop (nutdb)
* Image Gallery: Pictures from the eshop (nutdb)
* BaseID File-Tree: Shows the lates version for dlcs and updates associated to the game (nutdb)
* Titles: Advanced Files List from NSCB-new
* NACP Reader from NSCB
* NPDM Reader from NSCB
* CNMT Reader from NSCB
* Verification from NSCB, till Level 2 so it's loaded fast. Use normal NSCB for hashing for now.
* CSS probably needs some work, specially for fullscreen.
* Upper corner menu is a placeholder
* NPDM decryption is failing in some games, is on my TODO list
* Multicontent files (generally xci) may need some work to improve parsing speeds
* Not reading yet splitted files (ns*,xc*,0*) but will add that soon
* Output css to a file for theming
* Language translations
* Porting NSCB functions
* Let user choose nutdb files
* If you have Chrome or Chromium Installed you're good to go.
* If you don't want to install those browsers you can use chromium portable.
1. Get the last version for your system here: https://chromium.woolyss.com/
2. Create a folder in ztools called "Chromium"
3. Decompress the chromium files somewhere in your pc and execute "chrlauncher 2.5.6 (64-bit).exe" or whatever is called in your zip to get the needed files downloaded
4. Move all files to ztools\Chromium and rename "chrlauncher 2.5.6 (64-bit).exe" to "chrlauncher.exe". This takes priority over a chrome\chromium installation
* Once you have all setup just execute "Interface.bat"
5. Remember you need to fill keys_template.txt in ztools but i imagine you already know that
* Just get latest python 3.7.X and install these dependencies:
urllib3 unidecode tqdm bs4 tqdm requests image pywin32 pycryptodome pykakasi
googletrans chardet eel bottle
* Now the tricky part, I use the unreleased version of eel that isn't in pypy so go
here https://github.com/ChrisKnott/Eel Download the master, seek the folder where
your eel installation is and overwrite the files with the ones in the master.
If you have trouble finding it try doing again pip install eel it'll tell you is
up to date and installed in 'X' folder.
* Then execute "Interface.bat"
* Well i tested it on linux and i'll give you a build at a later time, have to admit I didn't test anything on mac though i imagine it works
* Install python and:
urllib3 unidecode tqdm bs4 tqdm requests image pycryptodome pykakasi googletrans chardet eel bottle
* Basically same as before ignoring pywin32 that NSCB uses to set the archive bit in folders
* Replace the eel files for the ones in the master like explained above.
* Run squirrel with:
squirrel.py -lib_call Interface start
* Or wait a few days for a build if you don't like python
* Added BuildID to gameinfo
* Fixed issue where fat32 files are bigger than the allowed block in fat32 cards
* Couldn't fixed the issue where some files are a little smaller when using mode2 yetbut tested the files itself and they work fine, remember SX OS allows any block size for splitted files in ns0 and xc0 formats.
* Fixed issue in untrimmer.
* Added check when refreshing nutdb against 404 errors
* Added force update option for nutdb in MODE0: CONFIGURATION
* Added hash for masterkey9
* Added options in verification to check 9.0 RSV
* Added keygeneration10 to the patch limit in all options
* Probably something else that I don't remember.
* Fixed times in not autoupdate zip.
* Changed packed squirrel.exe system to onefolder. While less visually pleasing the gui made squirrel bigger which also increased the gui boot times. Onefolder doesn't have the files compressed which gives it faster boot times
Published by julesontheroad about 5 years ago
Published by julesontheroad about 5 years ago
Published by julesontheroad about 5 years ago
Published by julesontheroad about 5 years ago
* Fixed another error that prevented the creation of titlerights removed multi-nsps
* Expanded xci trimming functions in indidual mode, after selecting trimming now there is these options:
- Supertrimmer. Removes ending padding, padding between partitions, logo partition, firmware from update partition and content from normal partition. Also removes game updates from the xci but keeps dlc. Respects certificates. Meant for xci installation on tinfoil while keeping file verification
- Supertrimmer respecting updates. Supertrimm that keeps game updates.
- Normal trimming: Removes "FFFF" end padding
- Untrimmer: Adds back "FFFF" end padding
* Fixed dlc naming. Current approach will use the nut json files. The json files are downoaded to the DB folder for speed on demand. The url and refresh time of the json files is controlled by "NUT_DB_TITLES_URL.txt" and "NUT_DB_REGIONS_URL.txt" in zconfig.
The refresh time has 3 parameters, representing hours, minutes and seconds. The defaulted time is 24h for each json used.
Be aware that the json files are downloaded by demand. Titles json will be downloaded for dlc renames and US region for descriptions, genres, etc... The json will only refresh themselves when the refresh period is reached and the json is needed.
* Fixed error in joiner mode
* Fixed false positive in decription verification for the updates included in 5 recent xci which exefs doesn't include a main.npdm.
* This option can be activated on the configuration.
Note: Too many workers can mess a little the console prints and need a little work for polished prints.
The writes to text files for the database operations are done on different files and joined after each cycle so they aren't affected.
NOTE: Exe versions while they worked fine don't seem to have the advantage on speed the python versions get it will be analized if it's due to the pyinstaller options used.
Included permanent database for nsp and xci with search functions,library management functions, autoupdates,... and restore mode.