So maybe ya'll know what I'm about to say, but it took me a good long while to work out wtf. was going on. Basic problem was/is that:
yum install /etc/init.d/nfs ...doesn't work. I eventually found nfs-utils and installed it (rpm -qf above file, on another box), and the above yum command still couldn't find it ... I then tried: yum provides /etc/init.d/nfs ...and that worked! ... now I was very confused. Long story short, the file is actually "/etc/rc.d/init.d/nfs" ... but returnInstalledPackagesByDep() finds it anyway due to the magic fingerprinting that we all love so much. I'm going to half propose the following patch, mainly to hurt skvidal :), but I guess we probably have this problem other places? And I assume it's not that common for users to do the above (and very uncommon for pkgs :). Maybe a better way to fix it would be to require that all Fedora pkgs use either /etc/rc.d/init.d _or_ /etc/init.d ... dito. any other dirs. we have that act the same way. Probably need a tool/rpmlint to find them. -- James Antill <[EMAIL PROTECTED]> Red Hat
diff --git a/cli.py b/cli.py
index 231fd42..4b2ba94 100644
--- a/cli.py
+++ b/cli.py
@@ -494,6 +494,12 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
val, msglist = self.localInstall(filelist=[arg])
continue # it was something on disk and it ended in rpm
# no matter what we don't go looking at repos
+
+ # This is just to make skvidal cry...
+ if arg.startswith("/etc/init.d/"):
+ arg = "/etc*/init.d/" + arg[len("/etc/init.d/"):]
+ if arg.startswith("/etc/rc.d/init.d/"):
+ arg = "/etc*/init.d/" + arg[len("/etc/rc.d/init.d/"):]
try:
self.install(pattern=arg)
except yum.Errors.InstallError:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Yum-devel mailing list [email protected] https://lists.dulug.duke.edu/mailman/listinfo/yum-devel
