tazpkg rev 438 4.3

tazpkg, recharge): add support for {wanted,depends,libraries}.txt, plus tiny optimization of code size
author Antoine Bodin <gokhlayeh@slitaz.org>
date Tue Mar 15 06:32:57 2011 +0100 (2011-03-15)
parents 62e749776c9e
children 3b2e3d3cf3ad
files tazpkg
line diff
     1.1 --- a/tazpkg	Fri Mar 04 17:49:53 2011 +0100
     1.2 +++ b/tazpkg	Tue Mar 15 06:32:57 2011 +0100
     1.3 @@ -1,4 +1,4 @@
     1.4 -#!/bin/sh
     1.5 +s#!/bin/sh
     1.6  # Tazpkg - Tiny autonomous zone packages manager.
     1.7  #
     1.8  # This is a lightwight packages manager for *.tazpkg files, all written in
     1.9 @@ -2273,22 +2273,26 @@
    1.10  
    1.11  			if [ -f "packages.list" ]; then
    1.12  				gettext "Creating backup of the last packages list..."
    1.13 -				mv -f packages.desc packages.desc.bak 2>/dev/null
    1.14 -				mv -f packages.md5 packages.md5.txt 2>/dev/null
    1.15 -				mv -f packages.txt packages.txt.bak 2>/dev/null
    1.16 -				mv -f packages.list packages.list.bak 2>/dev/null
    1.17 -				mv -f packages.equiv packages.equiv.bak 2>/dev/null
    1.18 -				mv -f files.list.lzma files.list.lzma.bak 2> /dev/null
    1.19 -				mv -f mirrors mirrors.bak 2> /dev/null
    1.20 +				for i in packages.desc packages.md5 packages.txt \
    1.21 +				packages.list packages.equiv files.list.lzma \
    1.22 +				mirrors wanted.txt depends.txt libraries.txt; do
    1.23 +					mv -f $i $i.bak 2>/dev/null
    1.24 +				done
    1.25  				status
    1.26  			fi
    1.27 -			download_from "$(cat mirror)" packages.desc
    1.28 -			download_from "$(cat mirror)" packages.md5
    1.29 -			download_from "$(cat mirror)" packages.txt
    1.30 -			download_from "$(cat mirror)" packages.list
    1.31 -			download_from "$(cat mirror)" packages.equiv
    1.32 +			for i in desc md5 txt list; do
    1.33 +				download_from "$(cat mirror)" packages.$i
    1.34 +			done
    1.35  			download_from "$(cat mirror)" files.list.lzma
    1.36 -			download_from "$(sed 's|packages/.*||' < mirror)" mirrors
    1.37 +			
    1.38 +			# ID file & wanted/depends/libraries files were implemented
    1.39 +			# at the same time. Not all repositories have them.
    1.40 +			if [ -f ID ]; then
    1.41 +				for i in wanted depends library; do
    1.42 +					wget -s "$(cat mirror)" $i.txt
    1.43 +				done
    1.44 +			fi
    1.45 +
    1.46  			[ -f mirrors ] || mv mirrors.bak mirrors 2> /dev/null
    1.47  			suffix=$(head -1 mirror)
    1.48  			suffix=packages${suffix#*/packages}