1 .\" $NetBSD: release.7,v 1.30 2009/09/15 01:20:42 jnemeth Exp $
3 .\" Copyright (c) 1997, 2000, 2005 The NetBSD Foundation, Inc.
4 .\" All rights reserved.
6 .\" This code is derived from software contributed to The NetBSD Foundation
7 .\" by Charles M. Hannum and Jason R. Thorpe.
9 .\" Redistribution and use in source and binary forms, with or without
10 .\" modification, are permitted provided that the following conditions
12 .\" 1. Redistributions of source code must retain the above copyright
13 .\" notice, this list of conditions and the following disclaimer.
14 .\" 2. Redistributions in binary form must reproduce the above copyright
15 .\" notice, this list of conditions and the following disclaimer in the
16 .\" documentation and/or other materials provided with the distribution.
18 .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20 .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21 .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22 .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 .\" POSSIBILITY OF SUCH DAMAGE.
30 .Dd September 19, 2009
35 .Nd layout of NetBSD releases and snapshots
37 This document describes the layout of
39 releases and snapshots.
40 This layout should be consistent between FTP servers and CD-ROMs,
41 except possibly the path that leads to the release hierarchy.
43 In this document, the following special words have these definitions:
44 .Bl -tag -width "\*[Lt]machine_arch\*[Gt]"
46 The platform for which the release was built, corresponding to the
48 sysctl variable, e.g.,
52 .It Aq Em machine_arch
53 The architecture for which a particular installation set was built,
56 sysctl variable, e.g.,
61 The release version number.
66 files are descriptions of the various files in directories that have
71 file at the top-level,
72 describing who built the snapshot and under what circumstances
73 .Po e.g., whether it's an official
80 files are MD5 digests for the various files in that directory, in the
81 format produced by the command:
82 .Sy cksum -m Aq Sy file .
86 files are SHA512 digests for the various files in that directory, in the
87 format produced by the command:
88 .Sy cksum -a SHA512 Aq Sy file .
90 The SHA512 digest is safer, but MD5 checksums are provided so that a wider
91 range of operating systems can check the integrity of the release files.
95 are gzipped tar archives.
96 This is used in lieu of
98 because the software used to download the sets may incorrectly auto-unpack
101 and to accommodate systems which only support 3 character extensions
104 All tar archives are relative to the target's
111 The root of the release hierarchy may be the root directory of a
112 CD-ROM, but in all other cases it should be
121 The root of the release hierarchy should contain the following
122 files and subdirectories:
124 .Bl -tag -width "\*[Lt]machine\*[Gt]"
126 CDROM images in ISO 9660 format, usually created with
127 .Dq ./build.sh ... iso-image ...
129 .Dq ./build.sh -x ... release ...
133 .Dq ./build.sh ... iso-image-source ...
135 .Dq ./build.sh -x ... release sourcesets ...
139 Images in this directory, unlike images in the
146 .Sy /installation/cdrom/
149 directory, contain file systems that
150 have an internal layout that corresponds to
151 a complete release for a given machine type.
153 .Dq iso-image-source ,
154 then it will also contain a
157 These images are usually bootable.
158 .Bl -tag -width "\*[Lt]machine_arch\*[Gt]cd.iso"
161 .It Ao Em machine Ac Ns Sy cd.iso
165 Files shared by two or more machine types.
166 .Bl -tag -width "\*[Lt]machine_arch\*[Gt]"
167 .It Ao Em machine_arch Ac Ns Pa /
168 Files which may be shared by all systems of the same
180 with symbolic links pointing to these files from the
184 Files which are completely machine-independent will be
186 .Sy .../NetBSD- Ns Ao Em rel Ac Ns Sy /shared/ALL/
187 with symbolic links pointing to these files from the
193 Source code of the operating system should be put into
194 .Sy .../NetBSD- Ns Ao Em rel Ac Ns Sy /source/
195 using the following layout:
197 .Bl -tag -width "sets/"
199 Sources for the various system sets.
200 .Bl -tag -width "sharesrc.tgz"
204 Contains sources for all GPLed and possibly other programs that
205 contains restrictions in their licensing that prevent others from
206 using these programs in closed-source environments.
208 Contains machine-independent data files that can be shared across
209 architectures/systems.
211 The operating system's userland source code, including all programs,
212 tools, libraries, etc.
214 Kernel sources for all architectures plus sources of the tools needed
215 to build kernels (like
218 Source code of the X Window System used on all
221 Includes X clients and servers.
225 .It Ao Em machine Ac Ns Pa /
226 The binary releases in
236 fit the following layout:
237 .Bl -tag -width "installation/"
239 Installation notes, including complete descriptions of files contained
240 within the release hierarchy
242 pretty version, suited for viewing with
250 .Bl -tag -width "SHA512/"
253 .Bl -tag -width "xserver.tgz"
257 The base binary distribution.
258 This set contains the base
260 utilities that are necessary for the system to run and be minimally
262 This set excludes all things listed in the sets
265 The compiler tools distribution.
266 This set contains the C and C++
267 compilers, assembler, linker, other toolchain components, and their
269 It also includes the system include files
271 and the static system libraries.
273 This set contains the system configuration files that reside in
275 and in several other places throughout the file system hierarchy.
277 This set includes the games and their manual pages.
279 This set includes a generic kernel.
281 This set includes all of the manual pages for the binaries and other
282 software contained in the
284 set which are not included in the other sets.
286 This set includes miscellaneous non-essential files, including dictionaries,
287 the typesettable document set, and various other documentation and example
290 This set includes all the kernel modules.
292 This set includes the
294 text processing tools, including
296 all related programs, and their manual pages.
298 This set includes the base X11 distribution, including manual pages
299 and excluding everything contained in the other X11 sets.
301 This set includes the X11 include files and static X11 libraries.
303 This set includes the X11 fonts.
305 This set includes the X servers and manual pages for
307 .Em "Note: this set may not be available on some platforms" .
310 suitably named, gzipped kernels
311 .Bl -tag -width "netbsd-GENERIC.gz"
314 .It Sy netbsd-GENERIC.gz
315 A kernel built from the
317 kernel configuration file.
318 This is meant as an example only; different
319 platforms may have differently named kernels.
323 installation helper items
324 .Bl -tag -width "diskimage/"
326 CDROM images in ISO 9660 format, created as part of
327 .Dq build.sh ... release ...
331 Images in this directory are bootable, and contain one a kernel,
332 installation tools, and rescue tools.
333 They do not contain installation sets, source sets, or
334 other components of a complete release.
336 .Em "Note: These images are only present in the amd64 and i386 distributions."
337 .Bl -tag -width "boot-com.iso"
346 disk images, on those platforms that provide them
347 .Bl -tag -width "diskimage.gz"
353 floppy images, on those platforms that provide them
354 .Bl -tag -width "boot1.fs"
361 installation kernels for platforms that can boot them directly
362 .Bl -tag -width netbsd.gz
368 miniroot images, on those platforms that provide them
369 .Bl -tag -width "miniroot.fs.gz"
372 .It Sy miniroot.fs.gz
375 miscellaneous installation helper utilities, including boot selectors,
376 floppy writing software, other software that runs under foreign operating
378 .Bl -tag -width "SHA512"
384 network boot programs
385 .Bl -tag -width "netboot.gz"
391 tape images, on those platforms that provide them
392 .Bl -tag -width "tapeboot"
408 manual page first appeared in