NAME
release
- layout of NetBSD releases and snapshots
DESCRIPTION
This document describes the layout of
NetBSD
releases and snapshots.
This layout should be consistent between FTP servers and CD-ROMs,
except possibly the path that leads to the release hierarchy.
In this document, the following special words have these definitions:
- <machine>
-
The platform for which the release was built, corresponding to the
hw.machine
sysctl variable, e.g.
i386
or
amiga.
- <machine_arch>
-
The architecture for which a particular installation set was built,
corresponding to the
hw.machine_arch
sysctl variable, e.g.
i386
or
m68k.
- <rel>
-
The target release.
All
README
files are descriptions of the various files in directories that have
``non-standard''
contents.
There may also be a
README
file at the top-level,
describing who built the snapshot and under what circumstances
(e.g. whether it's an official NetBSD snapshot, or not.)
All
BSDSUM
files are historic
BSD
checksums for the various files in that directory,
in the format produced by the command:
cksum -o 1 <file>.
All
CKSUM
files are POSIX checksums for the various files in that directory, in the
format produced by the command:
cksum <file>.
All
MD5
files are MD5 digests for the various files in that directory, in the
format produced by the command:
cksum -m <file>.
All
SYSVSUM
files are historic
AT&T System V UNIX
checksums for the various files in
that directory, in the format produced by the command:
cksum -o 2 <file>.
The MD5 digest is the safest checksum, followed by the POSIX checksum.
The other two checksums are provided only to ensure that the widest possible
range of system can check the integrity of the release files.
Files that end in
.tgz
are gzipped tar archives. This is used in lieu of
.tar.gz
because the software used to download the sets may incorrectly auto-unpack
files ending in
.gz
and to accommodate systems which only support 3 character extensions
to file names.
All tar archives are relative to the target's
/
directory, and
do not
include the leading
``/''.
All compression of release files is to be performed with the command:
gzip -9.
The root of the release hierarchy may be the root directory of a
CD-ROM, but in all other cases it should be
.../NetBSD-
<rel>
/.
The root of the release hierarchy should contain the following
files and subdirectories:
- SOURCE_DATE
-
A file containing the date, in UTC, of the source code from which the
release or snapshot was built, in the default format produced by the
command:
date -u.
- iso/
-
CDROM images in ISO 9660 format, usually created with
``./build.sh ... iso-image ...''
after a
``./build.sh -x ... release ...''
in
src
or created with
``./build.sh ... iso-image-source ...''
after a
``./build.sh -x ... release sourcesets ...''
in
src.
Images in this directory, unlike images in the
.../NetBSD-
<rel>
/
<machine>
/installation/cdrom/
directory, should contain file systems that
have an internal layout that corresponds to
a complete release for one or more machine types.
If built with
``iso-image-source'',
then it will also contain a
``source''
directory.
These images are usually bootable.
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- Xo
-
<machine_arch>
cd.iso
- shared/
-
Files shared by two or more machine types.
- <machine_arch>
/ -
Files which may be shared by all systems of the same
<machine_arch>
will be located in
.../NetBSD-
<rel>
/shared/
<machine_arch>
/
with symbolic links pointing to these files from the
<machine>
subdirectory.
- ALL/
-
Files which are completely machine-independent will be
located in
.../NetBSD-<rel>/shared/ALL/
with symbolic links pointing to these files from the
<machine>
subdirectory.
- source/
-
Source codes of the operating system and patches for it
should be put into
.../NetBSD-<rel>/source/
using the following layout:
- patches/
-
This directory contains various patch files appropriate for
patch(1).
Other patches may exist for fixing critical problems.
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- Xo
-
diff-
<lastrel>
-
<rel>
.gz
Diff against the last release, usually generated by
cvs rdiff.
For patch releases, diffs against the last release
are included. If the last release was a patch release itself, the
diff is against that patch release is included.
- sets/
-
Sources for the various system sets, based on their modules
in the CVS server.
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- gnusrc.tgz
-
Contains sources for all GPLed and possibly other programs that
contains restrictions in their licensing that prevent others from
using these programs in closed-source environments.
- pkgsrc.tgz
-
Package-sources for third party software ready to compile. See
pkgsrc/README for more information.
- sharesrc.tgz
-
Contains machine-independent data files that can be shared across
architectures/systems.
- src.tgz
-
The operating system's userland source code, including all programs,
tools, toolchain, etc.
- syssrc.tgz
-
Kernel sources for all architectures plus sources of the tools needed
to build kernels (like
config(1)).
- xsrc.tgz
-
Source code of the X Window System used on all NetBSD architectures.
Includes X clients and servers.
- <machine>
/ -
The binary releases in
.../NetBSD-
<rel>
/
<machine>
/
follow the following layout:
- INSTALL.txt
-
Installation notes, including complete descriptions of files contained
within the release hierarchy
- INSTALL.more
-
pretty version of this, suited for viewing with
more(1)
- INSTALL.html
-
HTML version of this
- INSTALL.ps
-
PostScript version of this
- binary/
-
system binaries
- sets/
-
installation sets
- BSDSUM
-
- CKSUM
-
- MD5
-
- SYSVSUM
-
- base.tgz
-
The base binary distribution. This set contains the base
NetBSD
utilities that are necessary for the system to run and be minimally
functional. It includes shared libraries for those architectures that
support them. This set excludes all things listed in the sets
described below.
- comp.tgz
-
The compiler tools distribution. This set contains the C and C++
compilers, assembler, linker, other toolchain components, and their
manual pages. It also includes the system include files
(
/usr/include)
, and the static system libraries.
- etc.tgz
-
This set contains the system configuration files that reside in
/etc
and in several other places throughout the file system hierarchy.
- games.tgz
-
This set includes the games and their manual pages.
- kern.tgz
-
This set includes a generic kernel.
- man.tgz
-
This set includes all of the manual pages for the binaries and other
software contained in the
base
set which are not included in the other sets.
- misc.tgz
-
This set includes the system dictionaries (which are rather large), the
typesettable document set, and manual pages for other architectures, which
happen to be installed from the source tree by default.
- text.tgz
-
This set includes the
NetBSD
text processing tools, including
groff(1),
all related programs, and their manual pages.
- xbase.tgz
-
This set includes the base X11 distribution, including manual pages and
shared libraries for those architectures that support them, and excluding
everything contained in the other X11 sets.
- xcomp.tgz
-
This set includes the X11 include files and static X11 libraries.
- xcontrib.tgz
-
This set includes binaries and manual pages for programs built from the
X11
``contrib''
sources.
- xfont.tgz
-
This set includes the X11 fonts.
- xserver.tgz
-
This set includes the X servers and manual pages for <machine>.
Note: this set may not be available on some platforms.
- kernel/
-
suitably named, gzipped kernels
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- netbsd-GENERIC.gz
-
A kernel built from the
GENERIC
kernel configuration file. This is meant as an example only; different
platforms may have differently named kernels.
- installation/
-
installation helper items
- cdrom/
-
CDROM images in ISO 9660 format, usually created as part of
``build.sh ... release ...''
in
src.
Images in this directory will typically be bootable,
and will contain one or more of a kernel, installation tools,
and rescue tools.
They will not contain installation sets, source sets, or
other components of a complete release.
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- Xo
-
netbsd-
<machine_arch>
.iso
- diskimage/
-
disk images, for those platforms that provide them
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- diskimage-rz25.gz
-
- floppy/
-
floppy images, for those platforms that provide them
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- floppy-144.gz
-
- miniroot/
-
miniroot images, for those platforms that provide them
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- miniroot.gz
-
- misc/
-
miscellaneous installation helper utilities, including boot selectors,
floppy writing software, other software that runs under foreign operating
systems, etc.
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- ...
-
- netboot/
-
network boot programs
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- netboot.gz
-
- tapeimage/
-
tape images, for those platforms that provide them
- BSDSUM
-
- CKSUM
-
- MD5
-
- README
-
- SYSVSUM
-
- tapeimage-hp9144.gz
-
SEE ALSO
cksum(1),
date(1),
gzip(1),
split(1),
tar(1)
HISTORY
The
release
manual page first appeared in
NetBSD1.3.