Dear maintainer(s) of snapd,
it appears that snapd 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 snapd
that use `pidof` at runtime;
* via the `Build-Depends:` field of snapd, 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 snapd, 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 snapd uses `pidof` due to the following
code snippets:
```
path: snapd_2.73-3/tests/main/snapd-reexec/task.yaml
# This check is valid only if snap command is re-executing to the snap
if [ "$IS_REEXEC" = true ]; then
SNAPD_PATH=$(readlink -f "/proc/$(pidof snapd)/exe")
if [ "$SNAPD_PATH" != "/snap/$SNAPD_SRC/${now_src}/usr/lib/snapd/snapd" ]; then
echo "unexpected $SNAPD_PATH for $now_src snap (previous $prev_src)"
path: snapd_2.73-3/core-initrd/26.04/bin/ubuntu-core-initramfs
"i2ctransfer", "ifconfig", "ip", "kill", "ln", "loadfont", "loadkmap", "ls",
"lzop", "mkdir", "mkfifo", "mknod", "mkswap", "mktemp", "more",
"mv", "nuke", "openvt", "pidof", "printf", "ps", "pwd", "readlink",
"reset", "rm", "rmdir", "run-init", "sed", "seq", "setkeycodes",
"sh", "sleep", "sort", "stat", "static-sh", "stty", "switch_root", "sync",
path: snapd_2.73-3/tests/main/fips/task.yaml
execute: |
pmap -p "$(pidof snapd)" > snapd-map.out
case "$SPREAD_SYSTEM" in
ubuntu-fips-*)
path: snapd_2.73-3/spread.yaml
# assert state of reexec
pmap -p "$(pidof snapd)" | MATCH "$SNAP_MOUNT_DIR/snapd/.*/usr/lib/snapd/snapd"
snap debug execution snap | MATCH 'is-reexecd: true'
# assert internal apparmor?
path: snapd_2.73-3/tests/core/snapd-failover/task.yaml
echo "Ensure snapd is still running as part of the snapd.service unit"
# shellcheck disable=SC2046,SC2002
cat /proc/$(pidof snapd)/cgroup | MATCH /snapd.service
fi
path: snapd_2.73-3/tests/core/snapd-failover/task.yaml
echo "Ensure snapd is running as part of the snapd.service unit"
# shellcheck disable=SC2046,SC2002
cat /proc/$(pidof snapd)/cgroup | MATCH /snapd.service
echo "restart snapd and ensure we can still talk to it"
path: snapd_2.73-3/tests/core/snapd-failover/task.yaml
echo "Ensure snapd is running as part of the snapd.service unit"
# shellcheck disable=SC2046,SC2002
cat /proc/$(pidof snapd)/cgroup | MATCH /snapd.service
echo "Verify that a random signal does not trigger the failure handling"
path: snapd_2.73-3/tests/core/snapd-failover/task.yaml
# snap-failure restarts the snapd service
# shellcheck disable=SC2046,SC2002,SC2016
retry -n 60 --wait 1 sh -e -c 'cat /proc/$(pidof snapd)/cgroup | MATCH /snapd.service'
# the socket access is still functional
snap list
path: snapd_2.73-3/tests/lib/random.sh
sysctl kernel.random.entropy_avail || true
ls -l /dev/*random*
pids=$(pidof gpg-agent)
for p in $pids; do
ps -q "$p"
path: snapd_2.73-3/tests/core/snapd-refresh/task.yaml
exit 1
fi
running="$(readlink -f /proc/"$(pidof snapd)"/exe)"
if echo "$running" | grep "/snap/snapd/$current/usr/lib/"; then
echo "The current running snapd is not $running"
path: snapd_2.73-3/tests/core/snapd-refresh/task.yaml
snap list | MATCH "snapd.*$current "
echo "And we see the original snapd running"
running="$(readlink -f /proc/"$(pidof snapd)"/exe)"
echo "$running" | MATCH "/snap/snapd/$current/usr/lib/"
done
```
Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).
Regards,
We believe that the bug you reported is fixed in the latest version of
snapd, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 1136588@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Zygmunt Krynicki <me@zygoon.pl> (supplier of updated snapd package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Fri, 21 Aug 2026 10:45:42 +0000
Source: snapd
Architecture: source
Version: 2.76.3-1
Distribution: unstable
Urgency: medium
Maintainer: Zygmunt Krynicki <me@zygoon.pl>
Changed-By: Zygmunt Krynicki <me@zygoon.pl>
Closes: 1122720 1136588 1142551
Changes:
snapd (2.76.3-1) unstable; urgency=medium
.
[ Katie May ]
* New upstream release, LP: #2158301
- FDE: support keyboard configuration at install-time for first-boot
- FDE: re-enable passphrases/PINs at install-time
- FDE: require volumes authentication if HWROT is missing
- FDE: bump secboot to rev 457b03a16d19
- FDE: use new secboot API for reprovision TPM
- Cross-distro: modify SELinux policy to use
init_named_socket_activation() for allowing systemd to start snapd
through socket activation
- packaging: make sure that usr/bin/snap is built with correct build
tags on debian sid
- Ensure profiles are setup before running prepare-{slot, plug}*
hooks
.
[ Zygmunt Krynicki ]
* New upstream version 2.76.3
* Not annotated in the Ubuntu changelog but this fixes CVE-2026-15226
(Closes: #1142551)
* debian: add procps to Build-Depends for pidof (Closes: #1136588)
* debian: replace dbus with dbus-daemon in Build-Depends (Closes: #1122720)
* debian: restrict Architecture to known-working arches
* debian: make Zygmunt Krynicki the package maintainer
* debian: update Standards-Version to 4.7.4
Checksums-Sha1:
3c5d60dafc815aa30aed6242ce54276a9704d0cf 3627 snapd_2.76.3-1.dsc
6be0470c41000a6ed695514575ac4162e6f52e5f 8335920 snapd_2.76.3.orig.tar.xz
228138437688b7ef2f0570f1da0a502d2bb9135a 156196 snapd_2.76.3-1.debian.tar.xz
3745df00fd9540816956fa024fe194b0824b710a 13670 snapd_2.76.3-1_source.buildinfo
Checksums-Sha256:
3d0098a8df91a55a91e65caae34b9383f21f671d65fe97fe742643cd715b6d0d 3627 snapd_2.76.3-1.dsc
32456f3d05dd79e91bb8f60b8ea2a78f283a9de57c75af20ce8272607f29cf8b 8335920 snapd_2.76.3.orig.tar.xz
ec27ca821312188277dc86d3f61f71bae915467f3c0ebbc46374118bd49b321f 156196 snapd_2.76.3-1.debian.tar.xz
8c32f37865f6b16a7adddd9bf2342241b901191d538ed86d2b4c3f7de21c47c8 13670 snapd_2.76.3-1_source.buildinfo
Files:
5d443284dac60bef42e1aa3015f7e15a 3627 devel optional snapd_2.76.3-1.dsc
da3f436fece9ed115e3ede7c52b22c03 8335920 devel optional snapd_2.76.3.orig.tar.xz
0e8bb642fc3e7bea5e81e1fb7617ab7e 156196 devel optional snapd_2.76.3-1.debian.tar.xz
5b27fc7a519fa25aa63f7d6de7fe9e36 13670 devel optional snapd_2.76.3-1_source.buildinfo
-----BEGIN PGP SIGNATURE-----
iQJIBAEBCgAyFiEEt2ztm0XK8VV9JxpqKJTpOijGe0cFAmqILJsUHHprcnluaWNr
aUBnbWFpbC5jb20ACgkQKJTpOijGe0fwgA//fqlGcl6xB/YdI8aeKOGZ6LCUITfu
SPh1EA/3IXhtOxj01mhoh0TVYt+6v8ozkw6Tv5OTqkK3saYdQ8zECKo0h1MOpeSt
iaoAF5ZgmQMaF2DPmqUSWdZM3PIymmuFmMJeEpdDZZRUSz83123r9JTcinNcbX5T
nI4EmWZHOMNRCboOUiAKaNuRpn9tV6Shb8ftkPGSr1f43QWfEpLKEssnqYCBCYpF
wOYAQzO46OI4lFfy9821xrycpWpfBklRcX64wDEIIJPlGudITts2rKozVwZBzp7v
K0ud2AKjPROIdWcAB9/NHJ6nzr2B/NU0jhS1m3KllNbl+cKPuP+SfSdnx0PAbc4v
tO50y0UV2qfhzGC2xVCS7naYHCUeTQbCeoxNf0la0m5oeTMtdfH50G5cbL3iewqP
cAoTXguebyyCNC0eVwwd4NBgrPgdrH9twAHh/JqnD82UmL7gbqmlMQ9FWgqg6tB1
YqzOKwi1KdKahak2PtUtBpN1QT6DqI5H0ydN3RSkE6ywvy7tERbHxY69cHaw9lr8
E5xiuy+oBru2SnKHtYxXwGwn/C+sHp3Zf+FwswUK/iA5V+u3d9rRSL5vL6ycSlBa
sCox/UmZWS9l0Rbeh492tzDMS/MGqQBGkVaF8udcd4beUCUqKqzd5SzBlvAd5fg/
HGvGLXW84JdmE0Q=
=MMcm
-----END PGP SIGNATURE-----