I made a first stub of an
NSIS-based launcher installer for Windows,
here is the commit.
I tested the build process both on Windows and on Ubuntu 16.04 and it works fine on both, provided makensis is installed.
I saw now that your Arch package directly installs the game, while my Windows package installs the launcher.
I went this way since I thought this could make easier delivering updates, the user installs the launcher (operation which requires admin privileges) once and then within the launcher he/she can set the version to play without requiring privileges.
Obviously if you think this is not the right way, any idea/suggestion is welcome.
I'm not opening the pull request now since I think there are things that should be improved; for example, whether the installer should automatically set the game and data directories (for example to subdirectories of the user's %appdata%) (it actually doesn't).
Also, the installer now currently bundles the core launcher files only and weighs ~5MB. I saw in the Launcher issues that there are plans to bundle the JRE; I'm not sure if the installer should do so. Personally, I don't like when programs bundle the JRE since I already have a system-wide install of it that I keep up to date and thus I think it simply "pollutes" my machine. It is possible to
detect the JRE from the NSIS installer and instruct the user to install it if it's not found; also, if we publish the installer to
Chocolatey it is possible to add it as a dependency. However this is just my personal opinion and, considering I'm also quite new to this community, by no means I want to go against ideas other people have developed and carefully thought about; if you prefer me to build an installer that bundles the JRE, I'll do it.