FS#58357 - [lxc] error in bash-completion script file name

Attached to Project: Community Packages
Opened by Haruue Icymoon (haruue) - Thursday, 26 April 2018, 10:31 GMT
Last edited by Sergej Pupykin (sergej) - Tuesday, 09 July 2019, 18:06 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Sergej Pupykin (sergej)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

Package lxc uses the bash-completion script file `/usr/share/bash-completion/completions/lxc`, but it has no command named `lxc`.

On one hand, the bash-completion won't work for it until we source the bash-completion file manually.

On the other hand, `lxc` is a command of lxd, which is dependence on lxc. As a result, this problem also prevents packagers of lxd creating a out of box bash-completion script file. It should be `/usr/share/bash-completion/completions/lxc`, but conflicts with community/lxc.


Suggestion:
* the bash-completion script file in package lxc should be renamed.


Additional info:
* package version: 1:3.0.0-1


Steps to reproduce:
* Install lxc
* In the bash, input 'lxc-create -t ' and press TAB.
This task depends upon

Closed by  Sergej Pupykin (sergej)
Tuesday, 09 July 2019, 18:06 GMT
Reason for closing:  Upstream
Comment by Eli Schwartz (eschwartz) - Thursday, 26 April 2018, 12:04 GMT
  • Field changed: Status (Unconfirmed → Assigned)
  • Field changed: Category (Packages → Upstream Bugs)
  • Task assigned to Sergej Pupykin (sergej)
This is an upstream bug, since their build system installs the completion file. The problem is they default to using /etc/bash_completion.d, but try to detect bash-completion through pkg-config and use the lazy-loaded completionsdir instead of the compatdir... which is completely broken because the completionsdir requires they install the completion to files that correspond to the commands the package provides. Traditionally completion definitions with a common base symlink those files together.

The compatdir is loaded on every shell init, is slow, and doesn't care what the filename is as a result. :p

Tell them to fix their broken behavior. In the meantime we could fix this... by completely disabling their completion installation and doing it ourselves, properly. :(

Loading...