From: Manoj Srivastava Date: Thu, 16 Jun 2005 05:05:29 +0000 (+0000) Subject: test update X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=9dd3be90a7079d5d43729ddf5fc7f648b28f450f;p=debian%2Fdebian-policy.git test update Author: srivasta Date: 1999/06/18 17:51:24 test update git-archimport-id: srivasta@debian.org--etch/debian-policy--devel--3.0--patch-26 --- diff --git a/debian/changelog b/debian/changelog index b32780e..1c11ec7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,28 @@ +debian-policy (2.5.1.90) unstable; urgency=low + + * This is a test version of the policy package, and shall not be + officially uploaded. + * [ACCEPTED 1998/05/01] Policy clarification about Standards-Version + Added the clarifying paragraph (and the rationale in a footnote). + closes: Bug#21969 + * [ACCEPTED 1999/04/05] Policy note that GPL moved to + /usr/share/common-licenses. Again, also added the rationale as a + footnote. closes: Bug#28747 + * [ACCEPTED 1999/05/04] Libtool archive (*.la) files in -dev' packages + closes: Bug#37257, Bug#37338 + * [ACCEPTED 1999/04/28] Logrotation. Standardizer on logrotate. + closes: Bug# 37342 + * [ACCEPTED 1999/05/23] Rewrite of section 5.7 (Programs for the X + Window System) closes: Bug#38212 + * [ACCEPTED 1999/05/15] Separate menu policy (like virtual package list) + closes: Bug#37713 + * [ACCEPTED 1999/05/09] Adopt the FHS in place of FSSTND + Changed all references to the proper FHS versions. This was a first + scan, so some references may still need to be changed. closes: Bug#37345 + * + + -- + debian-policy (2.5.1.0) unstable; urgency=low * Removed double '>' marks from the policy document. closes: Bug#35095 diff --git a/debian/rules b/debian/rules index 1756d9f..dddc2a9 100755 --- a/debian/rules +++ b/debian/rules @@ -5,13 +5,13 @@ ## Created On : Thu Oct 29 15:35:55 1998 ## Created On Node : tiamat.datasync.com ## Last Modified By : Manoj Srivastava -## Last Modified On : Tue Apr 27 11:55:25 1999 +## Last Modified On : Mon Jun 7 23:37:11 1999 ## Last Machine Used: glaurung.green-gryphon.com -## Update Count : 35 +## Update Count : 42 ## Status : Unknown, Use with caution! ## HISTORY : ## Description : -## +## $Id$ ############################################################################### # The name of the package (for example, `emacs'). package := $(shell grep Source debian/control | sed 's/^Source: //') @@ -19,12 +19,14 @@ arch := $(shell dpkg --print-installation-architecture) date := $(shell date +"%Y-%m-%d") version := $(shell LC_ALL=C dpkg-parsechangelog | \ grep ^Version: | sed 's/^Version: *//') +ppackage:= packaging-manual FILES_TO_CLEAN = debian/files debian/buildinfo debian/substvars \ version.ent policy.lout policy.lout.ld lout.li \ upgrading-checklist.text policy.text.gz STAMPS_TO_CLEAN = stamp-binary stamp-build stamp-configure -DIRS_TO_CLEAN = debian/tmp policy.html +DIRS_TO_CLEAN = debian/tmp policy.html fhs +SGML_FILES = policy packaging menu-policy proposal # Location of the source dir SRCTOP := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi;) @@ -32,6 +34,8 @@ TMPTOP := $(SRCTOP)/debian/tmp DOCDIR := $(TMPTOP)/usr/doc/$(package) LIBDIR := $(TMPTOP)/usr/share/doc-base +FHS_ARCHIVE =(shell ls -1 fhs*.tar.gz) +FHS_FILES =fhs/fhs.dvi fhs/fhs.ps fhs/fhs.txt FSSTND_FILES =FSSTND-FAQ fsstnd-1.2.dvi.gz fsstnd-1.2.ps.gz fsstnd-1.2.txt.gz POLICY_FILES =policy.text.gz policy.sgml virtual-package-names-list.text \ upgrading-checklist.text libc6-migration.text version.ent @@ -47,12 +51,15 @@ all build: stamp-build stamp-build: $(checkdir) -test -f stamp-configure || $(MAKE) -f debian/rules configure - nsgmls -gues policy.sgml # check SGML syntax - debiandoc2html policy.sgml - debiandoc2text policy.sgml - if [ -f policy.txt ]; then mv policy.txt policy.text; fi + for file in $(SGML_FILES); do \ + nsgmls -gues $$file.sgml; \ + debiandoc2html $$file.sgml; \ + debiandoc2text $$file.sgml; \ + if [ -f $$file.txt ]; then mv $$file.txt $$file.text; fi; \ + gzip -9f $$file.text; \ + done + tar zfx $(FHS_ARCHIVE) lynx -dump upgrading-checklist.html > upgrading-checklist.text - gzip -9f policy.text touch stamp-build configure: stamp-configure @@ -88,6 +95,7 @@ stamp-binary: build -rm -rf $(TMPTOP) $(make_directory) $(TMPTOP)/DEBIAN $(make_directory) $(DOCDIR)/fsstnd + $(make_directory) $(DOCDIR)/fhs $(make_directory) $(LIBDIR) # create a substvar to reference from debian/control so that # we don't hardcode the policy compliance of the policy @@ -97,6 +105,7 @@ stamp-binary: build echo "debian-policy:Version=$(version)" > debian/substvars $(install_file) $(POLICY_FILES) $(DOCDIR)/ $(install_file) $(FSSTND_FILES) $(DOCDIR)/fsstnd/ + $(install_file) $(FHS_FILES) $(DOCDIR)/fhs/ $(install_file) debian/changelog $(DOCDIR)/ -gzip -fqr9 $(DOCDIR) $(install_file) debian/copyright $(DOCDIR)/ diff --git a/fhs-2.0.tar.gz b/fhs-2.0.tar.gz new file mode 100644 index 0000000..f540d80 Binary files /dev/null and b/fhs-2.0.tar.gz differ diff --git a/menu-policy.sgml b/menu-policy.sgml new file mode 100644 index 0000000..d471df1 --- /dev/null +++ b/menu-policy.sgml @@ -0,0 +1,300 @@ + + %versiondata; +]> + + + + + + The Debian Menu sub-policy + + Chris Waters + xtifr@dsp.net + + + Joey Hess + joey@kitenet.net + + + Joost Witteveen + joostje@debian.org + + + The Debian Policy mailing List + debian-policy@lists.debian.org + + version &version;, &date; + + + This manual describes the policy requirements for the Menu + system used in the Debian GNU/Linux distribution. This + document is part of the policy package for Debian. The policy + package itself is maintained by a group of maintainers that + have no editorial powers. At the moment, the list of + maintainers is: + + +

