From 20efec34adde2cf5030eb08a0eb2c9443afc450a Mon Sep 17 00:00:00 2001 From: WXbet Date: Sat, 12 Sep 2020 22:16:48 +0200 Subject: [PATCH] s3.TUP Plugin self update option (v0.21.0) - new commandline option -u (--update_me) to update this plugin via github - better logfile output (remove ansi color codes) - some code optimizations --- .../plugin_update_toolchain.config.template | 2 +- support/functions/_plugin_update_toolchain | 228 ++++++++++++------ support/translation/bg | 13 + support/translation/de | 19 +- support/translation/en | 13 + support/translation/es | 63 +++-- support/translation/fr | 63 +++-- support/translation/it | 147 ++++++----- support/translation/nl | 63 +++-- support/translation/pl | 63 +++-- support/translation/pt | 63 +++-- support/translation/tr | 17 ++ 12 files changed, 497 insertions(+), 257 deletions(-) diff --git a/support/configs/plugin_update_toolchain.config.template b/support/configs/plugin_update_toolchain.config.template index bade857..4427a4c 100644 --- a/support/configs/plugin_update_toolchain.config.template +++ b/support/configs/plugin_update_toolchain.config.template @@ -1,6 +1,6 @@ # List of setup, build and config commands below. All commands are executed in the context of the current user. # Pay attention to the SEMICOLON at the end of EACH command and the correct quoting (' or ") for or to avoid expansion of variables. -S3TUP_CONFIG_VERSION="22"; +S3TUP_CONFIG_VERSION="23"; # Tokens that are replaced automatically: # @CTNGSOURCE@ crosstool-NG source folder; support/crosstool/crosstool-ng diff --git a/support/functions/_plugin_update_toolchain b/support/functions/_plugin_update_toolchain index c77abf9..111f6d7 100644 --- a/support/functions/_plugin_update_toolchain +++ b/support/functions/_plugin_update_toolchain @@ -3,31 +3,44 @@ #simplebuild_plugin tcupdate tcupdate(){ - pversion="0.20.4"; + pversion="0.21.0"; pname="s3.TUP"; pdesc="Plugin $pname v$pversion"; configname="$configdir/plugin_update_toolchain.config"; configtemplate="${configname}.template"; - disable_syscheck="0"; - disable_template_versioning="0"; ctdir="$sdir/crosstool"; cttpldir="$ctdir/templates"; ctngsrcdir="$ctdir/crosstool-ng"; fngsrcdir="$ctdir/freetz-ng"; andksrcdir="$ctdir/android-ndk"; cpus="$(getconf _NPROCESSORS_ONLN)"; + [ -f "$workdir/DEVELOPMENT" ] && disable_syscheck="1" && disable_template_versioning="1"; + s3_update_required=0; CMDTC="$1"; OPTION1="$2"; OPTION2="$3"; [ -z "$4" ] && FLAG="0" || FLAG="$4"; #0 - tcupdate call from s3.TUP itself, 1 - tcupdate call from s3 main menu, 2 - tcupdate call from s3 toolchain menu; tc="$CMDTC"; - - #some migrations to upgrade older s3.TUP versions - [[ -z "$4" || "$FLAG" -gt "0" ]] && clear && _migrations; + clear; #check/install prerequisites - [[ -z "$4" || "$FLAG" -gt 0 ]] && [ ! "$disable_syscheck" -eq 1 ] && _check_pkg; + [[ -z "$4" || "$FLAG" -gt 0 ]] && [ -z "$disable_syscheck" ] && _check_pkg; + + #update plugin + if [ "$CMDTC" == "-u" ] || [ "$CMDTC" == "--update_me" ];then + echo -e "${y_l}UPDATE -> ${pdesc} ${txt_s3tup_msg_update_hint}${re_}"; + if ! _s3tup_update;then + _paktc_timer 5 "${txt_s3tup_msg_update_restart}" && printf "${re_}"; + tcupdate "$force_reset"; + else + printf "${g_l}\n\n" && _paktc_timer 5 "${pdesc} ${txt_s3tup_msg_update_current}" && printf "${re_}"; clear; + fi; + CMDTC="" + fi; + + #some migrations to upgrade older s3.TUP versions + [[ -z "$4" || "$FLAG" -gt 0 ]] && _migrations; #backup config if [ "$CMDTC" == "-r" ] || [ "$CMDTC" == "--reset" ];then @@ -43,10 +56,10 @@ tcupdate(){ fi; CMDTC=""; fi; - + #create config if [ ! -f "$configname" ];then - echo -e "${g_l}CLEANUP -> ${txt_s3tup_msg_reset_config3}${y_l}${re_}"; + echo -e "${g_l}CLEANUP -> ${txt_s3tup_msg_reset_config3}${re_}"; if ! _create_config;then exit; else @@ -54,19 +67,19 @@ tcupdate(){ fi; _paktc_timer 5; fi; - + #change config value's if [ "$CMDTC" == "-cfg" ] || [ "$CMDTC" == "--config" ];then _change_config "$OPTION1" "$OPTION2"; [ "$FLAG" == "1" ] && return || bye; fi; - + #load config source "$configname"; - + #check config _check_config; - + #ct-ng must not be run as root unless you forcing it by config if ! _check_root || [ "$CTNG_BUILD_AS_ROOT" == "1" ];then CT_START_BUILD=1; @@ -142,9 +155,8 @@ tcupdate(){ done; elif [ -n "$tc" ];then #update toolchain _integrate_libs "$tc" "$OPTION1" "$FLAG"; - [ "$FLAG" -gt "0" ] && return || bye; + [ "$FLAG" -gt 0 ] && return || bye; fi; - }; _integrate_libs(){ local tc="$1" libkeys="$2" menu_close props i icount; @@ -180,20 +192,20 @@ _integrate_libs(){ #LIBRARY UPDATE MENU unset MENU_OPTIONS;COUNT=0;unset libs;unset libversioncurrent;unset libversioncompare; - for i in "${LIBS[@]}" + for libkey in "${LIBS[@]}" do - [ "${!i}" == "0" ] && continue; - libkey=$i; - libbeta="$i"_beta; [ "$LIBS_LIST_BETA" == "0" ] && [ "${!libbeta}" == "1" ] && continue; #skip beta libraries in list - libname="$i"_name;libname="${!libname}"; - libversion="$i"_version;libversion="${!libversion}"; - libdesc="$i"_desc;libdesc="${!libdesc}"; + [ "${!libkey}" == "0" ] && continue; + #libkey=$libkey; + libbeta="$libkey"_beta; [ "$LIBS_LIST_BETA" == "0" ] && [ "${!libbeta}" == "1" ] && continue; #skip beta libraries in list + libname="$libkey"_name;libname="${!libname}"; + libversion="$libkey"_version;libversion="${!libversion}"; + libdesc="$libkey"_desc;libdesc="${!libdesc}"; [ "${#libdesc}" -eq 0 ] && libdesc="$libname $libversion"; - libcheck="$i"_check;libcheck="${!libcheck}"; + libcheck="$libkey"_check;libcheck="${!libcheck}"; libversioncheck=$(echo "$libcheck" | awk '{printf $2}') libcheck=$(echo "$libcheck" | awk '{printf $1}') - liburl="$i"_url;liburl="${!liburl}"; - libtasks="$i"_tasks[@];libtasks=("${!libtasks}"); + liburl="$libkey"_url;liburl="${!liburl}"; + libtasks="$libkey"_tasks[@];libtasks=("${!libtasks}"); # check match of existing lib for l in $(echo "$tc_libs" | tr ";" "\n") #semicolon separeted "pkgname|version|key|compare|libname" @@ -214,7 +226,7 @@ _integrate_libs(){ [ "$libversioncompare" == "<" ] && libtxtfmt="\Z1"; [ "$libversioncompare" == ">" ] && [ "${#libversioncurrent}" -gt 0 ] && libselected="on" && libtxtfmt="\Z5" || libselected="off"; - MENU_OPTIONS+=("$i" "${libdesc}$(printf '%*s' $((24-${#libdesc})))${libtxtfmt}$([ $libversioncurrent ] && echo $libversioncompare) $(echo $libversioncurrent | sed -e 's/^$/ ---/g')\Zn" "$(echo $libselected)" "$([ $libname ] && echo "${libdesc}: ${liburl}")");counter; + MENU_OPTIONS+=("$libkey" "${libdesc}$(printf '%*s' $((24-${#libdesc})))${libtxtfmt}$([ $libversioncurrent ] && echo $libversioncompare) $(echo $libversioncurrent | sed -e 's/^$/ ---/g')\Zn" "$(echo $libselected)" "$([ $libname ] && echo "${libdesc}: ${liburl}")");counter; # 0 key 1 desc 2 version 3 checkversion 4 checkfile 5 current version 6 url 7 tasks array lib=("$libkey" "$libname" "$libversion" "$libversioncheck" "$libcheck" "$libversioncurrent" "$liburl" "($(printf " %q" "${libtasks[@]}"))"); @@ -227,7 +239,7 @@ _integrate_libs(){ ret="0"; else clear;clear; - opts=$("$gui" "--item-help" "--help-tags" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--default-item" "$lkey" "--ok-label" "${txt_s3tup_menu_command_label_start}" "--help-button" "--help-label" "${txt_s3tup_menu_command_label_info}" "--cancel-label" "$([ ! "$3" -gt "0" ] && echo "${txt_s3tup_menu_command_label_exit}" || echo "${txt_s3tup_menu_command_label_back}")" "--title" "-[ ${txt_s3tup_menu_library_title} - \Z2$tc\Zn ]-" "$cl_"\ + opts=$("$gui" "--item-help" "--help-tags" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--default-item" "$lkey" "--ok-label" "${txt_s3tup_menu_command_label_start}" "--help-button" "--help-label" "${txt_s3tup_menu_command_label_info}" "--cancel-label" "$([ ! "$3" -gt 0 ] && echo "${txt_s3tup_menu_command_label_exit}" || echo "${txt_s3tup_menu_command_label_back}")" "--title" "-[ ${txt_s3tup_menu_library_title} - \Z2$tc\Zn ]-" "$cl_"\ "\n${txt_s3tup_menu_library_text1}\n$prefixdir\n\n${txt_s3tup_menu_library_text2}" \ 0 0 "$COUNT" "${MENU_OPTIONS[@]}"); ret="$?" @@ -239,7 +251,7 @@ _integrate_libs(){ #sort opts descending to ensure LIB_USB is build before LIB_PCSC opts=$(echo "$opts" | tr ' ' '\n' | sort -hr); - + #SSL select check if [ $(echo -e "$opts" | grep -c "SSL") -gt 1 \ -o $(echo -e "$opts" | grep -c "USB") -gt 1 \ @@ -378,10 +390,12 @@ _create_tc(){ logfile="$ldir/$(date +%F.%H%M%S)_tup_crosstoolchain_"$tpl".log"; ((i++)); clear; - sp=$(printf '%*s' 80 | tr ' ' '=') - echo -e "$pdesc - ${txt_s3tup_msg_cross_toolchain_log} - $(date +"%F %T")" | tee -a "$logfile"; - echo -e "${y_l}$sp\n${txt_b2} ($i/$icount): ${txt_s3tup_msg_cross_toolchain_commandlist} $tpl:\n$sp" | tee -a "$logfile"; - + sp=$(printf '%*s' 80 | tr ' ' '='); + ( + echo -e "$pdesc - ${txt_s3tup_msg_cross_toolchain_log} - $(date +"%F %T")"; + echo -e "${y_l}$sp\n${txt_b2} ($i/$icount): ${txt_s3tup_msg_cross_toolchain_commandlist} $tpl:\n$sp"; + ) | _log "$logfile"; + #set ctsrcdir based on template type template_type="$(_get_template_type "$cttpldir/$tpl")"; tpl_type="$(echo "$template_type" | awk -F';' '{print $1}' | xargs)"; @@ -389,60 +403,61 @@ _create_tc(){ ctsrcdir="${tpl_type,,}srcdir";ctsrcdir="${!ctsrcdir}"; #copy template - echo "rm \"$ctsrcdir/.config\"* 2>/dev/null;cp -f \"$cttpldir/$tpl\" \"$ctsrcdir/.config\";" | tee -a "$logfile"; + echo "rm \"$ctsrcdir/.config\"* 2>/dev/null;cp -f \"$cttpldir/$tpl\" \"$ctsrcdir/.config\";" | _log "$logfile"; rm "$ctsrcdir/.config"* 2>/dev/null;cp -f "$cttpldir/$tpl" "$ctsrcdir/.config"; - + #prepare template and build case "$tpl_type" in "CTNG") #CT_LOCAL_TARBALLS_DIR aka cache folder for downloads - echo "sed -i \"s#.*CT_LOCAL_TARBALLS_DIR=.*#CT_LOCAL_TARBALLS_DIR=\"$dldir\"#g\" \"$ctsrcdir/.config\";" | tee -a "$logfile"; + echo "sed -i \"s#.*CT_LOCAL_TARBALLS_DIR=.*#CT_LOCAL_TARBALLS_DIR=\"$dldir\"#g\" \"$ctsrcdir/.config\";" | _log "$logfile"; sed -i "s#.*CT_LOCAL_TARBALLS_DIR=.*#CT_LOCAL_TARBALLS_DIR=\"$dldir\"#g" "$ctsrcdir/.config"; #CT_PREFIX_DIR aka folder that contains the final toolchain - echo "sed -i \"s#.*CT_PREFIX_DIR=.*#CT_PREFIX_DIR=\"$tcdir/$tpl\"#g\" \"$ctsrcdir/.config\";" | tee -a "$logfile"; + echo "sed -i \"s#.*CT_PREFIX_DIR=.*#CT_PREFIX_DIR=\"$tcdir/$tpl\"#g\" \"$ctsrcdir/.config\";" | _log "$logfile"; sed -i "s#.*CT_PREFIX_DIR=.*#CT_PREFIX_DIR=\"$tcdir/$tpl\"#g" "$ctsrcdir/.config"; #CT_PARALLEL_JOBS aka parallel task count for building - echo "echo -e \"\nCT_PARALLEL_JOBS=$cpus\" >>\"$ctsrcdir/.config\";" | tee -a "$logfile"; + echo "echo -e \"\nCT_PARALLEL_JOBS=$cpus\" >>\"$ctsrcdir/.config\";"; echo -e "\nCT_PARALLEL_JOBS=$cpus" >>"$ctsrcdir/.config"; #CT_ALLOW_BUILD_AS_ROOT aka force build as root - _check_root && [ "$CTNG_BUILD_AS_ROOT" == "1" ] && echo "echo -e \"\nCT_EXPERIMENTAL=y\nCT_ALLOW_BUILD_AS_ROOT=y\nCT_ALLOW_BUILD_AS_ROOT_SURE=y\" >>\"$ctsrcdir/.config\";" | tee -a "$logfile"; - _check_root && [ "$CTNG_BUILD_AS_ROOT" == "1" ] && echo -e "\nCT_EXPERIMENTAL=y\nCT_ALLOW_BUILD_AS_ROOT=y\nCT_ALLOW_BUILD_AS_ROOT_SURE=y" >>"$ctsrcdir/.config"; + _check_root && [ "$CTNG_BUILD_AS_ROOT" == "1" ] && echo "echo -e \"\nCT_EXPERIMENTAL=y\nCT_ALLOW_BUILD_AS_ROOT=y\nCT_ALLOW_BUILD_AS_ROOT_SURE=y\" >>\"$ctsrcdir/.config\";" | _log "$logfile" \ + && echo -e "\nCT_EXPERIMENTAL=y\nCT_ALLOW_BUILD_AS_ROOT=y\nCT_ALLOW_BUILD_AS_ROOT_SURE=y" >>"$ctsrcdir/.config"; bcl=$(printf '%s\n' "${CTNG_BUILD_tasks[@]}");; "FNG") #FREETZ_JLEVEL aka parallel task count for building - echo "echo -e \"\FREETZ_JLEVEL=$cpus\" >>\"$ctsrcdir/.config\";" | tee -a "$logfile"; + echo "echo -e \"\FREETZ_JLEVEL=$cpus\" >>\"$ctsrcdir/.config\";" | _log "$logfile"; echo -e "\nFREETZ_JLEVEL=$cpus" >>"$ctsrcdir/.config"; bcl=$(printf '%s\n' "${FNG_BUILD_tasks[@]}");; "ANDK") #resource template + grep '^ANDK_.*' "$ctsrcdir/.config" | _log "$logfile"; source "$ctsrcdir/.config" bcl=$(printf '%s\n' "${ANDK_BUILD_tasks[@]}");; esac; - echo -e "cd \"${ctsrcdir}\";\n$(_replace_tokens "$bcl")\n$sp${re_}" | tee -a "$logfile"; + echo -e "cd \"${ctsrcdir}\";\n$(_replace_tokens "$bcl")\n$sp${re_}" | _log "$logfile"; sleep 2; - - if [ $CT_START_BUILD -eq 1 ];then + + if [ "$CT_START_BUILD" -eq 1 ];then cd "$ctsrcdir"; #print out detected libs in current toolchain - [ "${#libkeys}" -gt 0 -a "$LIBS_AUTO_INTEGRATE" -eq 1 ] && echo -e "${y_l}\n${txt_s3tup_msg_cross_toolchain_library_detection}\n${b_l}$(echo "$libkeys" | tr ',' '\n' | sort -hr)${re_}" | tee -a "$logfile"; + [ "${#libkeys}" -gt 0 -a "$LIBS_AUTO_INTEGRATE" -eq 1 ] && echo -e "${y_l}\n${txt_s3tup_msg_cross_toolchain_library_detection}\n${b_l}$(echo "$libkeys" | tr ',' '\n' | sort -hr)${re_}" | _log "$logfile"; #print out crosstool version and generate build command list unset buildtasks; case "$tpl_type" in "CTNG") - echo -e "${g_l}\n$(./ct-ng | grep 'crosstool-NG version' &2>/dev/null | tail -1)\n${re_}" | tee -a "$logfile"; + echo -e "${g_l}\n$(./ct-ng | grep 'crosstool-NG version' &2>/dev/null | tail -1)\n${re_}" | _log "$logfile"; for task in "${CTNG_BUILD_tasks[@]}";do task=$(_replace_tokens "$task"); #replace tokens buildtasks+=("$task"); done;; "FNG") - echo -e "${g_l}\n$(tools/freetz-revision 2>&1 | tail -1)\n${re_}" | tee -a "$logfile"; + echo -e "${g_l}\n$(tools/freetz-revision 2>&1 | tail -1)\n${re_}" | _log "$logfile"; [[ ! $(umask) == 0022 ]] && umask 0022; for task in "${FNG_BUILD_tasks[@]}";do task=$(_replace_tokens "$task"); #replace tokens buildtasks+=("$task"); done;; "ANDK") - echo -e "${g_l}\n$(grep '^Pkg.Desc =' "source.properties" | awk -F'=' '{print $2}' | xargs) $(grep '^Pkg.Revision =' "source.properties" | awk -F'=' '{print $2}' | xargs)\n${re_}" | tee -a "$logfile"; + echo -e "${g_l}\n$(grep '^Pkg.Desc =' "source.properties" | awk -F'=' '{print $2}' | xargs) $(grep '^Pkg.Revision =' "source.properties" | awk -F'=' '{print $2}' | xargs)\n${re_}" | _log "$logfile"; for task in "${ANDK_BUILD_tasks[@]}";do task=$(_replace_tokens "$task"); #replace tokens echo_task="$(printf "%q" "$task")"; @@ -461,8 +476,8 @@ _create_tc(){ #save build.log in logs [ "$tpl_type" == "CTNG" ] && cat "$ctsrcdir/build.log" >>"$logfile"; - - if [ ! $err -gt 0 ];then + ( + if [ "$err" -eq 0 ];then case "$tpl_type" in "CTNG") #get target from build.log target=$(sed -n -e '/target = / s/.*\= *//p' "$ctsrcdir/build.log"); @@ -499,7 +514,7 @@ _create_tc(){ #auto integrate libs if [ "${#libkeys}" -gt 0 -a "$LIBS_AUTO_INTEGRATE" -eq 1 ];then - echo -e "${y_l}\n${txt_s3tup_msg_cross_toolchain_library_integration}\n${b_l}$(echo "$libkeys" | tr ',' '\n' | sort -hr)${re_}" | tee -a "$logfile"; + echo -e "${y_l}\n${txt_s3tup_msg_cross_toolchain_library_integration}\n${b_l}$(echo "$libkeys" | tr ',' '\n' | sort -hr)${re_}"; _integrate_libs "$tpl" "$libkeys" "$FLAG"; fi; @@ -514,8 +529,9 @@ _create_tc(){ else _paktc_timer 10; fi; + ) | _log "$logfile"; else - echo -e "${r_l}${CTNG_ROOT_BUILD_ERROR}${y_l}${CTNG_ROOT_BUILD_CMD}${re_}" | tee -a "$logfile"; + echo -e "${r_l}${CTNG_ROOT_BUILD_ERROR}${y_l}${CTNG_ROOT_BUILD_CMD}${re_}" | _log "$logfile"; _paktc_timer 10; fi; else @@ -544,7 +560,7 @@ _create_tc(){ _migrations(){ #rename folder for compatibility with pre 0.13.x releases [ -d "$ctdir/source" ] && mv -f "$ctdir/source" "$ctngsrcdir"; - + #migrate renamed templates unset TPL_LIST;unset mig_list;unset rm_list; if [ -d "$cttpldir" ];then @@ -571,7 +587,7 @@ _migrations(){ unset tpl; fi; fi; - + #remove 'Toolchain-' from encoded _toolchainfilename unset mig_list; for t in "${INST_TCLIST[@]}";do @@ -587,14 +603,14 @@ _migrations(){ fi; fi; done; - + if [ -n "$mig_list" ];then echo -e "${y_l}MIGRATION -> ${txt_s3tup_msg_cross_migrations_outdated2}${re_}" echo -e "$mig_list"; _paktc_timer 5 fi; unset t; - + }; _backup(){ _sz; # Prepare DIALOG settings @@ -623,19 +639,21 @@ _build_library(){ local tasks=("$@"); # Rebuild the array with rest of arguments ( - bcl=$(printf '%s\n' "${tasks[@]}"); - - sp=$(printf '%*s' 80 | tr ' ' '=') - echo -e "$pdesc - ${txt_s3tup_msg_build_library_log} - $(date +"%F %T")" | tee -a "$lf"; - echo -e "$sp\n${txt_s3tup_msg_build_library_commandlist} $desc:\n$sp\ncd "$libsrcdir\;"\n$bcl\n$sp" | tee -a "$lf"; - sleep 2; - cd "$libsrcdir"; - ( eval "${tasks[@]}" ) 2>&1 | tee -a "$lf" + bcl=$(printf '%s\n' "${tasks[@]}"); + + sp=$(printf '%*s' 80 | tr ' ' '=') + ( + echo -e "$pdesc - ${txt_s3tup_msg_build_library_log} - $(date +"%F %T")"; + echo -e "$sp\n${txt_s3tup_msg_build_library_commandlist} $desc:\n$sp\ncd "$libsrcdir\;"\n$bcl\n$sp"; + sleep 2; + cd "$libsrcdir"; + ( eval "${tasks[@]}" ) 2>&1 + ) | _log "$lf" ) | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_build_library_title} $desc ]- " "$pb_" "$_lines" "$_cols";sleep 2; #build error message error_on_build=$(grep -cw1 Error "$lf"); - if [ "$error_on_build" -gt "0" ];then + if [ "$error_on_build" -gt 0 ];then echo -e "${r_l}${txt_s3tup_msg_build_library_error}\n${b_l} ${lf}\n${y_l}" >$(tty); _paktc_timer 10; echo -e "${re_}${w_l}"; @@ -650,7 +668,7 @@ _tpl_editor(){ props=$(_get_template_properties "$cttpldir/$tpl"); desc=$(echo "$props" | awk -F'(' '{print $1}' | xargs); version=$(echo "$props" | awk -F'^' '{print $2}' | xargs);[ -z "$version" ] && version=0; - [ ! "$disable_template_versioning" -eq 1 ] && ((version+=1)); + [ -z "$disable_template_versioning" ] && ((version+=1)); cflags=$(echo "$props" | awk -F'^' '{print $3}' | xargs); copyof=$(echo "$props" | awk -F'^' '{print $6}' | xargs); @@ -698,7 +716,7 @@ _ctng_setup(){ echo -e "$sp\n${txt_s3tup_msg_ctng_setup_commandlist} crosstool-NG:\n$sp\ncd "$ctngsrcdir"\n$(_replace_tokens "$bcl")\n$sp"; sleep 2; - if [ $1 -eq 1 ];then + if [ "$1" -eq 1 ];then # setup crosstool wc echo "${txt_s3tup_msg_ctng_setup_cleanup} "$ctngsrcdir/"..." rm -rf "$ctngsrcdir" 2>/dev/null; @@ -714,7 +732,7 @@ _ctng_setup(){ echo -e "$CTNG_ROOT_BUILD_ERROR$CTNG_ROOT_BUILD_CMD"; sleep 5; fi; - ) | tee "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_ctng_setup_title} crosstool-NG ]- " "$pb_" "$_lines" "$_cols"; + ) | _log "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_ctng_setup_title} crosstool-NG ]- " "$pb_" "$_lines" "$_cols"; }; _fng_setup(){ _sz; # Prepare DIALOG settings @@ -727,7 +745,7 @@ _fng_setup(){ echo -e "$sp\n${txt_s3tup_msg_fng_setup_commandlist} Freetz-NG:\n$sp\ncd "$fngsrcdir"\n$(_replace_tokens "$bcl")\n$sp"; sleep 2; - if [ $1 -eq 1 ];then + if [ "$1" -eq 1 ];then # setup freetz-ng wc echo "${txt_s3tup_msg_fng_setup_cleanup} "$fngsrcdir/"..." rm -rf "$fngsrcdir" 2>/dev/null; @@ -744,7 +762,7 @@ _fng_setup(){ echo -e "$CTNG_ROOT_BUILD_ERROR$CTNG_ROOT_BUILD_CMD"; sleep 5; fi; - ) | tee "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_fng_setup_title} Freetz-NG ]- " "$pb_" "$_lines" "$_cols"; + ) | _log "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_fng_setup_title} Freetz-NG ]- " "$pb_" "$_lines" "$_cols"; }; _andk_setup(){ _sz; # Prepare DIALOG settings @@ -757,7 +775,7 @@ _andk_setup(){ echo -e "$sp\n${txt_s3tup_msg_andk_setup_commandlist} Android-NDK:\n$sp\ncd "$ctdir"\n$(_replace_tokens "$bcl")\n$sp"; sleep 2; - if [ $1 -eq 1 ];then + if [ "$1" -eq 1 ];then # setup Android-NDK wc echo "${txt_s3tup_msg_andk_setup_cleanup} "$andksrcdir/"..." rm -rf "$andksrcdir" 2>/dev/null; @@ -772,7 +790,7 @@ _andk_setup(){ echo -e "$CTNG_ROOT_BUILD_ERROR$CTNG_ROOT_BUILD_CMD"; sleep 5; fi; - ) | tee "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_andk_setup_title} Android-NDK ]- " "$pb_" "$_lines" "$_cols"; + ) | _log "$logfile" | "$gui" "$st_" "$bt_" "$title_ - \Z0$pdesc\Zn" "--colors" "--title" " -[ ${txt_s3tup_menu_andk_setup_title} Android-NDK ]- " "$pb_" "$_lines" "$_cols"; }; _dl(){ [ -d "$dldir/#tmp" ] && rm --recursive --force "$dldir/#tmp" @@ -1072,12 +1090,13 @@ _compare_version(){ [ $1 == $min ] && printf '<' && return; }; _paktc_timer(){ +[ "${#2}" -eq 0 ] && msg="$txt_s3tup_msg_paktc" || msg="$2"; if [ "$1" == "0" ] || [ "${#1}" -eq 0 ];then - read -n 1 -s -r -p "${txt_s3tup_msg_paktc}"; + read -n 1 -s -r -p "$msg"; else for (( i=$1; i>0; i--)); do sp=$(printf '%*s' $[$1-$i+1] | tr ' ' '.'); - printf "\r${txt_s3tup_msg_paktc}$sp" + printf "\r${msg}$sp" read -s -n 1 -t 1 key if [ $? -eq 0 ] then @@ -1085,7 +1104,7 @@ else fi; done fi; -echo -e "\033[2K\r"; #remove characters from console +[ "${#2}" -eq 0 ] && printf "\033[2K\r"; #remove characters from console }; _check_toolchain(){ @@ -1211,7 +1230,7 @@ _create_config(){ if [ ! -f "$configtemplate" ];then #check existing config template file echo -e "${r_l}\nERROR -> ${txt_s3tup_msg_create_config_template_not_found}${re_}" && _paktc_timer 10; return 1; - elif [ ! "$(type -pf jq)" ];then #check existing jq + elif [ ! "$(which jq)" ];then #check existing jq echo -e "${r_l}\nCHECK -> ${txt_s3tup_msg_create_config_jq_not_found}\n${y_l}apt install jq\n${re_}" && _paktc_timer 10; return 1; else #copy the config template file @@ -1234,6 +1253,65 @@ _create_config(){ return 0; }; +_s3tup_update(){ + local dc=0 ver="$pversion" logfile="$ldir/$(date +%F.%H%M%S)_tup_update.log" wctype repo branch diff_cmd update_cmd nl; + local s3tup_ffs="support/configs/plugin_update_toolchain.config.template \ + support/crosstool \ + support/functions/_plugin_update_toolchain \ + support/translation \ + "; + echo -e "$pdesc - ${txt_s3tup_msg_update_log} - $(date +"%F %T")" > "$logfile"; + + ( + #break if simplebuild3 update is required + [ "$s3_update_required" -eq 1 ] && printf "${r_l}\n${txt_s3tup_msg_update_s3update_required}${re_}" && return; + + #get the working copy type and exit if unknown + cd "$workdir"; + [ "$(git status 2>/dev/null | wc -l)" -gt 0 ] && wctype="GIT" && git remote update >/dev/null; + [ "$(svn info 2>/dev/null | wc -l)" -gt 0 ] && wctype="SVN"; + [ "${#wctype}" -eq 0 ] && printf "${r_l}\n${txt_s3tup_msg_update_directory_unversioned}${re_}" && return; + + #prepare commands for GIT and SVN and output some working copy properties + if [ "$wctype" == "GIT" ];then + repo="$(git config --get remote.origin.url)"; #get remote url of GIT working copy + branch="$(git branch --show-current)"; #get branch name of GIT working copy + diff_cmd='git diff --cached --stat remotes/origin/HEAD "$ff"'; #GIT diff command + update_cmd='git checkout --progress origin/"$(git branch --show-current)" -- "$ff"'; #GIT update command + else + repo="$(svn info | grep '^URL' | awk '{print $NF}')"; #get remote url of SVN working copy + branch="$(basename "$repo")"; #get branch name of SVN working copy + diff_cmd='svn diff -r BASE:HEAD "$ff" | git apply --stat 2>/dev/null'; #SVN diff command + update_cmd='svn update --quiet --accept theirs-full "$ff" && svn resolve --quiet --accept theirs-full "$ff"'; #SVN update command + fi; + printf "\n ${txt_repo}: ${c_l}${repo}${re_} ${txt_branch}: ${c_l}${branch}${re_} ${txt_proto}: ${c_l}${wctype}\n${re_}"; + + #check for remote updates and apply them + for ff in $s3tup_ffs;do + printf "${y_l}\n ${txt_checking}: ${b_l}${ff}${re_}"; + diff_count=$(eval "$diff_cmd" | wc -l); #get the number of diff lines + + if [ "$diff_count" -gt 0 ];then + printf "${p_l} -> ${txt_s3tup_msg_update_pending}\n${re_}" && nl="\n"; + eval "$diff_cmd"; #output summarized diff of changes + eval "$update_cmd"; #update the working copy path/file + [[ "$ff" == *plugin_update_toolchain.config.template ]] && force_reset="--reset" #set force reset config flag + [[ "$ff" == *_plugin_update_toolchain ]] && ver="$(grep 'pversion=' "$ff" | awk -F'"' '{print $2}')"; #grep new plugin version + else + printf "${y_l} -> ${g_l}${txt_s3tup_msg_update_not_required}${re_}" && nl="\n\n"; + fi; + + dc=$((dc+diff_count)) + done; + + [ "$dc" -gt 0 ] && printf "${g_l}${nl}${txt_s3tup_msg_update_finished} ${p_l}${ver}${g_l}\n"; + ) | _log "$logfile"; + + return $dc; #return number of diff lines +}; +_log(){ + cat | tee >(sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g" >>"$1"); #remove ansi colors from output +}; _create_toolchaincfg(){ cd "$1/bin"; compilername="${3}-gcc";compilername=$(realpath -s $compilername); diff --git a/support/translation/bg b/support/translation/bg index e456cfe..d2880d9 100644 --- a/support/translation/bg +++ b/support/translation/bg @@ -26,6 +26,7 @@ txt_found='открити' txt_create='създай' txt_conf='конфигурация' txt_extracting='извличане ' #10 chars +txt_checking='checking'; txt_wait='изчакайте... ' txt_existing='съществува' txt_profiles='профили' @@ -39,6 +40,9 @@ txt_tc="Toolchain" txt_tpl="Шаблон" txt_lib="Библиотека" txt_ssh_profiles="SSH $txt_profiles" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" # menu txt txt_start_menu='Главно меню' @@ -125,6 +129,15 @@ txt_s3tup_menu_command_label_edit="Редактиране" txt_s3tup_menu_command_label_yes="Да" txt_s3tup_menu_command_label_no="Не" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Моля изчакайте докато се извършат проверките на необходимите инструменти и зависимости..." txt_s3tup_msg_syscheck2="Нужно е ръчно да инсталираш следните пакети, за да може да ползваш съответно плъгина:" txt_s3tup_msg_reset_config1="Премествам съществуващия конфиг файл..." diff --git a/support/translation/de b/support/translation/de index 07d735d..9077421 100644 --- a/support/translation/de +++ b/support/translation/de @@ -29,6 +29,7 @@ txt_profiles='Profile' txt_conf='Konfiguration' txt_parameter='Parameter' txt_extracting=' entpacke' #10 zeichen +txt_checking='überprüfe' txt_wait='bitte warten...' txt_existing='vorhandenen' txt_ssh_profiles="SSH $txt_profiles" @@ -46,6 +47,9 @@ txt_LOAD="UPLOAD" txt_tc="Toolchain" txt_tpl="Vorlage" txt_lib="Bibliothek" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protokoll" # menu txt txt_remove_menu="$txt_tc entfernen" @@ -134,6 +138,15 @@ txt_s3tup_menu_command_label_edit="Bearbeiten" txt_s3tup_menu_command_label_yes="Ja" txt_s3tup_menu_command_label_no="Nein" +txt_s3tup_msg_update_hint="wird aktualisiert..." +txt_s3tup_msg_update_restart="Starte neu" +txt_s3tup_msg_update_current="ist aktuell" +txt_s3tup_msg_update_s3update_required="Bitte aktualisieren Sie zuerst Ihre simplebuild3-Installation!" +txt_s3tup_msg_update_directory_unversioned="Update nicht möglich, da das Installationsverzeichnis nicht SVN- oder GIT-versioniert ist!" +txt_s3tup_msg_update_pending="Update ausstehend" +txt_s3tup_msg_update_not_required="kein Update erforderlich" +txt_s3tup_msg_update_finished="Update abgeschlossen auf Version:" +txt_s3tup_msg_update_log="Aktualisierung Plugin Log" txt_s3tup_msg_syscheck1="Bitte warten während die Abhängigkeiten überprüft werden..." txt_s3tup_msg_syscheck2="Um dieses Plugin ordnungsgemäß verwenden zu können, müssen folgende Pakete manuell installiert werden:" txt_s3tup_msg_reset_config1="Verschiebe vorhandene Konfigurationsdatei..." @@ -163,6 +176,9 @@ txt_s3tup_msg_ctng_setup_cleanup="Bereinigung des Verzeichnisses" txt_s3tup_msg_fng_setup_log="Installation freetz-NG Log" txt_s3tup_msg_fng_setup_commandlist="Befehlszeilen zur Installation von" txt_s3tup_msg_fng_setup_cleanup="Bereinigung des Verzeichnisses" +txt_s3tup_msg_andk_setup_log="Installation Android NDK Log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="Datei ist nicht lesbar:" txt_s3tup_msg_extract_extension_unknown="Unbekannte Dateierweiterung:" txt_s3tup_msg_gtp_missing="Beschreibung fehlt" @@ -196,7 +212,7 @@ txt_s3tup_menu_library_title="${txt_lib} Aktualisierung Menü" txt_s3tup_menu_library_text1="Wählen Sie alle zu aktualisierenden ${txt_lib}en im SYSROOT-Verzeichnis der ${txt_tc} aus:" txt_s3tup_menu_library_text2=" ${txt_lib} Version NEU AKTUELL" #56 chars txt_s3tup_menu_library_notfound="Keine ${txt_lib}en gefunden" -txt_s3tup_menu_library_wrong_selection="Integrieren Sie nicht dieselbe Bibliothek mit verschiedene Versionen!" +txt_s3tup_menu_library_wrong_selection="Integrieren Sie nicht dieselbe Bibliothek mit verschiedenen Versionen!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl}n Menü" txt_s3tup_menu_template_text1="Wählen Sie eine der" @@ -222,5 +238,6 @@ txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup von" txt_s3tup_menu_build_library_title="Erstelle" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Herunterladen von" txt_s3tup_menu_compress_title="Komprimiere Cross ${txt_tc}" diff --git a/support/translation/en b/support/translation/en index c3e60bd..a3eba02 100644 --- a/support/translation/en +++ b/support/translation/en @@ -26,6 +26,7 @@ txt_found='found' txt_create='create' txt_conf='configuration' txt_extracting='extracting' #10 chars +txt_checking='checking' txt_wait='please wait...' txt_existing='exists' txt_profiles='profiles' @@ -38,6 +39,9 @@ txt_update='now updating' txt_tc="Toolchain" txt_tpl="Template" txt_lib="Library" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" txt_ssh_profiles="SSH $txt_profiles" # menu txt @@ -125,6 +129,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." diff --git a/support/translation/es b/support/translation/es index daca04f..f5024fd 100644 --- a/support/translation/es +++ b/support/translation/es @@ -21,6 +21,7 @@ txt_found='encontrado'; txt_create='crear'; txt_conf='configuracion'; txt_extracting='extrayendo'; #10 chars +txt_checking='checking'; txt_wait='esperar...'; txt_existing='existe'; txt_profiles='perfiles'; @@ -33,6 +34,9 @@ txt_update='refrescando'; txt_tc="Toolchain"; txt_tpl="Modelo" txt_lib="Biblioteca" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" # menu txt txt_start_menu='menu principal'; @@ -113,6 +117,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." @@ -120,35 +133,38 @@ txt_s3tup_msg_reset_config2="config file backup=" txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." txt_s3tup_msg_reset_config4="config file=" txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" +txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc,,} build process was aborted because it must not run as root!" +txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc,,}s as root and you know what you are doing,\n you can force it with the following command:" txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" +txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc,,} log" +txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc,,} creation" +txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc,,}:" +txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc,,}:" txt_s3tup_msg_cross_migrations_renamed="was renamed to" txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" +txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc,,}s are out of date due to the renaming of cross ${txt_tc,,} ${txt_tpl,,}s:" txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" -txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" +txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc,,}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc,,} ${txt_tpl,,}s${re_} to get future ${txt_tpl,,} updates.\nThe ${y_l}old cross ${txt_tc,,}s${re_} can be removed manually as follows:" +txt_s3tup_msg_build_library_log="updating ${txt_lib,,} log" txt_s3tup_msg_build_library_commandlist="build command list for" txt_s3tup_msg_build_library_error="ERRORS on build found, details:" txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" txt_s3tup_msg_ctng_setup_commandlist="build command list for" txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" +txt_s3tup_msg_fng_setup_log="installing freetz-NG log" +txt_s3tup_msg_fng_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_fng_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="file is unreadable:" txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" txt_s3tup_msg_gtp_missing="missing description" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" txt_s3tup_msg_paktc="Press any key to continue" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -166,24 +182,24 @@ txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic con txt_s3tup_menu_toolchain_title="${txt_tc} Menu" txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" +txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc,,}s that you want to update:" +txt_s3tup_menu_toolchain_notfound="no ${txt_tc,,}s found" txt_s3tup_menu_toolchain_folder="$txt_tc folder:" txt_s3tup_menu_toolchain_config="config file:" txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars +txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc,,}'s SYSROOT folder:" +txt_s3tup_menu_library_text2=" ${txt_lib,,} version NEW CURRENT" #56 chars txt_s3tup_menu_library_notfound="no libraries found" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" +txt_s3tup_menu_template_text2="${txt_tpl,,}s to create the cross ${txt_tc,,} you want:" txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text4="If you create a cross ${txt_tc,,} from a ${txt_tpl,,} with a red colored description, an existing one with the same name will be replaced without asking!" +txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl,,} is higher than the existing ${txt_tc,,}. An update could make sense." +txt_s3tup_menu_template_notfound="no ${txt_tpl,,}s found" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -194,11 +210,12 @@ txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc,,} ${txt_tpl,,} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/fr b/support/translation/fr index 63ca77c..d26e26d 100644 --- a/support/translation/fr +++ b/support/translation/fr @@ -5,6 +5,10 @@ txt_tc="Toolchain" txt_tpl="Modèle" txt_lib="Bibliothèque" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" +txt_checking='checking' txt_create='crée dans'; txt_bmenu_user="Utilisateur "; txt_bmenu_comp="Compilateur "; @@ -165,6 +169,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." @@ -172,35 +185,38 @@ txt_s3tup_msg_reset_config2="config file backup=" txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." txt_s3tup_msg_reset_config4="config file=" txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" +txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc,,} build process was aborted because it must not run as root!" +txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc,,}s as root and you know what you are doing,\n you can force it with the following command:" txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" +txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc,,} log" +txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc,,} creation" +txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc,,}:" +txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc,,}:" txt_s3tup_msg_cross_migrations_renamed="was renamed to" txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" +txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc,,}s are out of date due to the renaming of cross ${txt_tc,,} ${txt_tpl,,}s:" txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" -txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" +txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc,,}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc,,} ${txt_tpl,,}s${re_} to get future ${txt_tpl,,} updates.\nThe ${y_l}old cross ${txt_tc,,}s${re_} can be removed manually as follows:" +txt_s3tup_msg_build_library_log="updating ${txt_lib,,} log" txt_s3tup_msg_build_library_commandlist="build command list for" txt_s3tup_msg_build_library_error="ERRORS on build found, details:" txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" txt_s3tup_msg_ctng_setup_commandlist="build command list for" txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" +txt_s3tup_msg_fng_setup_log="installing freetz-NG log" +txt_s3tup_msg_fng_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_fng_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="file is unreadable:" txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" txt_s3tup_msg_gtp_missing="missing description" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" txt_s3tup_msg_paktc="Press any key to continue" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -218,24 +234,24 @@ txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic con txt_s3tup_menu_toolchain_title="${txt_tc} Menu" txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" +txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc,,}s that you want to update:" +txt_s3tup_menu_toolchain_notfound="no ${txt_tc,,}s found" txt_s3tup_menu_toolchain_folder="$txt_tc folder:" txt_s3tup_menu_toolchain_config="config file:" txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars +txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc,,}'s SYSROOT folder:" +txt_s3tup_menu_library_text2=" ${txt_lib,,} version NEW CURRENT" #56 chars txt_s3tup_menu_library_notfound="no libraries found" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" +txt_s3tup_menu_template_text2="${txt_tpl,,}s to create the cross ${txt_tc,,} you want:" txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text4="If you create a cross ${txt_tc,,} from a ${txt_tpl,,} with a red colored description, an existing one with the same name will be replaced without asking!" +txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl,,} is higher than the existing ${txt_tc,,}. An update could make sense." +txt_s3tup_menu_template_notfound="no ${txt_tpl,,}s found" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -246,11 +262,12 @@ txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc,,} ${txt_tpl,,} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/it b/support/translation/it index 1d4c919..6e463c0 100644 --- a/support/translation/it +++ b/support/translation/it @@ -5,6 +5,10 @@ txt_tc="toolchain" txt_tpl="Modello" txt_lib="Biblioteca" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" +txt_checking='checking' txt_create='creato in'; txt_bmenu_user="Nome utente "; txt_bmenu_comp="Compilatore "; @@ -83,7 +87,7 @@ txt_configure_menu1="Moduli, Protocolli, Lettori, Carten e Driver per Reader"; txt_configure_menu2="Caratteristiche (USB/PCSC/PACK/PATCH/STAPI/COOLAPI/COMPRESS)"; txt_configure_menu3="Configurazioni standard- impostazione directory"; txt_configure_menu4="Librerie standard- impostazione directory"; -txt_configure_menu6="eigene oscam Endung verwenden"; +txt_configure_menu6="Usa proropia estensione"; txt_configure_menu7="Salvare e tornare al menu di compilazione"; txt_cmdline1="Revisions Checkout"; txt_cmdline2="Trunk Checkout"; @@ -132,7 +136,7 @@ txt_cedit1="Rimuovi il file .debug"; txt_cedit2="Controlla i Toolchains installati"; txt_cedit3="Attiva AUTO PATCH SYSTEM"; txt_cedit4="Attiva Update Check"; -txt_cedit5="SCRIPT mit maximalen Infos beim bau"; +txt_cedit5="SCRIPT con la massima informazione durante la compilazione"; txt_revcheck1="CONTROLLO_UPDATE"; txt_revcheck2="Controllo versione ONLINE di Oscam"; txt_revcheck3="Versione trovata:"; @@ -165,8 +169,8 @@ txt_firstmenu_continue="Continua con SVN locale" txt_bmenu_title="Creare menu" txt_bmenu_user="username " txt_bmenu_comp="compiler " - txt_bmenu_debu="debug info " - txt_bmenu_use="USE_variables " + txt_bmenu_debu="informazioni di debug " + txt_bmenu_use="USA_variable " txt_bmenu_build="Crea file bin Oscam" txt_bmenu_config="Oscam/crea configurazione" txt_bmenu_update="Installa/aggiorna librerie" @@ -175,59 +179,71 @@ txt_firstmenu_continue="Continua con SVN locale" txt_bmenus_profile="Salva profilo $txt_profiles $txt_save" txt_bmenu_log="Mostra lastbuild.log" txt_bmenu_back="Torna alla selezione della toolchain" - txt_compress1="filesize before " - txt_compress2="filesize after " - txt_compress3="filesize reduced to " + txt_compress1="dimensione del file prima " + txt_compress2="dimensione del file dopo " + txt_compress3="dimensione del file ridotta a " # _plugin_update_toolchain ############################################# -txt_s3tup_menu_command_label_exit="Exit" -txt_s3tup_menu_command_label_back="Back" -txt_s3tup_menu_command_label_create="Create" -txt_s3tup_menu_command_label_update="Update" +txt_s3tup_menu_command_label_exit="Esci" +txt_s3tup_menu_command_label_back="Torna" +txt_s3tup_menu_command_label_create="Crea" +txt_s3tup_menu_command_label_update="Aggiorna" txt_s3tup_menu_command_label_backup="Backup" -txt_s3tup_menu_command_label_start="Start" +txt_s3tup_menu_command_label_start="Avvia" txt_s3tup_menu_command_label_info="Info" -txt_s3tup_menu_command_label_setup="Setup" -txt_s3tup_menu_command_label_edit="Edit" -txt_s3tup_menu_command_label_yes="Yes" +txt_s3tup_menu_command_label_setup="Impostazioni" +txt_s3tup_menu_command_label_edit="Modifica" +txt_s3tup_menu_command_label_yes="Si" txt_s3tup_menu_command_label_no="No" -txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." -txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" -txt_s3tup_msg_reset_config1="Moving existing config file..." -txt_s3tup_msg_reset_config2="config file backup=" -txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" +txt_s3tup_msg_syscheck1="Attendi mentre eseguo i controlli degli strumenti e delle dipendenze richiesti ..." +txt_s3tup_msg_syscheck2="È necessario installare manualmente i seguenti pacchetti per utilizzare correttamente questo plugin:" +txt_s3tup_msg_reset_config1="Spostamento del file di configurazione esistente ..." +txt_s3tup_msg_reset_config2="backup del file di configurazione=" +txt_s3tup_msg_reset_config3="Creazione di un nuovo file di configurazione. Attendere..." txt_s3tup_msg_reset_config4="config file=" -txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" -txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" -txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" -txt_s3tup_msg_cross_migrations_renamed="was renamed to" -txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" -txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" +txt_s3tup_msg_reset_config5="Puoi modificarli / estenderli per adattarli alle tue esigenze." +txt_s3tup_msg_buildasroot_error1="Il processo di build incrociato ${txt_tc} è stato interrotto perché non deve essere eseguito come root!" +txt_s3tup_msg_buildasroot_error2="Se sei consapevole del pericolo di costruire $ {txt_tc} s come root e sai cosa stai facendo, \ n puoi forzarlo con il seguente comando:" +txt_s3tup_msg_toolchain_exists="${txt_tc} esiste già!" +txt_s3tup_msg_library_not_found="${txt_lib} non trovato nel file di configurazione!" +txt_s3tup_msg_cross_toolchain_log="creazione di un log incrociato ${txt_tc}" +txt_s3tup_msg_cross_toolchain_commandlist="lista dei comandi per la creazione incrociata ${txt_tc}" +txt_s3tup_msg_cross_toolchain_library_detection="Le seguenti librerie sono state rilevate nella ${txt_tc} esistente:" +txt_s3tup_msg_cross_toolchain_library_integration="Le seguenti librerie saranno ora integrate in ${txt_tc}:" +txt_s3tup_msg_cross_migrations_renamed="rinominato in" +txt_s3tup_msg_cross_migrations_remove="Rimuovere ${txt_tc}" +txt_s3tup_msg_cross_migrations_outdated="Le seguenti croci ${txt_tc} non sono aggiornate a causa della ridenominazione di ${txt_tc} ${txt_tpl} s:" +txt_s3tup_msg_cross_migrations_outdated2="I seguenti ${txt_tc ,,} ${txt_conf} non sono aggiornati a causa della correzione di alcuni parametri e vengono corretti automaticamente:" txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" -txt_s3tup_msg_build_library_commandlist="build command list for" -txt_s3tup_msg_build_library_error="ERRORS on build found, details:" -txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" -txt_s3tup_msg_ctng_setup_commandlist="build command list for" -txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_extract_file_unreadable="file is unreadable:" -txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" -txt_s3tup_msg_gtp_missing="missing description" +txt_s3tup_msg_build_library_log="aggiornamento ${txt_lib} log" +txt_s3tup_msg_build_library_commandlist="costruisco elenco di comandi per" +txt_s3tup_msg_build_library_error="ERRORI su costruzione trovati, dettagli:" +txt_s3tup_msg_ctng_setup_log="installo crosstool-NG log" +txt_s3tup_msg_ctng_setup_commandlist="costruisco elenco di comandi per" +txt_s3tup_msg_ctng_setup_cleanup="Pulisco la cartella sorgente" +txt_s3tup_msg_fng_setup_log="installo freetz-ng log" +txt_s3tup_msg_fng_setup_commandlist="costruisco elenco di comandi per" +txt_s3tup_msg_fng_setup_cleanup="Pulisco la cartella sorgente" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_extract_file_unreadable="il file è illeggibile:" +txt_s3tup_msg_extract_extension_unknown="estensione del file non riconosciuta:" +txt_s3tup_msg_gtp_missing="descrizione mancante" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" -txt_s3tup_msg_paktc="Press any key to continue" +txt_s3tup_msg_paktc="Premi un tasto per continuare" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -244,25 +260,25 @@ txt_s3tup_msg_create_config_template_not_found="Template file not found. Please txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic config file generation is not possible. Please install it first:" txt_s3tup_menu_toolchain_title="${txt_tc} Menu" -txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" -txt_s3tup_menu_toolchain_folder="$txt_tc folder:" -txt_s3tup_menu_toolchain_config="config file:" +txt_s3tup_menu_toolchain_text1="Seleziona uno dei" +txt_s3tup_menu_toolchain_text2="installati tra i ${txt_tc} che desideri aggiornare:" +txt_s3tup_menu_toolchain_notfound="non ${txt_tc}s trovato" +txt_s3tup_menu_toolchain_folder="$txt_tc cartella:" +txt_s3tup_menu_toolchain_config="file di configurazione:" -txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars -txt_s3tup_menu_library_notfound="no libraries found" +txt_s3tup_menu_library_title="${txt_lib} Menu di aggiornamento" +txt_s3tup_menu_library_text1="Seleziona tutte le librerie in cui aggiornare ${txt_tc}'s SYSROOT cartella:" +txt_s3tup_menu_library_text2=" ${txt_lib} versione nuova ATTUALE" #56 chars +txt_s3tup_menu_library_notfound="nessuna libreria trovata" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" -txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" -txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text1="Seleziona uno dei file" +txt_s3tup_menu_template_text2="${txt_tpl}s per creare la $ {txt_tc} che desideri:" +txt_s3tup_menu_template_text3="NOTA:" +txt_s3tup_menu_template_text4="Se crei una $ {txt_tc} da $ {txt_tpl} con una descrizione di colore rosso, una esistente con lo stesso nome verrà sostituita senza chiedere!" +txt_s3tup_menu_template_text5="Le descrizioni di colore rosso scuro indicano che la versione di $ {txt_tpl} è superiore all'attuale $ {txt_tc}. Un aggiornamento potrebbe essere utile." +txt_s3tup_menu_template_notfound="no ${txt_tpl}s trovato" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -272,12 +288,13 @@ txt_s3tup_menu_info_include="Include: " #11 chars txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" -txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_title="Salva ${txt_tc} ${txt_tpl}" +txt_s3tup_menu_edit_text="Vuoi \ZrSAVE\ZR questo ${txt_tc} ${txt_tpl} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/nl b/support/translation/nl index f74c197..f6fa1ed 100644 --- a/support/translation/nl +++ b/support/translation/nl @@ -27,6 +27,7 @@ txt_profiles='Profielen'; txt_conf='Configuratie'; txt_parameter='Parameter'; txt_extracting=' uitpakken'; #10 +txt_checking='checking'; txt_wait='momentje...'; txt_existing='bestaande'; txt_ssh_profiles='SSH $txt_profiles'; @@ -44,6 +45,9 @@ txt_LOAD="UPLOAD"; txt_tc="Toolchain"; txt_tpl="Sjabloon" txt_lib="Bibliotheek" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" # menu txt txt_remove_menu='$txt_tc verwijderen'; @@ -128,6 +132,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." @@ -135,35 +148,38 @@ txt_s3tup_msg_reset_config2="config file backup=" txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." txt_s3tup_msg_reset_config4="config file=" txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" +txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc,,} build process was aborted because it must not run as root!" +txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc,,}s as root and you know what you are doing,\n you can force it with the following command:" txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" +txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc,,} log" +txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc,,} creation" +txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc,,}:" +txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc,,}:" txt_s3tup_msg_cross_migrations_renamed="was renamed to" txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" +txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc,,}s are out of date due to the renaming of cross ${txt_tc,,} ${txt_tpl,,}s:" txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" -txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" +txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc,,}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc,,} ${txt_tpl,,}s${re_} to get future ${txt_tpl,,} updates.\nThe ${y_l}old cross ${txt_tc,,}s${re_} can be removed manually as follows:" +txt_s3tup_msg_build_library_log="updating ${txt_lib,,} log" txt_s3tup_msg_build_library_commandlist="build command list for" txt_s3tup_msg_build_library_error="ERRORS on build found, details:" txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" txt_s3tup_msg_ctng_setup_commandlist="build command list for" txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" +txt_s3tup_msg_fng_setup_log="installing freetz-NG log" +txt_s3tup_msg_fng_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_fng_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="file is unreadable:" txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" txt_s3tup_msg_gtp_missing="missing description" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" txt_s3tup_msg_paktc="Press any key to continue" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -181,24 +197,24 @@ txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic con txt_s3tup_menu_toolchain_title="${txt_tc} Menu" txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" +txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc,,}s that you want to update:" +txt_s3tup_menu_toolchain_notfound="no ${txt_tc,,}s found" txt_s3tup_menu_toolchain_folder="$txt_tc folder:" txt_s3tup_menu_toolchain_config="config file:" txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars +txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc,,}'s SYSROOT folder:" +txt_s3tup_menu_library_text2=" ${txt_lib,,} version NEW CURRENT" #56 chars txt_s3tup_menu_library_notfound="no libraries found" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" +txt_s3tup_menu_template_text2="${txt_tpl,,}s to create the cross ${txt_tc,,} you want:" txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text4="If you create a cross ${txt_tc,,} from a ${txt_tpl,,} with a red colored description, an existing one with the same name will be replaced without asking!" +txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl,,} is higher than the existing ${txt_tc,,}. An update could make sense." +txt_s3tup_menu_template_notfound="no ${txt_tpl,,}s found" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -209,11 +225,12 @@ txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc,,} ${txt_tpl,,} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/pl b/support/translation/pl index 8e3eb5b..c460747 100644 --- a/support/translation/pl +++ b/support/translation/pl @@ -26,6 +26,7 @@ txt_profiles='profil'; txt_conf='kofiguracja'; txt_parameter='parametr'; txt_extracting=' rozpakuj'; #10 +txt_checking='checking'; txt_wait='proszę czekać ...'; txt_existing='istniejący'; txt_ssh_profiles='SSH Profile'; @@ -42,6 +43,9 @@ txt_LOAD="UPLOAD\przesłać"; txt_tc="Toolchain" txt_tpl="Szablon" txt_lib="Biblioteka" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" # menu txt txt_start_menu='menu główne'; @@ -128,6 +132,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." @@ -135,35 +148,38 @@ txt_s3tup_msg_reset_config2="config file backup=" txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." txt_s3tup_msg_reset_config4="config file=" txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" +txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc,,} build process was aborted because it must not run as root!" +txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc,,}s as root and you know what you are doing,\n you can force it with the following command:" txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" +txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc,,} log" +txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc,,} creation" +txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc,,}:" +txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc,,}:" txt_s3tup_msg_cross_migrations_renamed="was renamed to" txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" +txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc,,}s are out of date due to the renaming of cross ${txt_tc,,} ${txt_tpl,,}s:" txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" -txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" +txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc,,}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc,,} ${txt_tpl,,}s${re_} to get future ${txt_tpl,,} updates.\nThe ${y_l}old cross ${txt_tc,,}s${re_} can be removed manually as follows:" +txt_s3tup_msg_build_library_log="updating ${txt_lib,,} log" txt_s3tup_msg_build_library_commandlist="build command list for" txt_s3tup_msg_build_library_error="ERRORS on build found, details:" txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" txt_s3tup_msg_ctng_setup_commandlist="build command list for" txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" +txt_s3tup_msg_fng_setup_log="installing freetz-NG log" +txt_s3tup_msg_fng_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_fng_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="file is unreadable:" txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" txt_s3tup_msg_gtp_missing="missing description" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" txt_s3tup_msg_paktc="Press any key to continue" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -181,24 +197,24 @@ txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic con txt_s3tup_menu_toolchain_title="${txt_tc} Menu" txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" +txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc,,}s that you want to update:" +txt_s3tup_menu_toolchain_notfound="no ${txt_tc,,}s found" txt_s3tup_menu_toolchain_folder="$txt_tc folder:" txt_s3tup_menu_toolchain_config="config file:" txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars +txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc,,}'s SYSROOT folder:" +txt_s3tup_menu_library_text2=" ${txt_lib,,} version NEW CURRENT" #56 chars txt_s3tup_menu_library_notfound="no libraries found" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" +txt_s3tup_menu_template_text2="${txt_tpl,,}s to create the cross ${txt_tc,,} you want:" txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text4="If you create a cross ${txt_tc,,} from a ${txt_tpl,,} with a red colored description, an existing one with the same name will be replaced without asking!" +txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl,,} is higher than the existing ${txt_tc,,}. An update could make sense." +txt_s3tup_menu_template_notfound="no ${txt_tpl,,}s found" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -209,11 +225,12 @@ txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc,,} ${txt_tpl,,} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/pt b/support/translation/pt index a467ebd..fe72c7b 100644 --- a/support/translation/pt +++ b/support/translation/pt @@ -5,6 +5,10 @@ txt_tc="Toolchain" txt_tpl="Modelo" txt_lib="Biblioteca" +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" +txt_checking='checking' txt_create='criar em'; txt_bmenu_user="Utilizador "; txt_bmenu_comp="Compilador "; @@ -165,6 +169,15 @@ txt_s3tup_menu_command_label_edit="Edit" txt_s3tup_menu_command_label_yes="Yes" txt_s3tup_menu_command_label_no="No" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="Please wait while performing checks of required tools and dependencies..." txt_s3tup_msg_syscheck2="You need to manually install the following packages to use this plugin properly:" txt_s3tup_msg_reset_config1="Moving existing config file..." @@ -172,35 +185,38 @@ txt_s3tup_msg_reset_config2="config file backup=" txt_s3tup_msg_reset_config3="Creating new config file. Please wait..." txt_s3tup_msg_reset_config4="config file=" txt_s3tup_msg_reset_config5="You can change/extend them to fit your needs." -txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc} build process was aborted because it must not run as root!" -txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc}s as root and you know what you are doing,\n you can force it with the following command:" +txt_s3tup_msg_buildasroot_error1="The cross ${txt_tc,,} build process was aborted because it must not run as root!" +txt_s3tup_msg_buildasroot_error2="If you are aware of the danger of building ${txt_tc,,}s as root and you know what you are doing,\n you can force it with the following command:" txt_s3tup_msg_toolchain_exists="${txt_tc} already exists!" txt_s3tup_msg_library_not_found="${txt_lib} not found in config file!" -txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc} log" -txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc} creation" -txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc}:" -txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc}:" +txt_s3tup_msg_cross_toolchain_log="creating cross ${txt_tc,,} log" +txt_s3tup_msg_cross_toolchain_commandlist="command list for cross ${txt_tc,,} creation" +txt_s3tup_msg_cross_toolchain_library_detection="The following libraries were detected in the existing ${txt_tc,,}:" +txt_s3tup_msg_cross_toolchain_library_integration="The following libraries will now be integrated into the ${txt_tc,,}:" txt_s3tup_msg_cross_migrations_renamed="was renamed to" txt_s3tup_msg_cross_migrations_remove="Remove ${txt_tc}" -txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc}s are out of date due to the renaming of cross ${txt_tc} ${txt_tpl}s:" +txt_s3tup_msg_cross_migrations_outdated="The following cross ${txt_tc,,}s are out of date due to the renaming of cross ${txt_tc,,} ${txt_tpl,,}s:" txt_s3tup_msg_cross_migrations_outdated2="The following ${txt_tc,,} ${txt_conf}s are out of date due to the correction of some parameters and are corrected automatically:" -txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc} ${txt_tpl}s${re_} to get future ${txt_tpl} updates.\nThe ${y_l}old cross ${txt_tc}s${re_} can be removed manually as follows:" -txt_s3tup_msg_build_library_log="updating ${txt_lib} log" +txt_s3tup_msg_cross_migrations_hint="You can still use the ${y_l}old cross ${txt_tc,,}s${re_} from above, but it's better to create new ones based on the ${p_l}new cross ${txt_tc,,} ${txt_tpl,,}s${re_} to get future ${txt_tpl,,} updates.\nThe ${y_l}old cross ${txt_tc,,}s${re_} can be removed manually as follows:" +txt_s3tup_msg_build_library_log="updating ${txt_lib,,} log" txt_s3tup_msg_build_library_commandlist="build command list for" txt_s3tup_msg_build_library_error="ERRORS on build found, details:" txt_s3tup_msg_ctng_setup_log="installing crosstool-NG log" txt_s3tup_msg_ctng_setup_commandlist="build command list for" txt_s3tup_msg_ctng_setup_cleanup="Cleanup source directory" -txt_s3tup_msg_fng_setup_log="installing freetz-ng log" -txt_s3tup_msg_fng_setup_commandlist="build command list for" -txt_s3tup_msg_fng_setup_cleanup="Cleanup source directory" +txt_s3tup_msg_fng_setup_log="installing freetz-NG log" +txt_s3tup_msg_fng_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_fng_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="file is unreadable:" txt_s3tup_msg_extract_extension_unknown="unrecognized file extension:" txt_s3tup_msg_gtp_missing="missing description" txt_s3tup_msg_gtp_info="run \Zr<${txt_s3tup_menu_command_label_setup}>\ZR to show details" txt_s3tup_msg_paktc="Press any key to continue" txt_s3tup_msg_check_toolchain_empty="Parameter${w_l} ${txt_tc} not set!" -txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib} update not supported!" +txt_s3tup_msg_check_toolchain_not_supported="${txt_tc} ${txt_lib,,} update not supported!" txt_s3tup_msg_check_library_info1="Check for PCSC header files and try to symlink to the correct PCSC header files if the last compiler include path points to the wrong location..." txt_s3tup_msg_check_library_info2a="Symlink to the correct PCSC header files created." txt_s3tup_msg_check_library_info2b="No PCSC header files found in following folder and it's sub directories:" @@ -218,24 +234,24 @@ txt_s3tup_msg_create_config_jq_not_found="Without the package 'jq' automatic con txt_s3tup_menu_toolchain_title="${txt_tc} Menu" txt_s3tup_menu_toolchain_text1="Select one of the" -txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc}s that you want to update:" -txt_s3tup_menu_toolchain_notfound="no ${txt_tc}s found" +txt_s3tup_menu_toolchain_text2="installed cross ${txt_tc,,}s that you want to update:" +txt_s3tup_menu_toolchain_notfound="no ${txt_tc,,}s found" txt_s3tup_menu_toolchain_folder="$txt_tc folder:" txt_s3tup_menu_toolchain_config="config file:" txt_s3tup_menu_library_title="${txt_lib} Update Menu" -txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc}'s SYSROOT folder:" -txt_s3tup_menu_library_text2=" ${txt_lib} version NEW CURRENT" #56 chars +txt_s3tup_menu_library_text1="Select all libraries to update in ${txt_tc,,}'s SYSROOT folder:" +txt_s3tup_menu_library_text2=" ${txt_lib,,} version NEW CURRENT" #56 chars txt_s3tup_menu_library_notfound="no libraries found" txt_s3tup_menu_library_wrong_selection="Don't integrate the same library with different versions!" txt_s3tup_menu_template_title="Cross ${txt_tc} ${txt_tpl} Menu" txt_s3tup_menu_template_text1="Select one of the" -txt_s3tup_menu_template_text2="${txt_tpl}s to create the cross ${txt_tc} you want:" +txt_s3tup_menu_template_text2="${txt_tpl,,}s to create the cross ${txt_tc,,} you want:" txt_s3tup_menu_template_text3="NOTE:" -txt_s3tup_menu_template_text4="If you create a cross ${txt_tc} from a ${txt_tpl} with a red colored description, an existing one with the same name will be replaced without asking!" -txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl} is higher than the existing ${txt_tc}. An update could make sense." -txt_s3tup_menu_template_notfound="no ${txt_tpl}s found" +txt_s3tup_menu_template_text4="If you create a cross ${txt_tc,,} from a ${txt_tpl,,} with a red colored description, an existing one with the same name will be replaced without asking!" +txt_s3tup_menu_template_text5="Dark red colored descriptions indicates that the version of the ${txt_tpl,,} is higher than the existing ${txt_tc,,}. An update could make sense." +txt_s3tup_menu_template_notfound="no ${txt_tpl,,}s found" txt_s3tup_menu_info_toolchain="${txt_tc}: " #11 chars txt_s3tup_menu_info_compiler="Compiler: " #11 chars @@ -246,11 +262,12 @@ txt_s3tup_menu_info_library="Configuration:" txt_s3tup_menu_info_build="command list:" txt_s3tup_menu_edit_title="Save Cross ${txt_tc} ${txt_tpl}" -txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc} ${txt_tpl} \Zrnow\ZR?" +txt_s3tup_menu_edit_text="Would you like to \ZrSAVE\ZR this ${txt_tc,,} ${txt_tpl,,} \Zrnow\ZR?" txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup" txt_s3tup_menu_build_library_title="Build" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Downloading" -txt_s3tup_menu_compress_title="Compress cross ${txt_tc}" +txt_s3tup_menu_compress_title="Compress cross ${txt_tc,,}" diff --git a/support/translation/tr b/support/translation/tr index 6ada5dc..e9add12 100644 --- a/support/translation/tr +++ b/support/translation/tr @@ -27,6 +27,7 @@ txt_profiles='Profiller'; txt_conf='yapılandırma'; txt_parameter='Parametre'; txt_extracting='ayıklanıyor'; #10karakter +txt_checking='checking'; txt_wait='lütfen bekleyin...'; txt_existing='var'; txt_ssh_profiles="SSH $txt_profiles"; @@ -44,6 +45,9 @@ txt_LOAD="UPLOAD"; txt_tc="toolchain"; txt_tpl="şablon"; txt_lib="Kütüphane"; +txt_repo="Repository" +txt_branch="Branch" +txt_proto="Protocol" # menu txt txt_start_menu='Ana menü'; @@ -131,6 +135,15 @@ txt_s3tup_menu_command_label_edit="Düzenlemek için" txt_s3tup_menu_command_label_yes="evet" txt_s3tup_menu_command_label_no="hayir" +txt_s3tup_msg_update_hint="is being updated..." +txt_s3tup_msg_update_restart="Restarting" +txt_s3tup_msg_update_current="is up to date" +txt_s3tup_msg_update_s3update_required="Please update your simplebuild3 installation first!" +txt_s3tup_msg_update_directory_unversioned="Update not possible because the installation directory is not SVN or GIT versioned!" +txt_s3tup_msg_update_pending="update pending" +txt_s3tup_msg_update_not_required="no update required" +txt_s3tup_msg_update_finished="Update completed to version:" +txt_s3tup_msg_update_log="updating plugin log" txt_s3tup_msg_syscheck1="baglanti uygulana kadar lütfen bekleyiniz ..." txt_s3tup_msg_syscheck2="bu plugini düzgün kullanmak için,aşağıdaki paketlerin manuel olarak yüklenmesi gerekir:" txt_s3tup_msg_reset_config1="Hareket Yapılandırma dosyası..." @@ -160,6 +173,9 @@ txt_s3tup_msg_ctng_setup_cleanup="rehber temizleniyor" txt_s3tup_msg_fng_setup_log="Kurulum freetz-NG Log" txt_s3tup_msg_fng_setup_commandlist="kurulum" txt_s3tup_msg_fng_setup_cleanup="dosya temizleniyor " +txt_s3tup_msg_andk_setup_log="installing Android NDK log" +txt_s3tup_msg_andk_setup_commandlist="${txt_s3tup_msg_ctng_setup_commandlist}" +txt_s3tup_msg_andk_setup_cleanup="${txt_s3tup_msg_ctng_setup_cleanup}" txt_s3tup_msg_extract_file_unreadable="dosya okunamıyor:" txt_s3tup_msg_extract_extension_unknown="bilinmeyen dosya hatası oluştu:" txt_s3tup_msg_gtp_missing="açıklama eksik" @@ -218,5 +234,6 @@ txt_s3tup_menu_backup_title="$txt_s3tup_menu_command_label_backup von" txt_s3tup_menu_build_library_title="Oluşturmak" txt_s3tup_menu_ctng_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_fng_setup_title="$txt_s3tup_menu_command_label_setup" +txt_s3tup_menu_andk_setup_title="$txt_s3tup_menu_command_label_setup" txt_s3tup_menu_download_title="Şuradan indir" txt_s3tup_menu_compress_title="özetlemek Cross ${txt_tc}"