From 0b65fe83974870f9215dc361ab28d7a08d31fc98 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 21:27:56 +0100 Subject: [PATCH 01/51] Olf0 strings rework (#1) * Omit two ";" and large string rework * Update strings for patchmanagerobject.cpp * Rework strings * Update dialog.qml section --- src/bin/dialog/dialog.qml | 18 +- .../patchmanagerobject.cpp | 262 +++++++++--------- translations/settings-patchmanager.ts | 60 ++-- 3 files changed, 170 insertions(+), 170 deletions(-) diff --git a/src/bin/dialog/dialog.qml b/src/bin/dialog/dialog.qml index b25f6c40..1a01d616 100644 --- a/src/bin/dialog/dialog.qml +++ b/src/bin/dialog/dialog.qml @@ -18,15 +18,15 @@ ApplicationWindow { ' \n' function show() { - console.warn("Function show is called!") + console.warn("Function show is called.") } } initialPage: Component { Page { onStatusChanged: { if (status == PageStatus.Active && !appWindow.remorseItem) { - remorse.execute(button, qsTranslate("", "Applying patches"), function() { - console.info("Accepted applying patches.") + remorse.execute(button, qsTranslate("", "Activate all Patches marked active"), function() { + console.info("Accepted activation of all Patches marked active.") dbusPm.call("loadRequest", [true]) }, 10000) appWindow.remorseItem = remorse @@ -42,7 +42,7 @@ ApplicationWindow { width: parent.width PageHeader { - title: qsTranslate("", "Apply patches") + title: qsTranslate("", "Activate all Patches marked active") } Label { @@ -50,7 +50,7 @@ ApplicationWindow { anchors.right: parent.right anchors.margins: Theme.horizontalPageMargin wrapMode: Text.WrapAtWordBoundaryOrAnywhere - text: qsTranslate("", "Patchmanager will automatically apply all patches in 10 seconds.") + text: qsTranslate("", "Patchmanager will activate all Patches marked active in 10 seconds.") } Item { @@ -63,14 +63,14 @@ ApplicationWindow { id: button width: parent.width height: parent.height - text: qsTranslate("", "Exit") + text: qsTranslate("", "Quit") onClicked: Qt.quit() enabled: false RemorseItem { id: remorse onCanceled: { - console.info("Cancelled applying patches.") + console.info("Cancelled activation of all Patches marked active.") dbusPm.call("loadRequest", [false]) Qt.quit() } @@ -133,8 +133,8 @@ ApplicationWindow { function autoApplyingFinished(success) { console.info(success) button.enabled = true - progress.label = success ? qsTranslate("", "Applied patches successfully.") - : qsTranslate("", "Failed to apply patches!") + progress.label = success ? qsTranslate("", "Successfully activated all Patches marked active.") + : qsTranslate("", "Failed to activate all Patches marked active!") } } } diff --git a/src/bin/patchmanager-daemon/patchmanagerobject.cpp b/src/bin/patchmanager-daemon/patchmanagerobject.cpp index d0579e0b..2ce61c6f 100644 --- a/src/bin/patchmanager-daemon/patchmanagerobject.cpp +++ b/src/bin/patchmanager-daemon/patchmanagerobject.cpp @@ -226,34 +226,38 @@ void PatchManagerObject::notify(const QString &patch, NotifyAction action) switch (action) { case NotifyActionSuccessApply: - summary = qApp->translate("", "Patch installed"); - body = qApp->translate("", "Patch %1 installed").arg(patch); + summary = qApp->translate("", "Patch activated"); + body = qApp->translate("", "Patch %1 activated").arg(patch); if (getToggleServices()) { body.append( ", " ); - body.append( qApp->translate("", "Services need restart!") ); + body.append( qApp->translate("", "some service should be restarted.") ); notification.setHintValue("icon", "icon-lock-warning"); - }; + } else { + body.append( "." ); + } break; case NotifyActionSuccessUnapply: - summary = qApp->translate("", "Patch removed"); - body = qApp->translate("", "Patch %1 removed").arg(patch); + summary = qApp->translate("", "Patch deactivated"); + body = qApp->translate("", "Patch %1 deactivated").arg(patch); if (getToggleServices()) { body.append( ", " ); - body.append( qApp->translate("", "Services need restart!") ); + body.append( qApp->translate("", "some service should be restarted.") ); notification.setHintValue("icon", "icon-lock-warning"); - }; + } else { + body.append( "." ); + } break; case NotifyActionFailedApply: - summary = qApp->translate("", "Failed to install patch"); - body = qApp->translate("", "Patch %1 installation failed").arg(patch); + summary = qApp->translate("", "Failed to activate Patch"); + body = qApp->translate("", "Activating Patch %1 failed!").arg(patch); break; case NotifyActionFailedUnapply: - summary = qApp->translate("", "Failed to remove patch"); - body = qApp->translate("", "Patch %1 removal failed").arg(patch); + summary = qApp->translate("", "Failed to deactivate Patch"); + body = qApp->translate("", "Deactivating Patch %1 failed!").arg(patch); break; case NotifyActionUpdateAvailable: summary = qApp->translate("", "Update available"); - body = qApp->translate("", "Patch %1 have update candidate").arg(patch); + body = qApp->translate("", "An update for Patch %1 exits.").arg(patch); remoteActions << Notification::remoteAction( QStringLiteral("default"), @@ -266,7 +270,7 @@ void PatchManagerObject::notify(const QString &patch, NotifyAction action) ); break; default: - qWarning() << Q_FUNC_INFO << "Unhandled action:" << action; + qWarning() << Q_FUNC_INFO << "Unknown, hence unhandled action" << action; } qDebug() << Q_FUNC_INFO << summary << body; @@ -314,7 +318,7 @@ void PatchManagerObject::getVersion() { qDebug() << Q_FUNC_INFO; m_osRelease = QSettings("/etc/os-release", QSettings::IniFormat).value("VERSION_ID").toString(); - qDebug() << "Received OS version:" << m_osRelease; + qDebug() << "Installed SailfishOS release is" << m_osRelease; lateInitialize(); } @@ -324,7 +328,7 @@ void PatchManagerObject::lateInitialize() QFile file (AUSMT_INSTALLED_LIST_FILE); if (file.exists()) { - qWarning() << Q_FUNC_INFO << "Found existing ausmt package list, importing applied patches list"; + qWarning() << Q_FUNC_INFO << "Found extant AUSMT package list, importing list as Patches marked active."; if (file.open(QFile::ReadOnly)) { while (!file.atEnd()) { const QString line = QString::fromLatin1(file.readLine()); @@ -336,7 +340,7 @@ void PatchManagerObject::lateInitialize() } file.close(); } - qWarning() << Q_FUNC_INFO << "Removing ausmt package list" << + qWarning() << Q_FUNC_INFO << "Removing AUSMT package list." << file.remove(); setAppliedPatches(m_appliedPatches); } @@ -345,14 +349,14 @@ void PatchManagerObject::lateInitialize() QDir ausmtBackup(AUSMT_BACKUP_DIR); QDir oldpm3cache(QStringLiteral("/var/lib/patchmanager3/patches")); if (ausmtBackup.exists()) { - qWarning() << Q_FUNC_INFO << "Found ausmt backup directory, preforming fakeroot clear"; + qWarning() << Q_FUNC_INFO << "Found AUSMT backup directory, hence cleansing fakeroot."; ausmtBackup.removeRecursively(); needClear = true; } if (oldpm3cache.exists()) { - qWarning() << Q_FUNC_INFO << "Found old backup directory, preforming fakeroot clear"; + qWarning() << Q_FUNC_INFO << "Found old backup directory, hence cleansing fakeroot."; oldpm3cache.removeRecursively(); needClear = true; @@ -373,7 +377,7 @@ void PatchManagerObject::lateInitialize() INotifyWatcher *mainWatcher = new INotifyWatcher(this); mainWatcher->addPaths({ PATCHES_DIR }); connect(mainWatcher, &INotifyWatcher::contentChanged, [this](const QString &path, bool created) { - qDebug() << Q_FUNC_INFO << "contentChanged:" << path << "created:" << created; + qDebug() << Q_FUNC_INFO << "Content in" << path << "changed; is newly created (bool):" << created; refreshPatchList(); if (m_adaptor) { emit m_adaptor->patchAltered(path, created); @@ -383,7 +387,7 @@ void PatchManagerObject::lateInitialize() // INotifyWatcher *additionalWatcher = new INotifyWatcher(this); // additionalWatcher->addPaths({ PATCHES_ADDITIONAL_DIR }); // connect(additionalWatcher, &INotifyWatcher::contentChanged, [this](const QString &path, bool created) { -// qDebug() << "contentChanged:" << path << "created:" << created; +// qDebug() << Q_FUNC_INFO << "Content in" << path << "changed; is newly created (bool):" << created; // refreshPatchList(); // }); @@ -452,20 +456,20 @@ void PatchManagerObject::doRegisterDBus() QDBusConnection connection = QDBusConnection::systemBus(); if (connection.interface()->isServiceRegistered(DBUS_SERVICE_NAME)) { - qWarning() << Q_FUNC_INFO << "Service already registered:" << DBUS_SERVICE_NAME; + qWarning() << Q_FUNC_INFO << "Already was registered D-Bus service" << DBUS_SERVICE_NAME; return; } if (!connection.registerObject(DBUS_PATH_NAME, this)) { - qCritical() << Q_FUNC_INFO << "Cannot register object:" << DBUS_PATH_NAME; + qCritical() << Q_FUNC_INFO << "Cannot register D-Bus object" << DBUS_PATH_NAME; QCoreApplication::quit(); return; } - qInfo() << Q_FUNC_INFO << "Object registered:" << DBUS_PATH_NAME; + qInfo() << Q_FUNC_INFO << "Successfully registered D-Bus object" << DBUS_PATH_NAME; if (!connection.registerService(DBUS_SERVICE_NAME)) { - qCritical() << Q_FUNC_INFO << "Cannot register D-Bus service:" << DBUS_SERVICE_NAME; + qCritical() << Q_FUNC_INFO << "Cannot register D-Bus service" << DBUS_SERVICE_NAME; QCoreApplication::quit(); return; } @@ -474,7 +478,7 @@ void PatchManagerObject::doRegisterDBus() if (qEnvironmentVariableIsSet("PM_DEBUG_EVENTFILTER")) { m_adaptor->installEventFilter(this); } - qInfo() << Q_FUNC_INFO << "Service registered:" << DBUS_SERVICE_NAME; + qInfo() << Q_FUNC_INFO << "Successfully registered D-Bus service" << DBUS_SERVICE_NAME; m_dbusRegistered = true; } @@ -537,17 +541,17 @@ void PatchManagerObject::doPrepareCache(const QString &patchName, bool apply) qDebug() << Q_FUNC_INFO << patchName << apply; if (!m_patchFiles.contains(patchName)) { - qWarning() << Q_FUNC_INFO << "Not installed:" << patchName; + qWarning() << Q_FUNC_INFO << "Patch is not installed" << patchName; return; } for (const QString &fileName : m_patchFiles.value(patchName)) { - qDebug() << Q_FUNC_INFO << "processing:" << fileName; + qDebug() << Q_FUNC_INFO << "Processing patch file" << fileName; QFileInfo fi(fileName); QDir fakeDir(QStringLiteral("%1%2").arg(s_patchmanagerCacheRoot, fi.absoluteDir().absolutePath())); if (apply && !fakeDir.exists()) { - qDebug() << Q_FUNC_INFO << "creating:" << fakeDir.absolutePath(); + qDebug() << Q_FUNC_INFO << "Creating faking directory" << fakeDir.absolutePath(); QDir::root().mkpath(fakeDir.absolutePath()); } @@ -565,7 +569,7 @@ void PatchManagerObject::doPrepareCache(const QString &patchName, bool apply) if (apply && !fi.exists()) { bool link_ret = QFile::link(fakeFileName, fi.absoluteFilePath()); - qDebug() << Q_FUNC_INFO << "linking" << fileName << "to:" << fakeFileName << link_ret; + qDebug() << Q_FUNC_INFO << "Symlinking" << fileName << "to" << fakeFileName << link_ret; continue; } @@ -595,12 +599,12 @@ void PatchManagerObject::doPrepareCache(const QString &patchName, bool apply) struct stat fileStat; if (stat(fileName.toLatin1().constData(), &fileStat) < 0) { - qWarning() << Q_FUNC_INFO << "warning!" << fileName << "could not be stat!"; + qWarning() << Q_FUNC_INFO << "Failed to stat" << fileName; continue; } bool copy_ret = QFile::copy(fileName, fakeFileName); - qDebug() << Q_FUNC_INFO << "Copying" << fileName << "to:" << fakeFileName << copy_ret; + qDebug() << Q_FUNC_INFO << "Copying" << fileName << "to" << fakeFileName << copy_ret; m_originalWatcher->addPath(fileName); chmod(fakeFileName.toLatin1().constData(), fileStat.st_mode); @@ -626,7 +630,7 @@ void PatchManagerObject::doStartLocalServer() void PatchManagerObject::initialize() { - qInfo() << Q_FUNC_INFO << "Patchmanager:" << qApp->applicationVersion(); + qInfo() << Q_FUNC_INFO << "Patchmanager version" << qApp->applicationVersion(); QTranslator *translator = new QTranslator(this); bool success = translator->load(QLocale(getLang()), @@ -634,10 +638,10 @@ void PatchManagerObject::initialize() QStringLiteral("-"), QStringLiteral("/usr/share/translations/"), QStringLiteral(".qm")); - qInfo() << Q_FUNC_INFO << "Translator loaded:" << success; + qInfo() << Q_FUNC_INFO << "Translator loaded" << success; success = qApp->installTranslator(translator); - qInfo() << Q_FUNC_INFO << "Translator installed:" << success; + qInfo() << Q_FUNC_INFO << "Translator installed" << success; m_nam = new QNetworkAccessManager(this); m_settings = new QSettings(s_newConfigLocation, QSettings::IniFormat, this); @@ -651,13 +655,13 @@ void PatchManagerObject::initialize() QFile preload(QStringLiteral("/etc/ld.so.preload")); if (preload.exists()) { - qDebug() << Q_FUNC_INFO << "ld.so.preload:"; + qDebug() << Q_FUNC_INFO << "ld.so.preload"; if (!preload.open(QFile::ReadOnly)) { - qCritical() << Q_FUNC_INFO << "Can't open ld.so.preload!"; + qCritical() << Q_FUNC_INFO << "Failed to access ld.so.preload!"; } qDebug().noquote() << Q_FUNC_INFO << preload.readAll(); } else { - qWarning() << Q_FUNC_INFO << "ld.so.preload does not exists!"; + qWarning() << Q_FUNC_INFO << "Failed to find ld.so.preload!"; } qDebug() << Q_FUNC_INFO << PM_APPLY; @@ -665,7 +669,7 @@ void PatchManagerObject::initialize() if (pa.exists()) { qDebug() << Q_FUNC_INFO << pa.permissions(); } else { - qWarning() << Q_FUNC_INFO << "Does not exists!"; + qWarning() << Q_FUNC_INFO << "Failed to access pm_apply!"; } qDebug() << Q_FUNC_INFO << PM_UNAPPLY; @@ -673,7 +677,7 @@ void PatchManagerObject::initialize() if (pu.exists()) { qDebug() << Q_FUNC_INFO << pu.permissions(); } else { - qWarning() << Q_FUNC_INFO << "Does not exists!"; + qWarning() << Q_FUNC_INFO << "Failed to access pm_unapply!"; } if (!QFileInfo::exists(s_newConfigLocation) && QFileInfo::exists(s_oldConfigLocation)) { @@ -685,7 +689,7 @@ void PatchManagerObject::initialize() } if (Q_UNLIKELY(qEnvironmentVariableIsEmpty("DBUS_SESSION_BUS_ADDRESS"))) { - qCritical() << Q_FUNC_INFO << "Session bus address is not set! Please check environment configuration!"; + qCritical() << Q_FUNC_INFO << "D-Bus session address is not set! Please check the environment configuration."; qDebug() << Q_FUNC_INFO << "Injecting DBUS_SESSION_BUS_ADDRESS..."; qputenv("DBUS_SESSION_BUS_ADDRESS", QByteArrayLiteral("unix:path=/run/user/100000/dbus/user_bus_socket")); } @@ -705,7 +709,7 @@ void PatchManagerObject::initialize() } else { m_sbus = test; m_sessionBusConnector->stop(); - qDebug() << Q_FUNC_INFO << "Connected to session bus!"; + qDebug() << Q_FUNC_INFO << "Successfully connected to D-Bus session bus."; m_sbus.connect(QString(), QStringLiteral("/org/freedesktop/systemd1/unit/lipstick_2eservice"), @@ -741,12 +745,12 @@ void PatchManagerObject::initialize() && m_localServer->serverError() == QAbstractSocket::AddressInUseError // because of AddressInUseError && QFileInfo::exists(s_patchmanagerSocket) // socket file already exists && QFile::remove(s_patchmanagerSocket)) { // and successfully removed it - qWarning() << Q_FUNC_INFO << "Removed old stuck socket"; - listening = m_localServer->listen(s_patchmanagerSocket); // try to start lisening again + qWarning() << Q_FUNC_INFO << "Successfully removed old, stale socket."; + listening = m_localServer->listen(s_patchmanagerSocket); // try to start listening again } - qDebug() << Q_FUNC_INFO << "Server listening:" << listening; + qDebug() << Q_FUNC_INFO << "Local server listening (bool):" << listening; if (!listening) { - qCritical() << Q_FUNC_INFO << "Server error:" << m_localServer->serverError() << m_localServer->errorString(); + qCritical() << Q_FUNC_INFO << "Local server error:" << m_localServer->serverError() << m_localServer->errorString(); } }, Qt::DirectConnection); m_localServer->moveToThread(m_serverThread); @@ -828,7 +832,7 @@ void PatchManagerObject::resetSystem() QStringList patchedFiles; QDir patchesDir(PATCHES_DIR); for (const QString &patchFolder : patchesDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot)) { - qDebug() << Q_FUNC_INFO << "Processing patch:" << patchFolder; + qDebug() << Q_FUNC_INFO << "Processing Patch" << patchFolder; QFile patchFile(QStringLiteral("%1/%2/unified_diff.patch").arg(PATCHES_DIR, patchFolder)); if (!patchFile.exists() || !patchFile.open(QFile::ReadOnly)) { continue; @@ -851,7 +855,7 @@ void PatchManagerObject::resetSystem() } } if (!patchedFiles.contains(path)) { - qDebug() << Q_FUNC_INFO << "Found patched file:" << path; + qDebug() << Q_FUNC_INFO << "Found patched file" << path; patchedFiles.append(path); } } @@ -859,7 +863,7 @@ void PatchManagerObject::resetSystem() QStringList packages; for (const QString &file : patchedFiles) { - qDebug() << Q_FUNC_INFO << "Processing file:" << file; + qDebug() << Q_FUNC_INFO << "Processing patched file" << file; QProcess rpmProc; rpmProc.start(BIN_RPM, { QStringLiteral("-qf"), QStringLiteral("--qf"), QStringLiteral("%{NAME}"), file }); @@ -870,33 +874,33 @@ void PatchManagerObject::resetSystem() if (package.isEmpty()) { continue; } else if (!packages.contains(package)) { - qDebug() << Q_FUNC_INFO << "Found package to reinstall:" << package; + qDebug() << Q_FUNC_INFO << "Found RPM package to reinstall:" << package; packages.append(package); } } if (packages.isEmpty()) { - qDebug() << Q_FUNC_INFO << "Nothing to reinstall!"; + qDebug() << Q_FUNC_INFO << "Empty RPM package, hence nothing to reinstall."; QCoreApplication::exit(0); return; } - qDebug() << Q_FUNC_INFO << "Refreshing repositories..."; + qDebug() << Q_FUNC_INFO << "Refreshing repositories."; QProcess refreshProc; refreshProc.start(BIN_PKCON, { QStringLiteral("refresh") }); refreshProc.waitForFinished(-1); for (const QString &package : packages) { - qDebug() << Q_FUNC_INFO << "Reinstalling:" << package; + qDebug() << Q_FUNC_INFO << "Reinstalling RPM package" << package; QProcess pkconProc; pkconProc.start(BIN_PKCON, { QStringLiteral("install"), QStringLiteral("-y"), package }); pkconProc.waitForFinished(-1); if (pkconProc.exitCode() == 0) { - qDebug() << Q_FUNC_INFO << "Reinstalled!"; + qDebug() << Q_FUNC_INFO << "Successfully reinstalled RPM package."; } else { - qDebug() << Q_FUNC_INFO << "Problem while reinstalling!"; + qDebug() << Q_FUNC_INFO << "Failed to reinstall RPM package!"; } } @@ -908,13 +912,13 @@ void PatchManagerObject::clearFakeroot() qDebug() << Q_FUNC_INFO; eraseRecursively(s_patchmanagerCacheRoot); - qDebug() << Q_FUNC_INFO << "Directory" << s_patchmanagerCacheRoot << "is empty:" << + qDebug() << Q_FUNC_INFO << "Directory" << s_patchmanagerCacheRoot << "is cleansed (bool):" << QDir::root().rmpath(s_patchmanagerCacheRoot); - qDebug() << Q_FUNC_INFO << "Directory" << PATCHES_ADDITIONAL_DIR << "is empty:" << + qDebug() << Q_FUNC_INFO << "Directory" << PATCHES_ADDITIONAL_DIR << "is cleansed (bool):" << QDir(PATCHES_ADDITIONAL_DIR).removeRecursively(); - qDebug() << Q_FUNC_INFO << "Making clean cache:" << + qDebug() << Q_FUNC_INFO << "Creating a clean cache directory (bool):" << QDir::root().mkpath(s_patchmanagerCacheRoot); } @@ -937,7 +941,7 @@ void PatchManagerObject::process() return; } else if (args.count() > 1) { QDBusConnection connection = QDBusConnection::systemBus(); - qDebug() << Q_FUNC_INFO << "Have arguments, sending dbus message and quit"; + qDebug() << Q_FUNC_INFO << "Has arguments, sending D-Bus message and quit."; QString method; QVariantList data; @@ -1043,12 +1047,12 @@ bool PatchManagerObject::unapplyAllPatches() clearFakeroot(); - qDebug() << Q_FUNC_INFO << "Toggle restart services..."; + qDebug() << Q_FUNC_INFO << "Triggering service restart."; for (const QString &appliedPatch : m_appliedPatches) { patchToggleService(appliedPatch); } - qDebug() << Q_FUNC_INFO << "Resetting variables..."; + qDebug() << Q_FUNC_INFO << "Resetting variables."; m_appliedPatches.clear(); setAppliedPatches(m_appliedPatches); @@ -1343,7 +1347,7 @@ void PatchManagerObject::loadRequest(bool apply) qDebug() << Q_FUNC_INFO << apply; if (getLoaded()) { - qWarning() << Q_FUNC_INFO << "Server thread already working!"; + qWarning() << Q_FUNC_INFO << "Server thread is already running."; return; } @@ -1365,7 +1369,7 @@ void PatchManagerObject::lipstickChanged(const QString &state) qDebug() << Q_FUNC_INFO << state; if (!getLoaded() && !m_failed && !getSettings(QStringLiteral("applyOnBoot"), false).toBool()) { - qDebug() << Q_FUNC_INFO << "Calling patch applier after boot"; + qDebug() << Q_FUNC_INFO << "Automatically activating all Patches marked active after SailfishOS booted."; QTimer::singleShot(20000, this, [this](){ QDBusMessage showPatcher = QDBusMessage::createMethodCall(QStringLiteral("org.SfietKonstantin.patchmanager"), QStringLiteral("/"), @@ -1416,8 +1420,8 @@ QString PatchManagerObject::getOsVersion() const // m_appliedPatches.insert(patch.patch); // } // } else { -// qDebug() << "Issue with patch" << patch.patch << "Can apply" << canApply -// << "Can unapply" << canUnapply; +// qDebug() << "Issue with patch" << patch.patch << "Can apply:" << canApply +// << "Can unapply:" << canUnapply; // } // } @@ -1442,10 +1446,10 @@ void PatchManagerObject::onLipstickChanged(const QString &, const QVariantMap &c const QString activeState = changedProperties.value(QStringLiteral("ActiveState"), QStringLiteral("unknown")).toString(); qDebug() << Q_FUNC_INFO << activeState; if (activeState == QStringLiteral("failed")) { - qInfo() << Q_FUNC_INFO << "Detected lipstick crash, deactivating all patches"; + qInfo() << Q_FUNC_INFO << "Detected lipstick crash, hence deactivating all Patches."; unapplyAllPatches(); } else if (activeState == QStringLiteral("active") && !getLoaded() && !m_failed && !getSettings(QStringLiteral("applyOnBoot"), false).toBool()) { - qInfo() << Q_FUNC_INFO << "Calling patch applier after boot"; + qInfo() << Q_FUNC_INFO << "Automatically activating all Patches marked active."; QTimer::singleShot(5000, this, [this](){ QDBusMessage showPatcher = QDBusMessage::createMethodCall(QStringLiteral("org.SfietKonstantin.patchmanager"), QStringLiteral("/"), @@ -1462,7 +1466,7 @@ void PatchManagerObject::onOsUpdateProgress(int progress) return; } - qInfo() << Q_FUNC_INFO << "Detected os update, disabling patches!"; + qInfo() << Q_FUNC_INFO << "Detected SailfishOS update in progress, hence deactivating all Patches."; unapplyAllPatches(); } @@ -1476,7 +1480,7 @@ void PatchManagerObject::startReadingLocalServer() { QLocalSocket *clientConnection = m_localServer->nextPendingConnection(); if (!clientConnection) { - qWarning() << Q_FUNC_INFO << "Got empty connection!"; + qWarning() << Q_FUNC_INFO << "Obtained empty connection."; return; } if (clientConnection->state() != QLocalSocket::ConnectedState) { @@ -1487,7 +1491,7 @@ void PatchManagerObject::startReadingLocalServer() }, Qt::DirectConnection); connect(clientConnection, &QLocalSocket::readyRead, this, [this, clientConnection](){ if (!clientConnection) { - qWarning() << Q_FUNC_INFO << "Can not get socket!"; + qWarning() << Q_FUNC_INFO << "Failed to obtain socket for connection."; return; } const qint64 bytes = clientConnection->bytesAvailable(); @@ -1506,7 +1510,7 @@ void PatchManagerObject::startReadingLocalServer() } else { payload = request; if (qEnvironmentVariableIsSet("PM_DEBUG_SOCKET")) { - qDebug() << Q_FUNC_INFO << "Requested:" << request << "Not changing"; + qDebug() << Q_FUNC_INFO << "Requested:" << request << "is sent unaltered."; } } clientConnection->write(payload); @@ -1827,11 +1831,11 @@ bool PatchManagerObject::doPatch(const QString &patchName, bool apply, QString * } process.setArguments(arguments); - qDebug() << Q_FUNC_INFO << "Starting:" << process.program() << process.arguments(); + qDebug() << Q_FUNC_INFO << "Starting" << process.program() << process.arguments(); process.start(); process.waitForFinished(-1); const bool ret = process.exitCode() == 0; - qDebug() << Q_FUNC_INFO << "Success:" << ret; + qDebug() << Q_FUNC_INFO << "Successfully started process (bool):" << ret; const QString log = QString::fromUtf8(process.readAllStandardOutput()); qDebug().noquote() << Q_FUNC_INFO << log; if (patchLog) { @@ -1857,7 +1861,7 @@ void PatchManagerObject::doPatch(const QVariantMap ¶ms, const QDBusMessage & QString log; bool ok = doPatch(patch, apply, &log); - qDebug() << Q_FUNC_INFO << "ok:" << ok; + qDebug() << Q_FUNC_INFO << "OK (bool):" << ok; if (ok) { if (apply) { m_appliedPatches.insert(patch); @@ -1887,10 +1891,10 @@ void PatchManagerObject::doPatch(const QVariantMap ¶ms, const QDBusMessage & if (message.isDelayedReply()) { QVariantMap reply = {{ QStringLiteral("ok"), ok }, { QStringLiteral("log"), log }}; - qWarning() << Q_FUNC_INFO << "Sending reply"; + qWarning() << Q_FUNC_INFO << "Sending reply."; sendMessageReply(message, reply); } else { - qWarning() << Q_FUNC_INFO << "Message is not a delayed"; + qWarning() << Q_FUNC_INFO << "Message is not a delayed reply."; } } @@ -1922,13 +1926,13 @@ void PatchManagerObject::doInstallPatch(const QVariantMap ¶ms, const QDBusMe QObject::connect(reply, &QNetworkReply::finished, [reply, message, params, this](){ reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Reply error:" << reply->error(); sendMessageError(message, reply->errorString()); return; } if (reply->bytesAvailable() <= 0) { - qDebug() << Q_FUNC_INFO << "Cannot get json"; - sendMessageError(message, QStringLiteral("Cannot get json")); + qDebug() << Q_FUNC_INFO << "Cannot get JSON."; + sendMessageError(message, QStringLiteral("Cannot get JSON.")); return; } QByteArray json = reply->readAll(); @@ -1937,7 +1941,7 @@ void PatchManagerObject::doInstallPatch(const QVariantMap ¶ms, const QDBusMe QJsonDocument::fromJson(json, &error); if (error.error != QJsonParseError::NoError) { - sendMessageError(message, QStringLiteral("Error parsing json")); + sendMessageError(message, QStringLiteral("Failed to parse JSON.")); } QVariantMap newParams = params; newParams.insert(QStringLiteral("json"), QString::fromUtf8(json)); @@ -1948,7 +1952,7 @@ void PatchManagerObject::doInstallPatch(const QVariantMap ¶ms, const QDBusMe }); QObject::connect(reply, &QNetworkReply::sslErrors, [reply](const QList &errors){ for (const QSslError &sslError : errors) { - qWarning() << Q_FUNC_INFO << "ignoring ssl error:" << sslError.errorString(); + qWarning() << Q_FUNC_INFO << "Ignoring SSL error:" << sslError.errorString(); } reply->ignoreSslErrors(errors); }); @@ -1967,7 +1971,7 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q qDebug() << Q_FUNC_INFO << "Saving archive to" << archive; QDir workDir(PATCHES_WORK_DIR); if (!workDir.mkpath(PATCHES_WORK_DIR)) { - qDebug() << Q_FUNC_INFO << QStringLiteral("Error: could not create ") << workDir; + qDebug() << Q_FUNC_INFO << QStringLiteral("Error: Failed to create working directory") << workDir; return; }; QFile *archiveFile = new QFile(archive, this); @@ -1981,16 +1985,16 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q QObject::connect(reply, &QNetworkReply::finished, [reply, message, patch, archiveFile, archive, json, version, this](){ reply->deleteLater(); archiveFile->deleteLater(); - qDebug() << Q_FUNC_INFO << "Flushing to disk:" << archiveFile->flush(); + qDebug() << Q_FUNC_INFO << "Storing archive file locally" << archiveFile->flush(); archiveFile->close(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Reply error" << reply->error(); sendMessageError(message, reply->errorString()); return; } if (!archiveFile) { - sendMessageError(message, QStringLiteral("Lost in the wild")); + sendMessageError(message, QStringLiteral("Failed to get archive file.")); return; } @@ -2002,12 +2006,12 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q patchDir.removeRecursively(); } if (!archiveFile->exists() || !patchDir.mkpath(patchPath)) { - sendMessageError(message, QStringLiteral("Error operating with files")); + sendMessageError(message, QStringLiteral("Error during file operations.")); return; } QFile jsonFile(jsonPath); if (!jsonFile.open(QFile::WriteOnly)) { - sendMessageError(message, QStringLiteral("Error saving json")); + sendMessageError(message, QStringLiteral("Failed to write JSON.")); return; } @@ -2025,7 +2029,7 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q // careful: GNU tar has J for everything xz/lz*, and a for automatic, BusyBox has J for .xz and a for .lzma else if (archive.endsWith(QStringLiteral("xz"))) { uncompressOpt = QStringLiteral("-J"); } else { - qWarning() << Q_FUNC_INFO << QStringLiteral("Archive format unsupported"); + qWarning() << Q_FUNC_INFO << QStringLiteral("Unsupported archive format."); uncompressOpt = QStringLiteral(""); } ret = proc.execute(BIN_TAR, {QStringLiteral("x"), uncompressOpt, QStringLiteral("-f"), archive, QStringLiteral("-C"), patchPath}); @@ -2043,13 +2047,13 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q } } } else { - QString retMsg = QStringLiteral("process exited with code (%1)").arg(ret); + QString retMsg = QStringLiteral("Process exited with code (%1)").arg(ret); if ( ret == -2 ) { - retMsg = QStringLiteral("Process could not start (%1)").arg(ret); + retMsg = QStringLiteral("Process failed to start (%1)").arg(ret); } else if ( ret == -1 ) { retMsg = QStringLiteral("Process crashed (%1)").arg(ret); } - qDebug() << Q_FUNC_INFO << QStringLiteral("Error: extraction failed:") << proc.error() << retMsg; + qDebug() << Q_FUNC_INFO << QStringLiteral("Failed to extract archive:") << proc.error() << retMsg; patchDir.removeRecursively(); } @@ -2061,19 +2065,19 @@ void PatchManagerObject::downloadPatchArchive(const QVariantMap ¶ms, const Q }); QObject::connect(reply, &QNetworkReply::readyRead, [archiveFile, reply](){ if (!archiveFile || !archiveFile->isOpen()) { - qWarning() << Q_FUNC_INFO << "Problem with archive"; + qWarning() << Q_FUNC_INFO << "Problem with archive file."; return; } const qint64 ba = reply->bytesAvailable(); - qDebug() << Q_FUNC_INFO << "Writing" << ba << "bytes fo file:" << + qDebug() << Q_FUNC_INFO << "Writing" << ba << "bytes to file" << archiveFile->write(reply->read(ba)); }); QObject::connect(reply, static_cast(&QNetworkReply::error), [reply](QNetworkReply::NetworkError networkError){ - qWarning() << Q_FUNC_INFO << "Download file error:" << networkError << reply->errorString(); + qWarning() << Q_FUNC_INFO << "File downloading error" << networkError << reply->errorString(); }); QObject::connect(reply, &QNetworkReply::sslErrors, [reply](const QList &errors){ for (const QSslError &sslError : errors) { - qWarning() << Q_FUNC_INFO << "ignoring ssl error:" << sslError.errorString(); + qWarning() << Q_FUNC_INFO << "Ignoring SSL error" << sslError.errorString(); } reply->ignoreSslErrors(errors); }); @@ -2087,12 +2091,12 @@ void PatchManagerObject::doUninstallPatch(const QString &patch, const QDBusMessa const QString rpmPatch = m_metadata[patch][RPM_KEY].toString(); if (rpmPatch.isEmpty()) { QDir patchDir(QStringLiteral("%1/%2").arg(PATCHES_DIR, patch)); - qDebug() << Q_FUNC_INFO << "Removing patch files" << patchDir.absolutePath(); + qDebug() << Q_FUNC_INFO << "Removing Patch files" << patchDir.absolutePath(); if (patchDir.exists()) { removeSuccess = patchDir.removeRecursively(); } } else { - qDebug() << Q_FUNC_INFO << "Removing patch package" << rpmPatch; + qDebug() << Q_FUNC_INFO << "Removing RPM Patch package" << rpmPatch; const int ret = QProcess::execute(BIN_PKCON, {QStringLiteral("remove"), QStringLiteral("-y"), getRpmName(rpmPatch)}); removeSuccess = ret == 0; @@ -2145,7 +2149,7 @@ void PatchManagerObject::sendVote(const QString &patch, int action) QObject::connect(reply, &QNetworkReply::finished, [reply]() { reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); } }); @@ -2164,13 +2168,13 @@ void PatchManagerObject::doCheckEaster(const QDBusMessage &message) QObject::connect(reply, &QNetworkReply::finished, [this, reply, message](){ reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); sendMessageError(message, reply->errorString()); return; } if (!reply->bytesAvailable()) { - qWarning() << Q_FUNC_INFO << "Received empty reply!"; - sendMessageError(message, QStringLiteral("Received empty reply!")); + qWarning() << Q_FUNC_INFO << "Received empty reply."; + sendMessageError(message, QStringLiteral("Received empty reply.")); return; } @@ -2231,7 +2235,7 @@ void PatchManagerObject::downloadPatch(const QString &patch, const QUrl &url, co return; } if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); return; } // TODO emit download complete @@ -2243,11 +2247,11 @@ void PatchManagerObject::downloadPatch(const QString &patch, const QUrl &url, co f->write(reply->read(reply->bytesAvailable())); }); QObject::connect(reply, static_cast(&QNetworkReply::error), [reply](QNetworkReply::NetworkError networkError){ - qWarning() << Q_FUNC_INFO << "Download file error:" << networkError << reply->errorString(); + qWarning() << Q_FUNC_INFO << "Download file error" << networkError << reply->errorString(); }); QObject::connect(reply, &QNetworkReply::sslErrors, [reply](const QList &errors){ for (const QSslError &sslError : errors) { - qWarning() << Q_FUNC_INFO << "ignoring ssl error:" << sslError.errorString(); + qWarning() << Q_FUNC_INFO << "Ignoring SSL error" << sslError.errorString(); } reply->ignoreSslErrors(errors); }); @@ -2267,13 +2271,13 @@ void PatchManagerObject::requestDownloadCatalog(const QVariantMap ¶ms, const QObject::connect(reply, &QNetworkReply::finished, [this, message, reply]() { reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); sendMessageError(message, reply->errorString()); return; } if (!reply->bytesAvailable()) { - qWarning() << Q_FUNC_INFO << "Received empty reply!"; - sendMessageError(message, QStringLiteral("Received empty reply!")); + qWarning() << Q_FUNC_INFO << "Received empty reply."; + sendMessageError(message, QStringLiteral("Received empty reply.")); return; } const QByteArray json = reply->readAll(); @@ -2304,13 +2308,13 @@ void PatchManagerObject::requestDownloadPatchInfo(const QString &name, const QDB QObject::connect(reply, &QNetworkReply::finished, [this, message, reply]() { reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); sendMessageError(message, reply->errorString()); return; } if (!reply->bytesAvailable()) { - qWarning() << Q_FUNC_INFO << "Received empty reply!"; - sendMessageError(message, QStringLiteral("Received empty reply!")); + qWarning() << Q_FUNC_INFO << "Received empty reply."; + sendMessageError(message, QStringLiteral("Received empty reply.")); return; } const QByteArray json = reply->readAll(); @@ -2342,11 +2346,11 @@ void PatchManagerObject::requestCheckForUpdates() QObject::connect(reply, &QNetworkReply::finished, [this, reply]() { reply->deleteLater(); if (reply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << reply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << reply->error(); return; } if (!reply->bytesAvailable()) { - qWarning() << Q_FUNC_INFO << "Received empty reply!"; + qWarning() << Q_FUNC_INFO << "Received empty reply."; return; } const QByteArray json = reply->readAll(); @@ -2355,27 +2359,27 @@ void PatchManagerObject::requestCheckForUpdates() const QJsonDocument document = QJsonDocument::fromJson(json, &error); if (error.error != QJsonParseError::NoError) { - qWarning() << Q_FUNC_INFO << "Error parsing json reply"; + qWarning() << Q_FUNC_INFO << "Failed to parse JSON."; return; } const QVariantList projects = document.toVariant().toList(); - qDebug() << Q_FUNC_INFO << "projects count:" << projects.count(); + qDebug() << Q_FUNC_INFO << "Projects count:" << projects.count(); for (const QVariant &projectVar : projects) { const QVariantMap project = projectVar.toMap(); const QString projectName = project.value("name").toString(); - qInfo() << Q_FUNC_INFO << "processing:" << projectName; + qInfo() << Q_FUNC_INFO << "Processing" << projectName; if (!m_metadata.contains(projectName)) { - qDebug() << Q_FUNC_INFO << projectName << "patch is not installed"; + qDebug() << Q_FUNC_INFO << projectName << "Patch is not installed."; continue; } if (!m_metadata.value(projectName).value("rpm").toString().isEmpty()) { - qDebug() << Q_FUNC_INFO << projectName << "patch installed from rpm"; + qDebug() << Q_FUNC_INFO << projectName << "Patch installed from RPM."; continue; } const QString patchVersion = m_metadata.value(projectName).value("version").toString(); - qDebug() << Q_FUNC_INFO << "installed:" << projectName << "version:" << patchVersion; + qDebug() << Q_FUNC_INFO << projectName << "Patch version" << patchVersion << "installed from Web Catalog."; QUrl purl(QStringLiteral(CATALOG_URL "/" PROJECT_PATH)); QUrlQuery pquery; @@ -2386,11 +2390,11 @@ void PatchManagerObject::requestCheckForUpdates() QObject::connect(preply, &QNetworkReply::finished, [this, preply, projectName, patchVersion]() { preply->deleteLater(); if (preply->error() != QNetworkReply::NoError) { - qDebug() << Q_FUNC_INFO << "Error:" << preply->error(); + qDebug() << Q_FUNC_INFO << "Network reply error" << preply->error(); return; } if (!preply->bytesAvailable()) { - qWarning() << Q_FUNC_INFO << "Received empty reply!"; + qWarning() << Q_FUNC_INFO << "Received empty reply."; return; } const QByteArray json = preply->readAll(); @@ -2399,7 +2403,7 @@ void PatchManagerObject::requestCheckForUpdates() const QJsonDocument document = QJsonDocument::fromJson(json, &error); if (error.error != QJsonParseError::NoError) { - qWarning() << Q_FUNC_INFO << projectName << "Error parsing json reply"; + qWarning() << Q_FUNC_INFO << "Failed to parse JSON reply for" << projectName; return; } @@ -2419,10 +2423,10 @@ void PatchManagerObject::requestCheckForUpdates() } if (latestVersion == patchVersion) { - qDebug() << Q_FUNC_INFO << projectName << "versions match"; + qDebug() << Q_FUNC_INFO << projectName << "is recent version."; return; } - qDebug() << Q_FUNC_INFO << "available:" << projectName << "version:" << latestVersion; + qDebug() << Q_FUNC_INFO << projectName << "version" << latestVersion << "is available."; if (!m_updates.contains(projectName) || m_updates.value(projectName) != latestVersion) { notify(projectName, NotifyActionUpdateAvailable); @@ -2471,7 +2475,7 @@ void PatchManagerObject::eraseRecursively(const QString &path) for (const QFileInfo &info : cacheDir.entryInfoList(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot, QDir::DirsLast)) { if (info.isDir() && !info.isSymLink()) { eraseRecursively(info.absoluteFilePath()); - qDebug() << Q_FUNC_INFO << "Directory" << info.absoluteFilePath() << "is empty:" << + qDebug() << Q_FUNC_INFO << "Directory" << info.absoluteFilePath() << "is empty" << QDir::root().rmpath(info.absoluteFilePath()); } else if (info.isFile() || info.isSymLink()) { QFile::remove(info.absoluteFilePath()); @@ -2489,7 +2493,7 @@ bool PatchManagerObject::checkIsFakeLinked(const QString &path) if (trial.cd(part)) { const QFileInfo fi(trial.absolutePath()); if (fi.isSymLink() && fi.symLinkTarget().startsWith(s_patchmanagerCacheRoot)) { - qDebug() << Q_FUNC_INFO << path << "already have fake link:" << trial.absolutePath(); + qDebug() << Q_FUNC_INFO << path << "already has a faking symlink" << trial.absolutePath(); return true; } continue; @@ -2507,7 +2511,7 @@ bool PatchManagerObject::tryToLinkFakeParent(const QString &path) if (trial.cd(part)) { const QFileInfo fi(trial.absolutePath()); if (fi.isSymLink() && fi.symLinkTarget().startsWith(s_patchmanagerCacheRoot)) { - qDebug() << Q_FUNC_INFO << path << "already have fake link:" << trial.absolutePath(); + qDebug() << Q_FUNC_INFO << path << "already has a faking symlink" << trial.absolutePath(); return true; } continue; @@ -2515,7 +2519,7 @@ bool PatchManagerObject::tryToLinkFakeParent(const QString &path) const QString realPath = QStringLiteral("%1/%2").arg(trial.absolutePath(), part); const QString fakePath = QStringLiteral("%1%2").arg(s_patchmanagerCacheRoot, realPath); bool link_ret = QFile::link(fakePath, realPath); - qDebug() << Q_FUNC_INFO << "linking" << realPath << "to:" << fakePath << link_ret; + qDebug() << Q_FUNC_INFO << "Symlinking" << realPath << "to" << fakePath << link_ret; return true; } return false; @@ -2528,13 +2532,13 @@ bool PatchManagerObject::tryToUnlinkFakeParent(const QString &path) QDir trial = QDir::root(); for (const QString &part : parts) { if (!trial.cd(part)) { - qWarning() << Q_FUNC_INFO << "error while trying to cd from" << trial.absolutePath() << "to:" << part; + qWarning() << Q_FUNC_INFO << "Failed when trying to change (cd) from directory" << trial.absolutePath() << "to" << part; return false; } const QFileInfo fi(trial.absolutePath()); if (fi.isSymLink() && fi.symLinkTarget().startsWith(s_patchmanagerCacheRoot)) { bool remove_ret = QFile::remove(trial.absolutePath()); - qDebug() << Q_FUNC_INFO << "removing:" << trial.absolutePath() << remove_ret; + qDebug() << Q_FUNC_INFO << "Removing" << trial.absolutePath() << remove_ret; return true; } } diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 8e44b9d6..9ffc3398 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -10,33 +10,29 @@ + - Apply patches + Activate all Patches marked active - Patchmanager will automatically apply all patches in 10 seconds. - - - - - Applied patches successfully. + Patchmanager will activate all Patches marked active in 10 seconds. - - Failed to apply patches! + + Quit - - Exit + + Successfully activated all Patches marked active. - - Applying patches + + Failed to activate all Patches marked active! @@ -438,58 +434,58 @@ - Patch installed + Patch activated - Patch %1 installed + Patch %1 activated - - Services need restart! + + some service should be restarted. - - Patch removed + + Patch deactivated" - - Patch %1 removed + + Patch %1 deactivated" - - Failed to install patch + + Failed to activate Patch - - Patch %1 installation failed + + Activating Patch %1 failed! - - Failed to remove patch + + Failed to deactivate Patch - - Patch %1 removal failed + + Deactivating Patch %1 failed! - + Update available - - Patch %1 have update candidate + + An update for Patch %1 exits. From 541dedcb187b34c3b187182e01dded2b9769c93a Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 21:37:44 +0100 Subject: [PATCH 02/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 9ffc3398..7fc15791 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -50,7 +50,7 @@ - Patchmanager allows to automatically modify system files via patches. It provides a daemon that performs the application of those patches and a GUI to control those operations and the installation or removal of patches. + Patchmanager allows to automatically modify system files via Patches. It provides a daemon that performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of patches. From 2d02ee214b725a97f3fe9b75320e19823447afd6 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 21:40:13 +0100 Subject: [PATCH 03/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index b36dac12..6314fcdb 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -79,7 +79,7 @@ Page { anchors.right: parent.right anchors.margins: Theme.horizontalPageMargin font.pixelSize: Theme.fontSizeSmall - text: qsTranslate("", "Patchmanager allows to automatically modify system files via patches. It provides a daemon that performs the application of those patches and a GUI to control those operations and the installation or removal of patches.") + text: qsTranslate("", "Patchmanager allows to automatically modify system files via Patches. It provides a daemon that performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of patches.") } Separator { From 4918b23c8085b6aa173594950b6b30eec874b47b Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 21:56:05 +0100 Subject: [PATCH 04/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index 6314fcdb..f6c78c3e 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -79,7 +79,7 @@ Page { anchors.right: parent.right anchors.margins: Theme.horizontalPageMargin font.pixelSize: Theme.fontSizeSmall - text: qsTranslate("", "Patchmanager allows to automatically modify system files via Patches. It provides a daemon that performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of patches.") + text: qsTranslate("", "Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of Patches.") } Separator { @@ -157,7 +157,7 @@ Page { font.pixelSize: Theme.fontSizeSmall wrapMode: Text.WordWrap horizontalAlignment: Text.AlignJustify - text: qsTranslate("", "If you appreciate our work, please consider a donation to help covering the hosting costs for Openrepos. Openrepos is critical infrastructure specifically for Patchmanager, because its Web Catalog of patches is hosted there.") + text: qsTranslate("", "If you appreciate our work, please consider a donation to help covering the hosting costs for Openrepos. Openrepos is critical infrastructure specifically for Patchmanager, because its Web Catalog of Patches is hosted there.") } Text { anchors.horizontalCenter: parent.horizontalCenter From 00e6df84798cc1e2f7741b27f1b048d878dcbad8 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 22:40:13 +0100 Subject: [PATCH 05/51] Update UnifiedPatchPage.qml --- src/qml/UnifiedPatchPage.qml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/qml/UnifiedPatchPage.qml b/src/qml/UnifiedPatchPage.qml index e42a845a..885c3d00 100644 --- a/src/qml/UnifiedPatchPage.qml +++ b/src/qml/UnifiedPatchPage.qml @@ -62,27 +62,27 @@ Page { busy: container.delegate.applying MenuItem { text: container.delegate.applying - ? qsTranslate("", "Patch being applied") + ? qsTranslate("", "Activating Patch") : (modelData.patched - ? qsTranslate("", "Unapply patch") - : qsTranslate("", "Apply patch")) + ? qsTranslate("", "Deactivate Patch") + : qsTranslate("", "Activate Patch")) enabled: !container.delegate.applying && PatchManager.loaded onClicked: { container.delegate.doPatch() } } MenuItem { - text: qsTranslate("", "Uninstall patch") + text: qsTranslate("", "Remove Patch") enabled: !modelData.patched onClicked: { - Remorse.popupAction(container, qsTranslate("", "Patch %1 uninstalled.").arg(modelData.display_name), + Remorse.popupAction(container, qsTranslate("", "Patch %1 removed.").arg(modelData.display_name), function() { container.delegate.doUninstall(); pageStack.pop(); } ) } } MenuLabel { visible: !PatchManager.loaded - text: qsTranslate("", "Load engine before applying patches") + text: qsTranslate("", "Start Patchmanager daemon before activating Patches") } } @@ -104,7 +104,7 @@ Page { color: Theme.primaryColor wrapMode: Text.WordWrap font.pixelSize: Theme.fontSizeLarge - text: qsTranslate("", "This patch is not available anymore. You will not be able to reinstall it.") + text: qsTranslate("", "This Patch is not available anymore. You will not be able to reinstall it.") } Column { @@ -162,7 +162,7 @@ Page { font.pixelSize: Theme.fontSizeSmall textFormat: Text.StyledText property string link: SOURCE_REPO + "/blob/master/README.md#for-developers" - text: qsTranslate("", "This patch uses the legacy format for its patch.json file. If you are its maintainer, please do consider updating to the new format; if you are using the Web Catalog you shall not include a patch.json file in your upload!
See the developer section in the README for details.").arg(link) + text: qsTranslate("", "This Patch uses the legacy format for its patch.json file. If you are its maintainer, please do consider updating to the new format; if you are using the Web Catalog you shall not include a patch.json file in your upload!
See the developer section in the README for details.").arg(link) linkColor: Theme.highlightColor onLinkActivated: Qt.openUrlExternally(link) } From 00c328d474f8359f76e1042cff67f6026be237a6 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 22:49:51 +0100 Subject: [PATCH 06/51] Update PatchManagerPage.qml --- src/qml/PatchManagerPage.qml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/qml/PatchManagerPage.qml b/src/qml/PatchManagerPage.qml index 3d7be4ef..df65445d 100644 --- a/src/qml/PatchManagerPage.qml +++ b/src/qml/PatchManagerPage.qml @@ -144,19 +144,19 @@ Page { } MenuItem { - text: qsTranslate("", "Unapply all patches") + text: qsTranslate("", "Deactivate all Patches") onClicked: menuRemorse.execute( text, function() { PatchManager.call(PatchManager.unapplyAllPatches()) } ) visible: PatchManager.loaded } MenuItem { - text: qsTranslate("", "Load engine") + text: qsTranslate("", "Start Patchmanager's daemon") onClicked: PatchManager.call(PatchManager.loadRequest(true)) visible: !PatchManager.loaded } MenuItem { - text: PatchManager.updatesNames.length > 0 ? qsTranslate("", "Updates available") : qsTranslate("", "Web catalog") + text: PatchManager.updatesNames.length > 0 ? qsTranslate("", "Updates available") : qsTranslate("", "Web Catalog") onClicked: pageStack.push(Qt.resolvedUrl("WebCatalogPage.qml")) } @@ -175,7 +175,7 @@ Page { } header: PageHeader { - title: qsTranslate("", "Installed patches") + title: qsTranslate("", "Installed Patches") } model: PatchManager.installedModel From 85f2df32de7dc1d4edb462554af70d325e10fa6a Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 22:50:26 +0100 Subject: [PATCH 07/51] Update WebCatalogPage.qml --- src/qml/WebCatalogPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/WebCatalogPage.qml b/src/qml/WebCatalogPage.qml index 1df78228..f9fc08d5 100644 --- a/src/qml/WebCatalogPage.qml +++ b/src/qml/WebCatalogPage.qml @@ -98,7 +98,7 @@ Page { Column { width: view.width PageHeader { - title: container.author ? qsTranslate("", "%1 patches").arg(container.author) : qsTranslate("", "Web catalog") + title: container.author ? qsTranslate("", "%1 patches").arg(container.author) : qsTranslate("", "Web Catalog") description: container.sortByDate ? qsTranslate("", "(by date updated)") : qsTranslate("", "(by category)") } From fa59a277221d7eb0927f481bb2854606c20051b4 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 22:59:34 +0100 Subject: [PATCH 08/51] Update PatchManagerPage.qml --- src/qml/PatchManagerPage.qml | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/qml/PatchManagerPage.qml b/src/qml/PatchManagerPage.qml index df65445d..96ae331e 100644 --- a/src/qml/PatchManagerPage.qml +++ b/src/qml/PatchManagerPage.qml @@ -354,7 +354,7 @@ Page { if (PatchManager.developerMode || patchObject.details.isCompatible) { patchObject.apply() } else { - errorMessageComponent.createObject(background, {text: qsTranslate("", "This patch is incompatible with the installed Sailfish OS version.")}) + errorMessageComponent.createObject(background, {text: qsTranslate("", "This Patch is incompatible with the installed SailfishOS version.")}) } } else { patchObject.unapply() @@ -362,7 +362,7 @@ Page { } function removeAction() { - remorseAction(qsTranslate("", "Uninstalling patch %1").arg(name), doRemove) + remorseAction(qsTranslate("", "Removing Patch %1").arg(name), doRemove) } function doUninstall() { @@ -482,8 +482,8 @@ Page { MenuLabel { visible: !patchObject.details.patched && patchObject.details.conflicts.length > 0 text: (patchObject.details.conflicts.length == 1) - ? qsTranslate("" , "May conflict with another patch, see %1").arg(patchinfoitem.text) - : qsTranslate("" , "May conflict with %2 other patches, see %1").arg(patchinfoitem.text).arg(patchObject.details.conflicts.length) + ? qsTranslate("" , "May conflict with another Patch, see %1").arg(patchinfoitem.text) + : qsTranslate("" , "May conflict with %2 other Patches, see %1").arg(patchinfoitem.text).arg(patchObject.details.conflicts.length) } MenuItem { id: patchinfoitem @@ -491,12 +491,12 @@ Page { onClicked: background.openPatchInfo() } MenuItem { - text: patchObject.details.patched ? qsTranslate("", "Unapply") : qsTranslate("", "Apply") + text: patchObject.details.patched ? qsTranslate("", "Deactivate") : qsTranslate("", "Activate") onClicked: background.doPatch() } MenuItem { visible: !patchObject.details.patched && patchObject.details.patch != "sailfishos-patchmanager-unapplyall" - text: qsTranslate("", "Uninstall") + text: qsTranslate("", "Remove") onClicked: background.removeAction() } } @@ -510,7 +510,7 @@ Page { ViewPlaceholder { enabled: view.count == 0 - text: qsTranslate("", "No patches available") + text: qsTranslate("", "No Patches available") } RemorsePopup { id: menuRemorse } VerticalScrollDecorator {} @@ -524,5 +524,3 @@ Page { // size: BusyIndicatorSize.Large // } } - - From bb457f88512ed7b0ff0ff0687c8a730ab9aceae2 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 22:59:59 +0100 Subject: [PATCH 09/51] Update WebPatchPage.qml --- src/qml/WebPatchPage.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qml/WebPatchPage.qml b/src/qml/WebPatchPage.qml index 1634faaf..80a18a5a 100644 --- a/src/qml/WebPatchPage.qml +++ b/src/qml/WebPatchPage.qml @@ -330,7 +330,7 @@ Page { onClicked: { if (!PatchManager.developerMode && !isCompatible) { - errorMessageComponent.createObject(fileDelegate, {text: qsTranslate("", "This patch is incompatible with the installed Sailfish OS version.")}) + errorMessageComponent.createObject(fileDelegate, {text: qsTranslate("", "This Patch is incompatible with the installed SailfishOS version.")}) } else if (!fileDelegate.isInstalled) { remorseAction(qsTranslate("", "Install patch %1").arg(patchData.display_name), installPatch) } @@ -344,7 +344,7 @@ Page { PatchManager.watchCall(PatchManager.installPatch(modelData.project, modelData.version, modelData.document), function(ok) { if (!ok) { - console.warn("Unsuccessful installation!") + console.warn("Installation failed!") return } container.versions[patchData.name] = modelData.version From 2377e0e878d0120816203ba0312e01e8c9eb74f6 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:02:18 +0100 Subject: [PATCH 10/51] Update WebCatalogPage.qml --- src/qml/WebCatalogPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/WebCatalogPage.qml b/src/qml/WebCatalogPage.qml index f9fc08d5..4380fbf8 100644 --- a/src/qml/WebCatalogPage.qml +++ b/src/qml/WebCatalogPage.qml @@ -245,7 +245,7 @@ Page { ViewPlaceholder { enabled: patchModel.count == 0 - text: qsTranslate("", "No patches available") + text: qsTranslate("", "No Patches available") } VerticalScrollDecorator {} From dfb901919ab057eb78a5a714358beb385cbd9efa Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:04:10 +0100 Subject: [PATCH 11/51] Update RestartServicesDialog.qml --- src/qml/RestartServicesDialog.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/qml/RestartServicesDialog.qml b/src/qml/RestartServicesDialog.qml index 3c9afe71..ed91cae3 100644 --- a/src/qml/RestartServicesDialog.qml +++ b/src/qml/RestartServicesDialog.qml @@ -74,11 +74,11 @@ Dialog { description: { if ((modelData == "homescreen") || (modelData == "silica")) - { return qsTranslate("","Note: this will close all apps."); } - else if (modelData == "settings") { return qsTranslate("","Note: this will close %1.").arg(qsTranslate("", "Patchmanager")); } + { return qsTranslate("","Note that this will close all apps."); } + else if (modelData == "settings") { return qsTranslate("","Note that this will close %1.").arg(qsTranslate("", "Patchmanager")); } else if (modelData == "keyboard") { return "" } else if (modelData == "other") { return "" } - else { return qsTranslate("","Note: this will close the %1 app.").arg(text); } + else { return qsTranslate("","Note that this will close the %1 app.").arg(text); } } TouchBlocker { anchors.fill: parent} } From c5d26b87e2708d2aff100b7d37116ef17880a1b1 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:10:39 +0100 Subject: [PATCH 12/51] Update WebCatalogPage.qml --- src/qml/WebCatalogPage.qml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/qml/WebCatalogPage.qml b/src/qml/WebCatalogPage.qml index 4380fbf8..118f6c44 100644 --- a/src/qml/WebCatalogPage.qml +++ b/src/qml/WebCatalogPage.qml @@ -86,7 +86,7 @@ Page { } } MenuItem { - text: sortByDate ? qsTranslate("", "Sort by Category") : qsTranslate("", "Sort by Date") + text: sortByDate ? qsTranslate("", "Sort by category") : qsTranslate("", "Sort by date updated") onClicked: { sortByDate = !sortByDate } @@ -98,7 +98,7 @@ Page { Column { width: view.width PageHeader { - title: container.author ? qsTranslate("", "%1 patches").arg(container.author) : qsTranslate("", "Web Catalog") + title: container.author ? qsTranslate("", "%1 Patches").arg(container.author) : qsTranslate("", "Web Catalog") description: container.sortByDate ? qsTranslate("", "(by date updated)") : qsTranslate("", "(by category)") } @@ -260,4 +260,3 @@ Page { } } - From ad635c5195ceb51049dd8d2c1fd324924af79003 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:15:06 +0100 Subject: [PATCH 13/51] Update WebPatchPage.qml --- src/qml/WebPatchPage.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qml/WebPatchPage.qml b/src/qml/WebPatchPage.qml index 80a18a5a..44832d8f 100644 --- a/src/qml/WebPatchPage.qml +++ b/src/qml/WebPatchPage.qml @@ -72,7 +72,7 @@ Page { ViewPlaceholder { enabled: !patchData - text: fetching ? qsTranslate("", "Fetching patch information...") : qsTranslate("", "Problem in fetching patch data") + text: fetching ? qsTranslate("", "Fetching patch data") : qsTranslate("", "Failed to fetch Patch data") } Column { @@ -332,7 +332,7 @@ Page { if (!PatchManager.developerMode && !isCompatible) { errorMessageComponent.createObject(fileDelegate, {text: qsTranslate("", "This Patch is incompatible with the installed SailfishOS version.")}) } else if (!fileDelegate.isInstalled) { - remorseAction(qsTranslate("", "Install patch %1").arg(patchData.display_name), installPatch) + remorseAction(qsTranslate("", "Install Patch %1").arg(patchData.display_name), installPatch) } } From 097f867bdda60c8ebebb08b407f05e41499623a7 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:29:07 +0100 Subject: [PATCH 14/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index 1b42c5d8..d43e314b 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -20,7 +20,7 @@ Page { TextSwitch { text: qsTranslate("", "Show notification on success") - description: qsTranslate("", "If this is off, notifications will only be shown when something went wrong") + description: qsTranslate("", "If this is off, notifications will only be shown when something went wrong.") checked: PatchManager.notifyOnSuccess onClicked: PatchManager.notifyOnSuccess = !PatchManager.notifyOnSuccess automaticCheck: false @@ -29,16 +29,16 @@ Page { SectionHeader { text: qsTranslate("", "Advanced") } TextSwitch { - text: qsTranslate("", "Apply patches when booting") - description: qsTranslate("", "Automatically apply all enabled patches when Sailfish OS starts") + text: qsTranslate("", "Apply Patches when booting") + description: qsTranslate("", "Automatically apply all enabled Patches when SailfishOS starts") checked: PatchManager.applyOnBoot onClicked: PatchManager.applyOnBoot = !PatchManager.applyOnBoot automaticCheck: false } TextSwitch { - text: qsTranslate("", "Allow incompatible patches") - description: qsTranslate("", "Enable applying patches, which are not marked as compatible with the installed Sailfish OS version. Note that patches, which are actually incompatible, will not work.") + text: qsTranslate("", "Allow incompatible Patches") + description: qsTranslate("", "Enable applying Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work.") checked: PatchManager.developerMode onClicked: PatchManager.developerMode = !PatchManager.developerMode automaticCheck: false @@ -47,7 +47,7 @@ Page { TextSwitch { id: fixBitSwitch text: qsTranslate("", "Convert Patches between 32 bit and 64 bit") - description: qsTranslate("", "Automatically fix lib or lib64 for select paths shown below.") + description: qsTranslate("", "Automatically convert lib or lib64 for select paths shown below.") checked: PatchManager.bitnessMangle onClicked: PatchManager.bitnessMangle = !PatchManager.bitnessMangle automaticCheck: false From bacbb83d55e25bce759bc62239f4176b9d76d5b7 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:29:35 +0100 Subject: [PATCH 15/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index d43e314b..a95ad332 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -68,3 +68,4 @@ Page { } } } + From ae19c386296e0ba287f5f69337ab237a58a427f2 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:37:46 +0100 Subject: [PATCH 16/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index a95ad332..b58aeca8 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -30,7 +30,7 @@ Page { TextSwitch { text: qsTranslate("", "Apply Patches when booting") - description: qsTranslate("", "Automatically apply all enabled Patches when SailfishOS starts") + description: qsTranslate("", "Automatically apply all enabled Patches when SailfishOS starts.") checked: PatchManager.applyOnBoot onClicked: PatchManager.applyOnBoot = !PatchManager.applyOnBoot automaticCheck: false From 61fede8cc4d1bde27170477c19877dffafb04e9c Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:52:07 +0100 Subject: [PATCH 17/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 192 ++++++++++++++------------ 1 file changed, 106 insertions(+), 86 deletions(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 7fc15791..13b08a44 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -3,12 +3,6 @@ - - - - About Patchmanager - - @@ -35,6 +29,12 @@ Failed to activate all Patches marked active! + + + + About Patchmanager + + @@ -50,7 +50,7 @@ - Patchmanager allows to automatically modify system files via Patches. It provides a daemon that performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of patches. + Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of Patches. @@ -76,7 +76,7 @@ - If you appreciate our work, please consider a donation to help covering the hosting costs for Openrepos. Openrepos is critical infrastructure specifically for Patchmanager, because its Web Catalog of patches is hosted there. + If you appreciate our work, please consider a donation to help covering the hosting costs for Openrepos. Openrepos is critical infrastructure specifically for Patchmanager, because its Web Catalog of Patches is hosted there. @@ -105,120 +105,114 @@ - - Patch being applied - - - - - Unapply patch + + Copied log to clipboard. - - Apply patch + + Activating Patch - - Load engine before applying patches + + Deactivate Patch - - - Patch details + + Activate Patch - - This patch is not available anymore. You will not be able to reinstall it. + + Remove Patch - - Maintainer + + Patch %1 removed. - - This patch uses the legacy format for its patch.json file. If you are its maintainer, please do consider updating to the new format; if you are using the Web Catalog you shall not include a patch.json file in your upload!<br />See the developer section in the <a href="%1">README</a> for details. + + Start Patchmanager daemon before activating Patches - - Description + + This Patch is not available anymore. You will not be able to reinstall it. - - Discussion + + Author - - Patch log + + Maintainer - - Press and hold to copy log to the clipboard + + Version - - No log exists yet + + + not available - - Author + + Compatible - - Copied log to clipboard. + + May conflict with: - - Uninstall patch + + This Patch uses the legacy format for its patch.json file. If you are its maintainer, please do consider updating to the new format; if you are using the Web Catalog you shall not include a patch.json file in your upload!<br />See the developer section in the <a href="%1">README</a> for details. - - Patch %1 uninstalled. + + Description - - Version + + Discussion - - - not available + + Patch log - - Compatible + + Press and hold to copy log to the clipboard - - May conflict with: + + No log exists yet - Unapply all patches + Deactivate all Patches - Load engine + Start Patchmanager's daemon @@ -229,7 +223,7 @@ - Web catalog + Web Catalog @@ -244,18 +238,18 @@ - Installed patches + Installed Patches - This patch is incompatible with the installed Sailfish OS version. + This Patch is incompatible with the installed SailfishOS version. - Uninstalling patch %1 + Removing Patch %1 @@ -265,33 +259,39 @@ - May conflict with another patch, see %1 + May conflict with another Patch, see %1 - May conflict with %2 other patches, see %1 + May conflict with %2 other Patches, see %1 + + + + + + Patch details - Unapply + Deactivate - Apply + Activate - Uninstall + Remove - No patches available + No Patches available @@ -311,17 +311,17 @@ - Note: this will close all apps. + Note that this will close all apps. - Note: this will close %1. + Note that this will close %1. - Note: this will close the %1 app. + Note that this will close the %1 app. @@ -342,17 +342,17 @@ - Sort by Category + Sort by category - Sort by Date + Sort by date updated - %1 patches + %1 Patches @@ -377,12 +377,12 @@ - Fetching patch information... + Fetching Patch data - Problem in fetching patch data + Failed to fetch Patch data @@ -414,7 +414,7 @@ - Install patch %1 + Install Patch %1 @@ -495,33 +495,53 @@ - - Apply patches when booting + + General - - Automatically apply all enabled patches when Sailfish OS starts + + Show notification on success - - Allow incompatible patches + + If this is off, notifications will only be shown when something went wrong. - Enable applying patches, which are not marked as compatible with the installed Sailfish OS version. Note that patches, which are actually incompatible, will not work. + Advanced + + + + + Apply Patches when booting + + + + + Automatically apply all enabled Patches when SailfishOS starts. + + + + + Allow incompatible Patches + + + + + Enable applying Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work. - + Convert Patches between 32 bit and 64 bit - - Automatically fix lib or lib64 for select paths shown below. + + Automatically convert lib or lib64 for select paths shown below. From c18408253a8495f818f7509ceaeefab416afabb4 Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:55:43 +0100 Subject: [PATCH 18/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index b58aeca8..5c1579f4 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -29,8 +29,8 @@ Page { SectionHeader { text: qsTranslate("", "Advanced") } TextSwitch { - text: qsTranslate("", "Apply Patches when booting") - description: qsTranslate("", "Automatically apply all enabled Patches when SailfishOS starts.") + text: qsTranslate("", "Activate Patches when booting") + description: qsTranslate("", "Automatically activate all enabled Patches when SailfishOS starts.") checked: PatchManager.applyOnBoot onClicked: PatchManager.applyOnBoot = !PatchManager.applyOnBoot automaticCheck: false @@ -38,7 +38,7 @@ Page { TextSwitch { text: qsTranslate("", "Allow incompatible Patches") - description: qsTranslate("", "Enable applying Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work.") + description: qsTranslate("", "Enable activating Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work.") checked: PatchManager.developerMode onClicked: PatchManager.developerMode = !PatchManager.developerMode automaticCheck: false From 22d6184dba6c0e7948ef6cf1560c45fb273a6f2f Mon Sep 17 00:00:00 2001 From: olf Date: Tue, 11 Jan 2022 23:56:34 +0100 Subject: [PATCH 19/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 13b08a44..9d025223 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -516,12 +516,12 @@
- Apply Patches when booting + Activate Patches when booting - Automatically apply all enabled Patches when SailfishOS starts. + Automatically activate all enabled Patches when SailfishOS starts. @@ -531,7 +531,7 @@ - Enable applying Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work. + Enable activating Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work. @@ -625,3 +625,4 @@ + From 0f2ce9001dc5c3a15dd0eeeb156ebbfcd6f5c5e8 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:04:00 +0100 Subject: [PATCH 20/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index f6c78c3e..f444cd7d 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -79,7 +79,7 @@ Page { anchors.right: parent.right anchors.margins: Theme.horizontalPageMargin font.pixelSize: Theme.fontSizeSmall - text: qsTranslate("", "Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of Patches.") + text: qsTranslate("", "Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the activation of Patches, plus a GUI to configure these operations and to install or remove Patches.") } Separator { From 9b57b6d51dc77afadbe2c84fb24d704d865254c9 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:04:08 +0100 Subject: [PATCH 21/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 9d025223..2fe816c2 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -50,7 +50,7 @@ - Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the automatic activation of Patches, plus a GUI to configure these operations and the installation or removal of Patches. + Patchmanager allows to automatically modify system files via Patches. It provides a daemon which performs the activation of Patches, plus a GUI to configure these operations and to install or remove Patches. From ec713b72ab678bc3d962b878b4ed921971164be7 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:47:00 +0100 Subject: [PATCH 22/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index f444cd7d..e0375b37 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -302,3 +302,4 @@ Page { } } } + From 5478d8c3fa6bd2108cc2402e7a4a86b78fd1b50f Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:50:42 +0100 Subject: [PATCH 23/51] Update PatchManagerPage.qml --- src/qml/PatchManagerPage.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/PatchManagerPage.qml b/src/qml/PatchManagerPage.qml index 96ae331e..20aab229 100644 --- a/src/qml/PatchManagerPage.qml +++ b/src/qml/PatchManagerPage.qml @@ -524,3 +524,4 @@ Page { // size: BusyIndicatorSize.Large // } } + From 2fcb75dbb37cbc2e18ae2eb69d5eb02726dbfb3a Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:52:06 +0100 Subject: [PATCH 24/51] Update RestartServicesDialog.qml --- src/qml/RestartServicesDialog.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/RestartServicesDialog.qml b/src/qml/RestartServicesDialog.qml index ed91cae3..4c2e7dd0 100644 --- a/src/qml/RestartServicesDialog.qml +++ b/src/qml/RestartServicesDialog.qml @@ -87,3 +87,4 @@ Dialog { } } } + From 7a27232c10db2e48ad27791019a134e1ac3134c3 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:52:59 +0100 Subject: [PATCH 25/51] Update UnifiedPatchPage.qml --- src/qml/UnifiedPatchPage.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/UnifiedPatchPage.qml b/src/qml/UnifiedPatchPage.qml index 885c3d00..6b971011 100644 --- a/src/qml/UnifiedPatchPage.qml +++ b/src/qml/UnifiedPatchPage.qml @@ -286,3 +286,4 @@ Page { } } } + From 43fe6855b5a3ab2b1c8e211cf0e0220a4ffe1b9b Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:53:58 +0100 Subject: [PATCH 26/51] Update WebPatchPage.qml --- src/qml/WebPatchPage.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/qml/WebPatchPage.qml b/src/qml/WebPatchPage.qml index 44832d8f..7ab5fb58 100644 --- a/src/qml/WebPatchPage.qml +++ b/src/qml/WebPatchPage.qml @@ -425,3 +425,4 @@ Page { } } } + From 18b6f49f8ea16863218dfbb453d3bbb44bda628d Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 00:59:29 +0100 Subject: [PATCH 27/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 2fe816c2..3ece3325 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -625,4 +625,3 @@ - From f57defac9823841da4fbbfecb786d657c511298b Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:00:17 +0100 Subject: [PATCH 28/51] Update settings-patchmanager.ts From 85a8f1c5b0ca162064007ac41b182303b81e0ece Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:01:31 +0100 Subject: [PATCH 29/51] Update WebPatchPage.qml --- src/qml/WebPatchPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/WebPatchPage.qml b/src/qml/WebPatchPage.qml index 7ab5fb58..44832d8f 100644 --- a/src/qml/WebPatchPage.qml +++ b/src/qml/WebPatchPage.qml @@ -425,4 +425,3 @@ Page { } } } - From 67762863f410c1a9ccb9cea327c49e78fc873f70 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:02:13 +0100 Subject: [PATCH 30/51] Update WebPatchPage.qml From 51555b926b347f81c74c257ebbf14bc94bdc2608 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:02:52 +0100 Subject: [PATCH 31/51] Update WebCatalogPage.qml --- src/qml/WebCatalogPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/WebCatalogPage.qml b/src/qml/WebCatalogPage.qml index 118f6c44..f8fdced0 100644 --- a/src/qml/WebCatalogPage.qml +++ b/src/qml/WebCatalogPage.qml @@ -259,4 +259,3 @@ Page { size: BusyIndicatorSize.Large } } - From 38fe5518d1ec5a7d5101250677bb72b778b09372 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:03:27 +0100 Subject: [PATCH 32/51] Update UnifiedPatchPage.qml --- src/qml/UnifiedPatchPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/UnifiedPatchPage.qml b/src/qml/UnifiedPatchPage.qml index 6b971011..885c3d00 100644 --- a/src/qml/UnifiedPatchPage.qml +++ b/src/qml/UnifiedPatchPage.qml @@ -286,4 +286,3 @@ Page { } } } - From 1e9a2b2347d0938b94d50b3a06b7ce40fc413aac Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:03:59 +0100 Subject: [PATCH 33/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index 5c1579f4..f42bd6d2 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -68,4 +68,3 @@ Page { } } } - From 2f66c6360be03f323e811d55b2175cb06f9092f1 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:04:41 +0100 Subject: [PATCH 34/51] Update RestartServicesDialog.qml --- src/qml/RestartServicesDialog.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/RestartServicesDialog.qml b/src/qml/RestartServicesDialog.qml index 4c2e7dd0..ed91cae3 100644 --- a/src/qml/RestartServicesDialog.qml +++ b/src/qml/RestartServicesDialog.qml @@ -87,4 +87,3 @@ Dialog { } } } - From 99020b819c15c30d61de15c2a257ac59c74b48d9 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:05:09 +0100 Subject: [PATCH 35/51] Update PatchManagerPage.qml --- src/qml/PatchManagerPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/PatchManagerPage.qml b/src/qml/PatchManagerPage.qml index 20aab229..96ae331e 100644 --- a/src/qml/PatchManagerPage.qml +++ b/src/qml/PatchManagerPage.qml @@ -524,4 +524,3 @@ Page { // size: BusyIndicatorSize.Large // } } - From d5d8e637fb8132515dcb095ede349dc2bbeca6e8 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:05:50 +0100 Subject: [PATCH 36/51] Update PatchManagerPage.qml From 8a2d558ec841a70c606cb9f63198932242bb251b Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:06:21 +0100 Subject: [PATCH 37/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index e0375b37..f444cd7d 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -302,4 +302,3 @@ Page { } } } - From 168da29a01c721545f277cb9e3d0a9a285ac4030 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:06:55 +0100 Subject: [PATCH 38/51] Update AboutPage.qml From 053bce6391a7b8e50b4a6b05186c2f93b440a522 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:09:10 +0100 Subject: [PATCH 39/51] Update UnifiedPatchPage.qml --- src/qml/UnifiedPatchPage.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/UnifiedPatchPage.qml b/src/qml/UnifiedPatchPage.qml index 885c3d00..299ca416 100644 --- a/src/qml/UnifiedPatchPage.qml +++ b/src/qml/UnifiedPatchPage.qml @@ -82,7 +82,7 @@ Page { } MenuLabel { visible: !PatchManager.loaded - text: qsTranslate("", "Start Patchmanager daemon before activating Patches") + text: qsTranslate("", "Start Patchmanager's daemon before activating Patches") } } From a2856b30e91deabef23aa998f5e397acfde8b642 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:09:54 +0100 Subject: [PATCH 40/51] Update settings-patchmanager.ts --- translations/settings-patchmanager.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translations/settings-patchmanager.ts b/translations/settings-patchmanager.ts index 3ece3325..e79062eb 100644 --- a/translations/settings-patchmanager.ts +++ b/translations/settings-patchmanager.ts @@ -136,7 +136,7 @@ - Start Patchmanager daemon before activating Patches + Start Patchmanager's daemon before activating Patches From 9920e9149d49f4634dff20c0eaefe6c1e40052bb Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:16:46 +0100 Subject: [PATCH 41/51] Fix typo in license --- src/qml/RestartServicesDialog.qml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/qml/RestartServicesDialog.qml b/src/qml/RestartServicesDialog.qml index ed91cae3..d8036ab0 100644 --- a/src/qml/RestartServicesDialog.qml +++ b/src/qml/RestartServicesDialog.qml @@ -1,12 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov - * Copyright (c) 2021, Patchmanger for SailfishOS contributors: + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: * - olf "Olf0" * - Peter G. "nephros" * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From b304a197c0365691990fd733ef733b9d1353ec25 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:17:59 +0100 Subject: [PATCH 42/51] Update AboutPage.qml --- src/qml/AboutPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/AboutPage.qml b/src/qml/AboutPage.qml index f444cd7d..8954fdb4 100644 --- a/src/qml/AboutPage.qml +++ b/src/qml/AboutPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From 153631ef8939e4930f5094b42aa80679c9c8551c Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:19:08 +0100 Subject: [PATCH 43/51] Update DevelopersPage.qml --- src/qml/DevelopersPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/DevelopersPage.qml b/src/qml/DevelopersPage.qml index 696846f6..e5717870 100644 --- a/src/qml/DevelopersPage.qml +++ b/src/qml/DevelopersPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From 91932c152ec1911cbb21e123889539dd07eeb060 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:20:13 +0100 Subject: [PATCH 44/51] Update PatchManagerPage.qml --- src/qml/PatchManagerPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/PatchManagerPage.qml b/src/qml/PatchManagerPage.qml index 96ae331e..33f0d88b 100644 --- a/src/qml/PatchManagerPage.qml +++ b/src/qml/PatchManagerPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From aec730ba6e29f98a3b701f2ca2dd4a275f3ceac2 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:21:08 +0100 Subject: [PATCH 45/51] Update PatchObject.cpp --- src/qml/PatchObject.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/PatchObject.cpp b/src/qml/PatchObject.cpp index 9c0662c0..e5f22096 100644 --- a/src/qml/PatchObject.cpp +++ b/src/qml/PatchObject.cpp @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From f7d9921fd5e1a723de6bcba1c6a8240fde52346f Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:22:07 +0100 Subject: [PATCH 46/51] Update SettingsPage.qml --- src/qml/SettingsPage.qml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/qml/SettingsPage.qml b/src/qml/SettingsPage.qml index f42bd6d2..860d83e4 100644 --- a/src/qml/SettingsPage.qml +++ b/src/qml/SettingsPage.qml @@ -1,3 +1,40 @@ +/* + * Copyright (C) 2013 Lucien XU + * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" + * + * You may use this file under the terms of the 3-clause BSD license, + * as follows: + * + * "Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * * The names of its contributors may not be used to endorse or promote + * products derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + */ + import QtQuick 2.0 import Sailfish.Silica 1.0 import org.SfietKonstantin.patchmanager 2.0 From c7a6d02e442cf70cc2888a8e1e226b3f04abe07d Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:23:06 +0100 Subject: [PATCH 47/51] Update UnifiedPatchPage.qml --- src/qml/UnifiedPatchPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/UnifiedPatchPage.qml b/src/qml/UnifiedPatchPage.qml index 299ca416..6376c34a 100644 --- a/src/qml/UnifiedPatchPage.qml +++ b/src/qml/UnifiedPatchPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From 14696a83b5042faaa47920dd9f1006403c2c79e8 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:23:51 +0100 Subject: [PATCH 48/51] Update WebCatalogPage.qml --- src/qml/WebCatalogPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/WebCatalogPage.qml b/src/qml/WebCatalogPage.qml index f8fdced0..dd7818b8 100644 --- a/src/qml/WebCatalogPage.qml +++ b/src/qml/WebCatalogPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From b76512ef1977a9a33abfce816d975eeea86ec5c1 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:24:35 +0100 Subject: [PATCH 49/51] Update WebPatchPage.qml --- src/qml/WebPatchPage.qml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qml/WebPatchPage.qml b/src/qml/WebPatchPage.qml index 44832d8f..bc046ad8 100644 --- a/src/qml/WebPatchPage.qml +++ b/src/qml/WebPatchPage.qml @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are From 76b3c9c16dc5774c7466a745e0ec37cc37a48d32 Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:36:21 +0100 Subject: [PATCH 50/51] Update dialog.qml --- src/bin/dialog/dialog.qml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/bin/dialog/dialog.qml b/src/bin/dialog/dialog.qml index 1a01d616..f8d9f462 100644 --- a/src/bin/dialog/dialog.qml +++ b/src/bin/dialog/dialog.qml @@ -1,3 +1,38 @@ +/* + * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * + * You may use this file under the terms of the 3-clause BSD license, + * as follows: + * + * "Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * * The names of its contributors may not be used to endorse or promote + * products derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + */ + import QtQuick 2.0 import Sailfish.Silica 1.0 import org.nemomobile.dbus 2.0 From 17d91e670917c0ba5e38522a3c6ef205ef48ebcd Mon Sep 17 00:00:00 2001 From: olf Date: Wed, 12 Jan 2022 01:40:16 +0100 Subject: [PATCH 51/51] Update patchmanagerobject.cpp --- src/bin/patchmanager-daemon/patchmanagerobject.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/bin/patchmanager-daemon/patchmanagerobject.cpp b/src/bin/patchmanager-daemon/patchmanagerobject.cpp index 2ce61c6f..7e7dc761 100644 --- a/src/bin/patchmanager-daemon/patchmanagerobject.cpp +++ b/src/bin/patchmanager-daemon/patchmanagerobject.cpp @@ -1,8 +1,13 @@ /* * Copyright (C) 2013 Lucien XU * Copyright (C) 2016 Andrey Kozhevnikov + * Copyright (c) 2021, Patchmanager for SailfishOS contributors: + * - olf "Olf0" + * - Peter G. "nephros" + * - Vlad G. "b100dian" * - * You may use this file under the terms of the BSD license as follows: + * You may use this file under the terms of the 3-clause BSD license, + * as follows: * * "Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are