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 ---
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 ---