1. 简介示例
桌面入口文件(Desktop Entry File)是一种遵循 Freedesktop.org 制定的 Desktop Entry Specification 标准的配置文件,主要用于 Linux 和其他类 Unix 系统的桌面环境中的通用文件(包括 GNOME、KDE、XFCE 和 Unity 等)
这类文件以 .desktop 为扩展名,一般Linux桌面环境中的常用程序入口文件存储在 /usr/share/applications/ 或 ~/.local/share/applications/ 目录下
以下是一个简单的示例
bash
[Desktop Entry]
Type=Application
Name=My Application
Exec=gedit %F
Icon=accessories-text-editor
Categories=Utility;TextEditor;
Terminal=false
2. 字段详情
2.1 基本类型字段
| 字段 | 说明 |
|---|---|
Type |
桌面条目类型(Application / Link / Directory) |
Version |
规范版本(如 1.5) |
2.2 启动相关(Application 类型专用)
| 字段 | 说明 |
|---|---|
| Exec | 启动命令(支持 %f 等占位符) |
| TryExec | 测试Exec启动程序是否存在 ,不存在则不会启动 |
| Path | 启动时的工作目录 |
| Terminal | 是否在终端运行(true / false) |
| StartupNotify | 是否启用启动通知 |
| StartupWMClass | 窗口类名(Unity / GNOME 重要) |
其中Exec字段后面可以使用一组占位参数(field codes),用于接收文件、URL、图标等,常用与用户右键选择启动程序,当用户使用对应的.desktop程序打开一个txt文本文件,会传入该文件路径作为占位参数,常用代码如下
| code | 说明 |
|---|---|
%f |
单个文件路径 |
%F |
多个文件路径 |
%u |
单个 URL |
%U |
多个 URL |
2.3 应用显示相关
| 字段 | 说明 |
|---|---|
| Name | 应用显示名称 |
| GenericName | 通用名称(如"文本编辑器") |
| Comment | 简短描述(tooltip) |
| Icon | 图标名称或路径 |
以上字段都支持本地化:
bash
Name[zh_CN]=我的应用
Comment[zh_TW]=示例程式
2.6 可见性
| 字段 | 说明 |
|---|---|
| NoDisplay | true:不在菜单显示 |
| Hidden | true:等同于被删除 |
| OnlyShowIn | 只在指定桌面显示 |
| NotShowIn | 不在指定桌面显示 |
例如仅在GNOME和Unity桌面显示:
bash
OnlyShowIn=GNOME;Unity;
2.7 其他
| 字段 | 说明 |
|---|---|
| Categories | 菜单分类(必须合法) |
| Keywords | 搜索关键字 |
| MimeType | 支持的 MIME 类型列表 |
例如关联text文件:
bash
MimeType=text/plain;application/json;
3. 常用桌面入口文件位置
| 位置 | 作用 |
|---|---|
~/.local/share/applications/ |
当前用户 |
/usr/share/applications/ |
系统全局 |
/usr/local/share/applications/ |
本地安装 |
~/.config/autostart/ |
当前用户自启 |
/etc/xdg/autostart/ |
系统全局自启 |