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