Skip to content

Commit

Permalink
Merge pull request #69 from sean797/completion
Browse files Browse the repository at this point in the history
Adds bash completion support
  • Loading branch information
sean797 committed Nov 28, 2016
2 parents 5affd6a + 5ff6b44 commit ba43e88
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 1 deletion.
1 change: 1 addition & 0 deletions scripts/tracer.bash_completion
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
eval "$(register-python-argcomplete tracer)"
5 changes: 4 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@
with open("requirements.txt") as f:
install_requires = f.read().splitlines()

data_files = []
if hasattr(os, 'geteuid') and os.geteuid() == 0:
data_files = [('/etc/bash_completion.d', ['scripts/tracer.bash_completion']),]

setup(
name='tracer',
Expand All @@ -23,6 +26,7 @@
description='Finds outdated running applications in your system',
long_description=open('README.md').read(),
install_requires=install_requires,
data_files=data_files,

packages=[
'tracer',
Expand All @@ -40,5 +44,4 @@
'applications.xml',
'rules.xml',
]},

)
20 changes: 20 additions & 0 deletions tracer.spec
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@
%bcond_without python3
%endif

%if 0%{?fedora} && 0%{?fedora} >= 23
%bcond_with suggest
%else
%bcond_without suggest
%endif

Name: tracer
Version: 0.6.12
Release: 1%{?dist}
Expand Down Expand Up @@ -54,6 +60,11 @@ Requires: python-beautifulsoup4
Requires: python-psutil
Requires: python-lxml
Requires: %{name}-common = %{version}-%{release}
%if ! %{with suggest}
Suggests: python2-argcomplete
%else
Requires: python2-argcomplete
%endif
%{?python_provide:%python_provide python2-%{name}}

%description -n python2-%{name} %{_description}
Expand All @@ -74,6 +85,11 @@ Requires: python3-beautifulsoup4
Requires: python3-psutil
Requires: python3-lxml
Requires: %{name}-common = %{version}-%{release}
%if %{with suggest}
Suggests: python3-argcomplete
%else
Requires: python3-argcomplete
%endif
%{?python_provide:%python_provide python3-%{name}}
Provides: %{name} = %{version}-%{release}
Obsoletes: %{name} <= 0.6.11
Expand Down Expand Up @@ -116,13 +132,17 @@ cp -ar %{name}/* tests %{buildroot}%{python3_sitelib}/%{name}/
install -Dpm0755 bin/%{name}.py %{buildroot}%{_bindir}/%{name}
install -Dpm0644 doc/build/man/%{name}.8 %{buildroot}%{_mandir}/man8/%{name}.8

mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d
install -pm 644 scripts/tracer.bash_completion %{buildroot}%{_sysconfdir}/bash_completion.d/tracer

make DESTDIR=%{buildroot}%{_datadir} mo
%find_lang %{name}

%files common -f %{name}.lang
%license LICENSE
%doc README.md
%{_datadir}/%{name}/
%{_sysconfdir}/bash_completion.d/tracer

%files -n python2-%{name}
%{python2_sitelib}/%{name}/
Expand Down
9 changes: 9 additions & 0 deletions tracer/resources/args_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@

import argparse

try:
import argcomplete
except ImportError:
pass

parser = argparse.ArgumentParser(
prog = 'tracer',
description='Tracer finds outdated running applications in your system',
Expand Down Expand Up @@ -139,3 +144,7 @@
help="print even section with erased packages (DNF only)",
default=False
)
try:
argcomplete.autocomplete(parser)
except NameError:
pass

0 comments on commit ba43e88

Please sign in to comment.