mirror of
https://github.com/certbot/certbot.git
synced 2026-01-21 19:01:07 +03:00
- But do we need the augeas-lenses package? - Install augeas from backports even if the backports were already available (this is the third time fixing that bug!)
95 lines
2.7 KiB
Bash
Executable File
95 lines
2.7 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Current version tested with:
|
|
#
|
|
# - Ubuntu
|
|
# - 14.04 (x64)
|
|
# - 15.04 (x64)
|
|
# - Debian
|
|
# - 7.9 "wheezy" (x64)
|
|
# - sid (2015-10-21) (x64)
|
|
|
|
# Past versions tested with:
|
|
#
|
|
# - Debian 8.0 "jessie" (x64)
|
|
# - Raspbian 7.8 (armhf)
|
|
|
|
# Believed not to work:
|
|
#
|
|
# - Debian 6.0.10 "squeeze" (x64)
|
|
|
|
apt-get update
|
|
|
|
# virtualenv binary can be found in different packages depending on
|
|
# distro version (#346)
|
|
|
|
virtualenv=
|
|
if apt-cache show virtualenv > /dev/null 2>&1; then
|
|
virtualenv="virtualenv"
|
|
fi
|
|
|
|
if apt-cache show python-virtualenv > /dev/null 2>&1; then
|
|
virtualenv="$virtualenv python-virtualenv"
|
|
fi
|
|
|
|
augeas_pkg="libaugeas0 augeas-lenses"
|
|
AUGVERSION=`apt-cache show --no-all-versions libaugeas0 | grep ^Version: | cut -d" " -f2`
|
|
|
|
AddBackportRepo() {
|
|
# ARGS:
|
|
BACKPORT_NAME="$1"
|
|
BACKPORT_SOURCELINE="$2"
|
|
if ! grep -v -e ' *#' /etc/apt/sources.list | grep -q "$BACKPORT_NAME" ; then
|
|
# This can theoretically error if sources.list.d is empty, but in that case we don't care.
|
|
if ! grep -v -e ' *#' /etc/apt/sources.list.d/* 2>/dev/null | grep -q "$BACKPORT_NAME"; then
|
|
/bin/echo -n "Installing augeas from $BACKPORT_NAME in 3 seconds..."
|
|
sleep 1s
|
|
/bin/echo -ne "\e[0K\rInstalling augeas from $BACKPORT_NAME in 2 seconds..."
|
|
sleep 1s
|
|
/bin/echo -e "\e[0K\rInstalling augeas from $BACKPORT_NAME in 1 second ..."
|
|
sleep 1s
|
|
if echo $BACKPORT_NAME | grep -q wheezy ; then
|
|
/bin/echo '(Backports are only installed if explicitly requested via "apt-get install -t wheezy-backports")'
|
|
fi
|
|
|
|
echo $BACKPORT_SOURCELINE >> /etc/apt/sources.list.d/"$BACKPORT_NAME".list
|
|
apt-get update
|
|
apt-get install -y --no-install-recommends -t "$BACKPORT_NAME" $augeas_pkg
|
|
augeas_pkg=
|
|
fi
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
if dpkg --compare-versions 1.0 gt "$AUGVERSION" ; then
|
|
if lsb_release -a | grep -q wheezy ; then
|
|
AddBackportRepo wheezy-backports "deb http://http.debian.net/debian wheezy-backports main"
|
|
elif lsb_release -a | grep -q precise ; then
|
|
# XXX add ARM case
|
|
AddBackportRepo precise-backports "deb http://archive.ubuntu.com/ubuntu precise-backports main restricted universe multiverse"
|
|
else
|
|
echo "No libaugeas0 version is available that's new enough to run the"
|
|
echo "Let's Encrypt apache plugin..."
|
|
fi
|
|
# XXX add a case for ubuntu PPAs
|
|
fi
|
|
|
|
apt-get install -y --no-install-recommends \
|
|
python \
|
|
python-dev \
|
|
$virtualenv \
|
|
gcc \
|
|
dialog \
|
|
$augeas_pkg \
|
|
libssl-dev \
|
|
libffi-dev \
|
|
ca-certificates \
|
|
|
|
|
|
|
|
if ! command -v virtualenv > /dev/null ; then
|
|
echo Failed to install a working \"virtualenv\" command, exiting
|
|
exit 1
|
|
fi
|