Hi! rekado@elephly.net (Ricardo Wurmus) skribis: > commit e0c1d080b520c1bbd2dcd7bc90a750f5ce580486 > Author: Ricardo Wurmus > Date: Mon Oct 9 23:03:56 2017 +0200 > > doc: Add an example to the documentation of the udev-service. > > * doc/guix.texi (Base Services): Update 'udev-service' documentation. Good idea. > +@example > +(define %example-udev-rule > + (udev-rule "90-usb-thing.rules" > + "ACTION==\"add\", SUBSYSTEM==\"usb\", ATTR@{product@}==\"Example\", RUN+=\"/path/to/script\"")) > + > +(operating-system > + ;; @dots{} > + (services (modify-services %desktop-services > + (udev-service-type config => > + (udev-configuration (inherit config) > + (rules (append (udev-configuration-rules config) > + (list %example-udev-rule)))))))) > +@end example is somewhat related. Fundamentally though, to simplify this use case, we should have: (define (additional-udev-rules . rules) "Add RULES, a list of file-like object, as a udev rules." (simple-service 'udev-rule udev-service-type rules)) so one can write: (operating-system ;; … (services (cons (additional-udev-rules %example-udev-rule) %desktop-services))) Thoughts? Ludo’.