README.md 4.29 KB
Newer Older
Valeriy Malov's avatar
Valeriy Malov committed
1
2
KDE Wacom support
=================
3
4
5
6

This module implements a GUI for the Wacom Linux Drivers and extends it
with profile support to handle different button / pen layouts per profile.

Valeriy Malov's avatar
Valeriy Malov committed
7
For hardware support have a look at https://linuxwacom.github.io/
8

Valeriy Malov's avatar
Valeriy Malov committed
9
10
11
12
13
14
15
Configuration can be located in System Settings → Input devices → Tablets

Easy profile switching is supported via hotkeys or a small plasma applet in tray notification area.
In addition, a daemon running in the background helps with hotplug support.

Hardware support
----------------
16

17
All tablets can be set up as long as they are found with the wacom kernel module.
Jörg Ehrichs's avatar
Jörg Ehrichs committed
18
19

Check with
Valeriy Malov's avatar
Valeriy Malov committed
20
21
22

    $ xsetwacom list devices

23
if your device is correctly recognized first. If it doesn't show up there, we can't configure it.
24

Valeriy Malov's avatar
Valeriy Malov committed
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Installation
------------

Wacom support in KDE is a separate component and might be not installed by default.
Package usually goes by name `wacomtablet` or `kcm-wacomtablet`.

More or less full list of distributions including the package should be avaliable at:

* https://repology.org/metapackage/kcm-wacomtablet/versions

Staring the module
------------------

Background daemon should be started automatically each time you log in.

You can enable or manually start the service via System Settings → Startup and Shutdown → Background services.

Adding missing tablet devices
-----------------------------

If your device is not recognized by this program, but you can set it up via the xsetwacom driver,
46
run Wacom Tablet Finder (`kde_wacom_tabletfinder`), describe your device and click `Save`, and restart Wacom tablet service (see above).
47

Valeriy Malov's avatar
Valeriy Malov committed
48
Please send your device description (file `~/.config/tabletdblocalrc`) to the bugtracker, so it will be added in future versions.
49

Valeriy Malov's avatar
Valeriy Malov committed
50
51
Reporting bugs
--------------
52

53
Please report bugs here: https://bugs.kde.org/enter_bug.cgi?product=wacomtablet
Valeriy Malov's avatar
Valeriy Malov committed
54
55
56

Building & manual installation
==============================
Valeriy Malov's avatar
Valeriy Malov committed
57

58
This is *not* a recommended way to use this application. Installing it manually creates files untracked by your package manager.
Valeriy Malov's avatar
Valeriy Malov committed
59
60
This can cause everyone problems later on. Please contact your distribution's maintainers to package it instead.

61
62
Run-time dependencies:
* X11 wacom tablet driver (xserver-xorg-input-wacom), including the xsetwacom tool, version 0.20 or higher
Valeriy Malov's avatar
Valeriy Malov committed
63
* libwacom. Highly recommended to have version 0.29 or higher for support of consumer-grade tablets with quirky buttons.
Valeriy Malov's avatar
Valeriy Malov committed
64
65

Build dependencies on Debian/Ubuntu:
Valeriy Malov's avatar
Valeriy Malov committed
66
67
68
69
70
71
* g++
* cmake
* extra-cmake-modules
* gettext
* libqt5x11extras5-dev
* qtdeclarative5-dev
Valeriy Malov's avatar
Valeriy Malov committed
72
73
74
75
76
77
78
79
80
81
* libkf5coreaddons-dev
* libkf5i18n-dev
* libkf5dbusaddons-dev
* libkf5globalaccel-dev
* libkf5config-dev
* libkf5xmlgui-dev
* libkf5notifications-dev
* plasma-framework-dev
* kdoctools-dev
* libxi-dev
Valeriy Malov's avatar
Valeriy Malov committed
82
* libxcb-xinput-dev
Valeriy Malov's avatar
Valeriy Malov committed
83
* libwacom-dev
84

Valeriy Malov's avatar
Valeriy Malov committed
85
86
You can install them by running:

Valeriy Malov's avatar
Valeriy Malov committed
87
    $ apt install g++ cmake extra-cmake-modules gettext libqt5x11extras5-dev qtdeclarative5-dev libkf5coreaddons-dev libkf5i18n-dev libkf5dbusaddons-dev libkf5globalaccel-dev libkf5config-dev libkf5xmlgui-dev libkf5notifications-dev plasma-framework-dev kdoctools-dev libxi-dev libwacom-dev
Valeriy Malov's avatar
Valeriy Malov committed
88

Valeriy Malov's avatar
Valeriy Malov committed
89
90
Building from source
--------------------
91

Valeriy Malov's avatar
Valeriy Malov committed
92
93
94
95
    $ mkdir build
    $ cd build
    $ cmake ../ -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DKDE_INSTALL_USE_QT_SYS_PATHS=ON
    $ make
96

97
Manual installation (this *will* litter in your system):
Valeriy Malov's avatar
Valeriy Malov committed
98

Valeriy Malov's avatar
Valeriy Malov committed
99
    $ make install
Valeriy Malov's avatar
Valeriy Malov committed
100

Valeriy Malov's avatar
Valeriy Malov committed
101
102
Running without installing
--------------------------
Jörg Ehrichs's avatar
Jörg Ehrichs committed
103

Valeriy Malov's avatar
Valeriy Malov committed
104
This is not intended for daily use, but for people who want to test developer builds.
105

Valeriy Malov's avatar
Valeriy Malov committed
106
Running KCM component:
107

Valeriy Malov's avatar
Valeriy Malov committed
108
    $ QT_PLUGIN_PATH=src/kcmodule/ kcmshell5 wacomtablet
109

Valeriy Malov's avatar
Valeriy Malov committed
110
Running KDED component:
111

Valeriy Malov's avatar
Valeriy Malov committed
112
113
    $ ln -s kf5 src/
    $ kquitapp5 kded5 && QT_PLUGIN_PATH=$PWD kded5
Valeriy Malov's avatar
Valeriy Malov committed
114

Valeriy Malov's avatar
Valeriy Malov committed
115
Running tablet finder:
Valeriy Malov's avatar
Valeriy Malov committed
116

Valeriy Malov's avatar
Valeriy Malov committed
117
    $ src/tabletfinder/kde_wacom_tabletfinder
Valeriy Malov's avatar
Valeriy Malov committed
118
119
120
121
122

Running unit tests
==================

First, configure the build to include tests by enabling BUILD_TESTING:
123

Valeriy Malov's avatar
Valeriy Malov committed
124
125
126
127
    $ mkdir build
    $ cd build
    $ cmake ../ -DBUILD_TESTING=ON
    $ make
128

Valeriy Malov's avatar
Valeriy Malov committed
129
Then, run the tests with:
130

Valeriy Malov's avatar
Valeriy Malov committed
131
    $ ctest
132
133
134

or a single one via

Valeriy Malov's avatar
Valeriy Malov committed
135
136
    $ cd autotests/common/property
    $ ./Test.Common.Property
137

Valeriy Malov's avatar
Valeriy Malov committed
138
you can find the test results in `Testing/Temporary/LastTest.log`
139

Valeriy Malov's avatar
Valeriy Malov committed
140
141
142
143
144
145
146
147
Releasing new version
=====================

Checklist for developers:

* Bump main package version in: `CMakeLists.txt`
* Bump applet version in: `src/applet/package/metadata.desktop`
* Follow https://community.kde.org/ReleasingSoftware