快轉到主要內容

Termux安裝圖形桌面環境+音訊輸出教學

· 民國113年甲辰年
·
切換繁體/簡體
分類   智慧型手機 Termux教學
標籤   X Window VNC
目錄

注意:由於Termux檔案系統跟一般Linux有差距,且套件數量較少,我傾向裝個Linux proot容器再跑桌面環境,雖然速度較慢但體驗較好。

Termux預設只有純文字界面,使用者可自行安裝桌面環境(desktop environment),再透過VNC或Termux X11連線,擁有桌面電腦一樣的使用體驗。

目前,Termux套件庫有收的桌面環境為:XFCE、LXQT、MATE、OpenBox、i3wm、Weston等等。

並且Termux可以使用Android GELS輸出音效,所以我們可以跑個PulseAudio伺服器,用於在桌面環境輸出音訊。

本文介紹如何安裝XFCE桌面與設定PulseAudio伺服器。

Termux執行XFCE桌面環境與電腦版Firefox瀏覽器

1. 前置作業
#

跑桌面環境推薦手機RAM至少6GB以上。

請先安裝Termux,並記得關閉Phantom Process Killing,防止Termux在背景被系統中止。

2. 安裝XFCE桌面環境
#

Termux收的桌面環境選擇不多,就選輕量功能又不會太少的XFCE吧。

安裝XFCE4、Firefox瀏覽器、VIM編輯器:

pkg install x11-repo

pkg install xfce xfce4-goodies pulseaudio pavucontrol vim firefox

3. 連線到圖形界面
#

二擇一,二者可以共存。建議用Termux X11,效能比VNC要好,但是不方便遠端連線。

Termux X11
#

  1. 設定Termux X11以及virglrenderer

  2. 為了日後方便啟動桌面環境,新增指令稿

vim ~/startxfce4.sh
  1. 填入以下內容:
#!/bin/bash

# 啟動GPU加速
virgl_test_server_android &

# 啟動音訊伺服器
pulseaudio --start --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

# 啟動桌面環境
termux-x11 :0 -xstartup "dbus-launch --exit-with-session xfce4-session" &
  1. 退出Termux。
exit
  1. 啟動Termux X11 APP

  2. 回到Termux,啟動桌面環境,Termux X11的APP畫面便會出現XFCE4桌面了。

./startxfce4.sh

VNC伺服器
#

  1. 手機安裝AVNC客戶端

  2. 安裝TigerVNC的套件,當下版本為1.13.0。

pkg install tigervnc
  1. 設定VNC伺服器密碼
vncpasswd
  1. 新增VNC伺服器啟動後要執行的程式,編輯~/.vnc/xstartup
mkdir ~/.vnc/

vim ~/.vnc/xstartup
  1. 填入以下內容
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADRESS

# 啟動PulseAudio音效伺服器,音訊會從Termux傳出來
pulseaudio --start --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

# 執行桌面環境,此處為XFCE
exec startxfce4
  1. 賦予xstartup執行權限
chmod +x ~/.vnc/xstartup
  1. 定義VNC伺服器的設定檔。編輯~/.vnc/tigervnc.conf
vim ~/.vnc/tigervnc.conf
  1. 填入以下內容:
# 目前的工作階段XFCE
$session="xfce-session";
# 解析度,越高佔用頻寬越多
$geometry="1920x1080";
# 位元深度,數值為8/16/24/32,數字越大畫面越好但越耗頻寬
$depth="32";
# 讓外部網路可以連線
$localhost="no";
  1. 在Termux輸入tigervncservervncserver指令,啟動VNC伺服器。觀察畫面輸出的通訊埠號,通常是從1開始。而VNC伺服器的通訊埠從5900開始算,因此這裡通訊埠是5901。

  2. 開啟AVNC APP,新增主機連線,地址填localhost,通訊埠填5901

4. 一鍵啟動桌面環境指令稿
#

每次啟動桌面環境都要打指令實在太麻煩了,利用Termux Widget的桌面捷徑方式,一鍵跑完啟動Termux + Termux X11 + virglserver的程序,自動啟動桌面環境。

  1. 安裝Termux Widget

  2. 點選系統設定,給Termux開啟「允許顯示在其他應用程式上層」權限

  3. 重新開啟Termux,輸入以下指令建立捷徑

mkdir .shortcuts

vim .shortcuts/start_xfce.sh
  1. 填入以下內容
#!/bin/bash

# 中止所有舊行程
killall -9 termux-x11 pulseaudio virgl_test_server_android termux-wake-lock

# 啟動Termux X11
am start --user 0 -n com.termux.x11/com.termux.x11.MainActivity
XDG_RUNTIME_DIR=${TMPDIR}
termux-x11 :0 -ac &
sleep 3

# 啟動PulseAudio
pulseaudio --start --load="module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1" --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

# 啟動GPU加速的virglserver
virgl_test_server_android &

# 啟動XFCE4桌面環境
export DISPLAY=:0
export PULSE_SERVER=tcp:127.0.0.1
dbus-launch --exit-with-session startxfce4 &
  1. 賦予執行權限
chmod +x .shortcuts/start_xfce.sh
  1. 到手機桌面,新增小工具 → 選取Termux Widget,可以看到剛才寫的捷徑出現在列表中。

  2. 點選按鈕,Termux就會自動開啟登入桌面了。

相關文章

Termux X11:手機的X伺服器使用教學
分類   智慧型手機 Termux教學
標籤   X Window Wayland
在手機上跑X server,Termux + XSDL使用教學
分類   智慧型手機 Termux教學
標籤   X Window
淺談Termux檔案管理,將Linux環境的檔案與Android共享
分類   智慧型手機 Termux教學
標籤   Termux Freedesktop Specifications

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。

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