Skip to content

nixos/hardware.opentabletdriver: Stuck on "Connecting to OpenTabletDriver Daemon" after upgrade to 25.11 #469340

Description

@arthurrump

Nixpkgs version

  • Stable (25.11)

Describe the bug

After upgrading from 25.05 to 25.11, the OpenTabletDriver daemon no longer starts correctly. This results in the application being stuck on "Connecting to OpenTabletDriver Daemon..."

The user service seems to fail with an error that the "Daemon is already running":

❯ systemctl status --user opentabletdriver.service
○ opentabletdriver.service - Open source, cross-platform, user-mode tablet driver
     Loaded: loaded (/etc/systemd/user/opentabletdriver.service; enabled; preset: ignored)
     Active: inactive (dead) since Tue 2025-12-09 16:58:52 CET; 9min ago
   Duration: 1.097s
 Invocation: 837d09fb9143416dac594bfbf1e70b94
    Process: 4741 ExecStart=/nix/store/gzx7pb3kax86pnk34f2i9q2ahj4fjzhx-OpenTabletDriver-0.6.6.2/bin/otd-daemon (code=exited, >
   Main PID: 4741 (code=exited, status=0/SUCCESS)
   Mem peak: 8.9M
        CPU: 97ms

dec 09 16:58:51 host systemd[4567]: Started Open source, cross-platform, user-mode tablet driver.
dec 09 16:58:51 host otd-daemon[4741]: OpenTabletDriver Daemon is already running.

A grep on the boot logs shows that there is indeed already another otd-daemon running, which does not show up in the --user version of those logs:

❯ journalctl -b 0 | grep otd-daemon
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Info]        Searching for tablets...
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Debug]        Searching for tablet 'Acepen AP1060'
...
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Debug]        Searching for tablet 'Wacom CTL-672'
dec 09 16:58:44 host otd-daemon[3551]: [Device:Debug]        Initializing device 'CTL-672' /sys/devices/pci0000:00/.../hidraw/hidraw4
dec 09 16:58:44 host otd-daemon[3551]: [Device:Debug]        Using report parser type 'OpenTabletDriver.Configurations.Parsers.Wacom.Intuos.IntuosReportParser'
dec 09 16:58:44 host otd-daemon[3551]: [Device:Debug]        Set device feature: 02-02
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Info]        Found tablet 'Wacom CTL-672'
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Debug]        Searching for tablet 'Wacom CTL-680'
...
dec 09 16:58:44 host otd-daemon[3551]: [Detect:Debug]        Searching for tablet 'XP-Pen Star G960S'
dec 09 16:58:44 host otd-daemon[3551]: [Display:Warning]        Neither Wayland nor X11 were detected, defaulting to X11.
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Info]        Searching for tablets...
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Debug]        Searching for tablet 'Acepen AP1060'
...
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Debug]        Searching for tablet 'Wacom CTL-672'
dec 09 16:58:46 host otd-daemon[3892]: [Device:Debug]        Initializing device 'CTL-672' /sys/devices/pci0000:00/.../hidraw/hidraw4
dec 09 16:58:46 host otd-daemon[3892]: [Device:Debug]        Using report parser type 'OpenTabletDriver.Configurations.Parsers.Wacom.Intuos.IntuosReportParser'
dec 09 16:58:46 host otd-daemon[3892]: [Device:Debug]        Set device feature: 02-02
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Info]        Found tablet 'Wacom CTL-672'
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Debug]        Searching for tablet 'Wacom CTL-680'
...
dec 09 16:58:46 host otd-daemon[3892]: [Detect:Debug]        Searching for tablet 'XP-Pen Star G960S'
dec 09 16:58:46 host otd-daemon[3892]: [Evdev:Debug]        Successfully initialized virtual pressure sensitive tablet. (code NONE)
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Output mode: Artist Mode
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Display area: [5120x1600@<2560, 800>:0°],
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Tablet area: [216x135@<108, 67.5>:0°],
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Clipping: Enabled
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Ignoring reports outside area: Disabled
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Pressure: Enabled
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Tilt: Enabled
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Tip Binding: [Adaptive Binding: Tip]@1%
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Eraser Binding: [Adaptive Binding: Eraser]@1%
dec 09 16:58:46 host otd-daemon[3892]: [Wacom CTL-672:Info]        Pen Bindings: Adaptive Binding: Button 1, Adaptive Binding: Button 2
dec 09 16:58:46 host otd-daemon[3892]: [Settings:Info]        Driver is enabled.
dec 09 16:58:51 host otd-daemon[4741]: OpenTabletDriver Daemon is already running.

❯ journalctl -b 0 --user | grep otd-daemon
dec 09 16:58:51 host otd-daemon[4741]: OpenTabletDriver Daemon is already running.

This did not seem to happen on 25.05.

I was able to reproduce this with both niri and GNOME, started from GDM. These logs complain not being able to detect X11 or wayland, but I have the exact same issue on another device (with no tablet connected), where this line does not show up in the log.

Steps to reproduce

hardware.opentabletdriver.enable = true;

in 25.11, reproduced at least with GNOME and GDM

Expected behaviour

The otd-daemon should only be started from the user service

Screenshots

No response

Relevant log output

Additional context

No response

System metadata

 - system: `"x86_64-linux"`
 - host os: `Linux 6.12.59-xanmod1, NixOS, 25.11 (Xantusia), 25.11pre-git`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.31.2`
 - nixpkgs: `/nix/store/mmbrs76ksccdn0bvvqs4plivwh6xlcs5-source`

Notify maintainers

Maintainers for the opentabletdriver package: @gepbird @thiagokokada


Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    0.kind: bugSomething is broken6.topic: nixosIssues or PRs affecting NixOS modules, or package usability issues specific to NixOS

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions