49 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/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
 |