mirror of
https://github.com/certbot/certbot.git
synced 2026-01-23 07:20:55 +03:00
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
|
|
fi
|
|
fi
|
|
apt-get install -y --no-install-recommends -t "$BACKPORT_NAME" $augeas_pkg
|
|
augeas_pkg=
|
|
|
|
}
|
|
|
|
|
|
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
|