From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Gundersen Date: Tue, 17 Jul 2012 11:46:17 +0000 Subject: Re: [PATCH] udev: sync udev rules directories with systemd units directories Message-Id: List-Id: References: <1342214503-7931-1-git-send-email-w.d.hubbs@gmail.com> In-Reply-To: <1342214503-7931-1-git-send-email-w.d.hubbs@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org On Tue, Jul 17, 2012 at 2:57 AM, William Hubbs wrote: > Whoever was working on this back then decided that we should move most > of the critical shared libraries to /lib or /lib64 and put linker > scripts in /usr/lib*. That has to disappear before we can even think > about the /usr merge. > > Also, remember that we are a rolling release distro. We do not have > specific gentoo x.x releases; users just go along updating packages. So, > I'm not sure how to force the /usr merge and symlink creation to happen > on all of our users' systems in one go. We had a similar issue in Arch. What we did was the following: Patch udev+kmod+systemd (the last one was for free) to read from {/usr,}/lib/{modprobe.d,depmod.d,udev/rules.d,systemd/system}. We then rebuild all the packages that installed binaries to /lib/udev/ and /lib/systemd to move them to their /usr/lib counterparts (as we did not want to patch udev/systemd to read the helpers from more than one location). Then we let people rebuild their packages to move things from /lib to /usr/lib on a package-by-package basis. Then we rebuilt all our kernels and pointed kmod/udev to /usr/lib/modules rather than /lib/modules. At this point only glibc owned stuff in /lib, so we rebuilt that to move it all to /usr/lib and replace /lib with a symlink to /usr/lib. The only step that caused any issues was the last one, and that was due to users ignoring the upgrade instructions[0] and doing clever things like "rm -rf /lib". HTH, Tom [0]: