快轉到主要內容

postmarketOS使用技巧:中文化、執行Android APP、手機跑Docker

分類   智慧型手機 真Linux手機
標籤   PostmarketOS
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字

postmarektOS是一款基於Alpine Linux研發的手機Linux作業系統,目前已移植到多款Android手機上。

postmarketOS雖然有圖形化界面,但很多時候還是需要指令,因此建議用SSH遠端輸入指令,postmarketOS也有提供手機終端機APP。

本文使用小米PocoPhone F1 (xiaomi-beryllium)當作示範裝置,桌面環境為Phosh,解說postmarketOS的使用技巧。

選擇此裝置示範的理由:GPU硬體加速正常,4G/Wifi網路正常,充電功能正常,待機功能正常,麥克風喇叭正常,只有相機無法運作。且高通s845處理器+8GB RAM是postmarketOS眾多移植機型中性能最強的。

1. postmarketOS系統管理
#

postmarketOS是基於Alpine Linux開發,也沿用了其套件管理器:APK (Alpine Package Keeper)。

你可以在新裝好的系統找到Phosh內建的終端機。

1.1. 系統更新
#

使用以下指令更新系統套件:

sudo apk update
sudo apk upgrade

如果你安裝的是Stable Release的postmarketOS,每次有大版本推出可用以下指令更新:

sudo apk add postmarketos-release-upgrade
sudo postmarketos-release-upgrade

重開機指令:

sudo reboot

關機指令:

sudo poweroff

1.2. 安裝套件
#

使用以下指令搜尋套件:

sudo apk search "套件名稱"

安裝套件:

sudo apk add "套件名稱"

刪除套件:

sudo apk del "套件名稱" 

1.3. 服務管理
#

postmarketOS預設使用的init系統為OpenRC。Systemd需要在pmbootstrap手動指定安裝。

停止或啟動服務,例如docker:

sudo rc-service docker stop
sudo rc-service docker start

將服務設定為開機自動啟動:

sudo rc-update add docker

可設定開機啟動執行自訂指令稿。指令稿位於/etc/local.d/

# 指令稿以.start或.stop結尾
sudo echo "touch boot /home/ivon/boot" >> /etc/local.d/boot.start

sudo rc-update add local

1.4. 防火牆
#

postmarketOS預設的防火牆是iptables,若有需要可安裝UFW方便管理:

sudo apk add ufw
sudo ufw enable

# 禁止所有連入連線
sudo ufw default deny incoming

# 允許SSH通訊埠
sudo ufw allow ssh

# 重新載入規則
sudo ufw reload

2. 網路連接
#

2.1. Wifi網路
#

跟一般手機類似,網路連線只要點選Phosh桌面的Settings → 行動網路或Wifi,即可上網。

終端機則是用ip addr查看網卡。再透過nmcli連線:

sudo nmcli dev wifi connect "Wifi名稱" password "Wifi密碼" ifname wlan0

sudo nmcli device set wlan0 autoconnect yes

如果手機無法上網,亦可將Linux電腦的網路用 USB Networking反向分享給手機。

2.2. 行動網路
#

如果圖形界面無法啟用4G網路再使用以下指令。

  1. 確認有啟用ModemManager服務
sudo rc-service modemmanager start
  1. 使用sudo nmcli d查看網路狀況
DEVICE TYPE STATE        CONNECTION
qrtr0  gsm  disconnected --
  1. 嘗試使用APN自動連線
sudo nmcli con add con-name "modem" type "gsm" ifname "qrtr0" auto-config "TRUE"
  1. 啟用連線
sudo nmcli c up "modem"

2.3. SSH連線
#

postmarketOS安裝後可將手機連到電腦,變成RNDIS裝置,從電腦SSH至系統,IP是固定的(需用sudo rc-service sshd status確認手機的SSH服務有無運作):

ssh 使用者名稱@172.16.42.1

如果手機本身有連上網路,那麼透過區域IP連線也是可以的:

# 手機端啟用SSH
sudo apk update
sudo apk add openssh
sudo rc-service sshd start
sudo rc-update add sshd

# 查看手機IP
ip addr

# 電腦端SSH到手機
ssh 使用者名稱@區域IP

2.4. 啟用4G網路熱點分享
#

Phosh桌面的Settings → Wifi,開啟Wifi,再點選右上角開啟行動熱點。

2.5. 設定時區&校正時間
#

使用符號連結設定時區為台北:

sudo ln -sf /usr/share/zoneinfo/Asia/Taipei /etc/localtime

另使用Alpine Linux的指令稿自動校正時間:

sudo setup-timezone
# 輸入Asia/Taipei

3. postmarketOS中文化與輸入法
#

postmarketOS的Phosh部份支援中文,像Firefox這類常見的應用程式也是支援中文的。

撰文時點Phosh環境尚未有「觸控」中文輸入法,僅Plasma Mobile有提供簡體拼音,即Maliit Keyboard。

Phosh環境下可以用內建螢幕鍵盤"Squeekboard"的實體鍵盤輸入功能,搭配Fcitx5拼音輸入中文。

  1. 首先安裝中文字體和Fcitx5套件
sudo apk add font-noto-cjk fcitx5 fcitx5-chinese-addons
  1. 編輯環境變數
sudo vim /etc/environment
  1. 加入以下參數後重開機。
LANG=zh_TW.UTF-8
LC_CTYPE="zh_TW.UTF-8"
LC_NUMERIC="zh_TW.UTF-8"
LC_TIME="zh_TW.UTF-8"
LC_COLLATE="zh_TW.UTF-8"
LC_MONETARY="zh_TW.UTF-8"
LC_MESSAGES="zh_TW.UTF-8"
LC_PAPER="zh_TW.UTF-8"
LC_NAME="zh_TW.UTF-8"
LC_ADDRESS="zh_TW.UTF-8"
LC_TELEPHONE="zh_TW.UTF-8"
LC_MEASUREMENT="zh_TW.UTF-8"
LC_IDENTIFICATION="zh_TW.UTF-8"
LC_ALL=
  1. 參考 Arch Wiki,啟用Fcitx5的拼音輸入法。

  2. Phosh 0.35.0之後的版本,需要點選底部的藥丸條才能喚醒螢幕鍵盤。鍵盤模式有一個是"Terminal"配置,可以模擬實體鍵盤輸入。按下CTRL+空白鍵就能喚醒Fcitx5的拼音輸入法。

4. 客製化Phosh桌面環境
#

  1. 安裝postmarketOS Tweaks APP:
sudo apk add postmarketos-tweaks
  1. 開啟此APP後你就能設定桌布和睡眠模式(暫停,suspend)的觸發時間。

  2. 若要讓特定APP阻止手機進入睡眠,使用gnome-session-inhibit指令:

gnome-session-inhibit –inhibit suspend <指令>

5. 好用的Linux手機APP
#

完整列表
#

應用程式商店
#

打造像Android手機一樣點擊下載APP的感覺,在背景自動更新,而無須終端機和sudo。

安裝Flatpak和Gnome軟體商店:

sudo apk add flatpak gnome-software gnome-software-plugin-flatpak
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

手機版Firefox使用小技巧
#

postmarketOS的Firefox跟電腦版差不多,但是會強迫使用Duckduckgo當搜尋引擎。點選Firefox右下角設定→搜尋→還原預設搜尋引擎,就能使用Google搜尋。

這裡Firefox預設的User Agent是「Android上的Firefox」。你可以安裝 User-Agent Switcher and Manager切換User Agent。

地圖導航
#

到系統設定 → 隱私,開啟位置存取權限,接著安裝地圖導航APP。

推薦透過Flatpak安裝 Pure Maps,可用來導航。

6. 用Waydroid跑Android APP
#

Waydroid + postmarketOS使用教學

7. 跑Docker容器
#

postmarketOS全部機型皆支援Docker。

安裝Docker服務:

sudo apk add docker docker-compose
sudo addgroup $USER docker
sudo rc-update add docker boot
sudo service docker start

8. 遠端桌面
#

postmarketOS的桌面環境大多是使用Wayland。

裝置不支援HDMI輸出,要怎麼投影到大螢幕?

答:使用 WayPipe或是 WayVNC

9. 更換桌面環境
#

注意:更換桌面環境可能導致圖示混亂。

postmarketOS安裝多重桌面環境

相關文章

pmbootstrap建置自訂系統image,修改核心APKBUILD設定
分類   智慧型手機 真Linux手機
標籤   PostmarketOS Linux Kernel
適合Linux觸控螢幕裝置的幾個桌面環境
分類   智慧型手機 真Linux手機
標籤   Phosh SXMO KDE Plasma Mobile PostmarketOS Ubuntu Touch
postmarketOS安裝多重桌面環境:GNOME、KDE、XFCE
分類   智慧型手機 真Linux手機
標籤   PostmarketOS

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。