fix build on eoan

master
Marc Wäckerlin 5 years ago
parent dee28317ca
commit cb86e5e31b
  1. 21
      build-in-docker.sh
  2. 17
      template.sh

@ -278,25 +278,18 @@ fi
case "$mode" in
(deb|apt|win)
OPTIONS='-o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confnew -y --force-yes --no-install-suggests --no-install-recommends'
PREVENT='libpam-systemd policykit.* colord dconf-service'
docker exec ${DOCKER_ID} apt-get update ${OPTIONS}
docker exec ${DOCKER_ID} apt-mark hold ${PREVENT}
#docker exec ${DOCKER_ID} apt-get upgrade ${OPTIONS}
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- python-software-properties software-properties-common apt-transport-https dpkg-dev lsb-release wget || \
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- software-properties-common apt-transport-https dpkg-dev lsb-release wget || \
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- python-software-properties apt-transport-https dpkg-dev lsb-release wget;
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} python-software-properties software-properties-common apt-transport-https dpkg-dev lsb-release wget || \
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} software-properties-common apt-transport-https dpkg-dev lsb-release wget || \
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} python-software-properties apt-transport-https dpkg-dev lsb-release wget;
if [[ "${img}" =~ "ubuntu" ]]; then
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- locales
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} locales
docker exec ${DOCKER_ID} locale-gen ${LANG}
docker exec ${DOCKER_ID} update-locale LANG=${LANG}
fi
for f in ${PREVENT}; do
docker exec ${DOCKER_ID} bash -c "echo 'Package: ${f}' >> /etc/apt/preferences"
docker exec ${DOCKER_ID} bash -c "echo 'Pin-Priority: -100' >> /etc/apt/preferences"
docker exec ${DOCKER_ID} bash -c "echo >> /etc/apt/preferences"
done
if test -n "${keys[*]}"; then # fix dependency bug in cosmic and stretch
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} ${PREVENT// /- }- gnupg
docker exec ${DOCKER_ID} apt-get install ${OPTIONS} gnupg
for key in "${keys[@]}"; do
wget -O- "$key" \
| docker exec -i ${DOCKER_ID} apt-key add -
@ -308,7 +301,7 @@ case "$mode" in
docker exec ${DOCKER_ID} apt-get update ${OPTIONS}
for package in "${packages[@]}"; do
ifthenelse "${package}" "apt-get install ${OPTIONS} ${PREVENT// /- }- ARG"
ifthenelse "${package}" "apt-get install ${OPTIONS} ARG"
done
for command in "${commands[@]}"; do
ifthenelse "${command}" "ARG"
@ -369,7 +362,7 @@ docker exec -u $(id -u):$(id -g) ${DOCKER_ID} ./bootstrap.sh -t "${targets}" ${h
# not supported in trusty and jessie
if test "$mode" = deb -a "${img//trusty/}" = "${img}" -a "${img//jessie/}" = "${img}"; then
if test "${targets//deb/}" != "${targets}" && ls *.deb > /dev/null 2> /dev/null; then
docker exec ${DOCKER_ID} bash -c "apt-get install ${OPTIONS} ${PREVENT// /- }- /workdir/*.deb"
docker exec ${DOCKER_ID} bash -c "apt-get install ${OPTIONS} /workdir/*.deb"
fi
fi
if test "$mode" = rpm -a "${targets//rpm/}" != "${targets}"; then

@ -1,5 +1,7 @@
#!/bin/bash -e
# documentation: run with option --help
##########################################################################################
#### template for bash scripts #### START BELOW ##########################################
##########################################################################################
@ -45,25 +47,25 @@ message() {
# write a success message
success() {
echo -n "${bold}${green}success" 1>&2
append_msg $* 1>&2
append_msg "$*" 1>&2
}
# write a notice
notice() {
echo -n "${bold}${yellow}notice" 1>&2
append_msg $* 1>&2
append_msg "$*" 1>&2
}
# write a warning message
warning() {
echo -en "${bold}${red}warning" 1>&2
append_msg $* 1>&2
append_msg "$*" 1>&2
}
# write error message
error() {
echo -en "${bold}${red}error" 1>&2
append_msg $* 1>&2
append_msg "$*" 1>&2
}
# run a command, print the result and abort in case of error
@ -91,9 +93,10 @@ run() {
exit 1
else
warning "ignored return code: $res"
return 0
fi
else
success
return 1
fi
}
@ -119,7 +122,6 @@ function traperror() {
exit $e
fi
done
success
exit 0
}
@ -135,7 +137,7 @@ trap 'traperror "$? ${PIPESTATUS[@]}" $LINENO $BASH_LINENO "$BASH_COMMAND" "${FU
######################################################### commandline parameter evaluation
while test $# -gt 0; do
case "$1" in
(--help|-h) less <<EOF
(--help|-h) cat <<EOF
SYNOPSIS
$0 [OPTIONS]
@ -157,4 +159,3 @@ EOF
done
##################################################################################### Main

Loading…
Cancel
Save