After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 554226 - get rid of libgnome
get rid of libgnome
Status: RESOLVED FIXED
Product: totem
Classification: Core
Component: general
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: General Totem maintainer(s)
General Totem maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2008-09-28 20:57 UTC by Christian Persch
Modified: 2008-10-07 15:17 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
[PATCH] Bug 554226 – get rid of libgnome (144.39 KB, patch)
2008-09-28 21:01 UTC, Christian Persch
none Details | Review
[PATCH] Bug 554226 – get rid of libgnome (158.05 KB, patch)
2008-09-30 13:19 UTC, Christian Persch
none Details | Review

Description Christian Persch 2008-09-28 20:57:35 UTC
The only thing left that's using the libgnome support is the session management. We can use the eggsmclient stuff for that.
Comment 1 Christian Persch 2008-09-28 21:01:38 UTC
Created attachment 119548 [details] [review]
[PATCH] Bug 554226 – get rid of libgnome

 bindings/python/Makefile.am               |    4 +-
 browser-plugin/Makefile.am                |   12 +-
 configure.in                              |   81 +-
 lib/Makefile.am                           |    2 +-
 src/Makefile.am                           |   57 +-
 src/backend/Makefile.am                   |    8 +-
 src/eggdesktopfile.c                      | 1386 ++++++++++++++++++++++++++++
 src/eggdesktopfile.h                      |  130 +++
 src/eggsmclient-osx.c                     |  158 ++++
 src/eggsmclient-private.h                 |   53 ++
 src/eggsmclient-win32.c                   |  255 ++++++
 src/eggsmclient-xsmp.c                    | 1404 +++++++++++++++++++++++++++++
 src/eggsmclient.c                         |  588 ++++++++++++
 src/eggsmclient.h                         |  123 +++
 src/plugins/Makefile.am                   |    4 +-
 src/plugins/bemused/Makefile.am           |    2 +-
 src/plugins/galago/Makefile.am            |    2 +-
 src/plugins/gromit/Makefile.am            |    2 +-
 src/plugins/lirc/Makefile.am              |    2 +-
 src/plugins/media-player-keys/Makefile.am |    2 +-
 src/plugins/mythtv/Makefile.am            |    2 +-
 src/plugins/ontop/Makefile.am             |    2 +-
 src/plugins/properties/Makefile.am        |    4 +-
 src/plugins/publish/Makefile.am           |    2 +-
 src/plugins/sample-vala/Makefile.am       |    4 +-
 src/plugins/screensaver/Makefile.am       |    2 +-
 src/plugins/sidebar-test/Makefile.am      |    2 +-
 src/plugins/skipto/Makefile.am            |    2 +-
 src/plugins/thumbnail/Makefile.am         |    2 +-
 src/plugins/tracker/Makefile.am           |    2 +-
 src/totem-options.c                       |   13 +
 src/totem-session.c                       |   49 +-
 src/totem.c                               |   67 +-
 33 files changed, 4295 insertions(+), 133 deletions(-)
Comment 2 Bastien Nocera 2008-09-29 08:18:23 UTC
Won't that break if any of the plugins are linked to libgnomeui though?
Comment 3 Christian Persch 2008-09-29 12:25:31 UTC
I grepped the whole tree and there are no callers of libgnome/libgnomeui functions left, neither in the main programme nor under src/plugins/. Or are you concerned about out-of-tree plugins (are there any?) ?

No gstreamer plugins use libgnome/libgnomeui either, at least a grep turned up only use of gnome-vfs in gst-plugins-base.

