rbutil: Add support for installing daily builds.

Change-Id: If2bb23adcbd4a441f18846515c609118da8c5b5e
This commit is contained in:
Dominik Riebeling 2020-11-22 16:39:56 +01:00
parent 0ea8f074ed
commit f598ef9c27
4 changed files with 16 additions and 1 deletions

View file

@ -41,6 +41,8 @@ const static struct {
{ ServerInfo::CurReleaseUrl, "release/:platform:", "" },
{ ServerInfo::RelCandidateVersion, "release-candidate/:platform:", "" },
{ ServerInfo::RelCandidateUrl, "release-candidate/:platform:", "" },
{ ServerInfo::DailyVersion, "daily/:platform:", "" },
{ ServerInfo::DailyUrl, "daily/:platform:", "" },
{ ServerInfo::CurStatus, "status/:platform:", "-1" },
{ ServerInfo::BleedingRevision, "bleeding/rev", "" },
{ ServerInfo::BleedingDate, "bleeding/timestamp", "" },
@ -83,10 +85,12 @@ QVariant ServerInfo::platformValue(enum ServerInfos info, QString platform)
switch(info) {
case CurReleaseVersion:
case RelCandidateVersion:
case DailyVersion:
value = value.toStringList().at(0);
break;
case CurReleaseUrl:
case RelCandidateUrl:
case DailyUrl:
{
QString version = value.toStringList().at(0);
if(value.toStringList().size() > 1)

View file

@ -45,6 +45,8 @@ class ServerInfo : public QObject
BleedingDate,
RelCandidateVersion,
RelCandidateUrl,
DailyVersion,
DailyUrl
};
static ServerInfo* instance();

View file

@ -124,6 +124,8 @@ void SelectiveInstallWidget::updateVersion(void)
ServerInfo::BleedingRevision).toString());
m_versions.insert(SystemInfo::BuildCandidate, ServerInfo::instance()->platformValue(
ServerInfo::RelCandidateVersion).toString());
m_versions.insert(SystemInfo::BuildDaily, ServerInfo::instance()->platformValue(
ServerInfo::DailyVersion).toString());
}
ui.selectedVersion->clear();
@ -139,6 +141,10 @@ void SelectiveInstallWidget::updateVersion(void)
ui.selectedVersion->addItem(tr("Release Candidate (Revison %1)").arg(
m_versions[SystemInfo::BuildCandidate]), SystemInfo::BuildCandidate);
}
if(!m_versions[SystemInfo::BuildDaily].isEmpty()) {
ui.selectedVersion->addItem(tr("Daily Build (%1)").arg(
m_versions[SystemInfo::BuildDaily]), SystemInfo::BuildDaily);
}
// select previously selected version
int index = ui.selectedVersion->findData(RbSettings::value(RbSettings::Build).toString());
@ -450,6 +456,9 @@ void SelectiveInstallWidget::installRockbox(void)
url = ServerInfo::instance()->platformValue(
ServerInfo::RelCandidateUrl, m_target).toString();
break;
case SystemInfo::BuildDaily:
url = ServerInfo::instance()->platformValue(
ServerInfo::DailyUrl, m_target).toString();
}
//! install build
if(m_zipinstaller != nullptr) m_zipinstaller->deleteLater();

View file

@ -42,7 +42,7 @@ manual_url=https://download.rockbox.org/daily/manual/rockbox-%MODEL%%FORMAT%
[daily]
build_url=https://download.rockbox.org/daily/%MODEL%/rockbox-%MODEL%.zip
voice_url=https://download.rockbox.org/daily/voices/%MODEL%-%LANGUAGE%.zip
voice_url=https://download.rockbox.org/daily/%MODEL%/voice-%MODEL%-%LANGUAGE%.zip
font_url=https://download.rockbox.org/daily/fonts/rockbox-fonts.zip
manual_url=https://download.rockbox.org/daily/manual/rockbox-%MODEL%%FORMAT%