Added lots more modules from lintian. Maemian appears to work.
[maemian] / checks / files.desc
1 Check-Script: files
2 Author: Christian Schwarz <schwarz@debian.org>
3 Abbrev: fil
4 Type: binary, udeb
5 Unpack-Level: 2
6 Needs-Info: objdump-info, scripts, file-info
7 Info: This script checks if a binary package conforms to policy
8  WRT to files and directories.
9
10 Tag: package-contains-ancient-file
11 Severity: important
12 Certainty: certain
13 Info: Your package contains a file that claims to have been generated
14  more than 20 years ago. This is most probably an error. Your package
15  will be rejected by the Debian archive scripts if it contains a file
16  with such a timestamp.
17
18 Tag: old-app-defaults-directory
19 Severity: important
20 Certainty: certain
21 Info: The app-defaults files have moved to /etc/X11/app-defaults/. Files in
22  the old directory, /usr/X11R6/lib/X11/app-defaults/, will no longer be
23  used by X. The old directory should not exist in packages at all;
24  this prevents X from replacing it with a compatibility symlink.
25 Ref: policy 11.8.6
26
27 Tag: package-installs-font-to-usr-x11r6
28 Severity: important
29 Certainty: certain
30 Info: The standard location for X fonts has moved to /usr/share/fonts/X11.
31  Packages providing X fonts must install them into the new path.  Fonts
32  installed into the old /usr/X11R6/lib/X11/fonts path may not be seen by
33  the X server.
34  .
35  If the package uses imake, it must build-depend on xutils-dev (&gt;=
36  1:1.0.2-2) for the correct paths. If it uses dh_installxfonts to handle X
37  font installation, it must build-depend on debhelper (&gt;= 5.0.31).
38 Ref: policy 11.8.5
39
40 Tag: package-installs-file-to-usr-x11r6-bin
41 Severity: important
42 Certainty: certain
43 Info: Debian has switched to the modular X tree which now uses the regular
44  FHS paths, and all packages must follow. All packages installing binaries
45  must install them into /usr/bin (or some other appropriate location)
46  instead of /usr/X11R6/bin.
47  .
48  The x11-common package attempts to change /usr/X11R6/bin into a symlink
49  to /usr/bin, so if this migration has already occurred, a package
50  installing files into /usr/X11R6/bin may appear to install
51  successfully. However, such a package will be left in an inconsistent
52  state and may orphan files when the compatibility link goes away.
53  .
54  If the package uses imake, it must build-depend on xutils-dev (&gt;=
55  1:1.0.2-2) for the correct paths.
56 Ref: policy 11.8.7
57
58 Tag: file-in-usr-something-x11-without-pre-depends
59 Severity: wishlist
60 Certainty: certain
61 Info: Packages that install files into /usr/include/X11 or /usr/lib/X11
62  should pre-depend on at least x11-common (&gt;= 1:7.0.0).  These directories
63  used to be symlinks and installing files in them while they are still
64  symlinks will put files in the wrong locations and cause stranded files
65  and other problems.  x11-common is responsible for converting the
66  symlinks to regular directories.
67  .
68  A fresh etch (or later) install will not have problems even without this
69  dependency, but this dependency is needed for upgrades from sarge and is
70  therefore still useful for backports.
71 Ref: policy 11.8.7
72
73 Tag: package-installs-file-to-usr-x11r6
74 Severity: important
75 Certainty: certain
76 Info: Packages using the X Window System should not be configured to install
77  files under the /usr/X11R6/ directory. Debian has switched to the modular
78  X tree which now uses regular FHS paths and all packages should follow.
79  .
80  Programs that use GNU autoconf and automake are usually easily configured
81  at compile time to use /usr/ instead of /usr/X11R6/.  Packages that use
82  imake must build-depend on xutils-dev (&gt;= 1:1.0.2-2) for the correct
83  paths.
84 Ref: policy 11.8.7
85
86 Tag: config-file-reserved
87 Severity: important
88 Certainty: certain
89 Info: This file is reserved by a specific package.  Please email the
90  maintainer of the package in question if you have questions.
91
92 Tag: package-uses-obsolete-file
93 Severity: normal
94 Certainty: certain
95 Info: the file, /etc/nntpserver, is no longer recommenced.  As of policy
96  revision 2.5.1.0, /etc/news/server is the preferred file to use to specify
97  a news server.
98 Ref: policy 11.7
99
100 Tag: FSSTND-dir-in-usr
101 Severity: serious
102 Certainty: certain
103 Info: As of policy version 3.0.0.0, Debian no longer follows the FSSTND.  
104  .
105  Instead, the Filesystem Hierarchy Standard (FHS), version 2.3, is
106  used. You can find it in /usr/share/doc/debian-policy/fhs/ .
107 Ref: policy 9.1.1
108
109 Tag: FSSTND-dir-in-var
110 Severity: serious
111 Certainty: certain
112 Info: As of policy version 3.0.0.0, Debian no longer follows the FSSTND.  
113  .
114  Instead, the Filesystem Hierarchy Standard (FHS), version 2.3, is
115  used. You can find it in /usr/share/doc/debian-policy/fhs/ .
116 Ref: policy 9.1.1
117
118 Tag: package-installs-into-etc-gconf-schemas
119 Severity: normal
120 Certainty: certain
121 Info: The package installs files into the <tt>/etc/gconf/schemas</tt>
122  directory.  No package should do this; this directory is reserved for
123  local overrides.  Instead, schemas should be installed into
124  <tt>/usr/share/gconf/schemas</tt>.
125
126 Tag: package-installs-into-etc-rc.d
127 Severity: serious
128 Certainty: certain
129 Info: The package installs files into the <tt>/etc/rc.d</tt> or
130  <tt>/etc/rc?.d</tt> which is not allowed.
131 Ref: policy 9.3.3
132
133 Tag: package-installs-into-etc-rc.boot
134 Severity: serious
135 Certainty: certain
136 Info: The package installs files in the <tt>/etc/rc.boot</tt> directory,
137  which is obsolete.  See rc.boot(5) for details.
138 Ref: policy 9.3.4
139
140 Tag: non-standard-file-permissions-for-etc-init.d-script
141 Severity: important
142 Certainty: certain
143 Info: Usually, scripts in the <tt>/etc/init.d</tt> directory should have
144  mode 0755.
145
146 Tag: file-directly-in-usr-share
147 Severity: serious
148 Certainty: certain
149 Info: Packages should not install files directly in <tt>/usr/share</tt>,
150  i.e., without a subdirectory.
151  .
152  You should either create a subdirectory <tt>/usr/share/...</tt> for your
153  package or place the file in <tt>/usr/share/misc</tt>.
154
155 Tag: file-in-usr-local
156 Severity: serious
157 Certainty: certain
158 Info: The package installs a file in <tt>/usr/local/...</tt> which is
159  not allowed.
160 Ref: policy 9.1.2
161
162 Tag: stray-directory-in-manpage-directory
163 Severity: important
164 Certainty: certain
165 Info: This package installs a directory under <tt>/usr/share/man</tt> or
166  <tt>/usr/X11R6/man</tt> that isn't a manual section directory or locale
167  directory.
168 Ref: fhs usrsharemanmanualpages
169
170 Tag: executable-manpage
171 Severity: important
172 Certainty: certain
173 Info: Manual pages are not meant to be executed.
174
175 Tag: dir-in-usr-local
176 Severity: serious
177 Certainty: certain
178 Info: The package installs a directory in <tt>/usr/local/...</tt> which is
179  not allowed.
180  .
181  If you want to provide an empty directory in <tt>/usr/local</tt> for
182  convenience of the local system administrator, please follow the rules
183  in the policy manual (section 9.1.2), i.e., create the directories in
184  the postinst script but don't fail if this isn't possible (e.g., if
185  <tt>/usr/local</tt> is mounted read-only).
186 Ref: policy 9.1.2
187
188 Tag: non-standard-dir-perm
189 Severity: normal
190 Certainty: possible
191 Info: The directory has a mode different from 0755, and it's not one of the
192  known exceptions.
193 Ref: policy 10.9
194
195 Tag: executable-is-not-world-readable
196 Severity: normal
197 Certainty: certain
198 Info: All executables should be readable by any user.  Since anyone can
199  download the Debian package and obtain a copy of the executable, no
200  security is gained by making the executable unreadable even for setuid
201  binaries.  If only members of a certain group may execute this file,
202  remove execute permission for world, but leave read permission.
203 Ref: policy 10.9
204
205 Tag: non-standard-executable-perm
206 Severity: normal
207 Certainty: certain
208 Info: Executables that are not setuid or setgid should always have a mode
209  of 0755.  Since anyone can obtain the executable by downloading the
210  Debian package and extracting it, restricting access serves little
211  purpose.
212 Ref: policy 10.9
213
214 Tag: non-standard-game-executable-perm
215 Severity: normal
216 Certainty: certain
217 Info: The file is owned by the games group but is not mode 2755.  If a
218  game does not have to be setgid games, it should be owned by the root
219  group like any other executable.  This executable is either owned by the
220  wrong group or is not setgid when it should be.
221 Ref: policy 11.11
222
223 Tag: non-standard-setuid-executable-perm
224 Severity: normal
225 Certainty: certain
226 Info: The file is setuid or setgid and has a mode different from any of
227  2755, 4755, 4754, or 6755.  Any other permissions on setuid executables
228  is probably a bug.  In particular, removing root write privileges serves
229  no purpose, group-writable setuid or setgid executables are probably bad
230  ideas, and setgid executables that are not world-executable serve little
231  purpose.
232 Ref: policy 10.9
233
234 Tag: setuid-binary
235 Severity: normal
236 Certainty: possible
237 Info: The file is tagged SETUID. In some cases this is intentional, but in
238  other cases this is a bug. If this is intentional, please add a lintian
239  override to document this fact.
240
241 Tag: setgid-binary
242 Severity: normal
243 Certainty: possible
244 Info: The file is tagged SETGID. In some cases this is intentional, but in
245  other cases this is a bug. If this is intentional, please add a lintian
246  override to document this fact.
247
248 Tag: setuid-gid-binary
249 Severity: normal
250 Certainty: possible
251 Info: The file is tagged SETUID and SETGID. In some cases this is
252  intentional, but in other cases this is a bug. If this is intentional,
253  please add a lintian override to document this fact.
254
255 Tag: non-standard-file-perm
256 Severity: normal
257 Certainty: certain
258 Info: The file has a mode different from 0644. In some cases this is
259  intentional, but in other cases this is a bug.
260 Ref: policy 10.9
261
262 Tag: special-file
263 Severity: serious
264 Certainty: certain
265 Info: The package contains a <i>special</i> file (e.g., a device file).
266  This is forbidden by current policy. If your program needs this device,
267  you should create it by calling <tt>makedev</tt> from the postinst
268  script.
269 Ref: policy 10.6
270
271 Tag: old-style-example-dir
272 Severity: important
273 Certainty: certain
274 Info: The package installs some files into the old
275  <tt>/usr/doc/examples</tt> directory.  The new location for examples
276  is <tt>/usr/share/doc/<i>pkg</i>/examples</tt>.
277 Ref: policy 12.6
278
279 Tag: compressed-symlink-with-wrong-ext
280 Severity: important
281 Certainty: certain
282 Info: The package installs a symbolic link pointing to a compressed file,
283  but the symbolic link does not use the same file extension than the
284  referenced file. In most cases, this can produce troubles when the
285  user or a program tries to access the file through the link.
286 Ref: policy 10.5
287
288 Tag: symlink-has-double-slash
289 Severity: minor
290 Certainty: certain
291 Info: This symlink contains two successive slashes (//). This is in violation
292  of policy, where it is stated that symlinks should be as short as possible
293  .
294  If you use debhelper, running dh_link after creating the package structure
295  will fix this problem for you.
296 Ref: policy 10.5
297
298 Tag: symlink-ends-with-slash
299 Severity: minor
300 Certainty: certain
301 Info: This symlink ends with a slash (/). This is in violation
302  of policy, where it is stated that symlinks should be as short as possible
303  .
304  If you use debhelper, running dh_link after creating the package structure
305  will fix this problem for you.
306 Ref: policy 10.5
307
308 Tag: symlink-should-be-relative
309 Severity: normal
310 Certainty: certain
311 Info: Symlinks to files which are in the same top-level directory should be
312  relative according to policy.  (In other words, a link in /usr to another
313  file in /usr should be relative, while a link in /usr to a file in /etc
314  should be absolute.)
315  .
316  If you use debhelper, running dh_link after creating the package structure
317  will fix this problem for you.
318 Ref: policy 10.5
319
320 Tag: symlink-should-be-absolute
321 Severity: important
322 Certainty: certain
323 Info: Symbolic links between different top-level directories should be
324  absolute.
325  .
326  If you use debhelper, running dh_link after creating the package structure
327  will fix this problem for you.
328 Ref: policy 10.5
329
330 Tag: udeb-contains-documentation-file
331 Severity: important
332 Certainty: certain
333 Info: udeb packages should not contain any documentation.
334
335 Tag: executable-in-usr-share-doc
336 Severity: important
337 Certainty: certain
338 Info: Usually, documentation files in <tt>/usr/share/doc</tt> should have mode
339  0644.  If the executable is an example, it should go in
340  <tt>/usr/share/doc/<i>pkg</i>/examples</tt>.
341
342 Tag: script-in-usr-share-doc
343 Severity: wishlist
344 Certainty: certain
345 Info: Scripts are usually not documentation files, unless they are
346  examples, in which case they should be in the
347  <tt>/usr/share/doc/<i>pkg</i>/examples</tt> directory.
348
349 Tag: symlink-has-too-many-up-segments
350 Severity: important
351 Certainty: certain
352 Info: The symlink references a directory beyond the root directory "/".
353
354 Tag: lengthy-symlink
355 Severity: important
356 Certainty: certain
357 Info: This link goes up, and then back down into the same subdirectory.
358  Making it shorter will improve its chances of finding the right file
359  if the user's system has lots of symlinked directories.
360  .
361  If you use debhelper, running dh_link after creating the package structure
362  will fix this problem for you.
363 Ref: policy 10.5
364
365 Tag: symlink-is-self-recursive
366 Severity: normal
367 Certainty: possible
368 Info: The symbolic link is recursive to a higher directory of the symlink
369  itself. This means, that you can infinitely chdir with this symlink. This is
370  usually not okay, but sometimes wanted behaviour.
371
372 Tag: symlink-contains-spurious-segments
373 Severity: important
374 Certainty: certain
375 Info: The symbolic link has needless segments like ".." and "." in the
376  middle.  These are unneeded and make the link longer than it could be,
377  which is in violation of policy.  They can also cause problems in the
378  presence of symlinked directories.
379  .
380  If you use debhelper, running dh_link after creating the package structure
381  will fix this problem for you.
382 Ref: policy 10.5
383
384 Tag: run-parts-cron-filename-contains-full-stop
385 Severity: normal
386 Certainty: certain
387 Info: The script in /etc/cron.&lt;time-interval&gt; will not be executed by
388  run-parts(8) because the filename contains a "." (full stop).
389 Ref: run-parts(8)
390
391 Tag: bad-permissions-for-etc-cron.d-script
392 Severity: important
393 Certainty: certain
394 Info: Files in <tt>/etc/cron.d</tt> are configuration files for cron and not
395  scripts. Thus, they should not be marked executable.
396
397 Tag: bad-permissions-for-etc-emacs-script
398 Severity: important
399 Certainty: certain
400 Info: Files in the <tt>/etc/emacs*</tt> directories should not be marked
401  executable.
402
403 Tag: image-file-in-usr-lib
404 Severity: normal
405 Certainty: certain
406 Info: This package installs a pixmap or a bitmap within <tt>/usr/lib</tt>.
407  According to the Filesystem Hierarchy Standard, architecture-independent
408  files need to be placed within <tt>/usr/share</tt> instead.
409
410 Tag: file-directly-in-usr-share-doc
411 Severity: serious
412 Certainty: certain
413 Info: Documentation files have to be installed in
414  <tt>/usr/share/doc/<i>pkg</i></tt>.
415 Ref: policy 12.3
416
417 Tag: bad-owner-for-doc-file
418 Severity: important
419 Certainty: certain
420 Info: Documentation files should be owned by <tt>root/root</tt>.
421
422 Tag: dir-or-file-in-var-lock
423 Severity: serious
424 Certainty: possible
425 Info: <tt>/var/lock</tt> may be a temporary filesystem, so any directories
426  or files needed there must be created dynamically at boot time.
427 Ref: policy 9.3.2
428
429 Tag: dir-or-file-in-var-run
430 Severity: serious
431 Certainty: possible
432 Info: <tt>/var/run</tt> may be a temporary filesystem, so any directories
433  or files needed there must be created dynamically at boot time.
434 Ref: policy 9.3.2
435
436 Tag: dir-or-file-in-var-www
437 Severity: important
438 Certainty: certain
439 Ref: fhs thevarhierarchy
440 Info: Debian packages should not install files under <tt>/var/www</tt>.
441  This is not one of the <tt>/var</tt> directories in the File Hierarchy
442  Standard and is under the control of the local administrator.  Packages
443  should not assume that it is the document root for a web server; it is
444  very common for users to change the default document root and packages
445  should not assume that users will keep any particular setting.
446  .
447  Packages that want to make files available via an installed web server
448  should instead put instructions for the local administrator in a
449  README.Debian file and ideally include configuration fragments for common
450  web servers such as Apache.
451  .
452  As an exception, packages are permitted to create the <tt>/var/www</tt>
453  directory due to its past history as the default document root, but
454  should at most copy over a default file in postinst for a new install.
455
456 Tag: dir-or-file-in-tmp
457 Severity: important
458 Certainty: certain
459 Info: Packages should not install into <tt>/tmp</tt> or <tt>/var/tmp</tt>.
460
461 Tag: dir-or-file-in-mnt
462 Severity: important
463 Certainty: certain
464 Info: Packages should not install into <tt>/mnt</tt>.  The FHS states that
465  the contents of this directory is a local issue.
466
467 Tag: dir-or-file-in-opt
468 Severity: important
469 Certainty: certain
470 Info: Debian packages should not install into <tt>/opt</tt>, because it
471  is reserved for add-on software.
472
473 Tag: dir-or-file-in-srv
474 Severity: important
475 Certainty: certain
476 Ref: fhs therootfilesystem
477 Info: Debian packages should not install into <tt>/srv</tt>.  The
478  specification of <tt>/srv</tt> states that its structure is at the
479  discretion of the local administrator and no package should rely on any
480  particular structure.  Debian packages that install files directly into
481  <tt>/srv</tt> can't adjust for local policy about its structure and in
482  essence force a particular structure.
483  .
484  If a package wishes to put its data in <tt>/srv</tt>, it must do this in
485  a way that allows the local administrator to specify and preserve their
486  chosen directory structure (such as through post-install configuration,
487  setup scripts, debconf prompting, etc.).
488
489 Tag: third-party-package-in-python-dir
490 Severity: normal
491 Certainty: certain
492 Info: According to <a href="http://www.python.org/doc/essays/packages.html">
493  <tt>http://www.python.org/doc/essays/packages.html</tt></a>, third-party
494  python packages should install their files in
495  <tt>/usr/lib/python1.5/site-packages</tt>.  All other directories in
496  <tt>/usr/lib/python1.5</tt> are for use by the core python packages.
497  
498 Tag: perl-module-in-core-directory
499 Severity: important
500 Certainty: certain
501 Info: Packaged modules must not be installed into the core perl
502  directories as those directories change with each upstream perl
503  revision.  The vendor directories are provided for this purpose.
504 Ref: perl-policy 3.1
505
506 Tag: backup-file-in-package
507 Severity: normal
508 Certainty: certain
509 Info: There is a file in the package whose name matches the format emacs
510  or vim uses for backup and autosave files.  It may have been installed by
511  accident.
512
513 Tag: nfs-temporary-file-in-package
514 Severity: normal
515 Certainty: certain
516 Info: There is a file in the package whose name matches the format NFS
517  uses to temporarily save files that were deleted while another process
518  had them open.  It may have been included in the package by accident
519  while building the package in an NFS filesystem.
520
521 Tag: windows-thumbnail-database-in-package
522 Severity: normal
523 Certainty: certain
524 Info: There is a file in the package named <tt>Thumbs.db</tt> or
525  <tt>Thumbs.db.gz</tt>, which is normally a Windows image thumbnail
526  database.  Such databases are generally useless in Debian packages and
527  were usually accidentally included by copying complete directories from
528  the source tarball.
529
530 Tag: macos-ds-store-file-in-package
531 Severity: normal
532 Certainty: certain
533 Info: There is a file in the package named <tt>.DS_Store</tt> or
534  <tt>.DS_Store.gz</tt>, the file name used by Mac OS X to store folder
535  attributes.  Such files are generally useless in Debian packages and were
536  usually accidentally included by copying complete directories from the
537  source tarball.
538
539 Tag: macos-resource-fork-file-in-package
540 Severity: normal
541 Certainty: certain
542 Info: There is a file in the package with a name starting with
543  <tt>._</tt>, the file name pattern used by Mac OS X to store resource
544  forks in non-native file systems.  Such files are generally useless in
545  Debian packages and were usually accidentally included by copying
546  complete directories from the source tarball.
547
548 Tag: package-installs-perllocal-pod
549 Severity: normal
550 Certainty: certain
551 Info: This package installs a file <tt>perllocal.pod</tt>.  Since that
552  file is intended for local documentation, it is not likely that it is
553  a good place for documentation supplied by a Debian package.  In fact,
554  installing this package will wipe out whatever local documentation
555  existed there.
556
557 Tag: extra-license-file
558 Severity: normal
559 Certainty: possible
560 Ref: policy 12.5
561 Info: All license information should be collected in the
562  <tt>debian/copyright</tt> file.  This usually makes it unnecessary
563  for the package to install this information in other places as well.
564
565 Tag: non-standard-toplevel-dir
566 Severity: important
567 Certainty: certain
568 Info: The Filesystem Hierarchy Standard forbids the installation of new
569  files or directories in the root directory.
570 Ref: fhs therootfilesystem
571
572 Tag: subdir-in-bin
573 Severity: serious
574 Certainty: certain
575 Info: The Filesystem Hierarchy Standard forbids the installation of new
576  directories in <tt>/bin</tt>.
577 Ref: fhs binessentialusercommandbinaries
578
579 Tag: subdir-in-usr-bin
580 Severity: serious
581 Certainty: certain
582 Info: The Filesystem Hierarchy Standard forbids the installation of new
583  directories in <tt>/usr/bin</tt> other than <tt>/usr/bin/mh</tt>.
584 Ref: fhs usrbinmostusercommands
585
586 Tag: non-standard-dir-in-usr
587 Severity: normal
588 Certainty: certain
589 Info: The FHS says "No large software packages should use a direct
590  subdirectory under the <tt>/usr</tt> hierarchy".  This package contains
591  a directory in <tt>/usr</tt> that is not mentioned in the Filesystem
592  Hierarchy Standard.
593 Ref: fhs theusrhierarchy
594
595 Tag: non-standard-dir-in-var
596 Severity: important
597 Certainty: certain
598 Info: The FHS says "Applications should generally not add directories to
599  the top level of <tt>/var</tt>.  Such directories should only be added
600  if they have some system-wide implication, and in consultation with the
601  FHS mailing list."
602 Ref: fhs thevarhierarchy
603
604 Tag: use-of-compat-symlink
605 Severity: important
606 Certainty: certain
607 Info: This package uses a directory that, according to the Filesystem
608  Hierarchy Standard, should exist only as a compatibility symlink.
609  Packages should not traverse such symlinks when installing files, they
610  should use the standard directories instead.
611
612 Tag: file-in-unusual-dir
613 Severity: normal
614 Certainty: certain
615 Info: This file or symbolic link is in a directory where files are not
616  normally installed by Debian packages.
617
618 Tag: package-installs-packlist
619 Severity: important
620 Certainty: certain
621 Info: Packages built using the perl MakeMaker package will have a file
622  named .packlist in them.  Those files are useless, and (in some cases)
623  have the additional problem of creating an architecture-specific
624  directory name in an architecture-independent package.
625  .
626  They can be suppressed by adding the following to <tt>debian/rules</tt>:
627  .
628    find debian/<i>pkg</i> -type f -name .packlist | xargs rm -f
629  .
630  or by telling MakeMaker to use vendor install dirs; consult a recent
631  version of Perl policy. Perl 5.6.0-12 or higher supports this.
632 Ref: perl-policy 4.1
633
634 Tag: zero-byte-file-in-doc-directory
635 Severity: normal
636 Certainty: possible
637 Info: The documentation directory for this package contains an empty
638  file.  This is often due to installing an upstream NEWS or README file
639  without realizing it's empty and hence not useful.
640  .
641  Files in the examples subdirectory are excluded from this check, but
642  there are some cases where empty files are legitimate parts of the
643  documentation without being examples.  In those cases, please add an
644  override.
645
646 Tag: override-file-in-wrong-location
647 Severity: important
648 Certainty: certain
649 Info: Maemian overrides should be put in a regular file named
650  /usr/share/lintian/overrides/<tt>package</tt>, not in a subdirectory
651  named for the package or in the obsolete location under /usr/share/doc.
652  See the Maemian documentation for more information on proper naming and
653  format.
654 Ref: lintian 2.4
655
656 Tag: package-contains-upstream-install-documentation
657 Severity: normal
658 Certainty: possible
659 Ref: policy 12.3
660 Info: Binary packages do not need to contain the instructions for building
661  and installing the package as this info is not needed by package users.
662  If the info contained is important for configuration perhaps it could be
663  summarized in README.Debian, otherwise an override may be added.
664
665 Tag: package-contains-hardlink
666 Severity: normal
667 Certainty: certain
668 Info: The package contains a hardlink in <tt>/etc</tt> or across different
669  directories. This might not work at all if directories are on different
670  filesystems (which can happen anytime as the system administrator sees fit),
671  certain filesystems such as AFS don't even support cross-directory hardlinks
672  at all.
673  .
674  For configuration files, certain editors might break hardlinks, and so
675  does dpkg in certain cases.
676  .
677  A better solution might be using symlinks here.
678 Ref: policy 10.7.3
679
680 Tag: package-contains-bts-control-dir
681 Severity: normal
682 Certainty: certain
683 Info: The package contains a control directory for a bug tracking system.
684  It was most likely installed by accident, since bug tracking directories
685  usually don't belong in packages.
686
687 Tag: package-contains-vcs-control-dir
688 Severity: normal
689 Certainty: certain
690 Info: The package contains a control directory for a version control system.
691  It was most likely installed by accident, since version control directories
692  usually don't belong in packages.
693
694 Tag: package-contains-xvpics-dir
695 Severity: important
696 Certainty: certain
697 Info: Package contains a .xvpics directory. It was most likely installed by
698  accident, since thumbnails usually don't belong in packages.
699
700 Tag: package-contains-vcs-control-file
701 Severity: normal
702 Certainty: certain
703 Info: The package contains a VCS control file such as .(cvs|git|hg)ignore.
704  Files such as these are used by revision control systems to, for example,
705  specify untracked files it should ignore or inventory files.  This file
706  is generally useless in an installed package and was probably installed
707  by accident.
708
709 Tag: svn-commit-file-in-package
710 Severity: normal
711 Certainty: certain
712 Info: The package contains an svn-commit(.NNN).tmp file.  This file is
713  almost certainly a left-over from a failed Subversion commit, and does
714  not belong in a Debian package.
715
716 Tag: svk-commit-file-in-package
717 Severity: normal
718 Certainty: certain
719 Info: The package contains an svk-commitNNN.tmp file.  This file is almost
720  certainly a left-over from a failed Subversion commit, and does not
721  belong in a Debian package.
722
723 Tag: nested-examples-directory
724 Severity: important
725 Certainty: certain
726 Info: Package contains a <tt>usr/share/doc/something/examples/examples</tt>
727  directory. It was most likely installed by accident, since one examples/
728  directory should be enough for everybody(tm).
729
730 Tag: package-installs-nonbinary-perl-in-usr-lib-perl5
731 Severity: normal
732 Certainty: certain
733 Info: Architecture-independent Perl code should be placed in
734  <tt>/usr/share/perl5</tt>, not <tt>/usr/lib/perl5</tt>
735  unless there is at least one architecture-dependent file
736  in the module.
737 Ref: perl-policy 2.3
738
739 Tag: file-in-usr-lib-site-python
740 Severity: important
741 Certainty: certain
742 Ref: python-policy 1.4
743 Info: The directory /usr/lib/site-python has been deprecated as a
744  location for installing Python modules and may be dropped from Python's
745  module search path in a future version.  Most likely this module is a
746  private module and should be packaged in a directory outside of Python's
747  default search path.
748
749 Tag: package-installs-python-pyc
750 Severity: normal
751 Certainty: certain
752 Info: Compiled python source files should not be included in the package.
753  These files should be removed from the package and created at package
754  installation time in the postinst. 
755
756 Tag: bad-permissions-for-ali-file
757 Severity: normal
758 Certainty: certain
759 Info: Ada Library Information (*.ali) files are required to be read-only
760  (mode 0444) by GNAT. 
761  .
762  If at least one user can write the *.ali file, GNAT considers whether
763  or not to recompile the corresponding source file.  Such recompilation
764  would fail because normal users don't have write permission on the
765  files.  Moreover, such recompilation would defeat the purpose of
766  library packages, which provide *.a and *.so libraries to link against).
767
768 Tag: package-contains-readme-for-other-platform-or-distro
769 Severity: normal
770 Certainty: certain
771 Info: package contains a README.(platform) file that contains instructions
772  specific to a platform or distribution other than Debian and thus can
773  most likely be removed.  If it contains information that pertains to 
774  Debian, please consider renaming it, or including it in an already 
775  existing README file.
776
777 Tag: desktop-file-in-wrong-dir
778 Severity: normal
779 Certainty: certain
780 Info: The package contains a .desktop file in an obsolete directory.
781  According to the menu-spec draft on freedesktop.org, those .desktop files
782  that are intended to create a menu should be placed in
783  <tt>/usr/share/applications</tt>, not <tt>/usr/share/gnome/apps</tt>.
784
785 Tag: script-with-language-extension
786 Severity: normal
787 Certainty: certain
788 Info: When scripts are installed into a directory in the system PATH, the
789  script name should not include an extension such as <tt>.sh</tt> or
790  <tt>.pl</tt> that denotes the scripting language currently used to
791  implement it.  The implementation language may change; if it does,
792  leaving the name the same would be confusing and changing it would be
793  disruptive.
794 Ref: policy 10.4
795
796 Tag: file-in-usr-lib-sgml
797 Severity: normal
798 Certainty: certain
799 Ref: fhs theusrhierarchy
800 Info: This package installs a file in <tt>/usr/lib/sgml</tt>.  This was
801  the old location for SGML catalogs and similar flies.  All those files
802  should now go into <tt>/usr/share/sgml</tt>.
803
804 Tag: file-name-ends-in-whitespace
805 Severity: normal
806 Certainty: possible
807 Info: This package installs a file or directory whose name ends in
808  whitespace.  This might be intentional but it's normally a mistake.  If
809  it is intentional, add a lintian override.
810  .
811  One possible cause is using debhelper 5.0.57 or earlier to install a
812  doc-base file with a Document field that ends in whitespace.
813
814 Tag: package-contains-empty-directory
815 Severity: wishlist
816 Certainty: possible
817 Info: This package installs an empty directory.  This might be intentional
818  but it's normally a mistake.  If it is intentional, add a lintian override.
819  .
820  If a package ships with or installs empty directories, you can remove them
821  in debian/rules by calling:
822  .
823   $ find path/to/base/dir -type d -empty -delete
824
825 Tag: package-section-games-but-contains-no-game
826 Severity: important
827 Certainty: certain
828 Ref: policy 11.11
829 Info: This package is marked as part of the section games, but doesn't
830  contain files in <tt>/usr/games</tt>.  Binaries of games must be installed
831  in <tt>/usr/games</tt>.
832
833 Tag: package-section-games-but-has-usr-bin
834 Severity: normal
835 Certainty: possible
836 Ref: policy 11.11
837 Info: This package is marked as part of the section games, but contains
838  executables in <tt>/bin</tt> or <tt>/usr/bin/</tt>.  This can be intentional,
839  but is usually a mistake.
840
841 Tag: games-package-should-be-section-games
842 Severity: normal
843 Certainty: possible
844 Info: All the executables in this package are in <tt>/usr/games</tt>, but
845  the package is not in section games.  This can be intentional but is
846  usually a mistake.
847
848 Tag: package-contains-devhelp-file-without-symlink
849 Severity: normal
850 Certainty: certain
851 Info: This package contains a *.devhelp or *.devhelp2 file which is not in
852  the devhelp search path (<tt>/usr/share/devhelp/books</tt> and
853  <tt>/usr/share/gtk-doc/html</tt>) and is apparently not in a directory
854  linked into the devhelp search path.  This will prevent devhelp from
855  finding the documentation.
856  .
857  If the devhelp documentation is installed in a path outside the devhelp
858  search path (such as <tt>/usr/share/doc</tt>), create a symlink in
859  <tt>/usr/share/gtk-doc/html</tt> pointing to the documentation directory.
860
861 Tag: debug-package-should-be-named-dbg
862 Severity: normal
863 Certainty: certain
864 Info: This package provides at least one file in <tt>/usr/lib/debug</tt>,
865  which is intended for detached debugging symbols, but the package name
866  does not end in "-dbg".  Detached debugging symbols should be put into a
867  separate package, Priority: extra, with a package name ending in "-dbg".
868 Ref: devref 6.7.9
869
870 Tag: package-contains-linda-override
871 Severity: normal
872 Certainty: certain
873 Info: This package contains a linda override file in
874  <tt>/usr/share/linda/overrides</tt>.  Linda is obsolete and has been
875  removed from the archive as of 2008-03-04.  Linda overrides should
876  probably be dropped from packages.
877
878 Tag: wrong-file-owner-uid-or-gid
879 Severity: serious
880 Certainty: certain
881 Info: The user or group ID of the owner of the file is invalid. The
882  owner user and group IDs must be in the set of globally allocated
883  IDs, because other IDs are dynamically allocated and might be used
884  for varying purposes on different systems, or are reserved. The set
885  of the allowed, globally allocated IDs consists of the ranges 0-99,
886  64000-64999 and 65534.
887 Ref: policy 9.2
888
889 Tag: embedded-javascript-library
890 Severity: normal
891 Certainty: possible
892 Info: This package contains an embedded copy of JavaScript libraries
893  that are now available in their own packages (for example, JQuery,
894  Prototype, Mochikit or "Cropper"). Please depend on the appropriate
895  package and symlink the library into the appropriate location.
896 Ref: policy 4.13
897
898 Tag: embedded-feedparser-library
899 Severity: normal
900 Certainty: certain
901 Info: This package contains an embedded copy of Mark Pilgrim's Universal
902  Feed Parser. Please depend on the "python-feedparser" package and symlink
903  the library into the appropriate location.
904 Ref: policy 4.13
905
906 Tag: embedded-pear-module
907 Severity: normal
908 Certainty: possible
909 Experimental: yes
910 Info: This package appears to contain an embedded copy of a PEAR module.
911  Please depend on the respective PEAR package providing the module and
912  make sure the library can be found by the scripts via the include_path.
913 Ref: policy 4.13
914
915 Tag: embedded-php-library
916 Severity: normal
917 Certainty: possible
918 Info: This package appears to contain an embedded copy of a PHP library.
919  Please depend on the respective package providing the library and
920  make sure it can be found by the scripts via the include_path.
921 Ref: policy 4.13
922
923 Tag: windows-devel-file-in-package
924 Severity: normal
925 Certainty: possible
926 Info: This package appears to contain development files only meaningful to
927  Windows environments.  Such files are generally useless in Debian packages and
928  were usually accidentally included by copying complete directories from the
929  source tarball.
930
931 Tag: font-in-non-font-package
932 Severity: wishlist
933 Certainty: possible
934 Info: This package contains a *.ttf or *.otf file, file extensions
935  normally used for TrueType or OpenType fonts, but the package does not
936  appear to be a dedicated font package.  (Dedicated font package names
937  should begin with <tt>ttf-</tt> or <tt>otf-</tt>.)  If the font is
938  already packaged, you should depend on that package instead.  Otherwise,
939  normally the font should be packaged separately, since fonts are usually
940  useful outside of the package that embeds them.
941
942 Tag: duplicate-font-file
943 Severity: normal
944 Certainty: possible
945 Info: This package appears to include a font file that is already provided
946  by another package in Debian.  Ideally should instead depend on the
947  relevant font package.  If the application in this package loads the font
948  file by name, you may need to include a symlink pointing to the file name
949  of the font in its Debian package.
950  .
951  Sometimes the font package containing the font is huge and you only need
952  one font.  In that case, you have a few options: modify the package (in
953  conjunction with upstream) to use libfontconfig to find the font that you
954  prefer but fall back on whatever installed font is available, ask that
955  the font package be split apart into packages of a more reasonable size,
956  or add an override and be aware of the duplication when new versions of
957  the font are released.
958
959 Tag: icon-size-and-directory-name-mismatch
960 Severity: normal
961 Certainty: certain
962 Info: The icon has a size that differs from the size specified by the name
963  of the directory under which it was installed.  The icon was probably
964  mistakenly installed into the wrong directory.
965
966 Tag: gz-file-not-gzip
967 Severity: normal
968 Certainty: possible
969 Info: The given file ends with <tt>.gz</tt>, which normally indicates it
970  is compressed with gzip.  However, it doesn't seem to be a
971  gzip-compressed file.  gzip will fail with an error on such files.
972  Normally this indicates a mistake in the installation process of the
973  package.
974
975 Tag: non-free-flash
976 Severity: serious
977 Certainty: possible
978 Info: The given Flash file has a filename which suggests that it may be
979  one of a number of known Flash files with non-free content.