This commit is contained in:
emmett1
2017-12-24 00:27:52 +08:00
parent 4dfbb923b5
commit 64d2cf0128
2 changed files with 21 additions and 15 deletions

View File

@@ -65,23 +65,29 @@ installpkg() {
fi
#installing package into system
msg2 "Extracting package..."
if [ "$VERBOSE_INSTALL" ]; then
tar --keep-directory-symlink --no-overwrite-dir -p -x -v -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]}
if [[ $(tar -tf "$PKGNAME") ]]; then
msg2 "Extracting package..."
if [ "$VERBOSE_INSTALL" ]; then
tar --keep-directory-symlink --no-overwrite-dir -p -x -v -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]}
else
tar --keep-directory-symlink --no-overwrite-dir -p -x -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]}
fi
else
tar --keep-directory-symlink --no-overwrite-dir -p -x -f $PKGNAME -C $ROOT_DIR --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]}
msgerr "Package is corrupted. Aborted!"
spkglock
exit 1
fi
if [ $? != 0 ]; then
msgerr "Failed install ${color_red}$packagename${color_reset}."
while IFS=' ' read -r line; do
pushd $ROOT_DIR
rm_silent "$line" || rmdir_silent --ignore-fail-on-non-empty "$line"
popd
done < <(tar -tf "$PKGNAME" --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} | tac)
spkglock
exit 1
fi
if [ $? != 0 ]; then
msgerr "Failed install ${color_red}$packagename${color_reset}."
while IFS=' ' read -r line; do
pushd $ROOT_DIR
rm_silent "$line" || rmdir_silent --ignore-fail-on-non-empty "$line"
popd
done < <(tar -tf "$PKGNAME" --exclude=.pkginfo --exclude=.pkginstall --exclude=.pkgreadme ${excludefile[@]} | tac)
spkglock
exit 1
fi
if [ "$UPGRADE_PKG" ] || [ "$REINSTALL_PKG" ]; then
removeoldfiles

View File

@@ -91,7 +91,7 @@ searchpkg() {
popd
if [ ! -z "$name" ] && [ ! -z "$version" ] && [ ! -z "$release" ]; then
portname=$(basename $port)
search_result="${color_gray}($portname)${color_reset} ${color_purple}$name${color_reset} ${color_cyan}$version-$release${color_reset}"
search_result="${color_blue}($portname)${color_reset} ${color_purple}$name${color_reset} ${color_cyan}$version-$release${color_reset}"
if [ -d $INDEX_DIR/$name ]; then
getinstalledname $name
if [ "$name-$version-$release" = "$installedname" ]; then