[PATCH] prevent install(1) from overwritting symlinks

David Taylor davidt at yadt.co.uk
Sat Nov 3 10:23:25 PDT 2007


On Thu, 01 Nov 2007, Aryeh M. Friedman wrote:

> Dan Nelson wrote:
> > In the last episode (Nov 01), Aryeh M. Friedman said:
> >   
> >> The below patch is designed to keep install(1) from overwriting symbolic
> >> links.   The motivation is if cups is installed some programs still
> >> expect lpr to be in /usr/bin thus when I install cups I backlink the
> >> /usr/local/bin versions of lp* to /usr/bin.   When a build/installworld
> >> is done these links are overwritten and the sym links have to be
> >> performed again.   This patch prevents the overwrite.
> >>     
> >
> > Why not just set WITHOUT_LPR to skip building the base versions
> > entirely?
> >  
> >   
> Because this happens in other cases not covered by WITHOUT_XXX also it
> does not solve the problem of ports and/or third party install from
> overwritting....

If a port overwrites anything under /usr/bin then that is generally a bug.

> i.e. this is a general solution to a specific problem
> (which I think is preferable to a one off solution for each instance of
> a problem)

The WITHOUT_ knobs are a reasonably general solution -- if you wish
to replace part of the base system, set WITHOUT_xxx and the base
system will stop overwriting your replacement.  Whether it is in the
form of a symlink or a regular file.

-- 
David Taylor


More information about the freebsd-current mailing list