gst-launch tab-completion!

David Röthlisberger david at
Fri Dec 21 01:44:36 PST 2012

On 21 Dec 2012, at 09:30, Stirling Westrup wrote:
> On Thu, Dec 20, 2012 at 6:54 PM, David Röthlisberger <david at> wrote:
>> On 20 Dec 2012, at 20:09, Stirling Westrup wrote:
>>> This is great, but I should point out that under Debian, I have 3
>>> versions of gst-launch and gst-inspect, because I have both v 0.10 and
>>> v1.0 installed.
>>> gst-launch and gst-inspect are symlinked to gst-launch-0.1 and
>>> gst-inspect-0.1, and I also have gst-launch-1.0 and gst-inspect-1.0.
>>> This is necessary if one is trying to make a backward compatible
>>> gstreamer app.  It would be nice if your completions could handle
>>> this.
>> In what way does the completion script not handle your setup?
> You have two scripts with the same name, one for v1.0, one for v0.1.
> Installing both means renaming them, and I assumed that would break
> things. As well, its not clear if these completion scripts will work
> when I invoke gst-inspect-1.0 rather than just gst-inspect, although I
> admit I haven't had a chance to check it out yet.

The script on the 0.10 branch registers to complete for "gst-launch" and
"gst-launch-0.10". The script on the 1.0 branch registers to complete
for "gst-launch-1.0". Otherwise, the scripts are identical. So it should
be safe for you to install both copies of the script to
/etc/bash_completion.d if you rename one of them.

Normally I would have thought that it is the responsibility of
downstream packagers to rename files if they want to allow different
versions of the package to be co-installed. However with gstreamer I see
that it is the upstream project that takes care of this -- for example
gstreamer/tools/ explicitly builds
gst-inspect- at GST_API_VERSION@.

I'll leave the question to the GStreamer maintainers as to how they
would like to see this handled for the bash-completion script.

More information about the gstreamer-devel mailing list