__debian_backports -> __apt_backports; add wider os support
As discussed in the chat, this type now supports a broader list of OSes which it supports backports for. Because of this, it was renamed to something more generic. "apt" should fit in.
This commit is contained in:
parent
0d96b31b56
commit
c4d19a2319
6 changed files with 49 additions and 20 deletions
|
@ -3,13 +3,13 @@ cdist-type__debian_backports(7)
|
||||||
|
|
||||||
NAME
|
NAME
|
||||||
----
|
----
|
||||||
cdist-type__debian_backports - Install backports for Debain systems
|
cdist-type__apt_backports - Install backports
|
||||||
|
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
-----------
|
-----------
|
||||||
This singleton type installs backports for the current Debian version.
|
This singleton type installs backports for the current OS release.
|
||||||
It aborts if backports are not supported for the specified os or no
|
It aborts if backports are not supported for the specified OS or no
|
||||||
version codename could be fetched (like Debian unstable).
|
version codename could be fetched (like Debian unstable).
|
||||||
|
|
||||||
|
|
||||||
|
@ -27,8 +27,8 @@ state
|
||||||
Will be directly passed to :strong:`cdist-type__apt_source`\ (7).
|
Will be directly passed to :strong:`cdist-type__apt_source`\ (7).
|
||||||
|
|
||||||
mirror
|
mirror
|
||||||
The mirror to fetch the backports from. Will defaults to the Debian default
|
The mirror to fetch the backports from. Will defaults to the generic
|
||||||
`<http://deb.debian.org/debian/>`_.
|
mirror of the current OS.
|
||||||
|
|
||||||
Will be directly passed to :strong:`cdist-type__apt_source`\ (7).
|
Will be directly passed to :strong:`cdist-type__apt_source`\ (7).
|
||||||
|
|
||||||
|
@ -49,12 +49,12 @@ EXAMPLES
|
||||||
.. code-block:: sh
|
.. code-block:: sh
|
||||||
|
|
||||||
# setup the backports
|
# setup the backports
|
||||||
__debian_backports
|
__apt_backports
|
||||||
__debian_backports --state absent
|
__apt_backports --state absent
|
||||||
__debian_backports --state present --mirror "http://ftp.de.debian.org/debian/"
|
__apt_backports --state present --mirror "http://ftp.de.debian.org/debian/"
|
||||||
|
|
||||||
# update
|
# update
|
||||||
require="__debian_backports" __apt_update_index
|
require="__apt_backports" __apt_update_index
|
||||||
|
|
||||||
# install a backports package
|
# install a backports package
|
||||||
# currently for the buster release backports
|
# currently for the buster release backports
|
||||||
|
@ -70,6 +70,15 @@ Aborts if no distribuition codename could be detected. This is common for the
|
||||||
unstable distribution, but there is no backports repository for it already.
|
unstable distribution, but there is no backports repository for it already.
|
||||||
|
|
||||||
|
|
||||||
|
CAVEATS
|
||||||
|
-------
|
||||||
|
For Ubuntu, it setup all componenents for the backports repository: ``main``,
|
||||||
|
``restricted``, ``universe`` and ``multiverse``. The user may not want to
|
||||||
|
install proprietary packages, which will only be installed if the user
|
||||||
|
explicitly uses the backports target-release. The user may change this behavior
|
||||||
|
to install backports packages without the need of explicitly select it.
|
||||||
|
|
||||||
|
|
||||||
SEE ALSO
|
SEE ALSO
|
||||||
--------
|
--------
|
||||||
`Official Debian Backports site <https://backports.debian.org/>`_
|
`Official Debian Backports site <https://backports.debian.org/>`_
|
|
@ -1,5 +1,5 @@
|
||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
# __debian_backports/manifest
|
# __apt_backports/manifest
|
||||||
#
|
#
|
||||||
# 2020 Matthias Stecher (matthiasstecher at gmx.de)
|
# 2020 Matthias Stecher (matthiasstecher at gmx.de)
|
||||||
#
|
#
|
||||||
|
@ -23,18 +23,34 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
# Get the distribution codename by /etc/os-release.
|
||||||
|
# is already executed in a subshell by string substitution
|
||||||
|
# lsb_release may not be given in all installations
|
||||||
|
codename_os_release() {
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
. "$__global/explorer/os-release"
|
||||||
|
printf "%s" "$VERSION_CODENAME"
|
||||||
|
}
|
||||||
|
|
||||||
# detect backport distribution
|
# detect backport distribution
|
||||||
os="$(cat "$__global/explorer/os")"
|
os="$(cat "$__global/explorer/os")"
|
||||||
case "$os" in
|
case "$os" in
|
||||||
debian)
|
debian)
|
||||||
# distribution codename from /etc/os-release
|
dist="$( codename_os_release )"
|
||||||
# lsb_release may not be given in all debian installations
|
components="main"
|
||||||
dist="$(
|
mirror="http://deb.debian.org/debian/"
|
||||||
# shellcheck disable=SC1090
|
|
||||||
. "$__global/explorer/os-release"
|
|
||||||
printf "%s" "$VERSION_CODENAME"
|
|
||||||
)"
|
|
||||||
;;
|
;;
|
||||||
|
devuan)
|
||||||
|
dist="$( codename_os_release )"
|
||||||
|
components="main"
|
||||||
|
mirror="http://deb.devuan.org/merged"
|
||||||
|
;;
|
||||||
|
ubuntu)
|
||||||
|
dist="$( codename_os_release )"
|
||||||
|
components="main restricted universe multiverse"
|
||||||
|
mirror="http://archive.ubuntu.com/ubuntu"
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
printf "Backports for %s are not supported!\n" "$os" >&2
|
printf "Backports for %s are not supported!\n" "$os" >&2
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -50,11 +66,16 @@ fi
|
||||||
|
|
||||||
# parameters
|
# parameters
|
||||||
state="$(cat "$__object/parameter/state")"
|
state="$(cat "$__object/parameter/state")"
|
||||||
mirror="$(cat "$__object/parameter/mirror")"
|
|
||||||
|
# mirror already set for the os, only override user-values
|
||||||
|
if [ -f "$__object/parameter/mirror" ]; then
|
||||||
|
mirror="$(cat "$__object/parameter/mirror")"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# install the given backports repository
|
# install the given backports repository
|
||||||
__apt_source "${dist}-backports" \
|
__apt_source "${dist}-backports" \
|
||||||
--state "$state" \
|
--state "$state" \
|
||||||
--distribution "${dist}-backports" \
|
--distribution "${dist}-backports" \
|
||||||
--component main \
|
--component "$components" \
|
||||||
--uri "$mirror"
|
--uri "$mirror"
|
|
@ -1 +0,0 @@
|
||||||
http://deb.debian.org/debian/
|
|
Loading…
Reference in a new issue