The time now is Wed 19 Jun 2013, 04:17
All times are UTC - 4 |
| Author |
Message |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Thu 11 Oct 2012, 10:30 Post_subject:
|
|
| Jubei-Mitsuyoshi wrote: | Hi i would like help in porting this to an arch based distro i am working on, what do i need to do to get it to compile on a standard 86_64 posix platform ? ie Archlinux
And BTW friggin fantastic !!!!! |
It should compile without problems (and if there are any please report it here ). The same command ./configure --prefix=/usr --sysconfdir=/etc && make && make install will mostly work well. You may need to run sudo make install instead of make install if you are not root.
I haven't yet tested it on other distros but I have tried to ensure to keep out puppy-specific things from the sources. So it should probably run.
And before applications can use it you should start the daemon pup-volume-monitor, preferably before starting X. I suspect this thing is distro-specific so I haven't included it in source package.
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
Jubei-Mitsuyoshi
Joined: 10 Oct 2012 Posts: 2
|
Posted: Thu 11 Oct 2012, 13:53 Post_subject:
|
|
cheers, we have it compiled and packaged it for our version of archlinux, ( without systemd, and gtk crud )
Its really important work, i am trying to strip the crud from gnome3 ( specifically cinnamon ) and this a big step forward, this should help replace udisks eventually.
I know its being cheeky but how do you fancy tackling upower/power management in the same manner
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Thu 11 Oct 2012, 23:57 Post_subject:
|
|
| akash_rawal wrote: | | Looks like there's a bug in blkid or you have a really strange card which has a filesystem as well as a partition table. I will come up shortly with a program to investigate further. |
Would be nice if the program could detect anomalies like that. However, I'm afraid I can not help test it anymore. I did a low level formatting and repartition of the strange card and now it behaves.
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Fri 12 Oct 2012, 11:06 Post_subject:
compile failed |
|
Tried to compile pup-volume-monitor-0.1.8 and desktop_drive_icons-0.0.1 in PuppyPrecise beta 7 (to eventually make a pet) and they both failed. The pvm with
| Code: | make[2]: Entering directory `/root/pup-volume-monitor-0.1.8/tester'
CC client-client.o
CCLD client
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_error'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_close'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_open'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_symbol'
collect2: ld returned 1 exit status
make[2]: *** [client] Error 1 |
and the drive-icons with
| Code: | CCLD desktop_drive_icons
/usr/bin/ld: desklet.o: undefined reference to symbol 'XFree'
/usr/bin/ld: note: 'XFree' is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line
/usr/lib/libX11.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status |
I can only assume that some devel libs are missing, but if you have any idea will save me some hunting
Thx.
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Fri 12 Oct 2012, 13:11 Post_subject:
Re: compile failed |
|
| mavrothal wrote: | Tried to compile pup-volume-monitor-0.1.8 and desktop_drive_icons-0.0.1 in PuppyPrecise beta 7 (to eventually make a pet) and they both failed. The pvm with
| Code: | make[2]: Entering directory `/root/pup-volume-monitor-0.1.8/tester'
CC client-client.o
CCLD client
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_error'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_close'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_open'
../libpupvm/.libs/libpupvm.so: undefined reference to `g_module_symbol'
collect2: ld returned 1 exit status
make[2]: *** [client] Error 1 |
|
gmodule library is missing or isn't linked. Library name is libgmodule-2.0.so, and you can check whether gmodule library is linked by typing pkg-config --libs gio-2.0 , it should list -lgmodule along with other linker flags.
| mavrothal wrote: |
and the drive-icons with
| Code: | CCLD desktop_drive_icons
/usr/bin/ld: desklet.o: undefined reference to symbol 'XFree'
/usr/bin/ld: note: 'XFree' is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line
/usr/lib/libX11.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status |
|
This time problem is with X11 library, Apparently the linker has found the library but maybe it is corrupted, as it is complaining about XFree() but not XGetAtomName() even when both belong to same library.
In my system (slacko 531) pkg-config --libs gtk+-2.0 doesn't include -lX11. But still the code compiles
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Fri 12 Oct 2012, 15:28 Post_subject:
Re: compile failed |
|
| akash_rawal wrote: |
gmodule library is missing or isn't linked. Library name is libgmodule-2.0.so, and you can check whether gmodule library is linked by typing pkg-config --libs gio-2.0 , it should list -lgmodule along with other linker flags. |
Indeed libgmodule was not in gio-2.0.pc. Addinig it solves this problem but the compile stumbles on the same 'XFree; error in libX11, which BTW is also not linked to gtk-+2 in precise
Tried "export LDLIBS="-lX11"" or "LDLIBS="-X11"", but still fails with the same error although pup-volume-monitor compiles fine after linking to libX11
Latter compiled desktop_drive_icons in slacko ok and tried to use it in Precise with precise-compiled pup-volume-monitor.
It fails with
| Code: | # exec /usr/local/bin/desktop_drive_icons &
[1] 9563
# ** Message: Config file not found
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientMonitor'.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDevice'.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupVolumeMonitor'.
(desktop_drive_icons:9563): GLib-GIO-WARNING **: Tried to register an extension of the type (null) to extension point gio-volume-monitor. Expected type is GVolumeMonitor.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientVolume'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupMount'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDrive'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed |
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
Geoffrey

Joined: 30 May 2010 Posts: 935 Location: Queensland Australia ɹǝpu∩uʍop
|
Posted: Sat 13 Oct 2012, 05:18 Post_subject:
|
|
akash_rawal,
I've compiled and replaced the pup-volume-monitor in Saluki/Carolina with pup-volume-monitor-0.1.8, looks a lot tidier now without all the loops icons, though now if I unmount any drive, I don't get the safe to remove message, this is handy to have, though it does really only need to show this message on removal of such devices as CD and USB.
If this could be re-enabled just for removable devices it would be appreciated, keep up the good work.
thanks for all your effort.
| Description |
|
| Filesize |
6.72 KB |
| Viewed |
601 Time(s) |

|
_________________ AdobeAIR App Links: HERE
Carolina: Recent Repository Additions
|
|
Back to top
|
|
 |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Sat 13 Oct 2012, 09:00 Post_subject:
|
|
| Geoffrey wrote: | akash_rawal,
I've compiled and replaced the pup-volume-monitor in Saluki/Carolina with pup-volume-monitor-0.1.8, looks a lot tidier now without all the loops icons, though now if I unmount any drive, I don't get the safe to remove message, this is handy to have, though it does really only need to show this message on removal of such devices as CD and USB.
If this could be re-enabled just for removable devices it would be appreciated, keep up the good work.
thanks for all your effort. |
The safe to remove message in saluki is provided by tmount script written by jemimah. jemimah has configured the volume monitor to use tmount instead of usual mount and umount commands.
There is a config file at /etc/xdg/pup-volume-monitor/main.conf. To restore the original behavior simply restore the original main.conf from saluki 23. But it will also restore unmounting bug for removable drives at http://www.murga-linux.com/puppy/viewtopic.php?p=650409#650409 (and I too have the same problem.)
Thunar also has notification support. You enable it by configuring with option --enable-notifications to the configure script. Maybe try that too.
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Sat 13 Oct 2012, 12:42 Post_subject:
Re: compile failed |
|
| mavrothal wrote: |
Tried "export LDLIBS="-lX11"" or "LDLIBS="-X11"", but still fails with the same error |
For the record, I tried with | Code: | | LIBS=-lX11 GTK2_LIBS=$LIBS LDFLAGS=-L/usr/lib ./configure && make | and finally desktop_drive_icons-0.0.1 compiled fine in puppy-precise.
However it still fails to run with the errors mentioned above.
Any idea where the "two different plugins" may be coming from, which I assume leads to the G_TYPE_CHECK failure?
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Sun 14 Oct 2012, 01:46 Post_subject:
|
|
| mavrothal wrote: |
It fails with
| Code: | # exec /usr/local/bin/desktop_drive_icons &
[1] 9563
# ** Message: Config file not found
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientMonitor'.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDevice'.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupVolumeMonitor'.
(desktop_drive_icons:9563): GLib-GIO-WARNING **: Tried to register an extension of the type (null) to extension point gio-volume-monitor. Expected type is GVolumeMonitor.
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientVolume'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupMount'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDrive'.
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed
(desktop_drive_icons:9563): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(desktop_drive_icons:9563): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed |
|
I managed to reproduce the situation by duplicating client side module /usr/lib/gio/modules/libpup-volume-monitor.so :
| Code: |
# cp /usr/lib/gio/modules/libpup-volume-monitor.so /usr/lib/gio/modules/libpup-volume-monitor-2.so
# desktop_drive_icons
** Message: Config file not found
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientMonitor'.
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDevice'.
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupVolumeMonitor'.
(desktop_drive_icons:13905): GLib-GIO-WARNING **: Tried to register an extension of the type (null) to extension point gio-volume-monitor. Expected type is GVolumeMonitor.
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientVolume'.
(desktop_drive_icons:13905): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupMount'.
(desktop_drive_icons:13905): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:13905): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDrive'.
(desktop_drive_icons:13905): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
^C
#
|
So it must be some problem of same GIO module present at two different search paths or under two different names. That's the source of "two different plugins".
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Sun 14 Oct 2012, 04:40 Post_subject:
|
|
| akash_rawal wrote: |
So it must be some problem of same GIO module present at two different search paths or under two different names. That's the source of "two different plugins". |
Maybe that's why/because gio-2.0.pc moved gmodule from "Requires" to "Requires.private: gmodule-no-export-2.0". and puppy-precise (or I...) do not know how to handle this during config/compile.
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Sun 14 Oct 2012, 05:33 Post_subject:
|
|
| mavrothal wrote: |
Maybe that's why/because gio-2.0.pc moved gmodule from "Requires" to "Requires.private: gmodule-no-export-2.0". and puppy-precise (or I...) do not know how to handle this during config/compile.
|
No, there are two instances of same library libpup-volume-monitor.so present at different locations or under different name. gio then loads both of them and that leads to conflict.
Till now that's the only way I am able to reproduce the problem.
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Sun 14 Oct 2012, 10:21 Post_subject:
|
|
| akash_rawal wrote: |
No, there are two instances of same library libpup-volume-monitor.so present at different locations or under different name. gio then loads both of them and that leads to conflict.
Till now that's the only way I am able to reproduce the problem. |
I do not see such a thing
| Code: | #find /usr/ -name "libpup*"
/usr/lib/libpupvm.so
/usr/lib/libpupvm.so.0
/usr/lib/libpupvm.so.0.0.0
/usr/lib/gio/modules/libpup-volume-monitor.so
/usr/lib/gio/modules/libpup-volume-monitor.so.0
/usr/lib/gio/modules/libpup-volume-monitor.so.0.0.0
# ps | grep monitor
12039 root 0:00 {pup-volume-moni} /bin/sh /usr/bin/pup-volume-monitor-starter
12053 root 0:00 pup-volume-monitor |
And the volume-monitor-log is clean except the complain about the config file for plugin libcdrom
They were these warnings during compile
| Code: | main.c:25:11: warning: variable `icon_view' set but not used [-Wunused-but-set-variable]
CC desklet.o
CC icon.o
icon.c: In function `icon_umount':
icon.c:437:2: warning: `g_mount_unmount_finish' is deprecated (declared at /usr/include/glib-2.0/gio/gmount.h:184): \
Use `g_mount_unmount_with_operation_finish' instead [-Wdeprecated-declarations]
icon.c:440:2: warning: `g_mount_unmount' is deprecated (declared at /usr/include/glib-2.0/gio/gmount.h:177): \
Use `g_mount_unmount_with_operation' instead [-Wdeprecated-declarations]
icon.c: In function `icon_eject':
icon.c:447:2: warning: `g_volume_eject_finish' is deprecated (declared at /usr/include/glib-2.0/gio/gvolume.h:212): \
Use `g_volume_eject_with_operation_finish' instead [-Wdeprecated-declarations]
icon.c:450:2: warning: `g_volume_eject' is deprecated (declared at /usr/include/glib-2.0/gio/gvolume.h:205): \
Use `g_volume_eject_with_operation' instead [-Wdeprecated-declarations] | but they do not look very threating
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
akash_rawal

