2001-03-21 21:16:18 +00:00
|
|
|
#!/bin/sh
|
|
|
|
#
|
|
|
|
# Author: Jordan Hubbard
|
|
|
|
# Date: Mon Jul 10 01:18:20 2000
|
|
|
|
# Version: $FreeBSD$
|
|
|
|
#
|
2003-03-03 03:28:30 +00:00
|
|
|
# MAINTAINER: re
|
2001-03-21 21:16:18 +00:00
|
|
|
#
|
|
|
|
# This script prints out the list of "minimum required packages" for
|
|
|
|
# a given CDROM number, that numer currently referring to the 4 CD
|
|
|
|
# "official set" published by BSDi. If there is no minimum package
|
|
|
|
# set for the given CDROM, or none is known, the script will exit
|
2003-01-01 18:49:04 +00:00
|
|
|
# with an error code of 1. At some point, this script should be extended
|
2001-03-21 21:16:18 +00:00
|
|
|
# to at least cope with other official CD distributions, like non-US ones.
|
|
|
|
#
|
|
|
|
# usage: print-cdrom-packages.sh cdrom-number
|
|
|
|
#
|
|
|
|
# example: ./print-cdrom-packages.sh 1
|
|
|
|
# will print the minimal package set for the first cdrom (what's generally
|
|
|
|
# referred to as the installation boot CD).
|
|
|
|
#
|
|
|
|
# This information is codified in script form so that some definitive
|
|
|
|
# reference for the package set info exists rather than having it
|
|
|
|
# be left up to everybody's best guess. It's currently hard-coded directly
|
|
|
|
# into the script but may, at some point, switch to a more sophisticated
|
|
|
|
# data-extraction technique from the ports collection. For now, add your
|
|
|
|
# packages to the appropriate CDROM_SET_<n> variable as /usr/ports/<your-entry>
|
|
|
|
# so that the package name and dependency list for each can be at least be
|
|
|
|
# obtained in an automated fashion.
|
|
|
|
|
2001-04-25 21:40:57 +00:00
|
|
|
# The following are required if you obtained your packages from one of the
|
|
|
|
# package building clusters or otherwise had these defined when the packages
|
|
|
|
# were built.
|
|
|
|
export BATCH=t
|
|
|
|
export PACKAGE_BUILDING=t
|
2003-10-03 16:48:36 +00:00
|
|
|
export PARALLEL_PACKAGE_BUILD=t
|
2001-04-25 21:40:57 +00:00
|
|
|
|
2002-11-14 23:17:00 +00:00
|
|
|
# Don't pick up installed packages from the host
|
|
|
|
export LOCALBASE=/nonexistentlocal
|
|
|
|
export X11BASE=/nonexistentx
|
|
|
|
export PKG_DBDIR=/nonexistentdb
|
|
|
|
|
2003-01-15 08:11:35 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "X" ]; then
|
|
|
|
export PKG_ARCH=`uname -m`
|
|
|
|
fi
|
2003-11-30 01:35:19 +00:00
|
|
|
export ARCH=${PKG_ARCH}
|
2003-01-15 08:11:35 +00:00
|
|
|
|
2001-04-25 21:40:57 +00:00
|
|
|
# usage: extract-names cd# [portsdir]
|
2001-03-21 21:16:18 +00:00
|
|
|
extract-names()
|
|
|
|
{
|
2001-04-25 21:40:57 +00:00
|
|
|
portsdir=${2-/usr/ports}
|
2001-03-21 21:16:18 +00:00
|
|
|
_FOO=`eval echo \\${CDROM_SET_$1}`
|
|
|
|
if [ "${_FOO}" ]; then
|
|
|
|
TMPNAME="/tmp/_extract_names$$"
|
|
|
|
rm -f ${TMPNAME}
|
|
|
|
for i in ${_FOO}; do
|
2001-04-25 21:40:57 +00:00
|
|
|
( cd $portsdir/$i && PORTSDIR=$portsdir make package-name package-depends ) >> ${TMPNAME};
|
2001-03-21 21:16:18 +00:00
|
|
|
done
|
|
|
|
if [ -s "${TMPNAME}" ]; then
|
2002-09-25 04:36:07 +00:00
|
|
|
sed -e 's/:.*$//' < ${TMPNAME} | sort -u
|
2001-03-21 21:16:18 +00:00
|
|
|
fi
|
2001-04-25 21:40:57 +00:00
|
|
|
rm -f ${TMPNAME}
|
2001-03-21 21:16:18 +00:00
|
|
|
else
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
## Start of set for CDROM #1
|
|
|
|
# This is the set required by sysinstall.
|
|
|
|
CDROM_SET_1=""
|
2003-01-15 08:11:35 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xalpha" ]; then
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} emulators/osf1_base"
|
2003-01-15 08:11:35 +00:00
|
|
|
elif [ "X${PKG_ARCH}" = "Xi386" ]; then
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} emulators/linux_base"
|
|
|
|
fi
|
2004-03-25 00:06:03 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xamd64" -o "X${PKG_ARCH}" = "Xsparc64" -o "X${PKG_ARCH}" = "Xia64" ]; then
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} devel/gdb6"
|
|
|
|
fi
|
2002-12-09 16:55:25 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} lang/perl5"
|
2003-07-12 15:35:06 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/exim"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/postfix"
|
2003-07-13 07:20:24 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} net/pcnfsd"
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-font100dpi"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-font75dpi"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-fontCyrillic"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-fontDefaultBitmaps"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-fontEncodings"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-fonts/XFree86-4-fontScalable"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-servers/XFree86-4-FontServer"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-servers/XFree86-4-NestServer"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-servers/XFree86-4-PrintServer"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-servers/XFree86-4-Server"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-servers/XFree86-4-VirtualFramebufferServer"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-wm/afterstep"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-wm/enlightenment"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-wm/fvwm2"
|
2003-09-21 19:07:23 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-wm/sawfish2"
|
2001-04-30 15:59:53 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11-wm/windowmaker"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4-clients"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4-documents"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4-libraries"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4-manuals"
|
2003-12-02 20:47:31 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/gnome2-lite"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/kde-lite"
|
2002-04-06 01:18:42 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} www/links"
|
2001-03-21 21:16:18 +00:00
|
|
|
|
|
|
|
# This is the set of "people really want these" packages. Please add to
|
|
|
|
# this list.
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} astro/xearth"
|
2002-02-18 23:04:03 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} editors/emacs21"
|
2002-05-28 08:46:21 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} editors/vim"
|
2003-12-06 04:15:13 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} editors/vim-lite"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} emulators/mtools"
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} graphics/xv"
|
2003-09-21 19:07:23 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} irc/xchat2"
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/fetchmail"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/mutt"
|
2001-04-27 20:43:57 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/pine4"
|
2002-11-11 12:32:30 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/popd"
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} mail/xfmail"
|
2003-08-19 05:48:08 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} misc/bsdiff"
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} misc/screen"
|
2001-08-23 19:54:11 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} net/cvsup"
|
2003-12-06 04:15:13 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} net/rsync"
|
2002-02-18 19:04:23 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} net/samba"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} news/slrn"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} news/tin"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/a2ps-letter"
|
2003-01-15 08:11:35 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xalpha" ]; then
|
2002-12-01 18:03:42 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/acroread4"
|
|
|
|
fi
|
2003-01-15 08:11:35 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xi386" ]; then
|
2002-12-01 18:03:42 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/acroread5"
|
|
|
|
fi
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/apsfilter"
|
2001-09-11 21:34:27 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/ghostscript-gnu-nox11"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/gv"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} print/psutils-letter"
|
2002-03-12 08:37:50 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} security/sudo"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} shells/bash2"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} shells/pdksh"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} shells/zsh"
|
2001-09-05 05:01:42 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} sysutils/portupgrade"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} www/lynx"
|
2004-01-12 04:43:41 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xi386" ]; then
|
2002-12-01 18:03:42 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} www/opera"
|
2004-01-12 04:43:41 +00:00
|
|
|
fi
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} x11/rxvt"
|
|
|
|
|
2001-04-30 15:46:07 +00:00
|
|
|
# VERY common build dependencies
|
2001-03-21 21:16:18 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} archivers/unzip"
|
2001-05-22 12:01:52 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} devel/gmake"
|
2001-03-24 23:05:44 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} graphics/png"
|
2003-01-15 08:11:35 +00:00
|
|
|
if [ "X${PKG_ARCH}" = "Xi386" ]; then
|
2001-08-23 19:54:11 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} misc/compat22"
|
2003-01-15 08:11:35 +00:00
|
|
|
fi
|
|
|
|
if [ "X${PKG_ARCH}" = "Xi386" -o "X${PKG_ARCH}" = "Xalpha" ]; then
|
2001-08-23 19:54:11 +00:00
|
|
|
CDROM_SET_1="${CDROM_SET_1} misc/compat3x"
|
|
|
|
CDROM_SET_1="${CDROM_SET_1} misc/compat4x"
|
2003-01-15 08:11:35 +00:00
|
|
|
fi
|
2001-03-21 21:16:18 +00:00
|
|
|
|
|
|
|
## End of set for CDROM #1
|
|
|
|
|
|
|
|
## Start of set for CDROM #2
|
2002-03-12 08:37:50 +00:00
|
|
|
## Live file system, CVS repositories, and commerical software demos
|
|
|
|
## typically live on this disc. Users do not expect to find packages
|
|
|
|
## here.
|
2001-03-21 21:16:18 +00:00
|
|
|
## End of set for CDROM #2
|
|
|
|
|
|
|
|
## Start of set for CDROM #3
|
2002-04-06 01:24:58 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} editors/xemacs21"
|
2002-11-22 15:46:43 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} lang/gnat"
|
2002-04-07 06:03:33 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} net/cvsup-without-gui"
|
2002-03-12 08:37:50 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} print/teTeX"
|
2004-04-19 08:37:43 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} security/portaudit"
|
2002-08-06 08:25:03 +00:00
|
|
|
CDROM_SET_3="${CDROM_SET_3} textproc/docproj-jadetex"
|
2002-03-12 08:37:50 +00:00
|
|
|
|
2001-03-21 21:16:18 +00:00
|
|
|
## End of set for CDROM #3
|
|
|
|
|
|
|
|
## Start of set for CDROM #4
|
|
|
|
## End of set for CDROM #4
|
|
|
|
|
2002-03-28 09:20:39 +00:00
|
|
|
|
|
|
|
## Start of set that should not be included on any CDROM.
|
|
|
|
## This should not contain packages that are already marked BROKEN or
|
|
|
|
## RESTRICTED, it is only for packages that sysinstall(8) has trouble
|
|
|
|
## with.
|
|
|
|
NO_CDROM_SET=""
|
|
|
|
NO_CDROM_SET="${NO_CDROM_SET} net/cvsupit"
|
|
|
|
|
2001-03-21 21:16:18 +00:00
|
|
|
# Start of actual script.
|
|
|
|
if [ $# -lt 1 ]; then
|
2001-04-25 21:40:57 +00:00
|
|
|
echo "usage: $0 cdrom-number [portsdir]"
|
2001-03-21 21:16:18 +00:00
|
|
|
exit 2
|
|
|
|
fi
|
2002-03-28 09:20:39 +00:00
|
|
|
if [ ${1} = 0 ]; then
|
|
|
|
echo $NO_CDROM_SET
|
|
|
|
else
|
|
|
|
extract-names $*
|
|
|
|
fi
|
2001-03-21 21:16:18 +00:00
|
|
|
exit 0
|