#!/bin/sh # lh_chroot_apt(1) - manage /etc/apt/apt.conf # Copyright (C) 2006-2007 Daniel Baumann # # live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. # This is free software, and you are welcome to redistribute it # under certain conditions; see COPYING for details. set -e # Source common functions for FUNCTION in /usr/share/live-helper/functions/*.sh do . ${FUNCTION} done # Set static variables DESCRIPTION="manage /etc/apt/apt.conf" HELP="" USAGE="${PROGRAM} {install|remove} [--force]" Arguments "${@}" # Reading configuration files Read_conffile config/common Read_conffile config/chroot Set_defaults # Requiring stage file Require_stagefile .stage/bootstrap # Checking lock file Check_lockfile .lock # Creating lock file Create_lockfile .lock case "${1}" in install) # Checking stage file Check_stagefile .stage/chroot_apt if [ -f chroot/etc/apt/apt.conf ] then # Remove old /etc/apt/apt.conf rm -f chroot/etc/apt/apt.conf fi if [ "${LH_APT}" = "aptitude" ] && [ ! -d chroot/etc/apt/apt.conf.d ] then mkdir -p chroot/etc/apt/apt.conf.d fi # Configuring apt ftp proxy if [ -n "${LH_APT_FTPPROXY}" ] then case "${LH_APT}" in apt|apt-get) echo "Acquire::ftp::Proxy \"${LH_APT_FTPPROXY}\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Acquire::ftp::Proxy \"${LH_APT_FTPPROXY}\";" > chroot/etc/apt/apt.conf.d/ftp-proxy ;; esac fi # Configuring apt http proxy if [ -n "${LH_APT_HTTPPROXY}" ] then case "${LH_APT}" in apt|apt-get) echo "Acquire::http::Proxy \"${LH_APT_HTTPPROXY}\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Acquire::http::Proxy \"${LH_APT_HTTPPROXY}\";" > chroot/etc/apt/apt.conf.d/http-proxy ;; esac fi # Configuring apt pdiffs if [ "${LH_APT_PDIFFS}" = "enabled" ] then case "${LH_APT}" in apt|apt-get) echo "Acquire::PDiffs \"true\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Acquire::PDiffs \"true\";" > chroot/etc/apt/apt.conf.d/pdiffs ;; esac else case "${LH_APT}" in apt|apt-get) echo "Acquire::PDiffs \"false\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Acquire::PDiffs \"false\";" > chroot/etc/apt/apt.conf.d/pdiffs ;; esac fi # Configuring apt recommends if [ "${LH_APT_RECOMMENDS}" = "enabled" ] then case "${LH_APT}" in apt|apt-get) echo "Aptitude::Recommends-Important \"true\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Aptitude::Recommends-Important \"true\";" > chroot/etc/apt/apt.conf.d/recommends ;; esac else case "${LH_APT}" in apt|apt-get) echo "Aptitude::Recommends-Important \"false\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "Aptitude::Recommends-Important \"false\";" > chroot/etc/apt/apt.conf.d/recommends ;; esac fi # Configuring apt secure if [ "${LH_APT_SECURE}" = "enabled" ] then case "${LH_APT}" in apt|apt-get) echo "APT::Get::AllowUnauthenticated \"0\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "APT::Get::AllowUnauthenticated \"0\";" > chroot/etc/apt/apt.conf.d/secure ;; esac else case "${LH_APT}" in apt|apt-get) echo "APT::Get::AllowUnauthenticated \"1\";" >> chroot/etc/apt/apt.conf ;; aptitude) echo "APT::Get::AllowUnauthenticated \"1\";" > chroot/etc/apt/apt.conf.d/secure ;; esac fi # Creating stage file Create_stagefile .stage/chroot_apt ;; remove) # Deconfiguring apt settings rm -f chroot/etc/apt/apt.conf # Deconfiguring aptitude ftp proxy rm -f chroot/etc/apt/apt.conf.d/ftp-proxy # Deconfiguring aptitude http proxy rm -f chroot/etc/apt/apt.conf.d/http-proxy # Deconfiguring aptitude pdiffs rm -f chroot/etc/apt/apt.conf.d/pdiffs # Deconfiguring aptitude recommends rm -f chroot/etc/apt/apt.conf.d/recommends # Deconfiguring aptitude secure rm -f chroot/etc/apt/apt.conf.d/secure # Removing stage file rm -f .stage/chroot_apt ;; *) Usage ;; esac