快轉到主要內容

把Waydroid當Linux桌面環境,開機直接進入Android系統

· 民國113年甲辰年
·
切換繁體/簡體
分類   資訊科技 虛擬機與容器技術
標籤   Waydroid Wayland
目錄

Ubuntu安裝Waydroid,並透過顯示管理器進入Android系統。

簡言之,在Linux電腦開機登入之後自動進入Waydroid,好似在操作Android-x86系統一樣的感覺。

這有啥用…?我能想到的應用場景,就是把Linux平板「暫時」當作Android平板使用吧!

Waydroid官方文件稱這種操叫做"waydroid only session"

嚴格來說,Waydroid沒有合成器,需要依賴一個Wayland合成器才可以啟動。把Waydroid做成一個能夠啟動桌面環境工作階段的Desktop Entry,讓Linux的顯示管理器能夠認到,並以此啟動Waydroid。

並且Waydorid是跑在LXC容器裡面的,無法存取Linux硬體的相機和家目錄的檔案,除非手動bind mounut進去使用。

Waydroid能做的事情有限,如果你選的Wayland合成器太簡陋,那麼關機需要打指令。

1. 準備Wayland合成器
#

Waydroid官方文件提到GNOME Mutter、Weston、Wayfire的作法。我覺得Kwin或Sway應該也行吧?但我們這邊的目的是儘量簡單,只要啟動Android就好,不要其他元件。

選Weston吧,Wayland的官方參考實作,使用以下指令安裝:

sudo apt install weston

另外需要一個能夠執行指令的終端機模擬器,比如Konsole:

sudo apt install konsole

2. 新增Desktop Entry
#

  1. 確認Waydroid開機後服務會自動啟動
sudo systemctl enable waydroid-container
  1. Weston有autolaunch的功能,但看來沒辦法直接執行Waydroid,所以要手動新增一個指令稿
sduo touch /usr/bin/waydroid-session.sh

sduo chmod +x /usr/bin/waydroid-session.sh

sudo vim /usr/bin/waydroid-session.sh
  1. 填入以下內容,啟動Waydroid之後,再用終端機模擬器啟動Waydroid
#!/bin/sh

weston &

sleep 3

konsole -e waydroid show-full-ui
  1. 編輯~/.config/weston.ini,填入以下內容,允許觸控,關閉Weston狀態欄,關閉鎖定畫面。並且設定啟動Weston之後自動執行Waydroid指令稿
[libinput]
enable-tap=true

[shell]
panel-position=none

[core]
idle-time=0
  1. 新增/usr/share/wayland-sessions/waydroid.desktop檔案,填入以下內容
[Desktop Entry]
Name=WayDroid on Weston
Comment=Android OS in a container
Exec=/usr/bin/waydroid-session.sh
Type=Application
  1. 重開機。在顯示管理器的登入畫面,選取工作階段(GDM在左下角齒輪,SDDM在左下角),會出現「Waydroid」的選項。

  2. 不知道為何我用Weston 13.0啟動Waydroid會產生畫面撕裂,而且Weston有時候會整個崩潰。

3. 另一種自動啟動Waydroid的作法
#

如果是希望「登入桌面環境後,自動啟動Waydroid並視窗最大化」,那麼用XDG Autostart就行了。把Waydroid的Desktop Entry複製過去:

cp ~/.local/share/applications/Waydroid.desktop ~/.config/autostart/

以上作法限定Wayland工作階段的桌面環境。

部份Wayland合成器能夠在現有的X11工作階段啟動,變成巢狀Wayland工作階段,所以你也可以在這些巢狀合成器裡面跑Waydroid。比如在X11環境啟動weston,便能在Weston視窗裡面開啟Waydroid。

相關文章

樹莓派同時裝Linux與Android APP ~ Waydroid安裝教學
分類   資訊科技 虛擬機與容器技術
標籤   Raspberry Pi Waydroid Android Linux
Windows 11用WSL跑Linux的Android容器「Waydroid」
分類   資訊科技 虛擬機與容器技術
標籤   Waydroid WSL
Linux與Waydroid透過Samba伺服器共享資料夾
分類   資訊科技 虛擬機與容器技術
標籤   Waydroid Samba

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

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