我隐藏了 Unity 的启动器,因为我更喜欢使用 cairo dock。
这就是为什么我尝试找到一种方法来让从 Ubuntu 软件中心安装的东西自动在我的桌面上设置快捷方式。
答案1
在后台运行下面的脚本,它将自动在你的桌面上创建一个启动器(仅限)新已安装的软件。
它也是:
- 检查新项目是否实际上是一个应用程序,旨在从启动器启动(检查
NoDisplay=true
) - 使桌面上的启动器可执行,可供使用。
如何使用
- 将下面的脚本复制到一个空文件中(例如使用
gedit
),并将其保存为某处make_starter.py
。 如果您首先想测试它:通过以下命令从终端窗口运行它:
python3 /path/to/make_starter.py
像您习惯的那样安装应用程序。安装完成后,桌面上应该会出现一个图标
如果一切正常,请将其添加到启动应用程序中:Dash > 启动应用程序 > 添加。添加命令:
python3 /path/to/make_starter.py
笔记
Ubuntu 的本地化版本可能对“桌面”有不同的名称(荷兰语为“Bureaublad”)。如果是这样,请在以下行中替换:
desktopname = "Desktop"
“桌面”的本地化名称。
剧本
#!/usr/bin/env python3
import subprocess
import os
import time
import shutil
desktopname = "Desktop"
dr = "/usr/share/applications"
while True:
current = os.listdir(dr)
time.sleep(10)
last = os.listdir(dr)
for item in last:
if not item in current and item.endswith(".desktop"):
file = dr+"/"+item
with open(file) as src:
text = src.read()
if not "NoDisplay=true" in text:
target = os.environ["HOME"]+"/"+desktopname+"/"+item
shutil.copyfile(file, target)
command = "chmod +x "+target
subprocess.Popen(["/bin/bash", "-c", command])
答案2
这会非常混乱,因为可能有超过一百个应用程序图标。这些图标(实际上,桌面启动器文件) 通常是/usr/share/applications
。所以你可以在终端中运行以下命令:
find /usr/share/applications -type f -name '*.desktop' -exec cp --target-directory ~/Desktop/ {} +
但这会创建每个启动器的副本在您的桌面上。 (可能几百个,取决于你的环境)
您可以/usr/share/applications
在文件管理器中浏览,然后手动将相关应用程序复制到桌面。据我所知,没有自动方法可以让软件中心执行此操作。