Files
spark-store/tool/ssinstall
T
2022-07-02 23:25:35 +08:00

108 lines
2.9 KiB
Bash
Executable File

#!/bin/bash
#将来可能可以换成apt-metalink来直接用种子/链接下载
echo "Spark Store Install script.星火商店安装脚本"
#################检测文件是否存在
if [ $# -eq 0 ];then
echo "没有接收到参数,退出"
echo "用法:$0 deb路径"
exit
fi
if [ ! -f "$1" ]
then
echo "文件不存在"
exit 1
fi
#################root校验+要密码
if [ "$(id -u)" != "0" ]
then
echo "ssinstall需要在root下运行";
uname=`whoami`
echo "Now input the password of $uname"
read upass
################检查密码对不对
echo "$upass" | sudo -S echo "i love amber forever"
passcheck=`echo "$upass" | sudo -S echo "i love amber forever"`
if [ "$passcheck" != "i love amber forever" ];then
echo "-----------------------------------------------------"
echo "E:密码错误,退出脚本!"
exit 1
fi
fi
##################apt-fast/metalink测试
DEPEND="这里一定会安装所以放弃处理"
isuos=`cat /etc/os-release | grep UnionTech`
##############判断是否是root运行,如果是,则正常走;如果不是,则代输密码
if [ "$(id -u)" != "0" ];then
#############################无root权限时
#临时提升星火源的优先级
echo "$upass" | sudo -S sed -i 's/400/500/g' /etc/apt/preferences.d/sparkstore
IS_INSTALLED=`which apt-fast`
if [ "$IS_INSTALLED" = "" ] ; then
echo "未安装依赖:apt-fast 开始安装"
echo "$upass" | sudo -S apt install apt-fast -y
fi
if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then
echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast"
echo ----------------------------------------------------------------------------------
echo "$upass" | sudo -S dpkg -i $1 || sudo apt install -yf
fi
if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then
echo "检测到apt-fast,使用ss-apt-fast进行多线程下载加速"
echo ----------------------------------------------------------------------------------
echo "$upass" | sudo -S dpkg -i $1 || sudo ss-apt-fast install -yf
fi
echo "$upass" | sudo -S sed -i 's/500/400/g' /etc/apt/preferences.d/sparkstore
#恢复优先级
else
###########################有root权限时
#临时提升星火源的优先级
sed -i 's/400/500/g' /etc/apt/preferences.d/sparkstore
IS_INSTALLED=`which apt-fast`
if [ "$IS_INSTALLED" = "" ] ; then
echo "未安装依赖:apt-fast 开始安装"
apt install apt-fast -y
fi
if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then
echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast"
echo ----------------------------------------------------------------------------------
dpkg -i $1 || apt install -yf
fi
if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then
echo "检测到apt-fast,使用ss-apt-fast进行多线程下载加速"
echo ----------------------------------------------------------------------------------
dpkg -i $1 || ss-apt-fast install -yf
fi
sed -i 's/500/400/g' /etc/apt/preferences.d/sparkstore
#恢复优先级
fi