Marius Bakke writes: > Mark H Weaver writes: > >> (services (cons* (console-keymap-service keymap) >> ;;(xfce-desktop-service) >> (gnome-desktop-service) >> (service network-manager-service-type >> (network-manager-configuration)) >> (service wpa-supplicant-service-type wpa-supplicant) > > To adapt to the new interface, this should be changed to: > > (service wpa-supplicant-service-type) > > ...though it would be good to have backwards compatibility here. WDYT > of this approach? [...] > (define wpa-supplicant-service-type > - (let ((config->package > - (match-lambda > - (($ wpa-supplicant) > - (list wpa-supplicant))))) > - (service-type (name 'wpa-supplicant) > - (extensions > - (list (service-extension shepherd-root-service-type > - wpa-supplicant-shepherd-service) > - (service-extension dbus-root-service-type config->package) > - (service-extension profile-service-type config->package))) > - (description "Run the WPA Supplicant daemon, a service that > + (lambda* (#:optional wpa-supplicant-package) ;deprecated > + (let ((package > + (if wpa-supplicant-package > + wpa-supplicant-package > + (match-lambda > + (($ wpa-supplicant) > + (list wpa-supplicant)))))) Derp, this obviously won't work. I've tried various incarnations to match a package object in the match-lambda with little success. Suggestions?