[libcalamaresui] WIP: Use KOSRelease and KMacroExpander in branding
- allows you to use -- at runtime -- values from os-release in the branding file. - WIP because the only machine I have with sufficiently new KF5 is the FreeBSD box.
This commit is contained in:
parent
92d0e71029
commit
fbbbe63642
@ -34,6 +34,11 @@
|
|||||||
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
|
#ifdef WITH_KOSRelease
|
||||||
|
#include <KMacroExpander>
|
||||||
|
#include <KOSRelease>
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace Calamares
|
namespace Calamares
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -146,9 +151,36 @@ Branding::Branding( const QString& brandingFilePath,
|
|||||||
|
|
||||||
initSimpleSettings( doc );
|
initSimpleSettings( doc );
|
||||||
|
|
||||||
|
#ifdef WITH_KOSRelease
|
||||||
|
KOSRelease relInfo;
|
||||||
|
QHash<QString, QString> relMap;
|
||||||
|
relMap << "NAME" << relInfo.name()
|
||||||
|
<< "VERSION" << relInfo.version()
|
||||||
|
<< "ID" << relInfo.id()
|
||||||
|
<< "ID_LIKE" << relInfo.idLike()
|
||||||
|
<< "VERSION_CODENAME" << relInfo.versionCodename()
|
||||||
|
<< "VERSION_ID" << relInfo.versionId()
|
||||||
|
<< "PRETTY_NAME" << relInfo.prettyName()
|
||||||
|
<< "HOME_URL" << relInfo.homeUrl()
|
||||||
|
<< "DOCUMENTATION_URL" << relInfo.documentationUrl()
|
||||||
|
<< "SUPPORT_URL" << relInfo.supportUrl()
|
||||||
|
<< "BUG_REPORT_URL" << relInfo.bugReportUrl()
|
||||||
|
<< "PRIVACY_POLICY_URL" << relInfo.privacyPolicyUrl()
|
||||||
|
<< "BUILD_ID" << relInfo.buildId()
|
||||||
|
<< "VARIANT" << relInfo.variant()
|
||||||
|
<< "VARIANT_ID" << relInfo.variantId()
|
||||||
|
<< "LOGO" << relInfo.logo();
|
||||||
|
|
||||||
|
|
||||||
|
loadStrings( m_strings, doc, "strings",
|
||||||
|
[&]( const QString& s ) -> QString { return KMacroExpander::expandMacros{ s, relMap, '@' ); }
|
||||||
|
);
|
||||||
|
#else
|
||||||
|
// No support for substituting in os-release values.
|
||||||
loadStrings( m_strings, doc, "strings",
|
loadStrings( m_strings, doc, "strings",
|
||||||
[]( const QString& s ) -> QString { return s; }
|
[]( const QString& s ) -> QString { return s; }
|
||||||
);
|
);
|
||||||
|
#endif
|
||||||
loadStrings( m_images, doc, "images",
|
loadStrings( m_images, doc, "images",
|
||||||
[&]( const QString& s ) -> QString
|
[&]( const QString& s ) -> QString
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user