gmg137 / netease-cloud-music-gtk

Linux 平台下基于 Rust + GTK 开发的网易云音乐播放器
GNU General Public License v3.0
1.54k stars 92 forks source link

flatpak app使用系統主題閃退 #171

Closed system-thoughts closed 1 year ago

system-thoughts commented 1 year ago
  1. 通過如下方法讓flatpak app使用系統gtk4主題:
  2. Open the folder of the theme variant you want to apply and copy its contents to ~/.config/gtk-4.0
  3. flatpak override --user --filesystem=xdg-config/gtk-4.0 --filesystem=$HOME/.themes/
  4. 應用主題後如下所示: image
  5. 登錄之後,播放音樂,點擊關閉按鈕,讓其後臺播放,大概1到2分鐘會異常退出
gmg137 commented 1 year ago

1、如果不更换主题是否会异常退出? 2、如果保持前台播放是否会异常退出? 3、是否有异常退出的日志或报错信息?

system-thoughts commented 1 year ago
  1. 如果不更換主題不會退出
  2. 更換主題保持前臺播放不會異常退出
  3. 我google了如下查看flatpak app日誌無果,請問如何查看flatpak app日誌呢,多謝
gmg137 commented 1 year ago

我对flatpak也不了解,在终端通过 flatpak run 运行试试

system-thoughts commented 1 year ago

啓動的時候有如下日誌,主題的問題:

[Rui@hackFun upstream]$ flatpak run com.gitee.gmg137.NeteaseCloudMusicGtk4 

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.052: Theme parser error: main-light.css:2050:55-56: The color must be the last parameter

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.052: Theme parser error: main-light.css:2058:55-56: The color must be the last parameter

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.054: Theme parser error: main-light.css:4158:31-32: Expected shadow value to contain a length

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.054: Theme parser error: main-light.css:4299:1-2: Expected a valid selector

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.054: Theme parser error: main-light.css:4859:3-15: Junk at end of value for outline-color

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.055: Theme parser error: main-light.css:5877:1-2: Expected a valid selector

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.055: Theme parser error: main-light.css:5981:10-20: "text_color" is not a valid color name.

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.055: Theme parser error: main-light.css:5993:27-45: "sidebar_text_color" is not a valid color name.

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.055: Theme parser error: main-light.css:5998:10-28: "sidebar_text_color" is not a valid color name.

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.055: Theme parser error: main-light.css:6079:1-2: Expected a valid selector

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.056: Theme parser error: main-light.css:6734:1-2: Expected a valid selector

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.292: GtkImage 0x55fbac2417a0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.292: GtkImage 0x55fbac594790 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.

(netease-cloud-music-gtk4:2): Gtk-WARNING **: 12:33:30.292: GtkImage 0x55fbac241de0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.

但是退出的時候,貌似就沒有再新增日誌了

system-thoughts commented 1 year ago

去掉主題之後,後臺播放一樣出問題,沒有異常日誌打印:

[Rui@hackFun upstream]$ flatpak override --user --show
[Context]
filesystems=/home/Rui/.themes;xdg-config/gtk-4.0;
[Rui@hackFun upstream]$ flatpak override --user --reset
[Rui@hackFun upstream]$ flatpak override --user --show
[Rui@hackFun upstream]$ flatpak run com.gitee.gmg137.NeteaseCloudMusicGtk4 
[Rui@hackFun upstream]$ echo $?
137
[Rui@hackFun upstream]$ flatpak run com.gitee.gmg137.NeteaseCloudMusicGtk4 
[Rui@hackFun upstream]$ echo $?
137

不知道flatpak app的異常返回值有沒有參考意義

另外,每次測試都是掃碼登錄之後,播放我喜歡的音樂

gmg137 commented 1 year ago

你是直接从 flathub 安装的还是用我打包的?

system-thoughts commented 1 year ago

不是的,我是參考README,先從release中下載最新的flatpak包,隨後本地安裝

// 先下载 flatpak 安装包
sudo flatpak install com.gitee.gmg137.NeteaseCloudMusicGtk4-*.flatpak
gmg137 commented 1 year ago

你直接从 flathub 仓库中安装试试

system-thoughts commented 1 year ago

你直接从 flathub 仓库中安装试试

完美解决!