tazpkg diff modules/mirror @ rev 896
Module 'convert': support .pet packages without *pet.specs inside
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Mon Dec 21 01:45:15 2015 +0200 (2015-12-21) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/modules/mirror Mon Dec 21 01:45:15 2015 +0200 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