xref: /netbsd-src/share/man/man7/release.7 (revision 53b02e147d4ed531c0d2a5ca9b3e8026ba3e99b5)
1.\"	$NetBSD: release.7,v 1.39 2020/07/13 07:26:27 jruoho 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 July 13, 2020
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 "<machine_arch>"
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 release version number.
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 MD5
80files are MD5 digests for the various files in that directory, in the
81format produced by the command:
82.Sy cksum -a MD5 Aq Sy file .
83.Pp
84All
85.Sy SHA512
86files are SHA512 digests for the various files in that directory, in the
87format produced by the command:
88.Sy cksum -a SHA512 Aq Sy file .
89.Pp
90The SHA512 digest is safer, but MD5 checksums are provided so that a wider
91range of operating systems can check the integrity of the release files.
92.Pp
93Files that end in
94.Sy .tgz
95are gzipped tar archives.
96This is used in lieu of
97.Sy .tar.gz
98because the software used to download the sets may incorrectly auto-unpack
99files ending in
100.Sy .gz
101and to accommodate systems which only support 3 character extensions
102to file names.
103.Pp
104All tar archives are relative to the target's
105.Sy /
106directory, and
107.Em do not
108include the leading
109.Dq / .
110.Pp
111The root of the release hierarchy may be the root directory of a
112CD-ROM, but in all other cases it should be
113.Sm off
114.Xo
115.Sy .../NetBSD-
116.Aq Em rel
117.Sy / .
118.Xc
119.Sm on
120.Pp
121The root of the release hierarchy should contain the following
122files and subdirectories:
123.Pp
124.Bl -tag -width "<machine>"
125.It Sy images/
126Image files intended for use in installing
127.Nx .
128There are different types of images for different platforms, and sometimes
129multiple different image types for a single platform.
130.Pp
131Images in this directory, unlike images in the
132.Sm off
133.Xo
134.Sy .../NetBSD-
135.Aq Em rel
136.Sy /
137.Aq Em machine
138.Sy /installation/\\*/
139.Xc
140.Sm on
141directories, contain file systems that
142have an internal layout that corresponds to
143a complete release for a given machine type.
144If built with
145.Dq iso-image-source ,
146then it will also contain a
147.Dq source
148directory.
149These images are usually bootable.
150.Bl -tag -width "NetBSD-<rel>-<machine>.iso"
151.It Sy MD5
152.It Sy SHA512
153.It Sy NetBSD- Ns Ao Em rel Ac Ns Sy - Ns Ao Em machine Ac Ns Sy .iso
154CD-ROM images in ISO 9660 format, usually created with
155.Dq ./build.sh ... iso-image ...
156after a
157.Dq ./build.sh -x ... release ...
158in
159.Pa src
160or created with
161.Dq ./build.sh ... iso-image-source ...
162after a
163.Dq ./build.sh -x ... release sourcesets ...
164in
165.Pa src .
166.It Sy NetBSD- Ns Ao Em rel Ac Ns Sy - Ns Ao Em machine Ac Ns Sy -install.img.gz
167Bootable installation images intended to be written to any drive which
168appears as an
169.Xr sd 4
170type, such as USB flash disks.
171These images are created with
172.Dq ./build.sh ... install-image
173in
174.Pa src .
175.El
176.
177.It Sy shared/
178Files shared by two or more machine types.
179.Bl -tag -width "<machine_arch>"
180.It Ao Em machine_arch Ac Ns Pa /
181Files which may be shared by all systems of the same
182.Aq Em machine_arch
183will be located in
184.Sm off
185.Xo
186.Sy .../NetBSD-
187.Aq Em rel
188.Sy /shared/
189.Aq Em machine_arch
190.Sy /
191.Xc
192.Sm on
193with symbolic links pointing to these files from the
194.Aq Em machine
195subdirectory.
196.It Sy ALL/
197Files which are completely machine-independent will be
198located in
199.Sy .../NetBSD- Ns Ao Em rel Ac Ns Sy /shared/ALL/
200with symbolic links pointing to these files from the
201.Aq Em machine
202subdirectory.
203.El
204.
205.It Sy source/
206Source code of the operating system should be put into
207.Sy .../NetBSD- Ns Ao Em rel Ac Ns Sy /source/
208using the following layout:
209.Pp
210.Bl -tag -width "sets/"
211.It Sy sets/
212Sources for the various system sets.
213.Bl -tag -width "sharesrc.tgz"
214.It Sy MD5
215.It Sy SHA512
216.It Sy gnusrc.tgz
217Contains sources for all GPLed and possibly other programs that
218contains restrictions in their licensing that prevent others from
219using these programs in closed-source environments.
220.It Sy sharesrc.tgz
221Contains machine-independent data files that can be shared across
222architectures/systems.
223.It Sy src.tgz
224The operating system's userland source code, including all programs,
225tools, libraries, etc.
226.It Sy syssrc.tgz
227Kernel sources for all architectures plus sources of the tools needed
228to build kernels (like
229.Xr config 1 ) .
230.It Sy xsrc.tgz
231Source code of the X Window System used on all
232.Nx
233architectures.
234Includes X clients and servers.
235.El
236.El
237.
238.It Ao Em machine Ac Ns Pa /
239The binary releases in
240.Sm off
241.Xo
242.Sy .../NetBSD-
243.Aq Em rel
244.Sy /
245.Aq Em machine
246.Sy /
247.Xc
248.Sm on
249fit the following layout:
250.Bl -tag -width "installation/"
251.It Sy INSTALL.txt
252Installation notes, including complete descriptions of files contained
253within the release hierarchy
254.It Sy INSTALL.more
255pretty version, suited for viewing with
256.Xr more 1
257.It Sy INSTALL.html
258HTML version
259.It Sy INSTALL.ps
260PostScript version
261.It Sy binary/
262system binaries
263.Bl -tag -width "SHA512/"
264.It Sy sets/
265installation sets
266.Bl -tag -width "xserver.tgz"
267.It Sy MD5
268.It Sy SHA512
269.It Sy base.tgz
270The base binary distribution.
271This set contains the base
272.Nx
273utilities that are necessary for the system to run and be minimally
274functional.
275This set excludes all things listed in the sets
276described below.
277.It Sy comp.tgz
278The compiler tools distribution.
279This set contains the C and C++
280compilers, assembler, linker, other toolchain components, and their
281manual pages.
282It also includes the system include files
283.Pq Pa /usr/include
284and the static system libraries.
285.It Sy etc.tgz
286This set contains the system configuration files that reside in
287.Pa /etc
288and in several other places throughout the file system hierarchy.
289.It Sy games.tgz
290This set includes the games and their manual pages.
291.It Sy kern-GENERIC.tgz
292This set includes a kernel built from the
293.Sy GENERIC
294kernel configuration file.
295This is meant as an example only; different
296platforms may have differently named kernels.
297.It Sy man.tgz
298This set includes all of the manual pages for the binaries and other
299software contained in the
300.Sy base
301set which are not included in the other sets.
302.It Sy misc.tgz
303This set includes miscellaneous non-essential files, including dictionaries,
304the typesettable document set, and various other documentation and example
305configuration files.
306.It Sy modules.tgz
307This set includes all the kernel modules.
308.It Sy rescue.tgz
309This set contains the
310.Xr rescue 8
311utilities.
312.It Sy tests.tgz
313This set includes the
314.Xr tests 7
315for
316.Xr atf 7 ,
317the automated test framework used by NetBSD.
318.It Sy text.tgz
319This set includes the
320.Nx
321text processing tools, including
322.Xr groff 1 ,
323all related programs, and their manual pages.
324.It Sy xbase.tgz
325This set includes the base X11 distribution, including manual pages
326and excluding everything contained in the other X11 sets.
327.It Sy xetc.tgz
328This set includes X11 configuration files.
329.It Sy xcomp.tgz
330This set includes the X11 include files and static X11 libraries.
331.It Sy xfont.tgz
332This set includes the X11 fonts.
333.It Sy xserver.tgz
334This set includes the X servers and manual pages for
335a given machine.
336.Em "Note: this set may not be available on some platforms" .
337.El
338.It Sy kernel/
339suitably named, gzipped kernels
340.Bl -tag -width "netbsd-GENERIC.gz"
341.It Sy MD5
342.It Sy SHA512
343.It Sy netbsd-GENERIC.gz
344A kernel built from the
345.Sy GENERIC
346kernel configuration file.
347This is meant as an example only; different
348platforms may have differently named kernels.
349.El
350.El
351.It Sy installation/
352installation helper items
353.Bl -tag -width "diskimage/"
354.It Sy cdrom/
355CD-ROM images in ISO 9660 format, created as part of
356.Dq build.sh ... release ...
357in
358.Pa src .
359.Pp
360Images in this directory are bootable, and contain one a kernel,
361installation tools, and rescue tools.
362They do not contain installation sets, source sets, or
363other components of a complete release.
364.Pp
365.Em "Note: These images are only present in the amd64 and i386 distributions."
366.Bl -tag -width "boot-com.iso"
367.It Sy MD5
368.It Sy SHA512
369.It Sy boot.iso
370VGA console
371.It Sy boot-com.iso
372Serial console
373.El
374.It Sy diskimage/
375disk images, on those platforms that provide them
376.Bl -tag -width "diskimage.gz"
377.It Sy MD5
378.It Sy SHA512
379.It Sy diskimage.gz
380.El
381.It Sy floppy/
382floppy images, on those platforms that provide them
383.Bl -tag -width "boot1.fs"
384.It Sy MD5
385.It Sy SHA512
386.It Sy boot1.fs
387.It Sy boot2.fs
388.El
389.It Sy instkernel/
390installation kernels for platforms that can boot them directly
391.Bl -tag -width netbsd.gz
392.It Sy MD5
393.It Sy SHA512
394.It Sy netbsd.gz
395.El
396.It Sy miniroot/
397miniroot images, on those platforms that provide them
398.Bl -tag -width "miniroot.fs.gz"
399.It Sy MD5
400.It Sy SHA512
401.It Sy miniroot.fs.gz
402.El
403.It Sy misc/
404miscellaneous installation helper utilities, including boot selectors,
405floppy writing software, other software that runs under foreign operating
406systems, etc.
407.Bl -tag -width "SHA512"
408.It Sy MD5
409.It Sy SHA512
410.It Sy ...
411.El
412.It Sy netboot/
413network boot programs
414.Bl -tag -width "netboot.gz"
415.It Sy MD5
416.It Sy SHA512
417.It Sy netboot.gz
418.El
419.It Sy tapeimage/
420tape images, on those platforms that provide them
421.Bl -tag -width "tapeboot"
422.It Sy MD5
423.It Sy SHA512
424.It Sy tapeboot
425.El
426.El
427.El
428.El
429.Sh SEE ALSO
430.Xr cksum 1 ,
431.Xr dd 1 ,
432.Xr gzip 1 ,
433.Xr split 1 ,
434.Xr tar 1
435.Sh HISTORY
436The
437.Nm
438manual page first appeared in
439.Nx 1.3 .
440