From c19ce3a711fea24c173d615a4a7b162dbc86ce68 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 13 Sep 2014 10:47:58 +0200 Subject: gnu: eudev: Honor $EUDEV_RULES_DIRECTORY. * gnu/packages/patches/eudev-rules-directory.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/linux.scm (eudev): Use it. --- gnu/packages/patches/eudev-rules-directory.patch | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 gnu/packages/patches/eudev-rules-directory.patch (limited to 'gnu/packages/patches/eudev-rules-directory.patch') diff --git a/gnu/packages/patches/eudev-rules-directory.patch b/gnu/packages/patches/eudev-rules-directory.patch new file mode 100644 index 0000000000..9173e22f76 --- /dev/null +++ b/gnu/packages/patches/eudev-rules-directory.patch @@ -0,0 +1,36 @@ +Add $EUDEV_RULES_DIRECTORY to the list of rules directories. + +The old udev 182 supported $UDEV_CONFIG_FILE, which in turn allowed +the search path to be customized, but eudev no longer has this, hence +this hack. + +--- eudev-1.9/src/udev/udev-rules.c 2014-09-13 10:21:59.615980259 +0200 ++++ eudev-1.9/src/udev/udev-rules.c 2014-09-13 10:24:13.839976335 +0200 +@@ -46,15 +46,11 @@ + }; + }; + +-static const char* const rules_dirs[] = { ++static const char* rules_dirs[] = { + UDEV_CONF_DIR "/rules.d", + UDEV_RULES_DIR, +- "/run/udev/rules.d", + UDEV_LIBEXEC_DIR "/rules.d", +-#ifdef HAVE_SPLIT_USR +- "/lib/udev/rules.d", +- "/usr/lib/udev/rules.d", +-#endif ++ NULL, /* placeholder for $EUDEV_RULES_DIRECTORY */ + NULL}; + + struct udev_rules { +@@ -1637,6 +1633,9 @@ + + udev_rules_check_timestamp(rules); + ++ /* Allow the user to specify an additional rules directory. */ ++ rules_dirs[3] = getenv("EUDEV_RULES_DIRECTORY"); ++ + r = conf_files_list_strv(&files, ".rules", NULL, rules_dirs); + if (r < 0) { + log_error("failed to enumerate rules files: %s", strerror(-r)); -- cgit v1.2.3