diff options
Diffstat (limited to 'backport-bash-completion-add-systemctl-service-log-level-target.patch')
-rw-r--r-- | backport-bash-completion-add-systemctl-service-log-level-target.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/backport-bash-completion-add-systemctl-service-log-level-target.patch b/backport-bash-completion-add-systemctl-service-log-level-target.patch new file mode 100644 index 0000000..17cea61 --- /dev/null +++ b/backport-bash-completion-add-systemctl-service-log-level-target.patch @@ -0,0 +1,46 @@ +From 8bfc0e2d5ca09985900e8a2494b797f3086e9649 Mon Sep 17 00:00:00 2001 +From: Luca Boccassi <bluca@debian.org> +Date: Wed, 27 Dec 2023 16:59:03 +0100 +Subject: [PATCH] bash completion: add systemctl service-log-level/target + +(cherry picked from commit 79272d3098597686d9e796bd946ea272304fd720) +--- + shell-completion/bash/systemctl.in | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git a/shell-completion/bash/systemctl.in b/shell-completion/bash/systemctl.in +index 03c3b701504..ef8cd8f4be2 100644 +--- a/shell-completion/bash/systemctl.in ++++ b/shell-completion/bash/systemctl.in +@@ -236,6 +236,8 @@ _systemctl () { + [MACHINES]='list-machines' + [LOG_LEVEL]='log-level' + [LOG_TARGET]='log-target' ++ [SERVICE_LOG_LEVEL]='service-log-level' ++ [SERVICE_LOG_TARGET]='service-log-target' + [SERVICE_WATCHDOGS]='service-watchdogs' + ) + +@@ -365,6 +367,22 @@ _systemctl () { + comps='debug info notice warning err crit alert emerg' + elif __contains_word "$verb" ${VERBS[LOG_TARGET]}; then + comps='console journal kmsg journal-or-kmsg null' ++ elif __contains_word "$verb" ${VERBS[SERVICE_LOG_LEVEL]}; then ++ if __contains_word "$prev" ${VERBS[SERVICE_LOG_LEVEL]}; then ++ comps=$( __get_all_unit_files $mode "$cur" ) ++ elif __contains_word "$prev" debug info notice warning err crit alert emerg; then ++ return 0 ++ else ++ comps='debug info notice warning err crit alert emerg' ++ fi ++ elif __contains_word "$verb" ${VERBS[SERVICE_LOG_TARGET]}; then ++ if __contains_word "$prev" ${VERBS[SERVICE_LOG_TARGET]}; then ++ comps=$( __get_all_unit_files $mode "$cur" ) ++ elif __contains_word "$prev" console journal kmsg journal-or-kmsg null; then ++ return 0 ++ else ++ comps='console journal kmsg journal-or-kmsg null' ++ fi + elif __contains_word "$verb" ${VERBS[SERVICE_WATCHDOGS]}; then + comps='on off' + fi |