File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1- PROG = doas
2- MAN = doas.1 doas.conf.5
1+ PROG = doas
2+ MAN = doas.1 doas.conf.5
3+ COMPLETION =doas.completion
34
4- SRCS = parse.y doas.c env.c
5+ SRCS = parse.y doas.c env.c
56
67include config.mk
78
@@ -19,17 +20,20 @@ install: ${PROG} ${MAN}
1920 mkdir -p -m 0755 ${DESTDIR}${BINDIR}
2021 mkdir -p -m 0755 ${DESTDIR}${MANDIR} /man1
2122 mkdir -p -m 0755 ${DESTDIR}${MANDIR} /man5
23+ mkdir -p -m 0755 ${DESTDIR} /share/bash-completion/completions
2224 cp -f ${PROG} ${DESTDIR}${BINDIR}
2325 chown ${BINOWN} :${BINGRP} ${DESTDIR}${BINDIR} /${PROG}
2426 chmod ${BINMODE} ${DESTDIR}${BINDIR} /${PROG}
2527 cp -f doas.1 ${DESTDIR}${MANDIR} /man1
2628 cp -f doas.conf.5 ${DESTDIR}${MANDIR} /man5
29+ cp -f doas.completion ${DESTDIR} /share/bash-completion/completions/doas
2730
2831uninstall :
2932 rm -f ${DESTDIR}${BINDIR} /${PROG}
3033 rm -f ${DESTDIR}${PAMDIR} /doas
3134 rm -f ${DESTDIR}${MANDIR} /man1/doas.1
3235 rm -f ${DESTDIR}${MANDIR} /man5/doas.conf.5
36+ rm -f ${DESTDIR} /share/bash-completion/completions/doas
3337
3438clean :
3539 rm -f ${PROG} ${OBJS} ${OBJS: .o=.d} parse.c
Original file line number Diff line number Diff line change 1+ # bash completion for doas(1) -*- shell-script -*-
2+
3+ _doas () {
4+ local cur prev words cword split
5+ _init_completion -s || return
6+
7+ for (( i = 1 ; i <= cword; i++ )) ; do
8+ if [[ ${words[i]} != -* ]]; then
9+ local PATH=$PATH :/sbin:/usr/sbin:/usr/local/sbin
10+ local root_command=${words[i]}
11+ _command_offset $i
12+ return
13+ fi
14+
15+ [[ ${words[i]} == -u ]] || [[ ${words[i]} == -C ]] && (( i++ ))
16+ done
17+ } && complete -F _doas doas
18+
19+ # ex: filetype=sh
You can’t perform that action at this time.
0 commit comments