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