Man page - dh_installnss(1)
Packages contains this manual
Manual
DH_INSTALLNSS
NAMESYNOPSIS
DESCRIPTION
FILES
EXAMPLES
CAVEATS
Non-standard NSS databases
SEE ALSO
AUTHOR
NAME
dh_installnss - enable NSS services
SYNOPSIS
dh_installnss [ debhelper options ]
DESCRIPTION
dh_installnss is a debhelper program that is responsible for injecting NSS (Name Service Switch) services into /etc/nsswitch.conf .
FILES
debian/ package .nss
Lists the services to inject into /etc/nsswitch.conf when a package is configured and to remove when a package is removed or purged.
Each line in that file (a directive ) should be of the form
db position service action condition
where the fields contain the following pieces of information:
|
db |
The NSS database in which the service will be added. Usually "hosts". |
position
Where to add the NSS service.
Possible values are "first", "last", "before= service ", "after= service ", plus the pseudo-positions "remove-only", "database-add" and "database-require".
The pseudo-position "remove-only" is used to mark services that are not going to be added during the installation of the package, but that will be removed during its deinstallation (e.g., legacy services).
The pseudo-position "database-add" is used to request the addition of a non-standard NSS database to /etc/nsswitch.conf during the installation of the package and its removal during the deinstallation of the package. When "database-add" is used, all other fields in the directive should be left empty.
The pseudo-position "database-require" is used to announce that one or more services in the nss file will be installed under a non-standard NSS database added by another package. When "database-require" is used, all other fields in the directive should be left empty.
service
The name of the NSS service to add.
action
Optional action specification "[STATE=ACTION]".
condition
Optional set of conditions to better define when a service should (or should not) be installed.
Only one kind of condition is currently defined: "skip-if-present= service,service,... ".
Additionally, text between a "#" character and the end of line is ignored.
EXAMPLES
An example debian/nss file could look like this:
hosts before=dns
mdns4
hosts before=mdns4 mdns4_minimal [NOTFOUND=return]
hosts remove-only mdns # In case the user manually added
it
After the installation of this package, the original configuration of the hosts database in /etc/nsswitch.conf will change from:
hosts: files dns
to:
hosts: files mdns4_minimal [NOTFOUND=return] mdns4 dns
CAVEATS
Non-standard NSS databases
Directives in a package.nss file can reference a non-standard NSS database only if that database has been first declared with a "database-add" or "database-require" directive in the same file.
Non-standard NSS databases are all databases that are not defined in /etc/nsswitch.conf as shipped by the package base-files .
If a directive references an undeclared non-standard NSS database (e.g., "somedb"), dh_installnss will exit with the error message "Unknown NSS database 'somedb'".
A non-standard NSS database can be declared by at most one installed package. In other words, if the directives in the nss files of two packages A and B reference the same non-standard NSS database "somedb" and both packages can be installed at the same time, one of the following two solutions must be implemented:
|
1. |
Package A supplies the "somedb database-add" directive, package B Pre-Depend s on A and uses a "somedb database-require" directive. |
||
|
2. |
The shared package C supplies the "somedb database-add" directive, both package A and B Pre-Depend on C and use a "somedb database-require" directive. |
SEE ALSO
debhelper (7)
This program is a debhelper addon.
AUTHOR
Gioele Barabucci <gioele@svario.it>