firmware: use PKG variable for scripting, part 1

This commit is contained in:
Franco Fichtner 2024-11-13 11:34:17 +01:00
parent 70a59f8ad3
commit 2ab6cad193
11 changed files with 33 additions and 29 deletions

View File

@ -50,7 +50,7 @@ if [ -n "${IPV4}" -a -z "${IPV4%%*.*}" ]; then
echo "Checking connectivity for host: ${HOST} -> ${IPV4}" | ${TEE} ${LOCKFILE}
(ping -4 ${POPT} ${IPV4} 2>&1) | ${TEE} ${LOCKFILE}
echo "Checking connectivity for repository (IPv4): ${URL}" | ${TEE} ${LOCKFILE}
(pkg -4 update -f 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} -4 update -f 2>&1) | ${TEE} ${LOCKFILE}
else
echo "No IPv4 address could be found for host: ${HOST}" | ${TEE} ${LOCKFILE}
fi
@ -59,7 +59,7 @@ if [ -n "${IPV6}" -a -z "${IPV6%%*:*}" ]; then
echo "Checking connectivity for host: ${HOST} -> ${IPV6}" | ${TEE} ${LOCKFILE}
(ping -6 ${POPT} ${IPV6} 2>&1) | ${TEE} ${LOCKFILE}
echo "Checking connectivity for repository (IPv6): ${URL}" | ${TEE} ${LOCKFILE}
(pkg -6 update -f 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} -6 update -f 2>&1) | ${TEE} ${LOCKFILE}
else
echo "No IPv6 address could be found for host: ${HOST}" | ${TEE} ${LOCKFILE}
fi

View File

@ -26,4 +26,6 @@
. /usr/local/opnsense/scripts/firmware/config.sh
${PKG} rquery -U "%c\n\n%e\n\nMaintainer: %m" "${1}"
PACKAGE=${1}
${PKG} rquery -U "%c\n\n%e\n\nMaintainer: %m" ${PACKAGE}

View File

@ -131,14 +131,14 @@ core_check()
return
fi
if [ -z "$(pkg query %n ${CORE})" ]; then
if [ -z "$(${PKG} query %n ${CORE})" ]; then
echo "Core package \"${CORE}\" not known to package database." | ${TEE} ${LOCKFILE}
return
fi
echo "Core package \"${CORE}\" at $(opnsense-version -v) has $(pkg query %#d ${CORE}) dependencies to check." | ${TEE} ${LOCKFILE}
echo "Core package \"${CORE}\" at $(opnsense-version -v) has $(${PKG} query %#d ${CORE}) dependencies to check." | ${TEE} ${LOCKFILE}
for DEP in $( (echo ${CORE}; pkg query %dn ${CORE}) | sort -u); do
for DEP in $( (echo ${CORE}; ${PKG} query %dn ${CORE}) | sort -u); do
if [ -z "${PROGRESS}" ]; then
echo -n "Checking packages: ." | ${TEE} ${LOCKFILE}
PROGRESS=1
@ -147,7 +147,7 @@ core_check()
fi
read REPO LVER AUTO VITA << EOF
$(pkg query "%R %v %a %V" ${DEP})
$(${PKG} query "%R %v %a %V" ${DEP})
EOF
if [ -z "${REPO}${LVER}${AUTO}${VITA}" ]; then
@ -167,7 +167,7 @@ EOF
PROGRESS=
fi
RVER=$(pkg rquery -r ${PRODUCT} %v ${DEP} 2> /dev/null)
RVER=$(${PKG} rquery -r ${PRODUCT} %v ${DEP} 2> /dev/null)
if [ -z "${RVER}" ]; then
if [ -n "${PROGRESS}" ]; then
echo | ${TEE} ${LOCKFILE}
@ -239,7 +239,7 @@ fi
if [ -z "${CMD}" -o "${CMD}" = "plugins" ]; then
echo ">>> Check installed plugins" | ${TEE} ${LOCKFILE}
PLUGINS=$(pkg query -g '%n %v' 'os-*' 2>&1)
PLUGINS=$(${PKG} query -g '%n %v' 'os-*' 2>&1)
if [ -n "${PLUGINS}" ]; then
(echo "${PLUGINS}") | ${TEE} ${LOCKFILE}
else
@ -249,7 +249,7 @@ fi
if [ -z "${CMD}" -o "${CMD}" = "locked" ]; then
echo ">>> Check locked packages" | ${TEE} ${LOCKFILE}
LOCKED=$(pkg lock -lq 2>&1)
LOCKED=$(${PKG} lock -lq 2>&1)
if [ -n "${LOCKED}" ]; then
(echo "${LOCKED}") | ${TEE} ${LOCKFILE}
else
@ -259,10 +259,10 @@ fi
if [ -z "${CMD}" -o "${CMD}" = "packages" ]; then
echo ">>> Check for missing package dependencies" | ${TEE} ${LOCKFILE}
(pkg check -dan 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} check -dan 2>&1) | ${TEE} ${LOCKFILE}
echo ">>> Check for missing or altered package files" | ${TEE} ${LOCKFILE}
(pkg check -sa 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} check -sa 2>&1) | ${TEE} ${LOCKFILE}
fi
if [ -z "${CMD}" -o "${CMD}" = "core" ]; then

View File

