summaryrefslogtreecommitdiffstats
path: root/src/b2qt-flashing-wizard/scriptwriter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/b2qt-flashing-wizard/scriptwriter.cpp')
-rw-r--r--src/b2qt-flashing-wizard/scriptwriter.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/b2qt-flashing-wizard/scriptwriter.cpp b/src/b2qt-flashing-wizard/scriptwriter.cpp
index 9b85c24..594aecc 100644
--- a/src/b2qt-flashing-wizard/scriptwriter.cpp
+++ b/src/b2qt-flashing-wizard/scriptwriter.cpp
@@ -32,6 +32,7 @@
ScriptWriter::ScriptWriter(QObject *parent)
: Actor(parent)
, mDebug(false)
+ , mRoot(false)
{
mProcess.setProcessChannelMode(QProcess::MergedChannels);
mDebug = qEnvironmentVariableIsSet("DEBUG");
@@ -84,17 +85,13 @@ void ScriptWriter::start()
connect(&mProcess, (void (QProcess::*)(QProcess::ProcessError))&QProcess::error, this, &ScriptWriter::processError);
connect(&mProcess, (void (QProcess::*)(int, QProcess::ExitStatus))&QProcess::finished, this, &ScriptWriter::processFinished);
- // Due to some random convenience output in the deploy scripts "set -x" has to be used to synchronize
- QStringList args = elevate() << "/bin/sh" << "-x" << mScriptName << mAdditionalArgs;
+ QStringList args;
+
+ if (mRoot)
+ args << elevate();
+ args << "/bin/sh" << "-x" << mScriptName << mAdditionalArgs;
qDebug() << "Executing" << args;
-/* QProcessEnvironment pe ;
- QString var = qgetenv("XDG_SESSION_COOKIE");
- pe.insert("XDG_SESSION_COOKIE", var);
- var = qgetenv("HOME");
- pe.insert("HOME", var);
- mProcess.setProcessEnvironment(pe);
- */
mProcess.setProcessEnvironment(QProcessEnvironment::systemEnvironment());
mProcess.start(args.takeFirst(), args);
@@ -140,3 +137,8 @@ void ScriptWriter::setAdditionalArgs(const QStringList &args)
{
mAdditionalArgs = args;
}
+
+void ScriptWriter::setRootFlag(bool value)
+{
+ mRoot = value;
+}