0.写在开头#
这是一个很小众的问题,应该很少有人和我一样,将MacOS
的图标用在archlinux+gnome
上。而问题出现的原因是:gdk-pixbuf 2.42.11(2024-04-19)
起,ICN/ICNS
等多种加载器默认就不再构建,很多发行版(含 Arch)沿用了这个默认设置,所以Nautilus 49.1
不会为.icns
生成缩略图。
修复方法#
- 安装必需工具
paru -S --needed libicns imagemagick
- 写入 thumbnailer 描述文件(用户级)
mkdir -p ~/.local/share/thumbnailers cat > ~/.local/share/thumbnailers/icns.thumbnailer <<'EOF' [Thumbnailer Entry] TryExec=icns2png # 用 ImageMagick 7 的入口 `magick`(Arch 默认) Exec=bash -lc 'tmp=$(mktemp -d); icns2png -x -o "$tmp" %i >/dev/null 2>&1; f=$(ls -1 "$tmp"/* 2>/dev/null | sort -V | tail -n1); test -n "$f" && magick "$f" -thumbnail %s "%o"; rm -rf "$tmp"' MimeType=image/x-icns; EOF
- 重启文件管理器并清理旧缩略图缓存
nautilus -q || true rm -rf ~/.cache/thumbnails/*
修复结果#
现在已经可以和之前一样正常显示了。