tazpkg annotate lib/tazpkgbox/package_infos @ rev 132

tazpkgbox: non-free package may have no MAINTAINER
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Jul 18 14:58:20 2008 +0000 (2008-07-18)
parents f9c8f9d187f6
children 6f2370eaac9d
rev   line source
pankso@81 1 #!/bin/sh
pankso@81 2 #
pankso@81 3 # Dialog box to provide package infos and actions
pankso@81 4 #
pankso@81 5
pankso@81 6 XTERM_OPTS="-geometry 80x16+120+120"
pankso@81 7
pankso@81 8 PKG=`cat /tmp/tazpkgbox/pkg | sed s/" "/""/g`
pankso@81 9
pascal@97 10 if [ "$1" = "list_files" ]; then
pascal@97 11 tazpkg list-files $2 | awk '
pascal@97 12 BEGIN { ls=0 } {
pascal@97 13 if (/^===/) ls=1-ls;
pascal@97 14 else if (ls) system("stat -c \"%A|%U|%G|%s|%n\" " $0);
pascal@97 15 }'
pascal@97 16 exit 0
pascal@97 17 fi
pascal@97 18
pascal@99 19 if [ "$1" = "list_files_mirror" ]; then
pascal@99 20 unlzma -c /var/lib/tazpkg/files.list.lzma | grep -- "^$2:" | \
pascal@99 21 awk '{ print substr($0,index($0,":")+2) }'
pascal@99 22 exit 0
pascal@99 23 fi
pascal@99 24
pascal@97 25 export LIST_FILES="
pascal@97 26 <window title=\"$PKG files\" icon-name=\"system-file-manager\">
pascal@97 27 <vbox>
pascal@97 28 <tree>
pascal@97 29 <width>600</width><height>160</height>
pascal@97 30 <label>Access | User | Group | Size | Name</label>
pascal@97 31 <input> $0 list_files $PKG </input>
pascal@97 32 </tree>
pascal@97 33 <hbox>
pascal@97 34 <button>
pascal@97 35 <input file icon=\"gtk-close\"></input>
pascal@97 36 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@97 37 </button>
pascal@97 38 </hbox>
pascal@97 39 </vbox>
pascal@97 40 </window>
pascal@97 41 "
pascal@97 42
pascal@99 43 export LIST_FILES_MIRROR="
pascal@99 44 <window title=\"$PKG files\" icon-name=\"system-file-manager\">
pascal@99 45 <vbox>
pascal@99 46 <tree>
pascal@99 47 <width>300</width><height>160</height>
pascal@99 48 <label>File Name</label>
pascal@99 49 <input> $0 list_files_mirror $PKG </input>
pascal@99 50 </tree>
pascal@99 51 <hbox>
pascal@99 52 <button>
pascal@99 53 <input file icon=\"gtk-close\"></input>
pascal@99 54 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@99 55 </button>
pascal@99 56 </hbox>
pascal@99 57 </vbox>
pascal@99 58 </window>
pascal@99 59 "
pascal@99 60
pankso@81 61 # Installed or not installed, that the question.
pankso@81 62 if [ -d /var/lib/tazpkg/installed/$PKG ]; then
pascal@87 63 PACKED_SIZE=""
pascal@88 64 DEPENDS=""
pankso@81 65 . /var/lib/tazpkg/installed/$PKG/receipt
pascal@87 66 PACKAGE_INFOS="
pankso@81 67 <window title=\"Package: $PKG\" icon-name=\"package-x-generic\">
pankso@81 68 <vbox>
pankso@81 69
pankso@81 70 <tree>
pankso@81 71 <width>460</width><height>160</height>
pankso@81 72 <label>Package|$PKG</label>
pascal@131 73 <variable>FIELD</variable>
pankso@81 74 <item icon=\"tazpkg\">Version: | $VERSION</item>
pascal@88 75 <item icon=\"tazpkg\">Category: | $CATEGORY</item>"
pascal@88 76 [ -n "$DEPENDS" ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@131 77 <item icon=\"tazpkg\">Depends: | $(echo $DEPENDS)</item>"
pascal@87 78 [ -n "$PACKED_SIZE" ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@87 79 <item icon=\"tazpkg\">Size: | $PACKED_SIZE ($UNPACKED_SIZE installed)</item>"
pascal@132 80 [ -n "$MAINTAINER" ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@132 81 <item icon=\"system-users\">Maintainer: | $MAINTAINER</item>"
pascal@87 82 PACKAGE_INFOS="$PACKAGE_INFOS
pankso@81 83 <item icon=\"applications-internet\">Web site: | $WEB_SITE</item>
pascal@131 84 <action>case \$FIELD in Web*) firefox $WEB_SITE &;; esac</action>
pankso@81 85 </tree>
pankso@81 86
pascal@92 87 <hbox>"
pascal@130 88 [ $CATEGORY = non-free -a ! -d /var/lib/tazpkg/installed/${PKG#get-} ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@130 89 <button>
pascal@130 90 <label>Install</label>
pascal@130 91 <input file icon=\"go-next\"></input>
pascal@130 92 <action>xterm -T \"Install ${PKG#get-}\" $XTERM_OPTS -e \"\
pascal@130 93 $PKG; sleep 5\"</action>
pascal@130 94 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@130 95 </button>"
pascal@92 96 grep -q post_install /var/lib/tazpkg/installed/$PKG/receipt && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@92 97 <button>
pascal@92 98 <label>Reconfigure</label>
pascal@92 99 <input file icon=\"reload\"></input>
pascal@92 100 <action>xterm -T \"Reconfigure $PACKAGE\" $XTERM_OPTS -e \"\
pascal@92 101 tazpkg reconfigure $PACKAGE; sleep 2\"</action>
pascal@92 102 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@92 103 </button>"
pascal@93 104 if grep -q ^$PKG$ /var/lib/tazpkg/blocked-packages.list; then
pascal@93 105 PACKAGE_INFOS="$PACKAGE_INFOS
pascal@93 106 <button>
pascal@93 107 <label>Unblock</label>
pascal@93 108 <input file icon=\"up\"></input>
pascal@93 109 <action>xterm -T \"Unblock $PACKAGE\" $XTERM_OPTS -e \"\
pascal@93 110 tazpkg unblock $PACKAGE; sleep 2\"</action>
pascal@93 111 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@93 112 </button>"
pascal@93 113 else
pascal@93 114 PACKAGE_INFOS="$PACKAGE_INFOS
pascal@93 115 <button>
pascal@93 116 <label>Block</label>
pascal@93 117 <input file icon=\"down\"></input>
pascal@93 118 <action>xterm -T \"Block $PACKAGE\" $XTERM_OPTS -e \"\
pascal@93 119 tazpkg block $PACKAGE; sleep 2\"</action>
pascal@93 120 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pascal@93 121 </button>"
pascal@93 122 fi
pascal@92 123 PACKAGE_INFOS="$PACKAGE_INFOS
pankso@81 124 <button>
pankso@81 125 <label>Remove</label>
pankso@81 126 <input file icon=\"edit-delete\"></input>
pankso@81 127 <action>xterm -T \"Remove $PACKAGE\" $XTERM_OPTS -e \"\
pankso@81 128 tazpkg remove $PACKAGE; sleep 2\"</action>
pankso@81 129 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pankso@81 130 </button>
pankso@81 131 <button>
pankso@81 132 <label>Repack</label>
pankso@81 133 <input file icon=\"edit-redo\"></input>
pankso@81 134 <action>xterm -T \"Repack $PACKAGE\" $XTERM_OPTS -e \"\
pankso@81 135 cd /var/cache/tazpkg; \
pankso@81 136 tazpkg repack $PACKAGE; sleep 2\"</action>
pankso@81 137 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pankso@81 138 </button>
pankso@81 139 <button>
pascal@97 140 <label>Files</label>
pascal@97 141 <input file icon=\"tazpkg\"></input>
pascal@97 142 <action type=\"launch\">LIST_FILES</action>
pascal@97 143 </button>
pascal@97 144 <button>
pankso@81 145 <input file icon=\"gtk-close\"></input>
pankso@81 146 <action type=\"closewindow\">INSTALLED_PACKAGE_ACTIONS</action>
pankso@81 147 </button>
pankso@81 148 </hbox>
pankso@81 149
pankso@81 150 </vbox>
pankso@81 151 </window>
pankso@81 152 "
pascal@87 153 export PACKAGE_INFOS
pankso@81 154 else
pankso@81 155 RES=`grep "^$PKG" /var/lib/tazpkg/packages.desc | head -n 1`
pankso@81 156 PACKAGE=`echo "$RES" | cut -d "|" -f 1`
pankso@81 157 VERSION=`echo "$RES" | cut -d "|" -f 2`
pankso@81 158 CATEGORY=`echo "$RES" | cut -d "|" -f 4`
pankso@81 159 WEB_SITE=`echo "$RES" | cut -d "|" -f 5`
pascal@90 160 SIZES=`grep -A 3 "^$(echo $PACKAGE)$" /var/lib/tazpkg/packages.txt | tail -1`
pascal@90 161 PACKAGE_INFOS="
pankso@81 162 <window title=\"Package: $PACKAGE\" icon-name=\"package-x-generic\">
pankso@81 163 <vbox>
pankso@81 164
pankso@81 165 <tree>
pankso@81 166 <width>460</width><height>140</height>
pankso@81 167 <label>Package|$PKG</label>
pankso@81 168 <item icon=\"tazpkg\">Name: | $PACKAGE</item>
pankso@81 169 <item icon=\"tazpkg\">Version: | $VERSION</item>
pascal@90 170 <item icon=\"tazpkg\">Category: | $CATEGORY</item>"
pascal@90 171 [ -n "$SIZES" ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@90 172 <item icon=\"tazpkg\">Size: | $SIZES</item>"
pascal@90 173 PACKAGE_INFOS="$PACKAGE_INFOS
pankso@81 174 <item icon=\"applications-internet\">Web site: | $WEB_SITE</item>
pankso@81 175 </tree>
pankso@81 176
pascal@130 177 <hbox>"
pascal@130 178 [ $CATEGORY = non-free ] && PACKAGE_INFOS="$PACKAGE_INFOS
pascal@130 179 <checkbox>
pascal@130 180 <label>Auto exec</label>
pascal@130 181 <variable>AUTO_EXEC</variable>
pascal@130 182 <default>true</default>
pascal@130 183 </checkbox>"
pascal@130 184 PACKAGE_INFOS="$PACKAGE_INFOS
pascal@130 185 <checkbox>
pascal@130 186 <label>Auto install depends</label>
pascal@130 187 <variable>AUTO_DEPENDS</variable>
pascal@130 188 <default>true</default>
pascal@130 189 </checkbox>
pankso@81 190 <button>
pankso@81 191 <label>Get-install</label>
pankso@81 192 <input file icon=\"go-next\"></input>
pankso@81 193 <action>xterm -T \"Install $PACKAGE\" $XTERM_OPTS -e \"\
pascal@130 194 if [ \$AUTO_DEPENDS != true ]; then tazpkg get-install $PACKAGE;\
pascal@130 195 else yes y | tazpkg get-install $PACKAGE; fi; \
pascal@130 196 [ \${AUTO_EXEC}$CATEGORY = truenon-free ] && $PACKAGE; \
pascal@130 197 sleep 2\"</action>
pankso@81 198 <action type=\"closewindow\">MIRRORED_PACKAGE_ACTIONS</action>
pankso@81 199 </button>
pankso@81 200 <button>
pankso@81 201 <label>Get</label>
pankso@81 202 <input file icon=\"go-next\"></input>
pankso@81 203 <action>xterm -T \"Get $PACKAGE\" $XTERM_OPTS -e \"\
pankso@81 204 cd /var/cache/tazpkg; tazpkg get $PACKAGE; sleep 2\"</action>
pankso@81 205 <action type=\"closewindow\">MIRRORED_PACKAGE_ACTIONS</action>
pankso@81 206 </button>
pankso@81 207 <button>
pascal@99 208 <label>Files</label>
pascal@99 209 <input file icon=\"tazpkg\"></input>
pascal@99 210 <action type=\"launch\">LIST_FILES_MIRROR</action>
pascal@99 211 </button>
pascal@99 212 <button>
pankso@81 213 <input file icon=\"gtk-close\"></input>
pankso@81 214 <action type=\"closewindow\">MIRRORED_PACKAGE_ACTIONS</action>
pankso@81 215 </button>
pankso@81 216 </hbox>
pankso@81 217
pankso@81 218 </vbox>
pankso@81 219 </window>
pankso@81 220 "
pascal@90 221 export PACKAGE_INFOS
pankso@81 222 fi
pankso@81 223
pankso@81 224 gtkdialog --center --program=PACKAGE_INFOS
pankso@81 225
pankso@81 226 exit 0