* upgrades-2:
Add code to get process IDs for daemon on Windows
Small bugfixes and typos
Refactor shutdown process
Add Mac and Windows installer launching
Minor style fixes and tweaks
Light refactoring of upgrade process - Use Node instead of lbrynet to get platform info - Factor out code that picks the download URI into its own function - Remove out-of-date code for checking old versions of MacOS
Make upgrade process better at killing old daemons
Also starts a detached process so the window doesn't get held open
(many GUI apps launch the interface in a new process, so xdg-open
returns immediately, but it's not guaranteed).
- Use Node instead of lbrynet to get platform info
- Factor out code that picks the download URI into its own function
- Remove out-of-date code for checking old versions of MacOS
- Manually call xdg-open instead of using shell.openItem(), which
doesn't reliably work from the main process
- If there's a connection error or timeout when asking the daemon
to close, fall back on force killing
- Use Node instead of lbrynet to get platform info
- Factor out code that picks the download URI into its own function
- Remove out-of-date code for checking old versions of MacOS
- Manually call xdg-open instead of using shell.openItem(), which
doesn't reliably work from the main process
- If there's a connection error or timeout when asking the daemon
to close, fall back on force killing
- Now asks the daemon to close, even if it wasn't started by the same
app
- Improved UX during upgrade process (cancel buttons, final dialog
where you approve the update, etc.)
- Saves updates in temp directory, closes app and launches the installer