1 Check-Script: menu-format
2 Author: Joey Hess <joeyh@master.debian.org>
7 Info: This script validates the format of menu files.
9 Tag: old-format-menu-file
11 Info: The package contains a menu file that is in the old menu file format.
12 This format is deprecated. Convert the menu file to the new menu format.
13 Note that lintian will not test this file for any other problems.
15 Tag: whitespace-after-continuation-character
17 Info: The menu item is split up over 2 or more lines using '\' at the end of
18 the line to join them together. However, there is some whitespace after
19 the '\' character, which is not guaranteed to be handled correctly.
20 The '\' should be at the end of the line.
22 Tag: bad-test-in-menu-item
24 Info: The menu file contains an item that does not start with the text
25 "?package(somepackage):". All menu file lines must test for the existence
26 of a package in this way.
28 Tag: unparsable-menu-item
30 Info: An item of the menu file cannot be parsed as a series of tag=value
31 pairs. This could be because you didn't close a set of double quotes.
33 Tag: pkg-not-in-package-test
35 Info: This menu item doesn't test to see if the package containing it is
36 installed. The start of any menu item is a conditional testing whether
37 the required packages are installed. Normally this conditional should
38 always check at least the package containing it, since menu items should
39 be included in the package that provides the application the menu refers
42 This error usually indicates a misspelling of the package name in the
43 menu entry or a copied menu entry from another package that doesn't apply
47 Tag: duplicated-tag-in-menu-item
49 Info: The menu item contains two instances of the same tag. This is just a
50 waste of space, as menu will only use one of them.
52 Tag: menu-item-missing-required-tag
54 Info: The menu item has a line that is missing a required tag. It's likely
55 that the line will have no effect without this tag. <tt>install-menu</tt> may
56 report this as an error during package installation.
58 Tag: menu-item-contains-unknown-tag
60 Info: The menu item has a line that has a tag in it that is not one
61 of the standard tags (needs=, section=, title=, longtitle=, command=, etc).
62 While other tags can be used for specialized purposes, this is rare and
63 it's more likely the tag's name is misspelled.
65 Tag: menu-item-uses-icon-none
67 Info: The menu item has a line that uses icon=none. This is redundant and
68 deprecated -- if there is no icon, just leave off the icon tag.
70 Tag: menu-item-needs-tag-has-unknown-value
72 Info: The menu item has a line that has a needs= field with a strange value.
73 This may be intentional, but it's probably a typo that will make menu
76 Tag: menu-item-adds-to-root-menu
78 Info: The menu item has a line that specifies a section that will put a menu
79 item right in the root menu. Packages should never add items directly to the
80 root menu. Note that if you specify an empty section, this error will
81 pop up, as it will if you specify a section of "/".
83 Tag: menu-item-uses-apps-games-section
85 Info: The menu item has a line that specifies a section under "Apps/Games".
86 This section has been moved to just "Games".
88 Tag: menu-item-uses-apps-section
90 Info: The menu item has a line that specifies a section under "Apps".
91 This section has been moved to "Applications".
93 Tag: menu-item-uses-windowmanagers-section
95 Info: The menu item has a line that specifies a section under
96 "WindowManagers". This section has been moved to "Window Managers".
98 Tag: menu-item-creates-new-section
100 Info: The menu item has a line that specifies an unknown section or uses a
101 section that is intended only as a menu root, not as a section that
102 applications should use directly. Check the spelling of the section and
103 check the section against the list in the menu policy. (The menu
104 sections changed as of June of 2007.)
105 Ref: Debian Menu sub-policy 2.1
107 Tag: menu-item-creates-new-root-section
109 Info: The menu item has a line that specifies a new section to put a menu
110 entry in, and this section appears right in the root menu. This is
111 almost certainly an error. No new sections should be added to the root
112 menu without discussion with the author of menu.
114 Tag: menu-icon-not-in-xpm-format
116 Info: Icons in the Debian menu system should be in XPM format.
119 Tag: menu-icon-missing
121 Info: This icon file couldn't be found. If the path to the icon in the
122 menu file is an absolute path, make sure that icon exists at that path in
123 the package. If the path is relative or a simple filename, make sure the
124 icon is installed in <tt>/usr/share/pixmaps</tt>, the default location.
126 If the icon is in a package this package depends on, add a lintian
127 override for this warning. lintian cannot check icons in other packages.
130 Tag: menu-icon-too-big
132 Info: Icons in the Debian menu system should be at most 32x32 pixels
133 (icon16x16 icons should of course be at most 16x16 pixels)
136 Tag: menu-icon-cannot-be-parsed
138 Info: The icon file could not be parsed. Perhaps this means a bad XPM file,
139 or perhaps it means the lintian parsing needs to be improved. If the
140 window managers and standard tools accept the file then probably it's the
141 latter; please file a bug on lintian then.
143 Tag: su-wrapper-without--c
145 Info: The menu item command or desktop file uses an su wrapper such as
146 su-to-root without the -c flag. This is a syntax error.
149 Tag: su-to-root-with-usr-sbin
151 Info: The menu item or desktop file command uses su-to-root as
152 /usr/sbin/su-to-root. Since sarge su-to-root is located in /usr/bin and
153 /usr/sbin/su-to-root is only a compatibility symlink that may get dropped
156 Since su-to-root is now located in /usr/bin you can use it without
159 Tag: su-wrapper-not-su-to-root
161 Info: The menu item or desktop file command uses an su wrapper other than
162 su-to-root. On Debian systems, please use <tt>su-to-root -X</tt>, which
163 will pick the correct wrapper based on what's installed on the system and
164 the current desktop environment. Using su-to-root is also important for
165 Live CD systems which need to use sudo rather than su. su-to-root
166 permits global configuration to use sudo.
168 Tag: menu-item-needs-dwww
170 Info: The menu item has needs=dwww. This is deprecated. Instead, you should
171 register your documentation with doc-base, and dwww entries will be
172 automatically generated.
174 Tag: non-wm-in-windowmanager-menu-section
176 Info: The menu item is in the Window Manager section but does not needs=wm.
177 Either it is a window manager and it should needs=wm, either it isn't and
178 then it must be moved in another section.
180 Tag: non-wm-module-in-wm-modules-menu-section
182 Info: The menu item is in the FVWM Modules or Window Maker section but
183 does not declare that it needs a specific window manager (using the needs
184 key in the menu file). Modules for Fvwm should have needs="fvwmmodule".
185 Modules for WindowMaker should have needs="wmmaker".
187 Tag: unquoted-string-in-menu-item
189 Info: The menu item includes a tag with an unquoted string like section=Games
190 instead of section="Games". This is deprecated. Use a quoted string instead.
193 Tag: menu-command-not-in-package
195 Info: The menu item specifies a command which is not available in the package.
196 In most cases this is a typo or after you moved a binary around, but forgot
197 to update the menu file.
199 Tag: executable-desktop-file
201 Info: The desktop entry file is marked executable. Desktop entries are
202 regular files and should be installed mode 0644.
204 Tag: desktop-entry-file-has-crs
206 Info: The desktop entry file has lines ending in CRLF instead of just LF.
207 The Desktop Entry Specification is explicit that lines should end with
208 only LF. The CR may be taken by some software as part of the field.
209 Ref: http://standards.freedesktop.org/desktop-entry-spec/1.0/ar01s02.html
211 Tag: duplicated-key-in-desktop-entry
213 Info: The desktop entry contains two instances of the same key. The
214 behavior of such desktop entries is not well-defined by the standard.
216 Tag: desktop-entry-missing-required-key
218 Info: Desktop entries must contain, at a minimum, the keys Type and Name.
219 Ref: http://standards.freedesktop.org/desktop-entry-spec/1.0/ar01s05.html
221 Tag: desktop-entry-contains-unknown-key
223 Info: The key on this line of the desktop entry is not one of the standard
224 keys defined in the FreeDesktop specification, not one of the legacy KDE
225 keywords, and one that does not begin with <tt>X-</tt>. It's most likely
226 that the key was misspelled.
227 Ref: http://standards.freedesktop.org/desktop-entry-spec/1.0/ar01s05.html
229 Tag: desktop-entry-contains-deprecated-key
231 Info: The key on this line of the desktop entry has been deprecated in the
232 FreeDesktop specification.
233 Ref: http://standards.freedesktop.org/desktop-entry-spec/1.0/apc.html
235 Tag: desktop-entry-contains-encoding-key
237 Info: The Encoding key is now deprecated by the FreeDesktop standard and
238 all strings are required to be encoded in UTF-8. This desktop entry
239 explicitly specifies an Encoding of UTF-8, which is harmless but no
241 Ref: http://standards.freedesktop.org/desktop-entry-spec/1.0/apc.html
243 Tag: desktop-entry-lacks-main-category
245 Info: The categories for this desktop entry do not contain any Main
246 Categories, only Additional Categories. Additional Categories should
247 only be used on conjunction with one or more Main Categories.
248 Ref: http://standards.freedesktop.org/menu-spec/1.0/apa.html
250 Tag: desktop-entry-uses-reserved-category
252 Info: This desktop entry includes a Reserved Category, one which has a
253 desktop-specific meaning that has not yet been standardized, but does not
254 include an OnlyShowIn key. Desktop entries using a Reserved Category
255 must include an OnlyShowIn key limiting the entry to those environments
256 that support the category.
257 Ref: http://standards.freedesktop.org/menu-spec/1.0/apa.html
259 Tag: desktop-entry-invalid-category
261 Info: This desktop entry lists a category that is not one of the
262 registered Main or Additional Categories in the FreeDesktop
264 Ref: http://standards.freedesktop.org/menu-spec/1.0/apa.html
266 Tag: desktop-command-not-in-package
268 Info: The desktop entry specifies a command that is not available in the
269 package. In most cases, this is a typo or a forgotten update of the
270 desktop file after the install location of the binary was changed. A
271 desktop file for a command should be included in the same package as that