Monday, August 30, 2010

How to calibrate your TabletPC

Since a while e.g. the X11 driver for Wacom tablets should work out of the box, no calibration needed. I didn't test other tablet/touchscreen drivers in the last time, but I assume also some other should work out of the box. But sometimes you still need to calibrate your device.

But how do you calibrate e.g. your wacom tablet on a openSUSE 11.3 or Factory, since there is no wacomcpl anymore in the package, which was used in the past? And how about a evdev based device? Simply use xinput_calibrator. You can get the package for openSUSE from my openSUSE buildservice repo

After installation follow these steps on shell:
# check if xinput_calibrator found any device
user@tablet:~> xinput_calibrator --list
Device "Wacom ISDv4 90 Pen" id=10

# start calib.: for multiple devices use --device option
user@tablet:~> xinput_calibrator
You get this screen, follow the instructions:
You get some output with some instructions as soon as you finished the procedure. The preferred way to setup the tablet/touchscreen with the calibration data is coping a snippet from the output into '/etc/X11/xorg.conf.d/99-calibration.conf' (as root). Here an example for such a snippet:
Section "InputClass"
        Identifier      "calibration"
        MatchProduct    "Wacom ISDv4 90 Pen"
        Option  "MinX"  "0"
        Option  "MaxX"  "28606"
        Option  "MinY"  "0"
        Option  "MaxY"  "17876"
You may need to restart your X-server after setting up the file. If it doesn't work checkout the instructions in the output for other ways to setup the changes.
Tech Tags:

Thursday, August 19, 2010

Hacking osc (4)

Here's what some of the major stuff I did on osc in the last weeks:
  • changed 'osc request revoke' (and also reopen, accept, decline, wipe, revoke) to check the actual state and ask the user to prevent set the same state twice [1]
  • added new command 'osc requestmaintainership' as shortcut for 'osc creq -a add_role USER maintainer PROJECT PACKAGE' since this command is hard to find for (new) users [2]
  • changed 'osc request show' to show add_role request info more verbose including requested person/group and the requested role [3]
  • fix output of 'osc buildinfo' if parameters are missing, show only the available repos (and not the arch) if called from a checked out package [4]
  • updated osc.complete, added all existing commands to list [5]
  • added new command 'osc distributions' to get info about active distributions [6]
  • some changes to respect 'osc -A' and to reuse apiurl instead of reading it again and again from config [7][8]
  • changed 'osc repos' to filter out disabled repos of a package [9]
Tech Tags:

Wednesday, July 21, 2010

[Update] openSUSE: new wiki, and now ...

