.TH INSTALL 1
.SH NAME
install \- notes about Plan 9 from User Space installation
.SH SYNOPSIS
.B
cd \*9; ./INSTALL
[
.B -b
|
.B -c
] [
.B -r
.I path
]
.SH DESCRIPTION
To obtain the Plan 9 tree, use Git
(see
.IR git (1))
or download a tar file from
.HR http://swtch.com/plan9port "" .
.PP
The tree can be unpacked anywhere, but the
usual place is
.BR /usr/local/plan9 .
In the root of the tree, run
.BR ./INSTALL .
This script builds the Plan 9 build program
.IR mk (1)
if necessary,
cleans all previously built object files and libraries out of the tree,
rebuilds and installs everything, and then cleans up.
.PP
There are a few files in tree which have the root
hard-coded in them.
After the build, 
.I INSTALL
edits these files to replace the string
.B /usr/local/plan9
with the name of the root of the current tree.
.PP
Finally,
.I INSTALL
builds an HTML version of the manual and installs it in
.BR \*9/man .
.PP
The installation can be thought of as two steps:
build all the binaries, and then edit files as necessary
to fix the references to the installation root.
If necessary, these can be run separately.
Given the
.B -b
flag,
.I INSTALL
performs only the first step.
Given the
.B -c
flag,
.I INSTALL
performs only the second step.
The first step can be done with the tree in a temporary work directory,
but the second step must be done once the tree is in its final location.
If you want to build the project in one location and then install into
another location, use
.B -r
.I path
to specify the
.I final
location of Plan9 tree.
These flags are only necessary when trying to conform to the
expectations of certain package management systems.
.PP
At the end of the installation,
.I INSTALL
prints suggested settings for the environment variables 
.B $PLAN9
and
.BR $PATH .
.PP
Plan 9 from User Space uses different threading implementations on Linux 2.6 and
later kernels than on 2.4 and earlier;
and on FreeBSD 5 and later kernels than on FreeBSD 4 and earlier.
Running binaries from one class on another will not work.
.PP
Some Linux 2.6 systems (e.g., Gentoo) do not use the new NPTL pthread library
even though the kernel supports them.  On these systems, plan9port must 
fall back on the threading code intended for Linux 2.4.  To accomplish this,
.I INSTALL
checks whether the running system uses NPTL and sets
.B SYSVERSION
in
.B \*9/config
accordingly.
The file
.B \*9/LOCAL.config
is appended to
.B config
after this auto-detection and can be used to override the choices.
If 
.B LOCAL.config
contains a line
.B WSYSTYPE=nowsys
then the system is built without using X11.
.PP
On most Linux systems, the X11 header packages need to be installed
to build using X11.  On Debian. the required packages are
libx11-dev, libxext-dev, and libxt-dev.
On Ubuntu, it suffices to install xorg-dev.
.PP
.I INSTALL
can safely be repeated to rebuild the system from scratch.
.PP
Once the system is built for the first time,
it can be maintained and rebuilt using 
.IR mk (1).
To rebuild individual commands or libraries,
run
.B mk
.B install
and
.B mk
.B clean
in the appropriate source directory
(see
.IR src (1)).
.SH FILES
.TP
.B \*9/lib/moveplan9.files
the list of files that need to have
.B /usr/local/plan9
edited out of them
.TP
.B \*9/lib/moveplan9.sh
the script that edits the files
.TP
.B \*9/src/mkmk.sh
the shell script used to build
.IR mk (1)
.TP
.B \*9/dist/manweb
the shell script that builds the HTML manual
.TP
.B \*9/man/index.html
the top-level page in the HTML version of the manual
.TP
.B \*9/install.log
logged output from the last run of
.I INSTALL
.TP
.B \*9/install.sum
a summary of
.B install.log
.SH SEE ALSO
.IR intro (1),
.IR git (1)
