BTW, see dh_bash-completion from the debhelper package. When in doubt about packaging on a deb based distro look at the debhelper tools source (which is perl).
-----Original Message----- From: Perry, Sean Sent: Wednesday, July 01, 2015 4:04 PM To: OpenStack Development Mailing List (not for usage questions) Subject: RE: [openstack-dev] [all][packaging] Adding files to /etc in a package According to Debian standards (which Ubuntu follows mostly) if a package ships bash completion information that file belongs in /etc/bash_completion.d with a file named after the package. You can look in that dir on an Ubuntu/debian box and see the setup. -----Original Message----- From: Tony Breeds [mailto:[email protected]] Sent: Wednesday, July 01, 2015 3:26 PM To: OpenStack Development Mailing List (not for usage questions) Subject: Re: [openstack-dev] [all][packaging] Adding files to /etc in a package On Wed, Jul 01, 2015 at 01:33:03PM +0200, Thomas Goirand wrote: > The file has nothing to do in /usr/share/doc either. By per the debian > policy manual: we shouldn't rely on /usr/share/doc, as it can be > removed entirely by the users. /usr/share/python-novaclient could be a > place, but really, the correct location is > /usr/share/bash-completion/completions, not /etc (btw: that's a new > thing, it used to be in /etc, but there's now a lintian warning about it). Personally I like /usr/share/python-novaclient as that's very deliberatlely package centric and if I do that right should make your life as a consumer of the python-novaclient git repo a little simplier. so with that in mind I'm thinking something like: --- [files] packages = novaclient + data_files = + usr/share/python-novaclient/nova.bash_completion = + tools/nova.bash_completion --- Note[1]: I typed that in to my mail client so the diff will be malformed Note[2]: I deliberatly used 'usr/' rather than '/usr/' so the config file is in the install root Note[3]: For my development systems I can easily add a symlink like: (cd /usr/share/bash-completions/ ; ln -s ../python-novaclient/nova.bash_completion nova) Note[4]: the subject of this email is now wrong but we get the idea. So assuming that somethign like that is acceptable to distribution packages and python packagers we're winning :) The last questions are: - How does pbr handle the case where usr/share/python-novaclient/ dosn't exist ? - Can I make is do the equivilent of: mkdir -p $install_root/usr/share/python-novaclient/ somehow? - At this point I'll propose a change like this for: python-ceilometerclient python-cinderclient python-glanceclient python-group-based-policy-client python-heatclient python-ironicclient python-keystoneclient python-magnetodbclient python-manilaclient python-manilaclient python-mistralclient python-mistralclient python-monascaclient python-muranoclient python-muranoclient python-neutronclient python-novaclient python-senlinclient python-surveilclient python-tackerclient python-watcherclient Yours Tony. __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: [email protected]?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
