Tag: ubuntu

Wacom Cintiq Pro on Ubuntu 20.04 focal fossa

Pretty CC-picture of a hummingbird

This post is meant to collect my experiences with my new Wacom Cintiq graphics tablet in Ubuntu and document the current state of my configuration for posterity so that it may help others. It contains my Express Keys setup for Krita.


The documentation leaflets provided by Wacom seemed suboptimal to me. It was some IKEA style no-words-only-pictures thing that did not make quite clear to me which part was which.

In the end, I just decided to plug it in like it seemed right. And after connection power, HDMI plug and the USB-C cable for the input devices the whole thing worked perfectly. Graphics tablet was recognized with the right resolution, its own color profile and everything. I just needed to tell Ubuntu that his monitor is supposed to be below my normal one. I also had deactivated the key combinations to move windows between monitors in my Ubuntu configuration, because I never needed it and thus had to restore that.

Express-Keys Configuration

At first I was disappointed that the pinch zoom gesture worked out-of-the-box in Krita, but I couldn’t get a multi-touch rotation bound to Krita’s canvas rotation.

Krita already very wisely prevents you from accidentally touch-painting on your graphics tablet. But in the end, the few times where it was nice to select tools with the non-dominant hand seemed not to worth it compared to the many times I inadvertently activated other parts of the UI like tool selections or the scroll bars. So I disabled touch for the graphics tablet.

Diagram showing my current express key setup (source code below)

My goal was to have the most common functionality I need for my paint workflow on the Express keys so that I can work without keyboard for larger stretches without moving between pen/express keys and keyboard/mouse operation too much.

The touch wheel does the canvas rotation and the mode-switch in the center just does a reset, which is a combination of resetting canvas rotation, resetting zoom and setting the tool to “Brush”.

Ring left and right are undo and redo, Ring down resets zoom only.

The left/right button pairs below the ring control brush size, opacity and brightness. The last two are less important to my paint workflow, but they are still useful sometimes and I have enough buttons.

The left/right pair on the bottom are pure modifier keys. Pressing control while in Brush mode activates the (mixing) color picker, but there’s a lot of functionality where ctrl and shift are modifiers in Krita.

The commands to set up this configuration are as follows:


xsetwacom --set "Wacom Express Key Remote Pad pad" Touch on

# experimental total touch prevention 
xsetwacom --set "Wacom Cintiq Pro 32 Touch Finger touch" Touch off

# settings for krita (with some extra key configuration there)

# zoom (ctrl +/-) (not in diagram)
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 12 "key ctrl plus"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 15 "key ctrl minus"

# rotation over touch wheel (ctrl ö/ä)
xsetwacom --set "Wacom Express Key Remote Pad pad" AbsWheelUp "key ctrl 0xd6"
xsetwacom --set "Wacom Express Key Remote Pad pad" AbsWheelDown "key ctrl 0xe4"

# wheel button left/right for undo/redo
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 2 "key ctrl z"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 9 "key ctrl shift z"

# Mode resets rotation and tool to brush and zoom (no modes yet)
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 1 "key 5 b 1"

# wheel down: reset zoom only
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 10 "key 1"

# 1st row: Brush size ö/ä
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 11 "key +0xd6"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 13 "key +0xe4"

# 2nd row: opacity 
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 14 "key +i"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 16 "key +o"

# 3rd row: color brightness 
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 17 "key +k"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 19 "key +l"

# bottom buttons: ctrl + shift
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 21 "key +ctrl"
xsetwacom --set "Wacom Express Key Remote Pad pad" Button 22 "key +shift"Code language: PHP (php)

As you can see, I put some functionality on the “ö” and “ä” keys that come with my German keyboard and which are always useful keys because they’re almost always free in the default key bindings.

Without a German keyboard, you obviously want other combos there. I think the ö/ä combos here are also the ones where I configured the extra key configuration in Krita to have them. All others are default keys I think.

The source code contains two zoom combos that are not in the diagram and which I might remove completely. I mostly try to work at 1:1 resolution on the graphics tablet anyway and rarely zoom in for details — and there’s always mouse wheel zoom.

Update: In the end I decided to buy the Wacom Flex arm which kind of made all this superfluous. Now I tend to just move the pad into a vertical-ish position slightly to the right so I can rotate my chair and work and have my full keyboard accessible on the left.

How to change the Trash shortcut in Ubuntu 11.10 oneiric ocelot

Unity’s default shortcut to use <Super>+T to open the trash has been bugging me for some time, mostly because it conflicts with my open terminal shortcut. Judging from the questions I found by googling, I don’t seem to be the only person who would like to configure it.

Turns out, there is no easy way. Although there are two different places where I can configure keyboard shortcuts, none of them can be used to change the shortcut used to open the trash window. It’s kind of odd how this is a shortcut at all. I mean, how often do I actually look into the trashcan to see what’s in there? That’s not even remotely close to being a common operation.

The cumbersome way

This being free software, there is of course another way, which you might or might not consider to be worth doing, that is downloading the source-code for a package, change it and compile it into a .deb package again (If you don’t know how to do that, consult the link I provided below).

Turns out changing the source code was really easy. Simple searching for “trash, I soon found “plugins/unityshell/src/TrashLauncherIcon.cpp” where I found the following code:

TrashLauncherIcon::TrashLauncherIcon(Launcher* IconManager)
  : SimpleLauncherIcon(IconManager)
  , proxy_("org.gnome.Nautilus", "/org/gnome/Nautilus", "org.gnome.Nautilus.FileOperations")
  tooltip_text = _("Trash");
  SetQuirk(QUIRK_VISIBLE, true);
  SetQuirk(QUIRK_RUNNING, false);

