Bug#1136499: emacs-ivy uses pidof but does not depend on procps

Gioele Barabucci <[email protected]>
Newsgroups gmane.linux.debian.devel.emacsen
Message-ID <f1f71521ac3974536ef656c4bd856a50__8909.03749257035$1778714979$gmane$org@debian.org>
Source: emacs-ivy
Version: 0.15.1-3
Usertags: pidof-without-procps

Dear maintainer(s) of emacs-ivy,

it appears that emacs-ivy 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 emacs-ivy
  that use `pidof` at runtime;
* via the `Build-Depends:` field of emacs-ivy, 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 emacs-ivy, 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 emacs-ivy uses `pidof` due to the following
code snippets:

```
path: emacs-ivy_0.15.1-3/counsel.el
                   (cdr (counsel--wmctrl-parse
                         (shell-command-to-string
                          "wmctrl -l -p | grep $(pidof rhythmbox)"))))))
      (when id
        (sit-for 0.2)


path: emacs-ivy_0.15.1-3/counsel.el
(defun counsel-rhythmbox-play-song (song)
  "Let Rhythmbox play SONG."
  (let ((first (string= (shell-command-to-string "pidof rhythmbox") ""))
        (service "org.gnome.Rhythmbox3")
        (path "/org/mpris/MediaPlayer2")
```

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

Regards,
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.