SDRausty / TermuxArch

You can use setupTermuxArch.bash 📲 to install Arch Linux in Amazon, Android, Chromebook and Windows. https://sdrausty.github.io/TermuxArch/docs/install
https://sdrausty.github.io/TermuxArch/
Other
1.43k stars 162 forks source link

Install Failed! #116

Closed calheiros closed 6 years ago

calheiros commented 6 years ago

necessaryfunctions.sh: line 356: ro.build.target_country: command not found

TermuxArch WARNING: Generated script signal 201 near or at line number 356 by _LANG="$(ro.build.target_country)"!

setupTermuxArch.sh v1.6 id5659: (Exit Signal 201) DONE 🏁

SDRausty commented 6 years ago

@calheiros can you post the output of getprop?

$ getprop > file
$ cat file
SDRausty commented 6 years ago

_LANG="$(ro.build.target_country 2>/dev/null) is updated; see whether this change let's the install continue.

calheiros commented 6 years ago

getprop output:

`[audioflinger.bootsnd]: [0]

[gsm.version.ril-impl]: [Samsung RIL v3.0]

[persist.sys.drs.date]: [Fri Apr 20 02:29:23 KST 2018]

[ril.hw_ver2]: [MP 0.400] [ril.hw_ver]: [MP 0.400] [ril.model_id2]: [BASE Version: ] [ril.model_id]: [BASE Version: ]

[ro.build.date]: [Fri Apr 20 02:29:23 KST 2018] [ro.build.description]: [j3xlteub-user 5.1.1 LMY47V J320MUBU0ARD1 release-keys]

[sec.fle.encryption.status]: [Dec NewFile IncludeMedia]

[sys.symlink.umts_router]: [/dev/pts/1 /dev/umts_router]

`

calheiros commented 6 years ago

Fail again with: TermuxArch WARNING: Generated script signal 201 near or at line number 358 by _LANG="$(ro.build.target_country 2>/dev/null)"!

calheiros commented 6 years ago

I don't understand, because I was already installed a few months ago.

SDRausty commented 6 years ago

was already installed a few months ago.

I shall be glad to explain; This feature is being developed: _setlanguage() { _LANG="$(getprop gsm.sim.operator.iso-country)" _LANGU="${_LANG:2:1}" if [[ "$_LANGU" != "-" ]];then _LANG="$(getprop ro.product.locale)" _LANGU="${_LANG:2:1}" fi if [[ "$_LANGU" != "-" ]];then _LANG="$(getprop persist.sys.locale)" _LANGU="${_LANG:2:1}" fi if [[ "$_LANGU" != "-" ]];then _LANG="$(ro.build.target_country 2>/dev/null)" _LANGU="${_LANG:2:1}" fi if [[ "$_LANGU" != "-" ]];then _LANG="$(en-US)" fi _LANGUAGE="${LANG//-/}" } _setlanguage

Your Arch Linux in Termux PRoot should have locales set to one of these:

[persist.sys.language]: [pt]
[ro.product.locale.language]: [en]                                                       
[ro.product.locale.region]: [GB]                                                       
[user.language]: [pt]                                                                   
[user.region]: [BR]

Or similar (see _setlanguage()), but it does not. While I ponder upon a solution, can you post the output of setupTermuxArch.sh sysinfo from this device please? Also, are you running a custom or stock ROM?

SDRausty commented 6 years ago

@calheiros which locale would you prefer to use with Arch upon default install?

#pt_BR.UTF-8 UTF-8
#pt_BR ISO-8859-1

Or:

#en_GB.UTF-8 UTF-8                                                                        
#en_GB ISO-8859-1
SDRausty commented 6 years ago

@calheiros, this https://github.com/sdrausty/TermuxArch/commit/17b48617917885cb4d77ce177dd24d7609103890 commit which creates version v1.6 id8370 should resolve the installation trouble you have encountered.

SDRausty commented 6 years ago

This https://github.com/sdrausty/TermuxArch/commit/10898766b2d22d253ad71cc67298a40f15209e93 commit should bring all inline; TermuxArch should perform as expected with locale configured at install.

