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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (show annotations) (download)
Tue May 4 17:54:01 2004 UTC (10 years, 3 months ago) by g2boojum
Branch: MAIN
Changes since 1.4: +3 -3 lines
File MIME type: text/plain
update glep 16

1 GLEP: 16
2 Title: Gentoo Menu System
3 Version: $Revision: 1.4 $
4 Last-Modified: $Date: 2004/05/04 17:52:27 $
5 Author: Heinrich Wendel <lanius@gentoo.org>,
6 Status: Draft
7 Type: Standards Track
8 Content-Type: text/x-rst
9 Created: 09-Sep-2003
10 Post-History: 04-Oct-2003, 11-Dec-2003, 13-Dec-2003, 4-May-2004
11
12 Definitions
13 ============
14
15 *APP*
16 A graphical application that should be listed in the menus.
17 *WM*
18 A program containing a menu manager (i.e. a program that can display a menu, e.g. a windowmanager).
19
20
21
22 Abstract
23 ========
24
25 This GLEP handles a proposal for the following two goals:
26
27 * Create a common menu layout, which would be independent of the WM.
28 This point is quite important for those people who use more than one WM.
29 * Provide a common way to add applications to the menus.
30
31
32
33 Motivation
34 ==========
35
36 GNOME, KDE, Fluxbox, to name only a few, have all their own ways of handling
37 menus. There have been several requests [1]_ [2]_ [3]_ [4]_ [5]_ [6]_ from
38 users to streamline these menus. Furthermore there are several bug reports
39 about applications not having a menu entry [7]_, but since there is not
40 standard way to create such an entry, they are just sitting around in
41 bugzilla.
42
43
44
45 Rationale
46 =========
47
48 The idea of a common menu system is not new to the Linux world, every big
49 distribution (Debian, Mandrake, RedHat, Suse) has such a system. The big DE's,
50 KDE and GNOME, with the help of freedesktop.org [8]_, are also trying to
51 implement one standard. That will most likely happen in GNOME 2.6 and KDE 3.2
52 (Currently they are only implementing different versions of the
53 desktop-entry-spec, but interpreting it in an incompatible way). But there
54 are still many other WM's that currently don't support these specs. So we are
55 trying to base our work on the specifications GNOME and KDE are going to use.
56 (These are no official standards but evolving specifications). This has the
57 following advantages:
58
59 * follow specified standards
60 * i18n support
61 * provide the necessary flexibility and modularity
62 * integrate with small changes to our ebuildtree.
63 * support for per system and per user menus
64
65
66
67 Specification
68 =============
69
70 We are trying to follow these specifications:
71
72 * Desktop Entry Specification [9]_
73 * Menu Specification [10]_
74 * Icon Theme Specification [11]_
75
76 There are two libraries that offer an API to these specifications:
77
78 * PyXDG [12]_ (written in python)
79 * Desktop File Utils [13]_ (written in C)
80
81 Our goal is to patch the WM's with the help of these libraries to support the
82 specifications. APP's then only have to install a .desktop entry [9]_ and
83 optionally an icon and will be listed in all menus. This installation could
84 easily be done by two portage commands (domenu, doicon).
85
86
87 Implementation / Status
88 =======================
89
90 This GLEP exists for a long time now, still it is not accepted. I will outline
91 the current status:
92
93 * KDE 3.2 (x86) supports this specification
94 * GNOME 2.6 (~x86) support this specification
95 * domenu[12_] has to be included in portage to be used by the ebuilds to
96 install a desktop entry
97 * Somebody needs to write patches for the other WM's:
98
99 We should focus on adding support to the following WM's first:
100
101 * xfce, blackblox / fluxbox / openbox / waimea / kahakai, icewm
102 * fvwm, windowmaker, enlightment, afterstep
103
104 The following are not so important, but support some kind of applications
105 menu:
106
107 * aewm / aewm++ / evilwm / windowlab / oroborus, amiwm, ctwm, flwm
108 * golem, larswm, pekwm, plwm, pwm, qvwm, selectwm, treewm, trwm
109 * vtwm, xpde
110
111
112 Credits
113 =======
114
115 Based on suggestions from former discussions on the gentoo bugzilla,
116 mailinglists and forums.
117
118
119
120 References
121 ==========
122
123 .. [1] http://bugs.gentoo.org/show_bug.cgi?id=5510
124 .. [2] http://bugs.gentoo.org/show_bug.cgi?id=10429
125 .. [3] http://bugs.gentoo.org/show_bug.cgi?id=4884
126 .. [4] http://bugs.gentoo.org/show_bug.cgi?id=25797
127 .. [5] http://forums.gentoo.org/viewtopic.php?t=66754
128 .. [6] http://forums.gentoo.org/viewtopic.php?p=263106#263106
129 .. [7] http://bugs.gentoo.org/show_bug.cgi?id=25756
130 .. [8] http://www.freedesktop.org
131 .. [9] Desktop Entry Specification
132 [http://www.freedesktop.org/standards/desktop-entry-spec/0.9.4/]
133 .. [10] Menu Specification
134 [http://www.freedesktop.org/standards/menu-spec/0.8/]
135 .. [11] Icon Theme Specification
136 [http://www.freedesktop.org/standards/icon-theme-spec/0.7/]
137 .. [12] PyXDG
138 [http://www.freedesktop.org/software/pyxdg]
139 .. [13] Desktop File Utils
140 [http://www.freedesktop.org/software/desktop-file-utils]
141 .. [14] domenu
142 [http://bugs.gentoo.org/show_bug.cgi?id=25756]
143
144
145 Copyright
146 =========
147
148 This document has been placed in the public domain.

  ViewVC Help
Powered by ViewVC 1.1.20