将菜单项添加到GNOME菜单或Unity

Ash*_*ana 1 linux ubuntu gnome fedora ubuntu-unity

我想将应用程序的菜单项添加到GNOME菜单。我已经为其创建了一个桌面文件并将其放在中/usr/share/applications,但是菜单项未出现在GNOME菜单中。以下是我以Aces.desktop... 的名义创建的桌面文件

[Desktop Entry]
Encoding=UTF-8
Version 1.0
Name=Aces
Comment=Compile and Execute C programs
Categories=GNOME;Application;Development;
Exec=/usr/share/Aces/Aces
Icon=/usr/share/Aces/icon.png
Terminal=false
Type=Application
StartupNotify=true
Run Code Online (Sandbox Code Playgroud)

将其放入后/usr/share/applications,我尝试重新启动PC,但仍然无法正常工作。

任何形式的帮助都是可贵的... :)

小智 8

好吧,我刚刚通过三个步骤将我的程序添加到 Debian 9 / Ubuntu 最新的 Unity 界面

0.- 在您的应用程序文件夹中找到或创建一个带有 .xpm 或 .png 扩展名的方形 72x72 或 96x96 或 128x128 等图标。

1.- 在从 /usr/share/applications/{example}.desktop 复制的应用程序文件夹中,将其重命名为 {myapp}.desktop 并制作它以满足您的应用程序要求

2.- 运行此命令,然后编辑回 {myapp}.desktop,以防出现问题

$ desktop-file-validate {myapp}.desktop
Run Code Online (Sandbox Code Playgroud)

3.-运行此命令将您的启动器安装到适当的目录中并将其上线

in case of 'just for current user' do: 
$ desktop-file-install --dir=/home/{user}/.local/share/applications/ {myapp}.desktop

'for all users' (/usr/share/applications/) do as root:
# desktop-file-install {myapp}.desktop
Run Code Online (Sandbox Code Playgroud)


Ash*_*ana 5

我发现了自己的愚蠢错误:)我忘记赋予桌面文件可执行权限。因此,在通过命令将可执行文件特权授予桌面文件之后

chmod +x <desktop file path>
Run Code Online (Sandbox Code Playgroud)

放入

/usr/share/applications  /* So the menu option is available to all the user */
Run Code Online (Sandbox Code Playgroud)

要么

~/.local/share/applications  /* In this case the menu option is available only to that particular user*/
Run Code Online (Sandbox Code Playgroud)

应用可执行权限后,桌面文件将使用您在.desktop文件中指定的名称和图标。

  • 很高兴您解决了问题,但此解决方案不太可能是正确的。桌面文件不会被执行,因此不需要被标记为可执行文件。查看 /usr/share/applications:没有一个桌面文件被标记为可执行文件。 (2认同)