#2679 closed task (fixed)
hal hardware awarness with newer udev
Reported by: | channelzero | Owned by: | DJ Lucas |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | BOOK | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description ¶
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):
--- hal-0.5.11/hald/linux/coldplug.c_orig 2008-05-08 01:23:32.000000000 +0200
+++ hal-0.5.11/hald/linux/coldplug.c 2008-12-04 18:50:37.000000000 +0100
@@ -149,8 +154,8 @@
static gboolean
hal_util_init_sysfs_to_udev_map (void)
{
- char *udevdb_export_argv[] = { "/usr/bin/udevinfo", "-e", NULL };
- char *udevroot_argv[] = { "/usr/bin/udevinfo", "-r", NULL };
+ char *udevdb_export_argv[] = { "/sbin/udevadm", "info", "-e", NULL };
+ char *udevroot_argv[] = { "/sbin/udevadm", "info", "-r", NULL };
int udevinfo_exitcode;
UdevInfo *info = NULL;
char *p;
--- hal-0.5.11/hald/linux/blockdev.c_orig 2008-05-08 01:23:41.000000000 +0200
+++ hal-0.5.11/hald/linux/blockdev.c 2008-12-04 18:50:55.000000000 +0100
@@ -1750,11 +1854,11 @@
char *ret;
char *u_stdout;
int u_exit_status;
- const char *argv[] = {"/usr/bin/udevinfo", "--root", "--query", "name", "--path", NULL, NULL};
+ const char *argv[] = {"/sbin/udevadm", "info", "--root", "--query", "name", "--path", NULL, NULL};
GError *g_error;
ret = NULL;
- argv[5] = sysfs_path;
+ argv[6] = sysfs_path;
g_error = NULL;
Change History (6)
comment:1 by , 16 years ago
comment:4 by , 16 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
tested above changes with udev 130 (LFS 6.4) and it works lik a charm input devices are recognised, which is important for X.org 7.4 without xorg.conf
above changes are in upstream 0.5.12rc1