Xvnkb failed with Puppy 2 ?

For efforts in internationalising Puppy and solving problems in this area
Post Reply
Message
Author
User avatar
phantrongnghia
Posts: 205
Joined: Mon 24 Apr 2006, 14:11
Location: Hanoi,Vietnam
Contact:

Xvnkb failed with Puppy 2 ?

#1 Post by phantrongnghia »

I compiled xvnkb(ver 0.2.9) from source and can typing vietnamese( because I prefer
xvnkb than x-unikey) but one problem occured:
- I can not run "Connect to internet by cable interface" and all appication in Wizard Wizard, I only run it by type command in console( such as net-setup.sh)
- How to fix this problem ,Hacao, MU ?
Thanks

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#2 Post by MU »

Man, this is tricky...

rename
/usr/sbin/wizardwizard
to
/usr/sbin/wizardwizard0

copy
/etc/ld.so.preload
to
/etc/ld.so.preload-MU

create a new script
/usr/sbin/wizardwizard

Code: Select all

#!/bin/sh
rm -f /etc/ld.so.preload
wizardwizard0 &
sleep 2
cp /etc/ld.so.preload-MU /etc/ld.so.preload
make it executable with this command:
chmod 755 /usr/sbin/wizardwizard

That's it.

Explanation:
xvnkb creates /etc/ld.so.preload.
It has this entry:
/lib/xvnkb.so.0.2.9-1

This means, BEFORE any application loads, this library is loaded.
This library manipulates the input-streams to grab the keystrokes, when you type characters on the keyboard.

The problem:
Gtkdialog uses streams itself, to pass shell-commands to Gtk (somehow, don't ask me Details ;) ).
This gets broken, when another program like xvnkb.so.0.2.9-1 uses this, too.
I only found one solution:
instead of wizardwizard, you run my new script.
It deletes /etc/ld.so.preload, so that xvnkb.so.0.2.9-1 will not start, when we run the next command wizardwizard0 (what is Puppys wizard).
Then we wait 2 seconds, and restore /etc/ld.so.preload, so that all other programs will use it again.

Maybe there is a cleaner solution to prevent a program from using preload, but I don't know that :?
So see my description as a "workaround", not as a solution how things should be done, if you would write a book about it.

Mark

User avatar
phantrongnghia
Posts: 205
Joined: Mon 24 Apr 2006, 14:11
Location: Hanoi,Vietnam
Contact:

#3 Post by phantrongnghia »

Yes. it worked !
xvnkb conflicted with abiword 2.4 ?
Thanks

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#4 Post by MU »

xvnkb conflicted with abiword 2.4 ?
Yes, I could not type vietnamese.
I had to use abiword20 instead :cry:
Mark

User avatar
phantrongnghia
Posts: 205
Joined: Mon 24 Apr 2006, 14:11
Location: Hanoi,Vietnam
Contact:

#5 Post by phantrongnghia »

It also apply for wizardwizard
But I want apply to all app (such as pupget...)

How to ?

Thanks

User avatar
phantrongnghia
Posts: 205
Joined: Mon 24 Apr 2006, 14:11
Location: Hanoi,Vietnam
Contact:

#6 Post by phantrongnghia »

Does xvnkb support GTK_IM_MODULE ?

Thanks

Post Reply