Add releasetools/pkgsrc_cdimage.sh
This script uses the image generation framework to create a pkgsrc CD image, useful for MINIX installations without Internet connectivity. Change-Id: Ife037f6b6958e38986afad0632f37999ecbb2b55
This commit is contained in:
parent
0884854a38
commit
66e071a40c
52
releasetools/pkgsrc_cdimage.sh
Executable file
52
releasetools/pkgsrc_cdimage.sh
Executable file
@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
#
|
||||
# This script creates a bootable image and should at some point in the future
|
||||
# be replaced by the proper NetBSD infrastructure.
|
||||
#
|
||||
|
||||
: ${ARCH=i386}
|
||||
: ${OBJ=../obj.${ARCH}}
|
||||
: ${TOOLCHAIN_TRIPLET=i586-elf32-minix-}
|
||||
: ${BUILDSH=build.sh}
|
||||
|
||||
: ${IMG=minix_pkgsrc.iso}
|
||||
: ${SETS=}
|
||||
: ${CREATE_IMAGE_ONLY=1}
|
||||
|
||||
if [ ! -f ${BUILDSH} ]
|
||||
then
|
||||
echo "Please invoke me from the root source dir, where ${BUILDSH} is."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# set up disk creation environment
|
||||
. releasetools/image.defaults
|
||||
. releasetools/image.functions
|
||||
|
||||
echo "Building work directory..."
|
||||
build_workdir "$SETS"
|
||||
|
||||
echo "Bundling packages..."
|
||||
bundle_packages "$BUNDLE_PACKAGES"
|
||||
|
||||
echo "Creating specification files..."
|
||||
cat > ${WORK_DIR}/extra.base <<EOF
|
||||
. type=dir uid=0 gid=0 mode=0755
|
||||
./usr type=dir uid=0 gid=0 mode=0755
|
||||
EOF
|
||||
create_input_spec
|
||||
create_protos
|
||||
|
||||
# Clean image
|
||||
if [ -f ${IMG} ] # IMG might be a block device
|
||||
then
|
||||
rm -f ${IMG}
|
||||
fi
|
||||
|
||||
echo "Writing ISO..."
|
||||
${CROSS_TOOLS}/nbmakefs -t cd9660 -F ${WORK_DIR}/input -o "rockridge,label=MINIX_PKGSRC" ${IMG} ${ROOT_DIR}
|
||||
|
||||
echo ""
|
||||
echo "ISO image at `pwd`/${IMG}"
|
Loading…
x
Reference in New Issue
Block a user