Este https://github.com/sdrausty/TermuxArch/commit/10898766b2d22d253ad71cc67298a40f15209e93 commit deve trazer tudo em linha; O TermuxArch deve funcionar como esperado com a localização configurada na instalação no seu dispositivo.

SDRausty commented 6 years ago

_setlocale() absorbed _setlanguage() during the process of refinement of this installation BASH script; and all should be well.

_setlocale() absorveu _setlanguage() durante o processo de refinamento deste script BASH de instalação; e tudo deve estar bem.

calheiros commented 6 years ago

$ ./setupTermuxArch.sh sysinfo

Setting mode to sysinfo.

🕛 > 🕛 setupTermuxArch v1.6 id9152 shall create a system information file. Ensure background data is not restricted. Run bash setupTermuxArch.sh help for additional information. Check the wireless connection if you do not see one o'clock 🕐 below. Checking prerequisites…

Using wget to manage downloads.

🕛 > 🕧 Prerequisites: OK Downloading TermuxArch…

touch: /data/data/com.termux/files/home/arch/etc/locale.gen: No such file or directory

TermuxArch WARNING: Generated script signal 1 near or at line number 357 by touch "$installdir"/etc/locale.gen!

setupTermuxArch.sh sysinfo v1.6 id9152: (Exit Signal 201) DONE 🏁

calheiros commented 6 years ago

I managed to install using the version /TermuxArch/scripts/files/stable/v1.6.

SDRausty commented 6 years ago

I am glad that you managed to install 🚀🛰️🛎️ Feel free to try setupTermuxArch.sh r for a quick system refresh; It should set localization in Arch Linux to Portuguese based on your settings once a new version is released. Version v1.6 id9152 was thoroughly tested before release; When running:

touch /data/data/com.termux/files/home/arch/etc/locale.gen

From CLI, what is the output?

SDRausty commented 6 years ago

@calheiros a small change can sometimes go a long way, and hopefully this https://github.com/sdrausty/TermuxArch/commit/72ff50e7f9b495e58ca8c602c7914616f0c06f1d commit is one of these small changes. Version v1.6 id3780 is performing fine installing well past this touch glitch we encountered.

I managed to reproduce the warning, and it appears that it was a breeze to find and repair. Can you localise the printf statements into Portuguese?

