When trying to run scripts/pretty with multiple ugly files staged, the
for loop would treat two space-separated file names as a single file
name. This prevented pretty from working on my machine.
I fixed this issue by making cachedJS() (renamed to cachedFiles since it
returns more than js files) return file names as a newline-separated
list and using IFS=$'\n' to split the filenames on this character.
On a vanilla invocation, `wine-pyinstaller.sh` will prepare a
Python-3.5 environment under Wine-3. The current requirements to run
the script are following:
1. p7zip-16.xx
2. Wine-3.xx
3. WinPython-3.5.4
All of [1-3] are available in Debian Testing or Ubuntu Bionic
repositories.
P.S.
WinPython was used since official Python-3.5.4 from Python.org wont
run under Wine. Python-3.6 is not supported yet under Wine-3.xx.
A default `npm run build` or a `scripts/build.sh` invocation would
not compile or sign `native_main.exe` anymore. This is a departure
from the previous logic where `PYINSTALLER=0` was needed to prevent
compile+signing of `native_main.exe`.
The following is achieved with this commit:
```
$ ## following does _not_ compile/sign `native_main.exe`
$ npm run build
$ PYINSTALLER=0 npm run build
$ ## following _does_ compile/sign `native_main.exe`
$ PYINSTALLER=1 npm run build
```
This commit adds support for comiling `native_main.py` into
`native_main.exe` using [PyInstaller][0].
By default, the Powershell installer script would use the compiled
EXE version for Windows. However, the old behaviour can achieved by
using the `-UsePython` flag to `win_install.ps1`.
Currently, the `native_main.exe` is built every time
`scripts/build.sh` is invoked. However, this behavior can be
adjusted by invoking the build script as shown below:
```
PYINSTALLER="0" npm run build
```
[0]: https://www.pyinstaller.org
The double-equals introduced by de39d704a5 and 19e3363c92
are bash-isms, and cause the script to complain when run
with another POSIX shell (e.g. dash, which is the default
/bin/sh on Debian).
We can just use "=" here, as the two are equivalent.