在Unity Launcher中更改Wine应用程序的图标

我经常用葡萄酒运行Windows程序。 当我打开这个程序时,它会在团结启动器中显示为wine而不是实际打开的程序。

我已经制作了一个带有正确图标的桌面启动器,但将其拖动到Unity启动器会将图标恢复为酒杯图标。 启动应用程序时,它被命名为Wine Windows Program Loader而不是其实际名称。

截图:

在此处输入图像描述

关于Ubuntu 12.04 LTS及更高版本的解决方法


注意

此解决方法需要Wine应用程序的工作启动器。 这是一个如何创建一个教程 。 解决方法也适用于使用PlayOnLinux脚本安装的应用程序。 更新版本的PlayOnLinux会自动将StartupWMClass行添加到其启动器中。

说明

在您喜欢的文本编辑器中打开.desktop启动器,并将此行附加到该文件:

 StartupWMClass=application.exe 

其中, application.exe是要在Wine中启动的可执行文件的基本名称。

不要使用完整路径,只使用基本名称。 并确保它是unqoted(一般规则你应该遵循桌面文件)。

结果

应用程序图标和描述现在应该正常呈现:

在此处输入图像描述


资料来源: https : //bugs.launchpad.net/unity-2d/+bug/702452

  1. 您可以在此处找到您的图标或在此处放置自定义图标:

     $ cd ~/.local/share/icons/hicolor/256x256/apps/ $ ls 1DF1_PicasaPhotoViewer.0.png . . . 29F5_WINWORD.0.png 850A_EXCEL.0.png AA79_POWERPNT.0.png 
  2. 转到以下目录:

     $ cd ~/.local/share/applications/wine/Programs/Microsoft\ Office $ ls Microsoft Excel 2010.desktop\ Microsoft Office 2010 Tools\ Microsoft PowerPoint 2010.desktop\ Microsoft Word 2010.desktop\ 
  3. 编辑.desktop文件:

     $ sudo nano Microsoft\ Word\ 2010.desktop [Desktop Entry] Name=Microsoft Word 2010 . . . Icon=29F5_WINWORD.0.png (or name of icon as in above folder) 
  4. 你完成了!

此问题有几个已记录的错误 。

在其中一个错误(第3篇)中 ,有人报告了可能的解决方法。 然而,下面的另外两个post指出它并不总是有效。

我不使用Unity,所以我真的不知道它是否会起作用。

你的问题可能是因为程序启动器。 我假设您的.desktop文件包含Exec=wine '/home/user/.wine/dosdevices/c:/Program...'等等。 尝试制作一个包含以下内容的bash二进制文件:

 #!/bin/bash cd '/home/aldomann/.wine/dosdevices/c:/Archivos de programa/Warcraft II BNE' wine 'Warcraft II BNE.exe' 

将它命名为warcraft2并将其移动到/usr/bin (或任何PATH变量,通过在终端上键入echo $PATH可以知道)

然后在你的.desktop文件而不是Exec=wine '...'使用Exec=warcraft2 。 我认为Unity会假设这不是一个葡萄酒计划,并会使用你的图标, 但这只是猜想。

希望它有效;)

默认情况下,您的Wine应用程序.desktops放在/home/user/.local/share/applications/wine

您可以创建一个新文件并将其放在/home/user/.local/share/applications上,而不是修改现有的.desktop文件。 它应该是这样的:

 [Desktop Entry] Name=Application Comment=Comment Exec=app-binary Icon=app-icon Type=Application Terminal=false StartupNotify=true Categories=GTK;Utility 

提示:如果您将图标放在/home/user/.icons/ (即app-icon.png)上,则只需要放置Icon=app-icon

我编写了一个脚本来修复Unity中的MSO和其他问题。 https://ubuntulogia.wordpress.com/2015/01/25/fix_mso_unity/它适用于我,但欢迎任何建议。 如果有人测试并发现任何改进,请分享给我。 要运行脚本,必须将代码复制到文本文件中(例如,使用gedit),然后保存。 然后,您必须使用“sh”运行它。 例如,如果将文件保存在Home文件夹中作为“fixmso.sh”,则运行该脚本的命令为:sh fixmso.sh

您可以使用名为alacratz的程序在GUI上执行此操作。 这是一个非常简单的操作方法。 底部章节是您寻找http://develop.alpdesigns.ch/pages/linux/add_exe_program_to_linux.html的内容

使用Alacarte(旧的菜单编辑器,您可能需要安装它)来创建一个旧样式菜单项,其中包含一个图标和一个可启动程序的可执行文件。 然后通过alt + F2搜索并将其固定到启动器。

您可以使用“主菜单”(包名称为“alacarte”)轻松更改Ubuntu中的任何已安装程序。 您可以通过键入“主菜单”从软件中心下载它,然后:

在此处输入图像描述

  1. 运行“主菜单”程序。
  2. 从名为“菜单”的右侧面板中找到您的程序(在这种情况下,它位于“Wine”节点中)并在“Items”面板中选择它。
  3. 单击属性按钮。
  4. 从显示对话框中选择位于左上角的图标按钮。
  5. 最后,浏览文件系统中新图标的位置。

完成上述步骤后,您将在Unity启动器和面板中看到新图标。

祝你玩得愉快。

我有同样的问题,我发现这是因为我把快捷方式文件(PlayOnLinux放在桌面上)放到一个单独的文件夹中。 我将它们从文件夹中取出并放在桌面上,它工作正常(显示图标)。 希望这可以帮助!