Installation Details for XFree86[tm] 4.0 The XFree86 Project, Inc 29 February 2000 Abstract This document contains information about installing XFree86 4.0. 1. Introduction This document contains information about installing XFree86 4.0 binary dis- tributions as provided by The XFree86 Project. The installation procedures for binary distributions provided by others may be different. The XFree86 binary distributions that we provide for UNIX-like OSs are pack- aged in the platform-independent gzipped tar format (referred to as "tar- balls"). Our tarballs can be identified by the ".tgz" suffix. We do not provide binaries in RPM format or any other platform specific package format. If you need them in such a format, you should contact your OS vendor. Together with the binary distributions, we provide a customised version of GNU tar called "extract", and an installation script. We recommend that these be used to install the binary distributions. 2. How to get the XFree86 4.0 binary distributions We, The XFree86 Project, provide XFree86 4.0 binaries for a range of operat- ing systems at our ftp site . Our ftp site is also mirrored by many sites around the world. There is a sub-directory for each OS/platform that we have binaries for. The first thing you need to do is to decide which of these suits you. In most cases, the choice is straightforward. In some cases (e.g., Linux) there may be a number of choices depending on what architecture or libc version you are using. We recommend that you first download the Xinstall.sh script, and run it as follows to find out which binary distribution you should download. sh Xinstall.sh -check This should tell you which binary distribution is the correct one for your system. Getting this right may save from wasting time downloading the wrong distribution. The next step is to download the necessary files. The mandatory files for all installations are listed below. All of them must be downloaded to do the installation. The installer script will complain if they are not all pre- sent. Xinstall.sh The installer script extract The utility for extracting tarballs Xbin.tgz X clients/utilities and run-time libraries Xlib.tgz Some data files required at run-time Xman.tgz Manual pages Xdoc.tgz XFree86 documentation Xfnts.tgz Base set of fonts Xfenc.tgz Base set of font encoding data Xetc.tgz Run-time configuration files Xvar.tgz Run-time data Xxserv.tgz XFree86 X server Xmod.tgz XFree86 X server modules NOTES: o Some web browsers have a problem downloading the extract utility cor- rectly. If you encounter this problem, download the version called extract.exe instead. The ".exe" suffix is only there to make the trou- blesome web browsers do the right thing. It is not a DOS/Windows exe- cutable. o A few distributions don't have or require the Xvar.tgz tarball. If it is present in the binaries sub-directory for your platform, then it is required. o Some distributions may have additional mandatory tarballs. This is rare. In these cases, the installer script will tell you if any are missing. The following tarballs are optional. You should download the ones you want to install. Xfsrv.tgz Font server Xnest.tgz Nested X server Xprog.tgz X header files, config files and compile-time libs Xprt.tgz X Print server Xvfb.tgz Virtual framebuffer X server Xf100.tgz 100dpi fonts Xfcyr.tgz Cyrillic fonts Xflat2.tgz Latin-2 fonts Xfnon.tgz Some large bitmap fonts Xfscl.tgz Scalable fonts (Speedo and Type1) Xhtml.tgz HTML version of the documentation Xps.tgz PostScript version of the documentation Xjdoc.tgz Documentation in Japanese NOTES: o Some distributions may have some additional optional tarballs. If you miss some and want to install them later, you can do so by following the appropriate part of the section that describes manual installation. 3. Installing XFree86 4.0 using the Xinstall.sh script We strongly recommend that our XFree86 4.0 binary distributions be installed using the Xinstall.sh script that we provide. The main reason that we make this recommendation is that there are a lot of steps in the manual installa- tion process, and those steps can vary according to the situation. There is, however, a description of the manual installation process for the most common cases below for those who might need it. Put all of the downloaded files into a single directory (choose some tempo- rary location with enough space). Become the super user (root), cd to that directory, then run the installer script as follows: sh Xinstall.sh Answer the prompts that come up. If you are missing something that is required to run this version of XFree86, the installer may tell you to install it before trying again. If you don't have all of the mandatory files listed above, then the installer will tell you which ones are missing and ask you to download them before trying again. 3.1 Answering the questions that the installer may ask The installer asks some questions that may not have obvious answers. The information here should help you answer them. In most cases, apart from the first question, the default answers should be OK. If you run the installer from within an X session (the installer checks if $DISPLAY is set), you will be warned that doing so is not a good idea. Unless you have a good reason for knowing that this won't be a problem, you should exit your X session, including stopping xdm or equivalent if it is running, before continuing. If you ignore this warning and run into prob- lems, well, you were warned! If you have an existing X installation, you will be warned that proceeding with this installation will overwrite it. Only those things that are part of our standard distribution will be overwritten. Other X applications that you may have installed will not be removed. Some configuration files may be overwritten though, but the installer should prompt you before doing so. As the opening greeting says, it is strongly recommended that you backup any existing installation before proceeding. If you want your old applications to still be there after you've installed, don't do the "backup" by simply renaming your old /usr/X11R6 directory. It is better to make a copy of it, and then install over the top of the original one. If you run into problems and want to revert to the old installation, you can then delete the overwrit- ten one and copy the saved version back. During the first part of the installation over an existing version, the script may remove some old files or directories that would get in the way of the new installation. It will list which files/directories have been removed. If none are listed, then none were removed. The next step when installing over an existing version is to check for exist- ing configuration files. As of XFree86 version 3.9.18, the run-time configu- ration files are installed by default under /etc/X11 instead of under /usr/X11R6/lib/X11. The installer will move the existing ones for you and create the necessary symbolic links. If you don't want to have these config- uration files under /etc/X11, then you should answer "no" when asked about it. Answering "no" here also means that the new configuration files will be installed in the old /usr/X11R6/lib/X11 location. Note: for the rare systems that don't have symbolic links, this question will not be asked. The default answer is "yes" because that is best for most situations. It is our new default. It makes it easier to share the /usr/X11R6 directory between multi- ple hosts, and allows it to be mounted read-only. If you don't need these features, then you can safely answer "no" if you don't want them moved. When installing over an existing version, you will be prompted before each set of configuration files is installed. If you haven't made any customisa- tions to your existing configuration files, then you can safely answer "yes" for each of these. If you have made customisations, you can try answering "no". If you run into problems later, you may need to manually merge your customisations into the the new version of the configuration files. The con- figuration files can all be found in the Xetc.tgz tarball. See the section below about manual installation for information about extracting them sepa- rately. After the configuration files have been dealt with, the other mandatory com- ponents of the binary distribution will be installed. This should proceed without any user intervention. If you downloaded any of the optional components, the installer will ask you about each one before it is installed. The default answer is "yes". If there are any that you've since decided that you don't want to install, answer "no" when prompted. After that is done, the main part of the installation is complete. The next steps are to tidy up some aspects of the installation. The first of these is to run "ldconfig" on systems that require it, so that the newly installed shared libraries are accessible. Then the fonts.dir files in some directo- ries are updated so that the fonts can be accessed correctly. Next, the installer checks to see if your system has a termcap file or terminfo files. If it finds the former, it tells you how my may update the entries in that file. If it finds the latter, it asks you if you want it to update them for you. Finally, the installer asks you if you want a link created for the rstart utility. On most modern systems, the link isn't essential, so the default answer is "no". Answer "yes" if you know that you need it. If you find later that you need it, you can create it easily by running: rm -f /usr/bin/rstartd ln -s /usr/X11R6/bin/rstartd /usr/bin/rstartd 3.2 After the installation is complete The next step is to configure the X server. That is covered in detail in an as-yet unwritten document :-(. In the meantime, there are two ways to create a basic X server configuration file for XFree86 4.0. One is to run the xf86config utility. Another is to use the new -configure X server option: XFree86 -configure The X server config file (XF86Config) format has changed compared to 3.3.x. Also, its default location is now /etc/X11. Finally, there is now only one X server for driving video hardware, and it is called "XFree86". Once you're satisfied with the operation of the new X server, you can safely remove the old XF86_* and/or XF98_* X server binaries from /usr/X11R6/bin. After the X server configuration is done, it may be advisable to reboot, especially if you run xdm (or equivalent) or the font server (xfs). 4. Installing XFree86 4.0 manually This section describes how to manually install the XFree86 4.0 binary distri- butions. You should only use this method if you know what you're doing. The information here covers some common cases, but not every possible case. Put all of the downloaded files into a single directory (choose some tempo- rary location with enough space). Become the super user (root). All of the following commands should be run as root, and they should be run from the directory that has all of the downloaded files. The "extract" utility should be used to unpack the tarballs. This is a customised version of GNU tar that has the gzip code built-in, and which has a different usage when run under the name "extract". One important thing that extract does that most versions of tar do not do by default is that it unlinks existing files before writing new ones. This is important when installing over an existing version of X. If you choose to use some other utility to extract the tarballs, you're on your own. 4.1 A new installation The simplest case is when there is no existing X installation. The installa- tion procedure for this case is as follows: chmod +x extract mkdir /usr/X11R6 mkdir /etc/X11 ./extract -C /usr/X11R6 X[a-df-uw-z]*.tgz ./extract -C /usr/X11R6 Xvfb.tgz # If you are installing Xvfb ./extract -C /etc/X11 Xetc.tgz ./extract -C /var Xvar.tgz ln -s /etc/X11/app-defaults /usr/X11R6/lib/X11 ln -s /etc/X11/fs /usr/X11R6/lib/X11 ln -s /etc/X11/lbxproxy /usr/X11R6/lib/X11 ln -s /etc/X11/proxymngr /usr/X11R6/lib/X11 ln -s /etc/X11/rstart /usr/X11R6/lib/X11 ln -s /etc/X11/twm /usr/X11R6/lib/X11 ln -s /etc/X11/xdm /usr/X11R6/lib/X11 ln -s /etc/X11/xinit /usr/X11R6/lib/X11 ln -s /etc/X11/xsm /usr/X11R6/lib/X11 ln -s /etc/X11/xserver /usr/X11R6/lib/X11 /sbin/ldconfig /usr/X11R6/lib # For Linux /sbin/ldconfig -m /usr/X11R6/lib # For FreeBSD, NetBSD, OpenBSD /usr/X11R6/bin/mkfontdir /usr/X11R6/lib/X11/fonts/misc 4.2 Installing over an old installation If you have an existing installation of X, you should make a backup copy of it before installing the new version over the top of it. Before doing anything else, make sure the extract command is executable, and also link it to the name "gnu-tar" so that it can be used as a regular tar command: chmod +x extract rm -f gnu-tar ln extract gnu-tar The first part of the procedure is to move the old run-time config files from /usr/X11R6/lib/X11 to /etc/X11. Create /etc/X11 if it doesn't already exist. For each of the following sub-directories (app-defaults, fs, lbxproxy, prox- ymngr, rstart, twm, xdm, xinit, xsm, xserver) that you want to move, check that there is a sub-directory of this name in /usr/X11R6/lib/X11. Create a sub-directory of the same name under /etc/X11, then copy the files over by running: ./gnu-tar -C /usr/X11R6/lib/X11/subdir -c -f - . | \ ./gnu-tar -C /etc/X11/subdir -v -x -p -U -f - For each subdirectory that is moved, remove the one under /usr/X11R6/lib/X11 and create a symbolic link to the new location: rm -fr /usr/X11R6/lib/X11/subdir ln -s /etc/X11/subdir /usr/X11R6/lib/X11 For those subdirectories that didn't already exist under /usr/X11R6/lib/X11, create one under /etc/X11 and create the symbolic link to it: mkdir /etc/X11/subdir ln -s /etc/X11/subdir /usr/X11R6/lib/X11 Once that is done, extract the config files from the Xetc.tgz tarball into a temporary directory: mkdir tmpdir ./extract -C tmpdir Xetc.tgz and then copy each sub-directory over to the installed location: ./gnu-tar -C tmpdir/subdir -c -f - . | \ ./gnu-tar -C /usr/X11R6/lib/X11/subdir -v -x -p -U -f - If you have customised any config files in your old installation, you may want to omit those sub-directories, or copy selected files over by hand. Once that's done, the main part of the installation can be done: ./extract -C /usr/X11R6 X[a-df-uw-z]*.tgz ./extract -C /usr/X11R6 Xvfb.tgz # If you are installing Xvfb ./extract -C /var Xvar.tgz /sbin/ldconfig /usr/X11R6/lib # For Linux /sbin/ldconfig -m /usr/X11R6/lib # For FreeBSD, NetBSD, OpenBSD /usr/X11R6/bin/mkfontdir /usr/X11R6/lib/X11/fonts/misc Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/Install.sgml,v 1.4 2000/02/29 18:01:17 dawes Exp $