Skip to content

/usr/local/share/fish/vendor_functions.d is not in $fish_function_path #11349

Description

@hupfdule

Fish version: 4.0.1
OS version: Debian Linux Trixie (Testing)

According to the manual functions should be autoloaded from the paths in $fish_function_path which should contain /usr/share/fish/vendor_functions.d as well as /usr/local/share/fish/vendor_functions.d.
Apparently this is not the case:

~> echo $fish_function_path
/home/me/.config/fish/functions /etc/fish/functions /home/me/.local/share/fish/vendor_functions.d /usr/share/fish/vendor_functions.d /usr/share/fish/functions

Both, $XDG_CONFIG_HOME and $XDG_DATA_DIRS are unset.

The XDG Base Directory Specification states:

If $XDG_DATA_DIRS is either not set or empty, a value equal to /usr/local/share/:/usr/share/ should be used.

Also the above mentioned fish documentation hints the same.

The same seems to be true for the vendor_conf.d directory:

~> echo $__fish_vendor_confdirs 
/home/me/.local/share/fish/vendor_conf.d /usr/share/fish/vendor_conf.d

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething that's not working as intended

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions