The alternative (but rather boring) version of this article’s headline would have been “ownCloud Desktop Client for Windows Is Provided as Enterprise-ready Windows Installer (MSI)”. While that’s true and while “enterprise-ready” is a phrase we use frequently (for a reason), it doesn’t hit the nail on the head.
We care about the people who use ownCloud software. It’s ownCloud’s mission to make your life easier, whether you are an end-user or an admin. So it’s only logical that we take special care of sysadmins – not only on System Administrator Appreciation Day. 😉
What’s wrong with an EXE installer?
Installing a software which is provided in the form of a
setup.exe file is fine for manual installation on a single computer. But in a corporate environment, the situation is different. Every sysadmin working in an enterprise organization knows: The centrally organized automated software deployment to a larger amount of Windows machines in a corporate network can be a pain in the neck if the installer is only available as an EXE file.
The main drawbacks:
- After the installer has finished its work you have no idea whether everything worked right on a specific PC or if something broke during the installation.
- If the automated installation could not be started on one or more PCs in your corporate network or if it was terminated in the middle, you are usually not told why.
- If the installation failed, the remains of a half-installed software may litter the system.
Of course, you know that something might have gone wrong as soon as the first complaint calls from upset users start coming in. But that not only spoils your mood, but will also cost your precious time and your employer’s money. Fortunately, we are keeping you from that by providing the installer of the ownCloud Desktop Synchronization Client for Windows in the form of a Windows Installer, commonly referred to as MSI file.
Why MSI files rock
In case you have read this far and are not a system administrator, this is a (technically simplified – so sysadmins, please skip this section, since you already know much more about the topic) overview of why MSI files rock:
MSI files are the most common way of providing enterprise software installers for Windows in a standardized fashion. If a Windows desktop application is provided as
setup.exe you can’t seriously claim that this software is enterprise-ready. (Although some of our competitors dare it anyway.)
Having a Windows PC run an EXE installer (e.g. as part of a scripted startup routine) simply means that it processes a list of installation steps. If something breaks, it depends on how well the installer was put together: Maybe everything is rolled back, as if the failed installation never happened. Maybe some pieces of information are written into some logfile, providing you with a hint of what went wrong. That is, if you know where this specific software keeps its logfiles.
In contrast, a Windows Installer (MSI) provides full control and uses standard routines for executing tasks. You don’t have to rely on some developer’s foresight when it comes to error handling and logging. Instead, you put Windows in charge. You can have automated feedback whether everything went well or not so well. You don’t have to bother searching for scattered log files. You don’t have to deal with the remains of incomplete installation attempts. Instead you are in full control.
MSI files are prepared for being executed as part of scripts (which is the default way to automate such installation tasks in an enterprise environment). This means that customization options can not only be set when using an interactive installation wizard, like you would do when installing desktop software manually. Instead an administrator can control the installer using command line options in an automation script. Here’s an overview of the customizing options provided by the ownCloud Desktop client installer.
Want to go deeper? OK, let’s talk tech.
At ownCloud conference 2018 Dominik Schmidt, Client Engineer at ownCloud, presented some insights on why we switched from an EXE installer built with NSIS to standard MSI files for deploying the ownCloud Client on Windows.