Michael Alan Dorman mdorman@debian.org

+
+ +

Richard Braakman dark@xs4all.nl

+
+ +

Philip Hands phil@hands.com

+
+ +

Manoj Srivastava srivasta@debian.org

+
+
+
+ + + + + Copyright ©1999 . + +

+ This manual is free software; you may redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version + 2, or (at your option) any later version. +

+ +

+ This is distributed in the hope that it will be useful, but + without any warranty; without even the implied + warranty of merchantability or fitness for a particular + purpose. See the GNU General Public License for more + details. +

+

+ A copy of the GNU General Public License is available as + /usr/doc/copyright/GPL in the Debian GNU/Linux + distribution or on the World Wide Web at + . You can also obtain it by writing to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +

+
+
+ + + + About this document +

+ The latest copy of this document can be found at + ftp.debian.org + /debian/doc/package-developer/menu_policy.txt +

+

+ This document has been extracted and separated from the + Menu package to: + +

Increase the visibility of the Menu sub policy

+ + +

+ Reduce the coupling between policy and + implementation. If this separtion is not made, every + time we want to change menu policy, we have to arrange + to get the maintainer to release a new version of the + package, even if the package has not otherwise + changed. It also involves yet another layer, making the + policy changes that much harder to implement.

+
+ +

+
+ + Menu Structure +

+ If you have a package which doesn't fit within the existing + menu heirarchy, please bring it up on the debian-devel mailing + list. If you have other proposals for changing the menu + heirarchy, or making other changes to menu policy, please + bring it up on debian-policy. +

