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