本文为双语,你现在阅读的是中文版。
Termux app是一个可以在安卓上运行Terminal终端的应用,也就是说可以在安卓运行shell。
但是整个Termux项目,不仅仅是一个终端模拟器那么简单,他包括了整套工具链,来让安卓得以把shell(bash、zsh、fish等)和各种Linux程序应用(python、perl、gcc等)跑起来,相当于拥有一整个能直接在安卓运行的apt软件仓库。
这个apt软件仓库,是基于NDK编译的,是安卓原生支持的二进制运行方式,可以更容易移植到其他安卓app中运行。
1. 下载执行app,推荐从f-droid下载(https://f-droid.org/en/packages/com.termux/),f-droid确保apk是从对应源码编译的
2. 安装,即装即用
pkg search xx # e.g. "pkg search sh" lists all *sh* packages
pkg install xxx
P.S. apt命令也可以用,但还是推荐用pkg命令;技术上详细解释:pkg实际上是一个bash脚本,底层还是调用apt,但pkg会处理更多的边界条件、mirror负载均衡等逻辑。
pkg install python # pretty easy, right
注意:由于魔改了$HOME,pip旧版不能支持(新版可以支持)~/.pip/pip.conf的识别,所以旧版的pip.conf可能不生效
pip install xxx
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxx # using custom mirror
proot -0 pip install xxx # some pip packages can't recognize the modified $HOME either, using proot to cheat and improve compabitily
pkg search opencv
# we can see two packages: opencv and opencv-pythonpkg install opencv opencv-python
# then we verify if opencv-python has been successfully installed
python -c "import cv2; print(cv2.__version__)"
# will output opencv's installed version
简单而言,如果pkg有对于的python库(使用pkg search python可以搜索所有支持的Python库),则优先用pkg;否则用备用选择是pip安装。
Termux项目包含有众多仓库,可在https://github.com/orgs/termux/repositories?type=all查看,下面介绍几个常用的重要的仓库。
后文我们会用专题的方式,来带大家更详细的termux进阶使用指南