status-desktop/windows-install.txt

43 lines
1.3 KiB
Plaintext
Raw Normal View History

build: implement packaging steps for the Windows build Implement a `pkg-windows` target that ultimately results in `Status.zip` being written to `pkg/`. Note: this commit does not introduce code signing for the Windows build since that piece is still a work in progress. `pkg-windows` creates a portable folder in `tmp/windows/dist` with the help of [`windeployqt`][windeployqt], which copies the needed portions of Qt into the folder. Since DLL resolution is relatively inflexible, a launcher `Status.exe` is created at the top-level of the folder; the launcher opens `bin/Status.exe` while adding the portable folder's `bin/` to the `PATH`, allowing `bin/Status.exe` to resolve the DLLs in that folder. A few additional tools need to be installed (e.g. with [scoop][scoop]) and availble in `PATH`: * 7-zip * dos2unix (provides unix2dos) * findutils * go * rcedit * wget The above list builds on the tools list in PR #521, and the other requirements and instructions in that PR's description still apply. **Why not build an installer?** When starting work on packaging for the Windows build, my initial plan was to build an installer, and for that purpose I researched the [WiX Toolset][wix], the [Qt Installer Framework][qtif], and some other options. I found that building an installer is a bit complex. I then recalled, from personal experience, that [Cmder][cmder]'s [Mini download][mini] is installer-less. You simply unzip the download and place the `cmder_mini` folder wherever you prefer. Such an approach was also recommended to me in one of the Nim language's community chats. In addition to being simpler, the installer-less approach also gives installation of Status Desktop a lower profile than an installer-application would since nothing is written to the Windows registry, added to the *Add or remove programs* list, etc. I think that's a benefit given the privacy-security focus of Status, but others may feel differently so please provide feedback on this point! [windeployqt]: https://doc.qt.io/qt-5/windows-deployment.html [scoop]: https://scoop.sh/ [wix]: https://wixtoolset.org/ [qtif]: https://doc.qt.io/qtinstallerframework/index.html [cmder]: https://cmder.net/ [mini]: https://github.com/cmderdev/cmder/releases/download/v1.3.15/cmder_mini.zip
2020-07-15 22:45:56 +00:00
REQUIREMENTS
============
This application requires 64-bit Windows 7 or newer.
INSTALLING
==========
After unzipping Status.zip, the Status folder can be placed wherever you prefer
(and have permissions) on your computer.
RUNNING
=======
Double-click Status.exe in the Status folder to launch the application.
If you see an error complaining about a DLL file, you should open
vc_redist.x64.exe in the Status\vendor folder to install the Microsoft Visual
C++ Redistributable. This is usually necessary only on versions of Windows
older than Windows 10. Then retry launching the application.
You may wish to right-click Status.exe and "Send to > Desktop (create shortcut)".
The application can then be launched by double-clicking the shortcut on your
desktop.
Status.exe persists settings and encrypted data in your %LOCALAPPDATA%\Status
folder.
UPGRADING
=========
To upgrade this application download the latest Status.zip, delete this Status
folder and the older Status.zip, unzip the newer one, and then place the new
Status folder in your preferred location.
If you place the new Status folder in a different location than the old one
then you should recreate any shortcuts you created for Status.exe.
UNINSTALLING
============
Delete this Status folder and delete your %LOCALAPPDATA%\Status folder.