bug#79445: `ln -s` should raise a warning about pwd-relative vs symlink-location-relative targets

Chris <[email protected]>
Newsgroups gmane.comp.gnu.core-utils.bugs
Message-ID <CAPvCkbikc5FPmMGhBzVN3cxiBxLEUM7K_sgQDfQuO_QQeWqukA@mail.gmail.com>
When my current working directory is `/foo` and contains `bar` and I need
`/example/bar` to be a symlink to `/foo/bar`, it seems intuitive that `ln
-s bar /example/bar` should accomplish that. But it doesn't; instead it
makes `/example/bar` a symlink that points to itself, because `ln -s` makes
relative paths relative to the symlink's location rather than (like all
other coreutils commands I know of) relative to the current directory.

It seems to me it should be easy enough to alert users to this gotcha by
printing a warning to stderr when creating a symlink whose location is an
absolute path and whose target isn't. But not only doesn't that warning
occur, but there isn't even an entry for it at
https://www.pixelbeat.org/docs/coreutils-gotchas.html. This sort of thing
seems to me to be a likely huge turnoff for non-technical people who might
otherwise be using Linux on the desktop. Can we please implement this
warning?

Sincerely,
Chris Hennick
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.