xref: /netbsd/share/man/man7/release.7 (revision 682ebb1c)
1.\"	$NetBSD: release.7,v 1.40 2022/08/21 15:01:08 brook 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 gzimg/
265compressed system images
266.Bl -tag -width "xserver.tgz"
267.It Ao Em machine Ac Ns Pa .tar.gz
268The primary system image on those platforms that provide them.  These
269images may not be bootable.
270.It Ao Em machine Ac Ns Pa - Ns Ao Em board Ac Ns Pa .tar.gz
271A bootable system image for a particular board, on platforms that
272provide them.
273.El
274.It Sy sets/
275installation sets
276.Bl -tag -width "xserver.tgz"
277.It Sy MD5
278.It Sy SHA512
279.It Sy base.tgz
280The base binary distribution.
281This set contains the base
282.Nx
283utilities that are necessary for the system to run and be minimally
284functional.
285This set excludes all things listed in the sets
286described below.
287.It Sy comp.tgz
288The compiler tools distribution.
289This set contains the C and C++
290compilers, assembler, linker, other toolchain components, and their
291manual pages.
292It also includes the system include files
293.Pq Pa /usr/include
294and the static system libraries.
295.It Sy etc.tgz
296This set contains the system configuration files that reside in
297.Pa /etc
298and in several other places throughout the file system hierarchy.
299.It Sy games.tgz
300This set includes the games and their manual pages.
301.It Sy kern-GENERIC.tgz
302This set includes a kernel built from the
303.Sy GENERIC
304kernel configuration file.
305This is meant as an example only; different
306platforms may have differently named kernels.
307.It Sy man.tgz
308This set includes all of the manual pages for the binaries and other
309software contained in the
310.Sy base
311set which are not included in the other sets.
312.It Sy misc.tgz
313This set includes miscellaneous non-essential files, including dictionaries,
314the typesettable document set, and various other documentation and example
315configuration files.
316.It Sy modules.tgz
317This set includes all the kernel modules.
318.It Sy rescue.tgz
319This set contains the
320.Xr rescue 8
321utilities.
322.It Sy tests.tgz
323This set includes the
324.Xr tests 7
325for
326.Xr atf 7 ,
327the automated test framework used by NetBSD.
328.It Sy text.tgz
329This set includes the
330.Nx
331text processing tools, including
332.Xr groff 1 ,
333all related programs, and their manual pages.
334.It Sy xbase.tgz
335This set includes the base X11 distribution, including manual pages
336and excluding everything contained in the other X11 sets.
337.It Sy xetc.tgz
338This set includes X11 configuration files.
339.It Sy xcomp.tgz
340This set includes the X11 include files and static X11 libraries.
341.It Sy xfont.tgz
342This set includes the X11 fonts.
343.It Sy xserver.tgz
344This set includes the X servers and manual pages for
345a given machine.
346.Em "Note: this set may not be available on some platforms" .
347.El
348.It Sy kernel/
349suitably named, gzipped kernels
350.Bl -tag -width "netbsd-GENERIC.gz"
351.It Sy MD5
352.It Sy SHA512
353.It Sy netbsd-GENERIC.gz
354A kernel built from the
355.Sy GENERIC
356kernel configuration file.
357This is meant as an example only; different
358platforms may have differently named kernels.
359.El
360.El
361.It Sy installation/
362installation helper items
363.Bl -tag -width "diskimage/"
364.It Sy cdrom/
365CD-ROM images in ISO 9660 format, created as part of
366.Dq build.sh ... release ...
367in
368.Pa src .
369.Pp
370Images in this directory are bootable, and contain one a kernel,
371installation tools, and rescue tools.
372They do not contain installation sets, source sets, or
373other components of a complete release.
374.Pp
375.Em "Note: These images are only present in the amd64 and i386 distributions."
376.Bl -tag -width "boot-com.iso"
377.It Sy MD5
378.It Sy SHA512
379.It Sy boot.iso
380VGA console
381.It Sy boot-com.iso
382Serial console
383.El
384.It Sy diskimage/
385disk images, on those platforms that provide them
386.Bl -tag -width "diskimage.gz"
387.It Sy MD5
388.It Sy SHA512
389.It Sy diskimage.gz
390.El
391.It Sy floppy/
392floppy images, on those platforms that provide them
393.Bl -tag -width "boot1.fs"
394.It Sy MD5
395.It Sy SHA512
396.It Sy boot1.fs
397.It Sy boot2.fs
398.El
399.It Sy instkernel/
400installation kernels for platforms that can boot them directly
401.Bl -tag -width netbsd.gz
402.It Sy MD5
403.It Sy SHA512
404.It Sy netbsd.gz
405.El
406.It Sy miniroot/
407miniroot images, on those platforms that provide them
408.Bl -tag -width "miniroot.fs.gz"
409.It Sy MD5
410.It Sy SHA512
411.It Sy miniroot.fs.gz
412.El
413.It Sy misc/
414miscellaneous installation helper utilities, including boot selectors,
415floppy writing software, other software that runs under foreign operating
416systems, etc.
417.Bl -tag -width "SHA512"
418.It Sy MD5
419.It Sy SHA512
420.It Sy ...
421.El
422.It Sy netboot/
423network boot programs
424.Bl -tag -width "netboot.gz"
425.It Sy MD5
426.It Sy SHA512
427.It Sy netboot.gz
428.El
429.It Sy tapeimage/
430tape images, on those platforms that provide them
431.Bl -tag -width "tapeboot"
432.It Sy MD5
433.It Sy SHA512
434.It Sy tapeboot
435.El
436.El
437.El
438.El
439.Sh SEE ALSO
440.Xr cksum 1 ,
441.Xr dd 1 ,
442.Xr gzip 1 ,
443.Xr split 1 ,
444.Xr tar 1
445.Sh HISTORY
446The
447.Nm
448manual page first appeared in
449.Nx 1.3 .
450