== Modular X.Org - Original upgrade instructions

See XorgUpgradeCorrected for the corrected instructions.

  AFFECTS: users of x11/xorg
  AUTHOR: kris@FreeBSD.org

  Welcome, fearless user!  You are about to embark upon a mystical
  journey to the world of xorg 7.2.
  
  This upgrade procedure is for users of portupgrade.  Users of other
  upgrade tools should contact the author for the corresponding upgrade
  method for that tool.
  
  It is recommended that you run the xorg 7.2 upgrade inside a script(1)
  session.  This way, if something goes wrong, you will have hopefully
  have saved enough information for the developers to debug the problem.
  Make sure you choose a filesystem with lots of space for the script
  output.
  
  # script xorg-upgrade
  
  You may wish to set BATCH=yes in the environment to avoid interactive
  dialogue boxes.
  
  You may want to consider using portupgrade-devel, which fixes some
  annoying bugs that cause upgrades to incorrectly be marked as failed
  when they actually completed successfully.  To switch to
  portupgrade-devel:
  
  # portupgrade -f -o ports-mgmt/portupgrade-devel portupgrade
  # rm -f /usr/ports/INDEX*.db /var/db/pkg/pkgdb.db
  # pkgdb -fu
  # portsdb -fu
  
  Unfortunately portupgrade (nor portupgrade-devel) cannot yet handle
  the rigors of the xorg upgrade without a small bit of help:
  
  # portupgrade -Rf libXft
  
  It is necessary to set the XORG_UPGRADE environment variable while
  updating from xorg 6.9 to 7.2.  Once the upgrade is complete this
  is no longer be required.
  
  For users of csh-like shells:
  # setenv XORG_UPGRADE yes
  
  For users of sh-like shells:
  # export XORG_UPGRADE=yes
  
  Now you are ready to upgrade everything:
  
  # portupgrade -a
  
  When packages are available (wait for the announcement on ports@), you
  may prefer to use precompiled packages to speed up the process:
  
  # portupgrade -aP
  
  Once the upgrade completes successfully, you can delete the
  xorg-manpages package, which is now orphaned.
  
  # pkg_delete xorg-manpages\*
  
  The final step is to merge remaining files from /usr/X11R6 into
  /usr/local (/usr/X11R6 is no longer used with xorg 7.2) and replace
  /usr/X11R6 with a symlink.
  
  A script is provided for your convenience (or you may choose to do
  this by hand): it will first attempt to back up your /usr/X11R6 into
  /usr/tmp/mergebase in case something goes wrong, then look for
  conflicts (files in /usr/X11R6 that would overwrite files in
  /usr/local).  Depending on your system configuration you may have to
  resolve some of these conflicts by hand first (if in doubt, ask for
  help on freebsd-x11@FreeBSD.org).  You may also need to edit the
  script if the default locations are not correct on your system.
  
  # sh /usr/ports/Tools/scripts/mergebase.sh
  
  When the merge operation completes successfully, the /usr/X11R6
  directory hierarchy will be removed and replaced by a symlink to
  /usr/local.  This symlink is necessary because some binary ports (and
  some remaining source ports) have hard-coded references to /usr/X11R6.
  
  Congratulations, you are done!
  
  # exit
  
  IF YOU RUN INTO PROBLEMS:
  
  # uname -a
  # ls -l /var/db/pkg
  # exit
  
  and send an email to freebsd-x11@FreeBSD.org with a full description
  of the problem.  Do not include the above typescript in your email,
  but bzip2 it and make it available to the developers (e.g. put it
  online or send it by private email upon request).

XorgUpgradeOriginal (last edited 2008-06-17 21:37:17 by localhost)