+ + Preferred menu structure +

+ Here is the authoritative list of Debian's menu + structure. Please do not put your packages into any other + sections without asking for permission first! +

+

+ Apps + +

normal applications

+

+ Databases + +

interactive database programs

+ + Editors + +

text editors, word processors

+
+ Emulators + +

wine, dosemu, etc.

+
+ Graphics + +

image manipulation

+
+ Hammradio + +

anything relating to ham radio

+
+ Math + +

math related programs

+
+ Net + +

network programs that don't fit elsewhere

+
+ Programming + +

debuggers, etc.

+
+ Tools + +

simple apps, like clocks, that perform only one task

+
+ Technical + +

technical stuff

+
+ Text + +

text oriented tools other than editors

+
+ Shells + +

bash, ksh, zsh, etc.

+
+ Sound + +

sound players and editors

+
+ Viewers + +

image viewers

+
+ System + +

system administration and monitoring tools

+
+ +

+ + Games + +

games and recreations

+

+ Adventure + +

walk around virtual space, zork, MOO's, etc

+
+ Arcade + +

any game where reflexes count

+
+ Board + +

games played on a board

+
+ Card + +

games involving a deck of cards

+
+ Puzzles + +

tests of ingenuity and logic

+
+ Sports + +

games derived from "real world" sports

+
+ Strategy + +

games involving long term strategic thinking

+
+ Tetris-like + +

games involving falling blocks

+
+ Toys + +

amusements, eye-candy, etc.

+
+ +

+ + Help + +

programs that provide user documentation

+
+ Screen + +

programs that affect the whole screen

+

+ + Lock + +

programs to lock the screen

+
+ Save + +

screen savers

+
+ Root-window + +

things that fill the root window

+
+ +

+ + WindowManagers + +

X window managers

+

+ + + +

window manager modules

+
+ +

+ + XShells + +

xterm and its brethern

+
+ +

+
+
+
+
+ + + + + + diff --git a/policy.sgml b/policy.sgml index fc72f76..17b48cd 100644 --- a/policy.sgml +++ b/policy.sgml @@ -88,7 +88,7 @@

A copy of the GNU General Public License is available as - /usr/doc/copyright/GPL in the Debian GNU/Linux + /usr/share/common-licences/GPL in the Debian GNU/Linux distribution or on the World Wide Web at . You can also obtain it by writing to the @@ -300,7 +300,7 @@ program is extracted from Debian and used or distributed without Debian but otherwise within the terms of the program's license, all parties to whom - the program is redistributed should have the same + the program is redistributed must have the same rights as those that are granted in conjunction with the Debian system.

@@ -426,7 +426,7 @@

Every package must be accompanied by a verbatim copy of its copyright and distribution license in the file - /usr/doc/<package-name>/copyright (see for details).

