summaryrefslogtreecommitdiffstats
path: root/satellit_installer/includes/10-install_packages.inc
diff options
context:
space:
mode:
authorChristian Rößler2014-07-07 16:48:47 +0200
committerChristian Rößler2014-07-07 16:48:47 +0200
commitde40c6ba6e803932a87dd168bc46b02ff4cfb40b (patch)
tree9a6b5db0eccd8047a31501d31581b27ad0c50c4c /satellit_installer/includes/10-install_packages.inc
parent[SSPS] satellit_installer, 90-set_directory_permissions.inc: Some more (diff)
downloadsetup-scripts-de40c6ba6e803932a87dd168bc46b02ff4cfb40b.tar.gz
setup-scripts-de40c6ba6e803932a87dd168bc46b02ff4cfb40b.tar.xz
setup-scripts-de40c6ba6e803932a87dd168bc46b02ff4cfb40b.zip
[SSPS] Rudimentary package install retrying, bugfix
Diffstat (limited to 'satellit_installer/includes/10-install_packages.inc')
-rwxr-xr-xsatellit_installer/includes/10-install_packages.inc41
1 files changed, 32 insertions, 9 deletions
diff --git a/satellit_installer/includes/10-install_packages.inc b/satellit_installer/includes/10-install_packages.inc
index 2201b64..5ec8e71 100755
--- a/satellit_installer/includes/10-install_packages.inc
+++ b/satellit_installer/includes/10-install_packages.inc
@@ -1,5 +1,36 @@
#!/bin/bash
+install_package() {
+ # These stacked ifs are just a stopgap until proper trapping.
+ echo -n "# Installing package $PACKAGE... "
+ apt-get -qq -y install ${PACKAGE} 2>/dev/null 1>&2
+ ERR=$?
+ if [ "$ERR" -ne 0 ]; then
+ echo
+ echo "# Could not install package $PACKAGE - Error number $ERR!"
+ echo -n "# Trying an apt-get update..."
+ apt-get update 2>/dev/null 1>&2
+ ERR=$?
+ if [ "$ERR" -ne 0 ]; then
+ echo
+ echo "# apt-get update has thrown error number $ERR. You need to take care"
+ echo "# of this by hand. Commencing installation."
+ else
+ echo " ok."
+ echo -n "# Retrying installing package $PACKAGE... "
+ apt-get -qq -y install ${PACKAGE} 2>/dev/null 1>&2
+ ERR=$?
+ if [ "$ERR" -ne 0 ]; then
+ echo "Could not install $PACKAGE. Giving up."
+ else
+ echo "ok."
+ fi
+ fi
+ else
+ echo "ok."
+ fi
+}
+
install_packages() {
local NEEDED_PACKAGES="$1"
@@ -7,15 +38,7 @@ install_packages() {
echo "# Installing packages. This may take a while."
echo "#"
for PACKAGE in $NEEDED_PACKAGES; do
- echo -n "# Installing package $PACKAGE... "
- apt-get -qq -y install ${PACKAGE} 2>/dev/null 1>&2
- ERR=$?
- if [ "$ERR" -ne 0 ]; then
- echo "# Could not install package $PACKAGE!"
- # Weitere Fehlerbehandlung folgt
- else
- echo "ok."
- fi
+ install_package
done
}