GNOME Do 0.8.3 dependancy on gnome-desktop-sharp vague

Bug #497184 reported by Jacob Godserv
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Do
Invalid
Undecided
Unassigned
Gentoo Linux
Fix Released
Wishlist

Bug Description

GNOME Do doesn't report exactly what versions of gnome-desktop-sharp it wants, but parts crash with the following error if 2.26 isn't installed:
[Error 16:51:52.908] Could not load desktop item: libgnome-desktop-2.so.7

Additionally, if I try to open the Preferences window, the following error occurs:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.DllNotFoundException: libgnome-desktop-2.so.7
  at (wrapper managed-to-native) Gnome.DesktopItem:gnome_desktop_item_new_from_uri (intptr,int,intptr&)
  at Gnome.DesktopItem.NewFromUri (System.String uri, DesktopItemLoadFlags flags) [0x00000]
  at Do.Platform.Linux.SystemService.get_AutoStartFile () [0x00000]
  at Do.Platform.Linux.SystemService.IsAutoStartEnabled () [0x00000]
  at Do.UI.GeneralPreferencesWidget.get_AutostartEnabled () [0x00000]
  at Do.UI.GeneralPreferencesWidget..ctor () [0x00000]
  at Do.UI.PreferencesWindow..ctor () [0x00000]
  at Do.Core.Controller.ShowPreferences () [0x00000]
  at Do.Universe.PreferencesItem.Run () [0x00000]
  at Do.UI.MainMenu+<MenuItemFromRunnableItem>c__AnonStorey12.<>m__2B (System.Object sender, System.EventArgs e) [0x00000]
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000]
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000]
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000]
  at System.Delegate.DynamicInvokeImpl (System.Object[] args) [0x00000]
  at System.MulticastDelegate.DynamicInvokeImpl (System.Object[] args) [0x00000]
  at System.Delegate.DynamicInvoke (System.Object[] args) [0x00000]
  at GLib.Signal.ClosureInvokedCB (System.Object o, GLib.ClosureInvokedArgs args) [0x00000]
  at GLib.SignalClosure.Invoke (GLib.ClosureInvokedArgs args) [0x00000]
  at GLib.SignalClosure.MarshalCallback (IntPtr raw_closure, IntPtr return_val, UInt32 n_param_vals, IntPtr param_values, IntPtr invocation_hint, IntPtr marshal_data) [0x00000]
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GLib.SignalClosure.MarshalCallback(IntPtr raw_closure, IntPtr return_val, UInt32 n_param_vals, IntPtr param_values, IntPtr invocation_hint, IntPtr marshal_data)
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Do.Do.Main(System.String[] args)

This is running GNOME Do 0.8.3.1 on Gentoo 64-bit with gnome-desktop-sharp-2.24.0-r10 installed (r10 referring to the number of Gentoo-specific revisions, I believe). If I use gnome-desktop-sharp-2.26 GNOME Do is fine, and all errors vanish.

The GNOME Do configure script needs to be updated, or code needs to be patched, so that this error does not occur anymore. If that means bumping the requirement for gnome-desktop-sharp-2.26, that's fine with me. It just needs to be documented.

The Gentoo-specific bug will be attached for reference (if I can make it work). Any additional information required will be given promptly; finals just ended for me, so I have quite a bit of time all of a sudden. :)

Changed in gentoo:
status: Unknown → Confirmed
Revision history for this message
Chris Halse Rogers (raof) wrote : Re: [Bug 497184] Re: GNOME Do 0.8.3 dependancy on gnome-desktop-sharp vague

 status invalid

This is not a bug in Do, but a bug in Gentoo's gnome-desktop-sharp
packaging. The backtrace indicates that
gnome-desktop-sharp's .dll.config isn't pointing to the correct native
libgnome-desktop.so.

Changed in do:
status: New → Invalid
Revision history for this message
Jacob Godserv (fun2program8) wrote :

I have reported this gnome-desktop-sharp:
https://bugzilla.novell.com/show_bug.cgi?id=566992

Revision history for this message
Chris Halse Rogers (raof) wrote :

This is not an upstream gnome-desktop-sharp upstream bug; it's a bug in
Gentoo's packaging of gnome-desktop-sharp. Let me describe in detail
what's going on:

gnome-desktop-sharp is a C# binding for libgnome-desktop. It
dynamically opens the libgnome-desktop shared object. Since the precise
name of this object will change from platform to platform, Mono
uses .dll.config files to map between what the CIL code specifies and
the library to dynamically load. "gnome-desktop-2" is what's specified
in gnomedesktop-sharp.dll, and for Ubuntu's current development release
we ship the following gnomedesktop-sharp.dll.config configuration file:

<configuration>
  <dllmap dll="libglib-2.0-0.dll" target="libglib-2.0.so.0"/>
  <dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0.so.0"/>
  <dllmap dll="libgthread-2.0-0.dll" target="libgthread-2.0.so.0"/>
  <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0"/>
  <dllmap dll="gnome-desktop-2" target="libgnome-desktop-2.so.11"/>
</configuration>

This maps "gnome-desktop-2" to "libgnome-desktop-2.so.11", which is the
current libgnome-desktop-2 SONAME. This means that our
gnome-desktop-sharp package needs a dependency on libgnome-desktop-2-11,
because gnome-desktop-sharp won't work without libgnome-desktop-2.so.11.

So, for Gentoo, your bug can be fixed by either:
1) Adding a dependency on a version of libgnome-desktop with SO version
7 to gnome-desktop-sharp
2) Updating the .dll.config file to point to libgnome-desktop-2.so.11
(and adding a dependency on _that_ version of libgnome-desktop)
3) Because you're Gentoo, and always have development symlinks
available, update the .dll.config to point to libgnome-desktop-2.so

Changed in gentoo:
status: Confirmed → Fix Released
Changed in gentoo:
importance: Unknown → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.