We reserve the right to restrict files from being included @@ -550,15 +550,15 @@ expect to find on any Unix-like system. If the expectation is that an experienced Unix person who found it missing would say `What the F*!@<+ is - going on, where is foo', it should be in + going on, where is foo', it must be in important. This is an important criterion because we are trying to produce, amongst other things, a free Unix. Other packages without which the - system will not run well or be usable should also be - here. This does not include Emacs or X11 or - TeX or any other large applications. The - important packages are just a bare minimum of - commonly-expected and necessary tools.

+ system will not run well or be usable must also be + here. This does not include Emacs, the X + Window System, TeX or any other large applications. + The important packages are just a bare + minimum of commonly-expected and necessary tools.

standard @@ -580,8 +580,8 @@ all the software that you might reasonably want to install if you didn't know what it was or don't have specialised requirements. This is a much larger system - and includes X11, a full TeX distribution, and lots of - applications.

+ and includes the X Window System, a full TeX + distribution, and lots of applications.

extra @@ -596,7 +596,7 @@

Packages may not depend on packages with lower priority - values. If this should happen, one of the priority values + values. If this does happen, one of the priority values will have to be adapted.

@@ -661,19 +661,19 @@ The description of a package

- Every Debian package should have an extended description + Every Debian package must have an extended description stored in the appropriate field of the control record.

- The description should be written so that it tells the - user what they need to know to decide whether to install - the package. This description should not just be copied - from the blurb for the program. Instructions for - configuring or using the package should not be - included--that is what installation scripts, manual pages, - Info files, etc. are for. Copyright statements and other - administrivia should not be included--that is what the - copyright file is for.

+ The description must be written so that it tells the user + what they need to know to decide whether to install the + package. This description should not just be copied from + the blurb for the program. Instructions for configuring + or using the package must not be included -- that is what + installation scripts, manual pages, Info files, etc. are + for. Copyright statements and other administrivia must + not be included -- that is what the copyright file is + for.

@@ -776,10 +776,10 @@

Since these packages can not easily be removed (you'll have to specify an extra force option to - dpkg) this flag should only be used where + dpkg) this flag must only be used where absolutely necessary. - A shared library package should not be tagged + A shared library package must not be tagged essential--the dependencies will prevent its premature removal, and we need to be able to remove it when it has been superseded.

@@ -795,7 +795,7 @@ Maintainer scripts

- The package installation scripts should avoid producing + The package installation scripts must avoid producing output which it is unnecessary for the user to see and should rely on dpkg to stave off boredom on the part of a user installing many packages. This means, @@ -829,7 +829,7 @@ and prompt the user to hit return to acknowledge the message. Copyright messages do not count as vitally important (they belong in - /usr/doc/package/copyright); neither + /usr/share/doc/package/copyright); neither do instructions on how to use a program (these should be in on line documentation, where all the users can see them).

@@ -901,6 +901,24 @@ changed when only cosmetic, typographical or other edits which do not change the meaning are made, or changes which do not affect the contents of packages.

+ +

+ For package maintainers, only the first 3 digits of the + manual version are significant in representing the + Standards-Version, and either these 3 digits or + the complete 4 digits can be specified--that's up to the + maintainer. + +

+ In the past, people specified 4 digits in the + Standards-Version field, like `2.3.0.0'. Since any + `patch-level changes' don't introduce new policy, it + was thought it would be better to relax policy and + only require that the first 3 digits are specified. (4 + digits can still be used if someone wants to do so.) +

+ +

You should regularly, and especially if your package has @@ -956,7 +974,7 @@

A copy of the file which will be installed in - /usr/doc/package/copyright should be + /usr/share/doc/package/copyright should be in debian/copyright.

@@ -1029,13 +1047,25 @@

The location of all installed files and directories must - comply fully with the Linux File system Structure (FSSTND). - The latest version of this document can be found alongside - this manual or on tsx-11.mit.edu in + comply (with some exceptions + +

In an as yet unreleased version of the standard, the + location of the mail spool and state information + directories has changed; and we proipose to follow the + latter, since that would mean that we do not ahve to + move things around again when the new version of the + FHS comes around). The changes are, amongst others, + s%/var/mail%/var/spool/mail% and + s%/var/state%/var/lib%

+ + ) with the Linux File system Hierarchy Standard + (FHS). The latest version of this document can be found + alongside this manual or on + tsx-11.mit.edu in /pub/linux/docs/linux-standards/fsstnd/. Specific questions about following the standard may be asked on debian-devel, or referred to Daniel - Quinlan, the FSSTND coordinator, at + Quinlan, the FHS coordinator, at quinlan@pathname.com.

@@ -1043,7 +1073,7 @@ Site-specific programs

- As mandated by the FSSTND no package should place any + As mandated by the FHS no package should place any files in /usr/local, either by putting them in the file system archive to be unpacked by dpkg or by manipulating them in their maintainer scripts.

@@ -1060,9 +1090,9 @@ /usr/local, not in /usr/local. The directory /usr/local itself may only contain the sub-directories listed in - FSSTND, section 4.8. However, you may create directories + FHS, section 4.6. However, you may create directories below them as you wish. You may not remove any of the - directories listed in 4.8, even if you created them.

+ directories listed in 4.6, even if you created them.

Since /usr/local may be mounted read-only from a @@ -1758,7 +1788,14 @@ Menus - + +

+ Menu entries should follow the current menu policy as + defined in the file ftp.debian.org in + /debian/doc/package-developer/menu_policy.txt + or your local mirror. +

