On 09.10.2012 17:39, Pedro Giffuni wrote:
From: Andre Fischer
...
    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.
I am not sure what you mean.

I meant that would be nice to have a way to specify "make install" that just 
installs the files without
going through intermediate installation sets.

That is already done in the background. Before any archive, installer or packages are created AOO is setup in a temporary directory. The following diff prevents the temporary directory from being deleted before "make install: ends:

diff --git a/main/solenv/bin/modules/installer/simplepackage.pm b/main/solenv/bin/modules/installer/simplepackage.pm
old mode 100644
new mode 100755
index c6b22d3..0be2496
--- a/main/solenv/bin/modules/installer/simplepackage.pm
+++ b/main/solenv/bin/modules/installer/simplepackage.pm
@@ -579,8 +579,9 @@ sub create_package

        if ( $return_to_start ) { chdir($from); }

-       print "... removing $tempdir ...\n";
- installer::systemactions::remove_complete_directory($tempdir);
+#      print "... removing $tempdir ...\n";
+# installer::systemactions::remove_complete_directory($tempdir);
+       print "... not removing $tempdir ...\n";
 }

 ####################################################

  We also don't need EPM to generate tar files.
Should not be too hard to make EPM an optional perquisite when no RPMs or DEBs are created. Maybe this already works?


This is completely unrelated to the update mechanism though.

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
I looked at that before I realized that msimsp.exe is already handling
the comparison of (binary) files and possibly the creation of binary
diffs (but probably not as good as either bsdiff or courgette.

Linux and OS X don't have msimsp.exe though, so maybe that's why Chrome

invented Courgette ;).

Maybe. But msimsp.exe and bsdiff/courgette solve different problems. You need more than bsdiff/courgette for a working updater.

I am more interested in the FireFox and Thunderbird update mechanism. Downloading the patches in the background, preparing the update, and only on the next restart do the remaining work that requires superuser or Administrator permissions.

-Andre


Using the native facilities for Windows is fine and that solves more than 80%
of the problem so it sounds like you are on the right track.

Pedro.

Reply via email to