#1136515 keyman uses pidof but does not depend on procps

#1136515#5
Date:
2026-05-13 23:28:28 UTC
From:
To:
Dear maintainer(s) of keyman,

it appears that keyman uses `pidof` in its testsuite, or that
at least one of its binary packages uses `pidof` at runtime.
Historically, `pidof` was provided by the Essential package
`sysvinit-tools`, making an explicit dependency unnecessary. However
`pidof` will soon be moved to `procps` and will no longer be part of
the Essential set.

Please add an explicit dependency on `procps`:

* via the `Depends:` field of all binary packages of keyman
  that use `pidof` at runtime;
* via the `Build-Depends:` field of keyman, if `pidof` is
  used in tests run at build-time;
* via the `Depends:` field of `debian/control/tests`, if `pidof` is
  used in autopkgtests.

To prevent any disruption for users of keyman, please add
this dependency now, before `pidof` is moved from `sysvinit-utils` to
`procps`. Alternatively, you could remove all uses of `pidof`.

It is believed that keyman uses `pidof` due to the following
code snippets:

```
path: keyman_18.0.247-1/linux/keyman-config/keyman_config/gnome_keyboards_util.py
    if __is_gnome_desktop is None:
        code = os.system('pidof gnome-shell >/dev/null 2>&1')
        gnome_env = ('XDG_CURRENT_DESKTOP' in os.environ) and ('gnome' in os.environ['XDG_CURRENT_DESKTOP'].lower())
        __is_gnome_desktop = (code == 0) or gnome_env
```

Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).

Regards,