mirror of
https://github.com/outbackdingo/scratchpkg.git
synced 2026-03-19 21:13:28 +00:00
updated
This commit is contained in:
41
buildpkg
41
buildpkg
@@ -377,20 +377,6 @@ lockbuild() {
|
||||
fi
|
||||
}
|
||||
|
||||
checkneworphan() {
|
||||
|
||||
for md in ${makedepends[@]}; do
|
||||
removemakedepends $md
|
||||
done
|
||||
if [ "${#saferemove[@]}" -gt 0 ]; then
|
||||
msg "Package safe for remove:"
|
||||
for saferem in ${saferemove[@]}; do
|
||||
msg2 "$saferem"
|
||||
done
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
updatepkgdepends() {
|
||||
|
||||
# only installed depends will count as depends
|
||||
@@ -419,6 +405,20 @@ updatepkgdepends() {
|
||||
|
||||
}
|
||||
|
||||
checkneworphan() {
|
||||
|
||||
for md in ${makedepends[@]}; do
|
||||
removemakedepends $md
|
||||
done
|
||||
if [ "${#saferemove[@]}" -gt 0 ]; then
|
||||
msg "Package safe for remove:"
|
||||
for saferem in ${saferemove[@]}; do
|
||||
msg2 "$saferem"
|
||||
done
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
removemakedepends() {
|
||||
|
||||
ORPHAN="yes"
|
||||
@@ -431,7 +431,7 @@ removemakedepends() {
|
||||
done
|
||||
done
|
||||
|
||||
[ "$ORPHAN" = "yes" ] && saferemove+=($1)
|
||||
[ "$ORPHAN" = "yes" ] && [ -d $INDEX_DIR/$1 ] && saferemove+=($1)
|
||||
}
|
||||
|
||||
clearworkdir() {
|
||||
@@ -522,6 +522,9 @@ parse_options() {
|
||||
--no-color)
|
||||
NO_COLOR=yes
|
||||
;;
|
||||
--no-orphan-check)
|
||||
NO_ORPHAN_CHECK=yes
|
||||
;;
|
||||
# this option not pass to installpkg
|
||||
-fr|--force-rebuild)
|
||||
FORCE_REBUILD=yes
|
||||
@@ -612,6 +615,10 @@ main() {
|
||||
|
||||
loadspkgbuild
|
||||
|
||||
if [ "$UPGRADE_PKG" ] || [ "$REINSTALL_PKG" ]; then
|
||||
NO_ORPHAN_CHECK=yes
|
||||
fi
|
||||
|
||||
### CHECK SPKGBUILD ###
|
||||
if [ -z "$name" ] || [ -z "$version" ] || [ -z "$release" ] || [ "$(basename `pwd`)" != "$name" ] || [ "`type -t build`" != "function" ]; then
|
||||
msg "Error, please check spkgbuild."
|
||||
@@ -670,7 +677,9 @@ main() {
|
||||
updatepkgdepends
|
||||
fi
|
||||
buildpkg
|
||||
checkneworphan
|
||||
if [ ! "$NO_ORPHAN_CHECK" ]; then
|
||||
checkneworphan
|
||||
fi
|
||||
fi
|
||||
|
||||
### INSTALL PACKAGE ###
|
||||
|
||||
34
installpkg
34
installpkg
@@ -162,6 +162,7 @@ getname() {
|
||||
version=$(tar xf $PKGNAME .pkginfo -O | grep ^version | cut -d " " -f3)
|
||||
release=$(tar xf $PKGNAME .pkginfo -O | grep ^release | cut -d " " -f3)
|
||||
depends=$(tar xf $PKGNAME .pkginfo -O | grep ^depends | cut -d " " -f3-)
|
||||
makedepends=$(tar xf $PKGNAME .pkginfo -O | grep ^makedepends | cut -d " " -f3-)
|
||||
conflict=$(tar xf $PKGNAME .pkginfo -O | grep ^conflict | cut -d " " -f3-)
|
||||
|
||||
packagename=$name-$version-$release
|
||||
@@ -196,7 +197,7 @@ upgradepkg() {
|
||||
if [ ! "$NO_BACKUP" ]; then
|
||||
backupconf
|
||||
fi
|
||||
removepkg $name -id --no-preremove --no-postremove
|
||||
removepkg $name -id --no-preremove --no-postremove --no-orphan-check
|
||||
NO_PREINSTALL=yes
|
||||
NO_POSTINSTALL=yes
|
||||
|
||||
@@ -300,6 +301,35 @@ run_postupgrade() {
|
||||
|
||||
}
|
||||
|
||||
checkneworphan() {
|
||||
|
||||
for md in ${makedepends[@]}; do
|
||||
removemakedepends $md
|
||||
done
|
||||
if [ "${#saferemove[@]}" -gt 0 ]; then
|
||||
msg "Package safe for remove:"
|
||||
for saferem in ${saferemove[@]}; do
|
||||
msg2 "$saferem"
|
||||
done
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
removemakedepends() {
|
||||
|
||||
ORPHAN="yes"
|
||||
for all_installed in $(ls $INDEX_DIR); do
|
||||
depend=$(cat $INDEX_DIR/$all_installed/.pkginfo | grep ^depends | cut -d " " -f3-)
|
||||
for dep in ${depend[@]}; do
|
||||
if [ $dep = $1 ]; then
|
||||
ORPHAN="no"
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
[ "$ORPHAN" = "yes" ] && [ -d $INDEX_DIR/$1 ] && saferemove+=($1)
|
||||
}
|
||||
|
||||
help() {
|
||||
|
||||
echo -e "Usage:"
|
||||
@@ -443,6 +473,8 @@ main() {
|
||||
### INSTALL PACKAGE INTO SYSTEM ###
|
||||
installpkg
|
||||
|
||||
checkneworphan
|
||||
|
||||
### RUN THINGS THAT NEED UPDATE AFTER INSTALL PACKAGE ###
|
||||
updatesystemdb
|
||||
|
||||
|
||||
@@ -171,7 +171,7 @@ saferemove() {
|
||||
done
|
||||
done
|
||||
|
||||
[ "$ORPHAN" = "yes" ] && neworphan+=($1)
|
||||
[ "$ORPHAN" = "yes" ] && [ -d $INDEX_DIR/$1 ] && neworphan+=($1)
|
||||
|
||||
}
|
||||
|
||||
@@ -215,6 +215,9 @@ parse_options() {
|
||||
--no-color)
|
||||
NO_COLOR=yes
|
||||
;;
|
||||
--no-orphan-check)
|
||||
NO_ORPHAN_CHECK=yes
|
||||
;;
|
||||
*)
|
||||
RMNAME=$1
|
||||
;;
|
||||
@@ -265,7 +268,9 @@ main() {
|
||||
removepkg $RMNAME
|
||||
|
||||
### CHECK NEW ORPHANED PACKAGE ###
|
||||
checkneworphan
|
||||
if [ ! "$NO_ORPHAN_CHECK" ]; then
|
||||
checkneworphan
|
||||
fi
|
||||
|
||||
### RUN NECESSARY UPDATE AFTER REMOVE PACKAGE ###
|
||||
updatesystemdb
|
||||
|
||||
10
scratch
10
scratch
@@ -4,6 +4,7 @@ pushtoport() {
|
||||
|
||||
for port in ${PORT_REPO[@]}; do
|
||||
if [ -d $port/$PORTNAME ]; then
|
||||
PORT_EXIST=yes
|
||||
pushd $port/$PORTNAME
|
||||
IGNORE_CONFLICT="$IGNORE_CONFLICT" \
|
||||
IGNORE_DEP="$IGNORE_DEP" \
|
||||
@@ -17,12 +18,13 @@ pushtoport() {
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
[ ! "$PORT_EXIST" ] && msg "Port ${color_red}$PORTNAME${color_reset} not found."
|
||||
}
|
||||
|
||||
listinstalled() {
|
||||
for installed in $(ls $INDEX_DIR); do
|
||||
getinstalledname $installed
|
||||
#msg3 $installedname
|
||||
installedpkg+=($installedname)
|
||||
done
|
||||
for ip in ${installedpkg[@]}; do
|
||||
@@ -63,7 +65,6 @@ listorphan() {
|
||||
done
|
||||
if [ "$ORPHAN" = yes ]; then
|
||||
ORPHAN_PKG+=($installedname)
|
||||
#msg $installedname
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -283,11 +284,6 @@ showdependent() {
|
||||
|
||||
showglobaldependent() {
|
||||
|
||||
#if [ -d $INDEX_DIR/$GLOBAL_PACKAGE_DEPENDENT ]; then
|
||||
#msg "Package ${color_green}$GLOBAL_PACKAGE_DEPENDENT${color_reset} is installed."
|
||||
#else
|
||||
#msg "Package ${color_red}$GLOBAL_PACKAGE_DEPENDENT${color_reset} not installed."
|
||||
#fi
|
||||
for port in ${PORT_REPO[@]}; do
|
||||
if [ -d $port ]; then
|
||||
for all in $(ls $port); do
|
||||
|
||||
Reference in New Issue
Block a user