If a program needs to specify an architecture specification string in some place, the following format has to be used:
<arch>-<os>
where `<arch>' is one of the following: i386, alpha, arm, m68k, powerpc, sparc and `<os>' is one of: linux, gnu. Use of gnu in this string is reserved for the GNU/Hurd operating system. .
Note, that we don't want to use `<arch>-debian-linux' to apply to the rule `architecture-vendor-os' since this would make our programs incompatible to other Linux distributions. Also note, that we don't use `<arch>-unknown-linux', since the `unknown' does not look very good.
The configuration files /etc/services,
/etc/protocols, and /etc/rpc are managed by the
netbase
package and may not be modified by other packages.
If a package requires a new entry in one of these files, the maintainer has to
get in contact with the netbase
maintainer, who will add the
entries and release a new version of the netbase
package.
The configuration file /etc/inetd.conf may be modified by the
package's scripts only via the update-inetd
script or the
DebianNet.pm
Perl module.
If a package wants to install an example entry into
/etc/inetd.conf, the entry has to be preceded with exactly one
hash character (#). Such lines are treated as `commented out by
user' by the update-inetd
script and are not changed or activated
during a package updates.
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.
Some programs have the ability to launch an editor or pager program to edit or display a text document. Since there are lots of different editors and pagers available in the Debian distribution, the system administrator and each user should have the possibility to choose his/her preferred editor and pager.
In addition, every program should choose a good default editor/pager if none is selected by the user or system administrator.
Thus, every program that launches an editor or pager has to use the EDITOR or PAGER environment variables to determine the editor/pager the user wants to get started. If these variables are not set, the programs /usr/bin/editor and /usr/bin/pager have to be used, respectively.
These two files are managed through `alternatives.' That is, every package
providing an editor or pager has to call the update-alternatives
script to register these programs.
If it is very hard to adapt a program to make us of the EDITOR and PAGER variable, that program should be configured to use /usr/bin/sensible-editor and /usr/bin/sensible-pager as editor or pager program, respectively.