kiss: Make owns work with multiple files.

This commit is contained in:
Dylan Araps 2019-07-22 01:35:35 +03:00
parent 69b63a1df1
commit dc44ee51e7
2 changed files with 12 additions and 7 deletions

View File

@ -34,6 +34,8 @@ export KISS_PATH=/packages/core:/packages/extra:/packages/xorg:/packages/public
=> depends: List package dependencies.
=> install: Install a package (Runs build if needed).
=> list: List packages.
=> manifest: List package files owned by package.
=> owns: Check which package owns a file.
=> remove: Remove a package.
=> search: Search for a package.
=> update: Check for updates.

17
kiss
View File

@ -932,16 +932,19 @@ args() {
o*)
shift
[ "$1" ] || die "'kiss owns' requires an argument."
[ -f "$KISS_ROOT/$1" ] || die "File '$1' doesn't exist."
set +f
pkg_owns=$(grep -lFx "$1" "$KISS_ROOT/$pkg_db/"*/manifest)
set -f
for file; do
[ -f "$KISS_ROOT/$file" ] || die "File '$file' doesn't exist."
pkg_owns=${pkg_owns%/*}
pkg_owns=${pkg_owns##*/}
set +f
pkg_owns=$(grep -lFx "$file" "$KISS_ROOT/$pkg_db/"*/manifest)
set -f
log "[$pkg_owns] owns '$1'"
pkg_owns=${pkg_owns%/*}
pkg_owns=${pkg_owns##*/}
log "[$pkg_owns] owns '$file'"
done
;;
# Upgrade packages.