svn commit: r223897 - in head: release usr.sbin/bsdinstall/scripts

Nathan Whitehorn nwhitehorn at FreeBSD.org
Sat Jul 9 23:01:54 UTC 2011


Author: nwhitehorn
Date: Sat Jul  9 23:01:54 2011
New Revision: 223897
URL: http://svn.freebsd.org/changeset/base/223897

Log:
  Per request of the docs team, install docs as packages, instead of via
  the normal distfile mechanism. Thanks to Marc Fonvieille for the patch and
  for putting up with me taking entirely too long to commit this!
  
  Submitted by:	blackend

Added:
  head/usr.sbin/bsdinstall/scripts/docsinstall   (contents, props changed)
Modified:
  head/release/Makefile
  head/release/generate-release.sh
  head/usr.sbin/bsdinstall/scripts/Makefile
  head/usr.sbin/bsdinstall/scripts/auto

Modified: head/release/Makefile
==============================================================================
--- head/release/Makefile	Sat Jul  9 20:16:52 2011	(r223896)
+++ head/release/Makefile	Sat Jul  9 23:01:54 2011	(r223897)
@@ -68,12 +68,7 @@ base.txz:
 # Set up mergemaster root database
 	sh ${.CURDIR}/scripts/mm-mtree.sh -F \
 	    "TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET}" -D "${DISTDIR}/base"
