tazpkg diff lib/tazpkgbox/package_infos @ rev 215
tazpkgbox: add upgrade per package
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Wed Dec 03 18:06:41 2008 +0000 (2008-12-03) |
parents | 2f8faaf570c5 |
children | ae76cb388d71 |
line diff
1.1 --- a/lib/tazpkgbox/package_infos Mon Nov 24 11:41:43 2008 +0000 1.2 +++ b/lib/tazpkgbox/package_infos Wed Dec 03 18:06:41 2008 +0000 1.3 @@ -24,6 +24,7 @@ 1.4 case "$2" in 1.5 Web*) firefox $WEB_SITE &;; 1.6 Siz*) xterm -T "$3 depends (q to quit)" -e "$0 sizes $3 | less";; 1.7 + Upg*) xterm -T "$3 upgrade" -e "tazpkg get-install $3 --forced ; sleep 2";; 1.8 Hand*) firefox $HANDBOOK_URL &;; 1.9 Sug*) $0 list_packages $SUGGESTED;; 1.10 Dep*) $0 list_packages $DEPENDS;; 1.11 @@ -177,6 +178,25 @@ 1.12 BUGS="" 1.13 . /var/lib/tazpkg/installed/$PKG/receipt 1.14 MAINTAINER=$(echo "$MAINTAINER" | sed 's/[<>|]/ /g') 1.15 + upgrade_version="$(cat /var/lib/tazpkg/packages.desc \ 1.16 + /var/lib/tazpkg/undigest/*/packages.desc 2> /dev/null | \ 1.17 + awk "/^$PACKAGE / { print \$3 }" | head -1 )" 1.18 + UPGRADE="" 1.19 + if [ -n "$upgrade_version" ]; then 1.20 + if [ "$upgrade_version" != "$VERSION" ]; then 1.21 + UPGRADE="$upgrade_version" 1.22 + else 1.23 + cur_md5="$(awk "/ $PACKAGE-$VERSION/ { print \$1 }" \ 1.24 + /var/lib/tazpkg/installed.md5)" 1.25 + new_md5="$(cat /var/lib/tazpkg/packages.md5 \ 1.26 + /var/lib/tazpkg/undigest/*/packages.md5 \ 1.27 + 2> /dev/null | awk "/ $PACKAGE-$VERSION/ { print \$1 }")" 1.28 + if [ -n "$cur_md5" -a -n "$new_md5" -a \ 1.29 + "$cur_md5" != "$new_md5" ]; then 1.30 + UPGRADE="build" 1.31 + fi 1.32 + fi 1.33 + fi 1.34 PACKAGE_INFOS=" 1.35 <window title=\"Package: $PKG\" icon-name=\"package-x-generic\"> 1.36 <vbox> 1.37 @@ -187,6 +207,8 @@ 1.38 <variable>FIELD</variable> 1.39 <item icon=\"tazpkg\">Version: | $VERSION</item> 1.40 <item icon=\"tazpkg\">Category: | $CATEGORY</item>" 1.41 +[ -n "$UPGRADE" ] && PACKAGE_INFOS="$PACKAGE_INFOS 1.42 + <item icon=\"tazpkg\">Upgrade: | $(echo $UPGRADE)</item>" 1.43 [ -n "$DEPENDS" ] && PACKAGE_INFOS="$PACKAGE_INFOS 1.44 <item icon=\"tazpkg\">Depends: | $(echo $DEPENDS)</item>" 1.45 [ -n "$SUGGESTED" ] && PACKAGE_INFOS="$PACKAGE_INFOS 1.46 @@ -245,6 +267,28 @@ 1.47 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action> 1.48 </button>" 1.49 fi 1.50 +if [ -s /var/lib/tazpkg/installed/$PKG/modifiers ]; then 1.51 + PACKAGE_INFOS="$PACKAGE_INFOS 1.52 + <button> 1.53 + <label>Repack</label> 1.54 + <input file icon=\"edit-redo\"></input> 1.55 + <action>xterm -T \"Repack $PACKAGE\" $XTERM_OPTS -e \"\ 1.56 + cd /var/cache/tazpkg; \ 1.57 + tazpkg repack $PACKAGE; sleep 2\"</action> 1.58 + <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action> 1.59 + </button> 1.60 +" 1.61 +else 1.62 + PACKAGE_INFOS="$PACKAGE_INFOS 1.63 + <button> 1.64 + <label>Re-install</label> 1.65 + <input file icon=\"edit-redo\"></input> 1.66 + <action>xterm -T \"Re-install $PACKAGE\" $XTERM_OPTS -e \"\ 1.67 + tazpkg get-install $PACKAGE --forced; sleep 2\"</action> 1.68 + <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action> 1.69 + </button> 1.70 +" 1.71 +fi 1.72 PACKAGE_INFOS="$PACKAGE_INFOS 1.73 <button> 1.74 <label>Remove</label> 1.75 @@ -254,14 +298,6 @@ 1.76 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action> 1.77 </button> 1.78 <button> 1.79 - <label>Repack</label> 1.80 - <input file icon=\"edit-redo\"></input> 1.81 - <action>xterm -T \"Repack $PACKAGE\" $XTERM_OPTS -e \"\ 1.82 - cd /var/cache/tazpkg; \ 1.83 - tazpkg repack $PACKAGE; sleep 2\"</action> 1.84 - <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action> 1.85 - </button> 1.86 - <button> 1.87 <label>Files</label> 1.88 <input file icon=\"tazpkg\"></input> 1.89 <action type=\"launch\">LIST_FILES</action>