/[gentoo]/xml/htdocs/proj/en/glep/glep-0016.html
Gentoo

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (show annotations) (download) (as text)
Thu Jan 25 03:26:26 2007 UTC (7 years, 9 months ago) by antarus
Branch: MAIN
Changes since 1.7: +3 -3 lines
File MIME type: text/html
Fix headers in all current gleps

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
7 to templates. DO NOT USE THIS HTML FILE AS YOUR TEMPLATE!
8 -->
9 <head>
10 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
11 <meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
12 <title>GLEP 16 -- Gentoo Menu System</title>
13 <style type="text/css">
14
15 /*
16 :Author: David Goodger
17 :Contact: goodger@users.sourceforge.net
18 :date: $Date: 2006/10/10 20:25:14 $
19 :version: $Revision: 1.7 $
20 :copyright: This stylesheet has been placed in the public domain.
21
22 Default cascading style sheet for the PEP HTML output of Docutils.
23 */
24
25 .first {
26 margin-top: 0 }
27
28 .last {
29 margin-bottom: 0 }
30
31 .navigation {
32 width: 100% ;
33 background: #cc99ff ;
34 margin-top: 0px ;
35 margin-bottom: 0px }
36
37 .navigation .navicon {
38 width: 150px ;
39 height: 35px }
40
41 .navigation .textlinks {
42 padding-left: 1em ;
43 text-align: left }
44
45 .navigation td, .navigation th {
46 padding-left: 0em ;
47 padding-right: 0em ;
48 vertical-align: middle }
49
50 .rfc2822 {
51 margin-top: 0.5em ;
52 margin-left: 0.5em ;
53 margin-right: 0.5em ;
54 margin-bottom: 0em }
55
56 .rfc2822 td {
57 text-align: left }
58
59 .rfc2822 th.field-name {
60 text-align: right ;
61 font-family: sans-serif ;
62 padding-right: 0.5em ;
63 font-weight: bold ;
64 margin-bottom: 0em }
65
66 a.toc-backref {
67 text-decoration: none ;
68 color: black }
69
70 body {
71 margin: 0px ;
72 margin-bottom: 1em ;
73 padding: 0px }
74
75 dd {
76 margin-bottom: 0.5em }
77
78 div.section {
79 margin-left: 1em ;
80 margin-right: 1em ;
81 margin-bottom: 1.5em }
82
83 div.section div.section {
84 margin-left: 0em ;
85 margin-right: 0em ;
86 margin-top: 1.5em }
87
88 div.abstract {
89 margin: 2em 5em }
90
91 div.abstract p.topic-title {
92 font-weight: bold ;
93 text-align: center }
94
95 div.attention, div.caution, div.danger, div.error, div.hint,
96 div.important, div.note, div.tip, div.warning {
97 margin: 2em ;
98 border: medium outset ;
99 padding: 1em }
100
101 div.attention p.admonition-title, div.caution p.admonition-title,
102 div.danger p.admonition-title, div.error p.admonition-title,
103 div.warning p.admonition-title {
104 color: red ;
105 font-weight: bold ;
106 font-family: sans-serif }
107
108 div.hint p.admonition-title, div.important p.admonition-title,
109 div.note p.admonition-title, div.tip p.admonition-title {
110 font-weight: bold ;
111 font-family: sans-serif }
112
113 div.figure {
114 margin-left: 2em }
115
116 div.footer, div.header {
117 font-size: smaller }
118
119 div.footer {
120 margin-left: 1em ;
121 margin-right: 1em }
122
123 div.system-messages {
124 margin: 5em }
125
126 div.system-messages h1 {
127 color: red }
128
129 div.system-message {
130 border: medium outset ;
131 padding: 1em }
132
133 div.system-message p.system-message-title {
134 color: red ;
135 font-weight: bold }
136
137 div.topic {
138 margin: 2em }
139
140 h1 {
141 font-family: sans-serif ;
142 font-size: large }
143
144 h2 {
145 font-family: sans-serif ;
146 font-size: medium }
147
148 h3 {
149 font-family: sans-serif ;
150 font-size: small }
151
152 h4 {
153 font-family: sans-serif ;
154 font-style: italic ;
155 font-size: small }
156
157 h5 {
158 font-family: sans-serif;
159 font-size: x-small }
160
161 h6 {
162 font-family: sans-serif;
163 font-style: italic ;
164 font-size: x-small }
165
166 .section hr {
167 width: 75% }
168
169 ol.simple, ul.simple {
170 margin-bottom: 1em }
171
172 ol.arabic {
173 list-style: decimal }
174
175 ol.loweralpha {
176 list-style: lower-alpha }
177
178 ol.upperalpha {
179 list-style: upper-alpha }
180
181 ol.lowerroman {
182 list-style: lower-roman }
183
184 ol.upperroman {
185 list-style: upper-roman }
186
187 p.caption {
188 font-style: italic }
189
190 p.credits {
191 font-style: italic ;
192 font-size: smaller }
193
194 p.label {
195 white-space: nowrap }
196
197 p.topic-title {
198 font-family: sans-serif ;
199 font-weight: bold }
200
201 pre.line-block {
202 font-family: serif ;
203 font-size: 100% }
204
205 pre.literal-block, pre.doctest-block {
206 margin-left: 2em ;
207 margin-right: 2em ;
208 background-color: #eeeeee }
209
210 span.classifier {
211 font-family: sans-serif ;
212 font-style: oblique }
213
214 span.classifier-delimiter {
215 font-family: sans-serif ;
216 font-weight: bold }
217
218 span.interpreted {
219 font-family: sans-serif }
220
221 span.option-argument {
222 font-style: italic }
223
224 span.pre {
225 white-space: pre }
226
227 span.problematic {
228 color: red }
229
230 table {
231 margin-top: 0.5em ;
232 margin-bottom: 0.5em }
233
234 td, th {
235 padding-left: 0.5em ;
236 padding-right: 0.5em ;
237 vertical-align: top }
238
239 td.num {
240 text-align: right }
241
242 th.field-name {
243 font-weight: bold ;
244 text-align: left ;
245 white-space: nowrap }
246
247 h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
248 font-size: 100% }
249
250 tt {
251 background-color: #eeeeee }
252
253 ul.auto-toc {
254 list-style-type: none }
255
256 </style>
257 </head>
258 <body bgcolor="white">
259 <table class="navigation" cellpadding="0" cellspacing="0"
260 width="100%" border="0">
261 <tr><td class="navicon" width="150" height="35">
262 <a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
263 <img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
264 border="0" width="150" height="35" /></a></td>
265 <td class="textlinks" align="left">
266 [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
267 [<b><a href="http://www.gentoo.org/proj/en/glep/">GLEP Index</a></b>]
268 [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0016.txt">GLEP Source</a></b>]
269 </td></tr></table>
270 <table class="rfc2822 docutils field-list" frame="void" rules="none">
271 <col class="field-name" />
272 <col class="field-body" />
273 <tbody valign="top">
274 <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">16</td>
275 </tr>
276 <tr class="field"><th class="field-name">Title:</th><td class="field-body">Gentoo Menu System</td>
277 </tr>
278 <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.7</td>
279 </tr>
280 <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/11/11 21:33:13</a></td>
281 </tr>
282 <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>
283 </tr>
284 <tr class="field"><th class="field-name">Status:</th><td class="field-body">deferred</td>
285 </tr>
286 <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
287 </tr>
288 <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>
289 </tr>
290 <tr class="field"><th class="field-name">Created:</th><td class="field-body">09-Sep-2003</td>
291 </tr>
292 <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, 11-Nov-2004</td>
293 </tr>
294 </tbody>
295 </table>
296 <hr />
297 <div class="contents topic">
298 <p class="topic-title first"><a id="contents" name="contents">Contents</a></p>
299 <ul class="simple">
300 <li><a class="reference" href="#definitions" id="id29" name="id29">Definitions</a></li>
301 <li><a class="reference" href="#abstract" id="id30" name="id30">Abstract</a></li>
302 <li><a class="reference" href="#status" id="id31" name="id31">Status</a></li>
303 <li><a class="reference" href="#motivation" id="id32" name="id32">Motivation</a></li>
304 <li><a class="reference" href="#rationale" id="id33" name="id33">Rationale</a></li>
305 <li><a class="reference" href="#specification" id="id34" name="id34">Specification</a></li>
306 <li><a class="reference" href="#implementation-status" id="id35" name="id35">Implementation / Status</a></li>
307 <li><a class="reference" href="#credits" id="id36" name="id36">Credits</a></li>
308 <li><a class="reference" href="#references" id="id37" name="id37">References</a></li>
309 <li><a class="reference" href="#copyright" id="id38" name="id38">Copyright</a></li>
310 </ul>
311 </div>
312 <div class="section">
313 <h1><a class="toc-backref" href="#id29" id="definitions" name="definitions">Definitions</a></h1>
314 <blockquote>
315 <dl class="docutils">
316 <dt><em>APP</em></dt>
317 <dd>A graphical application that should be listed in the menus.</dd>
318 <dt><em>WM</em></dt>
319 <dd>A program containing a menu manager (i.e. a program that can display a menu, e.g. a windowmanager).</dd>
320 </dl>
321 </blockquote>
322 </div>
323 <div class="section">
324 <h1><a class="toc-backref" href="#id30" id="abstract" name="abstract">Abstract</a></h1>
325 <p>This GLEP handles a proposal for the following two goals:</p>
326 <ul class="simple">
327 <li>Create a common menu layout, which would be independent of the WM.
328 This point is quite important for those people who use more than one WM.</li>
329 <li>Provide a common way to add applications to the menus.</li>
330 </ul>
331 </div>
332 <div class="section">
333 <h1><a class="toc-backref" href="#id31" id="status" name="status">Status</a></h1>
334 <p>Timed out (and now subsumed by the gentoo-desktop top-level project)</p>
335 </div>
336 <div class="section">
337 <h1><a class="toc-backref" href="#id32" id="motivation" name="motivation">Motivation</a></h1>
338 <p>GNOME, KDE, Fluxbox, to name only a few, have all their own ways of handling
339 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
340 users to streamline these menus. Furthermore there are several bug reports
341 about applications not having a menu entry <a class="footnote-reference" href="#id21" id="id7" name="id7">[7]</a>, but since there is not
342 standard way to create such an entry, they are just sitting around in
343 bugzilla.</p>
344 </div>
345 <div class="section">
346 <h1><a class="toc-backref" href="#id33" id="rationale" name="rationale">Rationale</a></h1>
347 <p>The idea of a common menu system is not new to the Linux world, every big
348 distribution (Debian, Mandrake, RedHat, Suse) has such a system. The big DE's,
349 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
350 implement one standard. That will most likely happen in GNOME 2.6 and KDE 3.2
351 (Currently they are only implementing different versions of the
352 desktop-entry-spec, but interpreting it in an incompatible way). But there
353 are still many other WM's that currently don't support these specs. So we are
354 trying to base our work on the specifications GNOME and KDE are going to use.
355 (These are no official standards but evolving specifications). This has the
356 following advantages:</p>
357 <ul class="simple">
358 <li>follow specified standards</li>
359 <li>i18n support</li>
360 <li>provide the necessary flexibility and modularity</li>
361 <li>integrate with small changes to our ebuildtree.</li>
362 <li>support for per system and per user menus</li>
363 </ul>
364 </div>
365 <div class="section">
366 <h1><a class="toc-backref" href="#id34" id="specification" name="specification">Specification</a></h1>
367 <p>We are trying to follow these specifications:</p>
368 <ul class="simple">
369 <li>Desktop Entry Specification <a class="footnote-reference" href="#id23" id="id9" name="id9">[9]</a></li>
370 <li>Menu Specification <a class="footnote-reference" href="#id24" id="id10" name="id10">[10]</a></li>
371 <li>Icon Theme Specification <a class="footnote-reference" href="#id25" id="id11" name="id11">[11]</a></li>
372 </ul>
373 <p>There are two libraries that offer an API to these specifications:</p>
374 <ul class="simple">
375 <li>PyXDG <a class="footnote-reference" href="#id26" id="id12" name="id12">[12]</a> (written in python)</li>
376 <li>Desktop File Utils <a class="footnote-reference" href="#id27" id="id13" name="id13">[13]</a> (written in C)</li>
377 </ul>
378 <p>Our goal is to patch the WM's with the help of these libraries to support the
379 specifications. APP's then only have to install a .desktop entry <a class="footnote-reference" href="#id23" id="id14" name="id14">[9]</a> and
380 optionally an icon and will be listed in all menus. This installation could
381 easily be done by two portage commands (domenu, doicon).</p>
382 </div>
383 <div class="section">
384 <h1><a class="toc-backref" href="#id35" id="implementation-status" name="implementation-status">Implementation / Status</a></h1>
385 <p>This GLEP exists for a long time now, still it is not accepted. I will outline
386 the current status:</p>
387 <ul class="simple">
388 <li>KDE 3.2 (x86) supports this specification</li>
389 <li>GNOME 2.6 (~x86) support this specification</li>
390 <li>domenu[<a class="reference" href="#id26">12</a>] has to be included in portage to be used by the ebuilds to
391 install a desktop entry</li>
392 <li>Somebody needs to write patches for the other WM's:</li>
393 </ul>
394 <p>We should focus on adding support to the following WM's first:</p>
395 <ul class="simple">
396 <li>xfce, blackblox / fluxbox / openbox / waimea / kahakai, icewm</li>
397 <li>fvwm, windowmaker, enlightment, afterstep</li>
398 </ul>
399 <p>The following are not so important, but support some kind of applications
400 menu:</p>
401 <ul class="simple">
402 <li>aewm / aewm++ / evilwm / windowlab / oroborus, amiwm, ctwm, flwm</li>
403 <li>golem, larswm, pekwm, plwm, pwm, qvwm, selectwm, treewm, trwm</li>
404 <li>vtwm, xpde</li>
405 </ul>
406 </div>
407 <div class="section">
408 <h1><a class="toc-backref" href="#id36" id="credits" name="credits">Credits</a></h1>
409 <p>Based on suggestions from former discussions on the gentoo bugzilla,
410 mailinglists and forums.</p>
411 </div>
412 <div class="section">
413 <h1><a class="toc-backref" href="#id37" id="references" name="references">References</a></h1>
414 <table class="docutils footnote" frame="void" id="id15" rules="none">
415 <colgroup><col class="label" /><col /></colgroup>
416 <tbody valign="top">
417 <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>
418 </tbody>
419 </table>
420 <table class="docutils footnote" frame="void" id="id16" rules="none">
421 <colgroup><col class="label" /><col /></colgroup>
422 <tbody valign="top">
423 <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>
424 </tbody>
425 </table>
426 <table class="docutils footnote" frame="void" id="id17" rules="none">
427 <colgroup><col class="label" /><col /></colgroup>
428 <tbody valign="top">
429 <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>
430 </tbody>
431 </table>
432 <table class="docutils footnote" frame="void" id="id18" rules="none">
433 <colgroup><col class="label" /><col /></colgroup>
434 <tbody valign="top">
435 <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>
436 </tbody>
437 </table>
438 <table class="docutils footnote" frame="void" id="id19" rules="none">
439 <colgroup><col class="label" /><col /></colgroup>
440 <tbody valign="top">
441 <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>
442 </tbody>
443 </table>
444 <table class="docutils footnote" frame="void" id="id20" rules="none">
445 <colgroup><col class="label" /><col /></colgroup>
446 <tbody valign="top">
447 <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>
448 </tbody>
449 </table>
450 <table class="docutils footnote" frame="void" id="id21" rules="none">
451 <colgroup><col class="label" /><col /></colgroup>
452 <tbody valign="top">
453 <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>
454 </tbody>
455 </table>
456 <table class="docutils footnote" frame="void" id="id22" rules="none">
457 <colgroup><col class="label" /><col /></colgroup>
458 <tbody valign="top">
459 <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>
460 </tbody>
461 </table>
462 <table class="docutils footnote" frame="void" id="id23" rules="none">
463 <colgroup><col class="label" /><col /></colgroup>
464 <tbody valign="top">
465 <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
466 [<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>
467 </tbody>
468 </table>
469 <table class="docutils footnote" frame="void" id="id24" rules="none">
470 <colgroup><col class="label" /><col /></colgroup>
471 <tbody valign="top">
472 <tr><td class="label"><a class="fn-backref" href="#id10" name="id24">[10]</a></td><td>Menu Specification
473 [<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>
474 </tbody>
475 </table>
476 <table class="docutils footnote" frame="void" id="id25" rules="none">
477 <colgroup><col class="label" /><col /></colgroup>
478 <tbody valign="top">
479 <tr><td class="label"><a class="fn-backref" href="#id11" name="id25">[11]</a></td><td>Icon Theme Specification
480 [<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>
481 </tbody>
482 </table>
483 <table class="docutils footnote" frame="void" id="id26" rules="none">
484 <colgroup><col class="label" /><col /></colgroup>
485 <tbody valign="top">
486 <tr><td class="label"><a class="fn-backref" href="#id12" name="id26">[12]</a></td><td>PyXDG
487 [<a class="reference" href="http://www.freedesktop.org/software/pyxdg">http://www.freedesktop.org/software/pyxdg</a>]</td></tr>
488 </tbody>
489 </table>
490 <table class="docutils footnote" frame="void" id="id27" rules="none">
491 <colgroup><col class="label" /><col /></colgroup>
492 <tbody valign="top">
493 <tr><td class="label"><a class="fn-backref" href="#id13" name="id27">[13]</a></td><td>Desktop File Utils
494 [<a class="reference" href="http://www.freedesktop.org/software/desktop-file-utils">http://www.freedesktop.org/software/desktop-file-utils</a>]</td></tr>
495 </tbody>
496 </table>
497 <table class="docutils footnote" frame="void" id="id28" rules="none">
498 <colgroup><col class="label" /><col /></colgroup>
499 <tbody valign="top">
500 <tr><td class="label"><a name="id28">[14]</a></td><td>domenu
501 [<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>
502 </tbody>
503 </table>
504 </div>
505 <div class="section">
506 <h1><a class="toc-backref" href="#id38" id="copyright" name="copyright">Copyright</a></h1>
507 <p>This document has been placed in the public domain.</p>
508 </div>
509
510 </div>
511 <div class="footer">
512 <hr class="footer" />
513 <a class="reference" href="glep-0016.txt">View document source</a>.
514 Generated on: 2006-10-10 20:23 UTC.
515 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.
516
517 </div>
518 </body>
519 </html>

  ViewVC Help
Powered by ViewVC 1.1.20