[Bug 1776218] [NEW] New style hook support not robust on removal

Michael Vogt michael.vogt at canonical.com
Mon Jun 11 12:13:22 UTC 2018


Public bug reported:

The new style (json-rpc) hooks are great. However when using them in snapd we noticed the following problem. When shipping a hook in /etc/apt/apt.conf.d/20snapd.conf like:
```
AptCli::Hooks::Install { "[ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true"; }; 
```
this works fine.

However when the snapd package is removed apt fails with:
```
...
Purging configuration files for snapd (1337.2.32.8) ...
Final directory cleanup
Discarding preserved snap namespaces
Removing extra snap-confine apparmor rules
Removing snapd cache
Removing snapd state

E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true: Connection reset by peer
E: Could not read message separator line after handshake from [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true: Connection reset by peer
quiet: end of output.
```

I.e. if the hook is not there apt still expectes a handshake.

** Affects: apt (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/1776218

Title:
  New style hook support not robust on removal

Status in apt package in Ubuntu:
  New

Bug description:
  The new style (json-rpc) hooks are great. However when using them in snapd we noticed the following problem. When shipping a hook in /etc/apt/apt.conf.d/20snapd.conf like:
  ```
  AptCli::Hooks::Install { "[ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true"; }; 
  ```
  this works fine.

  However when the snapd package is removed apt fails with:
  ```
  ...
  Purging configuration files for snapd (1337.2.32.8) ...
  Final directory cleanup
  Discarding preserved snap namespaces
  Removing extra snap-confine apparmor rules
  Removing snapd cache
  Removing snapd state

  E: Could not read response to hello message from hook [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true: Connection reset by peer
  E: Could not read message separator line after handshake from [ ! -f /usr/bin/snap ] || /usr/bin/snap advise-snap --from-apt || true: Connection reset by peer
  quiet: end of output.
  ```

  I.e. if the hook is not there apt still expectes a handshake.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1776218/+subscriptions



More information about the foundations-bugs mailing list