File indexing completed on 2024-05-19 16:31:58
0001 /* 0002 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 SPDX-FileCopyrightText: 2021-2022 Harald Sitter <sitter@kde.org> 0004 */ 0005 0006 #include <KAboutData> 0007 #include <KLocalizedString> 0008 #include <KPackage/PackageLoader> 0009 #include <KPluginFactory> 0010 #include <KQuickAddons/ConfigModule> 0011 0012 #include <CommandOutputContext.h> 0013 0014 class KCMFirmwareSecurity : public KQuickAddons::ConfigModule 0015 { 0016 Q_OBJECT 0017 public: 0018 explicit KCMFirmwareSecurity(QObject *parent, const KPluginMetaData &data, const QVariantList &args) 0019 : ConfigModule(parent, data, args) 0020 { 0021 auto *about = new KAboutData(QStringLiteral("kcm_firmware_security"), 0022 i18nc("@label kcm name", "Firmware Security"), 0023 QStringLiteral("1.0"), 0024 QString(), 0025 KAboutLicense::GPL); 0026 about->addAuthor(i18n("Harald Sitter"), QString(), QStringLiteral("sitter@kde.org")); 0027 setAboutData(about); 0028 0029 KPackage::Package package = KPackage::PackageLoader::self()->loadPackage(QStringLiteral("KPackage/GenericQML")); 0030 package.setDefaultPackageRoot(QStringLiteral("kpackage/kcms")); 0031 package.setPath(about->componentName()); 0032 0033 auto outputContext = new CommandOutputContext({QStringLiteral("fwupdmgr"), QStringLiteral("aha")}, 0034 QStringLiteral("/bin/sh"), 0035 {package.path() + QStringLiteral("contents/code/fwupdmgr.sh")}, 0036 parent); 0037 qmlRegisterSingletonInstance("org.kde.kinfocenter.firmware_security.private", 1, 0, "InfoOutputContext", outputContext); 0038 } 0039 }; 0040 0041 K_PLUGIN_CLASS_WITH_JSON(KCMFirmwareSecurity, "kcm_firmware_security.json") 0042 0043 #include "main.moc"