$ cd ~/TermuxArchBloom
$ grep printf *
## zip trough https://translate.google.com (employ reverse translation feature, and shorten sentences if required).
$ cd ..
$ tar czvf pt_BRlocales4TermuxArch.tar.gz  ~/TermuxArchBloom/*

Feel free to try setupTermuxArch.sh r for a quick system refresh; It should set localization in Arch Linux to Portuguese based on your settings. Enjoy 🏖️

calheiros commented 6 years ago

When running touch /data/data/com.termux/files/home/arch/etc/locale.gen output is null.

SDRausty commented 6 years ago

Intall went fine; refresh did not. This https://github.com/sdrausty/TermuxArch/commit/1994f51094daeadc1cda8bc5e8051f5bc86739df commit makes a second small change; This change is basically the same as the first one. The only difference is that it is on the refresh routine. The first small adjustment was in the install routine. Please try setupTermuxArch.sh r for a short refresh. The current version is v1.6 id3107 ♨ and it is humming.

SDRausty commented 6 years ago

output is null.

This is correct. When touch touches there should not be any output. Thank you for sharing.

calheiros commented 6 years ago

When running ./setupTermuxArch.sh r

necessaryfunctions.sh: line 364: _LANGUAGE: unbound variable setupTermuxArch.sh r v1.6 id3107: (Exit Signal 1) DONE 🏁

calheiros commented 6 years ago

I'm using Stock ROM.

SDRausty commented 6 years ago

The most recent version v1.6 id4500 takes care of this newly arisen error:

_LANGUAGE: unbound variable

It is interesting how errors crop up out of nowhere; Try ./setupTermuxArch.sh r once more for a quick refresh ⏳ Hopefully this new feature will finally work on your device as well as it does on mine. It is quite amazing:

To generate locales in a preferred language, you can use Settings > Language & keyboard > Language in Android. Then run setupTermuxArch.sh r for a quick system refresh.

SDRausty commented 6 years ago
TermuxArch v1.6 id4195 integrity: OK

 🕛 > 🕑 TermuxArch configuration /data/data/com.termux/files/home/setupTermuxArchConfigs.sh loaded: OK

Setting locales to: Language >> pt_PT << Region

 🕛 > 🕒 Activating termux-wake-lock: DONE

It seems that Arch Linux is in want of Portuguese translation:

user and the user's home directory.

$ man
What manual page do you want?
$ man man
$ export
declare -x HOME="/root"
declare -x LANG="pt_PT.UTF-8"
declare -x LANGUAGE="pt_PT.UTF-8"
declare -x LC_ADDRESS="pt_PT.UTF-8"
declare -x LC_COLLATE="pt_PT.UTF-8"
declare -x LC_CTYPE="pt_PT.UTF-8"
declare -x LC_IDENTIFICATION="pt_PT.UTF-8"
declare -x LC_MEASUREMENT="pt_PT.UTF-8"
declare -x LC_MESSAGES="pt_PT.UTF-8"
declare -x LC_MONETARY="pt_PT.UTF-8"
declare -x LC_NAME="pt_PT.UTF-8"
declare -x LC_NUMERIC="pt_PT.UTF-8"
declare -x LC_PAPER="pt_PT.UTF-8"
declare -x LC_TELEPHONE="pt_PT.UTF-8"
declare -x LC_TIME="pt_PT.UTF-8"
declare -x OLDPWD

Possibly?

calheiros commented 6 years ago

How wonderful! Now it's working perfectly. Yesterday even I had already changed the language to Portuguese manually, but now that the script is working perfectly on my device I'm very happy. Thank you so much for your hard work :)

calheiros commented 6 years ago

After running ./setupTermuxArch r the file /etc/moto had the content modified. Was that intentional? Anyway I edited it to simply printf "\n".

SDRausty commented 6 years ago

Thank you so much for your hard work :)

You are quite welcome; If you wish to hush the login and logout messages, simply run ch:

 $ ch

==> Running TermuxArch ch  gen.v1.6 id65439534019…

/home/user/.hushlogin  /home/user/.hushlogout

TermuxArch ch  gen.v1.6 id654395340198: DONE 🏁
calheiros commented 6 years ago

I see, but look at this screenshot tell me if this exit message was intentional. I don't think so.

screenshot_2018-09-03-20-00-35

SDRausty commented 6 years ago

tell me if this exit message was intentional. I don't think so.

You are absolutely correct. Thank you for pointing this out. Interesting, it does not print the first line:

Chat: webchat.freenode.net/ #termux
Help: info query and man query
IRC:  wiki.archlinux.org/index.php/IRC_channel

The first line, missing at present says, "Share your Arch Linux in Termux experience!" Yours prints sair, interesting.

[20:15 ~ ]$ startarch u user                                                              su: user user does not exist                                                              [20:15 ~ ]$ startarch c "addauser user"                                                   user20:16~$ ch                                                                                                                                                                      ==> Running TermuxArch ch  v1.6 id637…                                                                                                                                                                                                                                        TermuxArch ch  v1.6 id6379: DONE 🏁                                                                                                                                                 user20:16~$ ch                                                                                                                                                                      ==> Running TermuxArch ch  v1.6 id637…                                                                                                                                              /home/user/.hushlogin  /home/user/.hushlogout                                                                                                                                       TermuxArch ch  v1.6 id6379: DONE 🏁                                                                                                                                                 user20:16~$

The command ch is now expanded with this https://github.com/sdrausty/TermuxArch/commit/2a9d21b5776d4b488e90f9d61f3b5f0cdf136d5d commit. It adds and removes .hush* files depending on condition.