7 Commits
0.1 ... 0.2

Author SHA1 Message Date
emmett1
6e4134550e fix typo 2020-02-01 11:40:11 +08:00
emmett1
be8cbb552a add sort to pkgquery and scratch search function 2020-01-31 23:19:21 +08:00
emmett1
cf8d6c9cc9 fix generate_pkgfiles on pkgbuild 2020-01-20 11:53:54 +08:00
emmett1
b5733b2f8f fix scratch_build 2020-01-17 22:59:54 +08:00
emmett1
b6710e58c4 fix scratch search and pkgquery search 2020-01-16 10:05:32 +08:00
emmett1
0b78bb986d fix typos 2020-01-16 00:17:24 +08:00
emmett1
3b7a73c0d8 bring back search function to scratch, maybe for now 2020-01-15 12:45:38 +08:00
3 changed files with 50 additions and 24 deletions

View File

@@ -356,7 +356,7 @@ generate_pkgfiles() {
msg "Generating .pkgfiles..." msg "Generating .pkgfiles..."
tar -tvf "$PACKAGE_DIR/$PKGNAME" $excludefile \ tar -tvf "$PACKAGE_DIR/$PKGNAME" $excludefile \
| awk '{print $1,$2,$6}' \ | awk '{$3=$4=$5=""; print $0}' \
| sed "s,lib/modules/$(uname -r),lib/modules/<kernelversion>,g" \ | sed "s,lib/modules/$(uname -r),lib/modules/<kernelversion>,g" \
| sort -k 3 > .pkgfiles | sort -k 3 > .pkgfiles
} }

View File

