Package: zsh
Version: 5.8-5
Severity: normal

Hi,

I encountered with a problem, when trying to use custom zsh completions.


Zsh reads completion script files at $DATADIR/zsh/site-functions. This location can be configured through autotools in configure.ac: https://salsa.debian.org/debian/zsh/-/blob/debian/configure.ac#L312-315. According to d/rules file, we explicitly set it to |/usr/local/share/zsh/site-functions: https://salsa.debian.org/debian/zsh/-/blob/debian/debian/rules#L27.|
||
|But the problem is that some packages that provide zsh completions, install completion scripts at ||/usr/share/zsh/site-functions|. This leads to the fact that these completion scripts is not working.

Here are some examples of these packages:

- udiskie (https://salsa.debian.org/debian/udiskie/-/blob/master/setup.py#L116) - bluez (https://salsa.debian.org/bluetooth-team/bluez/-/blob/master/debian/bluez.install#L31) - polybar (https://salsa.debian.org/debian/polybar/-/blob/debian/master/contrib/zsh/CMakeLists.txt#L5)
- httpie (not present in salsa)


I am sure that there are more packages with incorrect installation path. And I also haven't seen any packages that use /usr/local/share/zsh/site-function location for completion scripts (at least on my systems). What is the best way to solve this problem? Should the site-function path in zsh's d/rules be fixed? Or this an error in all the other packages and we should fix it there?


I'm currently working on debianization of zsh-completions package: https://github.com/zsh-users/zsh-completions (requested at #849878). Where should I install the completion scripts from this package?

--
Best regards,
Georgy Komarov

Reply via email to