ct-ng.comp
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Dec 30 15:36:22 2009 +0100 (2009-12-30)
changeset 1669 61edd9d19e3c
parent 1025 fc64f85e41cc
child 1683 09ae4c09ba83
permissions -rw-r--r--
scripts/functions: add aria2, a powerfull downloader

aria2 is a powerfull downloader that is capable of chunking and
parallel retrieval.

Due to li;itations in crosstool-NG retrieval facilities, it's not possible
to take fully advantage of aria2. It might happen that, in the future,
those limitations get lifted away, so we can take use features such as
parallel downloading from more than one server at the same time. For now,
it should still speed up downloads thanks to parallel downloading of chunks.
yann@835
     1
# To be sourced
yann@835
     2
yann@835
     3
_ct-ng () {
yann@835
     4
    local cur prev samples show_samples actions steps start_steps stop_steps ct_ng_opts vars
yann@835
     5
    COMPREPLY=()
yann@835
     6
    cur=$(_get_cword)
yann@835
     7
    prev=${COMP_WORDS[COMP_CWORD-1]}
yann@835
     8
yann@918
     9
    samples=$(${COMP_WORDS[0]} list-samples 2>/dev/null)
yann@835
    10
    show_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1show-/g;')
yann@1025
    11
    build_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1build-/g;')
yann@835
    12
yann@918
    13
    steps=$(${COMP_WORDS[0]} list-steps 2>/dev/null |awk '$1 == "-" { print $2; }')
yann@934
    14
    start_steps=$(echo "${steps}" |sed -r -e 's/($| )/\1+/;')
yann@835
    15
    stop_steps=$(echo "${steps}" |sed -r -e 's/(^| )/+\1/;')
yann@835
    16
yann@1000
    17
    actions='help menuconfig oldconfig saveconfig
yann@1025
    18
             build build. build-all build-all.
yann@1336
    19
             list-samples list-steps show-tuple
yann@1025
    20
             clean distclean wiki-samples updatetools
yann@932
    21
             tarball version'
yann@835
    22
yann@835
    23
    vars="RESTART= STOP="
yann@835
    24
yann@1025
    25
    ct_ng_opts="${samples} ${show_samples} ${build_samples}
yann@835
    26
                ${steps} ${start_steps} ${stop_steps}
yann@835
    27
                ${actions} ${vars}"
yann@835
    28
yann@835
    29
    COMPREPLY=($(compgen -W "${ct_ng_opts}" -- "${cur}"))
yann@835
    30
    return 0
yann@835
    31
}
yann@835
    32
complete -F _ct-ng ct-ng