Make Nautilus able to open/view compressed folders and extract/add files from/to them.


Archives are not more than folders. Compressed folders, but folders nontheless. All file/folder operations also apply to archives and all archive operations have their equivalent file/folder operations.

Even though archives and ordinary folders look and behave much the same, they are handled through two different applications; archives are handled with Fileroller, files and folders with Nautilus. Users are required to learn two different user interfaces for nearly the same tasks.

Use cases

Ursula wants to open an archive she just downloaded. She double-clicks the archive-icon and Fileroller pops up. She has no experience with the Fileroller interface and drag & drop does not work. Though the window looks a bit like a normal folder with all it's filetype icons, she cannot use it like a normal folder.




Nautilus should be able to open archives and extract files and folders. Archives should be presented like folders, maybe in a different color or with a special emblem added. (Background of window could be a different color to indicate that the contents are compressed?)


Data preservation and migration

Outstanding issues

BoF agenda and discussion

Warbo: Perhaps it would be better to somehow mount the compressed folder so that its contents are accessible to everything? I can easily forsee situations like entering then selecting Open With > GIMP Image Editor, only to get an error from the GIMP that it can't find the file (and temporarily extracting to /tmp or something is messy, not particularly general and could involve needlessly decompressing/copying very large files).

Raphael Bosshard: Such an implementation would ideally happen at the GnomeVS/GVFS level. Thus all GVFS-enabled applications (that would be almost all applications on the Ubuntu desktop) would gain access. An implementation via fuse and pmount would also be possible, but less stable, I'd guess.


NautilusArchiveExtension (last edited 2008-08-06 16:28:32 by localhost)