From c1b2b78d055175ed9ffae29669ed001ddc2a1e8a Mon Sep 17 00:00:00 2001 From: rhatto Date: Sun, 10 Dec 2006 23:06:01 +0000 Subject: common.sh: install_packages fix git-svn-id: svn+slack://slack.fluxo.info/var/svn/simplepkg@70 04377dda-e619-0410-9926-eae83683ac58 --- lib/common.sh | 15 ++++++++++++++- src/simplaret | 11 ++++++++--- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/lib/common.sh b/lib/common.sh index ed00779..5da1ed7 100644 --- a/lib/common.sh +++ b/lib/common.sh @@ -132,12 +132,25 @@ function install_packages { # if the package wasnt found, try to donwload it if [[ "$package_downloaded" != "1" ]]; then ARCH=$ARCH VERSION=$VERSION $SIMPLARET --get $pack -a - for file in `find $STORAGE/$extrafolder -name $pack*tgz`; do + + # it can be stored at the patches folder + for file in `find $PATCHES_DIR/$extrafolder -name $pack*tgz`; do if [[ "`package_name $file`" == "$pack" ]]; then package_file="$file" break fi done + + # or it can be stored at the standard packages folder + if [ -z "$package_file" ]; then + for file in `find $STORAGE/$extrafolder -name $pack*tgz`; do + if [[ "`package_name $file`" == "$pack" ]]; then + package_file="$file" + break + fi + done + fi + fi # now tries to install the package, if available diff --git a/src/simplaret b/src/simplaret index ae738f2..4ab5772 100755 --- a/src/simplaret +++ b/src/simplaret @@ -464,7 +464,7 @@ function simplaret_search_and_download_patch { # if the package is installed, download the patch if [[ "$package_installed" != "1" ]]; then - # TODO: verificar se eh a mesma versao e build number? + # TODO: verificar se eh a mesma versao e build number que esta instalada? # DOWNLOAD_EVEN_IF_APPLIED? simplaret_get $candidate DOWNLOADED_PATCHES="$DOWNLOADED_PATCHES $candidate " # the ending space is important @@ -482,7 +482,12 @@ function simplaret_get_jail_patches { # usage: simplaret_get_jail_patches local oldarch oldversion - root="$1" + + if [ ! -z "$1" ]; then + root="$1" + else + root="/" + fi # save current arch and version oldarch="$ARCH" @@ -529,7 +534,7 @@ function simplaret_get_patches { local jailpath # first get patches from the root system - simplaret_get_jail_patches / + simplaret_get_jail_patches # then get the needed patches for each installed jail if [ -s "$JAIL_LIST" ]; then -- cgit v1.2.3