We can't find the internet
Attempting to reconnect
# 使用 `Ubuntu Touch`
Ubuntu Touch是Cannonial 开发的基于Ubuntu的操作系统,
于2017年停止维护, 后由Ubport进行维护.
看了Ubuntu Touch支持的操作系统, 目前能看到性能最好的是`Google Pixel 3a`
购买了一台Pixel 3a安装ubuntu touch
### 安装流程
1. 解锁bootloader
```bash
# enable usb debug
adb reboot-bootloader
# after boot to bootloader
fastboot flashing unlock
```
2. 使用操作系统镜像刷新到操作系统版本 `PQ3B.190801.002`
下载地址: https://developers.google.com/android/images#sargo
3. 安装ubports
```bash
brew install ubports
```
4. 使用ubport安装ubuntu touch
5. 安装成功
### 使用方式
1. 解锁usb调试模式
- 右滑打开菜单
- System Setting
- About
- 进入底部Developer Mode
- 启用Developer Mode
2. 进入系统
```bash
adb shell
# 启用ssh服务
android-gadget-service enable ssh
# or
service ssh start
```
3. 启用容器
Ubuntu Touch使用`Libertine`容器来运行服务
```bash
# 显示容器列表
libertine-container-manager list
# 创建容器
libertine-container-manager create -i focal -n 'Ubuntu 20.04' -d focal
# 在容器中安装软件
libertine-container-manager install-package -p git
# 更新容器
libertine-container-manager update -i focal
# 运行容器中的程序
libertine-launch -i focal /bin/bash
# 进入容器
libertine-container-manager exec -i <container name> -c "/bin/bash"
```
可以在容器中安装ubuntu软件, 支持ubuntu系统20.04
4. 安装`Erlang`/`Elixir`
```bash
cd /tmp
wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb
dpkg -i erlang-solutions_2.0_all.deb
apt-get update
apt-get install esl-erlang -y
apt-get install elixir -y
mix local.hex --force
mix local.rebar --force
mix archive.install hex phx_new --force
```
5. 安装`node.js`
```bash
curl -sL https://deb.nodesource.com/setup_18.x | bash -
apt-get update
apt-get install nodejs -y
```
### Locations
For every container you create, two directories will be created:
```
A root directory ~/.cache/libertine-container/CONTAINER-IDENTIFIER/rootfs/ and
a user directory ~/.local/share/libertine-container/user-data/CONTAINER-IDENTIFIER/
```
### Errors
When launch to container, get these error
```bash
phablet@ubuntu-phablet:~$ libertine-launch -i focal /bin/bash
groups: cannot find name for group ID 32011
```
Fix:
```
# add line to below to `/etc/passwd`
phablet:x:32011:32011:32011:/home/phablet:/bin/bash
# add line below to `/etc/group`
phablet:x:32011:
```