[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: New Package: fish



Axel Liljencrantz wrote:
The reason why I think it _might_ be the right thing to meddle with
/etc/passwd is that I have provided both src.rpm and i386.rpm files
for fish on the fish homepage since the very first release, and for
the first two months, these files installed to /usr/local, since I was
under the impression that external packages should go there. (I have
since been informed that /usr/local should only be used for unpackaged
commands.) According to my server logs, somewhere between 500 and 1000
people have downloaded a fish rpm that installs fish to /usr/local,
and many of those are probably running on fedora. I have no idea how
many of those people have since upgraded to a newer version with the
correct installation directory, nor do I know how many pre 1.6 users
there are who use fish as their login shell. But if fish enters the
extras repository without the above check, the next time any such
person runs 'yum update', they will be unable to log in. The number of
people effected by this is probably pretty close to zero.

Like I said, if the fedora policy is not to jump through hoops to
avoid getting hit by braindamage in external packages, I fully
understand that and will remove the offending lines. I just want the
decision to be made based on the facts of the situation.

If you're really concerned about this, you might consider adding something like this:


%triggerpostun -- fish < 1.6
if grep /usr/local/bin/fish /etc/passwd &> /dev/null; then
	ln -s ../../bin/fish /usr/local/bin/fish
fi
exit 0

The idea is to add a symlink /usr/local/bin/fish -> /usr/bin/fish after an RPM package for fish with version < 1.6 gets uninstalled, but only if the string /usr/local/bin/fish is found in /etc/passwd.

This should I think be enough to take care of the scenario you're worried about, without the danger of editing /etc/passwd and will have no effect at any time on a system where a version of fish < 1.6 has not been installed.

Paul.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]