How to manage services with sockets/timers

As discussed in Paris, we will do the following in the short-term:

  • snapctl stop --disable will disable the service and also disable all sockets and timers associated with a service
  • snap info will show in the services output that a service is socket activated (like snap services does today)
  • snap services svc --time will show the next time that the service will run if it is on a timer (possibly also include this in snap services --verbose when that becomes a thing)
  • for snap service timers, we will continue to allow the old ambiguous syntax around anchored days, but the review-tools will gain a warning for using the old ambiguous syntax (and the old ambiguous syntax lose it’s ambiguous meaning and start working like the new behavior)

In the long term we may consider:

  • adding snap refresh --calendar which shows when the next refreshes for various snaps will happen
  • adding a snap status command for all the dynamic properties of snaps like health, services, running processes/windows, etc.
2 Likes