diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2023-12-18 12:02:21 -0500 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2024-01-01 20:33:08 -0500 |
commit | e6453d19f2ab50f20e3b3d7050166cdc7f0b2a7b (patch) | |
tree | 2b0f2db46dbc762840dcb2710bc6435f1edbb404 | |
parent | 08554b9b872eeebb4ead385645289c225198229b (diff) |
define SUPPORTED_ARCHES and EXPERIMENTAL_ARCHES centrally in conf.sh
-rwxr-xr-x | src/chroot-tools/librechroot | 4 | ||||
-rw-r--r-- | src/lib/conf.sh.in | 34 |
2 files changed, 20 insertions, 18 deletions
diff --git a/src/chroot-tools/librechroot b/src/chroot-tools/librechroot index b9e344e..f12b6b8 100755 --- a/src/chroot-tools/librechroot +++ b/src/chroot-tools/librechroot @@ -52,8 +52,7 @@ umask 0022 detect_chroot_arch() ( local makepkg_conf="$1" - local supported_arches=( armv7h i686 x86_64 ) - local arches_rx=$(echo "^(${supported_arches[*]})$" | tr ' ' '|') + local arches_rx="^($(sed 's/ /|/g' <<<${SUPPORTED_ARCHES[*]}))$" unset CARCH ; source "$makepkg_conf" &> /dev/null ; if [[ "$CARCH" =~ $arches_rx ]]; then @@ -447,7 +446,6 @@ main() { fi eval "$(calculate_directories)" - readonly LIBREUSER LIBREHOME readonly CHROOTDIR CHROOT COPY readonly rootdir copydir readonly mode diff --git a/src/lib/conf.sh.in b/src/lib/conf.sh.in index 13fd71e..284a487 100644 --- a/src/lib/conf.sh.in +++ b/src/lib/conf.sh.in @@ -44,26 +44,30 @@ REPOUSER= # NOTE: $WORKDIR and $LIBREHOME/.cache must be writable by $LIBREUSER LIBREHOME= +readonly SUPPORTED_ARCHES=( armv7h i686 x86_64 ) +readonly EXPERIMENTAL_ARCHES=( aarch64 ppc64le riscv64 ) + ## configuration end ## ## prepare environment ## -if [[ "$(id -u "${SUDO_USER:-root}")" == 0 ]]; then - unset SUDO_USER -fi -LIBREUSER="${SUDO_USER:-$USER}" -REPOUSER="${REPOUSER:-$LIBREUSER}" -if [[ -z "$LIBREHOME" ]]; then - eval "LIBREHOME=~$LIBREUSER" -fi -if [[ -z ${XDG_CONFIG_HOME:-} ]]; then - export XDG_CONFIG_HOME="${LIBREHOME}"/.config -fi -if [[ -z ${XDG_CACHE_HOME:-} ]]; then - export XDG_CACHE_HOME="${LIBREHOME}"/.cache -fi -readonly LIBREUSER REPOUSER LIBREHOME +# supported architectures +readonly SUPPORTED_ARCHES=( armv7h i686 x86_64 ) +readonly EXPERIMENTAL_ARCHES=( aarch64 ppc64le riscv64 ) +readonly ALL_ARCHES=( ${SUPPORTED_ARCHES[*]} ${EXPERIMENTAL_ARCHES[*]} ) + +# login and home of the calling user +[[ "$(id -u "${SUDO_USER:-root}")" != 0 ]] || unset SUDO_USER +readonly LIBREUSER=${SUDO_USER:-$USER} +readonly LIBREHOME=$(eval "echo ${LIBREHOME:-~$LIBREUSER}") +[[ -n ${XDG_CONFIG_HOME:-} ]] || export XDG_CONFIG_HOME="${LIBREHOME}"/.config +[[ -n ${XDG_CACHE_HOME:-} ]] || export XDG_CACHE_HOME="${LIBREHOME}"/.cache + +# validate login and home +[[ -n ${LIBREUSER:-} ]] || libremessages panic || exit 1 # $EXIT_FAILURE +[[ -d ${LIBREHOME:-} ]] || libremessages panic || exit 1 # $EXIT_FAILURE +[[ $LIBREHOME =~ ^[^\~]*$ ]] || libremessages panic || exit 1 # $EXIT_FAILURE ## Low-level generic functions ## |