Towards a Ridley-based platform

Today I finally made the last changes to remove libgnome and its dependencies from nautilus. Its not in svn yet because some patches to gnome-desktop has to go in first.

Before:

ldd `which nautilus` | wc -l
91

After:

ldd `which nautilus` | wc -l
60

So, we are now linking to  30 libraries less! Libraries which we hardly used but still take time to load, initialize and resolve symbols from.

As a comparison, gtk-demo links to 37 libraries on my system. The additional libraries come from session management, thread use, dbus, gconf, libgnomedesktop and some other nautilus-specific features.

So, Project Ridley is alive and kicking (even if the wiki page is a bit outdated). I’m just waiting for dconf/GtkSettings to be finished and then we’ll really have a competitive next generation platform without all the old deprecated libgnome era stuff.

UPDATE: I’ve now commited this to trunk. You need new gnome-desktop, eel and nautilus

12 thoughts on “Towards a Ridley-based platform”

  1. No benchmarks or anything. I’ll do some tests once it lands. I doubt it will be any large differences though. Perhaps cold-start time.

  2. I have been looking for any hints of actual GSettings/DConf documentation or code high and low. Do you have any pointers? As far as my research goes it is complete vapourware.

    I hope I am not right because there any many people waiting for it.

  3. Maybe it’s time to use –as-needed?
    % ldd `which nautilus` | wc -l
    81
    % nautilus –version
    GNOME nautilus 2.24.0

  4. freetz:
    I think there is some libtool issue affecting –as-needed.

    However, even with that fix this wouldn’t really help. There would be no direct dependencies on these libs, but they would still be loaded at startup via indirect dependencies (and as such, showed by ldd too).

Leave a Reply

Your email address will not be published. Required fields are marked *