Bug 822477
Summary: | Docky does not start | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | markm <marek78uk> |
Component: | docky | Assignee: | Lukas Zapletal <lzap> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 17 | CC: | christopher.plummer, htl10, lzap, mono, ojar |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2012-06-19 15:06:13 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
markm
2012-05-17 13:14:05 UTC
Today did a simple exercise - installed in vm both 32bit and 64bit versions of Fedora 17, on 32bit docky works, on 64bit it does not work and fails with: $ docky Missing method Init in assembly /usr/lib64/docky/Docky.exe, type NDesk.DBus.BusG Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'NDesk.DBus.GLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099' or one of its dependencies. File name: 'NDesk.DBus.GLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099' [ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'NDesk.DBus.GLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099' or one of its dependencies. File name: 'NDesk.DBus.GLib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099' so I guess some libraries are incorrectly linked... Well that version is quite old, I was trying to build new version, got patches and everything, but for some reason it fails to compile due to compiler bug: http://koji.fedoraproject.org/koji/taskinfo?taskID=4097528 Would you mind trying to compile it? Do this: rpmbuild --rebuild docky-2.1.4-1.fc18.src.rpm You can download the src rpm on the link above or here http://lzap.fedorapeople.org/temp/ I am not gonna backport this bug since there were so many changes in the Mono (F17), it would be too time consuming. I'd rather build the new version and release update for it. (In reply to comment #2) > Well that version is quite old, I was trying to build new version, got > patches and everything, but for some reason it fails to compile due to > compiler bug: > > http://koji.fedoraproject.org/koji/taskinfo?taskID=4097528 > > Would you mind trying to compile it? Not a problem. When I tried, I got this error: Compiling Docky.Widgets.dll... ./Docky.Widgets/Tile.cs(124,43): error CS0584: Internal compiler error: Method not found: 'Docky.Services.Log`1.Notify'. ./Docky.Widgets/Tile.cs(124,43): error CS0201: Only assignment, call, increment, decrement, and new object expressions can be used as a statement Compilation failed: 2 error(s), 0 warnings make[1]: *** [../build/Docky.Widgets.dll] Error 1 make[1]: Leaving directory `/root/rpmbuild/BUILD/docky-2.1.4/Docky.Widgets' make: *** [all-recursive] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.6OfOhN (%build) I can build the rpm with three minor changes in the spec file in the file-listing section towards the end - i.e. just packaging. remove %{python_sitelib}/%{name} %{_libdir}/pkgconfig/docky.windowing.pc and add /etc/gconf/schemas/docky.schemas The compiler error looks like the typical problems with the mono 10.x c# compiler through - the mono people recommend the upcoming 11.x. (I am on up-to-date fc16 but using mono 10.8 taken from fc18 backwards) Is there any workaround? I would like to do a build for F17 :-( I am not mono expert, just took this package some time ago because I was using this... I just fixed this on my x86_64 Fedora 17 install - I did the following: 1) Installed dependencies (which installed some missing non-devel packages, like gio-sharp, dbus-sharp, and dbus-sharp-glib): sudo yum install bzr GConf2-devel gnome-sharp-devel gio-sharp-devel gnome-desktop-sharp-devel gnome-keyring-sharp-devel mono-addins-devel dbus-sharp-devel dbus-sharp-glib-devel notify-sharp-devel gtk+extra-devel 2) Grabbed docky source and compile bzr branch lp:docky/2.1 cd 2.1/ ./autogen.sh make 3) Ran into same problems as above with compilation, so I tried to solve the original problem I had running docky-2.0 (as explained by the bug reporter). To fix the missing DLL error, I ran this to update the GAC (global assembly cache, see http://www.mono-project.com/Assemblies_and_the_GAC): sudo gacutil -i /usr/lib64/mono/ndesk-dbus-1.0/NDesk.DBus.dll sudo gacutil -i /usr/lib64/mono/ndesk-dbus-glib-1.0/NDesk.DBus.GLib.dll sudo gacutil -i /usr/lib64/mono/notify-sharp/notify-sharp.dll 4) Tried to run docky, got an error with a missing libglib-2.0-0.dll file - I found a workaround at https://bugzilla.redhat.com/show_bug.cgi?id=692784, which was to insert this line at the top of /etc/mono/config: <dllmap dll="libglib-2.0-0.dll" target="libglib-2.0.so.0" os="!windows,osx"/> 5) Ran docky 2.0 again, and it worked! I tried to change settings and got an error with a missing libgnome-desktop-2.so.17 file, so I did: sudo yum install gnome-desktop 6) Ran docky 2.0 again and everything works! 7) Recompile the docky 2.1 code again - it also worked! I'm guessing that either the <dllmap> entry in the mono config or the gnome-desktop installation was what fixed it, but I'm not sure. So, long story short, I'm now running Docky 2.1.5 on my F17 box. Chris, so did you encounter this error or not: http://koji.fedoraproject.org/koji/getfile?taskID=4119174&name=build.log Cos I am not able to build this in Koji in F17 buildroot. Hey Lukáš, I got that compile error when I first tried grabbing the docky 2.1 source and building, as I mentioned in steps 1) and 2). I couldn't get anywhere with the compilation error, so I decided to go back and try to fix the original problem that was reported (which I had encountered as well) with the docky 2.0.x package I had installed from yum. After I fixed that (steps 3, 4, 5, and 6 from above), I then tried to see if anything changed in the compilation steps I had tried previously and suddenly 'make' built everything correctly. So, I think that maybe the <dllmap> entry I put into the mono config file fixed it or else installing the gnome-desktop package did - I'll try to find some time to do some additional tests today to see if I can pinpoint what fixed it. Dear All, I have compiled the Docky 2.1.5 on both Fedora 16 and 17 x86_64 and they both work. F16 does not require the gacutil to compile. I ran them, and even I can find the files identified, I get errors. I have a common error for the Docky "Helpers", 'docmanager' required. I downloaded the source and the configure fails. with the error:- ====== checking for DOCKMANAGER_DAEMON... no configure: error: Package requirements (glib-2.0 >= 2.18.0 gobject-2.0 gio-2.0 desktop-agnostic >= 0.3.9 dbus-glib-1) were not met: No package 'desktop-agnostic' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. ====== There is no desktop-agnostic available on F16. I do know that the Docky "Helpers" did exist with the Docky that part of F16. I looked at it again today and the compiler problem was with the 'notify-sharp.dll' assembly not being in the GAC. Docky would compile just fine if I removed the <dllmap> entry and removed the gnome-desktop package, but the compiler error would re-occur if I removed 'notify-sharp' from the GAC (using 'sudo gacutil -u notify-sharp'). As soon as I re-cached notify-sharp ('sudo gacutil -i /usr/lib64/mono/notify-sharp/notify-sharp.dll'), the compilation would work. I did some other tests with docky 2.0, 2.1, and 2.2 (trunk), here's what I found: For successful compilation (running './autogen.sh; make;': 2.0, 2.1, 2.2 - add notify-sharp to GAC For successful runtime operation (running 'sudo make install' then the 'docky' command in a terminal): 2.0 - install gnome-desktop, add <dllmap> entry for libglib-2.0-0.dll, add ndesk-dbus, ndesk-dbus-glib to GAC 2.1,2.2 - install gnome-desktop Thanks for the clarification on the compilation of the Docky utility. 1. My comment above was for the compilation of the dockmanager, which seems to be a separate build to Docky. The gacutil command as identified works with F17 but not F16. The following occurs on Fedora 16. [ Docky has been built successfully and is working, yet I get the following on F16 as root: #ls /usr/lib64/mono/notify-sharp/notify-sharp.dll /usr/lib64/mono/notify-sharp/notify-sharp.dll # gacutil -i /usr/lib64/mono/notify-sharp/notify-sharp.dll Failure adding assembly /usr/lib64/mono/notify-sharp/notify-sharp.dll to the cache: The file specified is not a valid assembly. (In reply to comment #11) > Thanks for the clarification on the compilation of the Docky utility. > > 1. My comment above was for the compilation of the dockmanager, which seems > to be a separate build to Docky. > > The gacutil command as identified works with F17 but not F16. The following > occurs on Fedora 16. [ Docky has been built successfully and is working, yet > I get the following on F16 as root: > > #ls /usr/lib64/mono/notify-sharp/notify-sharp.dll > /usr/lib64/mono/notify-sharp/notify-sharp.dll > > # gacutil -i /usr/lib64/mono/notify-sharp/notify-sharp.dll > Failure adding assembly /usr/lib64/mono/notify-sharp/notify-sharp.dll to the > cache: The file specified is not a valid assembly. This bug is for F17 - if you're having problems with F16 or with dockmanager, open up a separate bug for it instead of commenting on it here. None of my comments or suggestions are for any other version of Fedora except fresh installs of F17 on which docky isn't running correctly. (In reply to comment #10) > I looked at it again today and the compiler problem was with the > 'notify-sharp.dll' assembly not being in the GAC. Docky would compile just > fine if I removed the <dllmap> entry and removed the gnome-desktop package, > but the compiler error would re-occur if I removed 'notify-sharp' from the > GAC (using 'sudo gacutil -u notify-sharp'). As soon as I re-cached > notify-sharp ('sudo gacutil -i > /usr/lib64/mono/notify-sharp/notify-sharp.dll'), the compilation would work. I can confirm that this is a bug in the notify-sharp package. notify-sharp.dll is not correctly installed in the GAC (the GAC is now located in /usr/lib/mono even for the x86_64 architecture). I will provide a new package within the next days. ndesk-dbus-0.6.1a-11.fc17,ndesk-dbus-glib-0.4.1-12.fc17,notify-sharp-0.4.0-0.18.20100411svn.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/ndesk-dbus-0.6.1a-11.fc17,ndesk-dbus-glib-0.4.1-12.fc17,notify-sharp-0.4.0-0.18.20100411svn.fc17 Package ndesk-dbus-0.6.1a-11.fc17, ndesk-dbus-glib-0.4.1-12.fc17, notify-sharp-0.4.0-0.18.20100411svn.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing ndesk-dbus-0.6.1a-11.fc17 ndesk-dbus-glib-0.4.1-12.fc17 notify-sharp-0.4.0-0.18.20100411svn.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-9251/ndesk-dbus-0.6.1a-11.fc17,ndesk-dbus-glib-0.4.1-12.fc17,notify-sharp-0.4.0-0.18.20100411svn.fc17 then log in and leave karma (feedback). If I open docky as root now, I get this: [root@cplummer-dl ~]# docky [Info 14:21:30.503] Docky version: 2.0.12 Release [Info 14:21:30.529] Kernel version: 3.4.0.1 [Info 14:21:30.530] CLR version: 2.0.50727.1433 Unhandled Exception: System.Exception: Unable to open the session message bus. ---> System.ArgumentNullException: Argument cannot be null. Parameter name: address at NDesk.DBus.Bus.Open (System.String address) [0x00000] in <filename unknown>:0 at NDesk.DBus.Bus.get_Session () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at NDesk.DBus.Bus.get_Session () [0x00000] in <filename unknown>:0 at NDesk.DBus.BusG.Init () [0x00000] in <filename unknown>:0 at Docky.Docky.Main (System.String[] args) [0x00000] in <filename unknown>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.Exception: Unable to open the session message bus. ---> System.ArgumentNullException: Argument cannot be null. Parameter name: address at NDesk.DBus.Bus.Open (System.String address) [0x00000] in <filename unknown>:0 at NDesk.DBus.Bus.get_Session () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at NDesk.DBus.Bus.get_Session () [0x00000] in <filename unknown>:0 at NDesk.DBus.BusG.Init () [0x00000] in <filename unknown>:0 at Docky.Docky.Main (System.String[] args) [0x00000] in <filename unknown>:0 If I open it as my local user, cplummer, then I get it to open, but it still fails on settings (right click the docky icon, then click 'Settings') because gnome-desktop is not installed. Please make gnome-desktop a dependency of the docky package! Exception in Gtk# callback delegate Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception. System.TypeInitializationException: An exception was thrown by the type initializer for Docky.ConfigurationWindow ---> System.DllNotFoundException: libgnome-desktop-2.so.17 at (wrapper managed-to-native) Gnome.DesktopItem:gnome_desktop_item_new_from_file (intptr,int,intptr&) at Gnome.DesktopItem.NewFromFile (System.String file, DesktopItemLoadFlags flags) [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow.get_AutoStart () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..ctor () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at Docky.Items.DockyItem.<OnGetMenuItems>m__6E (System.Object o, System.EventArgs a) [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItem.SendClick () [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItemWidget.OnButtonReleaseEvent (Gdk.EventButton evnt) [0x00000] in <filename unknown>:0 at Gtk.Widget.buttonreleaseevent_cb (IntPtr widget, IntPtr evnt) [0x00000] in <filename unknown>:0 at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal) at Gtk.Widget.buttonreleaseevent_cb(IntPtr widget, IntPtr evnt) at Gtk.Application.gtk_main() at Gtk.Application.Run() at Docky.Docky.Main(System.String[] args) Cairo.Context: called from finalization thread, programmer is missing a call to Dispose Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for Docky.ConfigurationWindow ---> System.DllNotFoundException: libgnome-desktop-2.so.17 at (wrapper managed-to-native) Gnome.DesktopItem:gnome_desktop_item_new_from_file (intptr,int,intptr&) at Gnome.DesktopItem.NewFromFile (System.String file, DesktopItemLoadFlags flags) [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow.get_AutoStart () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..ctor () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at Docky.Items.DockyItem.<OnGetMenuItems>m__6E (System.Object o, System.EventArgs a) [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItem.SendClick () [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItemWidget.OnButtonReleaseEvent (Gdk.EventButton evnt) [0x00000] in <filename unknown>:0 at Gtk.Widget.buttonreleaseevent_cb (IntPtr widget, IntPtr evnt) [0x00000] in <filename unknown>:0 [ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for Docky.ConfigurationWindow ---> System.DllNotFoundException: libgnome-desktop-2.so.17 at (wrapper managed-to-native) Gnome.DesktopItem:gnome_desktop_item_new_from_file (intptr,int,intptr&) at Gnome.DesktopItem.NewFromFile (System.String file, DesktopItemLoadFlags flags) [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow.get_AutoStart () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..ctor () [0x00000] in <filename unknown>:0 at Docky.ConfigurationWindow..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at Docky.Items.DockyItem.<OnGetMenuItems>m__6E (System.Object o, System.EventArgs a) [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItem.SendClick () [0x00000] in <filename unknown>:0 at Docky.Menus.MenuItemWidget.OnButtonReleaseEvent (Gdk.EventButton evnt) [0x00000] in <filename unknown>:0 at Gtk.Widget.buttonreleaseevent_cb (IntPtr widget, IntPtr evnt) [0x00000] in <filename unknown>:0 (In reply to comment #16) > If I open docky as root now, I get this: > > [root@cplummer-dl ~]# docky > [Info 14:21:30.503] Docky version: 2.0.12 Release > [Info 14:21:30.529] Kernel version: 3.4.0.1 > [Info 14:21:30.530] CLR version: 2.0.50727.1433 > > Unhandled Exception: System.Exception: Unable to open the session message > bus. ---> System.ArgumentNullException: Argument cannot be null. > ... I get the same as root, but as user, docky starts without any issues. ndesk-dbus-0.6.1a-11.fc17, ndesk-dbus-glib-0.4.1-12.fc17, notify-sharp-0.4.0-0.18.20100411svn.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report. |