aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xkiss15
1 files changed, 10 insertions, 5 deletions
diff --git a/kiss b/kiss
index 0990a1b..8924101 100755
--- a/kiss
+++ b/kiss
@@ -41,14 +41,17 @@ pkg_setup() {
}
pkg_depends() {
- while read -r dep; do
- pkg_list "$dep" ||
+ while read -r dep opt; do
+ pkg_list "$dep" || {
+ [ "$1" = install ] && [ "$opt" = make ] && return
+
case $missing in
- *" $dep,"*) ;;
- *) missing="$missing $dep,"
+ *" $dep${opt:+ ($opt)},"*) ;;
+ *) missing="$missing $dep${opt:+ ($opt)},"
pkg_setup "$dep"
pkg_depends ;;
esac
+ }
done 2>/dev/null < depends
}
@@ -200,7 +203,9 @@ args() {
pkg_checksum
log "Generated checksums." ;;
- i*) pkg_install ;;
+ i*) pkg_depends install
+ pkg_install ;;
+
l*) pkg_list "$2" ;;
r*) pkg_remove || die "Package '$name' not installed" ;;
u*) pkg_updates ;;