This distribution contains a subset of the e2fsprogs package; it
contains the base libraries (ss, et, uuid, blkid) which may be used by
other non-ext2-releated applications.

This may be useful for non-Linux operating systems that need these
libraries for GNOME, but who do not need the ext2/ext3 filesystem
utilities.

The full e2fsprogs distributions can be found at the e2fsprogs web
page, which is:

	http://e2fsprogs.sourceforge.net

In case of bugs in these libraries, please contact Ted Ts'o at
tytso@thunk.org or tytso@alum.mit.edu.
