xref: /netbsd-src/share/man/man7/release.7 (revision 8b0f9554ff8762542c4defc4f70e1eb76fb508fa)
1.\"	$NetBSD: release.7,v 1.24 2007/08/30 10:45:03 jnemeth Exp $
2.\"
3.\" Copyright (c) 1997, 2000, 2005 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Charles M. Hannum and Jason R. Thorpe.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
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.
17.\" 3. All advertising materials mentioning features or use of this software
18.\"    must display the following acknowledgement:
19.\"        This product includes software developed by the NetBSD
20.\"        Foundation, Inc. and its contributors.
21.\" 4. Neither the name of The NetBSD Foundation nor the names of its
22.\"    contributors may be used to endorse or promote products derived
23.\"    from this software without specific prior written permission.
24.\"
25.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
26.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
27.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
29.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35.\" POSSIBILITY OF SUCH DAMAGE.
36.\"
37.Dd August 30, 2007
38.Dt RELEASE 7
39.Os
40.Sh NAME
41.Nm release
42.Nd layout of NetBSD releases and snapshots
43.Sh DESCRIPTION
44This document describes the layout of
45.Nx
46releases and snapshots.
47This layout should be consistent between FTP servers and CD-ROMs,
48except possibly the path that leads to the release hierarchy.
49.Pp
50In this document, the following special words have these definitions:
51.Bl -tag -width "\*[Lt]machine_arch\*[Gt]"
52.It Em \*[Lt]machine\*[Gt]
53The platform for which the release was built, corresponding to the
54.Em hw.machine
55sysctl variable, e.g.
56.Em i386
57or
58.Em amiga .
59.It Em \*[Lt]machine_arch\*[Gt]
60The architecture for which a particular installation set was built,
61corresponding to the
62.Em hw.machine_arch
63sysctl variable, e.g.
64.Em i386
65or
66.Em m68k .
67.It Em \*[Lt]rel\*[Gt]
68The target release.
69.El
70.Pp
71All
72.Sy README
73files are descriptions of the various files in directories that have
74.Dq non-standard
75contents.
76There may also be a
77.Sy README
78file at the top-level,
79describing who built the snapshot and under what circumstances
80.Po e.g. whether it's an official
81.Nx
82snapshot, or not
83.Pc .
84.Pp
85All
86.Sy BSDSUM
87files are historic
88.Bx
89checksums for the various files in that directory,
90in the format produced by the command:
91.Sy cksum -o 1 \*[Lt]file\*[Gt] .
92.Pp
93All
94.Sy CKSUM
95files are POSIX checksums for the various files in that directory, in the
96format produced by the command:
97.Sy cksum \*[Lt]file\*[Gt] .
98.Pp
99All
100.Sy MD5
101files are MD5 digests for the various files in that directory, in the
102format produced by the command:
103.Sy cksum -m \*[Lt]file\*[Gt] .
104.Pp
105All
106.Sy SYSVSUM
107files are historic
108.At V
109checksums for the various files in
110that directory, in the format produced by the command:
111.Sy cksum -o 2 \*[Lt]file\*[Gt] .
112.Pp
113The MD5 digest is the safest checksum, followed by the POSIX checksum.
114The other two checksums are provided only to ensure that the widest possible
115range of system can check the integrity of the release files.
116.Pp
117Files that end in
118.Sy .tgz
119are gzipped tar archives.  This is used in lieu of
120.Sy .tar.gz
121because the software used to download the sets may incorrectly auto-unpack
122files ending in
123.Sy .gz
124and to accommodate systems which only support 3 character extensions
125to file names.
126.Pp
127All tar archives are relative to the target's
128.Sy /
129directory, and
130.Em do not
131include the leading
132.Dq / .
133.Pp
134All compression of release files is to be performed with the command:
135.Sy gzip -9 .
136.Pp
137The root of the release hierarchy may be the root directory of a
138CD-ROM, but in all other cases it should be
139.Sm off
140.Xo
141.Sy .../NetBSD-
142.Em \*[Lt]rel\*[Gt]
143.Sy / .
144.Xc
145.Sm on
146.Pp
147The root of the release hierarchy should contain the following
148files and subdirectories:
149.Pp
150.Bl -tag -width "\*[Lt]machine\*[Gt]"
151.
152.It Sy SOURCE_DATE
153A file containing the date, in UTC, of the source code from which the
154release or snapshot was built, in the default format produced by the
155command:
156.Sy date -u .
157.
158.It Sy iso/
159CDROM images in ISO 9660 format, usually created with
160.Dq ./build.sh ... iso-image ...
161after a
162.Dq ./build.sh -x ... release ...
163in
164.Pa src
165or created with
166.Dq ./build.sh ... iso-image-source ...
167after a
168.Dq ./build.sh -x ... release sourcesets ...
169in
170.Pa src .
171.Pp
172Images in this directory, unlike images in the
173.Sm off
174.Xo
175.Sy .../NetBSD-
176.Em \*[Lt]rel\*[Gt]
177.Sy /
178.Em \*[Lt]machine\*[Gt]
179.Sy /installation/cdrom/
180.Xc
181.Sm on
182directory, should contain file systems that
183have an internal layout that corresponds to
184a complete release for one or more machine types.
185If built with
186.Dq iso-image-source ,
187then it will also contain a
188.Dq source
189directory.
190These images are usually bootable.
191.Bl -tag -width "\*[Lt]machine_arch\*[Gt]cd.iso"
192.It Sy BSDSUM
193.It Sy CKSUM
194.It Sy MD5
195.It Sy README
196.It Sy SYSVSUM
197.Sm off
198.It Xo
199.Em \*[Lt]machine_arch\*[Gt]
200.Sy cd.iso
201.Xc
202.Sm on
203.El
204.
205.It Sy shared/
206Files shared by two or more machine types.
207.Bl -tag -width "\*[Lt]machine_arch\*[Gt]"
208.It Em \*[Lt]machine_arch\*[Gt] Ns Pa /
209Files which may be shared by all systems of the same
210.Em \*[Lt]machine_arch\*[Gt]
211will be located in
212.Sm off
213.Xo
214.Sy .../NetBSD-
215.Em \*[Lt]rel\*[Gt]
216.Sy /shared/
217.Em \*[Lt]machine_arch\*[Gt]
218.Sy /
219.Xc
220.Sm on
221with symbolic links pointing to these files from the
222.Em \*[Lt]machine\*[Gt]
223subdirectory.
224.It Sy ALL/
225Files which are completely machine-independent will be
226located in
227.Sy .../NetBSD- Ns Em \*[Lt]rel\*[Gt] Ns Sy /shared/ALL/
228with symbolic links pointing to these files from the
229.Em \*[Lt]machine\*[Gt]
230subdirectory.
231.El
232.
233.It Sy source/
234Source codes of the operating system and patches for it
235should be put into
236.Sy .../NetBSD- Ns Em \*[Lt]rel\*[Gt] Ns Sy /source/
237using the following layout:
238.Pp
239.Bl -tag -width "patches/"
240.It Sy patches/
241This directory contains various patch files appropriate for
242.Xr patch 1 .
243Other patches may exist for fixing critical problems.
244.Bl -tag -width "diff-1.4.1-to-1.4.2.gz"
245.It Sy BSDSUM
246.It Sy CKSUM
247.It Sy MD5
248.It Sy README
249.It Sy SYSVSUM
250.It Xo
251.Sm off
252.Sy diff-
253.Em \*[Lt]lastrel\*[Gt]
254.Sy -
255.Em \*[Lt]rel\*[Gt]
256.Sy .gz
257.Sm on
258.Xc
259Diff against the last release, usually generated by
260.Ic cvs rdiff .
261For patch releases, diffs against the last release
262are included.  If the last release was a patch release itself, the
263diff is against that patch release is included.
264.El
265.It Sy sets/
266Sources for the various system sets, based on their modules
267in the CVS server.
268.\" XXX how are these generated? Separate checkout of each module?
269.Bl -tag -width "sharesrc.tgz"
270.It Sy BSDSUM
271.It Sy CKSUM
272.It Sy MD5
273.It Sy README
274.It Sy SYSVSUM
275.It Sy gnusrc.tgz
276Contains sources for all GPLed and possibly other programs that
277contains restrictions in their licensing that prevent others from
278using these programs in closed-source environments.
279.It Sy pkgsrc.tgz
280Package-sources for third party software ready to compile. See
281pkgsrc/README for more information.
282.It Sy sharesrc.tgz
283Contains machine-independent data files that can be shared across
284architectures/systems.
285.It Sy src.tgz
286The operating system's userland source code, including all programs,
287tools, toolchain, etc.
288.It Sy syssrc.tgz
289Kernel sources for all architectures plus sources of the tools needed
290to build kernels (like
291.Xr config 1 ) .
292.It Sy xsrc.tgz
293Source code of the X Window System used on all NetBSD architectures.
294Includes X clients and servers.
295.El
296.El
297.
298.It Em \*[Lt]machine\*[Gt] Ns Pa /
299The binary releases in
300.Sm off
301.Xo
302.Sy .../NetBSD-
303.Em \*[Lt]rel\*[Gt]
304.Sy /
305.Em \*[Lt]machine\*[Gt]
306.Sy /
307.Xc
308.Sm on
309follow the following layout:
310.Bl -tag -width "installation/"
311.It Sy INSTALL.txt
312Installation notes, including complete descriptions of files contained
313within the release hierarchy
314.It Sy INSTALL.more
315pretty version of this, suited for viewing with
316.Xr more 1
317.It Sy INSTALL.html
318HTML version of this
319.It Sy INSTALL.ps
320PostScript version of this
321.It Sy binary/
322system binaries
323.Bl -tag -width "SYSVSUM/"
324.It Sy sets/
325installation sets
326.Bl -tag -width "xcontrib.tgz"
327.It Sy BSDSUM
328.It Sy CKSUM
329.It Sy MD5
330.It Sy SYSVSUM
331.It Sy base.tgz
332The base binary distribution.  This set contains the base
333.Nx
334utilities that are necessary for the system to run and be minimally
335functional.  It includes shared libraries for those architectures that
336support them.  This set excludes all things listed in the sets
337described below.
338.It Sy comp.tgz
339The compiler tools distribution.  This set contains the C and C++
340compilers, assembler, linker, other toolchain components, and their
341manual pages.  It also includes the system include files
342.Pq Pa /usr/include
343, and the static system libraries.
344.It Sy etc.tgz
345This set contains the system configuration files that reside in
346.Pa /etc
347and in several other places throughout the file system hierarchy.
348.It Sy games.tgz
349This set includes the games and their manual pages.
350.It Sy kern.tgz
351This set includes a generic kernel.
352.It Sy man.tgz
353This set includes all of the manual pages for the binaries and other
354software contained in the
355.Sy base
356set which are not included in the other sets.
357.It Sy misc.tgz
358This set includes the system dictionaries (which are rather large), the
359typesettable document set, and manual pages for other architectures, which
360happen to be installed from the source tree by default.
361.It Sy text.tgz
362This set includes the
363.Nx
364text processing tools, including
365.Xr groff 1 ,
366all related programs, and their manual pages.
367.It Sy xbase.tgz
368This set includes the base X11 distribution, including manual pages and
369shared libraries for those architectures that support them, and excluding
370everything contained in the other X11 sets.
371.It Sy xcomp.tgz
372This set includes the X11 include files and static X11 libraries.
373.It Sy xcontrib.tgz
374This set includes binaries and manual pages for programs built from the
375X11
376.Dq contrib
377sources.
378.It Sy xfont.tgz
379This set includes the X11 fonts.
380.It Sy xserver.tgz
381This set includes the X servers and manual pages for \*[Lt]machine\*[Gt].
382.Em "Note: this set may not be available on some platforms" .
383.El
384.It Sy kernel/
385suitably named, gzipped kernels
386.Bl -tag -width "netbsd-GENERIC.gz"
387.It Sy BSDSUM
388.It Sy CKSUM
389.It Sy MD5
390.It Sy README
391.It Sy SYSVSUM
392.It Sy netbsd-GENERIC.gz
393A kernel built from the
394.Sy GENERIC
395kernel configuration file.  This is meant as an example only; different
396platforms may have differently named kernels.
397.El
398.El
399.It Sy installation/
400installation helper items
401.Bl -tag -width "diskimage/"
402.It Sy cdrom/
403CDROM images in ISO 9660 format, usually created as part of
404.Dq build.sh ... release ...
405in
406.Pa src .
407.Pp
408Images in this directory will typically be bootable,
409and will contain one or more of a kernel, installation tools,
410and rescue tools.
411They will not contain installation sets, source sets, or
412other components of a complete release.
413.Bl -tag -width "netbsd-ARCH.iso"
414.It Sy BSDSUM
415.It Sy CKSUM
416.It Sy MD5
417.It Sy README
418.It Sy SYSVSUM
419.It Xo
420.Sm off
421.Sy netbsd-
422.Em \*[Lt]machine_arch\*[Gt]
423.Sy .iso
424.Sm on
425.Xc
426.El
427.It Sy diskimage/
428disk images, for those platforms that provide them
429.Bl -tag -width "diskimage-rz25.gz"
430.It Sy BSDSUM
431.It Sy CKSUM
432.It Sy MD5
433.It Sy README
434.It Sy SYSVSUM
435.It Sy diskimage-rz25.gz
436.El
437.It Sy floppy/
438floppy images, for those platforms that provide them
439.Bl -tag -width "floppy-144.gz"
440.It Sy BSDSUM
441.It Sy CKSUM
442.It Sy MD5
443.It Sy README
444.It Sy SYSVSUM
445.It Sy floppy-144.gz
446.El
447.It Sy miniroot/
448miniroot images, for those platforms that provide them
449.Bl -tag -width "miniroot.gz"
450.It Sy BSDSUM
451.It Sy CKSUM
452.It Sy MD5
453.It Sy README
454.It Sy SYSVSUM
455.It Sy miniroot.gz
456.El
457.It Sy misc/
458miscellaneous installation helper utilities, including boot selectors,
459floppy writing software, other software that runs under foreign operating
460systems, etc.
461.Bl -tag -width "CKSUMS"
462.It Sy BSDSUM
463.It Sy CKSUM
464.It Sy MD5
465.It Sy README
466.It Sy SYSVSUM
467.It Sy ...
468.El
469.It Sy netboot/
470network boot programs
471.Bl -tag -width "netboot.gz"
472.It Sy BSDSUM
473.It Sy CKSUM
474.It Sy MD5
475.It Sy README
476.It Sy SYSVSUM
477.It Sy netboot.gz
478.El
479.It Sy tapeimage/
480tape images, for those platforms that provide them
481.Bl -tag -width "tapeimage-hp9144.gz"
482.It Sy BSDSUM
483.It Sy CKSUM
484.It Sy MD5
485.It Sy README
486.It Sy SYSVSUM
487.It Sy tapeimage-hp9144.gz
488.El
489.El
490.El
491.El
492.Sh SEE ALSO
493.Xr cksum 1 ,
494.Xr date 1 ,
495.Xr gzip 1 ,
496.Xr split 1 ,
497.Xr tar 1
498.Sh HISTORY
499The
500.Nm
501manual page first appeared in
502.Nx 1.3 .
503