Merge commit 'a8359696caf07b81b85db8acad2d3f44720d07fa' into calamares
This is the bugfix part (rather than the "clean up this widgets mess") of issue-1573, ensuring that the LookAndFeelPackage setting is saved to the target system config file.
This commit is contained in:
commit
dda2e1f29f
@ -14,36 +14,30 @@
|
||||
#include "utils/CalamaresUtilsSystem.h"
|
||||
#include "utils/Logger.h"
|
||||
|
||||
#ifdef WITH_KCONFIG
|
||||
#include <KConfigGroup>
|
||||
#include <KSharedConfig>
|
||||
#endif
|
||||
|
||||
PlasmaLnfJob::PlasmaLnfJob( const QString& lnfPath, const QString& id )
|
||||
: m_lnfPath( lnfPath )
|
||||
, m_id( id )
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
PlasmaLnfJob::~PlasmaLnfJob() {}
|
||||
|
||||
|
||||
QString
|
||||
PlasmaLnfJob::prettyName() const
|
||||
{
|
||||
return tr( "Plasma Look-and-Feel Job" );
|
||||
}
|
||||
|
||||
QString
|
||||
PlasmaLnfJob::prettyStatusMessage() const
|
||||
{
|
||||
return prettyName();
|
||||
}
|
||||
|
||||
|
||||
Calamares::JobResult
|
||||
PlasmaLnfJob::exec()
|
||||
{
|
||||
cDebug() << "Plasma Look-and-Feel Job";
|
||||
|
||||
auto system = CalamaresUtils::System::instance();
|
||||
Calamares::GlobalStorage* gs = Calamares::JobQueue::instance()->globalStorage();
|
||||
auto* system = CalamaresUtils::System::instance();
|
||||
auto* gs = Calamares::JobQueue::instance()->globalStorage();
|
||||
|
||||
QStringList command( { "sudo",
|
||||
"-E",
|
||||
@ -59,8 +53,20 @@ PlasmaLnfJob::exec()
|
||||
|
||||
int r = system->targetEnvCall( command );
|
||||
if ( r )
|
||||
{
|
||||
return Calamares::JobResult::error( tr( "Could not select KDE Plasma Look-and-Feel package" ),
|
||||
tr( "Could not select KDE Plasma Look-and-Feel package" ) );
|
||||
}
|
||||
|
||||
#ifdef WITH_KCONFIG
|
||||
// This is a workaround for lookandfeeltool **not** writing
|
||||
// the LookAndFeelPackage key in kdeglobals; this happens
|
||||
// with the lnftool and Plasma 5.20 (possibly other combinations
|
||||
// as well).
|
||||
QString targetConfig = system->targetPath( "/home/" + gs->value( "username" ).toString() + "/.config/kdeglobals" );
|
||||
KConfigGroup cg( KSharedConfig::openConfig( targetConfig ), "KDE" );
|
||||
cg.writeEntry( "LookAndFeelPackage", m_id );
|
||||
#endif
|
||||
|
||||
return Calamares::JobResult::ok();
|
||||
}
|
||||
|
@ -24,7 +24,6 @@ public:
|
||||
~PlasmaLnfJob() override;
|
||||
|
||||
QString prettyName() const override;
|
||||
QString prettyStatusMessage() const override;
|
||||
|
||||
Calamares::JobResult exec() override;
|
||||
|
||||
|
@ -14,10 +14,6 @@
|
||||
#include "utils/PluginFactory.h"
|
||||
#include "viewpages/ViewStep.h"
|
||||
|
||||
#include <QObject>
|
||||
#include <QUrl>
|
||||
#include <QVariantMap>
|
||||
|
||||
class PlasmaLnfPage;
|
||||
|
||||
class PLUGINDLLEXPORT PlasmaLnfViewStep : public Calamares::ViewStep
|
||||
|
Loading…
Reference in New Issue
Block a user