[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: git-style file storage for .deb



On Mon, Jun 23, 2008 at 05:25:00PM -0400, Phillip Susi wrote:
> Zenaan Harkness wrote:
>> I've had the thought a few times that it could make sense to store a
>> repo's files in a git hierarchy, rather than in a package pool.
>> As in, raw files, with package description files which lookup the SHA
>> for each file in the package, when a package is installed.
>
> The package files are compressed tar archives, and because of this, they 
> are binary files which alter radically between versions, and thus, would 
> have horrible delta compression.

Sorry, what I mean is, separate files, not tarred and gzipped.

This way, when a package is upgraded, only those files which changed
would have new git-sha1 ref'ed files, files that are the same as before,
share the same sha ref and are therefore identical and require no extra
storage.

This is where my thought of inter-distribution shared repositories came
in - eg distributions sharing the same XOrg release, would have a lot of
shared files (ie identical files) which would share sha signatures, and
therefore be the one and the same file in the git repo.

But of course, it would rely on files being stored individually, not
inside .deb or .rpm packages.

I'm wondering whether someone has the technical know-how to do a
comparison, eg. between a couple of Debian or other distribution
versions - as it, how many files are shared for example between say
Ubuntu 7.10 and 8.04.

There might be more savings to be had for sources, rather than binaries.
And HTTP download of binaries as individual files might have more
overhead than downloading as packages. But it might be quicker, since no
unpacking at other end - does anyone know?

>> My primary thought is that repository size might be drastically reduced.
>> Perhaps some md5sum numbers could be run to test this.
>
> It would not be reduced by much and would have a tremendous overhead to 
> access as a result, which the mirrors could never handle, and it would 
> break backwards compatibility since http or ftp could no longer be used to 
> fetch packages.

With an appropriate git config/setup, I'm pretty sure http and ftp
access is just fine, (my knowledge is relatively limited on this subject
though).

-- 
Homepage: www.SoulSound.net -- Free Australia: www.UPMART.org
Please respect the confidentiality of this email as sensibly warranted.


Reply to: