X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=faiserver-setup;h=fd2ab0073cec3db458076edc57278c75b0c3aab5;hb=875cea0c266c7802b336f5a8b61b63e109e670fb;hp=a48a00c43def737cfe45334657991c0f00ad670b;hpb=708c79e5611549280b988c607e1a1a19fc63e991;p=automated-distro-installer diff --git a/faiserver-setup b/faiserver-setup index a48a00c..fd2ab00 100755 --- a/faiserver-setup +++ b/faiserver-setup @@ -15,36 +15,49 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# Usage: faiserver-setup -# -# Initial setup of a fai server on debian. works on localhost. -# Set's the current ip as the tftp server. I vaguely remember -# that using a hostname does not work. -# Separate from running this, faiserver needs to be setup in dns -# to point to whatever host this is run on. - set -eE -o pipefail trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR [[ $EUID == 0 ]] || exec sudo "${BASH_SOURCE}" "$@" +usage() { + cat </etc/apt/sources.list.d/fai.list <<'EOF' +if grep -xFq 'VERSION="9 (stretch)"' /etc/os-release; then + # if we use stretch, no need for fai-project repo. + # this will need to be updated when there is a codename + # for stretch+1 + rm -f /etc/apt/sources.list.d/fai.list +else + wget -O - http://fai-project.org/download/074BCDE4.asc | apt-key add - + cat >/etc/apt/sources.list.d/fai.list <<'EOF' deb http://fai-project.org/download jessie koeln EOF -else - # if we use stretch, no need for fai-project repo. - rm -f /etc/apt/sources.list.d/fai.list fi # for ubuntu: @@ -54,19 +67,11 @@ fi apt-get update -# all the dependencies except the dhcp server -deps="$(apt-cache show fai-quickstart | grep ^Depends: |head -n 1|\ - sed -r 's/^Depends:|,|\|[^,]+|isc-dhcp-server//g')" -to_install=(tar) -for pkg in $deps; do - dpkg -s $pkg &>/dev/null && continue ||: - to_install+=($pkg) - # just so we have a record. - echo `date` $pkg >>/var/log/fai-manually-installed-packages.log -done -if [[ $to_install ]]; then - apt-get -y install ${to_install[@]} -fi + +# Relevant packages from fai-quickstart depends and fai-server recommends. +# I especially do not wait isc-dhcp-server or an inetd +apt-get install -y fai-doc nfs-kernel-server tftpd-hpa tar reprepro squashfs-tools binutils +apt-get install --no-install-recommends -y fai-server r=http://http.us.debian.org/debian # like default, but scrap httpredir, and nonfree.