修复Chrome OS Crostini图标
反正不知道为什么Chrome OS对Linux容器内的软件图标的支持偶尔会出问题,虽然不影响使用,但就是有点丑。
参考文章
how to force the app launcher to update the icon cache?
刷新图标缓存
有时候可以更新图标缓存就可以恢复正常,或许是因为apt先创建了desktop文件再保存的图标,就迷惑到Chrome OS了。
进入application文件夹
即保存desktop文件的文件夹,这里以xterm为例,xterm的desktop文件保存在/usr/share/applications, 进入这个目录。
移动desktop文件
找到软件对应的desktop文件,如debian-xterm.desktop文件,把该文件暂时移到别的地方,如上级目录..。
等待Chrome OS内的图标消失
一段时间后,Chrome OS下的目标Linux软件就会自动消失。
移回desktop文件
把之前的desktop文件,如debian-xterm.desktop移回application文件夹。一段时间后软件图标会重新出现在Chrome OS的软件列表里。
转换图标格式
截至Version 87,Chrome OS都不支持xpm格式的图标,所以有时候需要手动转换图标的格式。
安装imagemagick
1 | sudo apt install imagemagick |
找到图标的名字
以xterm为例,打开/usr/share/applications下的debian-xterm.desktop文件。发现Icon=mini.xterm,所以图标的文件必须叫mini.xterm.png。
进入存储图标的文件夹
xterm将图标保存在/usr/share/pixmaps里,发现两个图标文件mini.xterm_32x32.xpm, mini.xterm_48x48.xpm。把分辨率高的mini.xterm_48x48.xpm转换为mini.xterm.png。注意不同的程序会把图标存在不同的地方。
1 | sudo convert mini.xterm_48x48.xpm mini.xterm.png |
刷新图标缓存
参考上一章节刷新图标的缓存。
查看错误日志
如果以上两个章节不能解决问题,试着查看错误报告来定位问题。
1 | sudo journalctl -b -t garcon |
有一些错误应该不会产生什么影响,比如[540]: MIME types file does not exist at: /home/user/.mime.types。