tazpkg diff modules/mirror @ rev 846
Remove "busybox" "prefixes" (thanks llev)
We used "busybox wget", etc. to be sure we called Busybox's "wget", not any other "wget". Workaround already done in "getenv" module.
We used "busybox wget", etc. to be sure we called Busybox's "wget", not any other "wget". Workaround already done in "getenv" module.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Fri Oct 09 13:14:01 2015 +0300 (2015-10-09) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/modules/mirror Fri Oct 09 13:14:01 2015 +0300 1.3 @@ -0,0 +1,119 @@ 1.4 +#!/bin/sh 1.5 +# TazPkg - Tiny autonomous zone packages manager, hg.slitaz.org/tazpkg 1.6 +# mirror - TazPkg module 1.7 +# Add/remove/list undigest mirrors, URLs 1.8 + 1.9 + 1.10 +# Connect function libraries 1.11 +. /lib/libtaz.sh 1.12 + 1.13 +# Get TazPkg working environment 1.14 +. @@MODULES@@/getenv 1.15 + 1.16 + 1.17 + 1.18 + 1.19 +# Update mirror URLs 1.20 + 1.21 +setup_mirror() { 1.22 + # Backup old list. 1.23 + if [ -f "$1/mirror" ]; then 1.24 + cp -f $1/mirror $1/mirror.bak 1.25 + fi 1.26 + title 'Current mirror(s)' 1.27 + echo " $(cat "$1/mirror" 2>/dev/null)" 1.28 + longline "$(_ "Please enter URL of the new mirror (http, ftp or local \ 1.29 +path). You must specify the complete address to the directory of the packages \ 1.30 +and packages.list file.")" 1.31 + newline 1.32 + 1.33 + _n 'New mirror(s) URL: ' 1.34 + NEW_MIRROR_URL="$2" 1.35 + if [ -n "$NEW_MIRROR_URL" ]; then 1.36 + echo $NEW_MIRROR_URL 1.37 + else 1.38 + read NEW_MIRROR_URL 1.39 + fi 1.40 + 1.41 + if [ -z "$NEW_MIRROR_URL" ]; then 1.42 + _ 'Nothing has been changed.' 1.43 + else 1.44 + _ 'Setting mirror(s) to: "%s"' "$NEW_MIRROR_URL" 1.45 + rm -f "$1/mirror" 1.46 + for i in $NEW_MIRROR_URL; do 1.47 + echo "${i%/}/" >> "$1/mirror" 1.48 + done 1.49 + fi 1.50 + newline 1.51 +} 1.52 + 1.53 + 1.54 + 1.55 + 1.56 +case $1 in 1.57 + list) 1.58 + # List undigest mirrors URLs 1.59 + 1.60 + if [ -n "$box" ]; then 1.61 + for i in $PKGS_DB/undigest/*/mirror; do 1.62 + [ -f "$i" ] || continue 1.63 + echo "$(basename "$(dirname "$i")")|$(cat "$i")" 1.64 + done 1.65 + else 1.66 + title 'Current undigest(s)' 1.67 + for i in $PKGS_DB/undigest/*/mirror; do 1.68 + if [ ! -f "$i" ]; then 1.69 + _ 'No undigest mirror found.' 1.70 + exit 1 1.71 + fi 1.72 + echo "$(basename "$(dirname "$i")")"$'\t'"$(cat "$i")" 1.73 + done 1.74 + newline 1.75 + fi 1.76 + ;; 1.77 + 1.78 + 1.79 + remove) 1.80 + # Remove undigest mirror 1.81 + 1.82 + undigest="$2" 1.83 + if [ -d "$PKGS_DB/undigest/$2" ]; then 1.84 + confirm "$(_ 'Remove "%s" undigest? (y/N)' "$undigest")" 1.85 + if [ $? -eq 0 ]; then 1.86 + action 'Removing "%s" undigest...' "$undigest" 1.87 + rm -rf "$PKGS_DB/undigest/$2" 1.88 + status 1.89 + rmdir "$PKGS_DB/undigest" 2>/dev/null 1.90 + fi 1.91 + else 1.92 + _ 'Undigest "%s" not found' "$undigest" 1.93 + fi 1.94 + ;; 1.95 + 1.96 + 1.97 + add) 1.98 + # Add undigest URL 1.99 + 1.100 + [ ! -d "$PKGS_DB/undigest" ] && mkdir "$PKGS_DB/undigest" 1.101 + 1.102 + undigest="$2" 1.103 + if [ -z "$undigest" ]; then 1.104 + i='1' 1.105 + while [ -d "$PKGS_DB/undigest/$i" ]; do 1.106 + i=$(($i+1)) 1.107 + done 1.108 + undigest="$i" 1.109 + fi 1.110 + if [ ! -d "$PKGS_DB/undigest/$undigest" ]; then 1.111 + _ 'Creating new undigest "%s".' "$undigest" 1.112 + mkdir "$PKGS_DB/undigest/$undigest" 1.113 + fi 1.114 + setup_mirror "$PKGS_DB/undigest/$undigest" "$3" 1.115 + ;; 1.116 + 1.117 + setup) 1.118 + # Change mirror URL 1.119 + setup_mirror "$PKGS_DB" "$2" 1.120 + ;; 1.121 + 1.122 +esac