Why does Manjaro's package filesystem care about /usr/local?

Why does Manjaro’s package filesystem care about /usr/local?

I saw your post in the stable announcement thread earlier. There was an Arch forum topic and/or bug report at one point, but I can’t find it now.

Thanks for creating a new topic. I’m in a lot of pain and can’t focus anymore tonight. I’ll leave this open in a new tab for tomorrow.

The FHS document has a limited scope:

  • Local placement of local files is a local issue, so FHS does not attempt to usurp system administrators.
  • FHS addresses issues where file placements need to be coordinated between multiple parties such as local sites, distributions, applications, documentation, etc.

When creating a PKGBUILD for Arch Linux there is a standard and all packages must conform to the guidelines.

As Arch Linux is a community Linux driven by voluntary users - it was necessary to agree on some standard for packing software.

Among other things it ensure that pacman can do it’s job correctly.

If you look at your PATH variable - you will immediately know why

echo $PATH

If you don’t see it, let me know :slight_smile:

1 Like

That package’s goal is to ensure the filesystem hierarchy is correctly in place.

Exactly:

$ pacman -Ql filesystem | grep usr/local
filesystem /usr/local/
filesystem /usr/local/bin/
filesystem /usr/local/etc/
filesystem /usr/local/games/
filesystem /usr/local/include/
filesystem /usr/local/lib/
filesystem /usr/local/man/
filesystem /usr/local/sbin/
filesystem /usr/local/share/
filesystem /usr/local/share/man
filesystem /usr/local/src/

Poster’s own link to the FHS just after the quoted part in fact explicitly says that all those must be in /usr/local (“after first installing a FHS-compliant system.”). Cross-referencing with /usr/share it in fact seems it would want an additional /usr/local/share/misc but that’s all.

The /usr/local hierarchy “is for use by the system administrator” but is not as to said hierarchy freeform: binaries are expected to go into /usr/local/bin in quite the same way as the manpages for them are in /usr/local/man, say, and all of it in quite the same way as for /usr.

1 Like