为 Ubuntu 安装的软件创建桌面图标

如何为 Ubuntu 安装的软件创建桌面图标(.desktop 启动器)

在 Ubuntu 或其他 Linux 发行版中,我们常常通过压缩包(如 .tar.gz)或官方二进制方式安装软件。这种安装方式虽然灵活方便,但默认并不会将软件添加到系统菜单中,也没有快捷方式或图标。为了提升使用体验,我们可以手动创建 .desktop 启动器,将其添加到桌面或应用菜单中。

本文以 Postman 为例,介绍如何手动为一个非 APT 安装的软件创建桌面图标。


一、准备工作

假设你已经下载了 Postman-linux-x64.tar.gz,并解压到了如下目录:

bash 复制代码
~/tools/Postman/

该目录下有一个可执行文件:Postman


二、创建 .desktop 文件

.desktop 文件是 Linux 桌面环境识别的快捷方式格式,它定义了应用的名称、图标、可执行路径等。

步骤如下:

  1. 打开终端,输入以下命令创建桌面文件:
bash 复制代码
nano ~/.local/share/applications/postman.desktop
  1. 填入以下内容(根据你的实际路径调整):
ini 复制代码
[Desktop Entry]
Name=Postman
Comment=Postman API Tool
Exec=/home/yourname/tools/Postman/Postman
Icon=/home/yourname/tools/Postman/app/resources/app/assets/icon.png
Terminal=false
Type=Application
Categories=Development;
StartupNotify=true

注意:

  • Exec 是你的 Postman 可执行文件的绝对路径。
  • Icon 是一个 .png 格式图标文件,最好是 256x256 或更大,路径同样使用绝对路径。
  • yourname 替换为你的用户名。
  1. 保存并关闭(Nano 中按 Ctrl + O 保存,Ctrl + X 退出)。

三、赋予可执行权限

.desktop 文件添加可执行权限:

bash 复制代码
chmod +x ~/.local/share/applications/postman.desktop

四、刷新系统应用菜单

运行以下命令刷新图标缓存(可选):

bash 复制代码
update-desktop-database ~/.local/share/applications

现在你可以在 应用菜单 中搜索并启动 Postman 了。


五、可选:固定到启动器或桌面

  • 添加到桌面:

    bash 复制代码
    cp ~/.local/share/applications/postman.desktop ~/Desktop/
    chmod +x ~/Desktop/postman.desktop
  • 固定到 Dock(启动器):

    启动一次 Postman,然后右键点击图标,选择"添加到收藏夹"即可。


六、遇到图标不显示怎么办?

  • 确保 Icon= 路径正确,并指向一个真实存在的 .png 文件。
  • 图标路径不支持 ~,一定要使用绝对路径,例如 /home/yourname/xxx.png
  • 确保 .desktop 文件权限为可执行。

总结

通过创建 .desktop 文件,你可以将任何手动安装的软件集成到 Ubuntu 的图形界面中,实现和系统应用一样的启动体验。这种方法不仅适用于 Postman,也适用于其他如 Android Studio、JetBrains 系列、VSCode 手动版等非系统软件。

如果你希望再进一步,也可以通过 xdg-mimexdg-icon-resource 来注册 MIME 类型和图标。


如果你喜欢这类 Linux 教程,欢迎点赞、收藏和关注我 😉。如有问题,欢迎留言交流!

相关推荐
白总Server6 分钟前
Golang 依赖注入:构建松耦合架构的关键技术
linux·运维·服务器·macos·架构·golang·xcode
夏沫mds8 分钟前
不动产登记区块链系统(Vue3 + Go + Gin + Hyperledger Fabric)
linux·golang·区块链·gin·fabric
m0_746177193 小时前
小白畅通Linux之旅-----Linux日志管理
linux·运维·服务器
菜菜笔记5 小时前
Ubuntu 挂载新盘
linux·运维·ubuntu
youliroam5 小时前
Ubuntu24.04.2 + kubectl1.33.1 + containerdv1.7.27 + calicov3.30.0
ubuntu·kubernetes·kubesphere·containerd·calico
慌糖5 小时前
Ubuntu安装Docker命令清单(以20.04为例)
linux·ubuntu·docker
zhangzhiwei-zzw5 小时前
Linux下使用nmcli连接网络
linux·网络·chrome
ZZH1120KQ6 小时前
Linux账号和权限管理
linux·运维
XMAIPC_Robot7 小时前
基于 ZYNQ UltraScale+ OV5640的高速图像传输系统设计,支持国产替代
linux·数码相机·fpga开发·架构·边缘计算
水水沝淼㵘7 小时前
嵌入式开发学习日志(linux系统编程--系统编程之 进程间通信IPC)Day32
linux·运维·学习