pkg-stage.sh revision 276822
1258307Sgjb#!/bin/sh
2258307Sgjb#
3258307Sgjb# $FreeBSD: head/release/scripts/pkg-stage.sh 276822 2015-01-08 14:39:53Z 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
43276822Sgjb	/etc/rc.d/ldconfig restart
44258847Sgjb	/usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean
45258307Sgjbfi
46258307Sgjb
47276765Sgjbexport DVD_DIR="dvd/packages"
48271491Sgjbexport PKG_ABI=$(pkg config ABI)
49276765Sgjbexport PKG_ALTABI=$(pkg config ALTABI 2>/dev/null)
50276765Sgjbexport PKG_REPODIR="${DVD_DIR}/${PKG_ABI}"
51260772Sgjb
52271491Sgjb/bin/mkdir -p ${PKG_REPODIR}
53276765Sgjbif [ ! -z "${PKG_ALTABI}" ]; then
54276766Sgjb	(cd ${DVD_DIR} && ln -s ${PKG_ABI} ${PKG_ALTABI})
55276765Sgjbfi
56258307Sgjb
57260772Sgjb# Print pkg(8) information to make debugging easier.
58260772Sgjb${PKGCMD} -vv
59258307Sgjb${PKGCMD} update -f
60271491Sgjb${PKGCMD} fetch -o ${PKG_REPODIR} -d ${DVD_PACKAGES}
61258307Sgjb
62271876Sgjb# Create the 'Latest/pkg.txz' symlink so 'pkg bootstrap' works
63271876Sgjb# using the on-disc packages.
64271876Sgjbmkdir -p ${PKG_REPODIR}/Latest
65271876Sgjb(cd ${PKG_REPODIR}/Latest && \
66271876Sgjb	ln -s ../All/$(${PKGCMD} rquery %n-%v pkg).txz pkg.txz)
67271876Sgjb
68271480Sgjb${PKGCMD} repo ${PKG_REPODIR}
69258307Sgjb
70258307Sgjb# Always exit '0', even if pkg(8) complains about conflicts.
71258307Sgjbexit 0
72