Usage
This document contains instructions and examples for using the vimm-dl
command.
Secure by Default
Before starting, it is important to note that vimm-dl
uses the
Deno runtime and is secure by default. In other words,
vimm-dl
is sandboxed and cannot access your system without your permission.
This design is intentional and helps protect you from any unforeseen
vulnerabilities within the code.
vimm-dl
will prompt you for any permission it needs during runtime. At a
minimum, vimm-dl
requires write permission to the destination folder where the
games will be saved. Here is an example prompt asking for write access to the
/home/vimm/Downloads
directory:
┌ ⚠️ Deno requests write access to "/home/vimm/Downloads".
├ Requested by `Deno.permissions.request()` API.
├ Run again with --allow-write to bypass this prompt.
└ Allow? [y/n/A] (y = yes, allow; n = no, deny; A = allow all write permissions) >
When you encounter a prompt like this, just review the request and choose if it should be allowed. Denying a permission will cause the the program to exit without proceeding further.
NOTE: To disable the sandboxing, you must compile your own binary with all permissions allowed. If this is what you would like, then I suggest checking out the Allowing All Permissions section of the Compiling from Source page.
Basic Usage
Download games from The Vault by supplying one or more
URLs to vimm-dl
. A table will be displayed which contains information about
the games to be downloaded. You will then be prompted to proceed with the
downloads which gives you an opportunity to review the table.
Download a game and save it in the ~/Downloads
folder:
vimm-dl https://vimm.net/vault/5953 --destination ~/Downloads
Download multiple games by providing more than one URL:
vimm-dl https://vimm.net/vault/5953 https://vimm.net/vault/5359 --destination ~/Downloads
Supply URLs from a Text File
You can instruct vimm-dl
to read URLs from a text file with the --file
option. The --file
option takes a path to a text file containing a
newline-separated list of IDs.
For example, here is a text file called vimm-dl.txt
which contains the
following:
https://vimm.net/vault/5953
https://vimm.net/vault/5359
https://vimm.net/vault/2344
You can tell vimm-dl
to read the URLs from this file like so:
vimm-dl --file ./vimm-dl.txt --destination ~/Downloads
If the --file
option has been provided, vimm-dl
will prioritize reading from
the file and ignore any URLs provided on the command line. So,
https://vimm.net/vault/7271
in the following command will be ignored:
vimm-dl https://vimm.net/vault/7271 --file ./vimm-dl.txt --destination ~/Downloads
Shell Completions
vimm-dl
can generate shell completions with the completions
subcommand. The
subcommand will output completions for the specified shell to stdout.
For example, you generate completions for FISH and redirect the output straight to its completions directory:
vimm-dl completions fish > ~/.config/fish/completions/vimm-dl.fish
Display the help menu for more information and to list the supported shell environments:
vimm-dl completions --help
Display the Help Menu
The help menu provides the complete list of options and other helpful
information. Use the --help
option to display the menu:
vimm-dl --help
Copyright © 2024 Foster Hangdaan
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page entitled GNU Free Documentation License.