From f3076bc94bdcd43af447d964f01444d448cac1da Mon Sep 17 00:00:00 2001 From: Akira Ohgaki <akiraohgaki@gmail.com> Date: Mon, 17 Oct 2016 03:26:30 +0900 Subject: [PATCH] Add installFile() method --- src/utility/package.cpp | 112 +++++++++++++++++++++++----------------- src/utility/package.h | 5 +- 2 files changed, 67 insertions(+), 50 deletions(-) diff --git a/src/utility/package.cpp b/src/utility/package.cpp index 698ca55..a8ca8e1 100644 --- a/src/utility/package.cpp +++ b/src/utility/package.cpp @@ -9,6 +9,70 @@ namespace Utility { Package::Package(QObject *parent) : QObject(parent) {} +bool Package::installProgram(const QString &path, const QString &targetPath) +{ + QProcess process; + QString program = "install"; + QStringList arguments; + arguments << "-m" << "755" << "-p" << path << targetPath; + + process.start(program, arguments); + + if (process.waitForFinished()) { + return true; + } + + return false; +} + +bool Package::installFile(const QString &path, const QString &targetPath) +{ + QProcess process; + QString program = "install"; + QStringList arguments; + arguments << "-m" << "644" << "-p" << path << targetPath; + + process.start(program, arguments); + + if (process.waitForFinished()) { + return true; + } + + return false; +} + +bool Package::installPlasmapkg(const QString &path, const QString &type) +{ + QProcess process; + QString program = "plasmapkg2"; // Use plasmapkg2 for now + QStringList arguments; + arguments << "-t" << type << "-i" << path; + + process.start(program, arguments); + + if (process.waitForFinished()) { + return true; + } + + return false; +} + +bool Package::uninstallPlasmapkg(const QString &path, const QString &type) +{ + QProcess process; + QString program = "plasmapkg2"; // Use plasmapkg2 for now + QStringList arguments; + arguments << "-t" << type << "-r" << path; + + process.start(program, arguments); + + if (process.waitForFinished()) { + return true; + } + + return false; +} + bool Package::uncompressArchive(const QString &path, const QString &targetDir) { QJsonObject archiveTypes; @@ -69,52 +133,4 @@ bool Package::uncompressArchive(const QString &path, const QString &targetDir) return false; } -bool Package::installPlasmapkg(const QString &path, const QString &type) -{ - QProcess process; - QString program = "plasmapkg2"; // Use plasmapkg2 for now - QStringList arguments; - arguments << "-t" << type << "-i" << path; - - process.start(program, arguments); - - if (process.waitForFinished()) { - return true; - } - - return false; -} - -bool Package::uninstallPlasmapkg(const QString &path, const QString &type) -{ - QProcess process; - QString program = "plasmapkg2"; // Use plasmapkg2 for now - QStringList arguments; - arguments << "-t" << type << "-r" << path; - - process.start(program, arguments); - - if (process.waitForFinished()) { - return true; - } - - return false; -} - -bool Package::installProgram(const QString &path, const QString &targetPath) -{ - QProcess process; - QString program = "install"; - QStringList arguments; - arguments << "-D" << "-m" << "755" << path << targetPath; - - process.start(program, arguments); - - if (process.waitForFinished()) { - return true; - } - - return false; -} - } // namespace Utility diff --git a/src/utility/package.h b/src/utility/package.h index a3a0ae1..b8c0701 100644 --- a/src/utility/package.h +++ b/src/utility/package.h @@ -12,10 +12,11 @@ class Package : public QObject public: explicit Package(QObject *parent = 0); - static bool uncompressArchive(const QString &path, const QString &targetDir); + static bool installProgram(const QString &path, const QString &targetPath); + static bool installFile(const QString &path, const QString &targetPath); static bool installPlasmapkg(const QString &path, const QString &type = "plasmoid"); static bool uninstallPlasmapkg(const QString &path, const QString &type = "plasmoid"); - static bool installProgram(const QString &path, const QString &targetPath); + static bool uncompressArchive(const QString &path, const QString &targetDir); }; } // namespace Utility -- GitLab