I changed the last line to set ‘x’ as the shortcut and build the package, which turned out to be multiple .deb files of which I found the right one by unpacking them into a temp directory and looking for the TrashLauncherIcon symbol.

I’m not sure the amount of work required to do this is really worth it, especially considering that I have to redo it every time the unity package is updated again, but for now I’m really satisfied.


Update: Added bugtracker URL for this.

Update2: Build and uploaded new .deb for new version (12.11.2011)

Installing Ubuntu 10.04

I was kind of looking forward to the new Ubuntu 10.04 aka Lucid Lynx. New LTS version with promising features and a good occasion to redo my badly partitioned desktop computer. I had not thought of the additional space requirements of a 64 bit Linux, so the partitioned 8GB for the root system were not really enough.

Seeing that the new incompatible MythTV version in 10.04 would require me to do at least my desktop and the mediahub computer in one go, I did not do the install immediately but put it on my TODO list. So my first actual exposure to Ubuntu 10.04 was last week, when I tried to get it installed on my new company laptop.

First their were strange issues with the computer not booting anymore. After some searching I discovered that Grub was creating a /boot/grub/grub.cfg file that was somehow broken, because it kept changing its name every time I listed it from the Grub shell. Suddenly its name would be «grub.cfgw» or even stranger something like «grub.cfg ☺~_.q». The issue could be fixed by booting from the cd in rescue mode, moving the “grub.cfg” to “grub.cfg.bogus” and copying it back. Maybe just touching it would have been enough, too.

But then I was facing hard crashes related to the intel video driver which could just not be fixed. Either randomly or consistently every time I either had an external monitor connected at bootup or connected it afterwards and pressed “Detect monitors”, the laptop would crash hard and needed to be force-shutoff.

I tried finding a way to fix it, tried reverting back to 9.10, changing to newer driver versions, nothing helped. So in the end, I had to give up and give the laptop back to our IT guys.


Given those troubles I was kind of afraid of rolling it out in my local LAN. But it was nearly problem-free. On my desktop computer, the graphics  mode was kind of borked. Linux believed to be correctly displaying a 1680×1050 display while the monitor seemd to disagree and switch to some 1680×900 mode that would cut off the lower part of the desktop. That issue vanished with the proprietary nvidia drivers though. The graphics pad was auto-discovered flawlessly. The only thing that was missing was actually to select the rubber tool for the rubber tip and save that. Since I have two sound cards in the desktop, I blacklisted the driver for the on-board sound-card by creating a /etc/modprobe.d/blacklist-intel-sound.conf with

blacklist snd_hda_intel

to not have to ease audio device configuration. After that only the one correct sound card is visible to Linux and I don’t need to configure ALSA and Pulse etc to use the correct device. Configuring the gnome multi-media and MythTV to use both Pulse Audio solved the issue of MythTV blocking Rhythmbox or Flash from playing sound even in paused mode.

The installation on the Eee Box B202 was also almost trouble free. Initially I had problems with MythTV because I forgot to install the mythtv-database package which led to the database not being created in MySQL (D’oh). Then MySQL wasn’t listening on all IPs ( because it need to be restarted. The remote control of my DVB-T stick ( TerraTec Cinergy DT USB XS Diversity , newer hardware-rev) needed its usual

options dvb_usb_dib0700 dvb_usb_dib0700_ir_proto=0

which I wrote into a newly created /etc/modprobe.d/terratec-remote.conf.

All in all much less trouble than I feared.

Installing Ubuntu Karmic Koala

I have been looking forward to Thursday’s release of Ubuntu 9.10, code name Karmic Koala, for some time now. CouchDB integrated into the desktop — sweet!

The actual install overall went really smooth. Installer got streamlined a bit more and now carries over the initial language selection to defaults for time zone and keyboard settings. Most complicated about it was my chaotic partition layout on my dev machine. Installation went all fine, all devices recognized. At first I had problems with my Wacom Bamboo graphics tablet because copying over the old config created double entries for all devices, making X choke and kill my USB mouse. Just commenting out the entries in my X config solved that problem. I just had to redo the basic configuration from Gimp by invoking the Gimp Preferences Dialog under Edit -> Preferences, select input devices in the tree, then “Configure Extended Input Devices”. There I just set the mode of all auto-discovered wacom devices to “Screen”. (not “Window” or “Disabled”).

Things turned out to be a bit more work than initially planned when I discovered that the MythTV frontend from karmic wouldn’t connect to my mediahub computer, a Eee Box B202 with dual DVB-T tuner ( TerraTec Cinergy DT USB XS Diversity , newer hardware-rev). After the initial troubles I had first getting the DVB-T to work perfectly, I was really not eager to change anything about that system.. In fact it was still running an updated EasyPeasy 1.0.

But my fears were totally unfounded. The DVB-T stick was now auto-discovered and there just needed one module option to be added in a newly created /etc/modprobe.d/options :

options dvb_usb_dib0700 dvb_usb_dib0700_ir_proto=0

This sets the remote control protocol to NEC, which is something my remote control needs. Everything else basically worked out of the box. I just had to configure MythTV and tell it the two DVB front end devices and EIT create video sources and connect those two. After copying over the randomly generated mySQL password to the laptop, I was back at my old setup.

What changed is that both computers now boot a lot faster and look a lot prettier, even using only graphics that come with Karmic Koala

Congratulations to the ubuntu team for producing such a fine new ubuntu version, better than ever.


update: added more details for the wacom configuration process.

© 2023 fforw.de

Theme by Anders NorénUp ↑