tazpanel rev 520
PROVIDE support in package list report
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Tue Aug 04 11:16:14 2015 +0200 (2015-08-04) |
parents | aaf630cf6a8b |
children | 2787498af74a |
files | index.cgi |
line diff
1.1 --- a/index.cgi Tue Aug 04 02:32:11 2015 +0300 1.2 +++ b/index.cgi Tue Aug 04 11:16:14 2015 +0200 1.3 @@ -591,13 +591,24 @@ 1.4 1.5 <h2>$(_ 'Boot scripts')</h2> 1.6 <pre>$(filter_taztools_msgs < /var/log/boot.log)</pre> 1.7 - 1.8 +EOT 1.9 + cat <<EOT 1.10 + $(ok_status_t) 1.11 + <tr><td>$(_ 'Getting package list...')</td> 1.12 +EOT 1.13 + cat >> $output <<EOT 1.14 <h2>$(_ 'Packages')</h2> 1.15 EOT 1.16 ( cd /var/lib/tazpkg/installed 1.17 for i in * ; do 1.18 - echo "$i $(. $i/receipt ; echo "$VERSION $DEPENDS" | xargs echo)" 1.19 -done ) | awk '{ pkg[$1]=$0; idx[c++]=$1 } 1.20 + echo "$i $(. $i/receipt ; echo "$VERSION $DEPENDS" | xargs echo ; 1.21 + echo "$PROVIDE" | sed 's/:[^ ]*//g' | xargs echo PROVIDE)" 1.22 +done ) | awk '{ 1.23 + if ($1 == "PROVIDE") { 1.24 + for (i = 2; i <= NF; i++) alias[$i] = 1 1.25 + } 1.26 + else { pkg[$1]=$0; idx[c++]=$1 } 1.27 +} 1.28 function name(n) 1.29 { 1.30 split(pkg[n], x, " ") 1.31 @@ -606,7 +617,7 @@ 1.32 END { 1.33 print "<pre>" 1.34 for (i in pkg) for (j = split(pkg[i], p, " "); j > 2; j--) { 1.35 - if (pkg[p[j]]) kill[p[j]]=1 1.36 + if (pkg[p[j]] || alias[p[j]]) kill[p[j]]=1 1.37 else print "Missing dep " p[j] " for " name(p[1]) 1.38 } 1.39 print "" 1.40 @@ -614,7 +625,7 @@ 1.41 for (i=0; i < c; i++) { 1.42 if (kill[idx[i]]) continue 1.43 printf "%s" name(idx[i]) 1.44 - if (n++ < 3) continue 1.45 + if (n++ < 2) continue 1.46 printf "\n" 1.47 n=0 1.48 }