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..."
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" \
| sort -k 3 > .pkgfiles
}

View File

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

64
scratch
View File

@@ -477,16 +477,17 @@ scratch_build() {
return 1
}
for pkg in $PKGNAME; do
cd $(getportpath $pkg) || {
echo "Package '$P' not found."
ppath=$(getportpath $pkg) || {
echo "Package '$pkg' not found."
return 1
}
settermtitle "Building $P..."
cd $ppath
settermtitle "Building $pkg..."
pkgbuild $OPTS || {
settermtitle "Building $P failed"
settermtitle "Building $pkg failed."
return 1
}
settermtitle "Building $P done"
settermtitle "Building $pkg done."
cd - >/dev/null
done
}
@@ -528,9 +529,9 @@ scratch_install() {
cd - >/dev/null
fi
done
settermtitle "Triggering install hook"
settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "Reinstalling done"
settermtitle "Reinstalling done."
return "$error"
fi
if [ "$NO_DEP" = 1 ]; then
@@ -552,9 +553,9 @@ scratch_install() {
cd - >/dev/null
fi
done
settermtitle "Triggering install hook"
settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "Installing done"
settermtitle "Installing done."
return "$error"
fi
for i in $PKGNAME; do
@@ -603,9 +604,9 @@ scratch_install() {
fi
unset portpathh
done
settermtitle "Triggering install hook"
settermtitle "Triggering install hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) installed"
settermtitle "$count/$total package(s) installed."
return "$error"
fi
}
@@ -656,9 +657,9 @@ scratch_remove() {
break
}
done
settermtitle "Triggering remove hook"
settermtitle "Triggering remove hook..."
post_triggers
settermtitle "$pkgcount package(s) removed"
settermtitle "$pkgcount package(s) removed."
}
outdatepkg() {
@@ -713,7 +714,7 @@ scratch_sysup() {
WILLINSTALL="$WILLINSTALL $d"
UPGPKG=$(( UPGPKG + 1 ))
elif ! isinstalled $d && [ "$(getportpath "$d")" ]; then
prinf "[${CYAN}n${CRESET}] $d "
printf "[${CYAN}n${CRESET}] $d "
WILLINSTALL="$WILLINSTALL $d"
NEWPKG=$(( NEWPKG + 1 ))
fi
@@ -757,9 +758,9 @@ scratch_sysup() {
cd - >/dev/null
done_pkg="$done_pkg $inst"
done
settermtitle "Triggering install hook"
settermtitle "Triggering install hook."
[ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) upgraded"
settermtitle "$count/$total package(s) upgraded."
return "$error"
}
@@ -853,9 +854,9 @@ scratch_upgrade() {
done_pkg="$done_pkg $pkg"
cd - >/dev/null
done
settermtitle "triggering upgrade hook"
settermtitle "triggering upgrade hook..."
[ "$done_pkg" ] && scratch_trigger $done_pkg
settermtitle "$count/$total package(s) upgraded"
settermtitle "$count/$total package(s) upgraded."
return "$error"
}
@@ -897,6 +898,32 @@ scratch_outdate() {
[ ! "$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() {
needroot "Clear old caches"
@@ -1124,6 +1151,7 @@ Options:
unlock <ports> unlock locked ports
trigger [ports] run system trigger
sync update ports database
search <pattern> find ports in repo
outdate print outdated ports
cache print and clear old pkg and src caches
integrity check installed port integrity