Hi Andre;

This initiative is hugely important. Thanks for working on it.

> From: Andre Fischer
...
> 
>Hi,
>
>In the last days I looked into how to create installation patches for updating 
>AOO.  Using patches instead of full installation packages would lead to 
>smaller files to distribute for updating AOO on the next release.
>
>I have created a new Wiki page for my findings.  Please see [1] for an 
>overview and the details of how to create patch files.  Note that I have 
>concentrated on the Windows platform for the time being.
>
>My results for the impatient:
>
>1. I have written a Perl script with which I have created a Windows Installer 
>MSP patch file that updates an installed Apache OpenOffice 3.4 to 3.4.1.  Its 
>size is roughly a tenth of the full installation package.  There are some 
>minor problems, like the about box still displaying 3.4 as current version in 
>the first line.  The second line is OK.
>
>2. There is already some support for the creation of patch files in the 
>make_installer.pl script but this functionality is inactive.  It is not 
>triggered by the makefile in module instsetoo_native/ and therefore I can not 
>say whether it would still work.
>
>
>[1] http://wiki.openoffice.org/wiki/Building_installation_packages
>
>
>Best regards,
>Andre
>
>

By far the Windows case is most important.

I will add here some notes on how it's done on FreeBSD (and optionally linux).


Normal installation files:

For FreeBSD we don't use either .rpm or .deb format: we have epm generate 
general archive files. These are later untarred and the ports system takes care 
of re-tarring into our native pkg format (actually just a tar file with package 
listing). As you can imagine generating packages takes a lot of time: it 
involves extracting and repackaging.: it would be nice to have a "raw" mode 
that just installs things and let our ports/packaging system take over.

Updates:

FreeBSD will be transitioning RSN to the new pkgng format which takes care of 
dependencies and updates in third party packages. I haven't looked at it in 
detail but it is considered ready for prime time and has been tested 
extensively. For the base system we have a system in place which uses bsdiff:

http://www.daemonology.net/bsdiff/

This would be very useful to release binary patches for security fixes or minor 
updates. Google chrome used this same mechanism and later enhanced it into 
Courgette:

http://dev.chromium.org/developers/design-documents/software-updates-courgette

 
hth,

Pedro.

Reply via email to