@@ -145,16 +145,14 @@ pkg_search() {
needarg $@ needarg $@
arg=$* arg=$*
for repo in $REPO; do for repo in $REPO; do
out=$(grep -R "# description" $repo | grep $BUILD_SCRIPT | grep "$arg" | awk -F : '{print $1}') out=$(grep -R "# description" $repo | grep $BUILD_SCRIPT | grep "$arg" | awk -F : '{print $1}' | sort)
[ "$out" ] || continue [ "$out" ] || continue
for line in $out; do for line in $out; do
repo=$(echo $line | rev | awk -F / '{print $3}' | rev) repo=$(echo $line | rev | awk -F / '{print $3}' | rev)
desc=$(grep "^# description[[:blank:]]*:" $line | sed 's/^# description[[:blank:]]*:[[:blank:]]*//') desc=$(grep "^# description[[:blank:]]*:" $line | sed 's/^# description[[:blank:]]*:[[:blank:]]*//')
name=$(grep "^name=" $line | awk -F = '{print $2}') . $line
version=$(grep "^version=" $line | awk -F = '{print $2}')
release=$(grep "^release=" $line | awk -F = '{print $2}')
echo "($repo) $name $version-$release: $desc" echo "($repo) $name $version-$release: $desc"
unset repo desc name version release unset repo desc name version release build
done done
unset out unset out
done done

64
scratch
View File

@@ -477,16 +477,17 @@ scratch_build() {
return 1 return 1
} }
for pkg in $PKGNAME; do for pkg in $PKGNAME; do
cd $(getportpath $pkg) || { ppath=$(getportpath $pkg) || {
echo "Package '$P' not found." echo "Package '$pkg' not found."
return 1 return 1
} }
settermtitle "Building $P..." cd $ppath
settermtitle "Building $pkg..."
pkgbuild $OPTS || { pkgbuild $OPTS || {
settermtitle "Building $P failed" settermtitle "Building $pkg failed."
return 1 return 1
} }
settermtitle "Building $P done" settermtitle "Building $pkg done."
cd - >/dev/null cd - >/dev/null
done done
} }
@@ -528,9 +529,9 @@ scratch_install() {
cd - >/dev/null cd - >/dev/null
fi fi
done done
settermtitle "Triggering install hook" settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg [ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "Reinstalling done" settermtitle "Reinstalling done."
return "$error" return "$error"
fi fi
if [ "$NO_DEP" = 1 ]; then if [ "$NO_DEP" = 1 ]; then
@@ -552,9 +553,9 @@ scratch_install() {
cd - >/dev/null cd - >/dev/null
fi fi
done done
settermtitle "Triggering install hook" settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg [ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "Installing done" settermtitle "Installing done."
return "$error" return "$error"
fi fi
for i in $PKGNAME; do for i in $PKGNAME; do
@@ -603,9 +604,9 @@ scratch_install() {
fi fi
unset portpathh unset portpathh
done done
settermtitle "Triggering install hook" settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg [ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) installed" settermtitle "$count/$total package(s) installed."
return "$error" return "$error"
fi fi
} }
@@ -656,9 +657,9 @@ scratch_remove() {
break break
} }
done done
settermtitle "Triggering remove hook" settermtitle "Triggering remove hook..."
post_triggers post_triggers
settermtitle "$pkgcount package(s) removed" settermtitle "$pkgcount package(s) removed."
} }
outdatepkg() { outdatepkg() {
@@ -713,7 +714,7 @@ scratch_sysup() {
WILLINSTALL="$WILLINSTALL $d" WILLINSTALL="$WILLINSTALL $d"
UPGPKG=$(( UPGPKG + 1 )) UPGPKG=$(( UPGPKG + 1 ))
elif ! isinstalled $d && [ "$(getportpath "$d")" ]; then elif ! isinstalled $d && [ "$(getportpath "$d")" ]; then
prinf "[${CYAN}n${CRESET}] $d " printf "[${CYAN}n${CRESET}] $d "
WILLINSTALL="$WILLINSTALL $d" WILLINSTALL="$WILLINSTALL $d"
NEWPKG=$(( NEWPKG + 1 )) NEWPKG=$(( NEWPKG + 1 ))
fi fi
@@ -757,9 +758,9 @@ scratch_sysup() {
cd - >/dev/null cd - >/dev/null
done_pkg="$done_pkg $inst" done_pkg="$done_pkg $inst"
done done
settermtitle "Triggering install hook" settermtitle "Triggering install hook."
[ "$done_pkg" ] && scratch_trigger $done_pkg [ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) upgraded" settermtitle "$count/$total package(s) upgraded."
return "$error" return "$error"
} }
@@ -853,9 +854,9 @@ scratch_upgrade() {
done_pkg="$done_pkg $pkg" done_pkg="$done_pkg $pkg"
cd - >/dev/null cd - >/dev/null
done done
settermtitle "triggering upgrade hook" settermtitle "triggering upgrade hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg [ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) upgraded" settermtitle "$count/$total package(s) upgraded."
return "$error" return "$error"
} }
@@ -897,6 +898,32 @@ scratch_outdate() {
[ ! "$OUTDATE" ] && msg "All packages are up to date." [ ! "$OUTDATE" ] && msg "All packages are up to date."
} }
scratch_search() {
needarg $@
arg=$*
for repo in $PORT_REPO; do
out=$(grep -R "# description" $repo | grep $BUILD_SCRIPT | grep "$arg" | awk -F : '{print $1}' | sort)
[ "$out" ] || continue
found=1
for line in $out; do
repo=$(echo $line | rev | awk -F / '{print $3}' | rev)
desc=$(grep "^# description[[:blank:]]*:" $line | sed 's/^# description[[:blank:]]*:[[:blank:]]*//')
. $line
if isinstalled $name; then
ins="[${GREEN}*${CRESET}]"
else
ins="[ ]"
fi
printf "$ins ${PURPLE}($repo)${CRESET} $name ${CYAN}$version-$release${CRESET}: $desc\n"
unset repo desc name version release build
done
unset out
done
if [ ! "$found" ]; then
msg "No matching package found."
fi
}
scratch_cache() { scratch_cache() {
needroot "Clear old caches" needroot "Clear old caches"
@@ -1124,6 +1151,7 @@ Options:
unlock <ports> unlock locked ports unlock <ports> unlock locked ports
trigger [ports] run system trigger trigger [ports] run system trigger
sync update ports database sync update ports database
search <pattern> find ports in repo
outdate print outdated ports outdate print outdated ports
cache print and clear old pkg and src caches cache print and clear old pkg and src caches
integrity check installed port integrity integrity check installed port integrity