subdir('config')
+subdir('shell-completion')
install_data(
sources: etc_files,
--- /dev/null
+#/usr/bin/env bash
+
+# completion function for the kresctl
+_kresctl_completion() {
+ local cur prev opts
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+
+ # get options
+ opts=$(kresctl completion --bash "${COMP_WORDS}")
+
+ if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
+ COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ return 0
+ fi
+
+ return 0
+}
+
+# use the bash default completion for other arguments
+complete -o filenames -o nospace -o bashdefault -F _kresctl_completion kresctl
\ No newline at end of file
--- /dev/null
+function __fish_git
+ set -l args (commandline -pco)
+ eval command kresctl $args
+end
+
+complete -c kresctl -a '(_kresctl_completion)' -f
\ No newline at end of file
--- /dev/null
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+# Install kresctl completion for bash
+install_data(
+ sources: 'kresctl.bash',
+ rename: 'kresctl',
+ install_dir: completions_dir / 'bash-completion' / 'completions',
+)
+
+# Install kresctl completion for fish
+install_data(
+ sources: 'kresctl.fish',
+ install_dir: completions_dir / 'fish' / 'vendor_completions.d',
+)
systemd_unit_dir = prefix / 'lib' / 'systemd' / 'system'
systemd_tmpfiles_dir = prefix / 'lib' / 'tmpfiles.d'
systemd_sysusers_dir = prefix / 'lib' / 'sysusers.d'
+completions_dir = prefix / 'usr' / 'share'
mod_inc_dir = include_directories('.', 'contrib/')
## Trust anchors