+

The Debian menu packages provides a unique interface between packages providing applications and @@ -1806,7 +1843,7 @@ The interpretation of any keyboard events should be independent of the terminal that's used (either the console, - X windows, rlogin/telnet session, etc.).

+ X terminal emulators, rlogin/telnet session, etc.).

The following list explains how the different programs @@ -2033,15 +2070,50 @@

Note that under some circumstances it may be useful to install a shared library unstripped, for example when - building a separate package to support debugging.

- -

- Please make sure that you use only released versions of - shared libraries to build your packages; otherwise other - users will not be able to run your binaries - properly. Producing source packages that depend on - unreleased compilers is also usually a bad - idea.

+ building a separate package to support debugging. +

+ +

+ An ever increasing number of packages are using libtool to + do their linking. The latest GNU libtools (>= 1.3a) can take + advantage of installed libtool archive files (`*.la'). The + main advantage of libtool's .la files is that it allows + libtool to store and subsequently access metadata with + respect to the libraries it builds. libtool will search for + those files, which contain a lot of useful information about + a library (e.g. dependency libraries for static + linking). Also, they're essential for programs using + libltdl. +

+ +

+ Certainly libtool is fully capable of linking against shared + libraries which don't have .la files, but being a mere shell + script it can add considerably to the build time of a + libtool using package if that shellscript has to derive all + this infomation from first principles for each library every + time it is linked. With the advent of libtool-1.4 (and to a + lesser extent libtool-1.3), the .la files will also store + information about inter-library dependencies which cannot + necessarily be derived after the .la file is deleted. +

+ +

+ Packages that use libtool to create shared libraries must + include the .la files in the -dev + packages. This is a good idea in general, and espescially + for static linking issues. +

+ +

+ Please make sure that you use only released versions of + shared libraries to build your packages; otherwise other + users will not be able to run your binaries + properly. Producing source packages that depend on + unreleased compilers is also usually a bad + idea. +

+ @@ -2343,7 +2415,24 @@ Log files - +

+ The traditional approach to log files has been to set up ad + hoc log rotation schemes using simple shell scripts and + cron. While this approach is highly customizable, it + requires quite a lot of sysadmin work. Even though the + original Debian system helped a little by automatically + installing a system which can be used as a template, this + was deemed not enough. +

+ +

+ A better scheme is to use logrotate, a GPL'd program + developed by Red Hat, which centralizes log management. It + has both a config file (/etc/logrotate.conf) and a + directory where packages can drop logrotation info + (/etc/logrotate.d). +

+

Log files should usually be named /var/log/package.log. If you have many @@ -2355,18 +2444,26 @@

Make sure that any log files are rotated occasionally so that they don't grow indefinitely; the best way to do this - is to use savelog program in an - /etc/cron.daily, /etc/cron.weekly or - /etc/cron.monthly script. Here is a good example: + is to drop a script into the directory + /etc/logrotate.d and use the facilities provided by + logrotate. Here is a good example for a logrotate config + file (for more information see ): - [ -d /var/log/apache/. ] || exit 0 - umask 022 - cd /var/log/apache - if [ -fs access.log ] - then - savelog -c 7 access.log > /dev/null - fi -

+ /var/log/foo/* { + rotate 12 + weekly + compress + postrotate + /etc/init.d/foo force-reload + endscript + } + + Which rotates all files under `/var/log/foo', saves 12 + compressed generations, and sends a HUP signal at the end of + rotation. + +

Make sure that any log files are removed when the package is @@ -2530,6 +2627,24 @@ updates.

+ + Using pseudo-ttys and modifying wtmp, utmp and lastlog + +

+ Some programs need to create pseudo-ttys. This should be done + using Unix98 ptys if the C library supports it. The resulting + program must not be installed setuid root, unless that + is required for other functionality. +

+ +

+ The files /var/run/utmp, /var/log/wtmp and + /var/log/lastlog must be installed writeable by + group utmp. Programs who need to modify those files must + be installed install setgid utmp. +

+
+ Editors and pagers @@ -2601,7 +2716,7 @@

Html documents for a package are stored in - /usr/doc/package and can be referred to as + /usr/share/doc/package and can be referred to as http://localhost/doc/<package>/<filename>

@@ -2612,7 +2727,7 @@

Web Applications should try to avoid storing files in the Web Document Root. Instead use the - /usr/doc/<package> directory for documents and + /usr/share/doc/<package> directory for documents and register the Web Application via the menu package. If access to the web-root is unavoidable then use @@ -2640,7 +2755,7 @@

The mail spool is /var/spool/mail and the interface to send a mail message is /usr/sbin/sendmail (as - per the FSSTND). The mail spool is part of the base system + per the FHS). The mail spool is part of the base system and not part of the MTA package.

