最近在弄 Uxplay 在 Raspberry Pi 4 B 上面的自動啟動遇到的一些問題和解決方式筆記一下 (好喔 上次寫在 blog 筆記也好幾年了www)
首先 Uxplay 安裝其實很簡單
Raspberry 如果安裝的 image 是 Desktop 的版本
只要簡單的使用 apt 安裝就好了
sudo apt install uxplay
問題是幾乎沒用過 Linux desktop 了,所以超不熟wwwww
安裝完 uxplay 直接執行
uxplay -bt709
參數要加上 -bt709 是因為我用的是 raspberry 4B 和 raspberry OS(debian)
其他的 OS 或是硬體不一定需要加這個
這細節很多 詳情可參考 uxplay 的 README 這邊不再贅述
當測試完啟動投影是正常之後,接下來是自動啟動的問題
方法大概是兩種(擇一)
- debian 系統的 systemd
- 視窗系統的 autostart
systemd
這個訪法其實比較通用,因為系統改版不太會改這個架構,而採用視窗系統的 autostart 比較容易跟系統版本推進採用不同視窗系統,以至於方法有所變動。
首先先建立並編輯一個服務檔
sudo vi /etc/systemd/system/uxplay.service
內容如下
[Unit]
Description=Uxplay autostart
After=graphical.target
[Service]
ExecStart=/usr/bin/uxplay -bt709
Environment=DISPLAY=:0
User={your_login_id_for_desktop}
[Install]
WantedBy=graphical.target
其中 User= 後面要改成你登入視窗介面用的 user
然後測試啟動
sudo systemctl start uxplay.service
停止
sudo systemctl stop uxplay.service
設置自動啟動
sudo systemctl enable uxplay.service
這樣就完成了
視窗系統的 autostart
寫這篇主要是因為摸這個一直弄錯wwwww
首先先要搞清楚 raspberry 的 desktop 環境組成到底是誰組成
是 X11 ? LXDE ? wayland ? wayfire ? labwc ?
搞到最後才知道原來現煮時 (2024.12.08) 是使用 Wayland + labwc
當知道是這兩個組成的話,事情就變超簡單的了 只是我搞了三個小時才弄清楚wwwww
來看一下 labwc 官網說明文件 搜尋 autostart 就找到方法了
首先 labwc 設定檔都放在 ~/.config/labwc 資料夾
如果找不到就開一個
mkdir -p ~/.config/labwc
然後編輯一個自動執行檔
vi ~/.config/labwc/autostart
內容其實就是一般的 shell script ,官網也有 範例可參考 ,但這範例沒有我們要用的東西
我們自己編輯 內容如下
export DISPLAY=:0
/usr/bin/uxplay -bt709
這樣就可以了
測試就重開機一下吧
更新: 放在 /etc/xdg/labwc/autostart 也是可以
備註
以上兩種方法都以最簡單的方式啟動 uxplay
如果您要增加額外的參數或是做錯誤輸出之類的請自己處理嚕
測試環境
Raspberry Pi 4b
Raspberry Pi OS (64bit) Debian bookworm with Desktop 2024.11.19