Some apps will not install on arm

This commit is contained in:
Bob Mottram 2018-05-11 13:43:54 +01:00
parent 5442dd106c
commit 71c2059742
2 changed files with 57 additions and 35 deletions

View File

@ -29,6 +29,7 @@ VARIANTS='full full-vim'
IN_DEFAULT_INSTALL=0 IN_DEFAULT_INSTALL=0
SHOW_ON_ABOUT=1 SHOW_ON_ABOUT=1
NOT_ON_ARM=1
ROCKETCHAT_DOMAIN_NAME= ROCKETCHAT_DOMAIN_NAME=
ROCKETCHAT_CODE= ROCKETCHAT_CODE=

View File

@ -286,6 +286,19 @@ function app_not_on_onion_only {
echo "1" echo "1"
} }
function app_not_on_arm {
app_name="$1"
if grep -q "NOT_ON_ARM=1" "/usr/share/${PROJECT_NAME}/apps/${PROJECT_NAME}-app-${app_name}"; then
archtype=$(uname -m)
if [[ "$archtype" == 'arm'* ]]; then
echo "0"
return
fi
fi
echo "1"
}
function enough_ram_for_app { function enough_ram_for_app {
app_name="$1" app_name="$1"
@ -320,10 +333,12 @@ function detect_apps {
app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}') app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then
if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then
# shellcheck disable=SC2068 if [[ $(app_not_on_arm "$app_name") != "0" ]]; then
if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then # shellcheck disable=SC2068
APPS_AVAILABLE+=("${app_name}") if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then
APPS_CHOSEN+=("0") APPS_AVAILABLE+=("${app_name}")
APPS_CHOSEN+=("0")
fi
fi fi
fi fi
fi fi
@ -356,16 +371,18 @@ function detect_installable_apps {
if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then
if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then
# shellcheck disable=SC2068 if [[ $(app_not_on_arm "$app_name") != "0" ]]; then
if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then # shellcheck disable=SC2068
variants_list=$(app_variants "$filename") if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then
# check for empty string variants_list=$(app_variants "$filename")
if [ ${#variants_list} -gt 0 ]; then # check for empty string
APPS_AVAILABLE+=("${app_name}") if [ ${#variants_list} -gt 0 ]; then
APPS_CHOSEN+=("0") APPS_AVAILABLE+=("${app_name}")
APPS_INSTALLED+=("$(app_is_installed "$app_name")") APPS_CHOSEN+=("0")
if [[ $(app_is_installed "$app_name") == "1" ]]; then APPS_INSTALLED+=("$(app_is_installed "$app_name")")
APPS_INSTALLED_NAMES+=("$app_name") if [[ $(app_is_installed "$app_name") == "1" ]]; then
APPS_INSTALLED_NAMES+=("$app_name")
fi
fi fi
fi fi
fi fi
@ -392,13 +409,15 @@ function detect_installed_apps {
if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then
if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then
if [[ $(app_is_installed "$app_name") == "1" ]]; then if [[ $(app_not_on_arm "$app_name") != "0" ]]; then
# shellcheck disable=SC2068 if [[ $(app_is_installed "$app_name") == "1" ]]; then
if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then # shellcheck disable=SC2068
variants_list=$(app_variants "$filename") if ! item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then
if [ ${#variants_list} -gt 0 ]; then variants_list=$(app_variants "$filename")
APPS_AVAILABLE+=("${app_name}") if [ ${#variants_list} -gt 0 ]; then
APPS_INSTALLED_NAMES+=("$app_name") APPS_AVAILABLE+=("${app_name}")
APPS_INSTALLED_NAMES+=("$app_name")
fi
fi fi
fi fi
fi fi
@ -431,26 +450,28 @@ function choose_apps_for_variant {
app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}') app_name=$(echo "${filename}" | awk -F '-app-' '{print $2}')
if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then if [[ $(enough_ram_for_app "$app_name") == "0" ]]; then
if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then if [[ $(app_not_on_onion_only "$app_name") != "0" ]]; then
# shellcheck disable=SC2068 if [[ $(app_not_on_arm "$app_name") != "0" ]]; then
if item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then # shellcheck disable=SC2068
if grep -q "VARIANTS=" "${filename}"; then if item_in_array "${app_name}" ${APPS_AVAILABLE[@]}; then
variants_list=$(app_variants "$filename") if grep -q "VARIANTS=" "${filename}"; then
if [[ "${variants_list}" == 'all'* || \ variants_list=$(app_variants "$filename")
"${variants_list}" == "$variant_name" || \ if [[ "${variants_list}" == 'all'* || \
"${variants_list}" == "$variant_name "* || \ "${variants_list}" == "$variant_name" || \
"${variants_list}" == *" $variant_name "* || \ "${variants_list}" == "$variant_name "* || \
"${variants_list}" == *" $variant_name" ]]; then "${variants_list}" == *" $variant_name "* || \
if [[ $(app_is_removed "${a}") == "0" ]]; then "${variants_list}" == *" $variant_name" ]]; then
#echo $"${app_name} chosen" if [[ $(app_is_removed "${a}") == "0" ]]; then
APPS_CHOSEN+=("1") #echo $"${app_name} chosen"
APPS_CHOSEN+=("1")
else
APPS_CHOSEN+=("0")
fi
else else
APPS_CHOSEN+=("0") APPS_CHOSEN+=("0")
fi fi
else else
APPS_CHOSEN+=("0") APPS_CHOSEN+=("0")
fi fi
else
APPS_CHOSEN+=("0")
fi fi
fi fi
fi fi