From 088c895dc2363bd0b586a2ddfeebf13f6755ee4e Mon Sep 17 00:00:00 2001 From: Abdul Halim Date: Fri, 11 Dec 2015 11:54:13 +0000 Subject: Fix: OS name detection error by build scripts There is a problem detecting OS specific scripts dir if NAME variable in /etc/os-release contains a multi-word string (e.g NAME="CentOS Linux"). To fix this we get first part of the NAME string (i.e "CentOS") for simplicity and look for version specific scripts dir within that. Change-Id: Ic840788875e9b486b20608a9b9e523cbd4530e31 Signed-off-by: Abdul Halim Reviewed-by: Maryam Tahhan Reviewed-by: Al Morton Reviewed-by: Brian Castelli --- systems/build_base_machine.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/systems/build_base_machine.sh b/systems/build_base_machine.sh index 95f38765..c64f7bb2 100755 --- a/systems/build_base_machine.sh +++ b/systems/build_base_machine.sh @@ -37,6 +37,9 @@ function die() { # Detect OS name and version from systemd based os-release file . /etc/os-release +# Get OS name (the First word from $NAME in /etc/os-release) +OS_NAME=`echo "$NAME" | cut -d ' ' -f1` + # check if root if [ "$UID" -ne "$ROOT_UID" ] then @@ -45,11 +48,11 @@ then fi # If there is version specific dir available then set distro_dir to that -if [ -d "$NAME/$VERSION_ID" ]; then - distro_dir="$NAME/$VERSION_ID" +if [ -d "$OS_NAME/$VERSION_ID" ]; then + distro_dir="$OS_NAME/$VERSION_ID" else # Fallback - Default distro_dir = OS name - distro_dir="$NAME" + distro_dir="$OS_NAME" fi # build base system using OS specific scripts -- cgit 1.2.3-korg