On Sat, Nov 21, 1998 at 04:25:39PM +0100, Kai Duebbert wrote: > hi. > > here is the new version of the diff generating script.... the last script had > countless bugs which I hadn't seen and which unfortunately made the diffs > smaller than they would be. it should work quite well now. the modes of the new > files are applied on the diff files, so we can keep all modes. > > what should we do with the owners? are they important? if they are, the script > has either to be used as root (which the a ftpsite probably wouldnt like) or > we save the ownerships in a separate file and apply them again when the package > gets installed... both is not very nice. ideas? Yes and no. The owner should at least be root. OTOH, most people seem to be saying that ownerships should be set in postinst or with suidmanager. > fortunately xdelta knows how to handle gzip-files... the system to see if two > files are identical (even if one is gzipped) is not very good... any ideas? zcat to temp files then cmp those? > if this script works ok, I guess we can think of how to work out a system to > install the diffs on a running system....... I guess we either have to do a > work-around to install the packages directly or we have to find a method on how > to use dpkg... of course we could rebuild the new package by taking the already > installed files on the disk, apply the diffs and use dpkg to install it again, > but this would take ages. or maybe using dpkg-repack?.... anyone a good idea how > to do it? I say, don't do it directly with dpkg (asis anyway). Its a hugely inefficient scheme. I spent a good deal of time testing this script. It seems to work. Sorry for the delay. Anyway, I attached the perl script I wrote to test it out, and the results. > On Don, 19 Nov 1998 Tom Lees wrote: > >> > know the set of packages you tested it on that got 40%? > >> sed_2.05-22.deb (26828 b) -> sed_3.02-1.deb (64530 b) -> diff (26828 b) > >> grep_2.1-8.deb (60070 b) -> grep_2.2-1.deb (61352 b) -> diff (31352 b) > unfortunately that isnt right anymore.... the sed-diff is now: 58280 and the > grep-diff is: 32630 > > we should try to test packages which are not so different in their versions. > e.g. grep_2.2-1.deb to grep_2.2-2.deb...... then the results we get would > be more realistic and probably much more impressing than these here. (at least > thats what I hope.... ;) ) I don't keep enough debs so marginally different to do this. > >Here are some more results, using that script:- > could you test the packages against the new script again? Attached. -- Tom Lees <tom@lpsg.demon.co.uk> <tom@debian.org> http://www.lpsg.demon.co.uk/ PGP Key: finger tom@master.debian.org, http://www.lpsg.demon.co.uk/pgpkeys.asc.
Attachment:
comp.pl
Description: comp.pl, comparison script
Script started on Sat Nov 28 23:13:00 1998 lpsg:~/debian/make-diff-test$ lpsg:~/debian/make-diff-test$ ./comp.pl s-in/e2fsprogs_1.10-17.deb s-out/e2fsprogs_1.12-2.deb e2fsprogs e2fsprogs 'e2fsprogs_1.10-17-diff-1.12-2.deb' e2fsprogs 1.10-17 151266 --> 1.12-2 163962 Diff 142398, 86.8481721374465% s-in/kbd_0.95-16.deb s-out/kbd_0.96a-6.deb kbd kbd 'kbd_0.95-16-diff-0.96a-6.deb' kbd 0.95-16 468406 --> 0.96a-6 114006 Diff 78842, 69.1560093328421% s-in/libc6_2.0.7t-1.deb s-out/libc6_2.0.7u-2.deb libc6 libc6 'libc6_2.0.7t-1-diff-2.0.7u-2.deb' libc6 2.0.7t-1 580872 --> 2.0.7u-2 608906 Diff 432852, 71.0868344210765% s-in/makedev_1.6-32.deb s-out/makedev_2.3.1-3.deb makedev makedev 'makedev_1.6-32-diff-2.3.1-3.deb' makedev 1.6-32 35020 --> 2.3.1-3 15730 Diff 12652, 80.4322949777495% s-in/modutils_2.1.85-11.deb s-out/modutils_2.1.121-5.deb modutils modutils 'modutils_2.1.85-11-diff-2.1.121-5.deb' modutils 2.1.85-11 116042 --> 2.1.121-5 122248 Diff 55788, 45.6351024147634% s-in/ncurses-base_1.9.9g-8.8.deb s-out/ncurses-base_4.2-2.deb ncurses-base ncurses-base 'ncurses-base_1.9.9g-8.8-diff-4.2-2.deb' ncurses-base 1.9.9g-8.8 6702 --> 4.2-2 13754 Diff 11332, 82.3905772866075% s-in/timezones_2.0.7t-1.deb s-out/timezones_2.0.7u-2.deb timezones timezones 'timezones_2.0.7t-1-diff-2.0.7u-2.deb' timezones 2.0.7t-1 261268 --> 2.0.7u-2 266124 Diff 102890, 38.6624280410636% lpsg:~/debian/make-diff-test$ exit Script done on Sat Nov 28 23:16:24 1998