@@ -2684,7 +2799,7 @@

The location for the rmail program used by UUCP for incoming mail is /usr/sbin/rmail, as per the - FSSTND. Likewise, rsmtp, for receiving + FHS. Likewise, rsmtp, for receiving batch-SMTP-over-UUCP, is in /usr/sbin/rsmtp if it is supported.

@@ -2747,20 +2862,22 @@ - Programs for the X Windows system + Programs for the X Window system

Some programs can be configured with or without support for - X Windows. Typically these binaries produced when - configured for X will need the X shared libraries to + the X Window System. Typically, binaries produced when + built with X support will need the X shared libraries to run.

Such programs should be configured with X support, - and should declare a dependency on xlib6g (for the - X11R6 libraries). Users who wish to use the program can - install just the relatively small xlib6g package, - and do not need to install the whole of X.

+ and should declare a dependency on xlib6g (which + contains X shared libraries). Users who wish to use the + program can install just the relatively small + xfree86-common and xlib6g packages, and do + not need to install the whole of X. +

Do not create two versions (one with X support and one @@ -2768,33 +2885,67 @@

Application defaults files have to be installed in - the directory - /usr/X11R6/lib/X11/app-defaults/. They are - considered as part of the program code. Thus, they should - not be modified and should not be tagged as - conffile. If the local system administrator wants - to customise X applications globally, the file - /etc/X11/Xresources should be used.

- + the directory /usr/X11R6/lib/X11/app-defaults/. + They are considered as part of the program code. Thus, they + should not be modified and should not be tagged as + conffile. If the local system administrator wants + to customise X applications globally, a file with the same + name as that of the package should be placed in the + /etc/X11/Xresources/ directory instead. + Important: packages that install files into the + /etc/X11/Xresources/ directory must + declare a conflict with xbase (<< + 3.3.2.3a-2); if this is not done it is possible for the + package to destroy a previously-existing + /etc/X11/Xresources file. +

+

- If you package a program that requires a non-free Motif - library, it would be good if you can provide a "foo-smotif" - and a "foo-dmotif" package, containing a (against Motif - libraries) statically and a dynamically linked version, - respectively. This way, users without Motif can use the - package too, while users that have Motif installed get the - advantages of a dynamically linked version.

+ No package should ever install files into the directories + /usr/bin/X11/, /usr/share/doc/X11/, + /usr/include/X11/, or /usr/lib/X11/; these + directories are actually symbolic links, which dpkg + does not follow when unpacking a package. Instead, use + /usr/X11R6/bin/, + /usr/share/doc/package/ (i.e., place + files with the rest of your package's documentation), + /usr/X11R6/include/, and /usr/X11R6/lib/. + It is permissible, and even preferable, however, for a + package to refer to the /usr/{bin,include,lib}/X11/ + directories internally, however; this restriction governs + only the paths used by the package as it is unpacked onto + the system. +

- However, if your package works reliably with lesstif, you - should package it with lesstif, and not with Motif at - all.

- + If you package a program that requires the (non-free) + OSF/Motif library, you should try to determine if the + programs works reasonably well with the free + re-implementation of Motif called LessTif. If so, build the + package using the LessTif libraries; it can then go into the + main section of the package repository and become an + official part of the Debian distribution. +

+

- Note, that packages that require non-free Motif libraries - can't go into the main section. If your package is free - otherwise, it should go into contrib. Otherwise it has to go - into non-free.

+ If however, the Motif-based program works insufficiently + well with LessTif, you should instead provide "-smotif" and + "-dmotif" versions (appending these identifiers to the name + of the package), which are statically and dynamically linked + against the Motif libraries, respectively. (All known + versions of OSF/Motif permit redistribution of + statically-linked binaries using the library, but check the + license on your copy of Motif to be sure.) This two-package + approach allows users without Motif to use the package, + whereas users with Motif installed can enjoy the advantages + of the dynamically-linked version (a considerable savings in + disk space usage, download time, etc.). Neither "-smotif" + nor "-dmotif" packages can go into the main section; if the + licensing on the package is compatible with the Debian Free + Software Guidelines, it may go into the contrib section; + otherwise it must go into the non-free section. +

+ @@ -2846,11 +2997,11 @@ security hole.

- As described in the FSSTND, binaries of games should be + As described in the FHS, binaries of games should be installed in the directory /usr/games. This also - applies to games that use the X windows system. Manual pages + applies to games that use the X Window system. Manual pages for games (X and non-X games) should be installed in - /usr/man/man6.

+ /usr/share/man/man6.

@@ -2862,8 +3013,8 @@

You must install manual pages in nroff source - form, in appropriate places under /usr/man. You - should only use sections 1 to 9 (see the FSSTND for more + form, in appropriate places under /usr/share/man. You + should only use sections 1 to 9 (see the FHS for more details). You must not install a preformatted `cat page'.

@@ -2876,7 +3027,7 @@ debian/rules like this: ln -s ../man7/undocumented.7.gz \ - debian/tmp/usr/man/man[1-9]/the_requested_manpage.[1-9].gz + debian/tmp/usr/share/man/man[1-9]/the_requested_manpage.[1-9].gz This manpage claims that the lack of a manpage has been reported as a bug, so you may only do this if it really has @@ -2906,14 +3057,14 @@ absolute filenames in .so directives. The filename in a .so in a manpage should be relative to the base of the manpage tree (usually - /usr/man).

+ /usr/share/man).

Info documents

- Info documents should be installed in /usr/info. + Info documents should be installed in /usr/share/info. They should be compressed with gzip -9.

@@ -2922,14 +3073,14 @@ file, in its post-installation script: install-info --quiet --section Development Development \ - /usr/info/foobar.info + /usr/share/info/foobar.info

It is a good idea to specify a section for the location of your program; this is done with the --section switch. To determine which section to use, you should look - at /usr/info/dir on your system and choose the most + at /usr/share/info/dir on your system and choose the most relevant (or create a new section if none of the current sections are relevant). Note that the --section flag takes two arguments; the first is a regular expression @@ -2939,7 +3090,7 @@

You must remove the entries in the pre-removal script: - install-info --quiet --remove /usr/info/foobar.info + install-info --quiet --remove /usr/share/info/foobar.info

@@ -2955,7 +3106,7 @@ Any additional documentation that comes with the package can be installed at the discretion of the package maintainer. Text documentation should be installed in a directory - /usr/doc/package, where + /usr/share/doc/package, where package is the name of the package, and compressed with gzip -9 unless it is small.

@@ -2969,7 +3120,7 @@

It is often a good idea to put text information files (READMEs, changelogs, and so forth) that come with - the source package in /usr/doc/package + the source package in /usr/share/doc/package in the binary package. However, you don't need to install the instructions for building and installing the package, of course!

@@ -2987,7 +3138,7 @@ mark up format that can be converted to various other formats you should if possible ship HTML versions in a binary package, in the directory - /usr/doc/appropriate package or its + /usr/share/doc/appropriate package or its subdirectories.

The rationale: The important thing here is that HTML @@ -3007,7 +3158,7 @@

Every package must be accompanied by a verbatim copy of its copyright and distribution license in the file - /usr/doc/<package-name>/copyright. This file must + /usr/share/doc/<package-name>/copyright. This file must neither be compressed nor be a symbolic link.

@@ -3019,8 +3170,8 @@ involved with its creation.

- /usr/doc/<package-name> may be a symbolic link to a - directory in /usr/doc only if two packages both come from + /usr/share/doc/<package-name> may be a symbolic link to a + directory in /usr/share/doc only if two packages both come from the same source and the first package has a "Depends" relationship on the second. These rules are important because copyrights must be extractable by mechanical @@ -3029,13 +3180,36 @@

Packages distributed under the UCB BSD license, the Artistic license, the GNU GPL, and the GNU LGPL should refer to the - files /usr/doc/copyright/BSD, /usr/doc/copyright/Artistic, - /usr/doc/copyright/GPL, and /usr/doc/copyright/LGPL.

+ files /usr/share/common-licenses/BSD, + /usr/share/common-licenses/Artistic, + /usr/share/common-licenses/GPL, and + /usr/share/common-licenses/LGPL. + +

+ Why "licenses" and not "copyright"? Because + /usr/doc/copyright used to contain all the + copyright files, plus the four common licenses GPL, + LGPL, Artistic and BSD. Now individual copyright files + for packages are no longer in a common directory. Once + /usr/doc/copyright is almost empty it makes + sense to rename "copyright" to "licenses" +

+

+ Why "common-licenses" and not "licenses"? Because if I + put just "licenses" I'm sure I will receive a bug report + saying "license foo is not included in the licenses + directory. They are not all the licenses, just a few + common ones. I could use /usr/share/doc/common-licenses + but I think this is too long, and, after all, the GPL + does not "document" anything, it is merely a licence. +

+
+

Do not use the copyright file as a general README file. If your package has such a file it should be - installed in /usr/doc/package/README or + installed in /usr/share/doc/package/README or README.Debian or some other appropriate place.

@@ -3045,7 +3219,7 @@

Any examples (configurations, source files, whatever), should be installed in a directory - /usr/doc/package/examples. These files + /usr/share/doc/package/examples. These files should not be referenced by any program--they're there for the benefit of the system administrator and users, as documentation only.

@@ -3059,12 +3233,13 @@ debian/changelog file from your Debian source tree, and a copy of the upstream changelog file if there is one. The debian/changelog file should be installed in - /usr/doc/package as + /usr/share/doc/package as changelog.Debian.gz. If the upstream changelog file is text formatted, it must be accessible as - /usr/doc/package/changelog.gz. If the - upstream changelog file is HTML formatted, it must be - accessible as /usr/doc/package/changelog.html.gz. + /usr/share/doc/package/changelog.gz. If + the upstream changelog file is HTML formatted, it must be + accessible as + /usr/share/doc/package/changelog.html.gz. If the upstream changelog files do not already conform to this naming convention, then this may be achieved by either renaming the files or adding a symbolic link at the @@ -3080,8 +3255,8 @@ the Debian changelog and the upstream one because there is no separate upstream maintainer then that changelog should usually be installed as - /usr/doc/package/changelog.gz; if there - is a separate upstream maintainer, but no upstream + /usr/share/doc/package/changelog.gz; if + there is a separate upstream maintainer, but no upstream changelog, then the Debian changelog should still be called changelog.Debian.gz.

diff --git a/virtual-package-names-list.txt b/virtual-package-names-list.txt index c01cd6b..a235479 100644 --- a/virtual-package-names-list.txt +++ b/virtual-package-names-list.txt @@ -22,16 +22,22 @@ on your local Debian FTP site. The procedure for updating the list is as follows: 1. Post to debian-devel saying what names you intend to use or what - other changes you wish to make. - -2. Wait a few days for comment. - -3. Mail the maintainer of the virtual package name list (Christian - Schwarz ) notifying him of the consensus reached (or - your suggestions if noone objected). Please include a proposed brief - description of the new virtual name(s) for the list. The list - maintainer will then post the new list to debian-devel and upload it - to the FTP site. + other changes you wish to make, and file a wish list bug against the + package debian-policy. + +2. Wait a few days for comment (some of the comments may be on the + debian-policy list, if you are not subscribed, ask for mail to be CC'd + to you. + +3. Mail the maintainer of the virtual package name list (which is the + Debian Policy list ) notifying them + of the consensus reached (or your suggestions if noone objected). + Please update the bug report at the same time (possibly retitling the + bug to [ACCEPTED] .... + + Please include a proposed brief description of the new virtual name(s) + for the list. The list maintainer will then post the new list to + debian-devel and upload it to the FTP site. 4. Go and use the new or changed names.