fedora中添加自定义的程序到菜单

文章标题是针对fedora的,其实估计对使用GNOME3的系统都有效,但是因为只使用了fedora系统,所以就只好用这个名字咯,大家可以自己试一试。

0、背景

以前用redhat/centos的时候桌面是GNOME2的,可以直接在桌面上建链接,都还好(虽然使用不多)。但是最近一段时间操作系统换成fedora22之后,桌面是GNOME3的了,以前尝试redhat7的时候就觉得这个桌面好丑啊,但是没办法只能将就用咯,只不过慢慢地还真的有点喜欢这种桌面了呢。

但是还是有一个问题,就是对于解压即用的软件(如eclipse),桌面上不能创建快捷方式,虽然可以加入到PATH里面,但是,总感觉不爽;后来由于一些原因使用WebStorm的时候,也是解压即用,但是第一次运行的时后有一个弹出框,西里糊涂地就点了确认,后来发现开始菜单里面有了它,我就知道是有办法将自定义的程序加入到菜单里面的了。

后来就上网查询了一些资料,成功的把安装的eclipse添加进了菜单,下面就是我整理的一些说明,希望对有需要的人有一些帮助。

1、在网上找资料

不得不说搜索引擎是好东西,一搜一大把,但是还是需要过滤/整理。

当时具体是搜索的什么关键字忘记了,但是得到的结果是很多的,有说的很详细的,涉及到很多gnome桌面的细节上去了,整体下来,我觉得有一个东西很有用,——“一个菜单项会有一个对应的.desktop文件”,而且还有很多文章都说了这个desktop文件中应该怎么写,都代表什么意思等等。

这里给出两篇文章链接:

GNOME3桌面或顶栏添加程序desktop entry(附带desktop entry文件的详解)

RedHat 将应用程序添加到 Gnome 菜单中

大家也可以去了解一下,我这里就不举例了。

2、WebStorm是怎么添加进去的

前面都说了,webstorm的程序会让用户确认一下,然后就把自己添加进菜单里面去了,所以肯定生成了对应的desktop文件,根据网上列举的几个路径,很快就找到了对应的文件:

在路径:

/usr/local/share/applications

找到文件:jetbrains-webstorm.desktop ,文件中的内容是如下的:

[Desktop Entry]
Version=1.0
Type=Application
Name=WebStorm
Icon=/opt/WebStorm-141.1550/bin/webide.png
Exec="/opt/WebStorm-141.1550/bin/webstorm.sh" %f
Comment=Develop with pleasure!
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-webstorm

当时我将这个文件的内容同网上的介绍一对比,发现一下就理解了,网上的介绍也很好,接下来我大致说一下。

3、.desktop文件的要点

    • Exec  这个是需要执行的程序,也就是说我们点击对应的菜单项之后执行这个程序
    • Icon  这个是图标,gnome默认是类似于手机应用列表的图标展示,这是一个图片
    • Name  名称,显示在图标下面
    • Categories  归属类别,这个需要在菜单的列表中才会体现出来

还有其他的条目可以不用太过于关心。

4、添加自己的程序

我要添加的程序是Spring定制的eclipse发行版--STS,其他的程序添加方法是一样的的,只要找到执行的文件即可。

在目录:

/usr/local/share/applications

中创建(需要sudo)文件:STS.desktop,然后在文件中填写如下的内容:

[Desktop Entry]
Version=1.0
Name=Spring Tool Suite
GenericName=STS
GenericName[zh_CN]=STS
Comment=STS
Comment[zh_CN]=STS
Exec=/opt/sts-3.7.0.RELEASE/STS %U
Terminal=false
Icon=/opt/sts-3.7.0.RELEASE/icon.xpm
Type=Application
Categories=Development;IDE;

这个文件我当初是对照着网上的文章自己拼凑出来的,现在想想,应该直接复制webstorm的然后修改的。

5、添加的程序的生效

在添加之后,立即就可以发现图标添加进去了,如果没有看到的话,那就应该是文件里面有问题。但是如果是修改原先就正常的文件的话,那么有可能不会立即生效,需要重启一下桌面。

6、后记

带着目的,通过网上介绍和自己摸索(中间配置错误了几次的),总算是把STS程序的启动菜单图标添加进系统列表了,以后就可以直接鼠标点一下就好了,非常之方便。

但是在使用之后发现eclipse本身的egit在gnome上有问题,后来还是经过探索给解决了(这是后话了),我打算在下一篇博客里面说一下问题和解决的过程以及解决方法!

enjoy!!

时间: 2024-12-13 08:38:20

fedora中添加自定义的程序到菜单的相关文章

Path2.0中绚丽的的旋转菜单

