Small Goodies: controll your KDE with a Sony Ericsson mobile phone

controll your KDE with a Sony Ericsson mobile phone
At kde-apps.org there is a little KDE package available for Sony Ericsson mobile phones which enable the user to control different (KDE) applications via the mobile phone. It works like a charm and is easy to set up.

Most Sony Ericsson mobile phones with bluetooth offer the option to control the computer via bluetooth - this works basically and can come in handy in case of presentations or similar things. However, the standard profiles delivered with the mobile phone are first of all very basic and second not in every situation compatible with Linux applications.

However, it is possible to load custom profiles to the phone, and H1bakusha has created a set of profiles for different apps - among them Kaffeine, Amarok, VLC and OOo Impress. And they just work: after uploading them to mobile phone it detects them automatically as new profiles and imports them. Afterwards the profiles can be accessed like any other bluetooth control profile.
But before you start you have to confirm the access first: this can be done easily with the kdebluetooth framework (which is part of Fedora and most other distributions, I guess). Start it, and you are automatically asked if the application is allowed to access the system. If you agree you are able to control your media application via your mobile phone. And your KDE-Desktop as well, since there is also a “Desktop” profile.
Thanks for the work, H1bakusha!

I now just wonder what the state of KDE-Bluetooth for KDE 4 is. I never heard of any attempts to port the framework, but I would really miss it in KDE 4. Additionally the framework could be enhanced by the use of Plasmoids: think of a Plasmoid where you can just drag&drop files too to send them via bluetooth to a certain device, or a Plasmoid which would show incoming files until you drag&drop them to somewhere else.

Howto: Using newest flash in Konqueror in Fedora

Using newest flash in Konqueror in Fedora
Recent flash plugins didn’t work with newer Konqueror versions. But now the Fedora-KDE team released new KDE packages with support for the newest flash in Konqueror.

For quite some time now the newer flash plugins didn’t work with Konqueror: they required direct Xembed support which was not provided by Konqueror. As a result most Konqueror users sticked to the latest flash plugin that still supported the old-style Window passing. Some newer features were missing, but the rest worked.

However, recently several problems and vulnerabilities were found in the old flash plugin versions - some of them quite serious. As a result the flash plugin had to be updated or deactivated in Konqueror.

In the meantime the KDE project reacted and update the nspluginviewer library to support direct Xembed. The support is not perfect yet but works. And now the KDE-Fedora team took that code and patched the current kdebase and kdelibs: Konqueror can now use the newest flash plugins.

The updates are still in testing and therefore must be installed via


yum --enablerepo=updates-testing update kdebase kdelibs

But: keep in mind that this is still non-perfect code! There are reports that 86_64 could run into trouble of some kind. But you can help improving the packages by simply testing them and report all problems in the corresponding bug report.

Howto: Logitech QuickCam Pro 9000 with Fedora 8

Logitech QuickCam Pro 9000 with Fedora 8
This howto shows how to install the Logitech QuickCam Pro 9000 under Linux. While the howto is focussed on Fedora 8 it should work on all distributions.

I recently got the Logitech QuickCam Pro 9000. It is a higher class webcam with a 2MP sensor and a Carl Zeiss lens - and, according to Logitech’s Linux page it is supported by the uvcvideo driver.

Kernel module installation

The problem is however that the uvcvideo driver is not yet part of the mainline Linux kernel. I fyou plug in a uvcvideo device, the kernel cannot load the right driver:


Dec  7 02:14:06 machine kernel: usb 1-5: new high speed USB device using ehci_hcd and address 4
Dec  7 02:14:06 machine kernel: usb 1-5: configuration #1 chosen from 1 choice
Dec  7 02:14:06 machine kernel: Linux video capture interface: v2.00
Dec  7 02:14:07 machine kernel: usbcore: registered new interface driver snd-usb-audio

The kernel module must be compiled manually. The fastest way to do that is:


$ mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk
A    trunk/uvc_ctrl.c
A    trunk/uvc_queue.c
A    trunk/uvc_video.c
A    trunk/uvc_v4l2.c
A    trunk/uvc_compat.h
A    trunk/uvc_driver.c
A    trunk/uvcvideo.h
A    trunk/Makefile
A    trunk/dynctrl.txt
Ausgecheckt, Revision 148.
$ cd trunk
$ make
Building USB Video Class driver...
make[1]: Entering directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_driver.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_queue.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_v4l2.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_video.o
  CC [M]  /home/liquidat/tmp/linux-uvc/trunk/uvc_ctrl.o
  LD [M]  /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.mod.o
  LD [M]  /home/liquidat/tmp/linux-uvc/trunk/uvcvideo.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
$ cd ../..
$ su
Passwort:
# mv linux-uvc /opt
# cd /opt/linux-uvc/trunk
# make install
Installing USB Video Class driver…
make[1]: Entering directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
  INSTALL /opt/linux-uvc/trunk/uvcvideo.ko
  DEPMOD  2.6.23.8-63.fc8
make[1]: Leaving directory `/usr/src/kernels/2.6.23.8-63.fc8-i686'
depmod -ae

Of course this requires installed kernel development packages and other general development packages (compiler, etc.). Also, on Ubuntu based distributions you want to enter sudo su instead of the plain su.

A working webcam

After all this is done, the webcam is detected properly:


Dec  7 02:26:19 machine kernel: usb 1-5: new high speed USB device using ehci_hcd and address 7
Dec  7 02:26:19 machine kernel: usb 1-5: configuration #1 chosen from 1 choice
Dec  7 02:26:19 machine kernel: uvcvideo: Found UVC 1.00 device <unnamed> (046d:0990)
Dec  7 02:26:19 machine kernel: usbcore: registered new interface driver uvcvideo
Dec  7 02:26:19 machine kernel: USB Video Class driver (v0.1.0)

The next step is to test the webcam video input. The easiest way is to test this with an application which is known to work with Video4LinuxV2 (uvc mainly supports v4lv2 afaik). The best example is Kopete, which delivered acceptable results for me (although the colours are a bit mixed up):

Kopete showing the webcam input

Skype 2Beta also worked for me with a slightly better video quality, however the screenshot of the Sykpe interface with an embedded video showed just a blank image.

However, if you want to examine the features of your camera in combination with the uvcvideo driver in more detail you need to install luvcview. luvcview can list the possible frame rates and resolutions and also has a display where you can set saturation and similar values live.
In case of QuickCam Pro 9000 I was able to set the resolution to 960×720, and the quality was very good!

Closing words

While this howto explains how to get the uvcvideo driver up and running it does not cover all the fancy features many cameras today come with: additional speakers, microphone, auto-focus and whatnot.

But the main problem is anyway that the module has to be compiled manually. While it worked without any problems this is a task which certainly cannot be done by average computer users. Unfortunately I failed to find any further information why the uvcvideo driver is not part of the kernel yet. I would appreciate any comment which sheds more light on that topic.
It was often mentioned at the uvcvideo driver devel-list that the module will be merged “soon” into the mainline kernel, but that didn’t happen.
However, if the driver is merged at some day it will drastically improve the webcam experience of many Linux users out there since many webcams would be supported out of the box suddenly. I just hope that there are no licence problems keeping uvcvideo out of the kernel atm.

Thanks to Jun’s tech blog for some of the commands used in this howto.

lineak: Using multimedia keyboards with Linux

Tux
I recently got a new “multimedia” keyboard which comes along with a set of extra keys. While my keyboard needed some initial manual configuration it works now almost without problems using Lineak.

Lineak is a tool which aims at easy set up and configuration of multimedia keys on modern keyboards: these keyboards have additional keys which are usually not supported by Gnome or KDE since they are outside the usual keymaps. But lineak can handle such keys and can bind them to specific functions and actions.

In my case I got a Benq X-Touch 122 which I used with my Fedora machine. Since Lineak is part of the standard Fedora repository the installation was pretty easy: yum install lineak*. The asterisk makes sure you get additional plugins, more about that later. After the installation the command lineakd -l shows you a list of supported keyboards. If your keyboard is among them you’re lucky, if not you have to do some manual tuning. Basically you start xev, catch all the keyboard mappings and afterwards add a new section in /etc/lineakkb.def/. Have a look at the other entries of your hardware vendor and you should get the idea.
My keyboard wasn’t supported so I added the following table:

[BENQ-X122]
brandname= “BenQ”
modelname =”X-Touch 122″
[KEYS]
Standby = 223
Back = 234
Forward = 233
Home = 130
Mail = 236
Favourite = 230
[END KEYS]
[END BENQ-X122]

Everything works now, except for the so called function “Function” key which gives access to alternative functions on the F keys. Nice.
The nast step is to make sure that lineak starts everytime you boot up your system - this is done for example by placing something in $HOME/.kde/Autostart/, for example a file like this:

[Desktop Entry]
Type=Application
Exec=/usr/bin/lineakd &
Icon=
Comment=LinEAK - Daemon
Comment[de]=LinEAK - Daemon
Terminal=0
Name=lineakd
Name[de]=lineakd

Now the keyboard special keys can be configured in $HOME/.lineak/lineakd.conf:

Back = AMAROK_BACK
Favourite = KMIX_MUTE
Forward = AMAROK_FORWARD
Home = kfmclient openProfile webbrowsing
Mail = KMAIL_COMPOSE
Standby =

Most stuff should be self-explanatory, for the plugins you can read the docs at /usr/share/doc/lineak-*plugin*/README. There are also some GUI configuration tools out there, but at least the KDE tool had a segfault here :/

However, despite how nice lineak really is, there are problems regarding the future of the tool: I thought that the best would be to add my keyboard table to the lineak information and therefore sent them in. However the answer was a bit sad:

I got it, but I no longer have time to work on lineak. Since another maintainer has not stepped up to the plate, unfortunately these submissions will not get included in the distribution.

This means that lineak is not developed anymore and that it is unlikely to see any larger improvements there in the future. It also means that the keyboard table wont be updated and that everyone with an unsupported keyboard needs to keep these information somewhere in case of updates or re-installs.

Maybe it is time to integrate such a function into X itself to make sure that its development continues. But on the other hand I would also like to see them well integrated with KDE and Gnome and maybe even able to download new keyboard sets via gethotnewstuff. But at the moment the future of multimedia keyboards is rather murky.

Thanks to for a post about lineak which got me started and where I took the autostart entry from.

KDE 4 porting howto updated

kde-logo-official
The KDE 4 application port guide has been updated and brought into better shape. The guide also shows which base technologies and techniques have changed since KDE 3.

The port guide - which can be found in KDE’s svn - was updated all the time, giving developers a place to look for important changes. Now mwoehlke went through the howto and gave it some love to sort everything where it belongs to, unified the used vocabulary and so on. Most of the changes are rather small, but there are numerous and very helpful. For example all removed things are now actually marked with the word “removed” instead of “gone” or “removed” or “deleted”.

The porting guide itself also gives some insight into the huge changes from KDE 3 to KDE 4 besides the often mentioned Plasma, Phonon and Solid. The mimetypes will be reworked to match the XDG ones, for example - compared to the old list hardly any old mimetype is kept! Also, the guide features quite some information how to deal with old KFilePlugins since they have to be ported to strigi.

But most of the changes which have been made since KDE 3 are detail work. I checked for the interesting marks, and found these (in a rough grepping, no really accurate numbers!):

  • 142 things have been “removed” (9 of them with “replace*”, see below)
  • 119 things have been “renamed”
  • 73 things have been “replace*”d (like in “replace”, “replaces”, “replaced” or “replacement”)
  • 59 have been generally “move”d
  • 17 things have been “deprecated”, not counting combined removing
  • 4 merges have taken place
  • 1 split has been done

That’s quite some work done in that area. And since it is work under the hood it does not get any media attention.
So: thanks for this!

Posted in HowTo, KDE. No Comments »