Compare commits
2 commits
7e4aa19c96
...
2039076720
Author | SHA1 | Date | |
---|---|---|---|
2039076720 | |||
218dbcad15 |
11 changed files with 41 additions and 41 deletions
|
@ -9,7 +9,7 @@ gitdir="/home/_portzap/ports"
|
|||
giturl="${PORTZAP_CLONEURL:-https://git.hardenedbsd.org/hardenedbsd/ports.git}"
|
||||
installdir="${PORTZAP_INSTALLDIR:-/usr/ports}"
|
||||
defaultbranch="hardenedbsd/main"
|
||||
revfile="${installdir}"/.portzap
|
||||
commitfile="${installdir}"/.portzap
|
||||
|
||||
##
|
||||
# functions
|
||||
|
@ -71,7 +71,7 @@ case $1 in
|
|||
;;
|
||||
"install")
|
||||
require_dependency git doas
|
||||
"${libexec}"/commands/portzap-install "${gitdir}" "${installdir}" "${revfile}"
|
||||
"${libexec}"/commands/portzap-install "${gitdir}" "${installdir}" "${commitfile}"
|
||||
;;
|
||||
*)
|
||||
printf "Usage: portzap COMMAND [OPTIONS]\n"
|
||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
branch=$2
|
||||
|
||||
##
|
||||
|
@ -26,12 +26,12 @@ if ! "${libexec}"/utils/isportzap-member; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -e "${gitdir}/.git" ]; then
|
||||
if [ ! -e "${repodir}/.git" ]; then
|
||||
printerr "try 'portzap clone' instead"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd "${gitdir}"
|
||||
cd "${repodir}"
|
||||
"${git}" fetch origin
|
||||
"${git}" checkout "${branch}" ||
|
||||
"${git}" checkout -t origin/"${branch}"
|
||||
|
|
|
@ -6,8 +6,8 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
giturl=$1
|
||||
gitdir=$2
|
||||
repourl=$1
|
||||
repodir=$2
|
||||
branch=$3
|
||||
|
||||
##
|
||||
|
@ -27,13 +27,13 @@ if ! "${libexec}"/utils/isportzap-member; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
if [ -e "${gitdir}/.git" ]; then
|
||||
if [ -e "${repodir}/.git" ]; then
|
||||
printerr "try 'portzap pull' instead"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
"${git}" clone "${giturl}" "${gitdir}"
|
||||
cd "${gitdir}"
|
||||
"${git}" clone "${repourl}" "${repodir}"
|
||||
cd "${repodir}"
|
||||
"${git}" config core.filemode off
|
||||
"${git}" checkout -t origin/"${branch}" > /dev/null 2>&1 || true
|
||||
printok "clone complete"
|
||||
|
|
|
@ -7,9 +7,9 @@ localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
|||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
mask=$("${libexec}"/utils/get-umask)
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
installdir=$2
|
||||
revfile=$3
|
||||
commitfile=$3
|
||||
|
||||
##
|
||||
# functions
|
||||
|
@ -23,14 +23,14 @@ if [ "$(id -u)" != "0" ]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
cd "${gitdir}"
|
||||
if [ -e "${revfile}" ]; then
|
||||
cd "${repodir}"
|
||||
if [ -e "${commitfile}" ]; then
|
||||
##
|
||||
# install update
|
||||
rev=$(cat "${revfile}")
|
||||
commit=$(cat "${commitfile}")
|
||||
"${libexec}"/utils/install/run -d "${installdir}"
|
||||
"${libexec}"/utils/install/update-deleted-files "${gitdir}" "${installdir}" "${rev}"
|
||||
"${libexec}"/utils/install/update-changed-files "${gitdir}" "${installdir}" "${rev}"
|
||||
"${libexec}"/utils/install/update-deleted-files "${repodir}" "${installdir}" "${commit}"
|
||||
"${libexec}"/utils/install/update-changed-files "${repodir}" "${installdir}" "${commit}"
|
||||
else
|
||||
##
|
||||
# install from scratch
|
||||
|
@ -52,5 +52,5 @@ else
|
|||
-exec cp -Rpv {} "${installdir}" \;
|
||||
chown -Rv root "${installdir}"
|
||||
fi
|
||||
"${git}" rev-parse HEAD > "${revfile}"
|
||||
"${git}" rev-parse HEAD > "${commitfile}"
|
||||
printok "install complete"
|
||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
|
||||
##
|
||||
# functions
|
||||
|
@ -25,12 +25,12 @@ if ! "${libexec}"/utils/isportzap-member; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -e "${gitdir}/.git" ]; then
|
||||
if [ ! -e "${repodir}/.git" ]; then
|
||||
printerr "try 'portzap clone' instead"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd "${gitdir}"
|
||||
cd "${repodir}"
|
||||
branch=$("${git}" branch --show-current)
|
||||
"${git}" pull --rebase origin "${branch}"
|
||||
printok "pull complete"
|
||||
|
|
|
@ -5,7 +5,7 @@ set -e
|
|||
# variables
|
||||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
installdir=$2
|
||||
|
||||
##
|
||||
|
@ -34,19 +34,19 @@ if [ "$(id -u)" != "0" ]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
printf "1 Remove the contents of %s\n" "${gitdir}"
|
||||
printf "1 Remove the contents of %s\n" "${repodir}"
|
||||
printf "2 Remove the contents of %s\n" "${installdir}"
|
||||
printf "3 Remove the contents of both (%s and %s)\n" "${gitdir}" "${installdir}"
|
||||
printf "3 Remove the contents of both (%s and %s)\n" "${repodir}" "${installdir}"
|
||||
printf "4 Do nothing\n"
|
||||
printf "1-4: "
|
||||
while true; do
|
||||
read -r r
|
||||
if [ "${r}" = "1" ]; then
|
||||
erase "${gitdir}"
|
||||
erase "${repodir}"
|
||||
elif [ "${r}" = "2" ]; then
|
||||
erase "${installdir}"
|
||||
elif [ "${r}" = "3" ]; then
|
||||
erase "${gitdir}"
|
||||
erase "${repodir}"
|
||||
erase "${installdir}"
|
||||
elif [ "${r}" = "4" ]; then
|
||||
break
|
||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
user=_portzap
|
||||
gitdir="${1}"
|
||||
repodir="${1}"
|
||||
|
||||
##
|
||||
# functions
|
||||
|
@ -25,12 +25,12 @@ if ! "${libexec}"/utils/isportzap-member; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -e "${gitdir}" ]; then
|
||||
if [ ! -e "${repodir}" ]; then
|
||||
printerr "try 'portzap clone' instead"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd "${gitdir}"
|
||||
cd "${repodir}"
|
||||
doas -n \
|
||||
-u "${user}" \
|
||||
/bin/sh
|
||||
|
|
|
@ -6,11 +6,11 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
commit=$2
|
||||
|
||||
##
|
||||
# main
|
||||
cd "${gitdir}"
|
||||
cd "${repodir}"
|
||||
"${git}" diff -l0 --name-only --diff-filter=A "${commit}" "HEAD"
|
||||
"${git}" diff -l0 --name-only --diff-filter=M "${commit}" "HEAD"
|
||||
|
|
|
@ -6,10 +6,10 @@ set -e
|
|||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
git="${libexec}"/utils/git/run
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
commit=$2
|
||||
|
||||
##
|
||||
# main
|
||||
cd "${gitdir}"
|
||||
cd "${repodir}"
|
||||
"${git}" diff -l0 --name-only --diff-filter=D "${commit}" "HEAD"
|
||||
|
|
|
@ -5,14 +5,14 @@ set -e
|
|||
# variables
|
||||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
installdir=$2
|
||||
rev=$3
|
||||
commit=$3
|
||||
|
||||
##
|
||||
# main
|
||||
cd "${gitdir}"
|
||||
files=$("${libexec}"/utils/git/get-changed-files "${gitdir}" "${rev}")
|
||||
cd "${repodir}"
|
||||
files=$("${libexec}"/utils/git/get-changed-files "${repodir}" "${commit}")
|
||||
for file in ${files}; do
|
||||
target="${installdir}/${file}"
|
||||
parent=$(dirname "${target}")
|
||||
|
|
|
@ -5,14 +5,14 @@ set -e
|
|||
# variables
|
||||
localbase=${LOCALBASE:-$(realpath "$(dirname "$0")"/../../../..)}
|
||||
libexec="${localbase}"/libexec/portzap
|
||||
gitdir=$1
|
||||
repodir=$1
|
||||
installdir=$2
|
||||
rev=$3
|
||||
commit=$3
|
||||
|
||||
##
|
||||
# main
|
||||
cd "${gitdir}"
|
||||
files=$("${libexec}"/utils/git/get-removed-files "${gitdir}" "${rev}")
|
||||
cd "${repodir}"
|
||||
files=$("${libexec}"/utils/git/get-removed-files "${repodir}" "${commit}")
|
||||
for file in ${files}; do
|
||||
target="${installdir}"/"${file}"
|
||||
parent=$(dirname "${target}")
|
||||
|
|
Loading…
Reference in a new issue