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