从 appimage 中提取图标

从 appimage 中提取图标

什么时候创建 appimage 的 .desktop 快捷方式Icon即使 appimage 确实包含图标,也不会自动从 appimage 中提取。

  1. 这是 DE 的限制吗?有跟踪它的 bug 吗?我在 Ubuntu 18.04 中使用 GNOME,并强制用户寻找图标文件,将其放在某个路径中,然后从.desktop文件,很愚蠢。

  2. 从该应用程序图像中提取图标的简单方法是什么?

答案1

1. 自动

AppImages 有一个方便的功能。您不需要手动提取图标。您需要做的就是:运行可选appimaged守护进程(它在用户空间中运行,不需要 root 权限)。在此处下载:

它被捆绑为一个 AppImage,并且可以像一个 AppImage 一样使用:使其可执行并执行。

此守护进程会扫描几个众所周知的 appimage 位置并提取图标,然后自动为您创建菜单条目。(如果您删除 AppImage,它还会再次删除它们)。

建议将所有 AppImage 保存在您创建的目录中:${HOME}/AppImages


更新:根据用户 @TSr 的评论,appimaged现已弃用。我没有检查此信息。

2. 手动

如果您坚持手动执行此操作,您可以运行(在终端中!):

 ./your.AppImage --appimage-extract

这将创建一个名为的子目录squashfs-root并提取完全的包的内容。在这里你应该可以找到你要找的东西。

警告:这仅在 AppImage 为类型 2(遵循较新的 AppImage 规范)时才有效。对于 AppImage 类型 1,您必须手动挂载 AppImage,然后从挂载的目录树中复制图标文件:

mkdir /tmp/mountpoint
sudo mount -o loop your.AppImage /tmp/mountpoint

如果图标缺失,则说明 AppImage 的打包者没有将其包含在内。那么就向他/她投诉吧。

答案2

使用 AppImageLauncher,与 Ubuntu 20.04 完美配合:https://github.com/TheAssassin/AppImageLauncher

答案3

最好手动操作,因为我发现许多 Appimages 无法正确集成。一些 Appimages 的图标无法正确显示,因为图标没有放在 AppImageLauncher 可以识别的标准位置。而且有些 AppImages 有一种独特的自我更新方式,与 AppImageLauncher 不兼容,例如带有维护工具的 Switch 模拟器 Yuzu。

相关内容