I was watching the discussion thread, but missed this thread here. Sorry for the lack of replies. But fortunately people answered most of the questions, so I'll just provide some clarifications.
On Mon, Jul 28, 2025 at 08:44:23AM -0400, Ben Beasley wrote: > I agree that symlinks have a few advantages, including discoverability and > in the fact that they can cross filesystems, but they do have the > disadvantage that they are not symmetrical: you need to pick one location to > remain a regular file and link the others to it, and in the general case it > may not be obvious how to do that sensibly and consistently. A collection of > hardlinks are all co-equal, with no need to choose a “canonical” path. Exactly. Hardlinked files are almost always treated exactly the same as non-hardlinked files, or more precisely, files with link count equal to 1. The application would actually need to implement specific checks to make the behaviour different. OTOH, symlinks can create subtle differences in common operations. Some applications attach special meaning to a file being a symlink (e.g. systemd), or forbid symlinks in case the path is not expected to by symlinked, etc. The meaning of an symlink also changes depending on what is the root of the file system. If the file system is bind-mounted to with some subdirectory as the root, all absolute symlinks now point to a different location. But depending on circumstances, relative symlinks can point to different files too. So as Ben and others wrote, this proposal is abouting using hardlinks _within_ packages. The intent is for the change to have no effect on applications and to be mostly invisible to users. > On 7/28/25 8:33 AM, Neal Gompa wrote: > > The only real problem with hardlinks is that you can't partition them > > out across volumes. And some filesystems aren't hardlink-safe. > > > > I'm sure the proposers plan to ensure all the valid storage > > configurations supported by Anaconda can handle this. > > > > Personally, I would have used symlinks instead of hardlinks, since > > they are more obvious and more compatible across different storage > > configurations. This proposal is about package contents under /usr. /usr is generally a single partition on a "normal" filesystem. So cross-partition links or non-hardlink-safe systems are not in scope. (But if somebody did use some strange sutup, hardlinks would work fine, in the sense that rpm would create normal non-linked files.) Zbyszek -- _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue