}
+function simplaret_search_and_delete {
+
+ for file in `find $2/ -name $1*tgz 2> /dev/null`; do
+ candidate="`basename $file`"
+ if [ "`package_name $candidate`" == "$1" ]; then
+ # check if has the same version and build number, otherwise erase the old one
+ for result in `simplaret_search $(package_name $candidate) --basename-only`; do
+ if [ "`package_name $candidate`" == "`package_name $result`" ] && \
+ [ "`package_version $candidate`" == "`package_version $result`" ] && \
+ [ "`package_build $candidate`" == "`package_build $result`" ]; then
+ if [ "$2" != "--silent" ]; then
+ echo package $candidate already downloaded and stored at `dirname $file`
+ else echo $file
+ fi
+ return 0
+ else
+ rm $file
+ break
+ fi
+ done
+ fi
+ done
+
+}
+
function simplaret_get {
# get a package
for repos_type in patches root repos noarch; do
simplaret_set_storage_folder
+ simplaret_search_and_delete $1 $storage
- for file in `find $storage/ -name $1*tgz 2> /dev/null`; do
- candidate="`basename $file`"
- if [ "`package_name $candidate`" == "$1" ]; then
- # check if has the same version and build number, otherwise erase the old one
- for result in `simplaret_search $(package_name $candidate) --basename-only`; do
- if [ "`package_name $candidate`" == "`package_name $result`" ] && \
- [ "`package_version $candidate`" == "`package_version $result`" ] && \
- [ "`package_build $candidate`" == "`package_build $result`" ]; then
- if [ "$2" != "--silent" ]; then
- echo package $candidate already downloaded and stored at `dirname $file`
- else echo $file
- fi
- return 0
- else
- rm $file
- break
- fi
- done
- fi
- done
+ # if repos_type == root, check also if
+ # there is a package on $PATCHES_DIR/root-$repository_name
+ if [ "$repos_type" == "root" ]; then
+ simplaret_repository_name
+ simplaret_search_and_delete $1 $PATCHES_DIR/$ARCH/$VERSION/root-$repository_name
+ fi
done