index.subr (250323) | index.subr (250410) |
---|---|
1if [ ! "$_PACKAGES_INDEX_SUBR" ]; then _PACKAGES_INDEX_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# | 1if [ ! "$_PACKAGES_INDEX_SUBR" ]; then _PACKAGES_INDEX_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/index.subr 250323 2013-05-07 05:40:20Z dteske $ | 27# $FreeBSD: head/usr.sbin/bsdconfig/share/packages/index.subr 250410 2013-05-09 16:09:39Z dteske $ |
28# 29############################################################ INCLUDES 30 31BSDCFG_SHARE="/usr/share/bsdconfig" 32. $BSDCFG_SHARE/common.subr || exit 1 33f_dprintf "%s: loading includes..." packages/index.subr 34f_include $BSDCFG_SHARE/device.subr 35f_include $BSDCFG_SHARE/media/common.subr --- 105 unchanged lines hidden (view full) --- 141 if ( ENVIRON["_index_page_" varcat "_1"] ) 142 cat = cat "*" 143 printf "'\''%s'\'' '\''%s packages'\'' '\''%s'\''\n", 144 cat, npkgs, desc 145 } 146 BEGIN { 147 valid_chars = ENVIRON["VALID_VARNAME_CHARS"] 148 default_desc = ENVIRON["msg_no_description_provided"] | 28# 29############################################################ INCLUDES 30 31BSDCFG_SHARE="/usr/share/bsdconfig" 32. $BSDCFG_SHARE/common.subr || exit 1 33f_dprintf "%s: loading includes..." packages/index.subr 34f_include $BSDCFG_SHARE/device.subr 35f_include $BSDCFG_SHARE/media/common.subr --- 105 unchanged lines hidden (view full) --- 141 if ( ENVIRON["_index_page_" varcat "_1"] ) 142 cat = cat "*" 143 printf "'\''%s'\'' '\''%s packages'\'' '\''%s'\''\n", 144 cat, npkgs, desc 145 } 146 BEGIN { 147 valid_chars = ENVIRON["VALID_VARNAME_CHARS"] 148 default_desc = ENVIRON["msg_no_description_provided"] |
149 npkgs = 0 | 149 tpkgs = 0 |
150 prefix = "" 151 } 152 { | 150 prefix = "" 151 } 152 { |
153 npkgs++ | 153 tpkgs++ |
154 varpkg = $1 155 gsub("[^" valid_chars "]", "_", varpkg) 156 print "_categories_" varpkg "=\"" $7 "\"" 157 split($7, pkg_categories, /[[:space:]]+/) 158 for (pkg_category in pkg_categories) 159 categories[pkg_categories[pkg_category]]++ 160 print "_rundeps_" varpkg "=\"" $9 "\"" 161 } 162 END { | 154 varpkg = $1 155 gsub("[^" valid_chars "]", "_", varpkg) 156 print "_categories_" varpkg "=\"" $7 "\"" 157 split($7, pkg_categories, /[[:space:]]+/) 158 for (pkg_category in pkg_categories) 159 categories[pkg_categories[pkg_category]]++ 160 print "_rundeps_" varpkg "=\"" $9 "\"" 161 } 162 END { |
163 print "_npkgs=" npkgs # For convenience, total package count | 163 print "_npkgs=" tpkgs # For convenience, total package count |
164 165 n = asorti(categories, categories_sorted) 166 167 # Produce package counts for each category 168 for (i = 1; i <= n; i++) 169 { 170 cat = varcat = categories_sorted[i] 171 npkgs = categories[cat] 172 gsub("[^" valid_chars "]", "_", varcat) 173 print "_npkgs_" varcat "=\"" npkgs "\"" 174 } 175 176 # Create menu list and generate list of categories at same time 177 print "CATEGORY_MENU_LIST=\"" | 164 165 n = asorti(categories, categories_sorted) 166 167 # Produce package counts for each category 168 for (i = 1; i <= n; i++) 169 { 170 cat = varcat = categories_sorted[i] 171 npkgs = categories[cat] 172 gsub("[^" valid_chars "]", "_", varcat) 173 print "_npkgs_" varcat "=\"" npkgs "\"" 174 } 175 176 # Create menu list and generate list of categories at same time 177 print "CATEGORY_MENU_LIST=\"" |
178 print_category(ENVIRON["msg_all"], npkgs, | 178 print_category(ENVIRON["msg_all"], tpkgs, |
179 ENVIRON["msg_all_desc"]) 180 category_list = "" 181 for (i = 1; i <= n; i++) 182 { 183 cat = varcat = categories_sorted[i] 184 npkgs = categories[cat] 185 cur_prefix = tolower(substr(cat, 1, 1)) 186 if ( prefix != cur_prefix ) --- 58 unchanged lines hidden --- | 179 ENVIRON["msg_all_desc"]) 180 category_list = "" 181 for (i = 1; i <= n; i++) 182 { 183 cat = varcat = categories_sorted[i] 184 npkgs = categories[cat] 185 cur_prefix = tolower(substr(cat, 1, 1)) 186 if ( prefix != cur_prefix ) --- 58 unchanged lines hidden --- |