svn commit: r258307 - in head/release: amd64 i386 scripts

Glen Barber gjb at FreeBSD.org
Mon Nov 18 15:22:56 UTC 2013


Author: gjb
Date: Mon Nov 18 15:22:55 2013
New Revision: 258307
URL: http://svnweb.freebsd.org/changeset/base/258307

Log:
  Add a script and configuration files to fetch pre-built packages
  from pkg.FreeBSD.org for inclusion on release medium (dvd1.iso).
  
  The script sources ${.CURDIR}/${TARGET}/pkg-stage.conf, which sets
  several environment variables, such as the pkg(8) ABI, PACKAGESITE,
  PKG_DBDIR, and PKG_CACHEDIR.  PKG_CACHEDIR is set to the directory
  on the release medium used by bsdconfig(8) (/packages/${ABI}).  ABI
  is determined by output of 'make -C /usr/src/release -V REVISION'.
  See pkg.conf(5) for descripton on other variables set here.
  
  The list of packages to include are set within the configuration
  file.
  
  The script and configuration files are intended to be run by the
  'make dvd' target within the release directory, and assume the
  release is built within a chroot environment (such as by using
  release.sh).
  
  Relevant updates to release/Makefile will follow.
  
  Sponsored by:	The FreeBSD Foundation

Added:
  head/release/amd64/pkg-stage.conf   (contents, props changed)
  head/release/i386/pkg-stage.conf   (contents, props changed)
  head/release/scripts/pkg-stage.sh   (contents, props changed)

Added: head/release/amd64/pkg-stage.conf
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/release/amd64/pkg-stage.conf	Mon Nov 18 15:22:55 2013	(r258307)
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+export PKG_ABI="freebsd:$(echo ${REVISION} | tr -d '.0'):x86:64"
+export ASSUME_ALWAYS_YES=1
+export __PKG_CONF="/etc/pkg/FreeBSD.conf"
+export PACKAGESITE="http://pkg.FreeBSD.org/${PKG_ABI}/latest"
+export MIRROR_TYPE="SRV"
+export REPO_AUTOUPDATE="NO"
+export PKG_DBDIR="/tmp/pkg"
+export PKG_CACHEDIR="release/packages/${PKG_ABI}"
+export PERMISSIVE="YES"
+export PKGCMD="/usr/sbin/pkg -d -C ${__PKG_CONF}"
+
+DVD_PACKAGES="archivers/unzip
+devel/subversion
+devel/subversion-static
+emulators/linux_base-f10
+misc/freebsd-doc-all
+net/mpd5
+net/rsync
+ports-mgmt/pkg
+ports-mgmt/portaudit
+ports-mgmt/portmaster
+shells/bash
+shells/zsh
+security/sudo
+sysutils/screen
+www/firefox
+www/links
+x11-drivers/xf86-video-vmware
+x11/gnome2
+x11/kde4
+x11/xorg"

Added: head/release/i386/pkg-stage.conf
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/release/i386/pkg-stage.conf	Mon Nov 18 15:22:55 2013	(r258307)
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+export PKG_ABI="freebsd:$(echo ${REVISION} | tr -d '.0'):x86:32"
+export ASSUME_ALWAYS_YES=1
+export __PKG_CONF="/etc/pkg/FreeBSD.conf"
+export PACKAGESITE="http://pkg.FreeBSD.org/${PKG_ABI}/latest"
+export MIRROR_TYPE="SRV"
+export REPO_AUTOUPDATE="NO"
+export PKG_DBDIR="/tmp/pkg"
+export PKG_CACHEDIR="release/packages/${PKG_ABI}"
+export PERMISSIVE="YES"
+export PKGCMD="/usr/sbin/pkg -d -C ${__PKG_CONF}"
+
+DVD_PACKAGES="archivers/unzip
+devel/subversion
+devel/subversion-static
+emulators/linux_base-f10
+misc/freebsd-doc-all
+net/mpd5
+net/rsync
+ports-mgmt/pkg
+ports-mgmt/portaudit
+ports-mgmt/portmaster
+shells/bash
+shells/zsh
+security/sudo
+sysutils/screen
+www/firefox
+www/links
+x11-drivers/xf86-video-vmware
+x11/gnome2
+x11/kde4
+x11/xorg"

Added: head/release/scripts/pkg-stage.sh
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/release/scripts/pkg-stage.sh	Mon Nov 18 15:22:55 2013	(r258307)
@@ -0,0 +1,39 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+set -e
+
+usage() {
+	echo "$(basename ${0}) /path/to/pkg-stage.conf revision"
+	exit 1
+}
+
+if [ ! -e "${1}" ]; then
+	echo "Configuration file not specified."
+	echo
+	usage
+fi
+
+if [ "$#" -lt 2 ]; then
+	usage
+fi
+
+# Source config file for this architecture.
+REVISION="${2}"
+. "${1}" || exit 1
+
+if [ ! -x /usr/local/sbin/pkg ]; then
+	/usr/sbin/pkg bootstrap	
+fi
+
+/bin/mkdir -p ${PKG_CACHEDIR}
+
+${PKGCMD} update -f
+${PKGCMD} fetch -d ${DVD_PACKAGES}
+
+${PKGCMD} repo ${PKG_CACHEDIR}
+
+# Always exit '0', even if pkg(8) complains about conflicts.
+exit 0


More information about the svn-src-all mailing list