Contents of /xml/htdocs/proj/en/glep/glep-0016.html

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.4 - (show annotations) (download) (as text)
Tue May 4 17:54:01 2004 UTC (9 years, 11 months ago) by g2boojum
Branch: MAIN
Changes since 1.3: +53 -23 lines
File MIME type: text/html
update glep 16

1 <?xml version="1.0" encoding="utf-8" ?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4 <!--
5 This HTML is auto-generated. DO NOT EDIT THIS FILE! If you are writing a new
6 PEP, see http://www.python.org/peps/pep-0001.html for instructions and links
8 -->
9 <head>
10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
11 <meta name="generator" content="Docutils 0.3.0: http://docutils.sourceforge.net/" />
12 <title>GLEP 16 -- Gentoo Menu System</title>
13 <link rel="stylesheet" href="tools/glep.css" type="text/css" />
14 </head>
15 <body bgcolor="white">
16 <table class="navigation" cellpadding="0" cellspacing="0"
17 width="100%" border="0">
18 <tr><td class="navicon" width="150" height="35">
19 <a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
20 <img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
21 border="0" width="150" height="35" /></a></td>
22 <td class="textlinks" align="left">
23 [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
24 [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
25 [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0016.txt">GLEP Source</a></b>]
26 </td></tr></table>
27 <div class="document">
28 <table class="rfc2822 field-list" frame="void" rules="none">
29 <col class="field-name" />
30 <col class="field-body" />
31 <tbody valign="top">
32 <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">16</td>
33 </tr>
34 <tr class="field"><th class="field-name">Title:</th><td class="field-body">Gentoo Menu System</td>
35 </tr>
36 <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.4</td>
37 </tr>
38 <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0016.txt?cvsroot=gentoo">2004/05/04 17:52:27</a></td>
39 </tr>
40 <tr class="field"><th class="field-name">Author:</th><td class="field-body">Heinrich Wendel &lt;lanius&#32;&#97;t&#32;gentoo.org&gt;,</td>
41 </tr>
42 <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td>
43 </tr>
44 <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
45 </tr>
46 <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference" href="glep-0002.html">text/x-rst</a></td>
47 </tr>
48 <tr class="field"><th class="field-name">Created:</th><td class="field-body">09-Sep-2003</td>
49 </tr>
50 <tr class="field"><th class="field-name">Post-History:</th><td class="field-body">04-Oct-2003, 11-Dec-2003, 13-Dec-2003, 4-May-2004</td>
51 </tr>
52 </tbody>
53 </table>
54 <hr />
55 <div class="contents topic" id="contents">
56 <p class="topic-title"><a name="contents">Contents</a></p>
57 <ul class="simple">
58 <li><a class="reference" href="#definitions" id="id29" name="id29">Definitions</a></li>
59 <li><a class="reference" href="#abstract" id="id30" name="id30">Abstract</a></li>
60 <li><a class="reference" href="#motivation" id="id31" name="id31">Motivation</a></li>
61 <li><a class="reference" href="#rationale" id="id32" name="id32">Rationale</a></li>
62 <li><a class="reference" href="#specification" id="id33" name="id33">Specification</a></li>
63 <li><a class="reference" href="#implementation-status" id="id34" name="id34">Implementation / Status</a></li>
64 <li><a class="reference" href="#credits" id="id35" name="id35">Credits</a></li>
65 <li><a class="reference" href="#references" id="id36" name="id36">References</a></li>
66 <li><a class="reference" href="#copyright" id="id37" name="id37">Copyright</a></li>
67 </ul>
68 </div>
69 <div class="section" id="definitions">
70 <h1><a class="toc-backref" href="#id29" name="definitions">Definitions</a></h1>
71 <blockquote>
72 <dl>
73 <dt><em>APP</em></dt>
74 <dd>A graphical application that should be listed in the menus.</dd>
75 <dt><em>WM</em></dt>
76 <dd>A program containing a menu manager (i.e. a program that can display a menu, e.g. a windowmanager).</dd>
77 </dl>
78 </blockquote>
79 </div>
80 <div class="section" id="abstract">
81 <h1><a class="toc-backref" href="#id30" name="abstract">Abstract</a></h1>
82 <p>This GLEP handles a proposal for the following two goals:</p>
83 <ul class="simple">
84 <li>Create a common menu layout, which would be independent of the WM.
85 This point is quite important for those people who use more than one WM.</li>
86 <li>Provide a common way to add applications to the menus.</li>
87 </ul>
88 </div>
89 <div class="section" id="motivation">
90 <h1><a class="toc-backref" href="#id31" name="motivation">Motivation</a></h1>
91 <p>GNOME, KDE, Fluxbox, to name only a few, have all their own ways of handling
92 menus. There have been several requests <a class="footnote-reference" href="#id15" id="id1" name="id1">[1]</a> <a class="footnote-reference" href="#id16" id="id2" name="id2">[2]</a> <a class="footnote-reference" href="#id17" id="id3" name="id3">[3]</a> <a class="footnote-reference" href="#id18" id="id4" name="id4">[4]</a> <a class="footnote-reference" href="#id19" id="id5" name="id5">[5]</a> <a class="footnote-reference" href="#id20" id="id6" name="id6">[6]</a> from
93 users to streamline these menus. Furthermore there are several bug reports
94 about applications not having a menu entry <a class="footnote-reference" href="#id21" id="id7" name="id7">[7]</a>, but since there is not
95 standard way to create such an entry, they are just sitting around in
96 bugzilla.</p>
97 </div>
98 <div class="section" id="rationale">
99 <h1><a class="toc-backref" href="#id32" name="rationale">Rationale</a></h1>
100 <p>The idea of a common menu system is not new to the Linux world, every big
101 distribution (Debian, Mandrake, RedHat, Suse) has such a system. The big DE's,
102 KDE and GNOME, with the help of freedesktop.org <a class="footnote-reference" href="#id22" id="id8" name="id8">[8]</a>, are also trying to
103 implement one standard. That will most likely happen in GNOME 2.6 and KDE 3.2
104 (Currently they are only implementing different versions of the
105 desktop-entry-spec, but interpreting it in an incompatible way). But there
106 are still many other WM's that currently don't support these specs. So we are
107 trying to base our work on the specifications GNOME and KDE are going to use.
108 (These are no official standards but evolving specifications). This has the
109 following advantages:</p>
110 <ul class="simple">
111 <li>follow specified standards</li>
112 <li>i18n support</li>
113 <li>provide the necessary flexibility and modularity</li>
114 <li>integrate with small changes to our ebuildtree.</li>
115 <li>support for per system and per user menus</li>
116 </ul>
117 </div>
118 <div class="section" id="specification">
119 <h1><a class="toc-backref" href="#id33" name="specification">Specification</a></h1>
120 <p>We are trying to follow these specifications:</p>
121 <ul class="simple">
122 <li>Desktop Entry Specification <a class="footnote-reference" href="#id23" id="id9" name="id9">[9]</a></li>
123 <li>Menu Specification <a class="footnote-reference" href="#id24" id="id10" name="id10">[10]</a></li>
124 <li>Icon Theme Specification <a class="footnote-reference" href="#id25" id="id11" name="id11">[11]</a></li>
125 </ul>
126 <p>There are two libraries that offer an API to these specifications:</p>
127 <ul class="simple">
128 <li>PyXDG <a class="footnote-reference" href="#id26" id="id12" name="id12">[12]</a> (written in python)</li>
129 <li>Desktop File Utils <a class="footnote-reference" href="#id27" id="id13" name="id13">[13]</a> (written in C)</li>
130 </ul>
131 <p>Our goal is to patch the WM's with the help of these libraries to support the
132 specifications. APP's then only have to install a .desktop entry <a class="footnote-reference" href="#id23" id="id14" name="id14">[9]</a> and
133 optionally an icon and will be listed in all menus. This installation could
134 easily be done by two portage commands (domenu, doicon).</p>
135 </div>
136 <div class="section" id="implementation-status">
137 <h1><a class="toc-backref" href="#id34" name="implementation-status">Implementation / Status</a></h1>
138 <p>This GLEP exists for a long time now, still it is not accepted. I will outline
139 the current status:</p>
140 <ul class="simple">
141 <li>KDE 3.2 (x86) supports this specification</li>
142 <li>GNOME 2.6 (~x86) support this specification</li>
143 <li>domenu[<a class="reference" href="#id26">12</a>] has to be included in portage to be used by the ebuilds to
144 install a desktop entry</li>
145 <li>Somebody needs to write patches for the other WM's:</li>
146 </ul>
147 <p>We should focus on adding support to the following WM's first:</p>
148 <ul class="simple">
149 <li>xfce, blackblox / fluxbox / openbox / waimea / kahakai, icewm</li>
150 <li>fvwm, windowmaker, enlightment, afterstep</li>
151 </ul>
152 <p>The following are not so important, but support some kind of applications
153 menu:</p>
154 <ul class="simple">
155 <li>aewm / aewm++ / evilwm / windowlab / oroborus, amiwm, ctwm, flwm</li>
156 <li>golem, larswm, pekwm, plwm, pwm, qvwm, selectwm, treewm, trwm</li>
157 <li>vtwm, xpde</li>
158 </ul>
159 </div>
160 <div class="section" id="credits">
161 <h1><a class="toc-backref" href="#id35" name="credits">Credits</a></h1>
162 <p>Based on suggestions from former discussions on the gentoo bugzilla,
163 mailinglists and forums.</p>
164 </div>
165 <div class="section" id="references">
166 <h1><a class="toc-backref" href="#id36" name="references">References</a></h1>
167 <table class="footnote" frame="void" id="id15" rules="none">
168 <colgroup><col class="label" /><col /></colgroup>
169 <tbody valign="top">
170 <tr><td class="label"><a class="fn-backref" href="#id1" name="id15">[1]</a></td><td><a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=5510">http://bugs.gentoo.org/show_bug.cgi?id=5510</a></td></tr>
171 </tbody>
172 </table>
173 <table class="footnote" frame="void" id="id16" rules="none">
174 <colgroup><col class="label" /><col /></colgroup>
175 <tbody valign="top">
176 <tr><td class="label"><a class="fn-backref" href="#id2" name="id16">[2]</a></td><td><a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=10429">http://bugs.gentoo.org/show_bug.cgi?id=10429</a></td></tr>
177 </tbody>
178 </table>
179 <table class="footnote" frame="void" id="id17" rules="none">
180 <colgroup><col class="label" /><col /></colgroup>
181 <tbody valign="top">
182 <tr><td class="label"><a class="fn-backref" href="#id3" name="id17">[3]</a></td><td><a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=4884">http://bugs.gentoo.org/show_bug.cgi?id=4884</a></td></tr>
183 </tbody>
184 </table>
185 <table class="footnote" frame="void" id="id18" rules="none">
186 <colgroup><col class="label" /><col /></colgroup>
187 <tbody valign="top">
188 <tr><td class="label"><a class="fn-backref" href="#id4" name="id18">[4]</a></td><td><a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=25797">http://bugs.gentoo.org/show_bug.cgi?id=25797</a></td></tr>
189 </tbody>
190 </table>
191 <table class="footnote" frame="void" id="id19" rules="none">
192 <colgroup><col class="label" /><col /></colgroup>
193 <tbody valign="top">
194 <tr><td class="label"><a class="fn-backref" href="#id5" name="id19">[5]</a></td><td><a class="reference" href="http://forums.gentoo.org/viewtopic.php?t=66754">http://forums.gentoo.org/viewtopic.php?t=66754</a></td></tr>
195 </tbody>
196 </table>
197 <table class="footnote" frame="void" id="id20" rules="none">
198 <colgroup><col class="label" /><col /></colgroup>
199 <tbody valign="top">
200 <tr><td class="label"><a class="fn-backref" href="#id6" name="id20">[6]</a></td><td><a class="reference" href="http://forums.gentoo.org/viewtopic.php?p=263106#263106">http://forums.gentoo.org/viewtopic.php?p=263106#263106</a></td></tr>
201 </tbody>
202 </table>
203 <table class="footnote" frame="void" id="id21" rules="none">
204 <colgroup><col class="label" /><col /></colgroup>
205 <tbody valign="top">
206 <tr><td class="label"><a class="fn-backref" href="#id7" name="id21">[7]</a></td><td><a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=25756">http://bugs.gentoo.org/show_bug.cgi?id=25756</a></td></tr>
207 </tbody>
208 </table>
209 <table class="footnote" frame="void" id="id22" rules="none">
210 <colgroup><col class="label" /><col /></colgroup>
211 <tbody valign="top">
212 <tr><td class="label"><a class="fn-backref" href="#id8" name="id22">[8]</a></td><td><a class="reference" href="http://www.freedesktop.org">http://www.freedesktop.org</a></td></tr>
213 </tbody>
214 </table>
215 <table class="footnote" frame="void" id="id23" rules="none">
216 <colgroup><col class="label" /><col /></colgroup>
217 <tbody valign="top">
218 <tr><td class="label"><a name="id23">[9]</a></td><td><em>(<a class="fn-backref" href="#id9">1</a>, <a class="fn-backref" href="#id14">2</a>)</em> Desktop Entry Specification
219 [<a class="reference" href="http://www.freedesktop.org/standards/desktop-entry-spec/0.9.4/">http://www.freedesktop.org/standards/desktop-entry-spec/0.9.4/</a>]</td></tr>
220 </tbody>
221 </table>
222 <table class="footnote" frame="void" id="id24" rules="none">
223 <colgroup><col class="label" /><col /></colgroup>
224 <tbody valign="top">
225 <tr><td class="label"><a class="fn-backref" href="#id10" name="id24">[10]</a></td><td>Menu Specification
226 [<a class="reference" href="http://www.freedesktop.org/standards/menu-spec/0.8/">http://www.freedesktop.org/standards/menu-spec/0.8/</a>]</td></tr>
227 </tbody>
228 </table>
229 <table class="footnote" frame="void" id="id25" rules="none">
230 <colgroup><col class="label" /><col /></colgroup>
231 <tbody valign="top">
232 <tr><td class="label"><a class="fn-backref" href="#id11" name="id25">[11]</a></td><td>Icon Theme Specification
233 [<a class="reference" href="http://www.freedesktop.org/standards/icon-theme-spec/0.7/">http://www.freedesktop.org/standards/icon-theme-spec/0.7/</a>]</td></tr>
234 </tbody>
235 </table>
236 <table class="footnote" frame="void" id="id26" rules="none">
237 <colgroup><col class="label" /><col /></colgroup>
238 <tbody valign="top">
239 <tr><td class="label"><a class="fn-backref" href="#id12" name="id26">[12]</a></td><td>PyXDG
240 [<a class="reference" href="http://www.freedesktop.org/software/pyxdg">http://www.freedesktop.org/software/pyxdg</a>]</td></tr>
241 </tbody>
242 </table>
243 <table class="footnote" frame="void" id="id27" rules="none">
244 <colgroup><col class="label" /><col /></colgroup>
245 <tbody valign="top">
246 <tr><td class="label"><a class="fn-backref" href="#id13" name="id27">[13]</a></td><td>Desktop File Utils
247 [<a class="reference" href="http://www.freedesktop.org/software/desktop-file-utils">http://www.freedesktop.org/software/desktop-file-utils</a>]</td></tr>
248 </tbody>
249 </table>
250 <table class="footnote" frame="void" id="id28" rules="none">
251 <colgroup><col class="label" /><col /></colgroup>
252 <tbody valign="top">
253 <tr><td class="label"><a name="id28">[14]</a></td><td>domenu
254 [<a class="reference" href="http://bugs.gentoo.org/show_bug.cgi?id=25756">http://bugs.gentoo.org/show_bug.cgi?id=25756</a>]</td></tr>
255 </tbody>
256 </table>
257 </div>
258 <div class="section" id="copyright">
259 <h1><a class="toc-backref" href="#id37" name="copyright">Copyright</a></h1>
260 <p>This document has been placed in the public domain.</p>
261 </div>
262 </div>
264 <hr class="footer"/>
265 <div class="footer">
266 <a class="reference" href="glep-0016.txt">View document source</a>.
267 Generated on: 2004-05-04 17:53 UTC.
268 Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
269 </div>
270 </body>
271 </html>

  ViewVC Help
Powered by ViewVC 1.1.20