Release Notes for Debian GNU/Linux 2.1 (Slink)
              ----------------------------------------------

                    Bob Hilliard <hilliard@debian.org>

                               Adam Di Carlo

                      version 2.1.8.1, 01 March, 1999


-------------------------------------------------------------------------------


-------------------------------------------------------------------------------


1. What's New in Debian 2.1
---------------------------

     Debian 2.1, also known as ``slink'', introduces two additional
     architectures into the officially released set: DEC Alpha (``alpha''),
     and SPARC (``sparc''). The officially supported architectures from
     Debian's release, Intel x86 (``i386'') and Motorola 680x0 (``m68k'')
     are of course still supported. This brings the total number of
     supported architectures to four, which is greater than the number of
     architectures supported by any other GNU/Linux distribution.

     The sparc port of Debian is based on a pre-release of the shining new
     glibc2.1. So it's probably _the_ first distribution which is glibc2.1
     based. Programmers note: glibc2.1 is binary compatible but not source
     compatible. Almost everything compiled for glibc2 will run on glibc2.1
     but if you recompile with glibc2.1 headers sometimes you've got to fix
     a couple of constructs which aren't allowed anymore in glibc2.1.

     The number of distributed packages in our main distribution is now
     around 2250. As always, the distribution is growing around 50% per
     release; it show no sign of slackening.

     Unlike the transition from 1.3.x (``bo'') to 2.0 (``hamm''), the
     changes from 2.0 to 2.1 are incremental. New versions are included,
     fixes for bugs, etc. `apt' is not the officially blessed package
     installation tool, which is to be used in conjunction with `dpkg'.
     `apt' can be used as a package acquisition (download) method in
     `dselect', or it can be used from the command-line as `apt-get'. `apt'
     will internally model the entire state of your installed packages, and
     will do its best to ensure that all package dependencies are met at
     all times.

     Due to the increased number of packages, CD-ROM distributions must
     ship as _two_ binary package CD-ROMs. This has necessitated an upgrade
     of the installation tools, in order to deal with multiple CD-ROMs.

     The Debian installation system, which is called the `boot-floppies'
     (even though it is for more than just floppies), has been streamlined
     and upgraded for user's convenience. The documentation has been
     expanded and corrected; documentation for the new architectures has
     been added (but still may be sketchy for non-x86 architectures, help
     is still needed).

     The X Window System packages, now at 3.3.2.3a, have undergone major
     changes that you might want to be aware of. See section 3.1, `The
     Great X Reorganization' for details.


-------------------------------------------------------------------------------


2. Upgrading
------------

     If your i386 system not yet been upgraded to Debian 2.0 (hamm), you
     should first upgrade to libc6, as described in
     ftp://ftp.debian.org/debian/dists/slink/main/upgra
     de-older-i386/README-upgrade.

     Regardless of the method used for upgrading, it is recommended that
     you check the status of all packages first. This can be done by `dpkg
     -l | less' or `dpkg --get-selections > filename', or it can be done in
     `dselect'. It is desirable to remove any holds before upgrading. If
     any package that is essential for the upgrade is on hold, the upgrade
     will fail. Holds can be removed in dselect, or by editing the file
     produced by `dpkg --get-selections > filename' to change "hold" to
     "install". Then, with root permissions, do `dpkg --set-selections <
     filename'.

     Any package installation operation, must be run with superuser
     privileges, so either login as root or use `su' or `sudo' to gain
     these privileges.

     It is strongly recommended that you use `/usr/bin/script' to record a
     transcript of the upgrade session -- in fact, it is a good idea to use
     script to record any `dselect' session (and anything else you do that
     it is desirable to record). Then if any problems develop, you can see
     what happened. `script' will write this transcript to the file
     specified as an argument (`script <filename>') or to the default
     filename, `typescript'.

     There are two methods of upgrading to slink -- using `apt-get'
     directly, or using `dselect'.


2.1. Using `apt-get'
--------------------

     If you have not already installed `apt', we suggest you download and
     install it, from
     ftp://ftp.debian.org/debian/dists/slink/main/upgra
     de-2.0-i386/apt_0.1.8_i386.deb. Depending on your browser you may need
     to take special action to download directly to a file, in raw binary
     mode. For example, in Netscape you need to hold the shift key when
     clicking on the URL to retrieve the file. Install the downloaded
     package as root with the command `dpkg -i apt*.deb'.

     If you are installing from CD-ROM, you can install it directly from
     the CD-ROM. As root, run

          dpkg -i <cd_mount_point>/upgrade-2.0-i386/apt_0.1.8_i386.deb

     It is recommended that you read the apt-get(8) and the sources.list(5)
     man pages at this time. Before beginning the upgrade you must set up
     `apt''s configuration file, `/etc/apt/sources.list'. The default
     configuration is suitable for installation from the Internet.

     If you are installing from CD-ROM, add as the first line after the
     instructional comments:

          deb file:<cd_mount_point>/debian stable main

     If you do not yet have Internet access (or do not want to download any
     new security fixes) on the machine then comment out the other two
     lines. Otherwise you may select a closer mirror.

     Once you have configured `apt', run:

          apt-get update
          apt-get -f dist-upgrade

     If new versions of packages currently installed are available,
     `apt-get' upgrade retrieves and upgrades them; under no circumstances
     are currently installed packages removed, or packages not already
     installed retrieved and installed. New versions of currently installed
     packages that cannot be upgraded without changing the install status
     of another package will be left at their current version. Therefore,
     it may be necessary to use `dpkg' or `dselect' to remove and reinstall
     some broken packages or dependencies.

     The `-f' (fix) option causes `apt' to attempt to correct a system with
     broken dependencies in place. `apt' does not allow broken package
     dependencies to exist on a system. It is possible that a system's
     dependency structure can be so corrupt as to require manual
     intervention (which usually means using `dselect' or `dpkg --remove
     <package>' to eliminate some of the offending packages).

     If `apt' reports some broken packages after these two commands, try to
     repair the system (perhaps removing the broken packages or installing
     missing dependencies). If you can not repair the system to `apt''s
     satisfaction, you must use the `cd_autoup.sh' method to upgrade.


2.2. Using dselect
------------------

     This section assumes that you have some knowledge of `dselect'. After
     all, you did install the system you are trying to upgrade, didn't you?
     There is a beginner's tutorial for `dselect' at
     http://www.debian.org/releases/2.1/i386/dselect-beginner in case you
     need to refresh your memory.

     The first step in using `dselect' is to choose an ``Access'' method.

     The `apt' access method for `dselect' is the fastest one presently
     available. It installs and configures the packages in the proper
     sequence, so all dependencies are resolved when the packages are
     unpacked, making a second pass unnecessary. If any packages on your
     system are so broken that `apt-get upgrade' cannot be used, the `apt'
     access method will also fail.

     The `mounted' access method for dselect installs and configures any
     pre-depends first, which reduces the number of install passes
     necessary. The `mountable' access method also attempts to install and
     configure pre-depends first, and is relatively fast.

     The hamm version of the `http' access method does not handle
     pre-Depends properly; it is not recommended. If this version of
     dpkg-http is used to upgrade there will be a prompt "Abort automatic
     installation (Y/n)? " for every Pre-Depends. Due to a bug in hamm's
     dpkg-http the user should hit `Ctrl-C' instead of `Y' at this point
     and manually install (`dpkg -i') the requested package. `dselect'
     should then be restarted to find the next pre-Dependency. To save time
     the user may wish to manually install all of the following slink
     packages: `libc6', `libncurses4', `libreadlineg2', `libstdc++2.9',
     `slang1', and `libhtml-parser-perl'.

     It is recommended that you first upgrade your existing packages before
     adding any new ones. Run the ``Access'', ``Update'', and ``Select''
     steps of `dselect' initially. As soon as you enter ``Select'' you
     should press _Enter_ immediately. A conflict/depend resolution screen
     will probably be presented. After resolving the conflicts (usually you
     can just press _Enter_, run ``Install'', and then ``Configure'' to
     simply upgrade all installed packages. After that you may use the
     ``Select'' and ``Install'' modules to install additional packages, if
     desired.

     When `dpkg' or `dselect' upgrade many packages, it is usually
     necessary to repeat the install and configure steps several times
     before the whole system is configured. Depending on the access method
     chosen, it may be desirable to repeat the ``Update'' step between
     install passes. It may be helpful to exit `dselect' and restart it
     immediately before the ``Update'' step.


2.3. General Cautions
---------------------

     `dpkg' does not yet handle locales properly. If you use locales, you
     must set `LC_ALL=C' before upgrading, otherwise `dpkg' may break
     during the upgrade.

     You should not run the upgrade from an X terminal or a remote X
     server. `xdm' and `xfs' are stopped on upgrade, so you would end up
     with a half-upgraded machine when X suddenly shuts down. If the
     machine is configured to start X automatically on boot, it may be
     difficult to fix.

     You should not do the upgrade over a remote telnet connection, unless
     you install the `net' and `telnetd' packages from slink first. When
     the old `netstd' package is removed, the telnet connection will be
     broken, and you won't be able to reconnect until `telnetd' is
     installed.


-------------------------------------------------------------------------------


3. Details Concerning Slink
---------------------------


3.1. The Great X Reorganization
-------------------------------

     This section was prepared by Branden Robinson
     <branden@ecn.purdue.edu>.

     The Great X Reorganization happened at version 3.3.2.3a-2, which was a
     Debian 2.1 ("slink") release.

     `xbase' used to be a catch-all package, containing all kinds of
     miscellaneous data, programs, and documentation. That is no longer the
     case. Its contents have been redistributed among other packages, and
     in many cases, completely new packages have been created.

     New packages were created for a variety of reasons:

     1.   In some cases, there were undeclared dependencies on other
          programs. For instance, the `rstart' and `rstartd' programs
          depend on `rsh'.

     2.   There are several programs which are daemons and should be split
          out for easier management. This includes `xdm' and `xfs'.

     3.   Some of the X clients provided in the former `xbase' package,
          like `twm', `xmh', and `xterm', have very popular replacements,
          and may just be a waste of disk space for some people. (It's
          worth keeping in mind that all of the X source code, even the
          libraries, was originally intended to be only a "sample
          implementation" of various standards.)

     4.   It is desirable to have a common foundation for both systems
          designed to be X terminals (which run all their X clients from a
          remote machine) and for application servers which may not need to
          run X servers on their own display hardware. That is the purpose
          of the new `xfree86-common' package. It also simplifies the task
          of dealing with any large changes in the X directory name space
          that may arise in the future (e.g., X11R7, or simply putting all
          of X in `/usr').

     The new packages in the Debian XFree86 distribution are `rstart',
     `rstartd', `twm', `xbase-clients', `xdm', `xfree86-common', `xfs',
     `xmh', `xproxy', `xserver-common', `xsm', and `xterm'. Some files from
     the old `xbase' package were also placed in `xlib6g' (XKB and locale
     data) and `xlib6g-dev' (development tools).

     `xbase' is now an effectively empty package that exists only to have
     the package management system automatically "pull in" the new packages
     (and the latest versions of the X libraries). Once it has been
     upgraded, it may be safely removed.

     Furthermore, the X font and static library packages have been renamed.
     The following list summarizes these changes:

          xfntbase    ->    xfonts-base
          xfnt75      ->    xfonts-75dpi
          xfnt100     ->    xfonts-100dpi
          xfntscl     ->    xfonts-scalable
          xfntbig     ->    xfonts-cjk
          xfntcyr     ->    xfonts-cyrillic
          xfntpex     ->    xfonts-pex
          xslib       ->    xlib6-static
          xslibg      ->    xlib6g-static

     We believe the new names are less cryptic. Note, however, that the old
     packages may not necessarily be automatically upgraded to the new
     versions. This is because their names have changed, and as yet there
     is no easy way to tell the packaging system that a package has changed
     its name. However, there are no serious consequences of leaving the
     old X fonts and static libraries around. The contents of these
     packages have not changed. The X font server, for instance, formerly
     in `xbase' but now in its own package, works just as well with
     `xfntbase' as with `xfonts-base'.

     Still, it is advisable to install the renamed versions of these
     packages as soon as is convenient, in the event that their contents do
     change in the future.


3.2. Renamed Packages
---------------------

     NOTE: There is some overlap between this section and section 3.1, `The
     Great X Reorganization'.

     The following packages have been renamed as shown. In most, if not
     all, cases, Conflicts:, Depends:, and Provides: have been provided so
     the new package will be installed automatically to replace the old
     one.

          libc6-doc   -> glibc-doc
          xfntbase    -> xfonts-base
          xfnt75      -> xfonts-75dpi
          xfnt100     -> xfonts-100dpi
          xfntbig     -> xfonts-cjk
          xfntcyr     -> xfonts-cyrllic
          xfntpex     -> xfonts-pex
          xfntscl     -> xfonts-scalable
          xslib       -> xlib6-static
          xslibg      -> xlib6g-static


3.3. Split Packages
-------------------

     NOTE: There is some overlap between this section and section 3.1, `The
     Great X Reorganization'.

     Between 2.0 (hamm) and 2.1 (slink), a number of packages have been
     split into two or more packages. The reason for these splits, in
     general, is that the original package provided a diverse set of
     functionalities, and that few, if any, users used all of these
     components. Some packages display a notice warning of the split during
     the installation, some mention it in the package description, and some
     ignore it.

     If you find that a familiar package is lacking some or all of its
     functionality, check the list below to see if you need to install more
     packages to restore the original functionality. Failing that, check
     the changelog for the package, which can be found in
     `/usr/doc/<package>/changelog.Debian.gz'.

     The following is a list of packages that have been split (this list
     may not be complete):

          graphics/ivtools-bin_0.6.2-4.deb split into 2 packages:
            devel/ivtools-dev
            graphics/ivtools-bin
          
          mail/imap_4.2-1.deb split into 2 packages:
            mail/imap
            mail/ipopd
          
          misc/plan_1.6.1-7.deb split into 2 packages:
            misc/netplan
            misc/plan
          
          net/netstd_3.07-2.deb split into 10 packages:
            mail/vrfy
            net/bwnfsd
            net/netstd
            net/nfs-server
            net/rexec
            net/talk
            net/talkd
            net/telnet
            net/telnetd
            non-free/net/pcnfsd
          
          news/slrn_0.9.4.3-4.deb split into 2 packages:
            news/slrn
            news/slrnpull
          
          text/a2ps_4.10.2-4.deb split into 2 packages:
            net/mime-support
            text/a2ps
          
          utils/nosql_0.9-0.deb split into 2 packages:
            utils/nosql
            utils/nosql-fastops
          
          web/apache_1.3.0-2.deb split into 2 packages:
            web/apache
            web/apache-common
          
          web/php3_3.0-2.deb split into 2 packages:
            web/php3
            web/php3-cgi
          
          x11/wmaker_0.14.1-7.deb split into 2 packages:
            x11/asclock
            x11/wmaker
          
          x11/xbase_3.3.2.2-4.deb split into 16 packages:
            mail/xmh
            x11/rstart
            x11/rstartd
            x11/twm
            x11/xbase
            x11/xbase-clients
            x11/xdm
            x11/xext
            x11/xf86setup
            x11/xfs
            x11/xlib6g-dev
            x11/xmodmap
            x11/xproxy
           x11/xserver-common
            x11/xsm
            x11/xterm
          
          x11/xserver-vga16_3.3.2.2-4.deb split into 2 packages:
            x11/xf86setup
            x11/xserver-vga16
          
          imap_4.4-4.deb deb split into 2 packages:
            imap
            ipopd


-------------------------------------------------------------------------------


     Release Notes for Debian GNU/Linux 2.1 (Slink)

     Bob Hilliard <hilliard@debian.org>
     Adam Di Carlo

     version 2.1.8.1, 01 March, 1999