mirror of
https://gitee.com/spark-store-project/spark-store
synced 2025-07-06 21:55:59 +08:00
Adjust: Lock the deb file before the install begin to secure
Signed-off-by: shenmo <jifengshenmo@outlook.com>
This commit is contained in:
parent
a92c22f205
commit
c5e2ea040d
@ -83,7 +83,13 @@ function hash_check() {
|
|||||||
IS_SHA512SUM_CHECKED=$(cat "$PACKAGES_DATA_PATH" | grep "$DEB_SHA512SUM")
|
IS_SHA512SUM_CHECKED=$(cat "$PACKAGES_DATA_PATH" | grep "$DEB_SHA512SUM")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function lock_file(){
|
||||||
|
chattr +i "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
function unlock_file(){
|
||||||
|
chattr -i "$1"
|
||||||
|
}
|
||||||
|
|
||||||
####################################
|
####################################
|
||||||
|
|
||||||
@ -94,11 +100,7 @@ if [ $# -eq 0 ]; then
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f "$1" ]; then
|
|
||||||
echo "${TRANSHELL_CONTENT_FILE_NOT_EXIST}"
|
|
||||||
echo "OMG-IT-GOES-WRONG"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$(id -u)" != "0" ]; then
|
if [ "$(id -u)" != "0" ]; then
|
||||||
echo "${TRANSHELL_CONTENT_PLEASE_RUN_AS_ROOT}"
|
echo "${TRANSHELL_CONTENT_PLEASE_RUN_AS_ROOT}"
|
||||||
@ -106,7 +108,26 @@ if [ "$(id -u)" != "0" ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DEBPATH=$(realpath "$1")
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "${TRANSHELL_CONTENT_FILE_NOT_EXIST},Trying to redownload"
|
||||||
|
FILEPATH=$(dirname "$1")
|
||||||
|
FILENAME=$(basename "$1")
|
||||||
|
PACKAGE_NAME=$(echo "$FILENAME" | sed -r 's/^([^_]+)_.*$/\1/')
|
||||||
|
VERSION=$(echo "$FILENAME" | sed -r 's/^[^_]+_([^_]+)_.*$/\1/')
|
||||||
|
pushd ${FILEPATH}
|
||||||
|
aptss download ${PACKAGE_NAME}=${VERSION}
|
||||||
|
popd
|
||||||
|
if [ ! -f "$1" ]; then
|
||||||
|
echo "OMG-IT-GOES-WRONG"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
DEBPATH=$(realpath "$1")
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
DEBPATH=$(realpath "$1")
|
||||||
|
fi
|
||||||
|
|
||||||
|
lock_file "$DEBPATH"
|
||||||
|
|
||||||
hash_check "$DEBPATH"
|
hash_check "$DEBPATH"
|
||||||
|
|
||||||
@ -144,6 +165,8 @@ if [ ! -z "$IS_SHA512SUM_CHECKED" ]; then
|
|||||||
|
|
||||||
dpkg -i "$DEBPATH" || aptss install -yf
|
dpkg -i "$DEBPATH" || aptss install -yf
|
||||||
|
|
||||||
|
unlock_file "$DEBPATH"
|
||||||
|
|
||||||
if [ "$?" = "0" ] && [ "$2" = "--delete-after-install" ]; then
|
if [ "$?" = "0" ] && [ "$2" = "--delete-after-install" ]; then
|
||||||
if dpkg -s "$package_name" >/dev/null 2>&1; then
|
if dpkg -s "$package_name" >/dev/null 2>&1; then
|
||||||
echo "软件包已安装:$package_name"
|
echo "软件包已安装:$package_name"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user