@ -37,18 +37,18 @@ echo "Currently running $(opnsense-version) at $(date)" >> ${LOCKFILE}
if [ "${PACKAGE#os-}" != "${PACKAGE}" ]; then
COREPKG=$(opnsense-version -n)
COREVER=$(opnsense-version -v)
REPOVER=$(pkg rquery %v ${COREPKG})
REPOVER=$(${PKG} rquery %v ${COREPKG})
# plugins must pass a version check on up-to-date core package
if [ "$(pkg version -t ${COREVER} ${REPOVER})" = "<" ]; then
if [ "$(${PKG} version -t ${COREVER} ${REPOVER})" = "<" ]; then
echo "Installation out of date. The update to ${COREPKG}-${REPOVER} is required." | ${TEE} ${LOCKFILE}
echo '***DONE***' >> ${LOCKFILE}
exit
fi
fi
(pkg install -y ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} install -y ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
(/usr/local/opnsense/scripts/firmware/register.php install ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
(pkg autoremove -y 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} autoremove -y 2>&1) | ${TEE} ${LOCKFILE}
echo '***DONE***' >> ${LOCKFILE}

View File

@ -25,12 +25,14 @@
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
. /usr/local/opnsense/scripts/firmware/config.sh
LICENSEDIR="/usr/local/share/licenses"
PACKAGE=${1}
LICENSES=$(pkg query %L ${PACKAGE})
VERSION=$(pkg query %v ${PACKAGE})
LICENSES=$(${PKG} query %L ${PACKAGE})
VERSION=$(${PKG} query %v ${PACKAGE})
IFS=', '

View File

@ -41,7 +41,7 @@ elif [ "${PACKAGE}" = "kernel" ]; then
echo "Locking kernel set" >> ${LOCKFILE}
opnsense-update -kL >> ${LOCKFILE} 2>&1
else
pkg lock -y ${PACKAGE} >> ${LOCKFILE} 2>&1
${PKG} lock -y ${PACKAGE} >> ${LOCKFILE} 2>&1
fi
echo '***DONE***' >> ${LOCKFILE}

View File

@ -58,7 +58,7 @@ elif [ "${PACKAGE}" = "kernel" ]; then
else
opnsense-revert -l ${PACKAGE} >> ${LOCKFILE} 2>&1
/usr/local/opnsense/scripts/firmware/register.php install ${PACKAGE} >> ${LOCKFILE} 2>&1
pkg autoremove -y >> ${LOCKFILE} 2>&1
${PKG} autoremove -y >> ${LOCKFILE} 2>&1
fi
if [ -n "${REBOOT}" ]; then

View File

@ -34,8 +34,8 @@ PACKAGE=${1}
echo "***GOT REQUEST TO REMOVE***" >> ${LOCKFILE}
echo "Currently running $(opnsense-version) at $(date)" >> ${LOCKFILE}
pkg remove -y ${PACKAGE} >> ${LOCKFILE} 2>&1
${PKG} remove -y ${PACKAGE} >> ${LOCKFILE} 2>&1
/usr/local/opnsense/scripts/firmware/register.php remove ${PACKAGE} >> ${LOCKFILE} 2>&1
pkg autoremove -y >> ${LOCKFILE} 2>&1
${PKG} autoremove -y >> ${LOCKFILE} 2>&1
echo '***DONE***' >> ${LOCKFILE}

View File

@ -30,5 +30,5 @@
echo "***GOT REQUEST TO AUDIT SECURITY***" >> ${LOCKFILE}
echo "Currently running $(opnsense-version) at $(date)" >> ${LOCKFILE}
(pkg audit -F 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} audit -F 2>&1) | ${TEE} ${LOCKFILE}
echo '***DONE***' >> ${LOCKFILE}

View File

@ -30,14 +30,14 @@ MUSTCHECK="yes"
for PACKAGE in $(/usr/local/sbin/pluginctl -g system.firmware.plugins | \
/usr/bin/sed 's/,/ /g'); do
if ! pkg query %n ${PACKAGE} > /dev/null; then
if ! ${PKG} query %n ${PACKAGE} > /dev/null; then
if [ -n "${MUSTCHECK}" ] ; then
COREPKG=$(opnsense-version -n)
COREVER=$(opnsense-version -v)
REPOVER=$(pkg rquery %v ${COREPKG})
REPOVER=$(${PKG} rquery %v ${COREPKG})
# plugins must pass a version check on up-to-date core package
if [ "$(pkg version -t ${COREVER} ${REPOVER})" = "<" ]; then
if [ "$(${PKG} version -t ${COREVER} ${REPOVER})" = "<" ]; then
echo "Installation out of date. The update to ${COREPKG}-${REPOVER} is required." | ${TEE} ${LOCKFILE}
break
fi
@ -45,11 +45,11 @@ for PACKAGE in $(/usr/local/sbin/pluginctl -g system.firmware.plugins | \
MUSTCHECK=
fi
(pkg install -y ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} install -y ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
(/usr/local/opnsense/scripts/firmware/register.php install ${PACKAGE} 2>&1) | ${TEE} ${LOCKFILE}
fi
done
if [ -z "${MUSTCHECK}" ]; then
(pkg autoremove -y 2>&1) | ${TEE} ${LOCKFILE}
(${PKG} autoremove -y 2>&1) | ${TEE} ${LOCKFILE}
fi

View File

@ -41,7 +41,7 @@ elif [ "${PACKAGE}" = "kernel" ]; then
echo "Unlocking kernel set" >> ${LOCKFILE}
opnsense-update -kU >> ${LOCKFILE} 2>&1
else
pkg unlock -y ${PACKAGE} >> ${LOCKFILE} 2>&1
${PKG} unlock -y ${PACKAGE} >> ${LOCKFILE} 2>&1
fi
echo '***DONE***' >> ${LOCKFILE}