76 lines
1.6 KiB
Bash
76 lines
1.6 KiB
Bash
DEBIAN_CODENAME="$(
|
|
grep "VERSION_CODENAME" "/etc/os-release" |
|
|
cut --delimiter "=" --fields "2"
|
|
)"
|
|
|
|
apt_clean() {
|
|
apt-get \
|
|
clean
|
|
}
|
|
|
|
apt_conf_write() {
|
|
printf "\
|
|
Acquire::AllowInsecureRepositories False;
|
|
Acquire::AllowWeakRepositories False;
|
|
Acquire::AllowDowngradeToInsecureRepositories False;
|
|
Acquire::Check-Valid-Until True;
|
|
APT::Install-Recommends False;
|
|
APT::Install-Suggests False;
|
|
APT::Get::Show-Versions True;
|
|
Dir::Etc::SourceParts \"\";
|
|
Dpkg::Progress True;
|
|
" >"/etc/apt/apt.conf.d/apt.conf"
|
|
}
|
|
|
|
apt_install_backports() {
|
|
apt_install_target "${DEBIAN_CODENAME}-backports" "${@}"
|
|
}
|
|
|
|
apt_install_release() {
|
|
apt_install_target "${DEBIAN_CODENAME}" "${@}"
|
|
}
|
|
|
|
apt_install_target() {
|
|
local target="${1}"
|
|
shift
|
|
local package
|
|
for package in "${@}"; do
|
|
sh_log_info
|
|
sh_log_info "${package} ← ${target}"
|
|
apt-get \
|
|
install \
|
|
--assume-yes \
|
|
--target-release "${target}" \
|
|
"${package}"
|
|
apt_clean
|
|
done
|
|
}
|
|
|
|
apt_sources_write() {
|
|
printf "%s" "\
|
|
deb https://deb.debian.org/debian \
|
|
${DEBIAN_CODENAME} main non-free-firmware contrib non-free
|
|
deb https://deb.debian.org/debian \
|
|
${DEBIAN_CODENAME}-backports main non-free-firmware contrib non-free
|
|
deb https://deb.debian.org/debian \
|
|
${DEBIAN_CODENAME}-updates main non-free-firmware contrib non-free
|
|
deb https://deb.debian.org/debian-security \
|
|
${DEBIAN_CODENAME}-security main non-free-firmware contrib non-free
|
|
" >"/etc/apt/sources.list"
|
|
}
|
|
|
|
apt_update() {
|
|
apt-get \
|
|
update
|
|
}
|
|
|
|
apt_upgrade() {
|
|
apt-get \
|
|
upgrade \
|
|
--assume-yes
|
|
apt_clean
|
|
}
|
|
|
|
debian_disable_frontend() {
|
|
export DEBIAN_FRONTEND="noninteractive"
|
|
}
|