Coder Social home page Coder Social logo

sdrausty / termux-arch Goto Github PK

View Code? Open in Web Editor NEW
42.0 2.0 4.0 38.06 MB

You can use setupTermuxArch.sh 📲 to install Arch Linux in Termux on Android and Chrome. This setup script will attempt to set Arch Linux up in your Termux environment.

Home Page: https://sdrausty.github.io/termux-arch/

License: Other

Shell 100.00%
android arch-linux chrome termux-environment linux-distribution installer bash-script smartphone free-software scripts

termux-arch's Introduction

-r--r--r-- setupTermuxArch
-rwxrwx--- setupTermuxArch

This Termux bash setup shell script will attempt to set Arch Linux up in your Termux environment. See install for options how to run setupTermuxArch on device. Use bash setupTermuxArch to install Arch Linux in a Termux PRoot container on your Android smartphone and tablet, and Chromebook too. When successfully completed, you will be experiencing the pleasure of the Linux command prompt in Arch Linux in Termux PRoot on Android, Chromebook and Fire OS on smartphone, tablet and wearable.

Screenshot from an Android smartphone 2018

screenshot_20180413-172406

Thank you for making this project work better and please contribute 🔆  Contributors and Notice to Contributors have more information about this project.

Screenshot of Arch On Termux

PRoot has more information about Linux on device with Termux.

Share https://wiki.termux.com/wiki/Development everwhere🌎🌍🌏🌐!

Install Arch Linux into a Termux PRoot container with bash setupTermuxArch. After succesfull installation start the container with startarch.

See https://TermuxArch.github.io/TermuxArch/docs/install for options how to run setupTermuxArch on device.

See https://TermuxArch.github.io/docsTermuxArch/startingArch for options how to start the Arch Linux container startarch on device.

This repository uses submodules. To get all the pieces of this repository run the following code after cloning in the root directory of this repository:

git submodule update --init --recursive

termux-arch's People

Contributors

sdrausty avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

termux-arch's Issues

new feature suggestion based on Exagear for Termux

Dear Mr Rausty,
I Am kindly suggesting you to add new possibility to run X86 apps by using Termux and Proot. Feature is not based on slow and problematic Qemu emulation. So you could add this possibility as a concurrent to Proot and Qemu emulation.
Try to analyse this machine code module on Github.

https://github.com/ZhymabekRoman/Exagear-For-Termux

Repository contain Bash script and some small binary module. I have tested it according to The authors example. And it have been faster than Qemu emulation. Sure, not so fast like The execution of Architecture compatible machine code on real device.
But it would be good alternative to Qemu emulation.
Please try to look at this.

There are some issues related to socket communication, so may be, that full desktops can not be executed by using this project. But I think, that it will be good project for every one who would like to build The packages by using cross compilation.

Unfortunately, I can not find The source code of binary data. If The author has even used Assemlber language.
Author is very smart, he has even made shared memory emulation in Proot for Termux. So I think, that it will be also good idea from him to develop Exagear for Termux.

need to change date

Hi I need to change my date but each command I try doesn't work any ideas?

big congratulations related to The setupTermuxArch.bash scripts

dear MR Rausty,
I have spent some time today to try proot-distro and some of The supported distros. I have been very sad. Why? None of those distros have been setup with The Dbus-run support. I have received several error messages related to Dbus including issues that FD could not be set to 65536. And in some cases, at-spi could not work. So I can be open heart to you. If somebody want to work professionally with Linux OS from Termux, really, only your scripts are being still developed and dbus is preconfigured so Orca can still be used. So I can tell you. Very well done dear MR Rausty. You have done your best to allow all users to run so much apps. Your script makeyay allow users to build apps from X86 repositoryes on Aarch 64 platform. There is very exciting project to try. Boxx86 and Wine. But. Termux is very unpleasant. It is not possible to choose, if user want to run ARM machine code on AArch64. It would be great, if Termux could contain official dialog window to choose between those architectures or .apk precompiled with Termux which would execute ARM code on AArch64 bit cpu with no need to use qemu emulator.
Boxx86 allow users to execute X86 apps for Windows in conjunction with Wine. Sure. User must install Wine and user must install it on normal X886 CPU. User must install Win32 Wine prefix which must be transferred to Android device.
But first, it would be necessary to compile Termux .apk which will automatically install debootstrap for ARM platforms on Aarch64 BIt CPUS.
IT will be very exciting adventure.

setupTermuxArch script try to install even kernel related modules

Dear Mr Rausty,
setupTermuxArch Bash script is doing something new. It try to install even kernel related packages. As A result, kernel modules are built on Android devices. It takes time and some kernel modules build is getting stuck. So setupTermuxArch script can not finish arch Linux installation correctly. Was it your goodly thinked programmers attention to change package management policy so also kernel related packages will be installed? Or is it some little mistake? Simply pressing CTRL+c is not The solution. Because it will stop The rest of script tasks including localisation generation. Or did you wanted to implement some new revolutionar routine, which will allow to execute kernel procedures by using Proot and non rooted device without Qemu?

