From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20152 invoked by alias); 26 Jul 2013 18:08:14 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 31582 Received: (qmail 5248 invoked from network); 26 Jul 2013 18:07:57 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.2 Received-SPF: none (ns1.primenet.com.au: domain at bewatermyfriend.org does not designate permitted sender hosts) From: Frank Terbeck To: William Giokas <1007380@gmail.com> Cc: zsh-workers@zsh.org Subject: Re: Correct installation path for completion files In-Reply-To: <20130726170749.GA6421@WST420> (William Giokas's message of "Fri, 26 Jul 2013 12:07:49 -0500") References: <20130726170749.GA6421@WST420> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) Date: Fri, 26 Jul 2013 19:47:15 +0200 Message-ID: <87mwp9gqn0.fsf@ft.bewatermyfriend.org> MIME-Version: 1.0 Content-Type: text/plain X-Df-Sender: [pbs]MzQ5NTM4 William Giokas wrote: > I am working on having systemd install its own completion file in the > `make install`, but was told that the directory that I was having it go > to by default was non-standard. Hm, getting the completion into our repo and sync every now and then is not an option? > Which directory should upstream provided completion files go? I Depends. :-) > currently have all of mine in /usr/share/zsh/site-functions/, but I was By default, the `site-functions' directory is located in /usr/local, for admins to locally override functions. This is a compile-time option though, and your vendor seems to change it. > told that they should be in /usr/share/zsh/vendor-functions/. However, This is a directory that debian uses (well, at least - so probably ubuntu as well). This is done by specifying the following compile-time option: --enable-additional-fpath=/usr/share/zsh/vendor-functions,/usr/share/zsh/vendor-completions The idea is to have a directory early in $fpath in /usr/share for other debian packages to override zsh-default functions or provide additional ones. Debian packages are not allowed to install files to /use/local. Also, by not changing the `site-functions' location we still allow admins to locally override any function they want by dropping files into /usr/local/share/zsh/site-functions outside of the realm of the packaging system. > going through a few distros (CentOS, Debian, Arch, and Fedora) nothing > seems to install to that directory, and all completion files not > supplied by the zsh package are in `site-functions`. There was a post on I don't think moving site-functions out of /usr/local is a good idea; it robs people of the possibility to override functions locally. > the Debian MLs[1] that said to put them in vendor-functions, but I am > wary if even in the debian packages they don't do that yet. (Unless this > is in their experimental branch or something) A debian package for systemd should place the completion function you are talking about to "/usr/share/vendor-functions". It is exactly the intended place for such add-ons on debian. Regards, Frank -- In protocol design, perfection has been reached not when there is nothing left to add, but when there is nothing left to take away. -- RFC 1925