summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--release/Makefile7
-rwxr-xr-xrelease/generate-release.sh3
-rw-r--r--usr.sbin/bsdinstall/scripts/Makefile6
-rwxr-xr-xusr.sbin/bsdinstall/scripts/auto7
-rw-r--r--usr.sbin/bsdinstall/scripts/docsinstall69
5 files changed, 80 insertions, 12 deletions
diff --git a/release/Makefile b/release/Makefile
index f8a52d6..0e07ed3 100644
--- a/release/Makefile
+++ b/release/Makefile
@@ -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}
diff --git a/release/generate-release.sh b/release/generate-release.sh
index 080512a..cdba026 100755
--- a/release/generate-release.sh
+++ b/release/generate-release.sh
@@ -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
diff --git a/usr.sbin/bsdinstall/scripts/Makefile b/usr.sbin/bsdinstall/scripts/Makefile
index e32fda6..5e450b7 100644
--- a/usr.sbin/bsdinstall/scripts/Makefile
+++ b/usr.sbin/bsdinstall/scripts/Makefile
@@ -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
diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto
index bdc5fc4..667ced4 100755
--- a/usr.sbin/bsdinstall/scripts/auto
+++ b/usr.sbin/bsdinstall/scripts/auto
@@ -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. \
diff --git a/usr.sbin/bsdinstall/scripts/docsinstall b/usr.sbin/bsdinstall/scripts/docsinstall
new file mode 100644
index 0000000..e037dcc
--- /dev/null
+++ b/usr.sbin/bsdinstall/scripts/docsinstall
@@ -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
OpenPOWER on IntegriCloud