aboutsummaryrefslogtreecommitdiffstats
path: root/src/bash_completion
diff options
context:
space:
mode:
Diffstat (limited to 'src/bash_completion')
-rw-r--r--src/bash_completion/Makefile.in14
-rw-r--r--src/bash_completion/firejail.bash_completion.in (renamed from src/bash_completion/firejail.bash_completion)13
2 files changed, 26 insertions, 1 deletions
diff --git a/src/bash_completion/Makefile.in b/src/bash_completion/Makefile.in
new file mode 100644
index 000000000..d8a393aa4
--- /dev/null
+++ b/src/bash_completion/Makefile.in
@@ -0,0 +1,14 @@
1all: firejail.bash_completion
2
3include ../common.mk
4
5firejail.bash_completion: firejail.bash_completion.in
6 gawk -f ../man/preproc.awk -- $(MANFLAGS) < $< > $@.tmp
7 sed "s|_SYSCONFDIR_|$(sysconfdir)|" < $@.tmp > $@
8 rm $@.tmp
9
10clean:
11 rm -fr firejail.bash_completion
12
13distclean: clean
14 rm -fr Makefile
diff --git a/src/bash_completion/firejail.bash_completion b/src/bash_completion/firejail.bash_completion.in
index 0a1b34d7d..00f04c310 100644
--- a/src/bash_completion/firejail.bash_completion
+++ b/src/bash_completion/firejail.bash_completion.in
@@ -9,6 +9,17 @@ __interfaces(){
9 cut -f 1 -d ':' /proc/net/dev | tail -n +3 | grep -v lo | xargs 9 cut -f 1 -d ':' /proc/net/dev | tail -n +3 | grep -v lo | xargs
10} 10}
11 11
12_profiles() {
13 if [[ -d "$1" ]] ; then
14 ls -1 $1/*.profile 2>/dev/null | sed -E 's;^.*\/;;g'
15 fi
16}
17_all_profiles() {
18 local sys_profiles=$(_profiles _SYSCONFDIR_/firejail)
19 local user_profiles=$(_profiles $HOME/.config/firejail)
20 COMPREPLY=($(compgen -W "${sys_profiles} ${user_profiles}" -- "$cur"))
21}
22
12 23
13_firejail() 24_firejail()
14{ 25{
@@ -20,7 +31,7 @@ _firejail()
20 return 0 31 return 0
21 ;; 32 ;;
22 --profile) 33 --profile)
23 _filedir 34 _all_profiles
24 return 0 35 return 0
25 ;; 36 ;;
26 --hosts-file) 37 --hosts-file)