summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bash_completion.d/initramfs-tools26
-rw-r--r--debian/control1
-rw-r--r--debian/initramfs-tools.install1
3 files changed, 28 insertions, 0 deletions
diff --git a/bash_completion.d/initramfs-tools b/bash_completion.d/initramfs-tools
new file mode 100644
index 0000000..a52074f
--- /dev/null
+++ b/bash_completion.d/initramfs-tools
@@ -0,0 +1,26 @@
+# update-initramfs(8) completion
+
+_update_initramfs()
+{
+ local cur prev valid_options
+
+ # TODO: this can be "_get_comp_words_by_ref cur prev" once
+ # bash-completion >= 1.2 is available, see #537139
+ cur=$(_get_cword)
+ prev=${COMP_WORDS[COMP_CWORD-1]}
+
+ # The only option that takes an argument is -k
+ if [[ "$prev" == '-k' ]]; then
+ # Complete with kernel versions
+ _kernel_versions
+ COMPREPLY=( $( compgen -W '${COMPREPLY[@]} all' -- "$cur" ) )
+ return;
+ fi
+
+ # Complete with available options (obtained from -h)
+ valid_options=$( update-initramfs -h 2>&1 | \
+ sed -e '/^ -/!d;s/^ \(-\w\+\).*/\1/' )
+ COMPREPLY=( $( compgen -W "$valid_options" -- $cur ) )
+}
+
+complete -F _update_initramfs update-initramfs
diff --git a/debian/control b/debian/control
index f98fdd7..30d873b 100644
--- a/debian/control
+++ b/debian/control
@@ -12,6 +12,7 @@ Package: initramfs-tools
Architecture: all
Recommends: busybox (>= 1:1.01-3) | busybox-initramfs
Depends: klibc-utils (>= 1.5.9-1), cpio, module-init-tools, udev (>= 0.086-1), findutils (>= 4.2.24), ${misc:Depends}
+Suggests: bash-completion
Provides: linux-initramfs-tool
Description: tools for generating an initramfs
This package contains tools to create and boot an initramfs for packaged 2.6
diff --git a/debian/initramfs-tools.install b/debian/initramfs-tools.install
index 71670ef..ebe6a14 100644
--- a/debian/initramfs-tools.install
+++ b/debian/initramfs-tools.install
@@ -11,3 +11,4 @@ update-initramfs usr/sbin
debian/script usr/share/bug/initramfs-tools
debian/lintian/initramfs-tools usr/share/lintian/overrides
kernel etc
+bash_completion.d etc