(Oh and btw I should mention that the patch should be correct but is untestable here since session management seems to be totally broken on intrepid. Testing appreciated :).
Comment 4 Bastien Nocera 2008-09-29 14:56:35 UTC
Seems fine to commit to me then, but please make sure all the egg*.[ch] files are added to the regenerate-built-sources target, and use update-from-egg.sh for updating.
Comment 5 Bastien Nocera 2008-09-29 15:02:07 UTC
Can we also do without the load_accels()/save_accels() stuff? Changing the accels currently works in Totem, but they were never saved, and nobody complained, so I'd rather have them dead.
Comment 6 Christian Persch 2008-09-30 13:19:16 UTC
Created attachment 119647 [details] [review]
[PATCH] Bug 554226 – get rid of libgnome

 bindings/python/Makefile.am               |    4 +-
 browser-plugin/Makefile.am                |   12 +-
 configure.in                              |   81 +-
 lib/Makefile.am                           |    2 +-
 src/Makefile.am                           |   57 +-
 src/backend/Makefile.am                   |    8 +-
 src/eggdesktopfile.c                      | 1386 ++++++++++++++++++++++++++++
 src/eggdesktopfile.h                      |  130 +++
 src/eggsmclient-1.patch                   |  192 ++++
 src/eggsmclient-2.patch                   |   25 +
 src/eggsmclient-3.patch                   |   84 ++
 src/eggsmclient-osx.c                     |  158 ++++
 src/eggsmclient-private.h                 |   53 ++
 src/eggsmclient-win32.c                   |  255 ++++++
 src/eggsmclient-xsmp.c                    | 1404 +++++++++++++++++++++++++++++
 src/eggsmclient.c                         |  588 ++++++++++++
 src/eggsmclient.h                         |  123 +++
 src/plugins/Makefile.am                   |    4 +-
 src/plugins/bemused/Makefile.am           |    2 +-
 src/plugins/galago/Makefile.am            |    2 +-
 src/plugins/gromit/Makefile.am            |    2 +-
 src/plugins/lirc/Makefile.am              |    2 +-
 src/plugins/media-player-keys/Makefile.am |    2 +-
 src/plugins/mythtv/Makefile.am            |    2 +-
 src/plugins/ontop/Makefile.am             |    2 +-
 src/plugins/properties/Makefile.am        |    4 +-
 src/plugins/publish/Makefile.am           |    2 +-
 src/plugins/sample-vala/Makefile.am       |    4 +-
 src/plugins/screensaver/Makefile.am       |    2 +-
 src/plugins/sidebar-test/Makefile.am      |    2 +-
 src/plugins/skipto/Makefile.am            |    2 +-
 src/plugins/thumbnail/Makefile.am         |    2 +-
 src/plugins/tracker/Makefile.am           |    2 +-
 src/totem-interface.c                     |   10 +-
 src/totem-options.c                       |   13 +
 src/totem-session.c                       |   49 +-
 src/totem.c                               |   60 +-
 src/update-from-egg.sh                    |   41 +-
 38 files changed, 4612 insertions(+), 161 deletions(-)
Comment 7 Christian Persch 2008-09-30 13:20:02 UTC
Updated patch, with update-from-egg.sh adapted, and accel saving stuff removed. And about dialogue hooks implemented.
Comment 8 Bastien Nocera 2008-09-30 14:06:44 UTC
Looks good.
Comment 9 Bastien Nocera 2008-10-07 15:17:53 UTC
Added a few more fixes to that patch. Thanks!

2008-10-07  Bastien Nocera  <hadess@hadess.net>

        * bindings/python/Makefile.am:
        * browser-plugin/Makefile.am:
        * configure.in:
        * lib/Makefile.am:
        * src/Makefile.am:
        * src/backend/Makefile.am:
        * src/plugins/Makefile.am:
        * src/plugins/bemused/Makefile.am:
        * src/plugins/galago/Makefile.am:
        * src/plugins/gromit/Makefile.am:
        * src/plugins/lirc/Makefile.am:
        * src/plugins/media-player-keys/Makefile.am:
        * src/plugins/mythtv/Makefile.am:
        * src/plugins/ontop/Makefile.am:
        * src/plugins/properties/Makefile.am:
        * src/plugins/publish/Makefile.am:
        * src/plugins/sample-vala/Makefile.am:
        * src/plugins/screensaver/Makefile.am:
        * src/plugins/sidebar-test/Makefile.am:
        * src/plugins/skipto/Makefile.am:
        * src/plugins/skipto/totem-skipto.c:
        * src/plugins/thumbnail/Makefile.am:
        * src/plugins/tracker/Makefile.am:
        * src/totem-interface.c (totem_interface_error),
        (totem_interface_error_with_link):
        * src/totem-options.c (option_version_cb):
        * src/totem-session.c (totem_save_state_cb), (totem_quit_cb),
        (totem_session_setup), (totem_session_restore):
        * src/totem.c (about_url_hook), (about_email_hook), (main):
        * src/update-from-egg.sh: Big patch from Christian Persch
        <chpe@gnome.org> to remove the libgnome dependencies
        (Closes: #554226)