On 6/2/21 6:06 PM, jonasxavier wrote: > Hi. > > I would like to know why bash does not follow FHS 3.0 (Filesystem > Hierarchy Standard) suggestions. FHS 3.0 says > > "... 3.8.2. Requirements ... If an application needs to create more > than one dot filethen they should be placed in a subdirectory ..." > > Bash uses ~/.files instead of ~/.bash/files. But in my humble opinion > ~/.config/bash/files would be even better, because $HOME directory > turns a mess full of dot files.
As far as I can tell, this was added in FHS 2.3, but not present in FHS 2.2; this means this FHS requirement is 17 years old (January 29, 2004). The earliest available snapshot in bash's git repo is bash-1.14.7.tar.gz, at which point ~/.bashrc was already used. This is in 1994. Someone else might know if it was in use between 1989 and 1994. Changing the location of the rc file that configures e.g. your environment variables, in a backwards-compatible manner, is "complicated". Furthermore, the application doesn't create this file, you do... and XDG basedirs is much more relevant and meaningful than the FHS, especially considering bash is used on far, far more than just Linux (the FHS is a linux standard, it is overseen by the Linux Foundation). Given that bash predates the formation of standards, it is hardly surprising that it has continued to use filenames compatible with the days before standards. So there is your "why". Assuming we don't care about the FHS, but do care about XDG... This was discussed a month ago in the following thread: https://lists.gnu.org/archive/html/bug-bash/2021-05/msg00093.html Personally, I think this would be a nice improvement, though it does lead to the question "how do you set $XDG_CONFIG_HOME before you read bashrc, where environment variables are typically defined". But, as Chet said, "This is not a high priority issue." -- Eli Schwartz Arch Linux Bug Wrangler and Trusted User
OpenPGP_signature
Description: OpenPGP digital signature