On Fri, 15 Aug 2003, Tor Lillqvist wrote: > Date: Fri, 15 Aug 2003 13:49:41 +0300 (EET DST) > From: Tor Lillqvist <tml@xxxxxx> > To: The Gimp Developers' list <gimp-developer@xxxxxxxxxxxxxxxx> > Subject: Re: [Gimp-developer] Portable XCF > > I won't take any stand on either side (or how many sides are there?) in > the ongoing discussion, just air some fresh thoughts... > > Many of the image formats suggested are some kind of archive formats > (zip, ar) on the outside. > > I understand that one important benefit from this is that you can > store layers and whatnot objects as different "files" in the archive, > and easily access them separately. Even with other tools like ar or > unzip if need be. > However, these formats have the drawback that even if you can easily > have read access to just one of the component "files" in the archive, > it is impossible to rewrite a component if its size has changed (well, > at least if it has grown) without rewriting at least the rest of the > archive. (Or, maybe leaving the old version of the component as > garbage bits in the middle, appending the new version and updating the > index, if that is estimated to be less expensive than rewriting.) For the XML files you can use whitespace padding, I was reading the Adobe XMP specifcations and they do this in some places. It is less than ideal but it is an option. The fact that others have already lead the way with these types of file formats means there is plenty of existing examples to learn from and solutions to potential pitfalls. > Now, what concept do the ar, zip, etc formats closely resemble? What > other thingie is it that you store files in? Yeah, file systems. > > Wouldn't it be neat to use a real file system inside the image > file... I.e. the image file would be a self-contained file system, > with the image components (layers, XML files, whatnot) as files. > > What file system would be good? I don't know. Presumably something as > small and simple as possible, but not any simpler. Maybe FAT? ;-) > Early V6 Unix style file system (but with longer file names)? Minix? > Or something completely different? ISO9960 (I have no knowledge of > this, it might be way too complex)? UDF? I am pretty sure you can have a Zip Filesytem. (I found a request for similar on the linux kernel mailing list but having difficulty finding something more substantial). Hopefully someone who knows more about Zip or virtual filesystems can provide more substantial information. I recall mumblings about Gnome doing away with the need for programs like the predecessors of File-Roller and having Gnome-vfs sort it out and use Nautilus instead. This looks more promising http://www.hwaci.com/sw/tobe/zvfs.html http://webs.demasiado.com/freakpascal/zfs.htm hopefully someone else will come up with better links. > One neat benefit would be that on some operating systems it would be > possible to actually mount the image file as a file system... Zip is already in wide use and as it is more popular it is therefore more likely to be available as a filesystem if it is not already available than an 'ar' based solution. To change the subject slightly the adhoc name 'Portable XCF' might be a bit misleading. Portable implies web formats and I think that PNG/MNG/JNG and others largely have this area covered and that the next genertion XCF will needt to many things and hold a fair bit of raw data and be reasonably fast which goes against being a web ready portable format (or at least makes it a low priority). At this early stage hopefully no one will get too attached to any particular name and that can be left until later. Sincerely Alan Horkan http://advogato.org/person/AlanHorkan/