Going down OpenWrap’s rabbit hole, the first thing you do is retrieve a fresh copy of o.exe, the Command shell. At a whopping 32k (for the debug build), you could get the initial file in 234 text messages. Lets open the file straight from the web site, and we’re greeted by installation options.
The OpenWrap shell is not installed on this machine. Do you want to: (i) install the shell and make it available on the path? (c) use the current executable location and make it available on the path? (n) do nothing?
I think the options are quite self-explanatory, but let’s recap:
- (i) will copy o.exe to ~/AppData/Local/OpenWrap/ and add this path to your PATH environment variable for the current user
- (c) will simply add an o.exe.link file in ~/AppData/Local/OpenWrap/ and add this path to your PATH
- (n) will do nothing this time around and run o.exe as normal.
Let’s choose the first option
OpenWrap packages not found. Attempting download. Downloading http://wraps.openwrap.org/bootstrap [....................] Downloading http://wraps.openwrap.org/wraps/openwrap-18.104.22.16879169.wrap [.............] Expanding pacakge... # OpenWrap v22.214.171.124 ['C:\Users\sebastien.lambla\AppData\Local\OpenWrap\wraps\_cache\openwrap-126.96.36.19979169'] Command was not understood. Type 'help' to get a list of supported commands.
I do hope that this is also quite self-explanatory, but just in case… When the shell tries to execute the first time, it will not find the OpenWrap packages anywhere. At that stage, it will go to the openwrap web-site and download the bootstrap packages to the correct location, which is just a list of URIs to download in a text file.
Once all this is done (and notice the wonderful typo in the output, you can check on github that this is all live code), the shell can now delegate to the openwrap code itself to parse the command. And as there was no command (remember, we started the application from a web browser), the system tells us that the command was not understood.
I tried to make it more complicated but I just didn’t have the time.