If you or your teams have wanted a better way to create reliable application packages that can be successfully distributed throughout an organization, this four part series is for you. In Part 1 below, I review a process-oriented approach to repackaging applications, and discuss a best practices methodology and recommendations for creating reliable packages.
So why should you take the time to read and act on this post, and the series as a whole?
Scalable Software has worked in the repackaging industry, and with repackaging experts, for a number of years. Throughout that time, Scalable has gathered a wealth of knowledge in MSI and App-V packaging best practices that are embodied in our application packaging solution, Smart Packager.
While this series references how to use Smart Packager as part of this process, the scope of the series is not vendor-specific. I describe application packaging best practices in general terms that are not product specific, because best practices should be widely adopted.
Maintaining client systems has become an expensive proposition for many organizations. New application management techniques are being developed to help organizations administer not only their existing PC investments, but also the plethora of new mobile devices and virtualization technologies more efficiently, helping to reduce end-user support costs, and minimize end-user business disruptions. One such component is application packaging, which has emerged as a critical component of an overall application management strategy.
Part 1. The Importance of Repackaging
What is Repackaging?
Traditional Repackaging is the process of capturing the changes made by an installation program for the purpose of creating a new, customized installation. This new installation, which is called a “package”, is designed to support organizational standards and deployment methods. The repackaging process is critical to the success of application roll-outs. Repackaging saves time, effort, and money by allowing the IT administrators to customize installations to meet the standards set for application deployment within an organization.
For instance, an IT administrator might repackage an application in order to prevent dialog boxes from appearing during the installation. This prevents the end user from making an incorrect choice and installing the application in a manner that is inconsistent with the organizations standards. An incorrectly installed application can result in calls to the organizations help desk.
Why and when do organizations repackage software?
The main purpose behind application packaging is to facilitate creating new packages based upon existing software installation packages, a.k.a.”repackaging.” An obvious question is why repackage.
Below is a chart that depicts the benefits and drawbacks to traditional repackaging of an existing installation:
Limitations of Repackaging
- Packages that create a service with a specific username and password will be repackaged as a”logon as system” service. This is because it is not possible to extract and decode the encrypted password used to create the new service.
- 32-bit applications repackaged on a 64-bit operating system will not install on a 32-bit system. This is because 32-bit applications installed on a 64-bit operating system install registry keys into both the 32-bit and 64-bit registries. Since a 32-bit machine does not contain the 64-bit registry keys, these packages will only install on other 64-bit operating systems.
Smart Packaging is a technology developed by Scalable Software to facilitate repackaging of Windows Installer packages. Understanding the differences between regular repackaging and smart packaging is crucial to generating the most successful packages. Smart packaging, like regular packaging, omits the UI and repackages the files, registry keys, services, shortcuts, etc. However, it also includes the Windows Installer record keeping that was installed. By including these additional files and registry keys an installation repackaged using smart packaging is able to preserve many of the benefits of Windows Installer.
Benefits of Smart Packaging
- Future upgrades and patching of the product work correctly.
- All product shortcuts, including Advertised shortcuts, work correctly. Windows Installer features such as auto-repair function correctly.
When to use Smart Packaging
Knowing when to use smart packaging versus regular repackaging will allow for the greatest success when repackaging software. Use the following guidelines to determining which packaging mode will yield the best results.
- If the application being repackaged is not based on Windows Installer technology, then regular repackaging is recommended.
- If the application being repackaged is based on Windows Installer technology and the original package is installed per-machine, then smart packaging is recommended.
- If the application being repackaged is based on Windows Installer technology and the original package is installed per-user, then regular repackaging must be used.
This series will continue in Part 2, where I discuss the “devils in the details” of a process-oriented approach to repackaging applications reliably.