pkg-stage.sh revision 276820
1258307Sgjb#!/bin/sh
2258307Sgjb#
3258307Sgjb# $FreeBSD: head/release/scripts/pkg-stage.sh 276820 2015-01-08 14:29:03Z gjb $
4258307Sgjb#
5258307Sgjb
6258307Sgjbset -e
7258307Sgjb
8266553Sgjbexport ASSUME_ALWAYS_YES="YES"
9260772Sgjbexport PKG_DBDIR="/tmp/pkg"
10260772Sgjbexport PERMISSIVE="YES"
11260772Sgjbexport REPO_AUTOUPDATE="NO"
12260772Sgjbexport PKGCMD="/usr/sbin/pkg -d"
13258307Sgjb
14260772SgjbDVD_PACKAGES="archivers/unzip
15260772Sgjbdevel/subversion
16260772Sgjbdevel/subversion-static
17260772Sgjbemulators/linux_base-f10
18260772Sgjbmisc/freebsd-doc-all
19260772Sgjbnet/mpd5
20260772Sgjbnet/rsync
21260772Sgjbports-mgmt/pkg
22260772Sgjbports-mgmt/portmaster
23260772Sgjbshells/bash
24260772Sgjbshells/zsh
25260772Sgjbsecurity/sudo
26260772Sgjbsysutils/screen
27260772Sgjbwww/firefox
28260772Sgjbwww/links
29260772Sgjbx11-drivers/xf86-video-vmware
30260772Sgjbx11/gnome2
31260772Sgjbx11/kde4
32260772Sgjbx11/xorg"
33258307Sgjb
34259246Sgjb# If NOPORTS is set for the release, do not attempt to build pkg(8).
35259246Sgjbif [ ! -f /usr/ports/Makefile ]; then
36276820Sgjb	echo "*** /usr/ports is missing!    ***"
37276820Sgjb	echo "*** Skipping pkg-stage.sh     ***"
38276820Sgjb	echo "*** Unset NOPORTS to fix this ***"
39259246Sgjb	exit 0
40259246Sgjbfi
41259246Sgjb
42258307Sgjbif [ ! -x /usr/local/sbin/pkg ]; then
43258847Sgjb	/usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean
44258307Sgjbfi
45258307Sgjb
46276765Sgjbexport DVD_DIR="dvd/packages"
47271491Sgjbexport PKG_ABI=$(pkg config ABI)
48276765Sgjbexport PKG_ALTABI=$(pkg config ALTABI 2>/dev/null)
49276765Sgjbexport PKG_REPODIR="${DVD_DIR}/${PKG_ABI}"
50260772Sgjb
51271491Sgjb/bin/mkdir -p ${PKG_REPODIR}
52276765Sgjbif [ ! -z "${PKG_ALTABI}" ]; then
53276766Sgjb	(cd ${DVD_DIR} && ln -s ${PKG_ABI} ${PKG_ALTABI})
54276765Sgjbfi
55258307Sgjb
56260772Sgjb# Print pkg(8) information to make debugging easier.
57260772Sgjb${PKGCMD} -vv
58258307Sgjb${PKGCMD} update -f
59271491Sgjb${PKGCMD} fetch -o ${PKG_REPODIR} -d ${DVD_PACKAGES}
60258307Sgjb
61271876Sgjb# Create the 'Latest/pkg.txz' symlink so 'pkg bootstrap' works
62271876Sgjb# using the on-disc packages.
63271876Sgjbmkdir -p ${PKG_REPODIR}/Latest
64271876Sgjb(cd ${PKG_REPODIR}/Latest && \
65271876Sgjb	ln -s ../All/$(${PKGCMD} rquery %n-%v pkg).txz pkg.txz)
66271876Sgjb
67271480Sgjb${PKGCMD} repo ${PKG_REPODIR}
68258307Sgjb
69258307Sgjb# Always exit '0', even if pkg(8) complains about conflicts.
70258307Sgjbexit 0
71