/usr/share/doc/menu/html/ch6.html is in menu 2.1.46.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>Debian Menu System - How a user can override the menus</title>
<link href="index.html" rel="start">
<link href="ch5.html" rel="prev">
<link href="ch7.html" rel="next">
<link href="index.html#contents" rel="contents">
<link href="index.html#copyright" rel="copyright">
<link href="ch1.html" rel="chapter" title="1 Introduction">
<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
<link href="ch3.html" rel="chapter" title="3 The menu file">
<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
</head>
<body>
<p><a name="ch6"></a></p>
<hr>
<p>
[ <a href="ch5.html">previous</a> ]
[ <a href="index.html#contents">Contents</a> ]
[ <a href="ch1.html">1</a> ]
[ <a href="ch2.html">2</a> ]
[ <a href="ch3.html">3</a> ]
[ <a href="ch4.html">4</a> ]
[ <a href="ch5.html">5</a> ]
[ 6 ]
[ <a href="ch7.html">7</a> ]
[ <a href="ch8.html">8</a> ]
[ <a href="ch7.html">next</a> ]
</p>
<hr>
<h1>
Debian Menu System
<br>Chapter 6 - How a user can override the menus
</h1>
<hr>
<hr>
<h2><a name="s6.1"></a>6.1 Configuring the menus</h2>
<p>
Users can specify their own menu entries in the <code>~/.menu</code> directory.
The files can have an arbitrary file name as long as the new syntax for the
menu entries is used. They should start with either
</p>
<pre>
?package(installed-package):
</pre>
<p>
or
</p>
<pre>
?package(local.mystuff):
</pre>
<p>
if it's something that isn't ``debian-officially'' installed. (Any ``package''
that starts with ``<samp>local.</samp>'' is considered installed.)
</p>
<p>
If users want to have their own menu methods, they should create a
<code>~/.menu-methods</code> directory and put all their menu methods in it.
(If <code>~/.menu-methods</code> exists, <code>/etc/menu-methods</code> will
not be searched when a user runs <code>update-menus</code>).
</p>
<p>
A system administrator should place system-wide menu entries in
<code>/etc/menu</code> (not in <code>/usr/share/menu/package</code>, since
these files will probably be overwritten by a package upgrade).
</p>
<hr>
<h2><a name="s6.2"></a>6.2 Specifying that a menu entry should not be displayed</h2>
<p>
If a user wants to remove the entries of <samp>package</samp> from the system
menu then this will do the trick:
</p>
<pre>
echo -n > ~/.menu/package
</pre>
<p>
The zero-size file will tell <code>update-menus</code> that the corresponding
package should not have any menu entries listed. A system administrator can
remove menu entries system-wide with
</p>
<pre>
echo -n > /etc/menu/package
</pre>
<hr>
<h2><a name="s6.3"></a>6.3 Including other files</h2>
<p>
<var>Historical comment by Joost:</var>
</p>
<p>
<var>More out of curiosity than anything else, I recently read the KDE mailing
list. In it I saw some discussion about how good the Debian menu system is
(whow, thanks, guys!), but one person found a missing feature: s/he said you
couldn't include other files in the user menu files. Well, actually, it was
already possible, but not very well documented.</var>
</p>
<p>
To include the contents of the file <code>/usr/share/menu/somefile</code>, add
this to your menu file:
</p>
<pre>
!include /usr/share/menu/somefile
</pre>
<p>
Apart from that, it is of course possible to make the menu entry file
executable (<samp>chmod a+x ~/.menu/package</samp>), and do something like
</p>
<pre>
#!/bin/sh
cat /usr/share/menu/somefile
sed -e "/unwanted_entry/s/?package(/?package(notinstalled./" \
/usr/share/menu/someotherfile
</pre>
<p>
to get the same effect, with the added flexibility of being able to filter out
unwanted lines.
</p>
<hr>
<p>
[ <a href="ch5.html">previous</a> ]
[ <a href="index.html#contents">Contents</a> ]
[ <a href="ch1.html">1</a> ]
[ <a href="ch2.html">2</a> ]
[ <a href="ch3.html">3</a> ]
[ <a href="ch4.html">4</a> ]
[ <a href="ch5.html">5</a> ]
[ 6 ]
[ <a href="ch7.html">7</a> ]
[ <a href="ch8.html">8</a> ]
[ <a href="ch7.html">next</a> ]
</p>
<hr>
<p>
Debian Menu System
</p>
<address>
version 1.4, 10 November 2011<br>
<br>
Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
<br>
</address>
<hr>
</body>
</html>
|