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