Background

gio is the new i/o library for gnome, scheduled to replace gnome-vfs. Its ship with glib as a separate library called "libgio-2.0". Libgio contains abstractions for file i/o, file types and things like that. It also contains default implementations for local file i/o.

In addition to libgio there is a module called "gvfs", which implements a userspace virtual filesystem using daemons handling each mount and dbus to talk to these daemons. It automatically plugs into libgio and extends its functionality.

The goal for gio/gvfs is to ship with Gnome 2.22, and we've gotten quite far with that. Nautilus has been totally switched over, and many other pieces of the desktop are working on switching. However, there are still parts that need filling out. This page is a listing of bite-sized chunks of work needed in the gio stack. If you're interested, please help out with finishing some of these!

For GIO porting work in the broader Gnome stack, see GioPort.

If you're interested in helping out with this work, join us in the #nautilus channel on irc.

Gio TODO

Gio is now in the glib. Its mostly API frozen, although we might do some API additions.

GVfs TODO

Missing Backends

There are a bunch of backends that we want:

Nautilus

Nautilus 2.21.x is gio-only, and seems to be mostly working,

Gtk+

There is some parts of gio that should really be in Gtk+ that apps might need. Long term this should go into Gtk+, but for now we might want to put these in a separate desktop library so that apps can start using gio easily before the next Gtk+ release.

GioToDo (last edited 2008-04-01 06:44:22 by AndrewWalton)