Kevin Mark wrote:
Hi people waiting for sarge! I know lots of folks like me use modems and want a faster update. Have you tried apt-dupdate? Cheers, Kev
Don't know about apt-dupdate, but I use apt-qupdate which seems to work well for me:
pretzalz@Pretzalz:~$ cat /usr/local/sbin/apt-qupdate #!/bin/sh url=http://merkel.debian.org/~aba/debian tmp=$(tempfile) || exit cd /var/lib/apt/lists for p in *_Packages *_Sources; do file=${p##*_} path=${p##*_dists_} if [ "$path" = "$p" ]; then continue; fi path=$(echo ${path%_*} | tr _ /) >"$tmp" url2="${url}/dists/${path}/${file}.diff" wget -q -O "$tmp" "${url2}/Index" if [ -s "$tmp" ]; then cp "$p" "${p}.bak" untiffani "$p" "$tmp" "${url2}" fi done rm -f "$tmp" apt-cache gencaches pretzalz@Pretzalz:~$ cat /usr/local/sbin/untiffani #!/bin/sh file="$1" index="$2" patchurl="${3%/}" patch=$(tempfile) sizeof () { wc -c "$1" | sed 's/^ *//;s/ .*//' } c_sha1="" c_size="-1" cur_sha1 () { if [ "$c_sha1" = "" ]; then c_sha1=$(sha1sum < "$file" | cut -d\ -f1) fi echo $c_sha1 } cur_size () { c2_size=$(sizeof "$file") if [ $c2_size != $c_size ]; then c_size=$c2_size c_sha1="" fi echo $c_size } patch_sha1_size () {sed -n '/^SHA1-Patches:/,/^[^ ]/'"s/^ \([^ ]*\) *\([^ ]*\) $1\$/\1 \2/p" "$index"
} sed -n '/^SHA1-History:/,/^[^ ]/s/^ / /p' "$index" | while read n_sha1 n_size n_patch; do echo "try: $n_patch" if [ $(cur_size) = "$n_size" ]; then if [ $(cur_sha1) = "$n_sha1" ]; then wget -q -O- "$patchurl/${n_patch}.gz" | zcat > $patch p_size=$(sizeof $patch) p_sha1=$(sha1sum < $patch | cut -d\ -f1) if [ "$p_sha1 $p_size" = "$(patch_sha1_size $n_patch)" ]; then echo "applying patch $n_patch" (cat $patch; echo "wq") | ed "$file" >/dev/null c_size=0 fi fi fi done rm -f "$patch"
Attachment:
signature.asc
Description: OpenPGP digital signature