Script that will allow you to easily generate an index file (with encryption if needed) for use with Tinfoil.
This project is a based on this project by BigBrainAFK.
NOTE: The token generated by this script can also be used with Tinfoil.
All tinfoil indexes are generated with the following format: Tinfoil-New-Index-Info.md
- Python 3
- Modules from
requirements.txt
found in the root of project directory. credentials.json
(or any file name if using--credentials
flag to pass custom location for the required credential file). It can be obtained from here by clicking theEnable Drive API
button in there while being signed in with the user account you want to generate credentials for or from Google's Developer Console.- Google Drive Folder IDs to scan and index.
Execute the following command in a terminal to install all the required modules.
pip install -r requirements.txt
Usage instructions can be found here.
usage: TinGen.py [-h] [--credentials CREDENTIALS_FILE_NAME] [--token TOKEN_FILE_PATH] [--headless]
[--index-file INDEX_FILE_PATH] [--share-files] [--no-recursion]
[--add-nsw-files-without-title-id] [--add-non-nsw-files]
[--success SUCCESS_MESSAGE] [--encrypt] [--public-key PUBLIC_KEY_FILE_PATH]
[--vm-file VM_FILE] [--upload-to-folder-id UPLOAD_FOLDER_ID]
[--upload-to-my-drive] [--new-upload-id] [--share-uploaded-index]
[--zstandard | --zlib | --no-compress]
[FOLDER_ID_TO_SCAN [FOLDER_ID_TO_SCAN ...]]
Script that will allow you to generate an index file with Google Drive file links for use with
Tinfoil
positional arguments:
FOLDER_ID_TO_SCAN Folder IDs of Google Drive folders to scan
optional arguments:
-h, --help show this help message and exit
--credentials CREDENTIALS_FILE_NAME
Path to Google Application Credentials
--token TOKEN_FILE_PATH
Path to Google OAuth2.0 User Token
--headless Allows to perform Google OAuth2.0 User Token Authentication in headless
environment
--index-file INDEX_FILE_PATH
Path to output index file
--share-files Share all files inside the index file
--no-recursion Scans for files only in top directory for each Folder ID entered
--add-nsw-files-without-title-id
Adds files without valid Title ID
--add-non-nsw-files Adds files without valid NSW ROM extension(NSP/NSZ/XCI/XCZ) to index
--success SUCCESS_MESSAGE
Adds a success message to index file to show if index is successfully read
by Tinfoil
--encrypt Encrypts the resulting index file with AES-ECB-256
--public-key PUBLIC_KEY_FILE_PATH
Path to RSA Public Key to encrypt AES-ECB-256 key with
--vm-file VM_FILE Path to VM File
--upload-to-folder-id UPLOAD_FOLDER_ID
Upload resulting index to Folder ID supplied
--upload-to-my-drive Upload resulting index to My Drive
--new-upload-id Uploads the newly generated index file with a new File ID instead of
replacing old one
--share-uploaded-index
Shares the index file that is uploaded to Google Drive
--zstandard, --zstd Compresses index with Zstandard compression method
--zlib Compresses index with zlib compression method
--no-compress Flag to not compress index
- BigBrainAFK for inital crypto script for index encryption.
- blawar for tinfoil and for early access to details about new index format and supported compression methods and also for helping me with my dumb questions.