mirror of
https://gitee.com/spark-store-project/spark-store
synced 2025-12-15 21:32:05 +08:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| af89e64478 | |||
| 971a5dcc63 | |||
| a252e7b724 |
7
debian/changelog
vendored
7
debian/changelog
vendored
@@ -1,3 +1,10 @@
|
|||||||
|
spark-store (3.2.1) stable; urgency=medium
|
||||||
|
|
||||||
|
* 更改刷新系统源的功能
|
||||||
|
|
||||||
|
|
||||||
|
-- shenmo <shenmo@spark-app.store> Fri, 30 Jan 2022 00:00:00 +0800
|
||||||
|
|
||||||
spark-store (3.2) stable; urgency=medium
|
spark-store (3.2) stable; urgency=medium
|
||||||
|
|
||||||
* 新增 下载量统计功能
|
* 新增 下载量统计功能
|
||||||
|
|||||||
5
debian/spark-store.postinst
vendored
5
debian/spark-store.postinst
vendored
@@ -6,6 +6,11 @@ case "$1" in
|
|||||||
# config for aptss
|
# config for aptss
|
||||||
mkdir -p /etc/aptss/sources.list.d
|
mkdir -p /etc/aptss/sources.list.d
|
||||||
ln -s -f /etc/apt/sources.list /etc/aptss/sources.list
|
ln -s -f /etc/apt/sources.list /etc/aptss/sources.list
|
||||||
|
|
||||||
|
# Remove the sources.list file
|
||||||
|
if [ -e /etc/apt/sources.list.d/sparkstore.list ];then
|
||||||
|
rm /etc/apt/sources.list.d/sparkstore.list
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Check if /usr/local/bin existed
|
# Check if /usr/local/bin existed
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
|
|||||||
DAboutDialog dialog;
|
DAboutDialog dialog;
|
||||||
a.setAboutDialog(&dialog);
|
a.setAboutDialog(&dialog);
|
||||||
dialog.setLicense(QObject::tr("We publish this program under GPL V3"));
|
dialog.setLicense(QObject::tr("We publish this program under GPL V3"));
|
||||||
dialog.setVersion(DApplication::buildVersion("Version 3.2"));
|
dialog.setVersion(DApplication::buildVersion("Version 3.2.1"));
|
||||||
dialog.setProductIcon(QIcon::fromTheme("spark-store")); // 设置Logo
|
dialog.setProductIcon(QIcon::fromTheme("spark-store")); // 设置Logo
|
||||||
dialog.setProductName(QLabel::tr("Spark Store"));
|
dialog.setProductName(QLabel::tr("Spark Store"));
|
||||||
dialog.setDescription(
|
dialog.setDescription(
|
||||||
@@ -51,7 +51,7 @@ int main(int argc, char *argv[])
|
|||||||
a.setOrganizationName("spark-union");
|
a.setOrganizationName("spark-union");
|
||||||
a.setOrganizationDomain("https://www.deepinos.org/");
|
a.setOrganizationDomain("https://www.deepinos.org/");
|
||||||
a.setApplicationName("Spark Store"); //不需要翻译,否则 ~/.local/share/ 下文件夹名称也被翻译为中文
|
a.setApplicationName("Spark Store"); //不需要翻译,否则 ~/.local/share/ 下文件夹名称也被翻译为中文
|
||||||
a.setApplicationVersion(DApplication::buildVersion("3.2"));
|
a.setApplicationVersion(DApplication::buildVersion("3.2.1"));
|
||||||
a.setApplicationAcknowledgementPage("https://gitee.com/deepin-community-store/spark-store");
|
a.setApplicationAcknowledgementPage("https://gitee.com/deepin-community-store/spark-store");
|
||||||
a.setApplicationDescription(
|
a.setApplicationDescription(
|
||||||
QObject::tr(
|
QObject::tr(
|
||||||
|
|||||||
@@ -1090,77 +1090,13 @@ void Widget::on_pushButton_updateApt_clicked()
|
|||||||
ui->pushButton_updateApt->setEnabled(false);
|
ui->pushButton_updateApt->setEnabled(false);
|
||||||
ui->label_aptserver->setText(tr("Updating, please wait..."));
|
ui->label_aptserver->setText(tr("Updating, please wait..."));
|
||||||
|
|
||||||
std::fstream sourcesList, policy, update;
|
QString storeSpk = "spk://store/tools/spark-store";
|
||||||
QDir tmpdir("/tmp");
|
openUrl(storeSpk);
|
||||||
auto tmpPath = QString::fromUtf8(TMP_PATH).toStdString();
|
ui->label_aptserver->setText(tr(""));
|
||||||
bool unknownError = true;
|
|
||||||
|
|
||||||
tmpdir.mkpath("spark-store");
|
|
||||||
sourcesList.open(tmpPath + "/sparkstore.list", std::ios::out);
|
|
||||||
// 商店已经下架会替换系统库的包,优先级 policy 弃用
|
|
||||||
// policy.open(tmpPath + "/sparkstore", std::ios::out);
|
|
||||||
|
|
||||||
if(sourcesList /*&& policy*/)
|
|
||||||
{
|
|
||||||
auto serverAddr = ui->comboBox_server->currentText();
|
|
||||||
|
|
||||||
sourcesList << "deb [by-hash=force] ";
|
|
||||||
sourcesList << serverAddr.toUtf8().toStdString();
|
|
||||||
sourcesList << " /";
|
|
||||||
sourcesList.close();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* policy << "Package: *\n" << "Pin: origin *" <<
|
|
||||||
* serverAddr.mid(serverAddr.indexOf('.')).toUtf8().toStdString() << "\n" <<
|
|
||||||
* "Pin-Priority: 90"; // 降低星火源的优先级,防止从星火安装已存在的系统包,破坏依赖
|
|
||||||
* policy.close();
|
|
||||||
*/
|
|
||||||
|
|
||||||
update.open(tmpPath + "/update.sh", std::ios::out);
|
|
||||||
if(update)
|
|
||||||
{
|
|
||||||
unknownError = false;
|
|
||||||
update << "#!/bin/sh\n" <<
|
|
||||||
"mv " + tmpPath + "/sparkstore.list /etc/apt/sources.list.d/sparkstore.list && " <<
|
|
||||||
// "mv " + tmpPath + "/sparkstore /etc/apt/preferences.d/sparkstore && " <<
|
|
||||||
"apt update";
|
|
||||||
update.close();
|
|
||||||
|
|
||||||
system(("chmod +x " + tmpPath + "/update.sh").c_str());
|
|
||||||
|
|
||||||
QProcess runupdate;
|
|
||||||
runupdate.start("pkexec", QStringList() << QString::fromStdString(tmpPath + "/update.sh"));
|
|
||||||
runupdate.waitForFinished();
|
|
||||||
QString error = runupdate.readAllStandardError();
|
|
||||||
|
|
||||||
QStringList everyError = error.split("\n");
|
|
||||||
bool haveError = false;
|
|
||||||
for(int i = 0; i < everyError.size(); i++)
|
|
||||||
{
|
|
||||||
if(everyError[i].left(2) == "E:")
|
|
||||||
{
|
|
||||||
haveError = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!haveError)
|
|
||||||
{
|
|
||||||
ui->label_aptserver->setText("deb [by-hash=force] " + ui->comboBox_server->currentText().toUtf8() + " /");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ui->label_aptserver->setText(tr("Apt has reported an error. Please use apt update in terminal to locate the problem."));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(unknownError)
|
|
||||||
{
|
|
||||||
ui->label_aptserver->setText(tr("Unknown error!"));
|
|
||||||
}
|
|
||||||
|
|
||||||
ui->pushButton_updateApt->setEnabled(true);
|
ui->pushButton_updateApt->setEnabled(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Widget::on_pushButton_uninstall_clicked()
|
void Widget::on_pushButton_uninstall_clicked()
|
||||||
|
|||||||
@@ -1220,7 +1220,7 @@
|
|||||||
<string notr="true">color:#808080</string>
|
<string notr="true">color:#808080</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string><html><head/><body><p>The role of the source server is to ensure that the software is updated, and supports the use of the apt tool to get the software. We usually prefer that you use the first line as the update source, which is generally the most stable. </p></body></html></string>
|
<string><html><head/><body><p>Check update for Spark Store. </p></body></html></string>
|
||||||
</property>
|
</property>
|
||||||
<property name="wordWrap">
|
<property name="wordWrap">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
@@ -1237,7 +1237,7 @@
|
|||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QLabel" name="label_6">
|
<widget class="QLabel" name="label_6">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Source Server</string>
|
<string>Spark Store Update</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
@@ -150,7 +150,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="547"/>
|
<location filename="../src/widget.ui" line="547"/>
|
||||||
<location filename="../src/widget.cpp" line="910"/>
|
<location filename="../src/widget.cpp" line="910"/>
|
||||||
<location filename="../src/widget.cpp" line="1183"/>
|
<location filename="../src/widget.cpp" line="1119"/>
|
||||||
<source>Install</source>
|
<source>Install</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
@@ -347,11 +347,6 @@
|
|||||||
<source>Refresh</source>
|
<source>Refresh</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
|
||||||
<location filename="../src/widget.ui" line="1223"/>
|
|
||||||
<source><html><head/><body><p>The role of the source server is to ensure that the software is updated, and supports the use of the apt tool to get the software. We usually prefer that you use the first line as the update source, which is generally the most stable. </p></body></html></source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1233"/>
|
<location filename="../src/widget.ui" line="1233"/>
|
||||||
<source>Update</source>
|
<source>Update</source>
|
||||||
@@ -359,7 +354,7 @@
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1240"/>
|
<location filename="../src/widget.ui" line="1240"/>
|
||||||
<source>Source Server</source>
|
<source>Spark Store Update</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
@@ -427,6 +422,11 @@
|
|||||||
<source>Take effect when restart</source>
|
<source>Take effect when restart</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/widget.ui" line="1223"/>
|
||||||
|
<source><html><head/><body><p>Check update for Spark Store. </p></body></html></source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1334"/>
|
<location filename="../src/widget.ui" line="1334"/>
|
||||||
<source>0B</source>
|
<source>0B</source>
|
||||||
@@ -493,17 +493,7 @@
|
|||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1152"/>
|
<location filename="../src/widget.cpp" line="1123"/>
|
||||||
<source>Apt has reported an error. Please use apt update in terminal to locate the problem.</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/widget.cpp" line="1159"/>
|
|
||||||
<source>Unknown error!</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/widget.cpp" line="1187"/>
|
|
||||||
<source>Uninstall succeeded</source>
|
<source>Uninstall succeeded</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
@@ -518,12 +508,12 @@
|
|||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1209"/>
|
<location filename="../src/widget.cpp" line="1145"/>
|
||||||
<source>Temporary cache was cleaned</source>
|
<source>Temporary cache was cleaned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1291"/>
|
<location filename="../src/widget.cpp" line="1227"/>
|
||||||
<source>The URL has been copied to the clipboard</source>
|
<source>The URL has been copied to the clipboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|||||||
@@ -211,7 +211,7 @@ Nous sommes nés pour le changement.</translation>
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="547"/>
|
<location filename="../src/widget.ui" line="547"/>
|
||||||
<location filename="../src/widget.cpp" line="910"/>
|
<location filename="../src/widget.cpp" line="910"/>
|
||||||
<location filename="../src/widget.cpp" line="1183"/>
|
<location filename="../src/widget.cpp" line="1119"/>
|
||||||
<source>Install</source>
|
<source>Install</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
@@ -370,7 +370,7 @@ Nous sommes nés pour le changement.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1223"/>
|
<location filename="../src/widget.ui" line="1223"/>
|
||||||
<source><html><head/><body><p>The role of the source server is to ensure that the software is updated, and supports the use of the apt tool to get the software. We usually prefer that you use the first line as the update source, which is generally the most stable. </p></body></html></source>
|
<source><html><head/><body><p>Check update for Spark Store. </p></body></html></source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
@@ -380,7 +380,7 @@ Nous sommes nés pour le changement.</translation>
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1240"/>
|
<location filename="../src/widget.ui" line="1240"/>
|
||||||
<source>Source Server</source>
|
<source>Spark Store Update</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
@@ -557,15 +557,15 @@ Nous sommes nés pour le changement.</translation>
|
|||||||
<translation type="vanished">Redémarrez pour prendre effet</translation>
|
<translation type="vanished">Redémarrez pour prendre effet</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source><html><head/><body><p>源服务器的作用是保证软件更新,并且支持使用apt工具获取软件。通常我们更建议你使用第一个线路作为更新源,一般是最稳定的。</p></body></html></source>
|
<source><html><head/><body><p>跳转到星火应用商店主页检测更新。</p></body></html></source>
|
||||||
<translation type="vanished"><html><head/><body><p>Le rôle du serveur source est de s'assurer que le logiciel est mis à jour et prend en charge l'utilisation de l'outil apt pour obtenir le logiciel. Nous préférons généralement que vous utilisiez la première ligne comme source de mise à jour, qui est généralement la plus stable. </p></body></html></translation>
|
<translation type="vanished"><html><head/><body><p>Le rôle du serveur source est de s'assurer que le logiciel est mis à jour et prend en charge l'utilisation de l'outil apt pour obtenir le logiciel. Nous préférons généralement que vous utilisiez la première ligne comme source de mise à jour, qui est généralement la plus stable. </p></body></html></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>更新源</source>
|
<source>跳转更新</source>
|
||||||
<translation type="vanished">Mettre à jour la source APT</translation>
|
<translation type="vanished">Mettre à jour la source APT</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>更新源服务器:</source>
|
<source>星火应用商店更新检测:</source>
|
||||||
<translation type="vanished">Source APT: </translation>
|
<translation type="vanished">Source APT: </translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
@@ -676,27 +676,17 @@ Nous sommes nés pour le changement.</translation>
|
|||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1152"/>
|
<location filename="../src/widget.cpp" line="1123"/>
|
||||||
<source>Apt has reported an error. Please use apt update in terminal to locate the problem.</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/widget.cpp" line="1159"/>
|
|
||||||
<source>Unknown error!</source>
|
|
||||||
<translation type="unfinished"></translation>
|
|
||||||
</message>
|
|
||||||
<message>
|
|
||||||
<location filename="../src/widget.cpp" line="1187"/>
|
|
||||||
<source>Uninstall succeeded</source>
|
<source>Uninstall succeeded</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1209"/>
|
<location filename="../src/widget.cpp" line="1145"/>
|
||||||
<source>Temporary cache was cleaned</source>
|
<source>Temporary cache was cleaned</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1291"/>
|
<location filename="../src/widget.cpp" line="1227"/>
|
||||||
<source>The URL has been copied to the clipboard</source>
|
<source>The URL has been copied to the clipboard</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
|||||||
@@ -205,7 +205,7 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="547"/>
|
<location filename="../src/widget.ui" line="547"/>
|
||||||
<location filename="../src/widget.cpp" line="910"/>
|
<location filename="../src/widget.cpp" line="910"/>
|
||||||
<location filename="../src/widget.cpp" line="1183"/>
|
<location filename="../src/widget.cpp" line="1119"/>
|
||||||
<source>Install</source>
|
<source>Install</source>
|
||||||
<translation>安装</translation>
|
<translation>安装</translation>
|
||||||
</message>
|
</message>
|
||||||
@@ -379,19 +379,18 @@
|
|||||||
<translation type="vanished">重启商店后生效</translation>
|
<translation type="vanished">重启商店后生效</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1223"/>
|
<source><html><head/><body><p>Jump to the Spark app store home page to check for updates. </p></body></html></source>
|
||||||
<source><html><head/><body><p>The role of the source server is to ensure that the software is updated, and supports the use of the apt tool to get the software. We usually prefer that you use the first line as the update source, which is generally the most stable. </p></body></html></source>
|
<translation type="vanished"><html><head/><body><p>跳转到星火应用商店主页检测更新。</p></body></html></translation>
|
||||||
<translation><html><head/><body><p>源服务器的作用是保证软件更新,并且支持使用apt工具获取软件。通常我们更建议你使用第一个线路作为更新源,一般是最稳定的。</p></body></html></translation>
|
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1233"/>
|
<location filename="../src/widget.ui" line="1233"/>
|
||||||
<source>Update</source>
|
<source>Update</source>
|
||||||
<translation>更新源</translation>
|
<translation>跳转更新</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1240"/>
|
<location filename="../src/widget.ui" line="1240"/>
|
||||||
<source>Source Server</source>
|
<source>Spark Store Update</source>
|
||||||
<translation>更新源服务器</translation>
|
<translation>星火应用商店更新检测</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1260"/>
|
<location filename="../src/widget.ui" line="1260"/>
|
||||||
@@ -476,13 +475,18 @@
|
|||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="912"/>
|
<location filename="../src/widget.ui" line="912"/>
|
||||||
<source>Request Update</source>
|
<source>Request Update</source>
|
||||||
<translation type="unfinished">软件催更/应用反馈</translation>
|
<translation>软件催更/应用反馈</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1194"/>
|
<location filename="../src/widget.ui" line="1194"/>
|
||||||
<source>Take effect when restart</source>
|
<source>Take effect when restart</source>
|
||||||
<translation>重启商店后生效</translation>
|
<translation>重启商店后生效</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<location filename="../src/widget.ui" line="1223"/>
|
||||||
|
<source><html><head/><body><p>Check update for Spark Store. </p></body></html></source>
|
||||||
|
<translation>检查星火应用商店更新</translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.ui" line="1334"/>
|
<location filename="../src/widget.ui" line="1334"/>
|
||||||
<source>0B</source>
|
<source>0B</source>
|
||||||
@@ -518,6 +522,10 @@
|
|||||||
<source>Not Exist</source>
|
<source>Not Exist</source>
|
||||||
<translation>不存在</translation>
|
<translation>不存在</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Update finished</source>
|
||||||
|
<translation type="obsolete">更新完毕</translation>
|
||||||
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="139"/>
|
<location filename="../src/widget.cpp" line="139"/>
|
||||||
<location filename="../src/widget.cpp" line="409"/>
|
<location filename="../src/widget.cpp" line="409"/>
|
||||||
@@ -599,14 +607,12 @@
|
|||||||
<translation>正在更新,请稍候……</translation>
|
<translation>正在更新,请稍候……</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1152"/>
|
|
||||||
<source>Apt has reported an error. Please use apt update in terminal to locate the problem.</source>
|
<source>Apt has reported an error. Please use apt update in terminal to locate the problem.</source>
|
||||||
<translation>更新中发生错误,请在终端使用apt update来查看错误原因。</translation>
|
<translation type="vanished">更新中发生错误,请在终端使用apt update来查看错误原因。</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1159"/>
|
|
||||||
<source>Unknown error!</source>
|
<source>Unknown error!</source>
|
||||||
<translation>未知错误!</translation>
|
<translation type="vanished">未知错误!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Yes</source>
|
<source>Yes</source>
|
||||||
@@ -656,17 +662,17 @@ Click yes to continue.</source>
|
|||||||
<translation type="vanished">服务器未知错误</translation>
|
<translation type="vanished">服务器未知错误</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1187"/>
|
<location filename="../src/widget.cpp" line="1123"/>
|
||||||
<source>Uninstall succeeded</source>
|
<source>Uninstall succeeded</source>
|
||||||
<translation>卸载成功</translation>
|
<translation>卸载成功</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1209"/>
|
<location filename="../src/widget.cpp" line="1145"/>
|
||||||
<source>Temporary cache was cleaned</source>
|
<source>Temporary cache was cleaned</source>
|
||||||
<translation>缓存目录已清空</translation>
|
<translation>缓存目录已清空</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../src/widget.cpp" line="1291"/>
|
<location filename="../src/widget.cpp" line="1227"/>
|
||||||
<source>The URL has been copied to the clipboard</source>
|
<source>The URL has been copied to the clipboard</source>
|
||||||
<translation>链接已复制到剪贴板</translation>
|
<translation>链接已复制到剪贴板</translation>
|
||||||
</message>
|
</message>
|
||||||
|
|||||||
Reference in New Issue
Block a user