Joined: 25 Aug 2010 Posts: 215 Location: Pune, Maharashtra, India
|
Posted: Sun 14 Oct 2012, 12:12 Post_subject:
|
|
Then I have a little idea what are those 'two different plugins'.
I have added debugging information to pup-volume-monitor and attached here. Output of desktop_drive_icons or other GIO application with this mod installed can help us find the conflict.
I recommend not to keep this mod installed for long, it can malfunction with frisbee and other programs.
| Description |
|

Download |
| Filename |
pup-volume-monitor-0.1.8dbg1.tar.gz |
| Filesize |
378.35 KB |
| Downloaded |
223 Time(s) |
_________________ If there's an open source project in your hand,
Don't aim for popularity, it's out of your hand.
Aim for perfection, as that's the best thing you can.
|
|
Back to top
|
|
 |
mavrothal

Joined: 24 Aug 2009 Posts: 1062
|
Posted: Sun 14 Oct 2012, 15:12 Post_subject:
|
|
Couln't see much more. Still no extra instances of pup-volume-monitor, nothing in the logs and disk_drive_icons segfaults.
| Code: | # desktop_drive_icons
** Message: Config file not found
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientMonitor'.
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDevice'.
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupVolumeMonitor'.
(desktop_drive_icons:5608): GLib-GIO-WARNING **: Tried to register an extension of the type (null) to extension point gio-volume-monitor. Expected type is GVolumeMonitor.
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientVolume'.
(desktop_drive_icons:5608): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupMount'.
(desktop_drive_icons:5608): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:5608): GLib-GObject-WARNING **: Two different plugins tried to register 'PupClientDrive'.
(desktop_drive_icons:5608): GLib-GObject-CRITICAL **: g_type_add_interface_dynamic: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed
(desktop_drive_icons:5608): GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed
(desktop_drive_icons:5608): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(desktop_drive_icons:5608): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
Segmentation fault
#dmesg
desktop_drive_i[5608]: segfault at 48 ip b65e2ea4 sp bff81dd0 error 6 in libpup-volume-monitor.so.0.0.0[b65df000+9000] |
_________________ Kids all over the world go around with an XO laptop. They deserve one puppy (or many) too 
|
|
Back to top
|
|
 |
|
|
|
Rules_post_cannot Rules_reply_cannot Rules_edit_cannot Rules_delete_cannot Rules_vote_cannot You cannot attach files in this forum You can download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|