name: cups
version: 2.4.12-2
summary: CUPS-based printing stack Snap
description: Complete printing environment in a Snap
architectures:
- amd64
base: core22
assumes:
- snapd2.55
apps:
  cupsd:
    command: scripts/run-cupsd
    stop-command: scripts/stop-cupsd
    reload-command: scripts/reload-cupsd
    daemon: simple
    restart-condition: always
    plugs:
    - network
    - network-bind
    - avahi-control
    - raw-usb
    - etc-cups
    - cups-host
  cups-browsed:
    command: scripts/run-cups-browsed
    stop-command: scripts/stop-cups-browsed
    reload-command: scripts/reload-cups-browsed
    daemon: simple
    restart-condition: always
    plugs:
    - network
    - network-bind
    - network-manager-observe
    - avahi-control
  lpinfo:
    command: scripts/run-util sbin/lpinfo
    plugs:
    - network
    - cups-host
  lpadmin:
    command: scripts/run-util sbin/lpadmin
    plugs:
    - network
    - avahi-control
    - home
    - cups-host
  lpstat:
    command: scripts/run-util bin/lpstat
    plugs:
    - network
    - avahi-control
    - cups-host
  lpq:
    command: scripts/run-util bin/lpq
    plugs:
    - network
    - cups-host
  lpc:
    command: scripts/run-util sbin/lpc
    plugs:
    - network
    - cups-host
  lpoptions:
    command: scripts/run-util bin/lpoptions
    plugs:
    - network
    - home
    - cups-host
  lp:
    command: scripts/run-util bin/lp
    plugs:
    - network
    - home
    - cups-host
  lpr:
    command: scripts/run-util bin/lpr
    plugs:
    - network
    - home
    - cups-host
  cancel:
    command: scripts/run-util bin/cancel
    plugs:
    - network
    - cups-host
  lprm:
    command: scripts/run-util bin/lprm
    plugs:
    - network
    - cups-host
  cupsenable:
    command: scripts/run-util sbin/cupsenable
    plugs:
    - network
    - cups-host
  cupsdisable:
    command: scripts/run-util sbin/cupsdisable
    plugs:
    - network
    - cups-host
  cupsaccept:
    command: scripts/run-util sbin/cupsaccept
    plugs:
    - network
    - cups-host
  cupsreject:
    command: scripts/run-util sbin/cupsreject
    plugs:
    - network
    - cups-host
  accept:
    command: scripts/run-util sbin/cupsaccept
    plugs:
    - network
    - cups-host
  reject:
    command: scripts/run-util sbin/cupsreject
    plugs:
    - network
    - cups-host
  cupsctl:
    command: scripts/run-util sbin/cupsctl
    plugs:
    - network
    - cups-host
  cupsfilter:
    command: scripts/run-util sbin/cupsfilter
    plugs:
    - network
    - home
  cupstestppd:
    command: scripts/run-util bin/cupstestppd
    plugs:
    - network
    - home
  ipptool:
    command: scripts/run-util bin/ipptool
    plugs:
    - network
    - avahi-control
    - home
  ippfind:
    command: scripts/run-util bin/ippfind
    plugs:
    - network
    - avahi-control
  driverless:
    command: scripts/run-util bin/driverless
    plugs:
    - network
    - avahi-control
  ippeveprinter:
    command: scripts/run-util bin/ippeveprinter
    plugs:
    - network
    - network-bind
    - avahi-control
    - home
    - raw-usb
  gs:
    command: bin/gs
    plugs:
    - home
    - etc-cups
confinement: strict
grade: stable
environment:
  CUPS_SERVERROOT: /var/snap/cups/common/etc/cups
  CUPS_DATADIR: /snap/cups/current/share/cups
  CUPS_SERVERBIN: /snap/cups/current/lib/cups
  LD_LIBRARY_PATH: ${SNAP_LIBRARY_PATH}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}:$SNAP/lib:$SNAP/usr/lib:$SNAP/usr/lib/x86_64-linux-gnu
  PATH: $SNAP/usr/sbin:$SNAP/usr/bin:$SNAP/sbin:$SNAP/bin:$PATH
plugs:
  etc-cups:
    interface: system-files
    read:
    - /etc/cups
  cups-host:
    interface: cups-control
slots:
  cups-control:
    interface: cups-control
  cups:
    interface: cups
    cups-socket-directory: $SNAP_COMMON/run
  install-cups-runtime-dependency:
    interface: content
    content: foo
    read:
    - $SNAP/meta/snap.yaml
layout:
  /etc/fonts:
    bind: $SNAP/etc/fonts
  /usr/share/fonts:
    bind: $SNAP/usr/share/fonts
  /var/cache/fontconfig:
    bind: $SNAP_DATA/var/cache/fontconfig
  /etc/papersize:
    bind-file: $SNAP_COMMON/etc/papersize
system-usernames:
  snap_daemon: shared
