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

Re: symlink vs. directory "conflicts"

Andreas Beckmann <debian@abeckmann.de> writes:

> There are also more complicated^Wmessed up cases like sendmail that has
> maintainer scripts that try to setup /u/s/doc/sendmail-foo -> sendmail
> symlinks while at the same time shipping /u/s/doc/sendmail-foo/README
> etc. where several packages are overwriting each other (without dpkg
> having a chance to notice this). This is being cleaned up in #681147

> So what is the general recommendation about packages that ship files
> over symlinked directories? Should this be forbidden because it opens
> cans of worms?

Yes.  This sort of thing:

> foo ships  /usr/share/foo/foo.dat

> bar ships  /usr/share/foobar/bar.dat
>            /usr/share/foo -> foobar

is clearly broken and can't ever be the situation we actually want to have
in the archive.  In addition to the problem you name involving bar moving
the symlink, what happens if bar adds a file /usr/share/foobar/foo.dat?
Does dpkg even correctly realize that the two packages conflict because
they both ship the same file (just via different paths)?

The trick, of course, will be finding this sort of problem so that
maintainers can avoid it proactively rather than having to react to bugs
or QA reports.  I'm not sure if we'll be able to do that, which would be
unfortunate.  But I think it's fairly clear that situation isn't sensible
or stable.

Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>

Reply to: