我想运行脚本 temp-throttle (https://github.com/Sepero/temp-throttle)在启动时显示自定义 Plank 图标。
如果像这样运行,该脚本将把 CPU 频率限制在 79 摄氏度
sudo ./temp_throttle.sh 79
cd
由于需要在脚本路径中像上面一样指定温度,所以需要第二个脚本。
#!/bin/bash
cd "path-to-the-folder//temp-throttle-stable"
terminator -e 'sudo ./temp_throttle.sh 79' --geometry=300x80 -p hold
我已经调用它temp-throttle
并把它放进去了$HOME/bin
,正如指示的那样这里。
为了了解情况,我已将该命令集成到终端命令中,并添加了-p hold
设置终端配置文件以保持终端窗口打开的命令。
如果我将该脚本添加到启动应用程序列表,则 Plank 中使用的图标就是终端的图标。
我希望它在启动时运行并在 Plank 中显示我的自定义“temp.png”图标
为此,我创建了~/.local/share/applications/temp-throttle.desktop
包含以下行的文件:
[Desktop Entry]
Type=Application
Name=temp-throttle
Icon=temp
Categories=System;Monitor;
Exec=temp-throtle
直接执行(双击)它会显示终端Plank 中的图标。
.desktop
我可以通过从应用程序搜索和启动工具(例如 Slingshot)执行文件或使用命令gtk-launch temp-throttle
(如建议)让 Dock 使用自定义的“临时”图标这里)。
之后,自定义 Plank 图标当然可以固定到 Dock 中(右键单击,“保留在 Dock 中”)。这将创建/home/cipeos/.config/plank/dock1/launchers/temp-throttle.dockitem
包含以下行的文件
[PlankDockItemPreferences]
Launcher=file:///home/cipeos/.local/share/applications/temp-throttle.desktop
就像保罗约翰32的回答。他还似乎在评论中建议,这里重要的是所有涉及的文件都使用完全相同的名称:我的所有文件都称为temp-throttle
。
问题是如何.desktop
在启动时运行文件:如果我在启动时简单地添加桌面文件,它根本不会运行。如果我添加启动命令, gtk-launch temp-throttle.desktop
它仍然会使用终结器图标。
这个问题与此接近:将图标应用于 bash 脚本,但不同,因为如果运行命令/脚本/桌面文件,则该答案(使用.desktop
文件)将不起作用启动时。
似乎在启动时运行最终的命令/脚本时不会考虑文件Icon=
中的行.desktop
,无论使用何种方法运行.desktop
启动器。
我已经测试过这个问题下的许多答案(在终端中运行 .desktop 文件.desktop
),但如果在启动时运行该文件,它们将不会保留文件中指定的图标。
这答案为 Unity 提供了一个解决方案,但对于 Plank 来说却不起作用。
答案1
配置一个新的重命名的桌面文件,它可以执行您想要的操作。更改会话管理器以启动该文件而不是其他文件。配置文件之间的唯一区别是图标选择。
这是一个具体的例子。
打开终端,运行
$ charmap
注意到角色映射弹出到 Plank 中了吗?
右键单击该图标,选择“保持在 Dock 中”。
在终端中,cd 到 ~/.config/plank/dock1/launchers
您应该会看到“gucharmap.dockitem”。编辑该文件,更改其使用的桌面文件的名称。
- 你最好去创建你在步骤 3 中提到的桌面文件,否则,这整个事情就没什么意思了 ;)。例如,我做了一些有趣的事情,将 dock 中的 gucharmap 图标更改为与 Firefox 一模一样!我的桌面文件顶部:
[Desktop Entry] Name=Character Map Comment=Insert special characters into documents Keywords=font;unicode; Exec=gucharmap Icon=firefox
我所做的只是将图标替换为 Firefox,现在我的 Plank 看起来棒极了。我想我可以让所有图标都看起来像 Firefox。
现在,关于您的自定义脚本,重要的是确保 Exec 行正确,否则 Plank 将无法找到您的脚本并正确关联它。但我认为您可以做到这一点。