Some updates about the new openSUSE wiki issues:
  • The User:* pages are now finally protected (see bnc#409520 for history).
  • Looks as if the Special:Import is now finally working also for normal users.
That are good news, but there are some other issues with the wikki: 
  • As already pointed out by some other (e.g. in the 5th comment on this post): older external links to wikipages don't work anymore and there is no hint on the 'empty' page that there is a new wiki with a new structure and where you can find the old wiki. That's really annoying! But there is a info one some pages in the old wiki where to find the new pages (as e.g. here), we need something like that in the new wiki with info where the page was moved. At least as long as this page is empty.
  • Also the 'google index' is destroyed. If you e.g. search at for 'opensuse nvidia' you find this result on the second place, but the page doesn't exist. Sorry, but it was really a stupid idea to do this change and breaking the google index (and external links) with it.
  • I know the intention was to cleanup the old wiki and give it a new structure, but the way it was done makes it really hard for the users. If a user look for the replacement of the old Nvidia page in the new wiki, there is no result with the default search, since it was moved to SDB:NVIDIA. You have to enable the search for the SDB namespace manually. IMO this should be activated by default.
  • Not sure about the plans for the new structure of the wiki atm, have to search for some information about it. But there are some pages missing which are used in the URL-field of old and new (openSUSE 11.3/Factory) rpms. One example is the patterns page (e.g. from the patterns-openSUSE* rpms) and I assume there are others.
Tech Tags:

Tuesday, July 13, 2010

openSUSE: new wiki, and now ...

... a lot of work and some trouble. Since yesterday is the new openSUSE wiki online, as I discovered today as I checked my last week updated user page. The page was gone ... I had to create a new version of the page. Thanks!

I really appreciate the time the openSUSE wiki-team spend on the update, but unfortunately the new wiki don't always work as exprected:
  • You can export any page via Special:Export (from the old wiki, which you can reach via and you should be able to import the page via Special:Import. But the import page don't work, you get "Permission error: The action you have requested is limited to users in the group: Administrators.". No way to migrate a page from the old to the new wiki for now!
  • If you 'Log out', you end in a old-style wiki page, which is oddly enough part of the new wiki:
  • The User:* pages are still not protected. Any user can change the content of your userpage. That's inacceptable! If you don't monitor your page very closely other ppl. may write there whatever they want. Btw. I opened a bug ages ago (2008-07-16) for this problem, but it's still not fixed even though there is already a proposal how to fix it included (bnc#409520).
  • Due to this post you should recreate to User:* page with a template. Unfortunately I couldn't find a way to load/import the template if you already created and saved the content of your page. That's why my page will stay in the old style.
So far so good about the technical part. There is another issue I don't like on the new wiki: the corporate design (CD). Except for the little lizard at the top left corner, there is not that much that differs the openSUSE wiki from other MediaWikis. I miss the distinguishing characteristics to other wikis and the associations to e.g. the design of the current openSUSE installer as you can see if you compare both side-by-side:

Even the sponsor logo is much bigger than the openSUSE lizard. There is no big recognition effect. While it's may not such an issue if you use a prosaic design for a developer service like, it's IMO important to have a design with a higher recognition effect for direct user services.
Tech Tags:

Thursday, July 01, 2010

Hacking osc (3)

Here my latest changes/commits on osc:
  • extended 'osc wipebinaries' to read package/project from checked out directories [1]
  • fixed 'osc diff' function which left tempfiles in /tmp after finished [2]
  • changed 'osc getbinaries' to work also in project dirs. If 'osc getbinaries' get called in a checked out directory all packages of the project get downloaded [3]
Tech Tags:

Wednesday, June 30, 2010

ModemManager vs. modems

The last days I worked on porting newer versions of ModemManager (MM) and NetworkManager (NM) to SLE11-SP1. Basically, the NM version from openSUSE 11.2 plus some patches and the latest MM release v0.4 are working now, but that's not the point of this posting.

It was the first time I touched the code of these tools. My expectation was that ModemManager should contain all modem related code and provide a DBus interface for NM to handle all the networking. The first issue I tested was using a mobile (GSM) via USB. It worked. Also UMTS/CDMA devices should work. But to my surprise ModemManager don't support plain modems (simple old and slow modems like a serial 56k modem) at all. Or did I miss something?

So why is this daemon called ModemManager if there is no modem support? It's all about WWAN devices and not modems. Not that this project is completely new, the first git commit is from July 2008.

If this should be a manager for modems, it should IMO support all kinds of modems like e.g. serial or PCMCIA modems, cable or (A)DSL modems and WWAN devices. Otherwise rename it to WwanManager (or should it be WWANManager?) for example!

Another point that's absurd to me: All the PPPoE handling (as e.g. used for DSL modems) is still part of NetworkManager. And AFAICS the modem dialup support is still covered by pppd and
under GNOME by gnome-ppp. It would make much more sense to do all the PPP handling in one place. Until now I assumed NM to be the central place to handle network, but the last days disabused me. The current situation is far far away from being reasonable.
Tech Tags:

Thursday, June 24, 2010

Hacking osc (2)

The last days I fixed again some issues in osc. This time it was about the 'osc results' options:
  • fixed 'osc results -a/-r' if you call it from a package directory [1]
  • fixed and enabled 'osc results -a/-r' also for project directories to be able to filter the output for architecture(s) and/or repo(s) (especially since it can be a long list) [2]
Since I have now commit rights at the osc git repo: it should be in the next release.
Tech Tags:

Saturday, June 12, 2010

Hacking osc

Last month I found some time to take a look at osc to fix issues and add some stuff I was missing since I have to work with and the SUSE internal buildservice (e.g. for updates and maintenance of our enterprise products).

Yes, I know it's some weeks old and now integrated, but anyway. Here is what I've done:
  • added new 'osc getbinaries REPOSITORY' to checkout the RPMs for all architectures, including the source RPMs, into subdirectories [here]
  • fix 'osc my' to get the apiurl from checked out packages if possible [here]
  • make sure that global option -A always works too in a directory with a checked out package [here]
  • add run_pager() and make osc log/diff work like git log/diff (call less by default to display the result of diff) [here]
  • fixed some close() statements and some other warnings [here]
Tech Tags:

Saturday, February 27, 2010

How to move local git repo with branches to a server

As my HAL/hal-info git repos were lost last year at, I restored them from my last existing local checkouts. I simply copied the local checkout/repo to the server and created a new git repository as proposed in the git user manual:

git clone --bare ~/hal hal.git

touch hal.git/git-daemon-export-ok

But as I, some months later, tried to switch to my hal-0_5_12-SUSE_CODE11 branch, there was no such branch. To be exact: there was neither this branch nor any of the upstream branches. I couldn't find any information on the web how to solve this problem. Everything I tried didn't work. When I cloned the new repo from the upstream repo, all branches where available.

At the end I found my own solution once I compared the .git/refs/ directories of the cloned repo from the upstream and the local repo. Looks as if the clone command don't copy the branches under .git/refs/remotes/origin/ to .git/refs/heads/ if you use a local repo/checkout as source. Here is what I did to get my branches available again:

cd hal

find refs/remotes/origin/ -type f | grep -v -E 'HEAD|master' | xargs cp --target=../hal.git/refs/heads/

I don't know if there is an other, more standard, way to do this. I couldn't find anything else and at least it solved the problem for me.

Tech Tags: