! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Xfce sensors plugin crashes after changing settings
Status:
RESOLVED: FIXED
Severity:
critical
Product:
Xfce4-sensors-plugin
Component:
General

Comments

Description Heiko Baums 2011-01-30 02:09:05 CET
When opening the settings dialog, changing some settings (doesn't matter which ones) and closing this dialog the Xfce4-sensors-plugin 1.0.0 crashes under Xfce 4.8.

So it's not possible to configure it after adding it to the panel for the first time, thus it can't be used.
Comment 1 clubsoda 2011-04-13 12:15:40 CEST
Perhaps you have old, incompatible configuration files in ~/.config/xfce4/panel ?
I'd suggest removing the sensors plugin from the panel, deleting any leftover sensor related files in that directory and starting again.

Cheers.
Comment 2 Heiko Baums 2011-04-13 12:36:00 CEST
There is no config file in ~/.config/xfce4/panel which is related to the sensors plugin. And the file permissions to this directory are also correct.
Comment 3 Fabian Nowak editbugs 2011-05-02 19:12:40 CEST
(In reply to comment #2)
> There is no config file in ~/.config/xfce4/panel which is related to the
> sensors plugin. And the file permissions to this directory are also correct.

Did you chose the tachometers as visualization? this is the case when I can reproduce it, otherwise I can't. I am investigating the problem with the tachometers for a few weeks now and will heopefully succeed within the next.
Comment 4 Fabian Nowak editbugs 2011-05-02 19:18:16 CEST
(In reply to comment #2)
> There is no config file in ~/.config/xfce4/panel which is related to the
> sensors plugin. And the file permissions to this directory are also correct.

Ähm, which version are you using? A release or a self-built from the SVN repository?
Comment 5 Heiko Baums 2011-05-02 19:30:45 CEST
(In reply to comment #3)
> Did you chose the tachometers as visualization? this is the case when I can
> reproduce it, otherwise I can't. I am investigating the problem with the
> tachometers for a few weeks now and will heopefully succeed within the next.

I'm not using the tachometers, so this issue is not related to them. But I had the tachometer crashes, too, in earlier versions.
Comment 6 Heiko Baums 2011-05-02 19:34:03 CEST
(In reply to comment #4)
> Ähm, which version are you using? A release or a self-built from the SVN
> repository?

I'm using the latest Arch Linux package. It's the 1.0.0 release, self-built by the Arch devs.
Comment 7 Heiko Baums 2011-05-03 16:46:49 CEST
Well, actually "crash" is not the right word. But it doesn't save the settings, and doesn't create a config file.

Means, if I add the sensors plugin I see the plugin just with the name "Sensors" in the panel. When I open the settings dialog and make some changes, these changes are displayed correctly at once. But as soon as I close the settings dialog the settings are forgotten and I only see the name "Sensors" again.
Comment 8 Fabian Nowak editbugs 2011-05-03 17:47:30 CEST
(In reply to comment #7)
> Well, actually "crash" is not the right word. But it doesn't save the settings,
> and doesn't create a config file.
> 
> Means, if I add the sensors plugin I see the plugin just with the name
> "Sensors" in the panel. When I open the settings dialog and make some changes,
> these changes are displayed correctly at once. But as soon as I close the
> settings dialog the settings are forgotten and I only see the name "Sensors"
> again.

Try the git version and also ask the archlinux people whether they changed something or applied own patches. I don't have these problems. if it happens also with other plugins, look at write permissions of "ls -l ~/.config/xfce4/ " for the panel folder.

Also try compiling with debug enabled to see the output of "xfce4-panel" running in a terminal. close the running instance first by "xfce4-panel -q".
Comment 9 Heiko Baums 2011-05-03 21:37:14 CEST
(In reply to comment #8)
> Try the git version and also ask the archlinux people whether they changed
> something or applied own patches. I don't have these problems. if it happens
> also with other plugins, look at write permissions of "ls -l ~/.config/xfce4/ "
> for the panel folder.
> 
> Also try compiling with debug enabled to see the output of "xfce4-panel"
> running in a terminal. close the running instance first by "xfce4-panel -q".

They applied two patches in their PKGBUILD. The first patch is from bug #7095. The second seems to have something to do with libnotify.

If I rebuild this package and remove one or both patches the plugin fails to build with different error messages.

But I'll try the git version later.

The file permissions for ~/.config/xfce4 and below are set correctly, but, of course, only for the user (700).
Comment 10 Heiko Baums 2011-05-03 21:50:44 CEST
Tried to build the git version with this AUR package:
http://aur.archlinux.org/packages.php?ID=31168

But the build failed with the error:
"panel-plugin/Makefile.am:13: compiling `sensors-plugin.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.in'
Makefile.am: installing `./INSTALL'"

As you can read in the AUR comments at least the git version from 04. April has the same issue.

But as mentioned in this comment and in an Arch Linux bug report (https://bugs.archlinux.org/task/22705) the Gentoo devs seem to have a working patch which shall fix this issue in their bugzilla (http://bugs.gentoo.org/318755).

I'll try it, too.
Comment 11 Heiko Baums 2011-05-03 21:56:04 CEST
Can't test the Gentoo patch, because with all those 3 patches build fails, too. This time with this error message:

libtool: link: gcc -DPACKAGE_LOCALE_DIR=\"/usr/share/locale\" -I/usr/include -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -I/usr/include/xfce4/libxfce4panel-1.0 -I/usr/include/gtk-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/xfce4 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14 -pthread -I/usr/include/xfce4 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14 -I/usr/include/atk-1.0 -march=x86-64 -mtune=generic -O2 -pipe --no-undefined -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/xfce4-sensors xfce4_sensors-main.o xfce4_sensors-interface.o xfce4_sensors-callbacks.o xfce4_sensors-actions.o -Wl,--export-dynamic -pthread -pthread  ../lib/.libs/libxfce4sensors.so -lnotify -lsensors -lxfce4panel-1.0 -lxfcegui4 -lgtk-x11-2.0 -lxfce4util -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lpng14 -lm -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -pthread -Wl,-rpath -Wl,/usr/lib/xfce4/modules
gcc: error: unrecognized option '--no-undefined'
make[2]: *** [xfce4-sensors] Error 1
Comment 12 Fabian Nowak editbugs 2011-05-03 22:04:38 CEST
(In reply to comment #11)
> Can't test the Gentoo patch, because with all those 3 patches build fails, too.
> This time with this error message:

because you are using gcc 4.6 and don't use upstream git version where --no-undefined is now fixed to be prepended a -Wl, use gcc-4.5 and lower, or fix manually or use the git version to try out.
Comment 13 Heiko Baums 2011-05-03 22:10:41 CEST
I used upstream git version, because the PKGBUILD in the AUR always pulls the latest git version.
Comment 14 Heiko Baums 2011-05-03 22:41:54 CEST
(In reply to comment #13)
> I used upstream git version, because the PKGBUILD in the AUR always pulls the
> latest git version.

Forgot that I tried the Gentoo patch with the release.

Now tried it again with the latest git snapshot, but it failed again with this error message:

panel-plugin/Makefile.am:13: compiling `sensors-plugin.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.in'
Makefile.am: installing `./INSTALL'
Comment 15 Fabian Nowak editbugs 2011-05-05 14:26:25 CEST
(In reply to comment #7)
> Well, actually "crash" is not the right word. But it doesn't save the settings,
> and doesn't create a config file.
> 
> Means, if I add the sensors plugin I see the plugin just with the name
> "Sensors" in the panel. When I open the settings dialog and make some changes,
> these changes are displayed correctly at once. But as soon as I close the
> settings dialog the settings are forgotten and I only see the name "Sensors"
> again.

Can you please look at the process id via "ps -e | grep sen" when configuring and after "the settings are forgotten" because I think that the plugin simply crashes due to some archlinux patches and that you are given a new plugin instead, making you feel that the settings were forgotten. thanks
Comment 16 Fabian Nowak editbugs 2011-05-05 14:59:49 CEST
(In reply to comment #11)
> Can't test the Gentoo patch, because with all those 3 patches build fails, too.
> This time with this error message:
> 
> libtool: link: gcc -DPACKAGE_LOCALE_DIR=\"/usr/share/locale\" -I/usr/include
> -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
> -pthread -I/usr/include/xfce4/libxfce4panel-1.0 -I/usr/include/gtk-2.0
> -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/xfce4
> -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo
> -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/pixman-1
> -I/usr/include/freetype2 -I/usr/include/libpng14 -pthread -I/usr/include/xfce4
> -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0
> -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0
> -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1
> -I/usr/include/freetype2 -I/usr/include/libpng14 -I/usr/include/atk-1.0
> -march=x86-64 -mtune=generic -O2 -pipe --no-undefined -Wl,--hash-style=gnu
> -Wl,--as-needed -o .libs/xfce4-sensors xfce4_sensors-main.o
> xfce4_sensors-interface.o xfce4_sensors-callbacks.o xfce4_sensors-actions.o
> -Wl,--export-dynamic -pthread -pthread  ../lib/.libs/libxfce4sensors.so
> -lnotify -lsensors -lxfce4panel-1.0 -lxfcegui4 -lgtk-x11-2.0 -lxfce4util
> -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0
> -lgdk_pixbuf-2.0 -lpng14 -lm -lcairo -lpango-1.0 -lfreetype -lfontconfig
> -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -pthread -Wl,-rpath
> -Wl,/usr/lib/xfce4/modules
> gcc: error: unrecognized option '--no-undefined'
> make[2]: *** [xfce4-sensors] Error 1

the latest git version has this patch for gcc 4.5 and newer applied already before you tested, so it seems you did not git clone http://xfce...sensors-plugin. plz clone the original repository and run ./autogen.sh, post the results, config.h, config.log, then make && sudo make install clean.
Comment 17 Heiko Baums 2011-05-05 15:04:34 CEST
(In reply to comment #15)
> Can you please look at the process id via "ps -e | grep sen" when configuring
> and after "the settings are forgotten" because I think that the plugin simply
> crashes due to some archlinux patches and that you are given a new plugin
> instead, making you feel that the settings were forgotten. thanks

You can be right.

# ps -e | grep sen
 5351 ?        00:00:00 xfce4-sensors-p
# ps -e | grep sen
 5351 ?        00:00:00 xfce4-sensors-p
# ps -e | grep sen
 5351 ?        00:00:03 xfce4-sensors-p
# ps -e | grep sen
 5422 ?        00:00:00 xfce4-sensors-p

Here you can find the PKGBUILD with which the package was built and the two patches which have been applied by the Arch devs:

http://projects.archlinux.org/svntogit/packages.git/tree/xfce4-sensors-plugin/repos/extra-x86_64/

Or the PKGBUILD and the patches in detail:

http://projects.archlinux.org/svntogit/packages.git/tree/xfce4-sensors-plugin/repos/extra-x86_64/PKGBUILD
http://projects.archlinux.org/svntogit/packages.git/tree/xfce4-sensors-plugin/repos/extra-x86_64/xfce4-sensors-plugin-1.0.0-libnotify-0.7.patch
http://projects.archlinux.org/svntogit/packages.git/tree/xfce4-sensors-plugin/repos/extra-x86_64/xfce4-sensors-plugin-1.0.0-underlink.patch

But it's not possible to build it without these or one of these patches.

Without both patches it fails with these error messages:

sensors-interface.c: In function 'fill_gtkTreeStore':
sensors-interface.c:108:17: error: too many arguments to function 'notify_notification_new'

hddtemp.c: In function 'quick_message_notify':
hddtemp.c:105:5: error: too many arguments to function 'notify_notification_new'

With the libnotify patch and without the underlink patch it fails with this error message:

In file included from ../include/sensors-interface.h:28:0,
                 from interface.c:31:
../include/sensors-interface-common.h:34:45: fatal error: libxfce4panel/xfce-panel-plugin.h: No such file or directory

If I also enable the underlink patch I just get the gcc 4.6 related --no-undefined error. So I guess this would usually compile with the appropriate fix you mentioned or a previous gcc version.

I'll try the git version again later.
Comment 18 Fabian Nowak editbugs 2011-05-05 15:18:55 CEST
(In reply to comment #14)
> (In reply to comment #13)
> > I used upstream git version, because the PKGBUILD in the AUR always pulls the
> > latest git version.
> 
> Forgot that I tried the Gentoo patch with the release.
> 
> Now tried it again with the latest git snapshot, but it failed again with this
> error message:
> 
> panel-plugin/Makefile.am:13: compiling `sensors-plugin.c' with per-target flags
> requires `AM_PROG_CC_C_O' in `configure.in'
> Makefile.am: installing `./INSTALL'

you can try the current git version where I included the compile flag. you could have also tried on your own to simply insert this flag to the advised file, since I don't have gcc-4.6 and neither do I know your versions of auto* -- I do have/use 1.11.1
Comment 19 Fabian Nowak editbugs 2011-05-05 15:25:10 CEST
(In reply to comment #17)
> (In reply to comment #15)
> 
> In file included from ../include/sensors-interface.h:28:0,
>                  from interface.c:31:
> ../include/sensors-interface-common.h:34:45: fatal error:
> libxfce4panel/xfce-panel-plugin.h: No such file or directory
> 
> If I also enable the underlink patch I just get the gcc 4.6 related
> --no-undefined error. So I guess this would usually compile with the
> appropriate fix you mentioned or a previous gcc version.
> 
> I'll try the git version again later.

The underlinking issue is also fixed long ago in git; the stuff with the notify is due to a new libnotify. You will have to use the old libnotify, or really apply the patches and hope that they work well. As said in another bugzilla entry, I will wait with porting until my systems are equipped with the new version as well.

But as I have these nice --enable statements for the ./configure (try to apend --help) it should be possible to deactivate them explicitly and forget these few notification messages for badly installed hddtemp and the like.
Comment 20 Fabian Nowak editbugs 2011-05-05 20:23:27 CEST
(In reply to comment #19)

plz try these steps:
$ git clone http://git.xfce.org/panel-plugins/xfce4-sensors-plugin
$ ./autogen.sh --enable-debug=yes --enable-notification=no
see output from configure: no messages about notify, message about full debug
$ make && sudo make install clean
$ gdb xfce4-sensors
gdb: r
check some entries, modify colors, min, max, names
check that no warnings or errors are output and that the tachometers are shown.
in case the application fails, do
gdb: bt
and post that backtrace.

apart from that:
$ xfce4-panel -q; xfce4-panel
now check output again on why the plugin crashes when closing the settings dialog or whenever.
$ dmesg | tail
is there some output on the crash? plz send.

thanks for your efforts.
Comment 21 Heiko Baums 2011-05-05 20:37:16 CEST
(In reply to comment #20)
> plz try these steps:
> $ git clone http://git.xfce.org/panel-plugins/xfce4-sensors-plugin
> $ ./autogen.sh --enable-debug=yes --enable-notification=no
> see output from configure: no messages about notify, message about full debug
> $ make && sudo make install clean

It was already downloaded from this git URL in my previous tests.
I tried it again, but building still fails at the autogen.sh step:

configure.in:363: the top level
configure.in:42: installing `./compile'
configure.in:28: installing `./config.guess'
configure.in:28: installing `./config.sub'
configure.in:31: installing `./install-sh'
configure.in:47: required file `./ltmain.sh' not found
configure.in:31: installing `./missing'
lib/Makefile.am: installing `./depcomp'
panel-plugin/Makefile.am:64: `%'-style pattern rules are a GNU make extension
Makefile.am: installing `./INSTALL'

Btw., I have installed:
gcc 4.6.0
autoconf 2.68
automake 1.11.1
Comment 22 Fabian Nowak editbugs 2011-05-07 10:09:24 CEST
(In reply to comment #21)
> (In reply to comment #20)
> 
> Btw., I have installed:
> gcc 4.6.0
> autoconf 2.68
> automake 1.11.1

OK, the gcc 4.6 issue with --no-undefined has been fixed long ago; 
the remaining tools don't make issues aprt from that AM_PROG_CC_CO is now needed and fixed in upstream as well;
support for libnotify-0.7 is handled via ifdefs now as well and makes patches unnecessary/incompatible;

so I close this bug as fixed. Please open another bug when finding that a special new glib or gtk version makes problems and makes the plugin/application crash.

Bug #7208

Reported by:
Heiko Baums
Reported on: 2011-01-30
Last modified on: 2011-05-07

People

Assignee:
Fabian Nowak
CC List:
1 user

Version

Version:
unspecified

Attachments

Additional information