I had to do, what developers really don’t like: patching a third-party class package due to a bug for the forthcoming release of one of our software products.
The package I had to patch is PEAR::Archive_Tar because of a yet unfixed bug I have reported some time ago. The application depending on that package is the forthcoming release of ZZ/OSS Installer. I was able to use the installer itself to apply the patch due to the fact that the ZZ/OSS Installer is itself developed and installed with the ZZ/OSS Installer – I love russian doll architectures :).
Creating and applying the patch was as simple as:
1. Fix the bug in
2. Put the fixed
Tar.php in a package called com.zzoss.pear.archive_tar.patch.
3. Make sure in the
deps element of the package.xml that the patch package has a dependency on the
4. Add this package to the application.xml of the next ZZ/OSS Installer release.
What happens when installing the application with the ZZ/OSS Installer is that the
Tar.php file from
PEAR::Archive_Tar gets overwritten by the fixed
com.zzoss.pear.archive_tar.patch, because of the dependency definition.
ZZ/OSS is happy to announce that the ZZ/OSS Installer Client (ZIC) 1.1.0dev1 has been released. ZIC is a PHP-based installation wizard and development tool for professional release management of modular PHP applications.
This is a development release with new features. You can use this version to make your own PHP software installable with ZIC. The schema of the XML files describing your application is solid.
This new tutorial on making phpMyAdmin installable with ZIC is a good start.
If you use Mozilla, please make sure to set the preference ‘network.http.redirection-limit’ to the value ’30’ or higher if you get a “redirection limit” error. Type ‘about:config’ into the address field to access the preferences.
Please report bugs to the bug tracker, mailinglist, or IRC.
More information is available at the installer homepage
An excerpt of most important changes:
- works on Windows and Linux
- integrated plugins and packages manager for installed applications
- development applications can now also be installed
- default install path of development applications has ‘-dev’ added to app name
- new default theme ‘kde’ which is more neutral
- option to automatically remove setup wizard after installation
- handle different magic quotes settings
- progress bar shows download process
- single packages or plugins can be added
- works with E_ALL error reporting
- fileroles: default behaviour of installer without having any filerole plugins installed is that the file gets copied to the location specified in filelist/file of package.xml
- configurable quick installation of development applications allows for faster development
- detect circular dependencies of packages needing each other
- process filelists with nested dir elements in package.xml
I have put up some screenshots of the forthcoming ZIC 1.1.0dev1 release.
Saturday, I will present the forthcoming ZZ/OSS Installer Client (ZIC) release 1.1.0dev1 at a PHP User Group meeting. I am looking forward to get some feedback from the participants. Soon after the presentation, the code will be released.
This is an excerpt from the changelog:
– works on Windows
– new plugins architecture (introduced Plugins Runtime Environment, which is actually installed like an application)
– integrated package manager for installed applications
– plugins manager for installer plugins
– plugins development wizard
– E_ALL support
– development applications can now also be installed
– new default theme ‘kde’ which is “neutral”
– option to automatically remove setup wizard after installation
– handle different magic quotes settings
– progress bar shows download process
– single packages or plugins can be added
I am confident, that with this release, we have solved all major conceptual issues about a distributed deployment architecture. The important implementation missing, is the ZZ/OSS Installer Server (ZIS), which we have not yet released under an Open Source license. Once ZIS is out, companies and communities can easily deploy their applications consisting of packages within their software distribution – either in-house, and/or internally.
We will in the forthcoming months focus on the release of ZIS, which will in its first release be a kind of PEARWeb for the ZZ/OSS Installer Client. Nevertheless, the ZIS does not rely on PEARWeb, it is based on CONESYS, the COntent NEtwork SYStem. In this respect, the second major release of the ZIS will allow for automatic and granular distribution of package, application, and distribution data accross servers.