1if [ ! "$_PACKAGES_PACKAGES_SUBR" ]; then _PACKAGES_PACKAGES_SUBR=1 2# 3# Copyright (c) 2013 Devin Teske 4# All Rights Reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions 8# are met: --- 10 unchanged lines hidden (view full) --- 19# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20# DAMAGES (INLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25# SUCH DAMAGE. 26# |
27# $FreeBSD: head/usr.sbin/bsdconfig/share/packages/packages.subr 252740 2013-07-05 01:28:30Z dteske $ |
28# 29############################################################ INCLUDES 30 31BSDCFG_SHARE="/usr/share/bsdconfig" 32. $BSDCFG_SHARE/common.subr || exit 1 33f_dprintf "%s: loading includes..." "$0" 34f_include $BSDCFG_SHARE/dialog.subr 35f_include $BSDCFG_SHARE/packages/categories.subr --- 7 unchanged lines hidden (view full) --- 43 44# 45# How many packages to display (maximum) per dialog menubox. 46# 47: ${PACKAGE_MENU_PAGESIZE:=2000} 48 49############################################################ GLOBALS 50 |
51# 52# Variables used to track runtime states 53# 54PACKAGE_CATEGORIES= # List of package categories parsed from INDEX 55SELECTED_PACKAGES= # Packages selected by user in [X]dialog(1) interface |
56 57# 58# Options 59# 60[ "${SHOW_DESC+set}" ] || SHOW_DESC=1 61 62############################################################ FUNCTIONS 63 --- 91 unchanged lines hidden (view full) --- 155# f_package_detect_installed 156# 157# Detect installed packages. Currently this searches /var/db/pkg for directory 158# entries and marks each entry as an installed/selected package. 159# 160f_package_detect_installed() 161{ 162 local installed package varpkg |
163 # 164 # XXX KLUDGE ALERT! This makes evil assumptions about how XXX 165 # packages register themselves and should *really* be done with 166 # `pkg_info -e <name>' except that this is too slow for an 167 # item check routine.. :-( 168 # 169 # NOTE: When transitioning to pkgng, make a single fork to `pkg' to 170 # produce a list of all installed packages and parse _that_ 171 # |
172 installed=$( find -s /var/db/pkg -mindepth 1 -maxdepth 1 -type d | 173 sed -e 's:/var/db/pkg/::' ) 174 for package in $installed; do 175 f_str2varname $package varpkg 176 export _mark_$varpkg=X # exported for awk(1) ENVIRON[] 177 f_package_select $package 178 done 179} --- 652 unchanged lines hidden --- |