From fe138085ad889447942f03b969f1a3abb862cb8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Reynolds?= Date: Wed, 15 Aug 2012 15:25:59 -0300 Subject: Toru-where is an utility to find PKGBUILD dirs on toru's path cache Use with toru-path --- toru-path | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'toru-path') diff --git a/toru-path b/toru-path index 5065a30..9bfc3ff 100755 --- a/toru-path +++ b/toru-path @@ -2,6 +2,11 @@ source $(dirname $(command -v $0))/toru-utils +if [ ! -w "$TORUPATH" ]; then + error "Toru's path isn't writable. Please check $TORUPATH" + exit 1 +fi + LASTSYNCFILE=${TORUPATH}/lastsync.paths # TODO pass other paths via flags -- cgit v1.2.3-2-g168b From 12377d79078170ec47c1fa5fb56b12ecb13367e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Reynolds?= Date: Sat, 20 Oct 2012 16:04:17 -0300 Subject: Use TokyoCabinet to store the PKGBUILD path cache --- toru-path | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'toru-path') diff --git a/toru-path b/toru-path index 9bfc3ff..7f1d599 100755 --- a/toru-path +++ b/toru-path @@ -2,22 +2,30 @@ source $(dirname $(command -v $0))/toru-utils +TORUPATH=${T:-${TORUPATH}} + if [ ! -w "$TORUPATH" ]; then error "Toru's path isn't writable. Please check $TORUPATH" exit 1 fi LASTSYNCFILE=${TORUPATH}/lastsync.paths +PATHFILE=${TORUPATH}/paths.tch + +if [ ! -e "${PATHFILE}" ]; then + tcamgr create "${PATHFILE}" +fi # TODO pass other paths via flags -pkgbuilds=($(get_pkgbuilds ${ABSROOT})) -paths=() +# ABSROOT has trailing slash +fullrepos=($(for _repo in ${REPOS[@]}; do echo "${ABSROOT}${_repo}"; done)) +pkgbuilds=($(get_pkgbuilds ${fullrepos[@]})) msg "Updating path cache" msg2 "${#pkgbuilds[@]} PKGBUILDs to update" for _pkgbuild in ${pkgbuilds[@]}; do - $DEBUG && plain "$_pkgbuild" - source ${_pkgbuild} || { +# plain "$_pkgbuild" + source ${_pkgbuild} >/dev/null 2>&1 || { error "${_pkgbuild} contains errors, skipping" continue } @@ -25,15 +33,10 @@ for _pkgbuild in ${pkgbuilds[@]}; do fullpath=$(dirname ${_pkgbuild}) for _pkg in ${pkgbase} ${pkgname[@]} ${provides[@]}; do - paths+=(${_pkg/[<>=]*}:${fullpath}) + tcamgr put ${PATHFILE} ${_pkg/[<>=]*} ${fullpath} done unset pkgbase pkgname provides done - -# TODO remove old paths -# by joining new paths to old paths and exclude the joining points from the -# cache (sort of a sql join) -echo ${paths[@]} | tr ' ' "\n" | sort >> ${TORUPATH}/paths lastsync ${LASTSYNCFILE} -- cgit v1.2.3-2-g168b From 04af64022ed0a0bf618e23c0ed7512c168d479c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=A1s=20Reynolds?= Date: Sat, 3 Nov 2012 13:29:38 -0300 Subject: Traverse REPOS backwards This ensures packages in stable repos are added last to the path cache --- toru-path | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'toru-path') diff --git a/toru-path b/toru-path index 7f1d599..957f49b 100755 --- a/toru-path +++ b/toru-path @@ -3,6 +3,7 @@ source $(dirname $(command -v $0))/toru-utils TORUPATH=${T:-${TORUPATH}} +VERBOSE=${V:-false} if [ ! -w "$TORUPATH" ]; then error "Toru's path isn't writable. Please check $TORUPATH" @@ -18,7 +19,11 @@ fi # TODO pass other paths via flags # ABSROOT has trailing slash -fullrepos=($(for _repo in ${REPOS[@]}; do echo "${ABSROOT}${_repo}"; done)) +fullrepos=() +for (( i = ${#REPOS[@]}-1 ; i >= 0 ; i-- )); do + ${VERBOSE} && msg "Processing [%s]" ${REPOS[$i]} + fullrepos+=("${ABSROOT}${REPOS[$i]}") +done pkgbuilds=($(get_pkgbuilds ${fullrepos[@]})) msg "Updating path cache" @@ -33,6 +38,7 @@ for _pkgbuild in ${pkgbuilds[@]}; do fullpath=$(dirname ${_pkgbuild}) for _pkg in ${pkgbase} ${pkgname[@]} ${provides[@]}; do + $VERBOSE && msg2 "${_pkg} -> ${fullpath}" tcamgr put ${PATHFILE} ${_pkg/[<>=]*} ${fullpath} done -- cgit v1.2.3-2-g168b From e9bc885c355babf7851de31db8e1920dde752993 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 7 Nov 2012 00:17:08 -0500 Subject: organize the files --- toru-path | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) delete mode 100755 toru-path (limited to 'toru-path') diff --git a/toru-path b/toru-path deleted file mode 100755 index 957f49b..0000000 --- a/toru-path +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -source $(dirname $(command -v $0))/toru-utils - -TORUPATH=${T:-${TORUPATH}} -VERBOSE=${V:-false} - -if [ ! -w "$TORUPATH" ]; then - error "Toru's path isn't writable. Please check $TORUPATH" - exit 1 -fi - -LASTSYNCFILE=${TORUPATH}/lastsync.paths -PATHFILE=${TORUPATH}/paths.tch - -if [ ! -e "${PATHFILE}" ]; then - tcamgr create "${PATHFILE}" -fi - -# TODO pass other paths via flags -# ABSROOT has trailing slash -fullrepos=() -for (( i = ${#REPOS[@]}-1 ; i >= 0 ; i-- )); do - ${VERBOSE} && msg "Processing [%s]" ${REPOS[$i]} - fullrepos+=("${ABSROOT}${REPOS[$i]}") -done -pkgbuilds=($(get_pkgbuilds ${fullrepos[@]})) - -msg "Updating path cache" -msg2 "${#pkgbuilds[@]} PKGBUILDs to update" -for _pkgbuild in ${pkgbuilds[@]}; do -# plain "$_pkgbuild" - source ${_pkgbuild} >/dev/null 2>&1 || { - error "${_pkgbuild} contains errors, skipping" - continue - } - - fullpath=$(dirname ${_pkgbuild}) - - for _pkg in ${pkgbase} ${pkgname[@]} ${provides[@]}; do - $VERBOSE && msg2 "${_pkg} -> ${fullpath}" - tcamgr put ${PATHFILE} ${_pkg/[<>=]*} ${fullpath} - done - - unset pkgbase pkgname provides -done - -lastsync ${LASTSYNCFILE} -- cgit v1.2.3-2-g168b