-# Merge handbook, etc. from doc tree into src tree doc distribution
-.if !defined(NODOC)
-	cd ${DOCDIR} && ${IMAKE} all install \
-	    DOCDIR=${DISTDIR}/doc/usr/share/doc 'FORMATS=html html-split txt' \
-	    INSTALL_COMPRESSED='' URLS_ABSOLUTE=YES
-.endif
+# Package all components
 	cd ${WORLDDIR} && ${IMAKE} packageworld DISTDIR=${DISTDIR}
 	mv ${DISTDIR}/*.txz ${.OBJDIR}
 

Modified: head/release/generate-release.sh
==============================================================================
--- head/release/generate-release.sh	Sat Jul  9 20:16:52 2011	(r223896)
+++ head/release/generate-release.sh	Sat Jul  9 23:01:54 2011	(r223897)
@@ -57,9 +57,8 @@ fi
 if [ -d $2/usr/doc ]; then 
 	cp /etc/resolv.conf $2/etc/resolv.conf
 
-	# Build ports to build the docs, then build the docs
+	# Build ports to build release documentation
 	chroot $2 /bin/sh -c 'pkg_add -r docproj || (cd /usr/ports/textproc/docproj && make install clean BATCH=yes WITHOUT_X11=yes JADETEX=no WITHOUT_PYTHON=yes)'
-	chroot $2 make -C /usr/doc $MAKE_FLAGS 'FORMATS=html html-split txt' URLS_ABSOLUTE=YES
 fi
 
 chroot $2 make -C /usr/src $MAKE_FLAGS buildworld buildkernel

Modified: head/usr.sbin/bsdinstall/scripts/Makefile
==============================================================================
--- head/usr.sbin/bsdinstall/scripts/Makefile	Sat Jul  9 20:16:52 2011	(r223896)
+++ head/usr.sbin/bsdinstall/scripts/Makefile	Sat Jul  9 23:01:54 2011	(r223897)
@@ -1,8 +1,8 @@
 # $FreeBSD$
 
-SCRIPTS= auto adduser checksum config hostname jail keymap mirrorselect \
-	 mount netconfig netconfig_ipv4 netconfig_ipv6 rootpass services \
-	 time umount wlanconfig
+SCRIPTS= auto adduser checksum config docsinstall hostname jail keymap \
+	 mirrorselect mount netconfig netconfig_ipv4 netconfig_ipv6 rootpass \
+	 services time umount wlanconfig
 BINDIR= /usr/libexec/bsdinstall
 
 NO_MAN=	true

Modified: head/usr.sbin/bsdinstall/scripts/auto
==============================================================================
--- head/usr.sbin/bsdinstall/scripts/auto	Sat Jul  9 20:16:52 2011	(r223896)
+++ head/usr.sbin/bsdinstall/scripts/auto	Sat Jul  9 23:01:54 2011	(r223897)
@@ -127,7 +127,7 @@ if [ ! -z "$FETCH_DISTRIBUTIONS" ]; then
 	# Try to use any existing distfiles
 	if [ -d $BSDINSTALL_DISTDIR ]; then
 		DISTDIR_IS_UNIONFS=1
-		mount_unionfs "$BSDINSTALL_FETCHDEST" "$BSDINSTALL_DISTDIR"
+		mount_nullfs -o union "$BSDINSTALL_FETCHDEST" "$BSDINSTALL_DISTDIR"
 	fi
 
 	# Otherwise, fetch everything
@@ -166,6 +166,7 @@ finalconfig() {
 		"Network" "Networking configuration" \
 		"Services" "Set daemons to run on startup" \
 		"Time Zone" "Set system timezone" \
+		"Handbook" "Install FreeBSD Handbook (requires network)" \
 		"Shell" "Open a shell in the new system" \
 		"Exit" "Apply configuration and exit installer" 2>&1 1>&3)
 	exec 3>&-
@@ -195,6 +196,10 @@ finalconfig() {
 		bsdinstall time
 		finalconfig
 		;;
+	"Handbook")
+		bsdinstall docsinstall
+		finalconfig
+		;;
 	"Shell")
 		clear
 		echo This shell is operating in a chroot in the new system. \

Added: head/usr.sbin/bsdinstall/scripts/docsinstall
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.sbin/bsdinstall/scripts/docsinstall	Sat Jul  9 23:01:54 2011	(r223897)
@@ -0,0 +1,69 @@
+#!/bin/sh
+#-
+# Copyright (c) 2011 Marc Fonvieille
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in the
+#    documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+# $FreeBSD$
+
+
+exec 3>&1
+DOCS=$(dialog --backtitle "FreeBSD Installer" \
+    --title "FreeBSD Documentation Installation" --separate-output \
+    --checklist "This menu will allow you to install the whole documentation set
+from the FreeBSD Documentation Project: Handbook, FAQ and articles.\n\n
+Please select the language versions you wish to install.  At minimum,
+you should install the English version, this is the original version
+of the documentation.\n\n
+NB: This requires a working, configured network connection." 0 0 0 \
+	bn	"Bengali Documentation" ${DIST_DOC_BN:-off} \
+	da	"Danish Documentation" ${DIST_DOC_DA:-off} \
+	de	"German Documentation" ${DIST_DOC_DE:-off} \
+	el	"Greek Documentation" ${DIST_DOC_EL:-off} \
+	en	"English Documentation (recommended)" ${DIST_DOC_EN:-on} \
+	es	"Spanish Documentation" ${DIST_DOC_ES:-off} \
+	fr	"French Documentation" ${DIST_DOC_FR:-off} \
+	hu	"Hungarian Documentation" ${DIST_DOC_HU:-off} \
+	it	"Italian Documentation" ${DIST_DOC_IT:-off} \
+	ja	"Japanese Documentation" ${DIST_DOC_JA:-off} \
+	mn	"Mongolian Documentation" ${DIST_DOC_MN:-off} \
+	nl	"Dutch Documentation" ${DIST_DOC_NL:-off} \
+	pl	"Polish Documentation" ${DIST_DOC_PL:-off} \
+	pt	"Portuguese Documentation" ${DIST_DOC_PT:-off} \
+	ru	"Russian Documentation" ${DIST_DOC_RU:-off} \
+	sr	"Serbian Documentation" ${DIST_DOC_SR:-off} \
+	tr	"Turkish Documentation" ${DIST_DOC_TR:-off} \
+	zh_cn	"Simplified Chinese Documentation" ${DIST_DOC_ZH_CN:-off} \
+	zh_tw	"Traditional Chinese Documentation" ${DIST_DOC_ZH_TW:-off} \
+2>&1 1>&3)
+test $? -eq 0 || exit 0
+exec 3>&-
+
+clear
+echo "FreeBSD Installer"
+echo "========================"
+echo
+
+for i in $DOCS; do
+    pkg_add -C ${BSDINSTALL_CHROOT} -r ${i}-freebsd-doc
+done


More information about the svn-src-head mailing list