mirror of
https://gitee.com/spark-store-project/spark-store
synced 2025-12-15 21:32:05 +08:00
Compare commits
18 Commits
3.2.1
...
3.2.4test1
| Author | SHA1 | Date | |
|---|---|---|---|
| 085eddd66f | |||
| 30860802dd | |||
| 30f36ff35d | |||
|
|
81993625ba | ||
| 87b68aca1e | |||
| 10125c5816 | |||
| 21d33ec347 | |||
| ad57aa26ff | |||
| 8902c81b9e | |||
| e269e6ca57 | |||
| aff593eba8 | |||
| beaeac60a3 | |||
| 11d68fb4b5 | |||
| e7680fe2a0 | |||
| 8741973cca | |||
| 8e3787ab07 | |||
| f7d07e0bf9 | |||
| 9e4df5c5c2 |
@@ -26,7 +26,7 @@
|
||||
Deepin V20/UOS 21 系统下, 安装依赖
|
||||
|
||||
```shell
|
||||
sudo apt install git qt5-default debhelper pkg-config qtchooser libqt5core5a libqt5gui5 libqt5widgets5 libqt5network5 libqt5concurrent5 libdtkcore-dev libdtkgui-dev libdtkwidget-dev qttools5-private-dev libnotify-dev qtwebengine5-dev
|
||||
sudo apt install git qt5-default debhelper pkg-config qtchooser libqt5core5a libqt5gui5 libqt5widgets5 libqt5network5 libqt5concurrent5 libdtkcore-dev libdtkgui-dev libdtkwidget-dev qttools5-private-dev libnotify-dev qtwebengine5-dev fakeroot
|
||||
|
||||
```
|
||||
|
||||
|
||||
22
debian/changelog
vendored
22
debian/changelog
vendored
@@ -1,3 +1,25 @@
|
||||
spark-store (3.2.4) stable; urgency=medium
|
||||
|
||||
* 客户端更新时不关闭免密码登录
|
||||
* UOS合并正常aptss中
|
||||
|
||||
|
||||
-- shenmo <shenmo@spark-app.store> Fri, 30 Jan 2022 00:00:00 +0800
|
||||
|
||||
spark-store (3.2.3) stable; urgency=medium
|
||||
|
||||
* 客户端异常退出时仍然占用资源问题修复
|
||||
* 降低dtk依赖版本,Debian 11 stable可直接安装
|
||||
|
||||
-- shenmo <shenmo@spark-app.store> Fri, 30 Jan 2022 00:00:00 +0800
|
||||
|
||||
spark-store (3.2.2) stable; urgency=medium
|
||||
|
||||
* aptss will now refresh the system source before doing install, policy....etc
|
||||
* 启动客户端GPU加速支持
|
||||
|
||||
-- shenmo <shenmo@spark-app.store> Fri, 30 Jan 2022 00:00:00 +0800
|
||||
|
||||
spark-store (3.2.1) stable; urgency=medium
|
||||
|
||||
* 更改刷新系统源的功能
|
||||
|
||||
6
debian/control
vendored
6
debian/control
vendored
@@ -11,9 +11,9 @@ Build-Depends:
|
||||
libqt5widgets5,
|
||||
libqt5network5,
|
||||
libqt5concurrent5,
|
||||
libdtkcore-dev(>=5.2),
|
||||
libdtkgui-dev(>=5.2),
|
||||
libdtkwidget-dev(>=5.2),
|
||||
libdtkcore-dev(>=5.0),
|
||||
libdtkgui-dev(>=5.0),
|
||||
libdtkwidget-dev(>=5.0),
|
||||
qttools5-private-dev,
|
||||
libnotify-dev,
|
||||
qtwebengine5-dev
|
||||
|
||||
6
debian/spark-store.prerm
vendored
6
debian/spark-store.prerm
vendored
@@ -1,5 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ "$1" = "remove" ] || [ "$1" = "purge" ];then
|
||||
# Remove residual symbol links
|
||||
rm /usr/local/bin/spark-store
|
||||
rm /usr/local/bin/ssinstall
|
||||
@@ -39,3 +40,8 @@ fi
|
||||
|
||||
apt-key del '9D9A A859 F750 24B1 A1EC E16E 0E41 D354 A29A 440C'
|
||||
|
||||
else
|
||||
|
||||
echo "非卸载操作,不进行配置清理"
|
||||
|
||||
fi
|
||||
|
||||
@@ -6,4 +6,4 @@ Subject: spark-store_3.0.2: $(lsb_release -a | grep "Description" | sed -e "s#\t
|
||||
|
||||
$(uname -a)" | tee /tmp/spark-store-install/feedback.txt > /dev/null
|
||||
|
||||
curl -s --url "smtp://smtp.163.com" --mail-from "sparkstorefeedback@163.com" --mail-rcpt "sparkstorefeedback@163.com" --upload-file /tmp/spark-store-install/feedback.txt --user "sparkstorefeedback@163.com:YWYGLQNOPLWNNJJY"
|
||||
curl -s --url "smtp://smtp.163.com" --mail-from "${MAIL_FEEDBACK}" --mail-rcpt "${MAIL_FEEDBACK}" --upload-file /tmp/spark-store-install/feedback.txt --user "${MAIL_FEEDBACK}:${M}AIL_AUTH"
|
||||
|
||||
@@ -13,6 +13,10 @@ int main(int argc, char *argv[])
|
||||
DApplication::loadDXcbPlugin(); // 已废弃,但是对于非deepin桌面可以正常使用标题栏
|
||||
DApplication::setAttribute(Qt::AA_EnableHighDpiScaling); // 开启 Hidpi 支持
|
||||
// 程序内强制添加"-platformtheme deepin"参数喂给Qt让Qt正确使用Deepin主题修复各种奇怪样式问题
|
||||
|
||||
// 浏览器开启 GPU 支持
|
||||
qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--ignore-gpu-blacklist --enable-gpu-rasterization --enable-native-gpu-memory-buffers --enable-accelerated-video-decode");
|
||||
|
||||
QVector<char*> fakeArgs(argc + 2);
|
||||
fakeArgs[0] = argv[0];
|
||||
fakeArgs[1] = "-platformtheme";
|
||||
@@ -30,7 +34,7 @@ int main(int argc, char *argv[])
|
||||
DAboutDialog dialog;
|
||||
a.setAboutDialog(&dialog);
|
||||
dialog.setLicense(QObject::tr("We publish this program under GPL V3"));
|
||||
dialog.setVersion(DApplication::buildVersion("Version 3.2.1"));
|
||||
dialog.setVersion(DApplication::buildVersion("Version 3.2.4"));
|
||||
dialog.setProductIcon(QIcon::fromTheme("spark-store")); // 设置Logo
|
||||
dialog.setProductName(QLabel::tr("Spark Store"));
|
||||
dialog.setDescription(
|
||||
@@ -51,7 +55,7 @@ int main(int argc, char *argv[])
|
||||
a.setOrganizationName("spark-union");
|
||||
a.setOrganizationDomain("https://www.deepinos.org/");
|
||||
a.setApplicationName("Spark Store"); //不需要翻译,否则 ~/.local/share/ 下文件夹名称也被翻译为中文
|
||||
a.setApplicationVersion(DApplication::buildVersion("3.2.1"));
|
||||
a.setApplicationVersion(DApplication::buildVersion("3.2.4"));
|
||||
a.setApplicationAcknowledgementPage("https://gitee.com/deepin-community-store/spark-store");
|
||||
a.setApplicationDescription(
|
||||
QObject::tr(
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <QSettings>
|
||||
#include <QGraphicsOpacityEffect>
|
||||
#include <QtConcurrent> // 并发
|
||||
#include <QCloseEvent> // close event
|
||||
|
||||
#include <DApplication>
|
||||
#include <DGuiApplicationHelper>
|
||||
@@ -572,14 +573,14 @@ void Widget::chooseLeftMenu(int index)
|
||||
|
||||
updateUI();
|
||||
|
||||
if(index <= 12)
|
||||
if (index <= 12)
|
||||
{
|
||||
if(themeIsDark)
|
||||
if (themeIsDark)
|
||||
{
|
||||
QString darkurl = menuUrl[index].toString();
|
||||
QStringList list = darkurl.split("/");
|
||||
darkurl.clear();
|
||||
for(int i = 0; i < list.size() - 1; i++)
|
||||
for (int i = 0; i < list.size() - 1; i++)
|
||||
{
|
||||
darkurl += list[i] + "/";
|
||||
}
|
||||
@@ -687,22 +688,18 @@ void Widget::searchApp(QString text)
|
||||
}
|
||||
else
|
||||
{
|
||||
// sendNotification(tr("Spark store could only process spk:// links for now. The search feature is coming soon!"));
|
||||
// ui->webView->setUrl(QUrl("http://www.baidu.com/s?wd="+text)); // 这东西对接百度
|
||||
// ui->stackedWidget->setCurrentIndex(0);
|
||||
|
||||
// 禁止同时进行多次搜索
|
||||
if(!mutex.tryLock())
|
||||
if (!mutex.tryLock())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// 关键字搜索处理
|
||||
httpClient->get("https://search.deepinos.org.cn/appinfo/search")
|
||||
.header("content-type", "application/json")
|
||||
.queryParam("keyword", text)
|
||||
.onResponse([this](QByteArray result)
|
||||
{
|
||||
.header("content-type", "application/json")
|
||||
.queryParam("keyword", text)
|
||||
.onResponse([this](QByteArray result)
|
||||
{
|
||||
auto json = QJsonDocument::fromJson(result).array();
|
||||
if (json.empty())
|
||||
{
|
||||
@@ -711,20 +708,24 @@ void Widget::searchApp(QString text)
|
||||
mutex.unlock();
|
||||
return;
|
||||
}
|
||||
displaySearchApp(json);
|
||||
})
|
||||
.onError([this](QString errorStr)
|
||||
{
|
||||
displaySearchApp(json); })
|
||||
.onError([this](QString errorStr)
|
||||
{
|
||||
qDebug() << "请求出错:" << errorStr;
|
||||
sendNotification(QString(tr("Request Error: %1")).arg(errorStr));
|
||||
mutex.unlock();
|
||||
return;
|
||||
})
|
||||
.timeout(10 * 1000)
|
||||
.exec();
|
||||
return; })
|
||||
.timeout(10 * 1000)
|
||||
.exec();
|
||||
}
|
||||
}
|
||||
|
||||
void Widget::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
mutex.unlock();
|
||||
httpClient->deleteLater();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 展示搜索的APP信息
|
||||
*/
|
||||
@@ -1148,6 +1149,16 @@ void Widget::on_pushButton_clear_clicked() // 清空临时缓存目录
|
||||
});
|
||||
}
|
||||
|
||||
void Widget::on_pushButton_clearWebCache_clicked()
|
||||
{
|
||||
QtConcurrent::run([=]()
|
||||
{
|
||||
|
||||
QString dataLocal = QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation);
|
||||
QDir cacheDir(dataLocal );
|
||||
cacheDir.removeRecursively(); });
|
||||
}
|
||||
|
||||
quint64 Widget::dirFileSize(const QString &path)
|
||||
{
|
||||
QDir dir(path);
|
||||
|
||||
@@ -91,6 +91,7 @@ private slots:
|
||||
void on_pushButton_updateApt_clicked();
|
||||
void on_pushButton_uninstall_clicked();
|
||||
void on_pushButton_clear_clicked();
|
||||
void on_pushButton_clearWebCache_clicked();
|
||||
void on_pushButton_website_clicked();
|
||||
void on_pushButton_clicked();
|
||||
void on_btn_openDir_clicked();
|
||||
@@ -127,6 +128,7 @@ private:
|
||||
void setfoot(int);
|
||||
void updatefoot();
|
||||
void updateUI();
|
||||
void closeEvent(QCloseEvent *event);
|
||||
|
||||
quint64 dirFileSize(const QString &path);
|
||||
|
||||
|
||||
@@ -345,7 +345,7 @@
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>2</number>
|
||||
<number>3</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||
@@ -489,7 +489,7 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>903</width>
|
||||
<width>889</width>
|
||||
<height>849</height>
|
||||
</rect>
|
||||
</property>
|
||||
@@ -993,8 +993,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>869</width>
|
||||
<height>325</height>
|
||||
<width>851</width>
|
||||
<height>324</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
@@ -1123,8 +1123,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>738</width>
|
||||
<height>886</height>
|
||||
<width>889</width>
|
||||
<height>716</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_23">
|
||||
@@ -1285,7 +1285,31 @@
|
||||
<item>
|
||||
<widget class="QWidget" name="widget_10" native="true">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="3">
|
||||
<item row="2" column="0" colspan="5">
|
||||
<widget class="QLabel" name="label_12">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color:#808080</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Since the dictionary is at /tmp,It would be cleaned automatically when system reboot.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="tmp_size_ui">
|
||||
<property name="text">
|
||||
<string>0B</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0" colspan="2">
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="text">
|
||||
<string>Location:/tmp/spark-store</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="4">
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
@@ -1305,16 +1329,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="4">
|
||||
<widget class="QLabel" name="label_12">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">color:#808080</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Since the dictionary is at /tmp,It would be cleaned automatically when system reboot.</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="label_13">
|
||||
<property name="maximumSize">
|
||||
@@ -1328,17 +1342,10 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QLabel" name="tmp_size_ui">
|
||||
<item row="0" column="3">
|
||||
<widget class="QPushButton" name="pushButton_clearWebCache">
|
||||
<property name="text">
|
||||
<string>0B</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0" colspan="2">
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="text">
|
||||
<string>Location:/tmp/spark-store</string>
|
||||
<string>Clear Web Cache</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -14,6 +14,15 @@
|
||||
_APTMGR=apt
|
||||
|
||||
|
||||
####
|
||||
#
|
||||
# UOS sources auth config
|
||||
#
|
||||
#
|
||||
if grep -Eqi "UnionTech" /etc/issue || grep -Eq "UnionTech" /etc/*-release;then
|
||||
AUTH_UOS_USER="uos-https://license.chinauos.com-apt"
|
||||
AUTH_UOS_PASSWD="a=SHEDW8U8E8SDHP5A&aa=&ab=v1&ad=8c584d561897bb0cfaed06448d2c00db&ae=4d06bb476c4b49299bf61131adf74d9e&af=4&ag=UNKNOW:ec529f04c7dffb7bd5859f561259aebc&ah=000C292C00DB&b=v2&c=62b2b266c66f30000167448b&d=N7AADCAAYHAKM54KZJQKMPEBV&e=8aa2da8715ffe6f0b01c4a6bba1d8c91&f=7568a02ccfda9af6a3a4b73094daf161&g=AA2SAA&h=21.3.1&i=101&j=422f2415ea7d14119aae28d80aad4695&k=245f-5674-f133-2b01&l=93a6-0ba8-5d84-a21a&m=245f-5674-f133-2b01&n=,|&o=VMwareVirtualS|VMwareVirtualS&p=ec529f04c7dffb7bd5859f561259aebc&q=19e1fe0a654af0eccca498848d024e64&r=000C292C00DB&s=1&t=2&v=5.6.30&w=&x=6&y=-1&z=v3/vm"
|
||||
fi
|
||||
# Enable DOWNLOADBEFORE to suppress apt-fast confirmation dialog and download
|
||||
# packages directly.
|
||||
#
|
||||
@@ -54,7 +63,7 @@ DOWNLOADBEFORE=true
|
||||
#
|
||||
# Default: disabled
|
||||
#
|
||||
MIRRORS=( 'https://d.store.deepinos.org.cn/,https://d1.store.deepinos.org.cn/,https://d2.store.deepinos.org.cn/,https://d3.store.deepinos.org.cn/,https://d4.store.deepinos.org.cn/,https://d5.store.deepinos.org.cn/,http://cdn.dl.uniartisan.com:9000/deepinos/' )
|
||||
MIRRORS=( 'https://d.store.deepinos.org.cn/,https://mirrors.sdu.edu.cn/spark-store-repository/,http://cdn.dl.uniartisan.com:9000/deepinos/,https://d1.store.deepinos.org.cn/,https://d2.store.deepinos.org.cn/,https://d4.store.deepinos.org.cn/,https://d5.store.deepinos.org.cn/' )
|
||||
|
||||
|
||||
# Maximum number of connections
|
||||
@@ -68,14 +77,10 @@ _MAXNUM=5
|
||||
# Maximum number of connections per server
|
||||
# Default: 10
|
||||
#
|
||||
_MAXCONPERSRV=10
|
||||
_MAXCONPERSRV=1
|
||||
|
||||
|
||||
|
||||
# Download file using given number of connections
|
||||
# If more than N URIs are given, first N URIs are used and remaining URIs are used for backup.
|
||||
# If less than N URIs are given, those URIs are used more than once so that N connections total are made simultaneously.
|
||||
#
|
||||
_SPLITCON=8
|
||||
|
||||
|
||||
# Split size i.e. size of each piece
|
||||
@@ -93,6 +98,7 @@ _MINSPLITSZ=1M
|
||||
_PIECEALGO=default
|
||||
|
||||
|
||||
|
||||
# Downloadmanager listfile
|
||||
# You can use this value in _DOWNLOADER command. Escape with ${}: ${DLLIST}
|
||||
#
|
||||
@@ -118,7 +124,7 @@ DLLIST='/tmp/apt-fast.list'
|
||||
#
|
||||
# Default: _DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0'
|
||||
#
|
||||
_DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} -s ${_SPLITCON} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0'
|
||||
_DOWNLOADER='aria2c --no-conf -c -j ${_MAXNUM} -x ${_MAXCONPERSRV} --min-split-size=${_MINSPLITSZ} --stream-piece-selector=${_PIECEALGO} -i ${DLLIST} --connect-timeout=600 --timeout=600 -m0 --http-user ${AUTH_UOS_USER} --http-passwd ${AUTH_UOS_PASSWD}'
|
||||
|
||||
|
||||
# Download temp folder for Downloadmanager
|
||||
|
||||
42
tool/aptss
42
tool/aptss
@@ -1,11 +1,5 @@
|
||||
#/bin/bash
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if [ "$1" = "install" ] || [ "$1" = "upgrade" ] || [ "$1" = "full-upgrade" ] || [ "$1" = "download" ] ; then
|
||||
|
||||
if [ ! -e "/tmp/aptss-conf/apt-fast.conf" ];then
|
||||
###刷新apt-fast配置
|
||||
mkdir -p /tmp/aptss-conf/
|
||||
@@ -17,10 +11,35 @@ chmod -R 755 /tmp/aptss-conf
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if [ "$1" = "install" ] || [ "$1" = "upgrade" ] || [ "$1" = "full-upgrade" ] ; then
|
||||
|
||||
DEPEND=`which apt-fast`
|
||||
if [ "$DEPEND" = "" ] ; then
|
||||
echo "未安装依赖:apt-fast 开始安装"
|
||||
sudo aptss ssupdate && sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install apt-fast -y
|
||||
aptss ssupdate && bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install apt-fast -y
|
||||
fi
|
||||
|
||||
sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt update -o Dir::Etc::sourcelist="sources.list.d/sparkstore.list" -o Dir::etc::sourceparts="-" -o APT::Get::List-Cleanup="0"
|
||||
|
||||
###执行
|
||||
bwrap --dev-bind / / \
|
||||
--bind '/tmp/aptss-conf/apt-fast.conf' /etc/apt-fast.conf \
|
||||
--bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list \
|
||||
apt-fast "$@" --allow-downgrades
|
||||
|
||||
|
||||
elif [ "$1" = "download" ];then
|
||||
DEPEND=`which apt-fast`
|
||||
if [ "$DEPEND" = "" ] ; then
|
||||
echo "未安装依赖:apt-fast 开始安装"
|
||||
aptss ssupdate && bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install apt-fast -y
|
||||
fi
|
||||
|
||||
###执行
|
||||
@@ -30,6 +49,15 @@ bwrap --dev-bind / / \
|
||||
apt-fast "$@" --allow-downgrades
|
||||
|
||||
|
||||
elif [ "$1" = "policy" ] || [ "$1" = "search" ];then
|
||||
sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt update -o Dir::Etc::sourcelist="sources.list.d/sparkstore.list" -o Dir::etc::sourceparts="-" -o APT::Get::List-Cleanup="0"
|
||||
|
||||
###执行
|
||||
bwrap --dev-bind / / \
|
||||
--bind '/tmp/aptss-conf/apt-fast.conf' /etc/apt-fast.conf \
|
||||
--bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list \
|
||||
apt "$@" --allow-downgrades
|
||||
|
||||
elif [ "$1" = "ssupdate" ];then
|
||||
|
||||
mkdir -p /tmp/aptss-conf/
|
||||
|
||||
@@ -40,8 +40,6 @@ fi
|
||||
|
||||
##################apt-fast/metalink测试
|
||||
DEPEND="这里一定会安装所以放弃处理"
|
||||
isuos=`cat /etc/os-release | grep UnionTech`
|
||||
|
||||
|
||||
##############判断是否是root运行,如果是,则正常走;如果不是,则代输密码
|
||||
if [ "$(id -u)" != "0" ];then
|
||||
@@ -54,18 +52,11 @@ echo "$upass" | sudo -S aptss ssupdate && echo "$upass" | sudo -S bwrap --dev-bi
|
||||
|
||||
fi
|
||||
|
||||
if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then
|
||||
echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast"
|
||||
echo ----------------------------------------------------------------------------------
|
||||
echo "$upass" | sudo -S dpkg -i $1 || sudo aptss ssupdate && sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install -yf
|
||||
|
||||
|
||||
fi
|
||||
|
||||
if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then
|
||||
if [ "$DEPEND" != "" ]; then
|
||||
echo "检测到apt-fast,使用aptss进行多线程下载加速"
|
||||
echo ----------------------------------------------------------------------------------
|
||||
echo "$upass" | sudo -S dpkg -i $1 || sudo aptss ssupdate && sudo aptss install -yf
|
||||
echo "$upass" | sudo -S dpkg -i $1 || sudo aptss install -yf
|
||||
fi
|
||||
|
||||
|
||||
@@ -81,16 +72,11 @@ echo "未安装依赖:apt-fast 开始安装"
|
||||
aptss ssupdate && bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install apt-fast -y
|
||||
fi
|
||||
|
||||
if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then
|
||||
echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast"
|
||||
echo ----------------------------------------------------------------------------------
|
||||
dpkg -i $1 || aptss ssupdate && sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install -yf
|
||||
fi
|
||||
|
||||
if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then
|
||||
if [ "$DEPEND" != "" ]; then
|
||||
echo "检测到apt-fast,使用aptss进行多线程下载加速"
|
||||
echo ----------------------------------------------------------------------------------
|
||||
dpkg -i $1 || aptss ssupdate && aptss install -yf
|
||||
dpkg -i $1 || aptss install -yf
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@@ -8,33 +8,6 @@ echo "获取更新列表..."
|
||||
PKG_LIST="$(bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt list --upgradable -o Dir::Etc::sourcelist="sources.list.d/sparkstore.list" -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" | awk 'BEGIN {FS="/"} {print $1}' | awk NR\>1)"
|
||||
|
||||
|
||||
isuos=`cat /etc/os-release | grep UnionTech`
|
||||
if [ "$isuos" != "" ]; then ###这是确定是否为UOS 如果是
|
||||
echo "UOS中系统依赖无法使用第三方下载工具,使用apt-fast下载本体"
|
||||
|
||||
cd /var/cache/apt/archives
|
||||
for PKG_NAME in $PKG_LIST;
|
||||
do
|
||||
echo "$PKG_NAME 正在下载..."
|
||||
sudo aptss download "$PKG_NAME" -y >/dev/null 2>&1;
|
||||
done
|
||||
|
||||
echo "----开始安装"
|
||||
for PKG_NAME in $PKG_LIST;
|
||||
do
|
||||
echo "$PKG_NAME 正在更新..."
|
||||
if sudo bwrap --dev-bind / / --bind '/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list' /etc/apt/sources.list.d/sparkstore.list apt install "$PKG_NAME" -y >/dev/null 2>&1;
|
||||
then
|
||||
echo "$PKG_NAME 已更新"
|
||||
else
|
||||
echo "WARNING: $PKG_NAME 无法更新"
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
|
||||
else ###这是确定是否为UOS,如果不是
|
||||
|
||||
for PKG_NAME in $PKG_LIST;
|
||||
do
|
||||
echo "$PKG_NAME 正在更新..."
|
||||
@@ -47,6 +20,5 @@ else ###这是确定是否为UOS,如果不是
|
||||
done
|
||||
|
||||
|
||||
fi ###这是确定是否为UOS
|
||||
|
||||
fi ###这是确定是否同意
|
||||
Reference in New Issue
Block a user