release: restore ZUPT and harden source-only 5.2.2

This commit is contained in:
Cristian Cezar Moisés 2026-08-31 14:14:36 -03:00
commit ff99770bd0
205 changed files with 19627 additions and 13215 deletions

112
completions/zupt.bash Normal file
View file

@ -0,0 +1,112 @@
# bash completion for ZUPT
# SPDX-License-Identifier: AGPL-3.0-or-later
_zupt()
{
local cur prev command disk_command
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}
prev=${COMP_WORDS[COMP_CWORD-1]}
command=${COMP_WORDS[1]-}
disk_command=${COMP_WORDS[2]-}
case $prev in
-l|--level)
COMPREPLY=( $(compgen -W '1 2 3 4 5 6 7 8 9' -- "$cur") )
return
;;
-b|--block|-t|--threads|--pass-fd|-p|--password|-c|--comment)
return
;;
--kdf)
COMPREPLY=( $(compgen -W 'pbkdf2 argon2id' -- "$cur") )
return
;;
-o|--output|-k|--key|--pass-file|--comment-file|--pq|--pq-only|--pq-sdk|--pq-box)
COMPREPLY=( $(compgen -f -- "$cur") )
return
;;
esac
if (( COMP_CWORD == 1 )); then
COMPREPLY=( $(compgen -W \
'compress c extract x list l test t info i bench b disk keygen version help --version -V --help -h' \
-- "$cur") )
return
fi
local password_options='-p --password --password-prompt --pass-file --pass-fd'
local pq_options='--pq --pq-only --pq-sdk --pq-box'
local legacy_read_option='--allow-legacy-no-ait'
local common_read_options="-v --verbose $password_options $pq_options $legacy_read_option"
case $command in
compress|c)
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W \
"-l --level -b --block -s --store -f --fast --vv --vaptvupt --lzhp
$password_options --kdf -c --comment --comment-file $pq_options
-D --dedup -S --solid -y --force -v --verbose -t --threads" \
-- "$cur") )
else
COMPREPLY=( $(compgen -f -- "$cur") )
fi
;;
extract|x)
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W \
"-o --output $common_read_options -t --threads" -- "$cur") )
else
COMPREPLY=( $(compgen -f -X '!*.zupt' -- "$cur") )
fi
;;
list|l|test|t)
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W "$common_read_options" -- "$cur") )
else
COMPREPLY=( $(compgen -f -X '!*.zupt' -- "$cur") )
fi
;;
info|i)
COMPREPLY=( $(compgen -f -X '!*.zupt' -- "$cur") )
;;
bench|b)
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W '--compare' -- "$cur") )
else
COMPREPLY=( $(compgen -f -- "$cur") )
fi
;;
disk)
if (( COMP_CWORD == 2 )); then
COMPREPLY=( $(compgen -W 'backup restore' -- "$cur") )
elif [[ $cur == -* ]]; then
local disk_options
disk_options="-l --level -b --block -s --store --vv --vaptvupt --lzhp
$password_options --kdf -c --comment --comment-file
--pq --pq-only -D --dedup -v --verbose -t --threads"
if [[ $disk_command == restore ]]; then
disk_options+=" $legacy_read_option"
fi
COMPREPLY=( $(compgen -W \
"$disk_options" \
-- "$cur") )
elif [[ $disk_command == restore ]]; then
COMPREPLY=( $(compgen -f -X '!*.zupt' -- "$cur") )
else
COMPREPLY=( $(compgen -f -- "$cur") )
fi
;;
keygen)
if [[ $cur == -* ]]; then
COMPREPLY=( $(compgen -W \
'-o --output --pub -k --key --pq-only --pqonly --sdk --pq-sdk --box --pq-box' \
-- "$cur") )
else
COMPREPLY=( $(compgen -f -- "$cur") )
fi
;;
esac
}
complete -F _zupt zupt