我们看一下实现的效果图: 在上图中,我将菜单弹出的效果设置成直线型,最终的弹出或汇总点在下面的红色按钮中. 它的实现原理是设置动画的同时并利用动画中的插入器(interpolator)来实现弹力.主要用到了OvershootInterpolator和AnticipateOvershootInterpolator,简单介绍下这两个插入器. OvershootInterpolator:表示向前甩一定值后再回到原来位置. AnticipateOvershootInterpolator:表示开始的时候向

怎样在 Ubuntu 中修改默认程序

作为一个新手,你需要知道如何在 Ubuntu 中修改任何默认程序,这也是我今天在这篇指南中所要讲的. 对于我来说,安装 VLC 多媒体播放器是安装完 Ubuntu 16.04 该做的事中最先做的几件事之一.为了能够使我双击一个视频就用 VLC 打开,在我安装完 VLC 之后我会设置它为默认程序. 在这里提及的方法适用于所有的 Ubuntu 12.04,Ubuntu 14.04 和Ubuntu 16.04.在 Ubuntu 中,这里有两种基本的方法可以修改默认程序: 通过系统设置 通过右键菜单 1

zTree 从数据库中动态加载树形菜单

这几天做动态菜单用到了这个插件,目前用的很广泛的一个开源框架,最新发布的QUI框架就是用这个插件开发的菜单部分,因此还是很值得深入研究和学习,通过使用感觉功能很丰富,好多函数不用自己开发和编写,官网上有很详尽的API可以参考,用着算顺手但学习使用的过程中也遇到了一些困难,听过反复测试和查资料都理解了,但也在思考一个问题,怎么样才能使得最快的时间从接触一个新东西到灵活掌握的程度? 这个不仅仅是一个树形结构的菜单,每个节点左边可以有一个复选框,看了看也挺简单的,只需要在setting里面配置一个ch

Fedora 中的容器技术:systemd-nspawn

本文将说明你可以怎样使用 Fedora 中各种可用的容器技术和学习"systemd-nspawn"的相关知识. 容器是什么? 一个容器就是一个用户空间实例,它能够在与托管容器的系统(叫做宿主系统)相隔离的环境中运行一个程序或者一个操作系统.这和"chroot"或虚拟机的思想非常类似.运行在容器中的进程是由与宿主操作系统相同的内核来管理的,但它们是与宿主文件系统以及其它进程隔离开的. 什么是 systemd-nspawn? systemd项目认为应当将容器技术变成桌面

在Fedora中如何授予权限给用户使用Docker

在Fedora中如何授予权限给用户使用Docker 本文翻译自Daniel J Walsh的一篇开源文章:http://opensource.com/business/14/10/docker-user-rights-fedora在Docker-dev邮件列表,有人问有关描述了如何将用户添加到Docker组的Fedora文档.用户希望让他的用户做一个Docker搜索,试图找到他们可以使用的镜像. 从有关Fedora的docker安装文档: 授予用户权限的使用Docker Fedora的19和20

OSG中的示例程序简介

OSG中的示例程序简介 转自:http://www.cnblogs.com/indif/archive/2011/05/13/2045136.html 1.example_osganimate一)演示了路径动画的使用(AnimationPath.AnimationPathCallback),路径动画回调可以作用在Camera.CameraView.MatrixTransform.PositionAttitudeTransform等四种类型的节点上.二)演示了osgSim::OverlayNode

[原]MFC中DIALOG(对话框)程序响应加速键(快捷键)

[原]MFC中DIALOG(对话框)程序响应加速键(快捷键) 2014-8-6阅读266 评论0 新建一个对话框程序,项目名为Test,删除默认确定,取消和静态文本框控件.添加一个按钮,Caption修改为“打开”,ID为IDC_Open,双击该按钮添加响应函数,响应函数如下: void CTestDlg::OnBnClickedOpen() { MessageBox("打开 被按下"); } 即程序运行之后点击“打开”则弹出一个对话框. 下面为这个按钮添加快捷键ctrl+o.左下角切

qt中qlineedit和qtextedit右键菜单翻译成中文

没有linguist需要安装Linguist: 在Terminal中输入: sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer 其中: qt4-dev-tools 中包括了Qt Assistant,Qt Linguist,Qt Creator     qt4-doc 这个是帮助文档     qt4-qtconfig Qt的配置工具,这个装好默认好     qt4-demos 官方的一些Dem

自定义小程序底部菜单

第一次写博客,如果有描述不当的地方,请多多包容,也欢迎指教. 做完第一个小程序的时候就觉得小程序的底部菜单有点坑,自己做的遮罩层根本无法遮住它,所以做第二个项目的时候,就决定自己模拟一个小程序底部菜单.下面说一下自己自定义底部菜单需要了解和注意的事项 1.小程序页面层级不能超过10级 2.小程序的wx.relaunch()可以清除所有页面痕迹并跳转至指定页面,但是,用户体验超级不好,跳转页面的时候会闪一下载跳转 3.小程序的wx.redirecto()关闭当前页面,跳转到应用内的某个页面,但是不