50 lines
1.8 KiB
Plaintext
50 lines
1.8 KiB
Plaintext
|
#!/bin/bash
|
|||
|
|
|||
|
while [[ $# -gt 0 ]]; do
|
|||
|
key="${1}"
|
|||
|
value="${2}"
|
|||
|
case "${key}" in
|
|||
|
-u|--user)
|
|||
|
if [[ ! "${value}" =~ ^[0-9]+$ ]]; then
|
|||
|
echo "Пользователь должен быть указан в числовом представлении"
|
|||
|
exit 1
|
|||
|
fi
|
|||
|
user="${value}"
|
|||
|
echo "На готовые файлы будут установлены права ${user}:${user} в output и cache"
|
|||
|
shift
|
|||
|
;;
|
|||
|
-t|--appimage-tool|-r|--appimage-runtime|-i|--input-path|-o|--output-path|-c|--cache-path|-l|--log-path)
|
|||
|
echo "Переданы недопустимые флаги"
|
|||
|
exit 1
|
|||
|
;;
|
|||
|
-h|--help)
|
|||
|
echo -e "\n" \
|
|||
|
"Использование: docker-container [ОПЦИИ]... [СПИСОК ПАКЕТОВ ДЛЯ СБОРКИ]\n" \
|
|||
|
"Основные опции:\n" \
|
|||
|
"\t-u\t--user\t\t\tУказать UID пользователя для установки прав на полученные файлы в output и cache\n" \
|
|||
|
"Дополнительно:\n" \
|
|||
|
"\t-h\t--help\t\t\tПоказать справку\n" \
|
|||
|
"\t-v\t--version\t\tВерсия скрипта appimage-builder\n"
|
|||
|
exit 0
|
|||
|
;;
|
|||
|
bash|ash|sh)
|
|||
|
${key}
|
|||
|
exit 0
|
|||
|
;;
|
|||
|
*)
|
|||
|
apps+=("${key}")
|
|||
|
;;
|
|||
|
esac
|
|||
|
shift
|
|||
|
done
|
|||
|
|
|||
|
[ -z "${apps}" ] && echo "Не указан ни один пакет для сборки AppImage" && exit 1
|
|||
|
|
|||
|
appimage-builder.sh -i /input -o /output -c /cache "${apps}"
|
|||
|
|
|||
|
if [ -v user ] && [ -n "${user}" ] ; then
|
|||
|
chown -R -v ${user}:${user} /output /cache
|
|||
|
else
|
|||
|
chown -R -v 1000:1000 /output /cache
|
|||
|
fi
|