tazpkg rev 694
Code reformatting: use '_' and '_n' gettext functions, split solid "text" into "chapters" and "paragraphs", tiny misc.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Mon Dec 01 01:06:57 2014 +0200 (2014-12-01) |
parents | 0dedae7db044 |
children | 52d1418d89d7 |
files | Makefile tazpkg |
line diff
1.1 --- a/Makefile Fri Nov 21 14:41:44 2014 +0100 1.2 +++ b/Makefile Mon Dec 01 01:06:57 2014 +0200 1.3 @@ -18,7 +18,7 @@ 1.4 pot: 1.5 xgettext -o po/tazpkg.pot -L Shell \ 1.6 --package-name=TazPkg \ 1.7 - --package-version="$(VERSION)" -kaction -ktitle \ 1.8 + --package-version="$(VERSION)" -kaction -ktitle -k_ -k_n \ 1.9 ./tazpkg ./tazpkg-box ./pkgs ./pkgs.cgi ./tazpkg-notify 1.10 1.11 msgmerge:
2.1 --- a/tazpkg Fri Nov 21 14:41:44 2014 +0100 2.2 +++ b/tazpkg Mon Dec 01 01:06:57 2014 +0200 2.3 @@ -28,44 +28,61 @@ 2.4 2.5 # Internationalization. 2.6 #. /usr/bin/gettext.sh 2.7 -TEXTDOMAIN='tazpkg' 2.8 -export TEXTDOMAIN 2.9 +export TEXTDOMAIN='tazpkg' 2.10 + 2.11 2.12 # 2.13 # Functions set for translate categories 2.14 # 2.15 2.16 + 2.17 # No operations, only for xgettext collect 2.18 + 2.19 gettext_noop() { 2.20 - gettext "base-system"; gettext "x-window"; gettext "utilities"; 2.21 - gettext "network"; gettext "graphics"; gettext "multimedia"; 2.22 - gettext "office"; gettext "development"; gettext "system-tools"; 2.23 - gettext "security"; gettext "games"; gettext "misc"; gettext "meta"; 2.24 - gettext "non-free" 2.25 + _ 'base-system'; _ 'x-window'; _ 'utilities'; _ 'network'; _ 'graphics'; 2.26 + _ 'multimedia'; _ 'office'; _ 'development'; _ 'system-tools'; _ 'security'; 2.27 + _ 'games'; _ 'misc'; _ 'meta'; _ "non-free" 2.28 } 2.29 + 2.30 + 2.31 # Make array of pre-translated categories 2.32 + 2.33 cat_i18n="" 2.34 for c in "base-system" "x-window" "utilities" "network" "graphics" "multimedia" "office" "development" "system-tools" "security" "games" "misc" "meta" "non-free"; do 2.35 cat_i18n="$cat_i18n 2.36 $(gettext "$c") $c" 2.37 done 2.38 + 2.39 + 2.40 # If category is not one of those translated in native language, keep it 2.41 # untranslated. This allows both native and english language support. 2.42 # This also supports custom categories. 2.43 # And now we support spaces in translated categories 2.44 + 2.45 reverse_translate_category() 2.46 { 2.47 echo "$cat_i18n" | awk "BEGIN{FS=\" \"}{if (/^$@ /) a=\$2}END{if (a==\"\") a=\"$@\"; print a}" 2.48 } 2.49 2.50 + 2.51 + 2.52 # 2.53 # TazPKG output functions 2.54 # 2.55 + 2.56 + 2.57 # Print localized title 2.58 + 2.59 title() { newline; boldify "$(eval_gettext "$1")"; separator; } 2.60 + 2.61 + 2.62 # Print footer 2.63 -footer() { separator; echo "$1"; newline; } 2.64 + 2.65 +footer() { separator; echo "$1"; [ -n "$1" ] && newline; } 2.66 + 2.67 + 2.68 # Print current action in brown color (separate from any other msgs) 2.69 + 2.70 action() { 2.71 case $output in 2.72 raw|gtk|html) eval_gettext "$@" ;; 2.73 @@ -73,22 +90,22 @@ 2.74 esac 2.75 } 2.76 2.77 + 2.78 # Initialize some variables to use words rather than numbers for functions 2.79 # and actions. 2.80 COMMAND=$1 2.81 PACKAGE=${2%/} 2.82 PACKAGE_DIR="$(cd $(dirname $PACKAGE 2>/dev/null) 2>/dev/null; pwd)" 2.83 -[ -n "$PACKAGE" ] && 2.84 -PACKAGE_FILE="$PACKAGE_DIR/${PACKAGE##*/}" 2.85 +[ -n "$PACKAGE" ] && PACKAGE_FILE="$PACKAGE_DIR/${PACKAGE##*/}" 2.86 if [ -f "$PACKAGE" ]; then 2.87 # Set pkg basename for install, extract 2.88 - PACKAGE=$(basename ${PACKAGE%.tazpkg} 2>/dev/null) 2.89 + PACKAGE=$(basename $PACKAGE .tazpkg 2>/dev/null) 2.90 else 2.91 # Pkg name for remove, search and all other cmds 2.92 PACKAGE=${PACKAGE%.tazpkg} 2.93 fi 2.94 TARGET_DIR=$3 2.95 -TOP_DIR=`pwd` 2.96 +TOP_DIR=$(pwd) 2.97 TMP_DIR=/tmp/$RANDOM 2.98 INSTALL_LIST="" 2.99 SAVE_CACHE_DIR="$CACHE_DIR" 2.100 @@ -102,85 +119,92 @@ 2.101 # Need by check_depends 2.102 TMPLOCALSTATE= 2.103 2.104 + 2.105 + 2.106 #################### 2.107 # Script functions # 2.108 #################### 2.109 2.110 + 2.111 # Print the usage. 2.112 + 2.113 usage () { 2.114 cat << EOT 2.115 2.116 -$(eval_gettext 'SliTaz package manager - Version:') $(colorize 34 $VERSION) 2.117 - 2.118 -$(boldify "$(gettext 'Usage:')") 2.119 - $(gettext 'tazpkg [command] [package|dir|pattern|list|cat|--opt] [dir|--opt]') 2.120 - 2.121 -$(boldify "$(gettext 'SHell:')") tazpkg shell 2.122 - 2.123 -$(boldify "$(gettext 'Commands:')") 2.124 - usage $(gettext 'Print this short usage') 2.125 - bugs $(gettext 'Show known bugs in packages') 2.126 - activity|-a $(gettext 'Show TazPKG activity log') 2.127 - list|-l $(gettext 'List installed packages on the system by category or all') 2.128 - list-mirror|-lm $(gettext 'List all available packages on the mirror (--diff for new)') 2.129 - info $(gettext 'Print information about a package') 2.130 - desc $(gettext 'Print description of a package (if it exists)') 2.131 - list-files|-lf $(gettext 'List the files installed with a package') 2.132 - list-config $(gettext 'List the configuration files') 2.133 - search|-s $(gettext 'Search for a package by pattern or name (options: -i|-l|-m)') 2.134 - search-pkgname $(gettext 'Search on mirror for package having a particular file') 2.135 - search-file|-sf $(gettext 'Search for file(s) in all installed packages files') 2.136 - install|-i $(gettext 'Install a local (*.tazpkg) package (--forced to force)') 2.137 - install-list $(gettext 'Install all packages from a list of packages.') 2.138 - remove|-r $(gettext 'Remove the specified package and all installed files') 2.139 - extract|-e $(gettext 'Extract a (*.tazpkg) package into a directory') 2.140 - pack $(gettext 'Pack an unpacked or prepared package tree') 2.141 - recharge $(gettext 'Recharge your packages.list from the mirror') 2.142 - up|help-up $(eval_gettext 'Check packages $CHECKSUM to list and install latest upgrades') 2.143 - repack $(gettext 'Create a package archive from an installed package') 2.144 - repack-config $(gettext 'Create a package archive with configuration files') 2.145 - recompress $(gettext 'Rebuild a package with a better compression ratio') 2.146 - block|unblock $(gettext 'Block an installed package version or unblock it for upgrade') 2.147 - get $(gettext 'Download a package into the current directory') 2.148 - get-install|-gi $(gettext 'Download and install a package from the mirror') 2.149 - get-install-list $(gettext 'Download and install a list of packages from the mirror') 2.150 - check $(gettext 'Verify consistency of installed packages') 2.151 - add-flavor $(gettext 'Install the flavor list of packages') 2.152 - install-flavor $(gettext 'Install the flavor list of packages and remove other ones') 2.153 - set-release $(gettext 'Change release and update packages') 2.154 - clean-cache|-cc $(gettext 'Clean all packages downloaded in cache directory') 2.155 - depends $(gettext 'Display dependencies tree') 2.156 - rdepends $(gettext 'Display reverse dependencies tree') 2.157 - convert $(gettext 'Convert deb/rpm/tgz/pet/sfs/sb/arch/ipk package to tazpkg)') 2.158 - link $(gettext 'Link a package from another slitaz installation') 2.159 - setup-mirror|-sm $(gettext 'Change the mirror url configuration') 2.160 - list-undigest $(gettext 'List undigest mirrors') 2.161 - remove-undigest $(gettext 'Remove an undigest mirror') 2.162 - add-undigest $(gettext 'Add an undigest mirror') 2.163 - setup-undigest $(gettext 'Update an undigest mirror') 2.164 - reconfigure $(gettext 'Replay post install script from package') 2.165 +$(_ 'SliTaz package manager - Version:') $(colorize 34 $VERSION) 2.166 + 2.167 +$(boldify "$(_ 'Usage:')") 2.168 + $(_ 'tazpkg [command] [package|dir|pattern|list|cat|--opt] [dir|--opt]') 2.169 + 2.170 +$(boldify "$(_ 'SHell:')") tazpkg shell 2.171 + 2.172 +$(boldify "$(_ 'Commands:')") 2.173 + usage $(_ 'Print this short usage') 2.174 + bugs $(_ 'Show known bugs in packages') 2.175 + activity|-a $(_ 'Show TazPKG activity log') 2.176 + list|-l $(_ 'List installed packages on the system by category or all') 2.177 + list-mirror|-lm $(_ 'List all available packages on the mirror (--diff for new)') 2.178 + info $(_ 'Print information about a package') 2.179 + desc $(_ 'Print description of a package (if it exists)') 2.180 + list-files|-lf $(_ 'List the files installed with a package') 2.181 + list-config $(_ 'List the configuration files') 2.182 + search|-s $(_ 'Search for a package by pattern or name (options: -i|-l|-m)') 2.183 + search-pkgname $(_ 'Search on mirror for package having a particular file') 2.184 + search-file|-sf $(_ 'Search for file(s) in all installed packages files') 2.185 + install|-i $(_ 'Install a local (*.tazpkg) package (--forced to force)') 2.186 + install-list $(_ 'Install all packages from a list of packages.') 2.187 + remove|-r $(_ 'Remove the specified package and all installed files') 2.188 + extract|-e $(_ 'Extract a (*.tazpkg) package into a directory') 2.189 + pack $(_ 'Pack an unpacked or prepared package tree') 2.190 + recharge $(_ 'Recharge your packages.list from the mirror') 2.191 + up|help-up $(_ 'Check packages $CHECKSUM to list and install latest upgrades') 2.192 + repack $(_ 'Create a package archive from an installed package') 2.193 + repack-config $(_ 'Create a package archive with configuration files') 2.194 + recompress $(_ 'Rebuild a package with a better compression ratio') 2.195 + block|unblock $(_ 'Block an installed package version or unblock it for upgrade') 2.196 + get $(_ 'Download a package into the current directory') 2.197 + get-install|-gi $(_ 'Download and install a package from the mirror') 2.198 + get-install-list $(_ 'Download and install a list of packages from the mirror') 2.199 + check $(_ 'Verify consistency of installed packages') 2.200 + add-flavor $(_ 'Install the flavor list of packages') 2.201 + install-flavor $(_ 'Install the flavor list of packages and remove other ones') 2.202 + set-release $(_ 'Change release and update packages') 2.203 + clean-cache|-cc $(_ 'Clean all packages downloaded in cache directory') 2.204 + depends $(_ 'Display dependencies tree') 2.205 + rdepends $(_ 'Display reverse dependencies tree') 2.206 + convert $(_ 'Convert deb/rpm/tgz/pet/sfs/sb/arch/ipk package to tazpkg)') 2.207 + link $(_ 'Link a package from another slitaz installation') 2.208 + setup-mirror|-sm $(_ 'Change the mirror url configuration') 2.209 + list-undigest $(_ 'List undigest mirrors') 2.210 + remove-undigest $(_ 'Remove an undigest mirror') 2.211 + add-undigest $(_ 'Add an undigest mirror') 2.212 + setup-undigest $(_ 'Update an undigest mirror') 2.213 + reconfigure $(_ 'Replay post install script from package') 2.214 2.215 EOT 2.216 } 2.217 2.218 + 2.219 usage_up() { 2.220 cat << EOT 2.221 -$(emsg "<b>$(gettext 'Usage for command up:')</b>") tazpkg up [$(gettext 'option')] 2.222 - 2.223 - * $(gettext 'Without options run in interactive mode and ask before install') 2.224 - 2.225 -$(boldify "$(gettext 'Where options are:')") 2.226 - --check |-c $(gettext 'Check only for available upgrades') 2.227 - --recharge |-r $(gettext 'Force recharge of packages list and check') 2.228 - --install |-i $(gettext 'Check for upgrades and install them all') 2.229 - 2.230 -$(boldify "$(gettext 'Example:')") 2.231 +$(emsg "<b>$(_ 'Usage for command up:')</b>") tazpkg up [$(_ 'option')] 2.232 + 2.233 + * $(_ 'Without options run in interactive mode and ask before install') 2.234 + 2.235 +$(boldify "$(_ 'Where options are:')") 2.236 + --check |-c $(_ 'Check only for available upgrades') 2.237 + --recharge |-r $(_ 'Force recharge of packages list and check') 2.238 + --install |-i $(_ 'Check for upgrades and install them all') 2.239 + 2.240 +$(boldify "$(_ 'Example:')") 2.241 tazpkg up --recharge --install 2.242 tazpkg up -c -r 2.243 EOT 2.244 } 2.245 2.246 + 2.247 # Check if dir exists 2.248 + 2.249 check_dir() 2.250 { 2.251 if ! [ -d "$1" ]; then 2.252 @@ -192,8 +216,10 @@ 2.253 fi 2.254 } 2.255 2.256 + 2.257 # Check if the directories and files used by TazPKG 2.258 # exist. If not and user is root we create them. 2.259 + 2.260 check_base_dir() 2.261 { 2.262 if [ "$(id -u)" = "0" ]; then 2.263 @@ -208,63 +234,73 @@ 2.264 } 2.265 check_base_dir 2.266 2.267 + 2.268 # Check for a package name on cmdline. 2.269 + 2.270 check_for_package_on_cmdline() 2.271 { 2.272 if [ -z "$PACKAGE" ]; then 2.273 newline 2.274 - gettext "Please specify a package name on the command line."; echo 2.275 + _ 'Please specify a package name on the command line.' 2.276 newline 2.277 exit 0 2.278 fi 2.279 } 2.280 2.281 + 2.282 # Check if the package (*.tazpkg) exists before installing or extracting. 2.283 + 2.284 check_for_package_file() 2.285 { 2.286 if [ ! -f "$PACKAGE_FILE" ]; then 2.287 newline 2.288 - eval_gettext "Unable to find: \$PACKAGE_FILE"; echo 2.289 + _ 'Unable to find: $PACKAGE_FILE' 2.290 newline 2.291 exit 0 2.292 fi 2.293 } 2.294 2.295 + 2.296 # Check for the receipt of an installed package. 2.297 + 2.298 check_for_receipt() 2.299 { 2.300 receipt_path="$1$INSTALLED/$PACKAGE/receipt" 2.301 if [ ! -f $receipt_path ]; then 2.302 newline 2.303 - eval_gettext 'Unable to find the receipt: $receipt_path'; echo 2.304 + _ 'Unable to find the receipt: $receipt_path' 2.305 newline 2.306 exit 0 2.307 fi 2.308 } 2.309 2.310 + 2.311 # Get repositories priority using $LOCALSTATE/priority. 2.312 # In this files, undigest are called by their name and main mirror 2.313 # by main. Sort order: priority 2.314 + 2.315 look_for_priority() 2.316 { 2.317 -[ -s $LOCALSTATE/priority ] && priority=$(cat $LOCALSTATE/priority) 2.318 -for rep in main $(ls $LOCALSTATE/undigest 2>/dev/null); do 2.319 - if [ ! -s $LOCALSTATE/priority ] || \ 2.320 - ! grep -q ^$rep$ $LOCALSTATE/priority; then 2.321 - priority=$(echo -e "$priority\n$rep") 2.322 - fi 2.323 -done 2.324 -priority=$(echo "$priority" | sed '/^$/d' | \ 2.325 - while read line; do 2.326 - if [ "$line" = main ]; then 2.327 - echo $LOCALSTATE 2.328 - else 2.329 - echo $LOCALSTATE/undigest/$line 2.330 - fi 2.331 -done) 2.332 + [ -s $LOCALSTATE/priority ] && priority=$(cat $LOCALSTATE/priority) 2.333 + for rep in main $(ls $LOCALSTATE/undigest 2>/dev/null); do 2.334 + if [ ! -s $LOCALSTATE/priority ] || \ 2.335 + ! grep -q ^$rep$ $LOCALSTATE/priority; then 2.336 + priority=$(echo -e "$priority\n$rep") 2.337 + fi 2.338 + done 2.339 + priority=$(echo "$priority" | sed '/^$/d' | \ 2.340 + while read line; do 2.341 + if [ "$line" = main ]; then 2.342 + echo $LOCALSTATE 2.343 + else 2.344 + echo $LOCALSTATE/undigest/$line 2.345 + fi 2.346 + done) 2.347 } 2.348 2.349 + 2.350 # Get package name in a directory 2.351 + 2.352 package_fullname_in_dir() 2.353 { 2.354 [ -f $1/receipt ] || return 2.355 @@ -273,7 +309,9 @@ 2.356 echo $PACKAGE-$VERSION$EXTRAVERSION 2.357 } 2.358 2.359 + 2.360 # Get package name that is already installed. 2.361 + 2.362 get_installed_package_pathname() 2.363 { 2.364 for i in $2$INSTALLED/${1%%-*}*; do 2.365 @@ -285,13 +323,16 @@ 2.366 done 2.367 } 2.368 2.369 + 2.370 # Check if a package is already installed. 2.371 + 2.372 check_for_installed_package() 2.373 { 2.374 if [ -n "$(get_installed_package_pathname $PACKAGE $1)" ]; then 2.375 newline 2.376 + # FIXME 2.377 cat << EOT 2.378 -$(colorize 34 $PACKAGE) $(gettext "package is already installed. 2.379 +$(colorize 34 $PACKAGE) $(_ "package is already installed. 2.380 You can use the --forced option to force installation.") 2.381 EOT 2.382 newline 2.383 @@ -299,7 +340,9 @@ 2.384 fi 2.385 } 2.386 2.387 + 2.388 # Check for packages.list to download and install packages. 2.389 + 2.390 check_for_packages_list() 2.391 { 2.392 list_path="$LOCALSTATE/packages.list" 2.393 @@ -308,16 +351,17 @@ 2.394 tazpkg recharge 2.395 else 2.396 newline 2.397 - eval_gettext 'Unable to find the list: $list_path'; echo 2.398 - gettext \ 2.399 + _ 'Unable to find the list: $list_path' 2.400 + _ \ 2.401 "You must probably run 'tazpkg recharge' as root to get the latest list of 2.402 -packages available on the mirror."; echo 2.403 +packages available on the mirror." 2.404 newline 2.405 exit 0 2.406 fi 2.407 fi 2.408 } 2.409 2.410 + 2.411 get_cache_dir() 2.412 { 2.413 echo $rep > $tmp/rep 2.414 @@ -333,7 +377,9 @@ 2.415 echo $CACHE_DIR > $tmp/cachedir 2.416 } 2.417 2.418 + 2.419 # get an already installed package from packages.equiv 2.420 + 2.421 equivalent_pkg() 2.422 { 2.423 for i in $(grep -hs "^$1=" $LOCALSTATE/packages.equiv \ 2.424 @@ -359,7 +405,9 @@ 2.425 echo $1 2.426 } 2.427 2.428 + 2.429 # get a virtual package from packages.equiv 2.430 + 2.431 virtual_pkg() 2.432 { 2.433 for i in $(for rep in $priority; do 2.434 @@ -381,23 +429,21 @@ 2.435 done 2.436 } 2.437 2.438 + 2.439 # Get package filename available on the mirror 2.440 + 2.441 get_package_filename() 2.442 { 2.443 local pkg 2.444 for rep in $priority; do 2.445 - pkg=$(grep -A 1 -sh "^$1$" $rep/packages.txt | tail -1 | \ 2.446 - sed 's/^ *//') 2.447 - [ "$pkg" ] && pkg=$(grep -sh "^$1-$pkg" \ 2.448 - $rep/packages.list | head -1) 2.449 + pkg=$(grep -A 1 -sh "^$1$" $rep/packages.txt | tail -1 | sed 's/^ *//') 2.450 + [ "$pkg" ] && pkg=$(grep -sh "^$1-$pkg" $rep/packages.list | head -1) 2.451 2.452 # Allow user to call a package with his version number. 2.453 [ "$pkg" ] || pkg=$(grep -sh "^$1$" $rep/packages.list | head -1) 2.454 2.455 - [ "$pkg" ] || pkg=$(grep -sh "^$1-[0-9]" \ 2.456 - $rep/packages.list | head -1) 2.457 - [ "$pkg" ] || pkg=$(grep -sh "^$1-.[\.0-9]" \ 2.458 - $rep/packages.list | head -1) 2.459 + [ "$pkg" ] || pkg=$(grep -sh "^$1-[0-9]" $rep/packages.list | head -1) 2.460 + [ "$pkg" ] || pkg=$(grep -sh "^$1-.[\.0-9]" $rep/packages.list | head -1) 2.461 [ "$pkg" ] && get_cache_dir && break 2.462 done 2.463 if [ -z "$pkg" ]; then 2.464 @@ -413,8 +459,10 @@ 2.465 echo $pkg 2.466 } 2.467 2.468 + 2.469 # Check for a package in packages.list. Used by get and get-install to grep 2.470 # package basename. 2.471 + 2.472 check_for_package_in_list() 2.473 { 2.474 local filename 2.475 @@ -428,27 +476,33 @@ 2.476 rm -f $tmp/rep $tmp/cachedir 2.477 else 2.478 newline 2.479 - eval_gettext "Unable to find: \$PACKAGE in the mirrored packages list."; echo 2.480 + _ 'Unable to find: $PACKAGE in the mirrored packages list.' 2.481 newline 2.482 [ -n "$check_only" ] && return 1 2.483 exit 0 2.484 fi 2.485 } 2.486 2.487 + 2.488 # Log this activity 2.489 # (there log_pkg because we have log() in libtaz.sh) 2.490 + 2.491 log_pkg() 2.492 { 2.493 local extra 2.494 + 2.495 [ "$1" = "Installed" ] && \ 2.496 extra=" - $(fgrep $PACKAGE-$VERSION $LOCALSTATE/installed.$SUM | awk '{ print $1 }')" 2.497 + 2.498 [ -e $LOG ] || touch $LOG 2.499 - DATE=`date +'%F %T'` 2.500 + 2.501 [ -w $LOG ] && 2.502 - echo "$DATE - $1 - $PACKAGE ($VERSION$EXTRAVERSION)$extra" >> $LOG 2.503 + echo "$(date +'%F %T') - $1 - $PACKAGE ($VERSION$EXTRAVERSION)$extra" >> $LOG 2.504 } 2.505 2.506 + 2.507 # Download a get-package script from this mirror 2.508 + 2.509 download_get_script() 2.510 { 2.511 local p 2.512 @@ -456,16 +510,17 @@ 2.513 local i 2.514 for i in $(cat $p/mirror) ; do 2.515 case "$i" in 2.516 - http://*|ftp://*) 2.517 - wget -O $2 ${i%packages/*}packages/get/$1 && 2.518 - return 0 ;; 2.519 + http://*|ftp://*) 2.520 + wget -O $2 ${i%packages/*}packages/get/$1 && return 0 ;; 2.521 esac 2.522 done 2.523 done 2.524 return 1 2.525 } 2.526 2.527 + 2.528 # Download a file from this mirror 2.529 + 2.530 download_from() 2.531 { 2.532 local i 2.533 @@ -475,13 +530,17 @@ 2.534 for i in $mirrors; do 2.535 case "$i" in 2.536 # Mirror URL can have a trailing slash or not. 2.537 - http://*|ftp://*) busybox wget -c ${i%/}/$@ && break ;; 2.538 - *) ln -sf $i/$1 . && break ;; 2.539 + http://*|ftp://*) 2.540 + busybox wget -c ${i%/}/$@ && break ;; 2.541 + *) 2.542 + ln -sf $i/$1 . && break ;; 2.543 esac 2.544 done 2.545 } 2.546 2.547 + 2.548 # Download a file trying all mirrors 2.549 + 2.550 download() 2.551 { 2.552 local i 2.553 @@ -492,16 +551,17 @@ 2.554 download_from "$(cat $i/mirror)" "$@" && return 2.555 done 2.556 esac 2.557 - for i in $(cat `for rep in $priority; do echo $rep/mirror; done` \ 2.558 - 2> /dev/null); do 2.559 + for i in $(cat $(for rep in $priority; do echo $rep/mirror; done) 2>/dev/null); do 2.560 download_from "$i" "$@" && break 2.561 done 2.562 } 2.563 2.564 + 2.565 # Extract a package with cpio and gzip/lzma. 2.566 + 2.567 extract_package() 2.568 { 2.569 - action "Extracting \$PACKAGE..." 2.570 + action 'Extracting $PACKAGE...' 2.571 cpio -idm --quiet < ${PACKAGE_FILE##*/} && rm -f ${PACKAGE_FILE##*/} 2.572 status 2.573 if [ -f fs.cpio.lzma ]; then 2.574 @@ -511,6 +571,7 @@ 2.575 fi 2.576 } 2.577 2.578 + 2.579 remove_with_path() 2.580 { 2.581 # Avoid dirname errors by checking for argument. 2.582 @@ -525,18 +586,21 @@ 2.583 done 2.584 } 2.585 2.586 + 2.587 grepesc() 2.588 { 2.589 sed 's/\[/\\[/g' 2.590 } 2.591 2.592 + 2.593 # This function installs a package in the rootfs. 2.594 + 2.595 install_package() 2.596 { 2.597 ROOT=$1 2.598 if [ -n "$ROOT" ]; then 2.599 - # Get absolute path 2.600 - ROOT=$(cd $ROOT; pwd) 2.601 + # Get absolute path 2.602 + ROOT=$(realpath $ROOT) 2.603 fi 2.604 { 2.605 # Create package path early to avoid dependencies loop 2.606 @@ -546,10 +610,12 @@ 2.607 if grep -q ^pre_depends $TMP_DIR/receipt; then 2.608 pre_depends $ROOT 2.609 fi 2.610 + 2.611 # Keep modifiers and file list on upgrade 2.612 cp $ROOT$INSTALLED/$PACKAGE/modifiers \ 2.613 $ROOT$INSTALLED/$PACKAGE/files.list $TMP_DIR 2> /dev/null 2.614 rm -rf $ROOT$INSTALLED/$PACKAGE 2> /dev/null 2.615 + 2.616 # Make the installed package data dir to store 2.617 # the receipt and the files list. 2.618 mkdir -p $ROOT$INSTALLED/$PACKAGE 2.619 @@ -561,35 +627,42 @@ 2.620 cd $(dirname $PACKAGE_FILE) 2.621 $CHECKSUM $(basename $PACKAGE_FILE) >> $ROOT$LOCALSTATE/installed.$SUM 2.622 } 2.623 + 2.624 # Resolve package deps. 2.625 check_for_deps $ROOT 2.626 - if [ ! "$MISSING_PACKAGE" = "" ]; then 2.627 + if [ -n "$MISSING_PACKAGE" ]; then 2.628 install_deps $ROOT 2.629 fi 2.630 mkdir -p $TMP_DIR 2.631 [ -n "$INSTALL_LIST" ] && echo "$PACKAGE_FILE" >> $ROOT$LOCALSTATE/$INSTALL_LIST-processed 2.632 + 2.633 title 'Installation of: $PACKAGE' 2.634 - action "Copying \$PACKAGE..." 2.635 + 2.636 + action 'Copying $PACKAGE...' 2.637 cp $PACKAGE_FILE $TMP_DIR 2.638 status 2.639 + 2.640 cd $TMP_DIR 2.641 extract_package 2.642 SELF_INSTALL=0 2.643 EXTRAVERSION="" 2.644 CONFIG_FILES="" 2.645 + 2.646 # Include temporary receipt to get the right variables. 2.647 . $PWD/receipt 2.648 cd $ROOT$INSTALLED 2.649 + 2.650 if [ $SELF_INSTALL -ne 0 -a -n "$ROOT" ]; then 2.651 action "Checking post install dependencies..." 2.652 [ -f $INSTALLED/$PACKAGE/receipt ] 2.653 if ! status; then 2.654 command="tazpkg install $PACKAGE_FILE" 2.655 - eval_gettext "Please run '\$command' in / and retry."; echo 2.656 + _ "Please run '\$command' in / and retry." 2.657 rm -rf $TMP_DIR 2.658 exit 1 2.659 fi 2.660 fi 2.661 + 2.662 # Get files to remove if upgrading 2.663 if [ -f $PACKAGE/files.list ]; then 2.664 while read file; do 2.665 @@ -601,19 +674,23 @@ 2.666 echo $file 2.667 done < $PACKAGE/files.list > $TMP_DIR/files2remove.list 2.668 fi 2.669 + 2.670 # Remember modified packages 2.671 - { check=false 2.672 - for i in $(fgrep -v [ $TMP_DIR/files.list); do 2.673 - [ -e "$ROOT$i" ] || continue 2.674 - [ -d "$ROOT$i" ] && continue 2.675 - echo "- $i" 2.676 - check=true 2.677 - done ; 2.678 - $check && for i in *; do 2.679 - [ "$i" == "$PACKAGE" ] && continue 2.680 - [ -s $i/files.list ] || continue 2.681 - awk "{ printf \"$i %s\\n\",\$1 }" < $i/files.list 2.682 - done; } | awk ' 2.683 + { 2.684 + check=false 2.685 + for i in $(fgrep -v [ $TMP_DIR/files.list); do 2.686 + [ -e "$ROOT$i" ] || continue 2.687 + [ -d "$ROOT$i" ] && continue 2.688 + echo "- $i" 2.689 + check=true 2.690 + done ; 2.691 + $check && \ 2.692 + for i in *; do 2.693 + [ "$i" == "$PACKAGE" ] && continue 2.694 + [ -s $i/files.list ] || continue 2.695 + awk "{ printf \"$i %s\\n\",\$1 }" < $i/files.list 2.696 + done; 2.697 + } | awk ' 2.698 { 2.699 if ($1 == "-" || file[$2] != "") { 2.700 file[$2] = file[$2] " " $1 2.701 @@ -645,25 +722,29 @@ 2.702 2.703 cd $TMP_DIR 2.704 cp receipt files.list $ROOT$INSTALLED/$PACKAGE 2.705 + 2.706 # Copy the description if found. 2.707 if [ -f "description.txt" ]; then 2.708 cp description.txt $ROOT$INSTALLED/$PACKAGE 2.709 fi 2.710 + 2.711 # Copy the md5sum if found. 2.712 if [ -f "$CHECKSUM" ]; then 2.713 cp $CHECKSUM $ROOT$INSTALLED/$PACKAGE 2.714 fi 2.715 + 2.716 # Pre install commands. 2.717 if grep -q ^pre_install $ROOT$INSTALLED/$PACKAGE/receipt; then 2.718 pre_install $ROOT 2.719 fi 2.720 if [ -n "$CONFIG_FILES" ]; then 2.721 # save 'official' configuration files 2.722 - action "Saving configuration files for \$PACKAGE..." 2.723 + action 'Saving configuration files for $PACKAGE...' 2.724 for i in $CONFIG_FILES; do 2.725 { cd fs ; find ${i#/} -type f 2> /dev/null; cd ..; } 2.726 done | { cd fs ; cpio -o -H newc --quiet | gzip -9; cd ..; } > \ 2.727 $ROOT$INSTALLED/$PACKAGE/volatile.cpio.gz 2.728 + 2.729 # keep user configuration files 2.730 for i in $CONFIG_FILES; do 2.731 { cd fs ; find ${i#/} -type f 2> /dev/null; cd ..; } 2.732 @@ -673,53 +754,66 @@ 2.733 done 2.734 status 2.735 fi 2.736 - action "Installing \$PACKAGE..." 2.737 + 2.738 + action 'Installing $PACKAGE...' 2.739 [ "$(busybox ls fs/* 2> /dev/null)" ] && cp -a fs/* $ROOT/ 2.740 status 2.741 + 2.742 if [ -s files2remove.list ]; then 2.743 - action "Removing old \$PACKAGE..." 2.744 + action 'Removing old $PACKAGE...' 2.745 while read file; do 2.746 remove_with_path $ROOT$file 2.747 done < files2remove.list 2.748 true 2.749 status 2.750 fi 2.751 + 2.752 # Remove the temporary random directory. 2.753 action "Removing all tmp files..." 2.754 - cd .. && rm -rf $TMP_DIR 2.755 + cd ..; rm -rf $TMP_DIR 2.756 status 2.757 + 2.758 # Post install commands. 2.759 if grep -q ^post_install $ROOT$INSTALLED/$PACKAGE/receipt; then 2.760 post_install $ROOT 2.761 fi 2.762 - # Update-desktop-database if needed. 2.763 + 2.764 + # Update-desktop-database if needed. 2.765 if [ "$(fgrep .desktop $ROOT$INSTALLED/$PACKAGE/files.list | fgrep /usr/share/applications/)" ]; then 2.766 updatedesktopdb=yes 2.767 fi 2.768 + 2.769 # Update-mime-database if needed. 2.770 if [ "$(fgrep /usr/share/mime $ROOT$INSTALLED/$PACKAGE/files.list)" ]; then 2.771 updatemimedb=yes 2.772 fi 2.773 + 2.774 # Update-icon-database 2.775 if [ "$(fgrep /usr/share/icon/hicolor $ROOT$INSTALLED/$PACKAGE/files.list)" ]; then 2.776 updateicondb=yes 2.777 fi 2.778 + 2.779 # Compile glib schemas if needed. 2.780 if [ "$(fgrep /usr/share/glib-2.0/schemas $ROOT$INSTALLED/$PACKAGE/files.list)" ]; then 2.781 compile_schemas=yes 2.782 fi 2.783 + 2.784 # Update depmod list 2.785 if [ "$(fgrep /lib/modules $ROOT$INSTALLED/$PACKAGE/files.list)" ]; then 2.786 updatedepmod=yes 2.787 fi 2.788 + 2.789 cd $TOP_DIR 2.790 pkg_name="$PACKAGE ($VERSION$EXTRAVERSION)" 2.791 - footer "$(eval_gettext '$pkg_name is installed.')" 2.792 + footer "$(_ '$pkg_name is installed.')" 2.793 + 2.794 # Log this activity 2.795 [ -n "$ROOT" ] || log_pkg Installed 2.796 } 2.797 2.798 + 2.799 # This function may be called by a get script. 2.800 + 2.801 abort_package() 2.802 { 2.803 cd $CUR_DIR 2.804 @@ -728,7 +822,9 @@ 2.805 exit 1 2.806 } 2.807 2.808 + 2.809 # This function installs a package from a get script in the rootfs. 2.810 + 2.811 install_package_from_get_script() 2.812 { 2.813 SCRIPT="$1" 2.814 @@ -767,7 +863,7 @@ 2.815 DEPENDS="$(unset DEPENDS; . $PACKAGE-$VERSION/receipt ; echo $DEPENDS)" 2.816 for i in $(find_depends $PACKAGE-$VERSION/fs); do 2.817 case " $DEPENDS " in 2.818 - *\ $i\ *) continue;; 2.819 + *\ $i\ *) continue;; 2.820 esac 2.821 grep -q '^DEPENDS="' $PACKAGE-$VERSION/receipt || 2.822 echo 'DEPENDS=""' >> $PACKAGE-$VERSION/receipt 2.823 @@ -788,7 +884,9 @@ 2.824 rm -rf $TMP_DIR 2.825 } 2.826 2.827 + 2.828 # Check for loop in deps tree. 2.829 + 2.830 check_for_deps_loop() 2.831 { 2.832 local list 2.833 @@ -798,6 +896,7 @@ 2.834 shift 2.835 [ -n "$1" ] || return 2.836 list="" 2.837 + 2.838 # Filter out already processed deps 2.839 for i in $@; do 2.840 case " $ALL_DEPS" in 2.841 @@ -816,7 +915,9 @@ 2.842 done 2.843 } 2.844 2.845 + 2.846 # Check for missing deps listed in a receipt packages. 2.847 + 2.848 check_for_deps() 2.849 { 2.850 local saved; 2.851 @@ -828,37 +929,37 @@ 2.852 rm -rf $TMP_DIR 2.853 2.854 num=0 2.855 - for pkgorg in $DEPENDS 2.856 - do 2.857 + for pkgorg in $DEPENDS; do 2.858 i=$(equivalent_pkg $pkgorg $1) 2.859 if [ ! -d "$1$INSTALLED/$i" ]; then 2.860 MISSING_PACKAGE=$i 2.861 num=$(($num+1)) 2.862 elif [ ! -f "$1$INSTALLED/$i/receipt" ]; then 2.863 - eval_gettext "WARNING Dependency loop between \$PACKAGE and \$i."; echo 2.864 + _ 'WARNING Dependency loop between $PACKAGE and $i.' 2.865 fi 2.866 done 2.867 2.868 if [ ! "$MISSING_PACKAGE" = "" ]; then 2.869 - title "$(eval_gettext 'Tracking dependencies for: $PACKAGE')" 2.870 - for pkgorg in $DEPENDS 2.871 - do 2.872 + title "$(_ 'Tracking dependencies for: $PACKAGE')" 2.873 + for pkgorg in $DEPENDS; do 2.874 i=$(equivalent_pkg $pkgorg $1) 2.875 if [ ! -d "$1$INSTALLED/$i" ]; then 2.876 MISSING_PACKAGE=$i 2.877 - eval_gettext "Missing: \$MISSING_PACKAGE"; echo 2.878 + _ 'Missing: $MISSING_PACKAGE' 2.879 fi 2.880 done 2.881 separator 2.882 eval_ngettext \ 2.883 - "\$num missing package to install." \ 2.884 - "\$num missing packages to install." $num; echo 2.885 + '$num missing package to install.' \ 2.886 + '$num missing packages to install.' $num; echo 2.887 fi 2.888 } 2.889 2.890 + 2.891 # Install all missing deps. Auto install or ask user then install all missing 2.892 # deps from local dir, cdrom, media or from the mirror. In case we want to 2.893 # install packages from local, we need a packages.list to find the version. 2.894 + 2.895 install_deps() 2.896 { 2.897 local root 2.898 @@ -868,13 +969,12 @@ 2.899 answer=0 2.900 else 2.901 newline 2.902 - gettext "Install all missing dependencies" && confirm 2.903 + _n 'Install all missing dependencies'; confirm 2.904 answer=$? 2.905 newline 2.906 fi 2.907 if [ $answer = 0 ]; then 2.908 - for pkgorg in $DEPENDS 2.909 - do 2.910 + for pkgorg in $DEPENDS; do 2.911 pkg=$(equivalent_pkg $pkgorg $1) 2.912 if [ ! -d "$1$INSTALLED/$pkg" ]; then 2.913 local list 2.914 @@ -884,7 +984,7 @@ 2.915 # the TAZPKG_BASENAME in the local packages.list. 2.916 found=0 2.917 if [ -f "$list" ]; then 2.918 - eval_gettext "Checking if \$pkg exists in local list..."; echo 2.919 + _ 'Checking if $pkg exists in local list...' 2.920 mkdir $TMP_DIR 2.921 for i in $pkg-*.tazpkg; do 2.922 [ -f $i ] || continue 2.923 @@ -910,31 +1010,33 @@ 2.924 done 2.925 else 2.926 newline 2.927 - eval_gettext \ 2.928 + _ \ 2.929 "Leaving dependencies for \$PACKAGE unresolved. 2.930 -The package is installed but will probably not work."; echo 2.931 +The package is installed but will probably not work." 2.932 newline 2.933 fi 2.934 } 2.935 2.936 + 2.937 # Search pattern in installed packages. 2.938 + 2.939 search_in_installed_packages() 2.940 { 2.941 - gettext "Installed packages"; echo 2.942 + _ 'Installed packages' 2.943 separator 2.944 list=`ls -1 $INSTALLED | grep -i "$PATTERN"` 2.945 num=0 2.946 - for pkg in $list 2.947 - do 2.948 + for pkg in $list; do 2.949 EXTRAVERSION="" 2.950 [ -f $INSTALLED/$pkg/receipt ] || continue 2.951 . $INSTALLED/$pkg/receipt 2.952 - emsg "$PACKAGE<i 24> $VERSION$EXTRAVERSION<i 42> $(gettext $CATEGORY)" 2.953 + emsg "$PACKAGE<i 24> $VERSION$EXTRAVERSION<i 42> $(_n $CATEGORY)" 2.954 num=$(($num+1)) 2.955 done 2.956 + 2.957 # Set correct ending messages. 2.958 if [ x$num == x ]; then 2.959 - eval_gettext "No installed packages found for: \$PATTERN"; echo 2.960 + _ 'No installed packages found for: $PATTERN' 2.961 newline 2.962 else 2.963 footer "$(eval_ngettext \ 2.964 @@ -943,25 +1045,28 @@ 2.965 fi 2.966 } 2.967 2.968 + 2.969 # Search in packages.list for available pkgs. 2.970 + 2.971 search_in_packages_list() 2.972 { 2.973 - gettext "Available packages name-version"; echo 2.974 + _ 'Available packages name-version' 2.975 separator 2.976 num=0 2.977 + BPATTERN="$(emsg "<b>$PATTERN</b>")" 2.978 for i in $LOCALSTATE/packages.list $LOCALSTATE/undigest/*/packages.list; do 2.979 - grep -is "$PATTERN" $i 2.980 + grep -is "$PATTERN" $i | sed "s|$PATTERN|$BPATTERN|" 2.981 num=$(($num + `grep -is "$PATTERN" $i | wc -l`)) 2.982 done 2.983 if [ ! -f "$LOCALSTATE/packages.list" ]; then 2.984 newline 2.985 - gettext \ 2.986 + _ \ 2.987 "No 'packages.list' found to check for mirrored packages. For more results, 2.988 -please run 'tazpkg recharge' once as root before searching."; echo 2.989 +please run 'tazpkg recharge' once as root before searching." 2.990 newline 2.991 fi 2.992 if [ "$num" = "0" ]; then 2.993 - eval_gettext "No available packages found for: \$PATTERN"; echo 2.994 + _ 'No available packages found for: $PATTERN' 2.995 newline 2.996 else 2.997 footer "$(eval_ngettext \ 2.998 @@ -970,11 +1075,13 @@ 2.999 fi 2.1000 } 2.1001 2.1002 + 2.1003 # search --mirror: Search in packages.txt for available pkgs and give more 2.1004 # info than --list or default. 2.1005 + 2.1006 search_in_packages_txt() 2.1007 { 2.1008 - gettext "Matching packages name with version and desc"; echo 2.1009 + _ 'Matching packages name with version and desc' 2.1010 separator 2.1011 num=0 2.1012 for i in $LOCALSTATE/packages.txt $LOCALSTATE/undigest/*/packages.txt; do 2.1013 @@ -983,13 +1090,13 @@ 2.1014 done 2.1015 if [ ! -f "$LOCALSTATE/packages.txt" ]; then 2.1016 newline 2.1017 - gettext \ 2.1018 + _ \ 2.1019 "No 'packages.txt' found to check for mirrored packages. For more results, 2.1020 -please run 'tazpkg recharge' once as root before searching."; echo 2.1021 +please run 'tazpkg recharge' once as root before searching." 2.1022 newline 2.1023 fi 2.1024 if [ "$num" = "0" ]; then 2.1025 - eval_gettext "No available packages found for: \$PATTERN"; echo 2.1026 + _ 'No available packages found for: $PATTERN' 2.1027 newline 2.1028 else 2.1029 footer "$(eval_ngettext \ 2.1030 @@ -998,7 +1105,9 @@ 2.1031 fi 2.1032 } 2.1033 2.1034 + 2.1035 # Install package-list from a flavor 2.1036 + 2.1037 install_flavor() 2.1038 { 2.1039 check_root $@ 2.1040 @@ -1013,6 +1122,7 @@ 2.1041 cd $TMP_DIR 2.1042 if [ -f $FLAVOR.flavor ] || download $FLAVOR.flavor; then 2.1043 zcat < $FLAVOR.flavor | cpio --quiet -i >/dev/null 2.1044 + 2.1045 while read file; do 2.1046 for pkg in $(ls -d $INSTALLED/${file%%-*}*); do 2.1047 [ -f $pkg/receipt ] || continue 2.1048 @@ -1024,13 +1134,15 @@ 2.1049 cd $CACHE_DIR 2.1050 download $file.tazpkg 2.1051 cd $TMP_DIR 2.1052 - tazpkg install $CACHE_DIR/$file.tazpkg --forced 2.1053 + tazpkg install $CACHE_DIR/$file.tazpkg --forced 2.1054 done < $FLAVOR.pkglist 2.1055 + 2.1056 [ -f $FLAVOR.nonfree ] && while read pkg; do 2.1057 [ -d $INSTALLED/$pkg ] || continue 2.1058 [ -d $INSTALLED/get-$pkg ] && tazpkg get-install get-$pkg 2.1059 get-$pkg 2.1060 done < $FLAVOR.nonfree 2.1061 + 2.1062 [ "$ARG" == "--purge" ] && for pkg in $(ls $INSTALLED); do 2.1063 [ -f $INSTALLED/$pkg/receipt ] || continue 2.1064 EXTRAVERSION="" 2.1065 @@ -1040,13 +1152,15 @@ 2.1066 tazpkg remove $PACKAGE 2.1067 done 2.1068 else 2.1069 - eval_gettext "Can't find flavor \$FLAVOR. Abort."; echo 2.1070 + _ "Can't find flavor \$FLAVOR. Abort." 2.1071 fi 2.1072 cd $TOP_DIR 2.1073 rm -rf $TMP_DIR 2.1074 } 2.1075 2.1076 + 2.1077 # Update mirror urls 2.1078 + 2.1079 setup_mirror() 2.1080 { 2.1081 # Backup old list. 2.1082 @@ -1055,11 +1169,11 @@ 2.1083 fi 2.1084 title 'Current mirror(s)' 2.1085 echo " `cat $1/mirror 2> /dev/null`" 2.1086 - gettext \ 2.1087 + _ \ 2.1088 "Please enter URL of the new mirror (http, ftp or local path). You must specify 2.1089 -the complete address to the directory of the packages and packages.list file."; echo 2.1090 +the complete address to the directory of the packages and packages.list file." 2.1091 newline 2.1092 - gettext "New mirror(s) URL: " 2.1093 + _n 'New mirror(s) URL: ' 2.1094 NEW_MIRROR_URL=$2 2.1095 if [ -n "$NEW_MIRROR_URL" ]; then 2.1096 echo $NEW_MIRROR_URL 2.1097 @@ -1067,9 +1181,9 @@ 2.1098 read NEW_MIRROR_URL 2.1099 fi 2.1100 if [ "$NEW_MIRROR_URL" = "" ]; then 2.1101 - gettext "Nothing has been changed."; echo 2.1102 + _ 'Nothing has been changed.' 2.1103 else 2.1104 - eval_gettext "Setting mirror(s) to: \$NEW_MIRROR_URL"; echo 2.1105 + _ 'Setting mirror(s) to: $NEW_MIRROR_URL' 2.1106 rm -f $1/mirror 2.1107 for i in $NEW_MIRROR_URL; do 2.1108 echo "${i%/}/" >> $1/mirror 2.1109 @@ -1078,33 +1192,37 @@ 2.1110 newline 2.1111 } 2.1112 2.1113 + 2.1114 # recursive dependencies scan 2.1115 + 2.1116 dep_scan() 2.1117 { 2.1118 -for i in $1; do 2.1119 - case " $ALL_DEPS " in 2.1120 - *\ $i\ *) continue;; 2.1121 - esac 2.1122 - ALL_DEPS="$ALL_DEPS $i" 2.1123 - [ -n "$2" ] && echo "$2$i ($(fgrep -A 3 $i $LOCALSTATE/packages.txt \ 2.1124 - | tail -1 | sed 's/.*(\([^ ]*\).*/\1/'))" 2.1125 - [ -f $i/receipt ] || continue 2.1126 - DEPENDS="" 2.1127 - . $i/receipt 2.1128 - [ -n "$DEPENDS" ] && dep_scan "$DEPENDS" "$2 " 2.1129 -done 2.1130 + for i in $1; do 2.1131 + case " $ALL_DEPS " in 2.1132 + *\ $i\ *) continue;; 2.1133 + esac 2.1134 + ALL_DEPS="$ALL_DEPS $i" 2.1135 + [ -n "$2" ] && echo "$2$i ($(fgrep -A 3 $i $LOCALSTATE/packages.txt | \ 2.1136 + tail -1 | sed 's/.*(\([^ ]*\).*/\1/'))" 2.1137 + [ -f $i/receipt ] || continue 2.1138 + DEPENDS="" 2.1139 + . $i/receipt 2.1140 + [ -n "$DEPENDS" ] && dep_scan "$DEPENDS" "$2 " 2.1141 + done 2.1142 } 2.1143 2.1144 + 2.1145 # recursive reverse dependencies scan 2.1146 + 2.1147 rdep_scan() 2.1148 { 2.1149 -SEARCH=$1 2.1150 - 2.1151 -for i in * ; do 2.1152 - DEPENDS="" 2.1153 - . $i/receipt 2.1154 - echo "$i $(echo $DEPENDS)" 2.1155 -done | busybox awk -v search=$SEARCH ' 2.1156 + SEARCH=$1 2.1157 + 2.1158 + for i in * ; do 2.1159 + DEPENDS="" 2.1160 + . $i/receipt 2.1161 + echo "$i $(echo $DEPENDS)" 2.1162 + done | busybox awk -v search=$SEARCH ' 2.1163 function show_deps(deps, all_deps, pkg, space) 2.1164 { 2.1165 if (all_deps[pkg] == 1) return 2.1166 @@ -1125,27 +1243,33 @@ 2.1167 show_deps(deps, all_deps, search, "") 2.1168 } 2.1169 ' | while read spc pkg; do 2.1170 - echo -n $spc | sed 's/=/ /g' 2.1171 - echo -n $pkg 2.1172 - echo -n ' (' 2.1173 - fgrep -A 3 $pkg $LOCALSTATE/packages.txt | tail -1 | \ 2.1174 - sed 's/.*(\([^ ]*\).*/\1)/' 2.1175 -done 2.1176 + echo -n $spc | sed 's/=/ /g' 2.1177 + echo -n $pkg 2.1178 + echo -n ' (' 2.1179 + fgrep -A 3 $pkg $LOCALSTATE/packages.txt | tail -1 | \ 2.1180 + sed 's/.*(\([^ ]*\).*/\1)/' 2.1181 + done 2.1182 } 2.1183 2.1184 + 2.1185 # Check for ELF file 2.1186 + 2.1187 is_elf() 2.1188 { 2.1189 [ "$(dd if=$1 bs=1 skip=1 count=3 2> /dev/null)" = "ELF" ] 2.1190 } 2.1191 2.1192 + 2.1193 # Print shared library dependencies 2.1194 + 2.1195 ldd() 2.1196 { 2.1197 LD_TRACE_LOADED_OBJECTS=1 /lib/ld*.so $1 2> /dev/null 2.1198 } 2.1199 2.1200 + 2.1201 # search dependencies for files in $TMP_DIR/$file/fs 2.1202 + 2.1203 find_depends() 2.1204 { 2.1205 DEFAULT_DEPENDS="glibc-base gcc-lib-base" 2.1206 @@ -1153,58 +1277,69 @@ 2.1207 [ -n "$TMPLOCALSTATE" ] || TMPLOCALSTATE=$LOCALSTATE 2.1208 [ -f $TMPLOCALSTATE/files.list.lzma ] || tazpkg recharge > /dev/null 2.1209 for i in $TMPLOCALSTATE/files.list.lzma \ 2.1210 - $TMPLOCALSTATE/undigest/*/files.list.lzma ; do 2.1211 - [ -f $i ] && lzma d $i -so >> $TMP_DIR/files.list 2.1212 + $TMPLOCALSTATE/undigest/*/files.list.lzma ; do 2.1213 + [ -f $i ] && lzma d $i -so >> $TMP_DIR/files.list 2.1214 done 2.1215 - find ${1:-$TMP_DIR/$file/fs} -type f | while read chkfile ; do 2.1216 + 2.1217 + find ${1:-$TMP_DIR/$file/fs} -type f | \ 2.1218 + while read chkfile ; do 2.1219 is_elf $chkfile || continue 2.1220 case "$chkfile" in 2.1221 - *.o|*.ko|*.ko.gz) continue;; 2.1222 + *.o|*.ko|*.ko.gz) continue;; 2.1223 esac 2.1224 - ldd $chkfile | while read lib rem; do 2.1225 + 2.1226 + ldd $chkfile | \ 2.1227 + while read lib rem; do 2.1228 case "$lib" in 2.1229 - statically|linux-gate.so*|ld-*.so|*/ld-*.so) 2.1230 - continue;; 2.1231 + statically|linux-gate.so*|ld-*.so|*/ld-*.so) continue;; 2.1232 esac 2.1233 find ${1:-$TMP_DIR/$file/fs} | grep -q /$lib$ && continue 2.1234 + 2.1235 for dep in $(fgrep $lib files.list | cut -d: -f1); do 2.1236 case " $DEFAULT_DEPENDS " in 2.1237 - *\ $dep\ *) continue 2;; 2.1238 + *\ $dep\ *) continue 2;; 2.1239 esac 2.1240 grep -qs "^$dep$" $TMP_DIR/depends && continue 2 2.1241 done 2.1242 + 2.1243 if [ -n "$dep" ]; then 2.1244 echo "$dep" >> $TMP_DIR/depends 2.1245 else 2.1246 grep -qs ^$lib$ $TMP_DIR/unresolved || 2.1247 - echo "$lib" >> $TMP_DIR/unresolved 2.1248 + echo "$lib" >> $TMP_DIR/unresolved 2.1249 fi 2.1250 done 2.1251 done 2.1252 + 2.1253 spc="" 2.1254 - sort < $TMP_DIR/depends 2> /dev/null | uniq | while read file; do 2.1255 + sort < $TMP_DIR/depends 2> /dev/null | uniq | \ 2.1256 + while read file; do 2.1257 echo -n "$spc$file" 2.1258 spc=" " 2.1259 done 2.1260 } 2.1261 2.1262 + 2.1263 show_unresolved_lib() 2.1264 { 2.1265 if [ -s $TMP_DIR/unresolved ]; then 2.1266 echo -e "BUGS=\"`gettext \"No dependency for\"`" >> $1 2.1267 - sort < $TMP_DIR/unresolved | uniq | while read file; do 2.1268 - eval_gettext "WARNING: unknown dependency for \$lib"; echo 2.1269 + sort < $TMP_DIR/unresolved | uniq | \ 2.1270 + while read file; do 2.1271 + _ 'WARNING: unknown dependency for $lib' 2.1272 echo -n " $file" >> $1 2.1273 done 2.1274 echo "\"" >> $1 2.1275 fi 2.1276 } 2.1277 2.1278 + 2.1279 # convert a .tar.bz2 package to .tazpkg 2.1280 + 2.1281 convert_upkg() 2.1282 { 2.1283 mkdir -p $TMP_DIR/fs 2.1284 - tar xjf $PACKAGE_FILE -C $TMP_DIR/fs 2.1285 + tar xjf $PACKAGE_FILE -C $TMP_DIR/fs 2.1286 if [ -d $TMP_DIR/fs/var/lib/upkg/packages ]; then 2.1287 cd $TMP_DIR 2.1288 package="$(sed '/^Package:/!d;s/.*: //' fs/var/lib/upkg/packages/*.info)" 2.1289 @@ -1246,13 +1381,15 @@ 2.1290 tazpkg pack $file 2.1291 mv $TMP_DIR/$file.tazpkg $TOP_DIR 2.1292 else 2.1293 - eval_gettext "\$PACKAGE_FILE does not look like an upkg package!"; echo 2.1294 + _ '$PACKAGE_FILE does not look like an upkg package!' 2.1295 fi 2.1296 cd $TOP_DIR 2.1297 rm -rf $TMP_DIR 2.1298 } 2.1299 2.1300 + 2.1301 # convert a .spack package to .tazpkg 2.1302 + 2.1303 convert_spack() 2.1304 { 2.1305 mkdir -p $TMP_DIR 2.1306 @@ -1299,7 +1436,9 @@ 2.1307 rm -rf $TMP_DIR 2.1308 } 2.1309 2.1310 + 2.1311 # convert a .ipk package to .tazpkg 2.1312 + 2.1313 convert_ipk() 2.1314 { 2.1315 mkdir -p $TMP_DIR 2.1316 @@ -1314,8 +1453,7 @@ 2.1317 i386|all) 2.1318 file=$package-$version 2.1319 mkdir -p $TMP_DIR/$file/fs 2.1320 - tar xOzf $PACKAGE_FILE ./data.tar.gz | \ 2.1321 - tar xzf - -C $TMP_DIR/$file/fs 2.1322 + tar xOzf $PACKAGE_FILE ./data.tar.gz | tar xzf - -C $TMP_DIR/$file/fs 2.1323 cd $TMP_DIR 2.1324 cat > $file/receipt <<EOT 2.1325 # SliTaz package receipt. 2.1326 @@ -1360,13 +1498,15 @@ 2.1327 mv $TMP_DIR/$file.tazpkg . 2.1328 ;; 2.1329 *) 2.1330 - eval_gettext "Invalid target: \$target (expected i386)"; echo 2.1331 + _ 'Invalid target: $target (expected i386)' 2.1332 ;; 2.1333 esac 2.1334 rm -rf $TMP_DIR 2.1335 } 2.1336 2.1337 + 2.1338 # convert a .pkg.tar.gz/.pkg.tar.xz/.apk package to .tazpkg 2.1339 + 2.1340 convert_arch() 2.1341 { 2.1342 mkdir -p $TMP_DIR/fs 2.1343 @@ -1397,13 +1537,15 @@ 2.1344 tazpkg pack $file 2.1345 mv $file.tazpkg $TOP_DIR 2.1346 else 2.1347 - eval_gettext "\$PACKAGE_FILE does not look like an Archlinux/Alpine package!"; echo 2.1348 + _ '$PACKAGE_FILE does not look like an Archlinux/Alpine package!' 2.1349 fi 2.1350 cd $TOP_DIR 2.1351 rm -rf $TMP_DIR 2.1352 } 2.1353 2.1354 + 2.1355 # get package and version from PACKAGE_FILE 2.1356 + 2.1357 parse_pkgname() 2.1358 { 2.1359 package=$(basename ${2:-$PACKAGE_FILE} $1) 2.1360 @@ -1420,6 +1562,7 @@ 2.1361 mkdir $file 2.1362 } 2.1363 2.1364 + 2.1365 finish_convert_puppy() 2.1366 { 2.1367 rm -f fs/*.specs 2.1368 @@ -1455,12 +1598,14 @@ 2.1369 rm -rf $TMP_DIR 2.1370 } 2.1371 2.1372 + 2.1373 # convert a .sfs package to .tazpkg 2.1374 + 2.1375 convert_sfs() 2.1376 { 2.1377 [ -n "$(which unsquashfs)" ] || tazpkg get-install squashfs 2.1378 if ! unsquashfs -l $PACKAGE_FILE | grep -q squashfs-root/pet.specs$ ; then 2.1379 - eval_gettext "\$PACKAGE_FILE does not look like a Puppy package!"; echo 2.1380 + _ '$PACKAGE_FILE does not look like a Puppy package!' 2.1381 return 1 2.1382 fi 2.1383 mkdir -p $TMP_DIR 2.1384 @@ -1473,7 +1618,9 @@ 2.1385 finish_convert_puppy 2.1386 } 2.1387 2.1388 + 2.1389 # convert a .pet package to .tazpkg 2.1390 + 2.1391 convert_pet() 2.1392 { 2.1393 mkdir -p $TMP_DIR 2.1394 @@ -1486,12 +1633,14 @@ 2.1395 finish_convert_puppy 2.1396 } 2.1397 2.1398 + 2.1399 # convert a .sb package to .tazpkg 2.1400 + 2.1401 convert_sb() 2.1402 { 2.1403 [ -n "$(which unsquashfs)" ] || tazpkg get-install squashfs 2.1404 if ! unsquashfs -l $PACKAGE_FILE | grep -q squashfs-root/var/log/removed_scripts ; then 2.1405 - eval_gettext "\$PACKAGE_FILE does not look like a Slax package!"; echo 2.1406 + _ '$PACKAGE_FILE does not look like a Slax package!' 2.1407 return 1 2.1408 fi 2.1409 mkdir -p $TMP_DIR 2.1410 @@ -1530,7 +1679,9 @@ 2.1411 rm -rf $TMP_DIR 2.1412 } 2.1413 2.1414 + 2.1415 # convert a .tgz package to .tazpkg 2.1416 + 2.1417 convert_tgz() 2.1418 { 2.1419 parse_pkgname 2.1420 @@ -1569,13 +1720,15 @@ 2.1421 tazpkg pack $file 2.1422 mv $file.tazpkg $TOP_DIR 2.1423 else 2.1424 - eval_gettext "\$PACKAGE_FILE does not look like a Slackware package!"; echo 2.1425 + _ '$PACKAGE_FILE does not look like a Slackware package!' 2.1426 fi 2.1427 cd $TOP_DIR 2.1428 rm -rf $TMP_DIR 2.1429 } 2.1430 2.1431 + 2.1432 # convert a .deb package to .tazpkg 2.1433 + 2.1434 convert_deb() 2.1435 { 2.1436 mkdir -p $TMP_DIR 2.1437 @@ -1624,14 +1777,16 @@ 2.1438 mv $file.tazpkg $TOP_DIR 2.1439 ;; 2.1440 *) 2.1441 - eval_gettext "Invalid target: \$target (expected i386)"; echo 2.1442 + _ 'Invalid target: $target (expected i386)' 2.1443 ;; 2.1444 esac 2.1445 cd $TOP_DIR 2.1446 rm -rf $TMP_DIR 2.1447 } 2.1448 2.1449 + 2.1450 # convert a .rpm package to .tazpkg 2.1451 + 2.1452 convert_rpm() 2.1453 { 2.1454 mkdir -p $TMP_DIR 2.1455 @@ -1673,8 +1828,8 @@ 2.1456 # rpm2cpio can't extract some new RPMs 2.1457 if [ $? == 1 ]; then 2.1458 if [ ! -e $INSTALLED/p7zip-full/receipt ]; then 2.1459 - boldify $(gettext "Unable to extract the RPM using standard tools (rpm2cpio).") 2.1460 - gettext "Do you want to install 'p7zip-full' package" && confirm 2.1461 + boldify $(_ 'Unable to extract the RPM using standard tools (rpm2cpio).') 2.1462 + _n "Do you want to install 'p7zip-full' package"; confirm 2.1463 if [ $? = 0 ]; then 2.1464 tazpkg -gi p7zip-full 2.1465 else 2.1466 @@ -1696,6 +1851,7 @@ 2.1467 rm -rf $TMP_DIR 2.1468 } 2.1469 2.1470 + 2.1471 update_desktop_database() 2.1472 { 2.1473 if [ -f $1/usr/bin/update-desktop-database ] && [ -n "$updatedesktopdb" ]; then 2.1474 @@ -1703,6 +1859,7 @@ 2.1475 fi 2.1476 } 2.1477 2.1478 + 2.1479 update_mime_database() 2.1480 { 2.1481 if [ -f $1/usr/bin/update-mime-database ] && [ -n "$updatemimedb" ]; then 2.1482 @@ -1710,6 +1867,7 @@ 2.1483 fi 2.1484 } 2.1485 2.1486 + 2.1487 update_icon_database() 2.1488 { 2.1489 if [ -f $1/usr/bin/gtk-update-icon-cache ] && [ -n "$updateicondb" ]; then 2.1490 @@ -1717,6 +1875,7 @@ 2.1491 fi 2.1492 } 2.1493 2.1494 + 2.1495 compile_glib_schemas() 2.1496 { 2.1497 if [ -f $1/usr/bin/glib-compile-schemas ] && [ -n "$compile_schemas" ]; then 2.1498 @@ -1724,6 +1883,7 @@ 2.1499 fi 2.1500 } 2.1501 2.1502 + 2.1503 update_kernel_modules() 2.1504 { 2.1505 if [ -f $1/sbin/depmod ] && [ -n "$updatedepmod" ]; then 2.1506 @@ -1731,6 +1891,10 @@ 2.1507 fi 2.1508 } 2.1509 2.1510 + 2.1511 + 2.1512 + 2.1513 + 2.1514 ################### 2.1515 # TazPKG commands # 2.1516 ################### 2.1517 @@ -1738,35 +1902,36 @@ 2.1518 case "$COMMAND" in 2.1519 list|-l) 2.1520 shift 2.1521 + 2.1522 # List all installed packages or a specific category. 2.1523 if [ "$1" = "blocked" ]; then 2.1524 title 'Blocked packages' 2.1525 if [ -s "$BLOCKED" ];then 2.1526 cat $BLOCKED 2.1527 else 2.1528 - gettext "No blocked packages found."; echo 2.1529 + _ 'No blocked packages found.' 2.1530 fi 2.1531 - newline && exit 0 2.1532 + newline; exit 0 2.1533 fi 2.1534 + 2.1535 # Display the list of categories. 2.1536 if [ "$1" = "cat" -o "$1" = "categories" ]; then 2.1537 title 'Packages categories' 2.1538 num=0 2.1539 - for i in $PKGS_CATEGORIES 2.1540 - do 2.1541 - gettext $i; echo 2.1542 + for i in $PKGS_CATEGORIES; do 2.1543 + _ $i 2.1544 num=$(($num+1)) 2.1545 done 2.1546 footer "$(eval_ngettext '$num category' '$num categories' $num)"; echo 2.1547 exit 0 2.1548 fi 2.1549 + 2.1550 # Check for an asked category. 2.1551 ASKED_CATEGORY_I18N="$@" 2.1552 if [ -n "$ASKED_CATEGORY_I18N" ]; then 2.1553 ASKED_CATEGORY=$(reverse_translate_category "$ASKED_CATEGORY_I18N") 2.1554 title 'Installed packages of category: $ASKED_CATEGORY_I18N' 2.1555 - for pkg in $INSTALLED/* 2.1556 - do 2.1557 + for pkg in $INSTALLED/*; do 2.1558 [ -f $pkg/receipt ] || continue 2.1559 EXTRAVERSION="" 2.1560 . $pkg/receipt 2.1561 @@ -1781,14 +1946,14 @@ 2.1562 '$num packages installed of category $cat_name.' \ 2.1563 $packages))"; echo 2.1564 else 2.1565 + 2.1566 # By default list all packages and versions. 2.1567 title 'List of all installed packages' 2.1568 - for pkg in $INSTALLED/* 2.1569 - do 2.1570 + for pkg in $INSTALLED/*; do 2.1571 [ -f $pkg/receipt ] || continue 2.1572 EXTRAVERSION="" 2.1573 . $pkg/receipt 2.1574 - echo -e "$PACKAGE\033[35G $VERSION$EXTRAVERSION\033[53G $(gettext $CATEGORY)" 2.1575 + echo -e "$PACKAGE\033[35G $VERSION$EXTRAVERSION\033[53G $(_ $CATEGORY)" 2.1576 packages=$(($packages+1)) 2.1577 done 2.1578 num="<c 32>$packages</c>" 2.1579 @@ -1796,6 +1961,8 @@ 2.1580 '$num package installed.' \ 2.1581 '$num packages installed.' $packages))" 2.1582 fi ;; 2.1583 + 2.1584 + 2.1585 list-mirror|-lm) 2.1586 # List all available packages on the mirror. Option --diff displays 2.1587 # last mirrored packages diff (see recharge). 2.1588 @@ -1811,10 +1978,10 @@ 2.1589 '$num new packages listed on the mirror.' $num)" 2.1590 else 2.1591 newline 2.1592 - gettext "Unable to list anything, no packages.diff found."; echo 2.1593 - gettext "Recharge your current list to create a first diff."; echo 2.1594 + _ 'Unable to list anything, no packages.diff found.' 2.1595 + _ 'Recharge your current list to create a first diff.' 2.1596 newline 2.1597 - fi && exit 0 ;; 2.1598 + fi; exit 0 ;; 2.1599 --text|--txt|--raw|*) 2.1600 title 'List of available packages on the mirror' 2.1601 cat $LOCALSTATE/packages.txt ;; 2.1602 @@ -1825,6 +1992,8 @@ 2.1603 '$num package in the last recharged list.' \ 2.1604 '$num packages in the last recharged list.' $pkgs)" 2.1605 ;; 2.1606 + 2.1607 + 2.1608 list-files|-lf) 2.1609 # List files installed with the package. 2.1610 check_for_package_on_cmdline 2.1611 @@ -1837,6 +2006,8 @@ 2.1612 '$num file installed with $PACKAGE' \ 2.1613 '$num files installed with $PACKAGE' $files)" 2.1614 ;; 2.1615 + 2.1616 + 2.1617 info) 2.1618 # Information about package. 2.1619 check_for_package_on_cmdline 2.1620 @@ -1850,19 +2021,20 @@ 2.1621 [ "x$LOCDESC" != "x" ] && SHORT_DESC="$LOCDESC" 2.1622 fi 2.1623 emsg "\ 2.1624 -<b>$(gettext 'Package :')</b> $PACKAGE 2.1625 -<b>$(gettext 'Version :')</b> $VERSION$EXTRAVERSION 2.1626 -<b>$(gettext 'Category :')</b> $(gettext $CATEGORY) 2.1627 -<b>$(gettext 'Short desc :')</b> $SHORT_DESC 2.1628 -<b>$(gettext 'Maintainer :')</b> $MAINTAINER" 2.1629 - [ "$LICENSE" ] && emsg "<b>$(gettext 'License :')</b> $LICENSE" 2.1630 - [ "$DEPENDS" ] && emsg "<b>$(gettext 'Depends :')</b> $DEPENDS" 2.1631 - [ "$SUGGESTED" ] && emsg "<b>$(gettext 'Suggested :')</b> $SUGGESTED" 2.1632 - [ "$BUILD_DEPENDS" ] && emsg "<b>$(gettext 'Build deps :')</b> $BUILD_DEPENDS" 2.1633 - [ "$WANTED" ] && emsg "<b>$(gettext 'Wanted src :')</b> $WANTED" 2.1634 - [ "$WEB_SITE" ] && emsg "<b>$(gettext 'Web site :')</b> $WEB_SITE" 2.1635 +<b>$(_ 'Package :')</b> $PACKAGE 2.1636 +<b>$(_ 'Version :')</b> $VERSION$EXTRAVERSION 2.1637 +<b>$(_ 'Category :')</b> $(_ $CATEGORY) 2.1638 +<b>$(_ 'Short desc :')</b> $SHORT_DESC 2.1639 +<b>$(_ 'Maintainer :')</b> $MAINTAINER" 2.1640 + [ -n "$LICENSE" ] && emsg "<b>$(_ 'License :')</b> $LICENSE" 2.1641 + [ -n "$DEPENDS" ] && emsg "<b>$(_ 'Depends :')</b> $DEPENDS" 2.1642 + [ -n "$SUGGESTED" ] && emsg "<b>$(_ 'Suggested :')</b> $SUGGESTED" 2.1643 + [ -n "$BUILD_DEPENDS" ] && emsg "<b>$(_ 'Build deps :')</b> $BUILD_DEPENDS" 2.1644 + [ -n "$WANTED" ] && emsg "<b>$(_ 'Wanted src :')</b> $WANTED" 2.1645 + [ -n "$WEB_SITE" ] && emsg "<b>$(_ 'Web site :')</b> $WEB_SITE" 2.1646 footer ;; 2.1647 - 2.1648 + 2.1649 + 2.1650 desc) 2.1651 # Display package description.txt if available. 2.1652 if [ -f "$INSTALLED/$PACKAGE/description.txt" ]; then 2.1653 @@ -1871,36 +2043,39 @@ 2.1654 footer 2.1655 else 2.1656 newline 2.1657 - gettext "Sorry, no description available for this package."; echo 2.1658 + _ 'Sorry, no description available for this package.' 2.1659 newline 2.1660 fi ;; 2.1661 - 2.1662 + 2.1663 + 2.1664 activity|log|-a) 2.1665 # Show activity log 2.1666 [ "$nb" ] || nb=18 2.1667 title 'TazPKG Activity' 2.1668 IFS=" " 2.1669 - tail -n ${nb} ${LOG} | while read date hour none action none pkg vers none 2.1670 - do 2.1671 - case "$action" in 2.1672 + tail -n ${nb} ${LOG} | \ 2.1673 + while read date hour none action none pkg vers none; do 2.1674 + case $action in 2.1675 Installed) 2.1676 - echo "$date $hour : $(colorize 32 $action) $pkg $vers" ;; 2.1677 + action=$(colorize 32 $action) ;; 2.1678 Removed) 2.1679 - echo "$date $hour : $(colorize 31 $action) $pkg $vers" ;; 2.1680 + action=$(colorize 31 $action) ;; 2.1681 *) 2.1682 - echo "$date $hour : $(boldify $action) $pkg $vers" ;; 2.1683 + action=$(boldify $action) ;; 2.1684 esac 2.1685 - done 2.1686 - unset IFS 2.1687 - separator && newline ;; 2.1688 - 2.1689 + echo "$date $hour : $action $pkg $vers" 2.1690 + done 2.1691 + unset IFS 2.1692 + footer ;; 2.1693 + 2.1694 + 2.1695 search|-s) 2.1696 # Search for a package by pattern or name. 2.1697 PATTERN="$2" 2.1698 if [ -z "$PATTERN" ]; then 2.1699 newline 2.1700 - gettext "Please specify a pattern or package name to search for."; echo 2.1701 - echo "$(gettext 'Example:') 'tazpkg search paint'" 2.1702 + _ 'Please specify a pattern or package name to search for.' 2.1703 + echo "$(_ 'Example:') 'tazpkg search paint'" 2.1704 newline 2.1705 exit 0 2.1706 fi 2.1707 @@ -1917,13 +2092,14 @@ 2.1708 search_in_installed_packages 2.1709 search_in_packages_list ;; 2.1710 esac ;; 2.1711 - 2.1712 + 2.1713 + 2.1714 search-file|-sf) 2.1715 # Search for a file by pattern or name in all files.list. 2.1716 if [ -z "$2" ]; then 2.1717 newline 2.1718 - gettext "Please specify a pattern or file name to search for."; echo 2.1719 - echo "$(gettext 'Example:') 'tazpkg search-file libnss'" 2.1720 + _ 'Please specify a pattern or file name to search for.' 2.1721 + echo "$(_ 'Example:') 'tazpkg search-file libnss'" 2.1722 newline 2.1723 exit 0 2.1724 fi 2.1725 @@ -1934,8 +2110,8 @@ 2.1726 2.1727 match=0 2.1728 for i in $LOCALSTATE/files.list.lzma \ 2.1729 - $LOCALSTATE/undigest/*/files.list.lzma; do 2.1730 - [ -f $i ] || continue 2.1731 + $LOCALSTATE/undigest/*/files.list.lzma; do 2.1732 + [ -f $i ] || continue 2.1733 unlzma -c $i | grep -- ".*:.*$2" | awk ' 2.1734 BEGIN { last="" } 2.1735 { 2.1736 @@ -1954,12 +2130,11 @@ 2.1737 2.1738 # Check all pkg files.list in search match which specify the package 2.1739 # name and the full path to the file(s). 2.1740 - for pkg in $INSTALLED/* 2.1741 - do 2.1742 + for pkg in $INSTALLED/*; do 2.1743 if grep -qs "$2" $pkg/files.list; then 2.1744 . $pkg/receipt 2.1745 newline 2.1746 - boldify "$(eval_gettext 'Package $PACKAGE:')" 2.1747 + boldify "$(_ 'Package $PACKAGE:')" 2.1748 grep "$2" $pkg/files.list 2.1749 files=`grep $2 $pkg/files.list | wc -l` 2.1750 match=$(($match+$files)) 2.1751 @@ -1969,7 +2144,8 @@ 2.1752 fi 2.1753 pkg=$2 2.1754 if [ "$match" = "" ]; then 2.1755 - eval_gettext "0 file found for: \$pkg"; echo 2.1756 + # FIXME 2.1757 + _ '0 files found for: $pkg' 2.1758 else 2.1759 num=$(emsg "<c 32>$files</c>") 2.1760 footer "$(eval_ngettext \ 2.1761 @@ -1977,12 +2153,14 @@ 2.1762 '$num files found for: $pkg' $match)" 2.1763 fi 2.1764 ;; 2.1765 + 2.1766 + 2.1767 search-pkgname) 2.1768 # Search for a package name 2.1769 if [ -z "$2" ]; then 2.1770 newline 2.1771 - gettext "Please specify a pattern or file name to search for."; echo 2.1772 - echo "$(gettext 'Example:') 'tazpkg search-pkgname libnss'" 2.1773 + _ 'Please specify a pattern or file name to search for.' 2.1774 + echo "$(_ 'Example:') 'tazpkg search-pkgname libnss'" 2.1775 newline 2.1776 exit 0 2.1777 fi 2.1778 @@ -1999,7 +2177,7 @@ 2.1779 done 2.1780 file=$2 2.1781 if [ "$match" = "0" ]; then 2.1782 - eval_gettext "No file found for: \$file"; echo 2.1783 + _ 'No file found for: $file' 2.1784 newline 2.1785 else 2.1786 num=$(emsg "<c 32>$files</c>") 2.1787 @@ -2008,6 +2186,8 @@ 2.1788 '$num packages found with file: $file' $match)" 2.1789 fi 2.1790 ;; 2.1791 + 2.1792 + 2.1793 install|-i) 2.1794 # Install .tazpkg packages. 2.1795 check_root $@ 2.1796 @@ -2039,23 +2219,25 @@ 2.1797 update_mime_database $ROOT 2.1798 update_icon_database $ROOT 2.1799 compile_glib_schemas $ROOT ;; 2.1800 + 2.1801 + 2.1802 install-list|get-install-list) 2.1803 # Install a set of packages from a list. 2.1804 check_root $@ 2.1805 if [ -z "$2" ]; then 2.1806 newline 2.1807 - gettext \ 2.1808 + _ \ 2.1809 "Please change directory (cd) to the packages repository and specify the 2.1810 list of packages to install. Example: tazpkg install-list packages.list" 2.1811 - newline && exit 0 2.1812 + exit 0 2.1813 fi 2.1814 # Check if the packages list exist. 2.1815 list_file=$2 2.1816 if [ ! -f "$list_file" ]; then 2.1817 - eval_gettext "Unable to find: \$list_file"; echo 2.1818 + _ 'Unable to find: $list_file' 2.1819 exit 0 2.1820 else 2.1821 - LIST=`cat $2` 2.1822 + LIST=$(cat $2) 2.1823 fi 2.1824 2.1825 # Remember processed list 2.1826 @@ -2075,31 +2257,36 @@ 2.1827 slitaz-base-files tazpkg ; do 2.1828 pkg=$(egrep $pkg-[0-9] $INSTALL_LIST) 2.1829 [ -n "$pkg" ] || continue 2.1830 - eval_gettext "Adding implicit depends \$pkg..."; echo 2.1831 + _ 'Adding implicit depends $pkg...' 2.1832 LIST="$pkg 2.1833 $LIST" 2.1834 done 2.1835 2.1836 - for pkg in $LIST 2.1837 - do 2.1838 + for pkg in $LIST; do 2.1839 grep -qs ^$pkg$ $2-processed && continue 2.1840 [ -d "$root/var/lib/tazpkg/installed" ] && continue 2.1841 tazpkg $COMMAND $pkg --list="$2" "$3" "$4" "$5" 2.1842 done 2.1843 rm -f $2-processed ;; 2.1844 + 2.1845 + 2.1846 add-flavor) 2.1847 # Install a set of packages from a flavor. 2.1848 install_flavor $2 ;; 2.1849 + 2.1850 + 2.1851 install-flavor) 2.1852 # Install a set of packages from a flavor and purge other ones. 2.1853 install_flavor $2 --purge ;; 2.1854 + 2.1855 + 2.1856 set-release) 2.1857 # Change current release and upgrade packages. 2.1858 RELEASE=$2 2.1859 if [ -z "$RELEASE" ]; then 2.1860 newline 2.1861 - gettext "Please specify the release you want on the command line."; echo 2.1862 - echo "$(gettext 'Example:') tazpkg set-release cooking" 2.1863 + _ 'Please specify the release you want on the command line.' 2.1864 + echo "$(_ 'Example:') tazpkg set-release cooking" 2.1865 newline 2.1866 exit 0 2.1867 fi 2.1868 @@ -2116,15 +2303,17 @@ 2.1869 [ -d $j ] || tazpkg get-install $j 2.1870 done 2.1871 done ;; 2.1872 + 2.1873 + 2.1874 remove|-r) 2.1875 # Remove packages. 2.1876 check_root $@ 2.1877 check_for_package_on_cmdline 2.1878 2.1879 - [ "$root" ] && ROOT="$root" 2.1880 + [ -n "$root" ] && ROOT="$root" 2.1881 if [ ! -f "$ROOT$INSTALLED/$PACKAGE/receipt" ]; then 2.1882 newline 2.1883 - eval_gettext "\$PACKAGE is not installed."; echo 2.1884 + _ '$PACKAGE is not installed.' 2.1885 exit 0 2.1886 else 2.1887 ALTERED="" 2.1888 @@ -2142,14 +2331,14 @@ 2.1889 fi 2.1890 newline 2.1891 if [ -n "$ALTERED" ]; then 2.1892 - eval_gettext "The following packages depend on \$PACKAGE:"; echo 2.1893 + _ 'The following packages depend on $PACKAGE:' 2.1894 for i in $ALTERED; do 2.1895 echo " $i" 2.1896 done 2.1897 fi 2.1898 REFRESH=$(cd $ROOT$INSTALLED ; grep -sl ^$PACKAGE$ */modifiers) 2.1899 if [ -n "$REFRESH" ]; then 2.1900 - eval_gettext "The following packages have been modified by \$PACKAGE:"; echo 2.1901 + _ 'The following packages have been modified by $PACKAGE:' 2.1902 for i in $REFRESH; do 2.1903 echo " ${i%/modifiers}" 2.1904 done 2.1905 @@ -2157,7 +2346,7 @@ 2.1906 if [ "$auto" ]; then 2.1907 answer=0 2.1908 else 2.1909 - eval_gettext "Remove \$PACKAGE (\$VERSION\$EXTRAVERSION)" && confirm 2.1910 + _n 'Remove $PACKAGE ($VERSION$EXTRAVERSION)'; confirm 2.1911 answer=$? 2.1912 fi 2.1913 if [ $answer = 0 ]; then 2.1914 @@ -2168,17 +2357,14 @@ 2.1915 fi 2.1916 action "Removing all files installed..." 2.1917 if [ -f $ROOT$INSTALLED/$PACKAGE/modifiers ]; then 2.1918 - for file in `cat $ROOT$INSTALLED/$PACKAGE/files.list` 2.1919 - do 2.1920 - for mod in `cat $ROOT$INSTALLED/$PACKAGE/modifiers` 2.1921 - do 2.1922 + for file in $(cat $ROOT$INSTALLED/$PACKAGE/files.list); do 2.1923 + for mod in $(cat $ROOT$INSTALLED/$PACKAGE/modifiers); do 2.1924 [ -f $ROOT$INSTALLED/$mod/files.list ] && [ $(grep "^$(echo $file | grepesc)$" $ROOT$INSTALLED/$mod/files.list | wc -l) -gt 1 ] && continue 2 2.1925 done 2.1926 remove_with_path $ROOT$file 2.1927 done 2.1928 else 2.1929 - for file in `cat $ROOT$INSTALLED/$PACKAGE/files.list` 2.1930 - do 2.1931 + for file in $(cat $ROOT$INSTALLED/$PACKAGE/files.list); do 2.1932 remove_with_path $ROOT$file 2.1933 done 2.1934 fi 2.1935 @@ -2186,19 +2372,22 @@ 2.1936 if grep -q ^post_remove $ROOT$INSTALLED/$PACKAGE/receipt; then 2.1937 post_remove $ROOT 2.1938 fi 2.1939 + 2.1940 # Remove package receipt. 2.1941 action "Removing package receipt..." 2.1942 rm -rf $ROOT$INSTALLED/$PACKAGE 2.1943 status 2.1944 + 2.1945 sed -i "/ $PACKAGE-$VERSION$EXTRAVERSION$/d" \ 2.1946 $LOCALSTATE/installed.$SUM 2> /dev/null 2.1947 + 2.1948 # Log this activity 2.1949 log_pkg Removed 2.1950 if [ "$ALTERED" ]; then 2.1951 if [ "$auto" ]; then 2.1952 answer=0 2.1953 else 2.1954 - eval_gettext "Remove packages depending on \$PACKAGE" && confirm 2.1955 + _n 'Remove packages depending on $PACKAGE'; confirm 2.1956 answer=$? 2.1957 fi 2.1958 if [ $answer = 0 ]; then 2.1959 @@ -2213,13 +2402,13 @@ 2.1960 if [ "$auto" ]; then 2.1961 answer=0 2.1962 else 2.1963 - eval_gettext "Reinstall packages modified by \$PACKAGE" && confirm 2.1964 + _n 'Reinstall packages modified by $PACKAGE'; confirm 2.1965 answer=$? 2.1966 fi 2.1967 if [ $answer = 0 ]; then 2.1968 for i in $REFRESH; do 2.1969 if [ $(wc -l < $ROOT$INSTALLED/$i) -gt 1 ]; then 2.1970 - eval_gettext "Check \$INSTALLED/\$i for reinstallation"; echo 2.1971 + _ 'Check $INSTALLED/$i for reinstallation' 2.1972 continue 2.1973 fi 2.1974 rm -r $ROOT$INSTALLED/$i 2.1975 @@ -2229,14 +2418,17 @@ 2.1976 fi 2.1977 else 2.1978 newline 2.1979 - eval_gettext "Uninstallation of \$PACKAGE cancelled."; echo 2.1980 + _ 'Uninstallation of $PACKAGE cancelled.' 2.1981 fi 2.1982 newline ;; 2.1983 + 2.1984 + 2.1985 extract|-e) 2.1986 # Extract .tazpkg cpio archive into a directory. 2.1987 check_for_package_on_cmdline 2.1988 check_for_package_file 2.1989 title 'Extracting: $PACKAGE' 2.1990 + 2.1991 # If no directory destination is found on the cmdline 2.1992 # we create one in the current dir using the package name. 2.1993 if [ -n "$TARGET_DIR" ]; then 2.1994 @@ -2245,37 +2437,48 @@ 2.1995 DESTDIR=$PACKAGE 2.1996 fi 2.1997 mkdir -p $DESTDIR 2.1998 + 2.1999 action "Copying original package..." 2.2000 cp $PACKAGE_FILE $DESTDIR 2.2001 status 2.2002 + 2.2003 cd $DESTDIR 2.2004 extract_package 2.2005 - [ -e "receipt" ] && footer "$(eval_gettext '$PACKAGE is extracted to: $DESTDIR')" 2.2006 + [ -e "receipt" ] && footer "$(_ '$PACKAGE is extracted to: $DESTDIR')" 2.2007 ;; 2.2008 + 2.2009 + 2.2010 recompress) 2.2011 # Recompress .tazpkg cpio archive with lzma. 2.2012 check_for_package_on_cmdline 2.2013 check_for_package_file 2.2014 title 'Recompressing: $PACKAGE' 2.2015 mkdir -p $TMP_DIR 2.2016 + 2.2017 action "Copying original package..." 2.2018 cp $PACKAGE_FILE $TMP_DIR 2.2019 status 2.2020 + 2.2021 cd $TMP_DIR 2.2022 extract_package 2.2023 + 2.2024 action "Recompressing the fs..." 2.2025 find fs | cpio -o -H newc --quiet | lzma e fs.cpio.lzma -si 2.2026 rm -rf fs 2.2027 status 2.2028 + 2.2029 action "Creating new package..." 2.2030 find . -print | cpio -o -H newc --quiet > \ 2.2031 $TOP_DIR/$(basename $PACKAGE_FILE).$$ && mv -f \ 2.2032 $TOP_DIR/$(basename $PACKAGE_FILE).$$ \ 2.2033 $TOP_DIR/$(basename $PACKAGE_FILE) 2.2034 status 2.2035 + 2.2036 cd $TOP_DIR 2.2037 rm -rf $TMP_DIR 2.2038 separator; newline ;; 2.2039 + 2.2040 + 2.2041 list-config) 2.2042 # List configuration files installed. 2.2043 if [ "$2" = "--box" ]; then 2.2044 @@ -2286,10 +2489,10 @@ 2.2045 zcat $i | cpio -idm --quiet > /dev/null 2.2046 find * -type f 2>/dev/null | while read file; do 2.2047 if [ ! -e /$file ]; then 2.2048 - echo -en "----------|----|----|`gettext \"File lost\"`" 2.2049 + echo -n "----------|----|----|$(_n 'File lost')" 2.2050 else 2.2051 - echo -n "$(stat -c "%A|%U|%G|%s|" /$file)" 2.2052 - cmp $file /$file > /dev/null 2>&1 || \ 2.2053 + echo -n "$(stat -c "%A|%U|%G|%s|" /$file)" 2.2054 + cmp $file /$file > /dev/null 2>&1 || \ 2.2055 echo -n "$(stat -c "%.16y" /$file)" 2.2056 fi 2.2057 echo "|/$file" 2.2058 @@ -2308,6 +2511,8 @@ 2.2059 separator 2.2060 newline 2.2061 fi ;; 2.2062 + 2.2063 + 2.2064 repack-config) 2.2065 # Create SliTaz package archive from configuration files. 2.2066 mkdir -p $TMP_DIR && cd $TMP_DIR 2.2067 @@ -2335,7 +2540,7 @@ 2.2068 PACKAGE="config" 2.2069 VERSION="$CONFIG_VERSION" 2.2070 CATEGORY="base-system" 2.2071 -SHORT_DESC="$(eval_gettext 'User configuration backup on $pkg_date')" 2.2072 +SHORT_DESC="$(_n 'User configuration backup on $pkg_date')" 2.2073 DEPENDS="$(ls $INSTALLED)" 2.2074 EOT 2.2075 cd .. 2.2076 @@ -2344,6 +2549,8 @@ 2.2077 cd $TOP_DIR 2.2078 rm -rf $TMP_DIR 2.2079 ;; 2.2080 + 2.2081 + 2.2082 repack) 2.2083 # Create SliTaz package archive from an installed package. 2.2084 check_for_package_on_cmdline 2.2085 @@ -2352,11 +2559,11 @@ 2.2086 . $INSTALLED/$PACKAGE/receipt 2.2087 title 'Repacking: $PACKAGE-$VERSION$EXTRAVERSION.tazpkg' 2.2088 if grep -qs ^NO_REPACK= $INSTALLED/$PACKAGE/receipt; then 2.2089 - eval_gettext "Can't repack \$PACKAGE"; echo 2.2090 + _ "Can't repack \$PACKAGE" 2.2091 exit 1 2.2092 fi 2.2093 if [ -s $INSTALLED/$PACKAGE/modifiers ]; then 2.2094 - eval_gettext "Can't repack, \$PACKAGE files have been modified by:"; echo 2.2095 + _ "Can't repack, \$PACKAGE files have been modified by:" 2.2096 for i in $(cat $INSTALLED/$PACKAGE/modifiers); do 2.2097 echo " $i" 2.2098 done 2.2099 @@ -2368,7 +2575,7 @@ 2.2100 [ -L "$i" ] || MISSING="$MISSING\n $i" 2.2101 done < $INSTALLED/$PACKAGE/files.list 2.2102 if [ -n "$MISSING" ]; then 2.2103 - gettext "Can't repack, the following files are lost:" 2.2104 + _n "Can't repack, the following files are lost:" 2.2105 echo -e "$MISSING" 2.2106 exit 1 2.2107 fi 2.2108 @@ -2395,7 +2602,7 @@ 2.2109 if [ -f $INSTALLED/$PACKAGE/$CHECKSUM ]; then 2.2110 sed 's, , fs,' < $INSTALLED/$PACKAGE/$CHECKSUM | \ 2.2111 $CHECKSUM -s -c || { 2.2112 - eval_gettext "Can't repack, \$CHECKSUM error."; echo 2.2113 + _ "Can't repack, \$CHECKSUM error." 2.2114 cd $TOP_DIR 2.2115 rm -rf $TMP_DIR 2.2116 exit 1 2.2117 @@ -2406,17 +2613,19 @@ 2.2118 $TOP_DIR/$PACKAGE-$VERSION$EXTRAVERSION.tazpkg 2.2119 cd $TOP_DIR 2.2120 \rm -R $TMP_DIR 2.2121 - eval_gettext "Package \$PACKAGE repacked successfully."; echo 2.2122 + _ 'Package $PACKAGE repacked successfully.' 2.2123 pkg_size=$(du -sh $PACKAGE-$VERSION$EXTRAVERSION.tazpkg) 2.2124 - eval_gettext "Size: \$pkg_size"; echo 2.2125 + _ 'Size: $pkg_size' 2.2126 newline ;; 2.2127 + 2.2128 + 2.2129 pack) 2.2130 # Create SliTaz package archive using cpio and lzma. 2.2131 # TODO: Cook also pack packages, we should share code in libpkg.sh 2.2132 check_for_package_on_cmdline 2.2133 cd $PACKAGE 2.2134 if [ ! -f "receipt" ]; then 2.2135 - gettext "Receipt is missing. Please read the documentation."; echo 2.2136 + _ 'Receipt is missing. Please read the documentation.' 2.2137 exit 0 2.2138 else 2.2139 title 'Packing: $PACKAGE' 2.2140 @@ -2427,12 +2636,12 @@ 2.2141 find . -type l -print >> ../files.list 2.2142 cd .. && sed -i s/'^.'/''/ files.list 2.2143 status 2.2144 - action "Creating \$CHECKSUM of files..." 2.2145 + action 'Creating $CHECKSUM of files...' 2.2146 while read file; do 2.2147 [ -L "fs$file" ] && continue 2.2148 [ -f "fs$file" ] || continue 2.2149 case "$file" in 2.2150 - /lib/modules/*/modules.*|*.pyc) continue;; 2.2151 + /lib/modules/*/modules.*|*.pyc) continue;; 2.2152 esac 2.2153 $CHECKSUM "fs$file" | sed 's/ fs/ /' 2.2154 done < files.list > $CHECKSUM 2.2155 @@ -2460,15 +2669,17 @@ 2.2156 unlzma -c fs.cpio.lzma | cpio -idm --quiet 2.2157 status 2.2158 rm fs.cpio.lzma && cd .. 2.2159 - footer "$(eval_gettext 'Package $PACKAGE compressed successfully.')" 2.2160 + footer "$(_ 'Package $PACKAGE compressed successfully.')" 2.2161 pkg_size=$(du -sh $PACKAGE.tazpkg) 2.2162 - eval_gettext "Size: \$pkg_size"; echo 2.2163 + _ 'Size: $pkg_size' 2.2164 newline 2.2165 fi ;; 2.2166 + 2.2167 + 2.2168 recharge) 2.2169 # Recharge packages.list from a mirror. 2.2170 # 2.2171 - # WARNING: The mirrors file has all SliTaz mirrors but mirror 2.2172 + # WARNING: The 'mirrors' file has all SliTaz mirrors but 'mirror' 2.2173 # must have only the chosen main mirror. 2.2174 # 2.2175 check_root $@ 2.2176 @@ -2485,8 +2696,7 @@ 2.2177 repository_to_recharge=$LOCALSTATE/undigest/$ARG 2.2178 else 2.2179 repo="$LOCALSTATE/undigest/$ARG" 2.2180 - eval_gettext "\$repo doesn't exist." >&2 2.2181 - echo >&2 2.2182 + _ "\$repo doesn't exist." >&2 2.2183 exit 1 2.2184 fi 2.2185 else 2.2186 @@ -2499,14 +2709,14 @@ 2.2187 # Quietly check if recharging is needed. 2.2188 [ -f ID ] && mv ID ID.bak 2.2189 download_from "$(cat mirror)" ID >/dev/null 2>/dev/null 2.2190 - if [ -f ID ] && fgrep -q `cat ID.bak 2>/dev/null || echo "null"` ID; then 2.2191 + if [ -f ID ] && fgrep -q $(cat ID.bak 2>/dev/null || echo "null") ID; then 2.2192 if [ "$path" = "$LOCALSTATE" ]; then 2.2193 repository_name=Main 2.2194 else 2.2195 base_path="$(basename $path)" 2.2196 - repository_name="$(eval_gettext 'Undigest $base_path')" 2.2197 + repository_name="$(_n 'Undigest $base_path')" 2.2198 fi 2.2199 - eval_gettext "\$repository_name is up to date."; echo 2.2200 + _ '$repository_name is up to date.' 2.2201 rm ID.bak 2.2202 continue 2.2203 fi 2.2204 @@ -2521,7 +2731,7 @@ 2.2205 newline 2.2206 if [ "$path" != "$LOCALSTATE" ]; then 2.2207 base_path="$(basename $path)" 2.2208 - eval_gettext "Recharging undigest \$base_path:"; echo 2.2209 + _ 'Recharging undigest $base_path:' 2.2210 fi 2.2211 2.2212 if [ -f "packages.list" ]; then 2.2213 @@ -2556,20 +2766,24 @@ 2.2214 '$num new package on the mirror.' \ 2.2215 '$num new packages on the mirror.' $new_pkgs)" 2.2216 else 2.2217 - gettext "No new packages on the mirror."; echo 2.2218 + _ 'No new packages on the mirror.' 2.2219 newline 2.2220 fi 2.2221 else 2.2222 - footer "$(gettext \ 2.2223 + footer "$(_ \ 2.2224 'Last packages.list is ready to use. Note that next time you recharge the 2.2225 list, a list of differences will be displayed to show new and upgradeable 2.2226 packages.')" 2.2227 fi 2.2228 done ;; 2.2229 + 2.2230 + 2.2231 help-up) 2.2232 # Options available for the command: up 2.2233 newline; usage_up; newline 2.2234 exit 1 ;; 2.2235 + 2.2236 + 2.2237 up|upgrade) 2.2238 # 2.2239 # This is the new way to upgrade packages making 'upgrade' and 2.2240 @@ -2596,11 +2810,11 @@ 2.2241 else 2.2242 repo_name="${repo##*/}" 2.2243 fi 2.2244 - eval_gettext "\$pkg_list is older than one week... recharging"; echo 2.2245 + _ '$pkg_list is older than one week... recharging' 2.2246 tazpkg recharge $repo_name 2.2247 fi 2.2248 done 2.2249 - emsg "<n><b>$(gettext 'Package')</b><i 28> $(gettext 'Version')<i 48> $(gettext 'Status')<->" 2.2250 + emsg "<n><b>$(_ 'Package')</b><i 28> $(_ 'Version')<i 48> $(_ 'Status')<->" 2.2251 cd $INSTALLED 2.2252 newline > $UP_LIST 2.2253 blocked_count=0 2.2254 @@ -2625,16 +2839,16 @@ 2.2255 # Skip pkgs listed in $LOCALSTATE/blocked-packages.list 2.2256 if $(grep -qs "^$PACKAGE" $BLOCKED); then 2.2257 blocked_count=$(($blocked_count + 1)) 2.2258 - emsg "<i 48><c 31> $(gettext 'Blocked')</c>" 2.2259 + emsg "<i 48><c 31> $(_ 'Blocked')</c>" 2.2260 break 2.2261 fi 2.2262 2.2263 new=$(grep "^$PACKAGE |" $pkg_desc | awk '{print $3}') 2.2264 2.2265 if [ "$VERSION" == "$new" ]; then 2.2266 - emsg "<i 48><c 34> $(gettext 'New build')</c>" 2.2267 + emsg "<i 48><c 34> $(_ 'New build')</c>" 2.2268 else 2.2269 - emsg "<i 48><c 32> $(eval_gettext 'New version $new')</c>" 2.2270 + emsg "<i 48><c 32> $(_ 'New version $new')</c>" 2.2271 fi 2.2272 echo "$PACKAGE" >> $UP_LIST 2.2273 break 2.2274 @@ -2647,7 +2861,7 @@ 2.2275 time=$(($(date +%s) - $time)) 2.2276 if [ "$upnb" = 0 ]; then 2.2277 install="n" 2.2278 - gettext "System is up-to-date..."; echo 2.2279 + _ 'System is up-to-date...' 2.2280 fi 2.2281 num=$(emsg "<c 32>$pkgs</c>") 2.2282 footer "$(eval_ngettext \ 2.2283 @@ -2658,7 +2872,8 @@ 2.2284 num=$blocked_count 2.2285 blocked=$(eval_ngettext '$num blocked' '$num blocked' $num) 2.2286 else 2.2287 - blocked="$(gettext '0 blocked')" 2.2288 + # FIXME 2.2289 + blocked="$(_ '0 blocked')" 2.2290 fi 2.2291 num=$upnb 2.2292 boldify "$(eval_ngettext \ 2.2293 @@ -2672,7 +2887,7 @@ 2.2294 if [ "$install" == "y" ]; then 2.2295 continue 2.2296 else 2.2297 - gettext "Do you wish to install them now: y/n ? " 2.2298 + _n 'Do you wish to install them now: y/n ? ' 2.2299 read install 2.2300 fi 2.2301 case "$install" in 2.2302 @@ -2684,33 +2899,37 @@ 2.2303 # tazpkg-notify doesn't find upgrades anymore. 2.2304 rm $UP_LIST && touch $UP_LIST ;; 2.2305 *) 2.2306 - gettext "Leaving without any upgrades installed."; echo 2.2307 + _ 'Leaving without any upgrades installed.' 2.2308 newline 2.2309 exit 0 ;; 2.2310 esac 2.2311 fi 2.2312 newline ;; 2.2313 + 2.2314 + 2.2315 bugs) 2.2316 # Show known bugs in package(s) 2.2317 cd $INSTALLED 2.2318 shift 2.2319 LIST=$@ 2.2320 - [ -n "$LIST" ] || LIST=`ls` 2.2321 - MSG=$(gettext "No known bugs.") 2.2322 + [ -n "$LIST" ] || LIST=$(ls) 2.2323 + MSG=$(_n 'No known bugs.') 2.2324 for PACKAGE in $LIST; do 2.2325 BUGS="" 2.2326 EXTRAVERSION="" 2.2327 . $PACKAGE/receipt 2.2328 if [ -n "$BUGS" ]; then 2.2329 - MSG=$(gettext "Bug list completed") 2.2330 + MSG=$(_n 'Bug list completed') 2.2331 newline 2.2332 - eval_gettext "Bugs in package \$PACKAGE version \$VERSION\$EXTRAVERSION:"; echo 2.2333 + _ 'Bugs in package $PACKAGE version $VERSION$EXTRAVERSION:' 2.2334 cat <<EOT 2.2335 $BUGS 2.2336 EOT 2.2337 fi 2.2338 done 2.2339 echo "$MSG" ;; 2.2340 + 2.2341 + 2.2342 check) 2.2343 # Check installed packages set. 2.2344 check_root $@ 2.2345 @@ -2719,43 +2938,44 @@ 2.2346 look_for_priority 2.2347 2.2348 cd $INSTALLED 2.2349 - for PACKAGE in `ls`; do 2.2350 + for PACKAGE in $(ls); do 2.2351 if [ ! -f $PACKAGE/receipt ]; then 2.2352 - eval_gettext "The package \$PACKAGE installation has not completed"; echo 2.2353 + _ 'The package $PACKAGE installation has not completed' 2.2354 continue 2.2355 fi 2.2356 DEPENDS="" 2.2357 EXTRAVERSION="" 2.2358 . $PACKAGE/receipt 2.2359 if [ -s $PACKAGE/modifiers ]; then 2.2360 - eval_gettext \ 2.2361 - "The package \$PACKAGE-\$VERSION\$EXTRAVERSION has been modified by:"; echo 2.2362 + _ 'The package $PACKAGE-$VERSION$EXTRAVERSION has been modified by:' 2.2363 for i in $(cat $PACKAGE/modifiers); do 2.2364 echo " $i" 2.2365 done 2.2366 fi 2.2367 - MSG="$(eval_gettext 'Files lost from $PACKAGE-$VERSION$EXTRAVERSION:')\n" 2.2368 + MSG="$(_n 'Files lost from $PACKAGE-$VERSION$EXTRAVERSION:')\n" 2.2369 while read file; do 2.2370 [ -e "$file" ] && continue 2.2371 if [ -L "$file" ]; then 2.2372 - MSG="$MSG $(gettext 'target of symlink')" 2.2373 + MSG="$MSG $(_n 'target of symlink')" 2.2374 fi 2.2375 echo -e "$MSG $file" 2.2376 MSG="" 2.2377 done < $PACKAGE/files.list 2.2378 - MSG="$(eval_gettext 'Missing dependencies for $PACKAGE-$VERSION$EXTRAVERSION:')\n" 2.2379 + MSG="$(_n 'Missing dependencies for $PACKAGE-$VERSION$EXTRAVERSION:')\n" 2.2380 for i in $DEPENDS; do 2.2381 [ -d $i ] && continue 2.2382 [ -d $(equivalent_pkg $i) ] && continue 2.2383 echo -e "$MSG $i" 2.2384 MSG="" 2.2385 done 2.2386 - MSG="$(eval_gettext 'Dependencies loop between $PACKAGE and:')\n" 2.2387 + MSG="$(_n 'Dependencies loop between $PACKAGE and:')\n" 2.2388 ALL_DEPS="" 2.2389 check_for_deps_loop $PACKAGE $DEPENDS 2.2390 done 2.2391 - gettext "Looking for known bugs..."; echo 2.2392 + 2.2393 + _ 'Looking for known bugs...' 2.2394 tazpkg bugs 2.2395 + 2.2396 if [ "$PACKAGE_FILE" = "--full" ]; then 2.2397 for file in */$CHECKSUM; do 2.2398 CONFIG_FILES="" 2.2399 @@ -2765,7 +2985,7 @@ 2.2400 [ -f $f ] || continue 2.2401 for i in $CONFIG_FILES; do 2.2402 case "$f" in 2.2403 - $i|$i/*) continue 2;; 2.2404 + $i|$i/*) continue 2;; 2.2405 esac 2.2406 done 2.2407 echo "$md5 $f" 2.2408 @@ -2779,13 +2999,13 @@ 2.2409 [ $(grep "^$(echo $file | grepesc)$" */files.list 2> /dev/null | \ 2.2410 wc -l) -gt 1 ] || continue 2.2411 FILES="$FILES$file " 2.2412 - eval_gettext "The following packages provide \$file:"; echo 2.2413 - grep -l "^$(echo $file | grepesc)$" */files.list | while read f 2.2414 - do 2.2415 + _ 'The following packages provide $file:' 2.2416 + grep -l "^$(echo $file | grepesc)$" */files.list | \ 2.2417 + while read f; do 2.2418 pkg=${f%/files.list} 2.2419 if [ -f $pkg/modifiers ]; then 2.2420 pkg_list="$(cat $pkg/modifiers)" 2.2421 - overriders=$(eval_gettext '(overridden by $pkg_list)') 2.2422 + overriders=$(_n '(overridden by $pkg_list)') 2.2423 else 2.2424 overriders='' 2.2425 fi 2.2426 @@ -2793,27 +3013,27 @@ 2.2427 newline 2.2428 done 2.2429 done 2.2430 - MSG="$(gettext 'No package has installed the following files:')\n" 2.2431 - find /etc /bin /sbin /lib /usr /var/www \ 2.2432 - -not -type d 2> /dev/null | while read file; do 2.2433 + MSG="$(_n 'No package has installed the following files:')\n" 2.2434 + find /etc /bin /sbin /lib /usr /var/www -not -type d 2>/dev/null | \ 2.2435 + while read file; do 2.2436 case "$file" in *\[*) continue;; esac 2.2437 grep -q "^$(echo $file | grepesc)$" */files.list && continue 2.2438 echo -e "$MSG $file" 2.2439 MSG="" 2.2440 done 2.2441 fi 2.2442 - gettext "Check completed."; echo ;; 2.2443 + _ 'Check completed.'; echo ;; 2.2444 + 2.2445 + 2.2446 block) 2.2447 # Add a pkg name to the list of blocked packages. 2.2448 check_root $@ 2.2449 check_for_package_on_cmdline 2.2450 newline 2.2451 if grep -qs "^$PACKAGE" $BLOCKED; then 2.2452 - eval_gettext "\$PACKAGE is already in the blocked packages list."; echo 2.2453 - newline 2.2454 - exit 0 2.2455 + _ '$PACKAGE is already in the blocked packages list.' 2.2456 else 2.2457 - action "Add \$PACKAGE to: \$BLOCKED..." 2.2458 + action 'Add $PACKAGE to: $BLOCKED...' 2.2459 echo $PACKAGE >> $BLOCKED 2.2460 status 2.2461 # Log this activity 2.2462 @@ -2821,13 +3041,15 @@ 2.2463 log_pkg Blocked 2.2464 fi 2.2465 newline ;; 2.2466 + 2.2467 + 2.2468 unblock) 2.2469 # Remove a pkg name from the list of blocked packages. 2.2470 check_root $@ 2.2471 check_for_package_on_cmdline 2.2472 newline 2.2473 if grep -qs "^$PACKAGE" $BLOCKED; then 2.2474 - action "Removing \$PACKAGE from: \$BLOCKED..." 2.2475 + action 'Removing $PACKAGE from: $BLOCKED...' 2.2476 sed -i s/$PACKAGE/''/ $BLOCKED 2.2477 sed -i '/^$/d' $BLOCKED 2.2478 status 2.2479 @@ -2835,11 +3057,11 @@ 2.2480 . $INSTALLED/$PACKAGE/receipt 2.2481 log_pkg Unblocked 2.2482 else 2.2483 - eval_gettext "\$PACKAGE is not in the blocked packages list."; echo 2.2484 - newline 2.2485 - exit 0 2.2486 + _ '$PACKAGE is not in the blocked packages list.' 2.2487 fi 2.2488 newline ;; 2.2489 + 2.2490 + 2.2491 get) 2.2492 # Download a package with wget. 2.2493 check_root $@ 2.2494 @@ -2853,8 +3075,7 @@ 2.2495 SAVE_CACHE_DIR=$CACHE_DIR 2.2496 LOCALSTATE=$root/$LOCALSTATE 2.2497 else 2.2498 - gettext "rootconfig needs --root= option used." >&2 2.2499 - echo >&2 2.2500 + _ 'rootconfig needs --root= option used.' >&2 2.2501 exit 1 2.2502 fi 2.2503 fi 2.2504 @@ -2866,10 +3087,10 @@ 2.2505 check_for_package_in_list 2.2506 cd $CACHE_DIR 2.2507 if [ -f "$PACKAGE.tazpkg" ]; then 2.2508 - eval_gettext "\$PACKAGE already in the cache"; echo 2.2509 + _ '$PACKAGE already in the cache' 2.2510 # Check package download was finished 2.2511 tail -c 2k $PACKAGE.tazpkg | fgrep -q 00000000TRAILER || { 2.2512 - eval_gettext "Continuing \$PACKAGE download"; echo 2.2513 + _ 'Continuing $PACKAGE download' 2.2514 download $PACKAGE.tazpkg 2.2515 } 2.2516 if [ "$($CHECKSUM $PACKAGE.tazpkg)" != "$(fgrep " $PACKAGE.tazpkg" $rep/packages.$SUM)" ]; then 2.2517 @@ -2881,7 +3102,8 @@ 2.2518 fi 2.2519 PACKAGE_FILE=$CACHE_DIR/$PACKAGE.tazpkg 2.2520 cp -a $PACKAGE_FILE $CURRENT_DIR ;; 2.2521 - 2.2522 + 2.2523 + 2.2524 get-install|-gi) 2.2525 # Download and install a package. 2.2526 check_root $@ 2.2527 @@ -2898,8 +3120,7 @@ 2.2528 SAVE_CACHE_DIR=$CACHE_DIR 2.2529 LOCALSTATE=$root/$LOCALSTATE 2.2530 else 2.2531 - gettext "rootconfig needs --root= option used." >&2 2.2532 - echo >&2 2.2533 + _ 'rootconfig needs --root= option used.' >&2 2.2534 exit 1 2.2535 fi 2.2536 fi 2.2537 @@ -2930,10 +3151,10 @@ 2.2538 fi 2.2539 cd $CACHE_DIR 2.2540 if [ -f "$PACKAGE.tazpkg" ]; then 2.2541 - eval_gettext "\$PACKAGE already in the cache: \$CACHE_DIR"; echo 2.2542 + _ '$PACKAGE already in the cache: $CACHE_DIR' 2.2543 # Check package download was finished 2.2544 tail -c 2k $PACKAGE.tazpkg | fgrep -q 00000000TRAILER || { 2.2545 - eval_gettext "Continuing \$PACKAGE download"; echo 2.2546 + _ 'Continuing $PACKAGE download' 2.2547 download $PACKAGE.tazpkg 2.2548 } 2.2549 if [ "$($CHECKSUM $PACKAGE.tazpkg)" != "$(fgrep " $PACKAGE.tazpkg" $rep/packages.$SUM)" ]; then 2.2550 @@ -2950,7 +3171,8 @@ 2.2551 [ "$AUTOEXEC" != "no" ] && $PACKAGE $ROOT 2.2552 update_desktop_database $ROOT 2.2553 update_mime_database $ROOT ;; 2.2554 - 2.2555 + 2.2556 + 2.2557 clean-cache|-cc) 2.2558 # Remove all downloaded packages. 2.2559 check_root $@ 2.2560 @@ -2960,12 +3182,14 @@ 2.2561 rm -rf $CACHE_DIR/* 2.2562 status 2.2563 num=$(colorize 32 "$files") 2.2564 - if [ "$files" == 0 ]; then 2.2565 - footer "$(eval_gettext '$num file removed from cache.')" 2.2566 - else 2.2567 - footer "$(eval_gettext '$num files removed from cache.')" 2.2568 - fi ;; 2.2569 - 2.2570 + 2.2571 + footer "$(eval_ngettext \ 2.2572 + '$num file removed from cache.' \ 2.2573 + '$num files removed from cache.' \ 2.2574 + $files)" 2.2575 + ;; 2.2576 + 2.2577 + 2.2578 list-undigest) 2.2579 # list undigest URLs. 2.2580 if [ "$2" = "--box" ]; then 2.2581 @@ -2977,28 +3201,32 @@ 2.2582 title 'Current undigest(s)' 2.2583 for i in $LOCALSTATE/undigest/*/mirror; do 2.2584 if [ ! -f $i ]; then 2.2585 - gettext "No undigest mirror found."; echo 2.2586 + _ 'No undigest mirror found.' 2.2587 exit 1 2.2588 fi 2.2589 echo "$(basename $(dirname $i)) $(cat $i)" 2.2590 done 2.2591 newline 2.2592 fi ;; 2.2593 + 2.2594 + 2.2595 remove-undigest) 2.2596 # remove undigest URL. 2.2597 check_root $@ 2.2598 undigest="$2" 2.2599 if [ -d $LOCALSTATE/undigest/$2 ]; then 2.2600 - eval_gettext "Remove \$undigest undigest" && confirm 2.2601 + _n 'Remove $undigest undigest'; confirm 2.2602 if [ $? = 0 ]; then 2.2603 - action "Removing \$undigest undigest..." 2.2604 + action 'Removing $undigest undigest...' 2.2605 rm -rf $LOCALSTATE/undigest/$2 2.2606 status 2.2607 rmdir $LOCALSTATE/undigest 2> /dev/null 2.2608 fi 2.2609 else 2.2610 - eval_gettext "Undigest \$undigest not found"; echo 2.2611 + _ 'Undigest $undigest not found' 2.2612 fi ;; 2.2613 + 2.2614 + 2.2615 add-undigest|setup-undigest) 2.2616 # Add undigest URL. 2.2617 check_root $@ 2.2618 @@ -3012,14 +3240,18 @@ 2.2619 undigest=$i 2.2620 fi 2.2621 if [ ! -d $LOCALSTATE/undigest/$undigest ]; then 2.2622 - eval_gettext "Creating new undigest \$undigest."; echo 2.2623 + _ 'Creating new undigest $undigest.' 2.2624 mkdir $LOCALSTATE/undigest/$undigest 2.2625 fi 2.2626 setup_mirror $LOCALSTATE/undigest/$undigest $3 ;; 2.2627 + 2.2628 + 2.2629 setup-mirror|-sm) 2.2630 # Change mirror URL. 2.2631 check_root $@ 2.2632 setup_mirror $LOCALSTATE $2 ;; 2.2633 + 2.2634 + 2.2635 reconfigure) 2.2636 # Replay post_install from receipt 2.2637 check_for_package_on_cmdline 2.2638 @@ -3027,12 +3259,14 @@ 2.2639 ROOT="" 2.2640 while [ -n "$3" ]; do 2.2641 case "$3" in 2.2642 - --root=*) 2.2643 - ROOT="${3#--root=}/" ;; 2.2644 - *) shift 2 2.2645 - u_opt="$*" 2.2646 - echo -e "\n$(gettext 'Unknown option $u_opt.')\n" >&2 2.2647 - exit 1 ;; 2.2648 + --root=*) 2.2649 + ROOT="${3#--root=}/" ;; 2.2650 + *) 2.2651 + shift 2 2.2652 + u_opt="$*" 2.2653 + newline >&2 2.2654 + _ 'Unknown option $u_opt.' >&2 2.2655 + exit 1 ;; 2.2656 esac 2.2657 shift 2.2658 done 2.2659 @@ -3046,14 +3280,16 @@ 2.2660 [ -n "$ROOT" ] || log_pkg Reconfigured 2.2661 else 2.2662 newline 2.2663 - eval_gettext "Nothing to do for \$PACKAGE."; echo 2.2664 + _ 'Nothing to do for $PACKAGE.' 2.2665 fi 2.2666 else 2.2667 newline 2.2668 - eval_gettext "Package \$PACKAGE is not installed."; echo 2.2669 - gettext "Install package with 'tazpkg install' or 'tazpkg get-install'"; echo 2.2670 + _ 'Package $PACKAGE is not installed.' 2.2671 + _ "Install package with 'tazpkg install' or 'tazpkg get-install'" 2.2672 newline 2.2673 fi ;; 2.2674 + 2.2675 + 2.2676 shell) 2.2677 # TazPKG SHell 2.2678 if test $(id -u) = 0 ; then 2.2679 @@ -3064,17 +3300,16 @@ 2.2680 if [ ! "$2" = "--noheader" ]; then 2.2681 clear 2.2682 title 'TazPKG SHell.' 2.2683 - gettext "Type 'usage' to list all available commands or 'quit' or 'q' to exit."; echo 2.2684 + _ "Type 'usage' to list all available commands or 'quit' or 'q' to exit." 2.2685 newline 2.2686 fi 2.2687 - while true 2.2688 - do 2.2689 + while true; do 2.2690 echo -en "$PROMPT"; read cmd 2.2691 case $cmd in 2.2692 q|quit) 2.2693 break ;; 2.2694 shell) 2.2695 - gettext "You are already running a TazPKG SHell."; echo ;; 2.2696 + _ 'You are already running a TazPKG SHell.' ;; 2.2697 su) 2.2698 su -c 'exec tazpkg shell --noheader' && break ;; 2.2699 "") 2.2700 @@ -3083,6 +3318,8 @@ 2.2701 tazpkg $cmd ;; 2.2702 esac 2.2703 done ;; 2.2704 + 2.2705 + 2.2706 depends) 2.2707 # Display dependencies tree 2.2708 cd $INSTALLED 2.2709 @@ -3090,6 +3327,8 @@ 2.2710 if [ -f $2/receipt ]; then 2.2711 dep_scan $2 "" 2.2712 fi ;; 2.2713 + 2.2714 + 2.2715 rdepends) 2.2716 # Display reverse dependencies tree 2.2717 cd $INSTALLED 2.2718 @@ -3097,6 +3336,8 @@ 2.2719 if [ -f $2/receipt ]; then 2.2720 rdep_scan $2 2.2721 fi ;; 2.2722 + 2.2723 + 2.2724 convert|-c) 2.2725 # convert misc package format to .tazpkg 2.2726 check_for_package_file 2.2727 @@ -3106,37 +3347,39 @@ 2.2728 == "debian-b" ]; then 2.2729 convert_deb 2.2730 else 2.2731 - case "$PACKAGE_FILE" in 2.2732 - *.deb|*.udeb) 2.2733 - convert_deb;; 2.2734 - *.rpm) 2.2735 - convert_rpm;; 2.2736 - *.sb) 2.2737 - convert_sb;; 2.2738 - *.sfs) 2.2739 - convert_sfs;; 2.2740 - *.pet) 2.2741 - convert_pet;; 2.2742 - *.tgz) 2.2743 - convert_tgz;; 2.2744 - *.apk|*.pkg.tar.gz|*.pkg.tar.xz) 2.2745 - convert_arch;; 2.2746 - *.ipk|*.opk) 2.2747 - convert_ipk;; 2.2748 - *.spack) 2.2749 - convert_spack;; 2.2750 - *.tar.bz2) 2.2751 - convert_upkg;; 2.2752 - *) 2.2753 - gettext "Unsupported format"; echo ;; 2.2754 + case "$PACKAGE_FILE" in 2.2755 + *.deb|*.udeb) 2.2756 + convert_deb;; 2.2757 + *.rpm) 2.2758 + convert_rpm;; 2.2759 + *.sb) 2.2760 + convert_sb;; 2.2761 + *.sfs) 2.2762 + convert_sfs;; 2.2763 + *.pet) 2.2764 + convert_pet;; 2.2765 + *.tgz) 2.2766 + convert_tgz;; 2.2767 + *.apk|*.pkg.tar.gz|*.pkg.tar.xz) 2.2768 + convert_arch;; 2.2769 + *.ipk|*.opk) 2.2770 + convert_ipk;; 2.2771 + *.spack) 2.2772 + convert_spack;; 2.2773 + *.tar.bz2) 2.2774 + convert_upkg;; 2.2775 + *) 2.2776 + _ 'Unsupported format' ;; 2.2777 esac 2.2778 fi ;; 2.2779 + 2.2780 + 2.2781 link) 2.2782 # link a package from another slitaz installation 2.2783 PACKAGE=$2 2.2784 if [ ! -d "$TARGET_DIR" -o \ 2.2785 ! -d "$TARGET_DIR$INSTALLED/$PACKAGE" ]; then 2.2786 - gettext " 2.2787 + _n " 2.2788 usage: tazpkg link package_name slitaz_root 2.2789 example: 'tazpkg link openoffice /mnt' will use less than 100k in 2.2790 your running system ram. 2.2791 @@ -3144,7 +3387,7 @@ 2.2792 exit 1 2.2793 fi 2.2794 if [ -e "$INSTALLED/$PACKAGE" ]; then 2.2795 - eval_gettext "\$PACKAGE is already installed."; echo 2.2796 + _ '$PACKAGE is already installed.' 2.2797 exit 1 2.2798 fi 2.2799 ln -s $TARGET_DIR$INSTALLED/$PACKAGE $INSTALLED 2.2800 @@ -3153,11 +3396,11 @@ 2.2801 for i in $DEPENDS; do 2.2802 [ -e $INSTALLED/$i ] && continue 2.2803 MISSING="$MISSING$i " 2.2804 - eval_gettext "Missing: \$i"; echo 2.2805 + _ 'Missing: $i' 2.2806 done 2.2807 if [ -n "$MISSING" ]; then 2.2808 newline 2.2809 - gettext "Link all missing dependencies" && confirm 2.2810 + _n 'Link all missing dependencies'; confirm 2.2811 answer=$? 2.2812 newline 2.2813 if [ $answer = 0 ]; then 2.2814 @@ -3166,8 +3409,8 @@ 2.2815 done 2.2816 else 2.2817 newline 2.2818 - eval_gettext "Leaving dependencies unresolved for: \$PACKAGE"; echo 2.2819 - gettext "The package is installed but probably will not work."; echo 2.2820 + _ 'Leaving dependencies unresolved for: $PACKAGE' 2.2821 + _ 'The package is installed but probably will not work.' 2.2822 newline 2.2823 fi 2.2824 fi 2.2825 @@ -3187,6 +3430,8 @@ 2.2826 if grep -q ^post_install $INSTALLED/$PACKAGE/receipt; then 2.2827 post_install 2.2828 fi ;; 2.2829 + 2.2830 + 2.2831 usage|*) 2.2832 # Print a short help or give usage for an unknown or empty command. 2.2833 usage ;;