Now in Bionic the only systemd problem known to me is the quoting/unquoting turnaround problem mentioned here.
In system-config-printer this problem got worked around upstream by calling the systemd service with the simpler bus and device IDs and not with the device path. This works reliably in Bionic and probably also in Artful. Another, more severe severe systemd problem in Artful was that systemd did not unregister (at least some) USB devices when they got unplugged. This problem went away in Bionic. So in Bionic I do not have any problems with USB printer auto-setup any more. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to systemd in Ubuntu. https://bugs.launchpad.net/bugs/1721839 Title: [REGRESSION] Services asked for by UDEV do not get triggered Status in systemd: New Status in Release Notes for Ubuntu: Fix Released Status in systemd package in Ubuntu: Confirmed Bug description: The packages system-config-printer-udev and ippusbxd are installed, having the following UDEV rule files: /lib/udev/rules.d/70-printers.rules ---------- # Low-level USB device add trigger ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", TAG+="udev-configure-printer", TAG+="systemd", PROGRAM="/bin/systemd-escape --template=udev-configure-printer@.service %p", ENV{SYSTEMD_WANTS}+="%c" # Low-level USB device remove trigger ACTION=="remove", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701*:*", RUN+="udev-configure-printer remove %p" ---------- /lib/udev/rules.d/55-ippusbxd.rules ---------- # ippusbxd udev rules file ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device" ENV{ID_USB_INTERFACES}=="*:070104:*", OWNER="root", GROUP="lp", MODE="0664", PROGRAM="/bin/systemd-escape --template=ippusbxd@.service $env{BUSNUM}:$env{DEVNUM}", ENV{SYSTEMD_WANTS}+="%c" ---------- If I turn on an appropriate printer (USB, supporting IPP-over-USB, here the HP DeskJet 2540) I get in the output of "udevadm monitor --environment" ---------- UDEV [17527.514150] add /devices/pci0000:00/0000:00:14.0/usb2/2-2 (usb) ACTION=add BUSNUM=002 DEVNAME=/dev/bus/usb/002/033 DEVNUM=033 DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-2 DEVTYPE=usb_device DRIVER=usb ID_BUS=usb ID_MODEL=Deskjet_2540_series ID_MODEL_ENC=Deskjet\x202540\x20series ID_MODEL_ID=c211 ID_REVISION=0100 ID_SERIAL=HP_Deskjet_2540_series_BR54BFB02C05XK ID_SERIAL_SHORT=BR54BFB02C05XK ID_USB_INTERFACES=:ffcc00:070104:070102:ff0401: ID_VENDOR=HP ID_VENDOR_ENC=HP ID_VENDOR_FROM_DATABASE=Hewlett-Packard ID_VENDOR_ID=03f0 MAJOR=189 MINOR=160 PRODUCT=3f0/c211/100 SEQNUM=9891 SUBSYSTEM=usb SYSTEMD_WANTS=ippusbxd@002:033.service udev-configure-printer@-devices-pci0000:00-0000:00:14.0-usb2-2\x2d2.service printer.target TAGS=:udev-configure-printer:systemd: TYPE=0/0/0 USEC_INITIALIZED=17527513940 UDEV [17527.517724] add /devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0 (usb) .MM_USBIFNUM=00 ACTION=add DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.0 DEVTYPE=usb_interface ID_VENDOR_FROM_DATABASE=Hewlett-Packard INTERFACE=255/204/0 MODALIAS=usb:v03F0pC211d0100dc00dsc00dp00icFFiscCCip00in00 PRODUCT=3f0/c211/100 SEQNUM=9892 SUBSYSTEM=usb TYPE=0/0/0 USEC_INITIALIZED=17527517478 UDEV [17527.522565] add /devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.2 (usb) .MM_USBIFNUM=02 ACTION=add DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.2 DEVTYPE=usb_interface ID_VENDOR_FROM_DATABASE=Hewlett-Packard INTERFACE=255/4/1 MODALIAS=usb:v03F0pC211d0100dc00dsc00dp00icFFisc04ip01in02 PRODUCT=3f0/c211/100 SEQNUM=9895 SUBSYSTEM=usb TYPE=0/0/0 USEC_INITIALIZED=17527522332 UDEV [17527.523761] add /devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.1 (usb) .MM_USBIFNUM=01 ACTION=add DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.1 DEVTYPE=usb_interface DRIVER=usblp ID_VENDOR_FROM_DATABASE=Hewlett-Packard INTERFACE=7/1/2 MODALIAS=usb:v03F0pC211d0100dc00dsc00dp00ic07isc01ip02in01 PRODUCT=3f0/c211/100 SEQNUM=9893 SUBSYSTEM=usb TYPE=0/0/0 USEC_INITIALIZED=17527523500 UDEV [17527.527275] add /devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.1/usbmisc/lp1 (usbmisc) .MM_USBIFNUM=01 ACTION=add DEVNAME=/dev/usb/lp1 DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2:1.1/usbmisc/lp1 MAJOR=180 MINOR=1 SEQNUM=9894 SUBSYSTEM=usbmisc USEC_INITIALIZED=17527527175 ---------- Here one can see that the UDEV rules files are correct, leading to the correct systemd services being requested SYSTEMD_WANTS=ippusbxd@002:033.service udev-configure-printer @-devices-pci0000:00-0000:00:14.0-usb2-2\x2d2.service printer.target but neither the service ippusbxd@002:033.service nor the service udev- configure-printer@-devices-pci0000:00-0000:00:14.0-usb2-2\x2d2.service get started (note that I have put the .service file for ippusbxd in place by "sudo cp /usr/share/doc/ippusbxd/examples/ippusbxd@.service /lib/systemd/system/"). I can start each of these services manually though: sudo systemctl start 'udev-configure-printer@-devices- pci0000:00-0000:00:14.0-usb2-2\x2d2.service' sudo systemctl start ippusbxd@002:033.service In each case ippusbxd gets started for this printer and a print queue auto-created. What I expect is that the services get automatically started (and that worked in 17.04) so that after plugging in an USB printer I can immediately print as the print queue gets created automatically. The "udev-configure-printer..." service works for all USB printers, not only IPP-over-USB (it automatically recognizes the printer typ and does an appropriate setup). This is a regression as we had always automatic setup of USB printers. To manage notifications about this bug go to: https://bugs.launchpad.net/systemd/+bug/1721839/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp