Subject: Re: [PATCH gnome-team v3 1/3] gnu: eudev: Update libudev version to 251.

From: Liliana Marie Prikler <[email-masked]>
Date: Mon, 02 Oct 2023 19:02:54 +0200

Am Sonntag, dem 01.10.2023 um 18:02 -0400 schrieb Maxim Cournoyer:
> > +            (search-path-specification
> > +              (variable "UDEV_HWDB_BIN")
> > +              (files '("lib/udev/hwdb.bin"))
> > +              (file-type 'regular)
> > +              (separator #f))))
> 
> Maybe add a ;singled valued comment to the end of the above line. 
> Note that given that file is to be generated in a profile hook,
> UDEV_HWDB_BIN would never be set at *build* time, but that should not
> matter much (the build environment being containerized and all).)
> 
> [...]
> 
> > +          (invoke #$(file-append eudev "/bin/udevadm")
> > +                  "hwdb" "--update"
> > +                  "-o" (string-append #$output
> > "/lib/udev/hwdb.bin")))))
> > +  (gexp->derivation "udev-hwdb-bin" build
> > +                    #:substitutable? #f
> > +                    #:local-build? #t
> > +                    #:properties
> > +                    `((type . profile-hook)
> > +                      (hook . udev-hwdb-bin))))
> > 
> >  (define %default-profile-hooks
> >    ;; This is the list of derivation-returning procedures that are
> > called by
> >    ;; default when making a non-empty profile.
> > @@ -1919,6 +1947,7 @@ (define %default-profile-hooks
> >          gtk-icon-themes
> >          gtk-im-modules
> >          texlive-font-maps
> > +        udev-hwdb-bin
> >          xdg-desktop-database
> >          xdg-mime-database))
> 
> My only issue with this hook is that it introduces 'eudev' as a hard
> dependency for generating guix profiles.  Would it make sense to
> follow the approach used in 'gdk-pixbuf-loaders-cache-file', which is
> to look if eudev is already part of the profile inputs
> (transitively), and skip the hook if it isn't?
Speaking of which, since eudev is basically system config stuff, I
think it might be better *not* to have the variable and the hook and
instead build the hwdb as part of udev-service-type.  Assuming, of
course, that we can already specify a fallback via config file – if no
such switch exists, we'd have to add it.

Cheers