Blame README.md

Packit 231c70
NSS altfiles module
Packit 231c70
===================
Packit 231c70
Packit 231c70
This is a NSS module which can read user information from files
Packit 231c70
in the same format as `/etc/passwd` and `/etc/group` stored in an
Packit 231c70
alternate location (`/lib` by default).
Packit 231c70
Packit 231c70
Essentially, it is a tweaked copy of the sources for the NSS
Packit 231c70
`files` module included with [eglibc](http://eglibc.org). It
Packit 231c70
should work with [glibc2](http://www.gnu.org/software/libc/)
Packit 231c70
as well.
Packit 231c70
Packit 231c70
Usage
Packit 231c70
-----
Packit 231c70
Packit 231c70
List the module the `/etc/nsswitch.conf` configuration file.
Packit 231c70
For example:
Packit 231c70
Packit 231c70
    passwd: files altfiles
Packit 231c70
    group:  files altfiles
Packit 231c70
Packit 231c70
    # Other entries follow...
Packit 231c70
Packit 231c70
This will try to read files from `/etc` first, and under
Packit 231c70
`/lib` (using the `altfiles` module). Modifications will be
Packit 231c70
stored in the files under `/etc` (e.g. when using `passwd`
Packit 231c70
to change an user passwords).
Packit 231c70
Packit 231c70
Building
Packit 231c70
--------
Packit 231c70
Packit 231c70
The usual `./configure && make && make install` dance will
Packit 231c70
work. The `configure` script allows to change the install
Packit 231c70
path and the path to the alternative data files:
Packit 231c70
Packit 231c70
    ./configure --prefix=/installdir/path --datadir=/var
Packit 231c70
Packit 231c70
The example above would build an `altfiles` NSS module that
Packit 231c70
will read user information from `/var/passwd` and `/var/group`,
Packit 231c70
which is to be installed under `/installdir/path/lib`.
Packit 231c70
Packit 231c70
To ease the task of packagers, the `DESTDIR` variable can
Packit 231c70
be passed to `make`:
Packit 231c70
Packit 231c70
    make install DESTDIR=/tmp/fakerootdir
Packit 231c70
Packit 231c70
Version scheme
Packit 231c70
--------------
Packit 231c70
Packit 231c70
Version numbers follow the numbering of the eglibc releases,
Packit 231c70
adding a local revision number: `<eglibc version>.<revision>`.
Packit 231c70
For example version `2.13.0` would contain the source files
Packit 231c70
from eglibc 2.13, and the base modifications to make it the
Packit 231c70
`altfiles` module; version `2.15.3` would contain the source
Packit 231c70
files from eglibc 2.15, and the base modifications plus three
Packit 231c70
patches.
Packit 231c70
Packit 231c70
Git tags do also follow this versioning.
Packit 231c70
Packit 231c70
Licensing
Packit 231c70
---------
Packit 231c70
Packit 231c70
As eglibc is distributed under the terms of the LGPL 2.1, the
Packit 231c70
same applies to the extra bits needed to make `nss_altfiles`
Packit 231c70
work.
Packit 231c70
Packit 231c70
See the COPYING file in the source directory for the full
Packit 231c70
text of the license.
Packit 231c70