[BLFS Trac] #2679: hal hardware awarness with newer udev

BLFS Trac trac at linuxfromscratch.org
Thu Dec 4 11:50:01 PST 2008


#2679: hal hardware awarness with newer udev
-------------------------+--------------------------------------------------
 Reporter:  channelzero  |       Owner:  blfs-book at linuxfromscratch.org
     Type:  task         |      Status:  new                           
 Priority:  normal       |   Milestone:  6.4                           
Component:  BOOK         |     Version:  SVN                           
 Severity:  normal       |    Keywords:                                
-------------------------+--------------------------------------------------
 As of udev-126 the udevinfo tool is not longer installed, in stable hal-
 versions <= 0.5.11,
 this tool is hard coded in linux specific code. Resulting in a hal which
 isn't aware of the
 hardware in your system. Especially lshal and desktop-apps like nautilus
 are affected.

 The hal-developers have fixed the problem within git-repo:
 http://lists.freedesktop.org/archives/hal/2008-August/012177.html

 One easy but maybe not portable solution is to set a link
 from /sbin/udevadm to /usr/bin/udevinfo, which worked for me.
 Using: udev-127, dbus-1.2.4 and hal-0.5.11.

 related code (not tested):[[BR]]
 --- hal-0.5.11/hald/linux/coldplug.c_orig       2008-05-08
 01:23:32.000000000 +0200[[BR]]
 +++ hal-0.5.11/hald/linux/coldplug.c    2008-12-04 18:50:37.000000000
 +0100[[BR]]
 @@ -149,8 +154,8 @@[[BR]]
  static gboolean[[BR]]
  hal_util_init_sysfs_to_udev_map (void)[[BR]]
  {[[BR]]
 -       char *udevdb_export_argv[] = { "/usr/bin/udevinfo", "-e", NULL
 };[[BR]]
 -       char *udevroot_argv[] = { "/usr/bin/udevinfo", "-r", NULL };[[BR]]
 +       char *udevdb_export_argv[] = { "/sbin/udevadm", "info", "-e", NULL
 };[[BR]]
 +       char *udevroot_argv[] = { "/sbin/udevadm", "info", "-r", NULL
 };[[BR]]
         int udevinfo_exitcode;[[BR]]
         UdevInfo *info = NULL;[[BR]]
         char *p;[[BR]]
 [[BR]]
 --- hal-0.5.11/hald/linux/blockdev.c_orig       2008-05-08
 01:23:41.000000000 +0200[[BR]]
 +++ hal-0.5.11/hald/linux/blockdev.c    2008-12-04 18:50:55.000000000
 +0100[[BR]]
 @@ -1750,11 +1854,11 @@[[BR]]
          char *ret;[[BR]]
          char *u_stdout;[[BR]]
          int u_exit_status;[[BR]]
 -        const char *argv[] = {"/usr/bin/udevinfo", "--root", "--query",
 "name", "--path", NULL, NULL};[[BR]]
 +        const char *argv[] = {"/sbin/udevadm", "info", "--root", "--
 query", "name", "--path", NULL, NULL};[[BR]]
          GError *g_error;[[BR]]
  [[BR]]
          ret = NULL;[[BR]]
 -        argv[5] = sysfs_path;[[BR]]
 +        argv[6] = sysfs_path;[[BR]]
  [[BR]]
          g_error = NULL;[[BR]]

-- 
Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/2679>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch



More information about the blfs-book mailing list