Thank you for The future repair.

Error updating arch Linux on Termux

Error executing pacman -Syu on Arch Linux for Termux.

aur is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing libffi (3.4.2-4) breaks dependency 'libffi.so=7-64' required by glib2

glib version is:

glib2-2.70.0-2

setupTermuxArch script do not download .tar file for installation on Chromebook

Because I have decided to buy Chromebook computer, I have started to find its big potential on its Android subsystem capabilities.
Unfortunately, My Chromebook which is equipped with Intel CPU X64 Bit computer do not support your excellent script.
I AM running Termux 119.1 available here.
https://apkcombo.com/termux/com.termux/
Sure, I have performed its packages update and upgrade.
But when I execute setupTermuxArch Bash script, it generate The following series of errors.
~ $ bash ./setupTermuxArch

🕛 > 🕛 Termu�Ar�� version 2.1.882 will attempt to install Linux in ~/arch. Arch Linux in TermuxArch PRoot QEMU will be available upon successful completion. You can use '!!' to run this BASH script again with options. Please check the wireless connection if you do not see one o'clock � below and ensure background data is not restricted. The command bash setupTermuxArch help has additional information about setupTermuxArch. Checking prerequisites...

Found download tool 'wget': Continuing...

Using wget to manage downloads.

🕛 > 🕧 Prerequisites: OK Downloading TermuxArch...

setupTermuxArch.sha 100%[===================>] 153 --.-KB/s in 0s
setupTermuxArch.tar 100%[===================>] 72.39K --.-KB/s in 0.03s
🕛 > � TermuxArch download: OK

đź•› > đź•ś TermuxArch version 2.1.882 integrity: OK
Detected architecture is x86_64; Install architecture is set to x86_64.
Setting locales to Language >> cs_CZ << Region Please wait a moment.
Generating dot files: BEGUN…
==> cp root/.bash_profile /var/backups/arch/root/.bash_profile.1694177995.bkp
==> cp root/.bashrc /var/backups/arch/root/.bashrc.1694177995.bkp
Data in file root/.inputrc is equal.
Data in file root/.profile is equal.
==> cp root/.emacs /var/backups/arch/root/.emacs.1694177995.bkp
line '(setq visible-bell 1)' found in /arch/root/.emacs file
==> cp root/.vimrc /var/backups/arch/root/.vimrc.1694177995.bkp
line 'set belloff=all' found in /arch/root/.vimrc file
Generating dot files: DONE

🕛 > � File startarch copied to /data/data/com.termux/files/usr/bin.

đź•› > đź•ť Detected Android 9 x86_64 Chromebook operating system; Install architecture is set to x86_64.

đź•› > đź•’ Activating termux-wake-lock: DONE

cd /storage/emulated/0/Android/data/com.termux/ && mkdir -p files/cache/archlinux/x86_64/var/cache/pacman/pkg/ && cd /storage/emulated/0/Android/data/com.termux/files/cache/archlinux/x86_64/ && cd /data/data/com.termux/files/home/arch

đź•› > đź•ž Downloading checksum from http://mirror.rackspace.com...

grep: md5sums.txt: No such file or directory

đź•› > đź•“ Downloading from http://mirror.rackspace.com... This may take a long time pending connection.

index.html [ <=> ] 1.28K --.-KB/s in 0s

And nothing new happens.
Please, is it technically possible to use ArchLinux on Chromebook on X64 Bit CPU architecture?
Because Chromebook execute Android as a standalonevirtual machine which uses Kqemu and special Rust language app to manage virtual machines.
May be, that this port of Android is much more different than Android build in to ortable devices with ARM CPU.

I have even found out, that it is no more possible to use Xvnc on Chromebook on their Android OS, because special C language function is not implemented.
The question is, if it is possible to add this C language function to Termux .so library or in to Proot for X86 machines.

shared memory and udev calls will prevent WEB browsers from running

I would like to express my big afraid. why? Chromium and Firefox, Seamonkey are calling new shared memory functions. It is impossible to implement all shared memory functions from Linux kernel, because shared memory is constructed rather for external storage media, where many write cycles are tolerated. Using so many write cycles could corrupt storage chips inside Android based devices.
More over, more and more apps are strictly dependent on regular Linux kernel and it is impossible to emulate Linux kernel by using other way than running full Linux distribution on Qemu emulator.
Unfortunately for many users, running Linux distro without Kqemu kernel device driver is very slow.
So unfortunately, Proot will be very probably used not for running WEB browsers, but rather for compiling and debugging some apps which do not depend on regular Linux kernel system calls.
It is very probably not possible to think some work around.
Try to run Chromium on Debian PUlseie, try to run Seamonkey on Arch Linux.
System bus not available.
Who will emulate system bus on software level?
Only Qemu and similar emulators can do that.
And if real Linux kernel run in memory.
So good times are over for ever.
And I must be happy, that Tuner Internet radio app do not use shared memory or other Linux kernel related system calls.
Mate desktop environment also do not depend on such system calls.
Orca screen reader work smoothly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.