可以将某些应用程序配置为在登录时自动启动。要启动的应用程序是通过将每个应用程序的 .desktop 文件放置在相应的目录中指定的,如 Freedesktop 应用程序自动启动规范中所定义。登录时,系统按以下顺序在以下目录中搜索 .desktop 文件:
~/.config/gnome-session/saved-session 目录。
$XDG_CONFIG_HOME/autostart 目录。如果未设置 $XDG_CONFIG_HOME 环境变量,则将在 ~/.config/autostart 缺省目录中搜索。
$XDG_CONFIG_DIRS 中每个目录的 autostart 子目录。如果未设置 $XDG_CONFIG_DIRS 环境变量,则将在 /usr/share/gnome/autostart:/etc/xdg/autostart 缺省目录中搜索。
如果为同一应用程序找到了冲突的 .desktop files 文件,则优先使用最先找到的 .desktop 文件。
应用程序的 .desktop 文件必须具有Working With Desktop Entry Files中定义的格式。所有键应按照定义进行解释,但存在以下例外。这些例外考虑了菜单中未显示自动启动目录中的 .desktop 文件。
Hidden 键-如果在 .desktop 文件中设置了 Hidden 键,则在 .desktop 文件中描述的应用程序将不会显示在 "Applications"(应用程序)菜单中,即使已安装该应用程序也是如此。通过 Hidden 键可以在不删除 .desktop 文件或卸载应用程序的情况下从菜单中快速地删除不常用的应用程序。
当 .desktop 文件中的 Hidden 键设置为 true 时,必须忽略 .desktop 文件。当多个目录中存在多个同名的 .desktop 文件时,则必须考虑最先找到的 .desktop 文件中的 Hidden 键。如果该 Hidden 键设置为 true,则还会忽略其他目录中的所有同名的 .desktop 文件。
OnlyShowIn 和 NotShowIn 键-OnlyShownIn 项包含一个字符串列表,其中标识了将自动启动该应用程序的桌面环境。所有其他桌面环境均不会自动启动该应用程序。例如,OnlyShowIn=GNOME;KDE。
NotShowIn 项包含一个字符串列表,其中包含禁止自动启动该应用程序的字符串。所有其他桌面应用程序必须自动启动该应用程序。
TryExec 键-TryExec 键的值必须匹配已安装的可执行程序,否则该程序不会自动启动。TryExec 字段的值可以是绝对路径,也可以是不包括任何路径组件的可执行文件的名称。如果指定可执行文件的名称时未提供任何路径组件,则将搜索 $PATH 环境以查找匹配的可执行程序。
要为所有用户设置缺省会话应用程序,请将相应的 .desktop 文件放置在 /etc/xdg/autostart 目录中。