Merge PR #379: Snapd: Remove the snap plugin
This commit is contained in:
commit
1157cc8d59
17
debian/control
vendored
17
debian/control
vendored
@ -950,22 +950,6 @@ Description: nymea.io plugin for Sonos smart speakers
|
||||
This package will install the nymea.io plugin for Sonos smart speakers
|
||||
|
||||
|
||||
Package: nymea-plugin-snapd
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends},
|
||||
nymea-plugins-translations,
|
||||
Replaces: guh-plugin-snapd
|
||||
Description: nymea.io plugin for snapd
|
||||
The nymea daemon is a plugin based IoT (Internet of Things) server. The
|
||||
server works like a translator for devices, things and services and
|
||||
allows them to interact.
|
||||
With the powerful rule engine you are able to connect any device available
|
||||
in the system and create individual scenes and behaviors for your environment.
|
||||
.
|
||||
This package will install the nymea.io plugin for snapd
|
||||
|
||||
|
||||
Package: nymea-plugin-sunposition
|
||||
Architecture: any
|
||||
Depends: ${misc:Depends},
|
||||
@ -1274,7 +1258,6 @@ Section: libs
|
||||
Architecture: all
|
||||
Depends: nymea-plugins,
|
||||
nymea-plugin-simulation,
|
||||
nymea-plugin-snapd,
|
||||
nymea-plugins-maker,
|
||||
nymea-plugins-merkurboard,
|
||||
Replaces: guh-plugins-all
|
||||
|
||||
1
debian/nymea-plugin-snapd.install.in
vendored
1
debian/nymea-plugin-snapd.install.in
vendored
@ -1 +0,0 @@
|
||||
usr/lib/@DEB_HOST_MULTIARCH@/nymea/plugins/libnymea_integrationpluginsnapd.so
|
||||
@ -51,7 +51,6 @@ PLUGIN_DIRS = \
|
||||
senic \
|
||||
serialportcommander \
|
||||
simulation \
|
||||
snapd \
|
||||
somfytahoma \
|
||||
sonos \
|
||||
sunposition \
|
||||
|
||||
@ -1,4 +0,0 @@
|
||||
# Snapd
|
||||
|
||||
This plugin allows to interact with the snap daemon in order to trigger updates, change the channel of snaps check if there are snaps which could be refreshed.
|
||||
The plugin allows also to change the refresh schedule of snapd.
|
||||
@ -1,292 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#include "integrationpluginsnapd.h"
|
||||
#include "integrations/thing.h"
|
||||
#include "plugininfo.h"
|
||||
#include "network/networkaccessmanager.h"
|
||||
|
||||
IntegrationPluginSnapd::IntegrationPluginSnapd()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
IntegrationPluginSnapd::~IntegrationPluginSnapd()
|
||||
{
|
||||
hardwareManager()->pluginTimerManager()->unregisterTimer(m_refreshTimer);
|
||||
hardwareManager()->pluginTimerManager()->unregisterTimer(m_updateTimer);
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::init()
|
||||
{
|
||||
// Initialize plugin configurations
|
||||
m_advancedMode = configValue(snapdPluginAdvancedModeParamTypeId).toBool();
|
||||
m_refreshTime = configValue(snapdPluginRefreshScheduleParamTypeId).toInt();
|
||||
connect(this, &IntegrationPluginSnapd::configValueChanged, this, &IntegrationPluginSnapd::onPluginConfigurationChanged);
|
||||
|
||||
// Refresh timer for snapd checks
|
||||
m_refreshTimer = hardwareManager()->pluginTimerManager()->registerTimer(2);
|
||||
connect(m_refreshTimer, &PluginTimer::timeout, this, &IntegrationPluginSnapd::onRefreshTimer);
|
||||
|
||||
// Check all 4 hours if there is an update available
|
||||
m_updateTimer = hardwareManager()->pluginTimerManager()->registerTimer(14400);
|
||||
connect(m_updateTimer, &PluginTimer::timeout, this, &IntegrationPluginSnapd::onUpdateTimer);
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::startMonitoringAutoThings()
|
||||
{
|
||||
// Check if we already have a controller and if snapd is available
|
||||
if (m_snapdControl && !m_snapdControl->available()) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if we already have a thing for the snapd control
|
||||
bool deviceAlreadyExists = false;
|
||||
foreach (Thing *thing, myThings()) {
|
||||
if (thing->thingClassId() == snapdControlThingClassId) {
|
||||
deviceAlreadyExists = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Add thing if there isn't already one
|
||||
if (!deviceAlreadyExists) {
|
||||
ThingDescriptor descriptor(snapdControlThingClassId, "Update manager");
|
||||
emit autoThingsAppeared({descriptor});
|
||||
}
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::postSetupThing(Thing *thing)
|
||||
{
|
||||
if (m_snapdControl && m_snapdControl->thing() == thing) {
|
||||
m_snapdControl->update();
|
||||
}
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::thingRemoved(Thing *thing)
|
||||
{
|
||||
if (thing->thingClassId() == snapdControlThingClassId) {
|
||||
qCWarning(dcSnapd()) << "User deleted snapd control.";
|
||||
|
||||
// Clean up old thing
|
||||
if (m_snapdControl) {
|
||||
delete m_snapdControl;
|
||||
m_snapdControl = nullptr;
|
||||
}
|
||||
|
||||
// Respawn thing immediately
|
||||
startMonitoringAutoThings();
|
||||
|
||||
} else if (thing->thingClassId() == snapThingClassId) {
|
||||
if (m_snapDevices.values().contains(thing)) {
|
||||
QString snapId = m_snapDevices.key(thing);
|
||||
m_snapDevices.remove(snapId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::setupThing(ThingSetupInfo *info)
|
||||
{
|
||||
Thing *thing = info->thing();
|
||||
qCDebug(dcSnapd()) << "Setup" << thing->name() << thing->params();
|
||||
|
||||
if (thing->thingClassId() == snapdControlThingClassId) {
|
||||
if (m_snapdControl) {
|
||||
delete m_snapdControl;
|
||||
m_snapdControl = nullptr;
|
||||
}
|
||||
|
||||
m_snapdControl = new SnapdControl(thing, this);
|
||||
m_snapdControl->setPreferredRefreshTime(configValue(snapdPluginRefreshScheduleParamTypeId).toInt());
|
||||
connect(m_snapdControl, &SnapdControl::snapListUpdated, this, &IntegrationPluginSnapd::onSnapListUpdated);
|
||||
|
||||
} else if (thing->thingClassId() == snapThingClassId) {
|
||||
thing->setName(QString("%1").arg(thing->paramValue(snapThingNameParamTypeId).toString()));
|
||||
m_snapDevices.insert(thing->paramValue(snapThingIdParamTypeId).toString(), thing);
|
||||
}
|
||||
|
||||
info->finish(Thing::ThingErrorNoError);
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::executeAction(ThingActionInfo *info)
|
||||
{
|
||||
Thing *thing = info->thing();
|
||||
Action action = info->action();
|
||||
|
||||
if (thing->thingClassId() == snapdControlThingClassId) {
|
||||
|
||||
if (!m_snapdControl) {
|
||||
qCDebug(dcSnapd()) << "There is currently no snapd controller.";
|
||||
return info->finish(Thing::ThingErrorHardwareFailure);
|
||||
}
|
||||
|
||||
if (!m_snapdControl->connected()) {
|
||||
qCDebug(dcSnapd()) << "Snapd controller not connected to to backend.";
|
||||
return info->finish(Thing::ThingErrorHardwareFailure);
|
||||
}
|
||||
|
||||
if (action.actionTypeId() == snapdControlStartUpdateActionTypeId) {
|
||||
m_snapdControl->snapRefresh();
|
||||
return info->finish(Thing::ThingErrorNoError);
|
||||
} else if (action.actionTypeId() == snapdControlCheckUpdatesActionTypeId) {
|
||||
m_snapdControl->checkForUpdates();
|
||||
return info->finish(Thing::ThingErrorNoError);
|
||||
}
|
||||
|
||||
return info->finish(Thing::ThingErrorActionTypeNotFound);
|
||||
|
||||
} else if (thing->thingClassId() == snapThingClassId) {
|
||||
|
||||
if (!m_snapdControl) {
|
||||
qCDebug(dcSnapd()) << "There is currently no snapd controller.";
|
||||
return info->finish(Thing::ThingErrorHardwareFailure);
|
||||
}
|
||||
|
||||
if (!m_snapdControl->connected()) {
|
||||
qCDebug(dcSnapd()) << "Snapd controller not connected to the backend.";
|
||||
return info->finish(Thing::ThingErrorHardwareFailure);
|
||||
}
|
||||
|
||||
if (action.actionTypeId() == snapChannelActionTypeId) {
|
||||
QString snapName = thing->paramValue(snapThingNameParamTypeId).toString();
|
||||
m_snapdControl->changeSnapChannel(snapName, action.param(snapChannelActionChannelParamTypeId).value().toString());
|
||||
return info->finish(Thing::ThingErrorNoError);
|
||||
} else if (action.actionTypeId() == snapRevertActionTypeId) {
|
||||
QString snapName = thing->paramValue(snapThingNameParamTypeId).toString();
|
||||
m_snapdControl->snapRevert(snapName);
|
||||
return info->finish(Thing::ThingErrorNoError);
|
||||
}
|
||||
|
||||
return info->finish(Thing::ThingErrorActionTypeNotFound);
|
||||
}
|
||||
|
||||
return info->finish(Thing::ThingErrorThingClassNotFound);
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::onPluginConfigurationChanged(const ParamTypeId ¶mTypeId, const QVariant &value)
|
||||
{
|
||||
qCDebug(dcSnapd()) << "Plugin configuration changed";
|
||||
|
||||
// Check advanced mode
|
||||
if (paramTypeId == snapdPluginAdvancedModeParamTypeId) {
|
||||
qCDebug(dcSnapd()) << "Advanced mode" << (value.toBool() ? "enabled." : "disabled.");
|
||||
m_advancedMode = value.toBool();
|
||||
|
||||
// If advanced mode disabled, clean up all snap devices
|
||||
if (!m_advancedMode) {
|
||||
foreach (const QString deviceSnapId, m_snapDevices.keys()) {
|
||||
Thing *thing = m_snapDevices.take(deviceSnapId);
|
||||
qCDebug(dcSnapd()) << "Remove thing for snap" << thing->paramValue(snapThingNameParamTypeId).toString();
|
||||
emit autoThingDisappeared(thing->id());
|
||||
}
|
||||
} else {
|
||||
if (!m_snapdControl)
|
||||
return;
|
||||
|
||||
m_snapdControl->update();
|
||||
}
|
||||
}
|
||||
|
||||
// Check refresh schedule
|
||||
if (paramTypeId == snapdPluginRefreshScheduleParamTypeId) {
|
||||
if (!m_snapdControl)
|
||||
return;
|
||||
|
||||
m_refreshTime = value.toInt();
|
||||
qCDebug(dcSnapd()) << "Refresh schedule start time" << QTime(m_refreshTime, 0, 0).toString("hh:mm");
|
||||
m_snapdControl->setPreferredRefreshTime(m_refreshTime);
|
||||
}
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::onRefreshTimer()
|
||||
{
|
||||
if (!m_snapdControl) {
|
||||
startMonitoringAutoThings();
|
||||
return;
|
||||
}
|
||||
|
||||
m_snapdControl->update();
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::onUpdateTimer()
|
||||
{
|
||||
if (!m_snapdControl)
|
||||
return;
|
||||
|
||||
m_snapdControl->checkForUpdates();
|
||||
}
|
||||
|
||||
void IntegrationPluginSnapd::onSnapListUpdated(const QVariantList &snapList)
|
||||
{
|
||||
// Check for new snap devices only in advanced mode
|
||||
if (!m_advancedMode)
|
||||
return;
|
||||
|
||||
// Collect list of snap id's from snapList for remove checking
|
||||
QStringList snapIdList;
|
||||
|
||||
// Check if we have to create a new thing
|
||||
foreach (const QVariant &snapVariant, snapList) {
|
||||
QVariantMap snapMap = snapVariant.toMap();
|
||||
snapIdList.append(snapMap.value("id").toString());
|
||||
// If there is no thing for this snap yet
|
||||
if (!m_snapDevices.contains(snapMap.value("id").toString())) {
|
||||
ThingDescriptor descriptor(snapThingClassId, QString("Snap %1").arg(snapMap.value("name").toString()));
|
||||
ParamList params;
|
||||
params.append(Param(snapThingNameParamTypeId, snapMap.value("name")));
|
||||
params.append(Param(snapThingIdParamTypeId, snapMap.value("id")));
|
||||
params.append(Param(snapThingSummaryParamTypeId, snapMap.value("summary")));
|
||||
params.append(Param(snapThingDescriptionParamTypeId, snapMap.value("description")));
|
||||
params.append(Param(snapThingDeveloperParamTypeId, snapMap.value("developer")));
|
||||
descriptor.setParams(params);
|
||||
|
||||
emit autoThingsAppeared({descriptor});
|
||||
} else {
|
||||
// Update the states
|
||||
Thing *thing = m_snapDevices.value(snapMap.value("id").toString(), nullptr);
|
||||
if (!thing) {
|
||||
qCWarning(dcSnapd()) << "Holding invalid snap thing. This should never happen. Please report a bug if you see this message.";
|
||||
continue;
|
||||
}
|
||||
|
||||
thing->setStateValue(snapChannelStateTypeId, snapMap.value("channel").toString());
|
||||
thing->setStateValue(snapVersionStateTypeId, snapMap.value("version").toString());
|
||||
thing->setStateValue(snapRevisionStateTypeId, snapMap.value("revision").toString());
|
||||
}
|
||||
}
|
||||
|
||||
// Check if we have to remove a thing
|
||||
foreach (const QString deviceSnapId, m_snapDevices.keys()) {
|
||||
if (!snapIdList.contains(deviceSnapId)) {
|
||||
Thing *thing = m_snapDevices.take(deviceSnapId);
|
||||
qCDebug(dcSnapd()) << "The snap" << thing->paramValue(snapThingNameParamTypeId).toString() << "is not installed any more.";
|
||||
emit autoThingDisappeared(thing->id());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,81 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef INTEGRATIONPLUGINSNAPD_H
|
||||
#define INTEGRATIONPLUGINSNAPD_H
|
||||
|
||||
#include "integrations/integrationplugin.h"
|
||||
#include "plugintimer.h"
|
||||
|
||||
#include <QDebug>
|
||||
#include <QNetworkInterface>
|
||||
#include <QProcess>
|
||||
#include <QUrlQuery>
|
||||
|
||||
#include "snapdcontrol.h"
|
||||
|
||||
|
||||
class IntegrationPluginSnapd: public IntegrationPlugin {
|
||||
Q_OBJECT
|
||||
Q_PLUGIN_METADATA(IID "io.nymea.IntegrationPlugin" FILE "integrationpluginsnapd.json")
|
||||
Q_INTERFACES(IntegrationPlugin)
|
||||
|
||||
public:
|
||||
explicit IntegrationPluginSnapd();
|
||||
~IntegrationPluginSnapd();
|
||||
|
||||
void init() override;
|
||||
void startMonitoringAutoThings() override;
|
||||
void postSetupThing(Thing *thing) override;
|
||||
void thingRemoved(Thing *thing) override;
|
||||
|
||||
void setupThing(ThingSetupInfo *info) override;
|
||||
void executeAction(ThingActionInfo *info) override;
|
||||
|
||||
private:
|
||||
SnapdControl *m_snapdControl = nullptr;
|
||||
PluginTimer *m_refreshTimer = nullptr;
|
||||
PluginTimer *m_updateTimer = nullptr;
|
||||
|
||||
bool m_advancedMode = false;
|
||||
int m_refreshTime = 2;
|
||||
|
||||
// Snap list for faster access (snap id, thing)
|
||||
QHash<QString, Thing *> m_snapDevices;
|
||||
|
||||
private slots:
|
||||
void onPluginConfigurationChanged(const ParamTypeId ¶mTypeId, const QVariant &value);
|
||||
void onRefreshTimer();
|
||||
void onUpdateTimer();
|
||||
void onSnapListUpdated(const QVariantList &snapList);
|
||||
|
||||
};
|
||||
|
||||
#endif // INTEGRATIONPLUGINSNAPD_H
|
||||
@ -1,193 +0,0 @@
|
||||
{
|
||||
"name": "Snapd",
|
||||
"displayName": "Snapd",
|
||||
"id": "b82bce59-59bf-48b3-b781-54a6f45800f3",
|
||||
"paramTypes": [
|
||||
{
|
||||
"id": "017fe4c5-fc41-41fe-8e67-08fdaccb89ea",
|
||||
"name": "advancedMode",
|
||||
"displayName": "Advanced mode",
|
||||
"type": "bool",
|
||||
"defaultValue": false
|
||||
},
|
||||
{
|
||||
"id": "d2e697d1-9a68-4666-bf40-8d70fa694eec",
|
||||
"name": "refreshSchedule",
|
||||
"displayName": "Automatic daily refresh schedule",
|
||||
"type": "int",
|
||||
"unit": "Hours",
|
||||
"minValue": 0,
|
||||
"maxValue": 23,
|
||||
"defaultValue": 2
|
||||
}
|
||||
],
|
||||
"vendors": [
|
||||
{
|
||||
"displayName": "Canonical",
|
||||
"name": "canonical",
|
||||
"id": "60582ddf-32ea-4fcd-a6f2-f3beaaf21517",
|
||||
"thingClasses": [
|
||||
{
|
||||
"id": "d90cda58-4d8c-4b7f-a982-38e56a95b72a",
|
||||
"name": "snapdControl",
|
||||
"displayName": "Update manager",
|
||||
"createMethods": [ "auto" ],
|
||||
"interfaces": [ "system" ],
|
||||
"paramTypes": [ ],
|
||||
"actionTypes": [
|
||||
{
|
||||
"id": "45626b75-f09d-4dd1-b6c4-ee33201b47b0",
|
||||
"name": "startUpdate",
|
||||
"displayName": "Start update",
|
||||
"paramTypes": [ ]
|
||||
},
|
||||
{
|
||||
"id": "4738f2c9-666e-45b9-91d3-7bcbf722b669",
|
||||
"name": "checkUpdates",
|
||||
"displayName": "Check for updates",
|
||||
"paramTypes": [ ]
|
||||
}
|
||||
],
|
||||
"stateTypes": [
|
||||
{
|
||||
"id": "6b662b3e-fd12-4f24-be77-aec066f16d8c",
|
||||
"name": "snapdAvailable",
|
||||
"displayName": "Update manager available",
|
||||
"displayNameEvent": "Update manager available changed",
|
||||
"type": "bool",
|
||||
"defaultValue": false
|
||||
},
|
||||
{
|
||||
"id": "a6b1d24b-d523-4516-9bce-5b467e5e09b2",
|
||||
"name": "updateAvailable",
|
||||
"displayName": "System update available",
|
||||
"displayNameEvent": "System update available changed",
|
||||
"type": "bool",
|
||||
"cached": false,
|
||||
"defaultValue": false
|
||||
},
|
||||
{
|
||||
"id": "01ca7a22-5607-4c5e-a465-a2ae7e8b529c",
|
||||
"name": "updateRunning",
|
||||
"displayName": "System update running",
|
||||
"displayNameEvent": "System update running changed",
|
||||
"type": "bool",
|
||||
"defaultValue": false
|
||||
},
|
||||
{
|
||||
"id": "c671545a-6bde-4c08-8e37-0d256841a3a5",
|
||||
"name": "lastUpdateTime",
|
||||
"displayName": "Last automatic system update",
|
||||
"displayNameEvent": "Last automatic system update time changed",
|
||||
"unit": "UnixTime",
|
||||
"type": "int",
|
||||
"defaultValue": 0
|
||||
},
|
||||
{
|
||||
"id": "122c2423-a1d9-400f-80f8-b1f798975914",
|
||||
"name": "nextUpdateTime",
|
||||
"displayName": "Next automatic system update",
|
||||
"displayNameEvent": "Next automatic system update time changed",
|
||||
"unit": "UnixTime",
|
||||
"type": "int",
|
||||
"defaultValue": 0
|
||||
},
|
||||
{
|
||||
"id": "4987aca3-3916-4cb3-938f-df6c99d04dbf",
|
||||
"name": "status",
|
||||
"displayName": "Status",
|
||||
"displayNameEvent": "Status changed",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ff0840d7-fcfc-4403-9d9f-301610d5a437",
|
||||
"name": "snap",
|
||||
"displayName": "Snap",
|
||||
"createMethods": [ "auto" ],
|
||||
"interfaces": ["system"],
|
||||
"paramTypes": [
|
||||
{
|
||||
"id": "4f38614d-8be0-48dc-a24d-cee9ff1f2a89",
|
||||
"name": "name",
|
||||
"displayName": "Name",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
},
|
||||
{
|
||||
"id": "9afb98fb-f717-4f4c-8009-1a6514054c5f",
|
||||
"name": "id",
|
||||
"displayName": "ID",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
},
|
||||
{
|
||||
"id": "12b9a65f-970b-49b5-b1d0-1625fc6d8758",
|
||||
"name": "summary",
|
||||
"displayName": "Summary",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
},
|
||||
{
|
||||
"id": "fe24c61b-e154-4259-b7ca-6f0602e9d1c3",
|
||||
"name": "description",
|
||||
"displayName": "Description",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
},
|
||||
{
|
||||
"id": "76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5",
|
||||
"name": "developer",
|
||||
"displayName": "Developer",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
}
|
||||
],
|
||||
"actionTypes": [
|
||||
{
|
||||
"id": "e061dee6-62fc-45cc-9c9f-403c2be52939",
|
||||
"name": "revert",
|
||||
"displayName": "Rollback to previous version"
|
||||
}
|
||||
],
|
||||
"stateTypes": [
|
||||
{
|
||||
"id": "7be2b61e-3f59-4b92-b2bb-50d027bb92ff",
|
||||
"name": "channel",
|
||||
"displayName": "Channel",
|
||||
"displayNameEvent": "Channel changed",
|
||||
"displayNameAction": "Set channel",
|
||||
"type": "QString",
|
||||
"defaultValue": "stable",
|
||||
"writable": true,
|
||||
"possibleValues": [
|
||||
"stable",
|
||||
"candidate",
|
||||
"beta",
|
||||
"edge"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "532a95f3-db29-427e-bb32-d5a22029e586",
|
||||
"name": "version",
|
||||
"displayName": "Version",
|
||||
"displayNameEvent": "Version changed",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
},
|
||||
{
|
||||
"id": "f26a6404-e011-11e7-9224-2350048461eb",
|
||||
"name": "revision",
|
||||
"displayName": "Revision",
|
||||
"displayNameEvent": "Revision changed",
|
||||
"type": "QString",
|
||||
"defaultValue": "-"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1,13 +0,0 @@
|
||||
{
|
||||
"title": "Snapd",
|
||||
"tagline": "Control the Snap daemon.",
|
||||
"icon": "snapd.svg",
|
||||
"stability": "consumer",
|
||||
"offline": true,
|
||||
"technologies": [
|
||||
"cloud"
|
||||
],
|
||||
"categories": [
|
||||
"tool"
|
||||
]
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
include(../plugins.pri)
|
||||
|
||||
TARGET = $$qtLibraryTarget(nymea_integrationpluginsnapd)
|
||||
|
||||
QT += network
|
||||
|
||||
SOURCES += \
|
||||
integrationpluginsnapd.cpp \
|
||||
snapdcontrol.cpp \
|
||||
snapdconnection.cpp \
|
||||
snapdreply.cpp
|
||||
|
||||
HEADERS += \
|
||||
integrationpluginsnapd.h \
|
||||
snapdcontrol.h \
|
||||
snapdconnection.h \
|
||||
snapdreply.h
|
||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 5.3 KiB |
@ -1,386 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#include "snapdconnection.h"
|
||||
#include "extern-plugininfo.h"
|
||||
|
||||
#include <QPointer>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonParseError>
|
||||
|
||||
|
||||
SnapdConnection::SnapdConnection(QObject *parent) :
|
||||
QLocalSocket(parent)
|
||||
{
|
||||
connect(this, &QLocalSocket::connected, this, &SnapdConnection::onConnected);
|
||||
connect(this, &QLocalSocket::disconnected, this, &SnapdConnection::onDisconnected);
|
||||
connect(this, &QLocalSocket::readyRead, this, &SnapdConnection::onReadyRead);
|
||||
connect(this, &QLocalSocket::stateChanged, this, &SnapdConnection::onStateChanged);
|
||||
connect(this, SIGNAL(error(QLocalSocket::LocalSocketError)), this, SLOT(onError(QLocalSocket::LocalSocketError)));
|
||||
}
|
||||
|
||||
SnapdConnection::~SnapdConnection()
|
||||
{
|
||||
close();
|
||||
}
|
||||
|
||||
SnapdReply *SnapdConnection::get(const QString &path, QObject *parent)
|
||||
{
|
||||
SnapdReply *reply = new SnapdReply(parent);
|
||||
reply->setRequestPath(path);
|
||||
reply->setRequestMethod("GET");
|
||||
reply->setRequestRawMessage(createRequestHeader("GET", path));
|
||||
|
||||
// Enqueue the new reply
|
||||
m_replyQueue.enqueue(reply);
|
||||
sendNextRequest();
|
||||
|
||||
// Note: the caller owns the object now
|
||||
return reply;
|
||||
}
|
||||
|
||||
SnapdReply *SnapdConnection::post(const QString &path, const QByteArray &payload, QObject *parent)
|
||||
{
|
||||
SnapdReply *reply = new SnapdReply(parent);
|
||||
reply->setRequestPath(path);
|
||||
reply->setRequestMethod("POST");
|
||||
QByteArray header = createRequestHeader("POST", path, payload);
|
||||
reply->setRequestRawMessage(header.append(payload));
|
||||
|
||||
// Enqueue the new reply
|
||||
m_replyQueue.enqueue(reply);
|
||||
sendNextRequest();
|
||||
|
||||
// Note: the caller owns the object now
|
||||
return reply;
|
||||
}
|
||||
|
||||
SnapdReply *SnapdConnection::put(const QString &path, const QByteArray &payload, QObject *parent)
|
||||
{
|
||||
SnapdReply *reply = new SnapdReply(parent);
|
||||
reply->setRequestPath(path);
|
||||
reply->setRequestMethod("PUT");
|
||||
QByteArray header = createRequestHeader("PUT", path, payload);
|
||||
reply->setRequestRawMessage(header.append(payload));
|
||||
|
||||
// Enqueue the new reply
|
||||
m_replyQueue.enqueue(reply);
|
||||
sendNextRequest();
|
||||
|
||||
// Note: the caller owns the object now
|
||||
return reply;
|
||||
}
|
||||
|
||||
bool SnapdConnection::isConnected() const
|
||||
{
|
||||
return m_connected;
|
||||
}
|
||||
|
||||
void SnapdConnection::setConnected(const bool &connected)
|
||||
{
|
||||
if (m_connected == connected)
|
||||
return;
|
||||
|
||||
m_connected = connected;
|
||||
emit connectedChanged(m_connected);
|
||||
|
||||
// Clean up replies of disconnected
|
||||
if (!m_connected) {
|
||||
// Clean up current reply
|
||||
if (m_currentReply) {
|
||||
m_currentReply->setFinished(false);
|
||||
m_currentReply = nullptr;
|
||||
}
|
||||
|
||||
// Clean up queue
|
||||
while (!m_replyQueue.isEmpty()) {
|
||||
QPointer<SnapdReply> reply = m_replyQueue.dequeue();
|
||||
if (!reply.isNull()) {
|
||||
reply->deleteLater();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Start with a clean parsing
|
||||
m_payload.clear();
|
||||
m_header.clear();
|
||||
m_chuncked = false;
|
||||
}
|
||||
}
|
||||
|
||||
QByteArray SnapdConnection::createRequestHeader(const QString &method, const QString &path, const QByteArray &payload)
|
||||
{
|
||||
QByteArray request;
|
||||
request.append(QString("%1 %2 HTTP/1.1\r\n").arg(method).arg(path).toUtf8());
|
||||
request.append("Host: http\r\n");
|
||||
request.append("Accept: *\r\n");
|
||||
if (!payload.isEmpty()) {
|
||||
request.append("Content-Type: application/json\r\n");
|
||||
request.append(QString("Content-Length: %1\r\n").arg(payload.count()).toUtf8());
|
||||
}
|
||||
|
||||
request.append("\r\n");
|
||||
return request;
|
||||
}
|
||||
|
||||
QByteArray SnapdConnection::getChunckedPayload(const QByteArray &payload)
|
||||
{
|
||||
// Read line by line
|
||||
QStringList payloadLines = QString::fromUtf8(payload).split(QRegExp("\r\n"));
|
||||
if (payloadLines.count() < 4) {
|
||||
qCWarning(dcSnapd()) << "Chuncked payload invalid linecount" << payloadLines.count();
|
||||
return QByteArray();
|
||||
}
|
||||
|
||||
int payloadSize = payloadLines.at(2).toInt(0, 16);
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "Payload size" << payloadSize;
|
||||
|
||||
if (payloadLines.at(3).toUtf8().size() != payloadSize) {
|
||||
qCWarning(dcSnapd()) << "Invalid payload size" << payloadLines.at(3).toUtf8().size() << "!=" << payloadSize;
|
||||
return QByteArray();
|
||||
}
|
||||
|
||||
// Return just the payload
|
||||
return payloadLines.at(3).toUtf8();
|
||||
}
|
||||
|
||||
void SnapdConnection::processData()
|
||||
{
|
||||
if (!m_currentReply) {
|
||||
qCWarning(dcSnapd()) << "Data received without current reply" << m_payload;
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_header.isEmpty()) {
|
||||
qCWarning(dcSnapd()) << "Could not process data. There is no header.";
|
||||
m_currentReply->setFinished();
|
||||
return;
|
||||
}
|
||||
|
||||
// Get the raw payload
|
||||
QByteArray payloadData;
|
||||
if (m_chuncked) {
|
||||
payloadData = getChunckedPayload(m_payload);
|
||||
} else {
|
||||
payloadData = m_payload;
|
||||
}
|
||||
|
||||
// Check if there are data to process
|
||||
if (m_payload.isEmpty()) {
|
||||
qCWarning(dcSnapd()) << "Could not process data. There is no payload to process.";
|
||||
return;
|
||||
}
|
||||
|
||||
// Parse header
|
||||
QHash<QString, QString> parsedHeader;
|
||||
QStringList headerLines = QString::fromUtf8(m_header).split(QRegExp("\r\n"));
|
||||
|
||||
// Read status line
|
||||
QString statusLine = headerLines.takeFirst();
|
||||
QStringList statusLineTokens = statusLine.split(QRegExp("[ \r\n][ \r\n]*"));
|
||||
if (statusLineTokens.count() < 3) {
|
||||
qCWarning(dcSnapd()) << "Could not parse HTTP status line:" << statusLine;
|
||||
return;
|
||||
}
|
||||
|
||||
bool statusCodeOk = false;
|
||||
int statusCode = statusLineTokens.at(1).simplified().toInt(&statusCodeOk);
|
||||
if (!statusCodeOk) {
|
||||
qCWarning(dcSnapd()) << "Could not parse HTTP status code:" << statusLineTokens.at(1);
|
||||
return;
|
||||
}
|
||||
|
||||
QString statusMessage;
|
||||
for (int i = 2; i < statusLineTokens.count(); i++) {
|
||||
statusMessage.append(statusLineTokens.at(i).simplified());
|
||||
if (i < statusLineTokens.count() -1) {
|
||||
statusMessage.append(" ");
|
||||
}
|
||||
}
|
||||
|
||||
// Verify header formating
|
||||
foreach (const QString &line, headerLines) {
|
||||
if (!line.contains(":")) {
|
||||
qCWarning(dcSnapd()) << "Invalid HTTP header. Missing \":\" in line" << line;
|
||||
return;
|
||||
}
|
||||
|
||||
int index = line.indexOf(":");
|
||||
QString key = line.left(index).toUtf8().simplified();
|
||||
QString value = line.right(line.count() - index - 1).toUtf8().simplified();
|
||||
//qCDebug(dcSnapd()) << " Key:" << key << "Value:" << value;
|
||||
parsedHeader.insert(key, value);
|
||||
}
|
||||
|
||||
// Parse payload
|
||||
QJsonParseError error;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(payloadData, &error);
|
||||
if (error.error != QJsonParseError::NoError) {
|
||||
qCWarning(dcSnapd()) << "Got invalid JSON data from snapd:" << error.offset << error.errorString();
|
||||
qCWarning(dcSnapd()) << qUtf8Printable(payloadData);
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "<--" << m_currentReply->requestPath() << statusCode << statusMessage;
|
||||
|
||||
// Fill reply
|
||||
m_currentReply->setStatusCode(statusCode);
|
||||
m_currentReply->setStatusMessage(statusMessage);
|
||||
m_currentReply->setHeader(parsedHeader);
|
||||
m_currentReply->setDataMap(jsonDoc.toVariant().toMap());
|
||||
m_currentReply->setFinished();
|
||||
|
||||
// Current data stream finished, reset for new messages
|
||||
m_payload.clear();
|
||||
m_header.clear();
|
||||
m_chuncked = false;
|
||||
|
||||
// Ready for next reply
|
||||
m_currentReply = nullptr;
|
||||
sendNextRequest();
|
||||
}
|
||||
|
||||
void SnapdConnection::sendNextRequest()
|
||||
{
|
||||
// Check if nothing else to do
|
||||
if (m_replyQueue.isEmpty())
|
||||
return;
|
||||
|
||||
// Check a reply is currently pending
|
||||
if (m_currentReply)
|
||||
return;
|
||||
|
||||
// Dequeue and send next reply
|
||||
SnapdReply *reply = m_replyQueue.dequeue();
|
||||
m_currentReply = reply;
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "-->" << reply->requestMethod() << reply->requestPath();
|
||||
|
||||
// Send current reply request. If write failes, the reply is finished invalid and the owner has to delete it
|
||||
qint64 bytesWritten = write(reply->requestRawMessage());
|
||||
if (bytesWritten < 0) {
|
||||
qCWarning(dcSnapd()) << "Could not write request data" << reply->requestMethod() << reply->requestMethod();
|
||||
m_currentReply->setFinished(false);
|
||||
m_currentReply = nullptr;
|
||||
sendNextRequest();
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdConnection::onConnected()
|
||||
{
|
||||
setConnected(true);
|
||||
}
|
||||
|
||||
void SnapdConnection::onDisconnected()
|
||||
{
|
||||
setConnected(false);
|
||||
}
|
||||
|
||||
void SnapdConnection::onError(const QLocalSocket::LocalSocketError &socketError)
|
||||
{
|
||||
qCWarning(dcSnapd()) << "Socket error" << socketError << errorString();
|
||||
}
|
||||
|
||||
void SnapdConnection::onStateChanged(const QLocalSocket::LocalSocketState &state)
|
||||
{
|
||||
switch (state) {
|
||||
case QLocalSocket::UnconnectedState:
|
||||
qCDebug(dcSnapd()) << "Disconnected from snapd.";
|
||||
break;
|
||||
case QLocalSocket::ConnectingState:
|
||||
qCDebug(dcSnapd()) << "Connecting to snapd...";
|
||||
break;
|
||||
case QLocalSocket::ConnectedState:
|
||||
qCDebug(dcSnapd()) << "Connected to snapd.";
|
||||
break;
|
||||
case QLocalSocket::ClosingState:
|
||||
qCDebug(dcSnapd()) << "Closing connection to snapd.";
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdConnection::onReadyRead()
|
||||
{
|
||||
QByteArray data = readAll();
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "Data received:" << data;
|
||||
|
||||
// If we are not appending to a reply
|
||||
if (!m_chuncked) {
|
||||
|
||||
// Parse header
|
||||
int headerIndex = data.indexOf("\r\n\r\n");
|
||||
if (headerIndex < 0) {
|
||||
qCWarning(dcSnapd()) << "Invalid response format. Could not find header/payload mark.";
|
||||
return;
|
||||
}
|
||||
|
||||
m_header = data.left(headerIndex);
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "Header:" << m_header;
|
||||
|
||||
QByteArray payload = data.right(data.length() - (headerIndex));
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "Payload" << payload;
|
||||
|
||||
// Check if this message is chuncked
|
||||
if (m_header.contains("chunked")) {
|
||||
|
||||
if (m_debug)
|
||||
qCDebug(dcSnapd()) << "Chuncked message receiving";
|
||||
|
||||
m_chuncked = true;
|
||||
m_payload.append(payload);
|
||||
|
||||
if (m_payload.endsWith("\r\n0\r\n\r\n")) {
|
||||
// Chuncked message finished
|
||||
processData();
|
||||
}
|
||||
} else {
|
||||
// Not chucked
|
||||
m_payload = payload;
|
||||
processData();
|
||||
}
|
||||
} else {
|
||||
m_payload.append(data);
|
||||
if (m_payload.endsWith("\r\n0\r\n\r\n")) {
|
||||
// Chuncked message finished
|
||||
processData();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,86 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef SNAPDCONNECTION_H
|
||||
#define SNAPDCONNECTION_H
|
||||
|
||||
#include <QQueue>
|
||||
#include <QObject>
|
||||
#include <QLocalSocket>
|
||||
|
||||
#include "snapdreply.h"
|
||||
|
||||
class SnapdConnection : public QLocalSocket
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit SnapdConnection(QObject *parent = nullptr);
|
||||
~SnapdConnection();
|
||||
|
||||
SnapdReply *get(const QString &path, QObject *parent);
|
||||
SnapdReply *post(const QString &path, const QByteArray &payload, QObject *parent);
|
||||
SnapdReply *put(const QString &path, const QByteArray &payload, QObject *parent);
|
||||
|
||||
bool isConnected() const;
|
||||
|
||||
private:
|
||||
bool m_chuncked = false;
|
||||
|
||||
QByteArray m_header;
|
||||
QByteArray m_payload;
|
||||
|
||||
bool m_connected = false;
|
||||
bool m_debug = false;
|
||||
|
||||
SnapdReply *m_currentReply = nullptr;
|
||||
QQueue<SnapdReply *> m_replyQueue;
|
||||
|
||||
void setConnected(const bool &connected);
|
||||
|
||||
// Helper methods
|
||||
QByteArray createRequestHeader(const QString &method, const QString &path, const QByteArray &payload = QByteArray());
|
||||
QByteArray getChunckedPayload(const QByteArray &payload);
|
||||
|
||||
void processData();
|
||||
void sendNextRequest();
|
||||
|
||||
signals:
|
||||
void connectedChanged(const bool &connected);
|
||||
|
||||
private slots:
|
||||
void onConnected();
|
||||
void onDisconnected();
|
||||
void onError(const QLocalSocket::LocalSocketError &socketError);
|
||||
void onStateChanged(const QLocalSocket::LocalSocketState &state);
|
||||
void onReadyRead();
|
||||
|
||||
};
|
||||
|
||||
#endif // SNAPDCONNECTION_H
|
||||
@ -1,496 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#include "snapdcontrol.h"
|
||||
#include "extern-plugininfo.h"
|
||||
|
||||
#include <QFileInfo>
|
||||
#include <QDateTime>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonParseError>
|
||||
|
||||
SnapdControl::SnapdControl(Thing *thing, QObject *parent) :
|
||||
QObject(parent),
|
||||
m_device(thing),
|
||||
m_snapdSocketPath("/run/snapd.socket")
|
||||
{
|
||||
// If a change is one of following kind, the plugin will recognize it as update running
|
||||
m_updateChangeKinds.append("install-snap");
|
||||
m_updateChangeKinds.append("remove-snap");
|
||||
m_updateChangeKinds.append("refresh-snap");
|
||||
m_updateChangeKinds.append("revert-snap");
|
||||
|
||||
m_snapConnection = new SnapdConnection(this);
|
||||
connect(m_snapConnection, &SnapdConnection::connectedChanged, this, &SnapdControl::onConnectedChanged);
|
||||
}
|
||||
|
||||
Thing *SnapdControl::thing()
|
||||
{
|
||||
return m_device;
|
||||
}
|
||||
|
||||
bool SnapdControl::available() const
|
||||
{
|
||||
QFileInfo fileInfo(m_snapdSocketPath);
|
||||
if (!fileInfo.exists()) {
|
||||
qCDebug(dcSnapd()) << "The socket descriptor" << m_snapdSocketPath << "does not exist";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!fileInfo.isReadable()) {
|
||||
qCDebug(dcSnapd()) << "The socket descriptor" << m_snapdSocketPath << "is not readable";
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!fileInfo.isWritable()) {
|
||||
qCDebug(dcSnapd()) << "The socket descriptor" << m_snapdSocketPath << "is not writable";
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool SnapdControl::connected() const
|
||||
{
|
||||
return m_snapConnection->isConnected();
|
||||
}
|
||||
|
||||
bool SnapdControl::enabled() const
|
||||
{
|
||||
return m_enabled;
|
||||
}
|
||||
|
||||
bool SnapdControl::timerBasedSchedule() const
|
||||
{
|
||||
return m_timerBasedSchedule;
|
||||
}
|
||||
|
||||
void SnapdControl::loadSystemInfo()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
SnapdReply *reply = m_snapConnection->get("/v2/system-info", this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onLoadSystemInfoFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::loadSnapList()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
SnapdReply *reply = m_snapConnection->get("/v2/snaps", this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onLoadSnapListFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::loadRunningChanges()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
SnapdReply *reply = m_snapConnection->get("/v2/changes", this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onLoadRunningChangesFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::configureRefreshSchedule()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
QVariantMap configuration; QVariantMap configMap;
|
||||
configMap.insert("timer", m_preferredRefreshSchedule);
|
||||
configMap.insert("schedule", m_preferredRefreshSchedule);
|
||||
configuration.insert("refresh", configMap);
|
||||
|
||||
qCDebug(dcSnapd()) << "Configure refresh schedule from" << m_currentRefreshSchedule << "-->" << m_preferredRefreshSchedule;
|
||||
|
||||
SnapdReply *reply = m_snapConnection->put(QString("/v2/snaps/core/conf"), QJsonDocument::fromVariant(configuration).toJson(QJsonDocument::Compact), this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onConfigureRefreshScheduleFinished);
|
||||
}
|
||||
|
||||
bool SnapdControl::validAsyncResponse(const QVariantMap &responseMap)
|
||||
{
|
||||
if (!responseMap.contains("type"))
|
||||
return false;
|
||||
|
||||
if (responseMap.value("type") == "error")
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void SnapdControl::onConnectedChanged(const bool &connected)
|
||||
{
|
||||
if (connected) {
|
||||
thing()->setStateValue(snapdControlSnapdAvailableStateTypeId, true);
|
||||
update();
|
||||
} else {
|
||||
thing()->setStateValue(snapdControlSnapdAvailableStateTypeId, false);
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdControl::onLoadSystemInfoFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Load system info request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
QVariantMap result = reply->dataMap().value("result").toMap();
|
||||
QDateTime lastRefreshTime = QDateTime::fromString(result.value("refresh").toMap().value("last").toString(), Qt::ISODate);
|
||||
QDateTime nextRefreshTime = QDateTime::fromString(result.value("refresh").toMap().value("next").toString(), Qt::ISODate);
|
||||
|
||||
// Set update time information
|
||||
thing()->setStateValue(snapdControlLastUpdateTimeStateTypeId, lastRefreshTime.toTime_t());
|
||||
thing()->setStateValue(snapdControlNextUpdateTimeStateTypeId, nextRefreshTime.toTime_t());
|
||||
|
||||
// Check if we are working on refresh timer or refresh schedule
|
||||
if (result.value("refresh").toMap().contains("schedule")) {
|
||||
// Schedule based core snap
|
||||
m_timerBasedSchedule = false;
|
||||
m_currentRefreshSchedule = result.value("refresh").toMap().value("schedule").toString();
|
||||
} else if (result.value("refresh").toMap().contains("timer")) {
|
||||
// Timer based core snap: snapd >= 2.31
|
||||
m_timerBasedSchedule = true;
|
||||
m_currentRefreshSchedule = result.value("refresh").toMap().value("timer").toString();
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
|
||||
// Check if the refresh schedule should be updated
|
||||
if (m_currentRefreshSchedule != m_preferredRefreshSchedule) {
|
||||
configureRefreshSchedule();
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdControl::onLoadSnapListFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Load system info request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
emit snapListUpdated(reply->dataMap().value("result").toList());
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::onLoadRunningChangesFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Load running changes request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
// Load changes list
|
||||
QVariantList changes = reply->dataMap().value("result").toList();
|
||||
reply->deleteLater();
|
||||
|
||||
// If there are no running changes, update is not running
|
||||
if (changes.isEmpty()) {
|
||||
// Update not running any more
|
||||
thing()->setStateValue(snapdControlUpdateRunningStateTypeId, false);
|
||||
thing()->setStateValue(snapdControlStatusStateTypeId, "-");
|
||||
return;
|
||||
}
|
||||
|
||||
bool updateRunning = false;
|
||||
QString updateStatus = "-";
|
||||
|
||||
// Verifiy if a change is running and which one is currently doing something
|
||||
foreach (const QVariant &changeVariant, changes) {
|
||||
QVariantMap changeMap = changeVariant.toMap();
|
||||
|
||||
int changeId = changeMap.value("id").toInt();
|
||||
bool changeReady = changeMap.value("ready").toBool();
|
||||
QString changeKind = changeMap.value("kind").toString();
|
||||
QString changeStatus = changeMap.value("status").toString();
|
||||
QString changeSummary = changeMap.value("summary").toString();
|
||||
|
||||
// If there is a change kind "Doing" or "Do"
|
||||
if ( (changeStatus == "Doing" || changeStatus == "Do") && m_updateChangeKinds.contains(changeKind)) {
|
||||
// Set the status of the current running change
|
||||
updateRunning = true;
|
||||
if (changeStatus == "Doing") {
|
||||
updateStatus = changeSummary;
|
||||
qCDebug(dcSnapd()).noquote() << "Current change:" << changeId << (changeReady ? "ready" : "not ready") << changeStatus << changeKind << changeSummary;
|
||||
|
||||
// TODO: calculate the overall percentage of the update process (Do + Doing / Done)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
thing()->setStateValue(snapdControlUpdateRunningStateTypeId, updateRunning);
|
||||
thing()->setStateValue(snapdControlStatusStateTypeId, updateStatus);
|
||||
|
||||
// If currently an update is running, lets force update available to false if set to true
|
||||
// keep this below the setStateValue for updateRunning or we might have intermediate states indicating
|
||||
// no update running and none available
|
||||
if (updateRunning && thing()->stateValue(snapdControlUpdateAvailableStateTypeId).toBool()) {
|
||||
thing()->setStateValue(snapdControlUpdateAvailableStateTypeId, false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void SnapdControl::onConfigureRefreshScheduleFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Set refresh schedule request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!validAsyncResponse(reply->dataMap())) {
|
||||
qCWarning(dcSnapd()) << "Async refresh configuration request finished with error" << reply->dataMap().value("status").toString() << reply->dataMap().value("status-code").toInt();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
qCDebug(dcSnapd()) << "Configure refresh schedule finished successfully";
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::onSnapRefreshFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Snap refresh request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!validAsyncResponse(reply->dataMap())) {
|
||||
qCWarning(dcSnapd()) << "Async refresh request finished with error" << reply->dataMap().value("status").toString() << reply->dataMap().value("status-code").toInt();
|
||||
} else {
|
||||
loadRunningChanges();
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::onSnapRevertFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Snap revert request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!validAsyncResponse(reply->dataMap())) {
|
||||
qCWarning(dcSnapd()) << "Async change request finished with error" << reply->dataMap().value("status").toString() << reply->dataMap().value("status-code").toInt();;
|
||||
} else {
|
||||
loadRunningChanges();
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::onCheckForUpdatesFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Check for snap updates request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
qCDebug(dcSnapd()) << "Check for available snap updates finished.";
|
||||
if (reply->dataMap().value("result").toList().isEmpty()) {
|
||||
qCDebug(dcSnapd()) << "There are no snap updates available.";
|
||||
thing()->setStateValue(snapdControlUpdateAvailableStateTypeId, false);
|
||||
} else {
|
||||
// Print available snap updates
|
||||
qCDebug(dcSnapd()) << "Following snaps can be updated:";
|
||||
foreach (const QVariant &resultVariant, reply->dataMap().value("result").toList()) {
|
||||
QVariantMap resultMap = resultVariant.toMap();
|
||||
qCDebug(dcSnapd()) << " -->" << resultMap.value("name").toString() << resultMap.value("version").toString();
|
||||
}
|
||||
|
||||
thing()->setStateValue(snapdControlUpdateAvailableStateTypeId, true);
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::onChangeSnapChannelFinished()
|
||||
{
|
||||
SnapdReply *reply = static_cast<SnapdReply *>(sender());
|
||||
if (!reply->isValid()) {
|
||||
qCDebug(dcSnapd()) << "Change snap channel request finished with error" << reply->requestPath();
|
||||
reply->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!validAsyncResponse(reply->dataMap())) {
|
||||
qCWarning(dcSnapd()) << "Async change request finished with error" << reply->dataMap().value("status").toString() << reply->dataMap().value("status-code").toInt();
|
||||
} else {
|
||||
loadRunningChanges();
|
||||
}
|
||||
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
void SnapdControl::enable()
|
||||
{
|
||||
m_enabled = true;
|
||||
update();
|
||||
}
|
||||
|
||||
void SnapdControl::disable()
|
||||
{
|
||||
m_enabled = false;
|
||||
|
||||
if (m_snapConnection) {
|
||||
m_snapConnection->close();
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdControl::update()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!available())
|
||||
return;
|
||||
|
||||
if (!enabled())
|
||||
return;
|
||||
|
||||
// Try to reconnect if unconnected
|
||||
if (m_snapConnection->state() == QLocalSocket::UnconnectedState) {
|
||||
m_snapConnection->connectToServer(m_snapdSocketPath, QLocalSocket::ReadWrite);
|
||||
return;
|
||||
}
|
||||
|
||||
// Note: this makes sure the state is really connected (including connection initialisation stuff)
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
// Update information
|
||||
if (thing()->stateValue(snapdControlUpdateRunningStateTypeId).toBool()) {
|
||||
// Note: if an update is running, just load the changes to save system resources
|
||||
loadRunningChanges();
|
||||
} else {
|
||||
// Normal update
|
||||
loadSystemInfo();
|
||||
loadSnapList();
|
||||
loadRunningChanges();
|
||||
}
|
||||
}
|
||||
|
||||
void SnapdControl::snapRefresh()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
QVariantMap request;
|
||||
request.insert("action", "refresh");
|
||||
|
||||
qCDebug(dcSnapd()) << "Refresh all snaps";
|
||||
SnapdReply *reply = m_snapConnection->post("/v2/snaps", QJsonDocument::fromVariant(request).toJson(QJsonDocument::Compact), this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onSnapRefreshFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::changeSnapChannel(const QString &snapName, const QString &channel)
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
QVariantMap request;
|
||||
request.insert("action", "refresh");
|
||||
request.insert("channel", channel);
|
||||
|
||||
qCDebug(dcSnapd()) << "Refresh snap" << snapName << "to channel" << channel;
|
||||
SnapdReply *reply = m_snapConnection->post(QString("/v2/snaps/%1").arg(snapName), QJsonDocument::fromVariant(request).toJson(QJsonDocument::Compact), this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onChangeSnapChannelFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::checkForUpdates()
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
qCDebug(dcSnapd()) << "Checking for available snap updates";
|
||||
SnapdReply *reply = m_snapConnection->get("/v2/find?select=refresh", this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onCheckForUpdatesFinished);
|
||||
}
|
||||
|
||||
void SnapdControl::setPreferredRefreshTime(int startTime)
|
||||
{
|
||||
// Schedule the refresh between startTime and startTime + 59 minutes
|
||||
QTime start(startTime, 0, 0);
|
||||
QTime end = start.addSecs(3540);
|
||||
m_preferredRefreshSchedule = QString("%1-%2").arg(start.toString("h:mm")).arg(end.toString("h:mm"));
|
||||
qCDebug(dcSnapd()) << "Set preferred refresh schedule to " << m_preferredRefreshSchedule;
|
||||
}
|
||||
|
||||
void SnapdControl::snapRevert(const QString &snapName)
|
||||
{
|
||||
if (!m_snapConnection)
|
||||
return;
|
||||
|
||||
if (!m_snapConnection->isConnected())
|
||||
return;
|
||||
|
||||
QVariantMap request;
|
||||
request.insert("action", "revert");
|
||||
|
||||
qCDebug(dcSnapd()) << "Revert snap" << snapName;
|
||||
SnapdReply *reply = m_snapConnection->post(QString("/v2/snaps/%1").arg(snapName), QJsonDocument::fromVariant(request).toJson(QJsonDocument::Compact), this);
|
||||
connect(reply, &SnapdReply::finished, this, &SnapdControl::onSnapRevertFinished);
|
||||
}
|
||||
@ -1,107 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef SNAPDCONTROL_H
|
||||
#define SNAPDCONTROL_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QLocalSocket>
|
||||
|
||||
#include "integrations/thing.h"
|
||||
#include "snapdconnection.h"
|
||||
|
||||
class SnapdControl : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit SnapdControl(Thing *thing, QObject *parent = nullptr);
|
||||
|
||||
Thing *thing();
|
||||
|
||||
bool available() const;
|
||||
bool connected() const;
|
||||
bool enabled() const;
|
||||
bool timerBasedSchedule() const;
|
||||
|
||||
private:
|
||||
Thing *m_device = nullptr;
|
||||
SnapdConnection *m_snapConnection = nullptr;
|
||||
|
||||
QString m_snapdSocketPath;
|
||||
bool m_enabled = true;
|
||||
|
||||
QStringList m_updateChangeKinds;
|
||||
|
||||
bool m_timerBasedSchedule = false;
|
||||
QString m_currentRefreshSchedule;
|
||||
QString m_preferredRefreshSchedule;
|
||||
|
||||
// Update calls
|
||||
void loadSystemInfo();
|
||||
void loadSnapList();
|
||||
void loadRunningChanges();
|
||||
|
||||
void configureRefreshSchedule();
|
||||
|
||||
bool validAsyncResponse(const QVariantMap &responseMap);
|
||||
|
||||
private slots:
|
||||
void onConnectedChanged(const bool &connected);
|
||||
|
||||
// Response handler for different requests
|
||||
void onLoadSystemInfoFinished();
|
||||
void onLoadSnapListFinished();
|
||||
void onLoadRunningChangesFinished();
|
||||
void onConfigureRefreshScheduleFinished();
|
||||
|
||||
void onSnapRefreshFinished();
|
||||
void onSnapRevertFinished();
|
||||
void onCheckForUpdatesFinished();
|
||||
void onChangeSnapChannelFinished();
|
||||
|
||||
signals:
|
||||
void snapListUpdated(const QVariantList &snapList);
|
||||
|
||||
public slots:
|
||||
void enable();
|
||||
void disable();
|
||||
|
||||
// Snapd request calls
|
||||
void update();
|
||||
void snapRefresh();
|
||||
void checkForUpdates();
|
||||
|
||||
void setPreferredRefreshTime(int startTime);
|
||||
|
||||
void snapRevert(const QString &snapName);
|
||||
void changeSnapChannel(const QString &snapName, const QString &channel);
|
||||
};
|
||||
|
||||
#endif // SNAPDCONTROL_H
|
||||
@ -1,125 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#include "snapdreply.h"
|
||||
|
||||
QString SnapdReply::requestPath() const
|
||||
{
|
||||
return m_requestPath;
|
||||
}
|
||||
|
||||
QString SnapdReply::requestMethod() const
|
||||
{
|
||||
return m_requestMethod;
|
||||
}
|
||||
|
||||
QByteArray SnapdReply::requestRawMessage() const
|
||||
{
|
||||
return m_requestRawMessage;
|
||||
}
|
||||
|
||||
int SnapdReply::statusCode() const
|
||||
{
|
||||
return m_statusCode;
|
||||
}
|
||||
|
||||
QString SnapdReply::statusMessage() const
|
||||
{
|
||||
return m_statusMessage;
|
||||
}
|
||||
|
||||
QHash<QString, QString> SnapdReply::header() const
|
||||
{
|
||||
return m_header;
|
||||
}
|
||||
|
||||
QVariantMap SnapdReply::dataMap() const
|
||||
{
|
||||
return m_dataMap;
|
||||
}
|
||||
|
||||
bool SnapdReply::isFinished() const
|
||||
{
|
||||
return m_isFinished;
|
||||
}
|
||||
|
||||
bool SnapdReply::isValid() const
|
||||
{
|
||||
return m_valid;
|
||||
}
|
||||
|
||||
SnapdReply::SnapdReply(QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void SnapdReply::setRequestPath(const QString &requestPath)
|
||||
{
|
||||
m_requestPath = requestPath;
|
||||
}
|
||||
|
||||
void SnapdReply::setRequestMethod(const QString &requestMethod)
|
||||
{
|
||||
m_requestMethod = requestMethod;
|
||||
}
|
||||
|
||||
void SnapdReply::setRequestRawMessage(const QByteArray &rawMessage)
|
||||
{
|
||||
m_requestRawMessage = rawMessage;
|
||||
}
|
||||
|
||||
void SnapdReply::setStatusCode(const int &statusCode)
|
||||
{
|
||||
m_statusCode = statusCode;
|
||||
}
|
||||
|
||||
void SnapdReply::setStatusMessage(const QString &statusMessage)
|
||||
{
|
||||
m_statusMessage = statusMessage;
|
||||
}
|
||||
|
||||
void SnapdReply::setHeader(const QHash<QString, QString> header)
|
||||
{
|
||||
m_header = header;
|
||||
}
|
||||
|
||||
void SnapdReply::setDataMap(const QVariantMap &dataMap)
|
||||
{
|
||||
m_dataMap = dataMap;
|
||||
}
|
||||
|
||||
void SnapdReply::setFinished(const bool &valid)
|
||||
{
|
||||
m_isFinished = true;
|
||||
m_valid = valid;
|
||||
|
||||
emit finished();
|
||||
}
|
||||
@ -1,90 +0,0 @@
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Copyright 2013 - 2020, nymea GmbH
|
||||
* Contact: contact@nymea.io
|
||||
*
|
||||
* This file is part of nymea.
|
||||
* This project including source code and documentation is protected by
|
||||
* copyright law, and remains the property of nymea GmbH. All rights, including
|
||||
* reproduction, publication, editing and translation, are reserved. The use of
|
||||
* this project is subject to the terms of a license agreement to be concluded
|
||||
* with nymea GmbH in accordance with the terms of use of nymea GmbH, available
|
||||
* under https://nymea.io/license
|
||||
*
|
||||
* GNU Lesser General Public License Usage
|
||||
* Alternatively, this project may be redistributed and/or modified under the
|
||||
* terms of the GNU Lesser General Public License as published by the Free
|
||||
* Software Foundation; version 3. This project is distributed in the hope that
|
||||
* it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with this project. If not, see <https://www.gnu.org/licenses/>.
|
||||
*
|
||||
* For any further details and any questions please contact us under
|
||||
* contact@nymea.io or see our FAQ/Licensing Information on
|
||||
* https://nymea.io/license/faq
|
||||
*
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
#ifndef SNAPDREPLY_H
|
||||
#define SNAPDREPLY_H
|
||||
|
||||
#include <QHash>
|
||||
#include <QObject>
|
||||
#include <QVariantMap>
|
||||
|
||||
class SnapdReply : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
friend class SnapdConnection;
|
||||
|
||||
public:
|
||||
// Request
|
||||
QString requestPath() const;
|
||||
QString requestMethod() const;
|
||||
QByteArray requestRawMessage() const;
|
||||
|
||||
// Response
|
||||
int statusCode() const;
|
||||
QString statusMessage() const;
|
||||
QHash<QString, QString> header() const;
|
||||
QVariantMap dataMap() const;
|
||||
|
||||
bool isFinished() const;
|
||||
bool isValid() const;
|
||||
|
||||
private:
|
||||
explicit SnapdReply(QObject *parent = nullptr);
|
||||
|
||||
QString m_requestPath;
|
||||
QString m_requestMethod;
|
||||
QByteArray m_requestRawMessage;
|
||||
|
||||
int m_statusCode;
|
||||
QString m_statusMessage;
|
||||
QHash<QString, QString> m_header;
|
||||
QVariantMap m_dataMap;
|
||||
|
||||
bool m_isFinished = false;
|
||||
bool m_valid = false;
|
||||
|
||||
// Methods for SnapdConnection
|
||||
void setRequestPath(const QString &requestPath);
|
||||
void setRequestMethod(const QString &requestMethod);
|
||||
void setRequestRawMessage(const QByteArray &rawMessage);
|
||||
|
||||
void setStatusCode(const int &statusCode);
|
||||
void setStatusMessage(const QString &statusMessage);
|
||||
void setHeader(const QHash<QString, QString> header);
|
||||
void setDataMap(const QVariantMap &dataMap);
|
||||
void setFinished(const bool &valid = true);
|
||||
|
||||
signals:
|
||||
void finished();
|
||||
|
||||
};
|
||||
|
||||
#endif // SNAPDREPLY_H
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="cs">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Rozšířený režim</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Automaticky denně obnovit seznam</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canonical</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aktualizace systému k dispozici změněno</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Poslední aktualizace automatického systému čas změněn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Poslední aktualizace automatického systému</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Další aktualizace automatického systému čas změněn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Další aktualizace automatického systému</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Shrnutí</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Popis</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Vývojář</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanál</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Nastavit kanál</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Verze změněna</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Verze</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revize změněna</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revize</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Rolovat zpět k předchozí verzi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Spustit aktualizaci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Manager aktualizace</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Manager aktualizace k dispozici změněno</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Manager aktualizace k dispozici</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aktualizace systému k dispozici</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aktualizace systému běží</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aktualizace systému běží změněno</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status změněn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Název</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanál změněn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Zkontrolovat aktualizace</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="da">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Avanceret modus</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Tidsplan for automatisk daglig opdatering</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Fast</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemopdatering tilgængelig ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Tidspunkt for sidste automatiske systemopdatering ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Sidste automatiske systemopdatering</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Tidspunkt for næste automatiske systemopdatering ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Næste automatiske systemopdatering</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>id</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Sammenfatning</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Beskrivelse</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Udvikler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Indstil kanal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revision ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revision</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Gå tilbage til tidligere version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Start opdatering</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Opdateringsstyring</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Opdateringsstyring tilgængelig ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Opdateringsstyring tilgængelig</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemopdatering tilgængelig</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemopdatering løber</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemopdatering løber ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Navn</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanal ændret</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Tjek for opdateringer</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="de">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation>Snapd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Erweiterter Modus</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Automatischer täglicher Aktualisierungszeitplan</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canonical</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemupdate Verfügbarkeit geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Letztes automatisches Systemupdate geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Letzte automatische Systemaktualisierung</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Nächstes automatisches Systemupdate geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Nächstes automatisches Systemupdate</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Zusammenfassung</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Beschreibung</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Entwickler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Setze Kanal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revision geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revision</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Zurücksetzen auf vorhergehende Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Starte Systemupdate</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Update Manager</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Update Manager Verfügbarkeit geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Update-Manager verfügbar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemupdate verfügbar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemaktualisierung läuft</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systemupdate aktiv geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanal geändert</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Nach Aktualisierungen suchen</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="es">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Modo avanzado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Programación de actualización diaria automática</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canónica</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización disponible del sistema modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Última hora de actualización automática del sistema modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Última actualización automática del sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Próxima hora de actualización automática del sistema modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Próxima actualización automática del sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Estado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>Identificación</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Resumen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Descripción</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Desarrollador</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Fijar canal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versión modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versión</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisión modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisión</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Retroceso a la versión anterior</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Iniciar actualización</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Actualizar gestor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización de gestor disponible modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización de gestor disponible</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización de sistema disponible</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización de sistema en funcionamiento</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Actualización de sistema en funcionamiento modificada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Estado modificado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Nombre</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal modificado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Buscar actualizaciones</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="fr">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Mode avancé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Calendrier de rafraîchissement quotidien automatique</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canonique</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Disponibilité de mise à jour du système modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Dernière heure de mise à jour automatique du système modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Dernière mise à jour automatique du système</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Prochaine heure de mise à jour automatique du système modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Prochaine mise à jour automatique du système</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Statut</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Récapitulatif</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Description</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Développeur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Définir la chaîne</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Révision modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Révision</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Retour à la version précédente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Démarrer la mise a jour</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Gestionnaire de mise à jour</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Disponibilité du gestionnaire de mise à jour modifiée</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Gestionnaire de mise à jour disponible</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Mise à jour du système disponible</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Mise à jour du système en cours</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Le cours de la mise à jour du système a changé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Statut modifié</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Nom</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal modifié</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Vérifier les mises à jour</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="it">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Modalità avanzata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Programma di aggiornamento giornaliero automatico</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canonico</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aggiornamento del sistema disponibile modificato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Ora dell'ultimo aggiornamento automatico del sistema cambiato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Ultimo aggiornamento automatico del sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Ora del prossimo aggiornamento automatico del sistema cambiato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Prossimo aggiornamento automatico del sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Stato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Sommario</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Descrizione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Sviluppatore</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Imposta canale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versione modificata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisione modificata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Ripristino della versione precedente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Inizia aggiornamento</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Gestione aggiornamento</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Gestione aggiornamento disponibile cambiato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Gestione aggiornamento disponibile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Aggiornamento del sistema disponibile</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Esecuzione aggiornamento del sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Esecuzione aggiornamento del sistema modificata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Stato modificato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Nome</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canale modificato</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Verifica aggiornamenti</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="nl">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Geavanceerde modus</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Automatisch dagelijks vernieuwingsschema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canonical</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Beschikbaarheid systeemupdate</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Laatste tijd automatische systeemupdate bijgewerkt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Laatste automatische systeemupdate</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Volgende tijd automatische systeemupdate bijgewerkt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Volgende automatische systeemupdate</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Samenvatting</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Beschrijving</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Ontwikkelaar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanaal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanaal instellen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versie gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisie gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Terugdraaien naar vorige versie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Update beginnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Update-manager</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Update-manager beschikbaar gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Update-manager beschikbaar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systeemupdate beschikbaar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systeemupdate wordt uitgevoerd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Systeemupdate wordt uitgevoerd gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Status gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Naam</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Kanaal gewijzigd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Controleren op updates</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
@ -1,235 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version="2.1" language="pt">
|
||||
<context>
|
||||
<name>Snapd</name>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="135"/>
|
||||
<source>Snapd</source>
|
||||
<extracomment>The name of the plugin Snapd ({b82bce59-59bf-48b3-b781-54a6f45800f3})</extracomment>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="63"/>
|
||||
<source>Advanced mode</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {017fe4c5-fc41-41fe-8e67-08fdaccb89ea})</extracomment>
|
||||
<translation>Modo avançado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="66"/>
|
||||
<source>Automatic daily refresh schedule</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapd, Type: plugin, ID: {d2e697d1-9a68-4666-bf40-8d70fa694eec})</extracomment>
|
||||
<translation>Agenda de atualização automática diária</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="69"/>
|
||||
<source>Canonical</source>
|
||||
<extracomment>The name of the vendor ({60582ddf-32ea-4fcd-a6f2-f3beaaf21517})</extracomment>
|
||||
<translation>Canónico</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="159"/>
|
||||
<source>System update available changed</source>
|
||||
<extracomment>The name of the EventType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Alterada atualização do sistema disponível</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="102"/>
|
||||
<source>Last automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Alterado último tempo de atualização automática do sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="96"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="99"/>
|
||||
<source>Last automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: lastUpdateTime, ID: {c671545a-6bde-4c08-8e37-0d256841a3a5})
|
||||
----------
|
||||
The name of the StateType ({c671545a-6bde-4c08-8e37-0d256841a3a5}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Última atualização automática do sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="114"/>
|
||||
<source>Next automatic system update time changed</source>
|
||||
<extracomment>The name of the EventType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Alterada próxima atualização automática do sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="108"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="111"/>
|
||||
<source>Next automatic system update</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: nextUpdateTime, ID: {122c2423-a1d9-400f-80f8-b1f798975914})
|
||||
----------
|
||||
The name of the StateType ({122c2423-a1d9-400f-80f8-b1f798975914}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Próxima atualização automática do sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="141"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="144"/>
|
||||
<source>Status</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: status, ID: {4987aca3-3916-4cb3-938f-df6c99d04dbf})
|
||||
----------
|
||||
The name of the StateType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Estado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="93"/>
|
||||
<source>ID</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {9afb98fb-f717-4f4c-8009-1a6514054c5f})</extracomment>
|
||||
<translation>ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="150"/>
|
||||
<source>Summary</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {12b9a65f-970b-49b5-b1d0-1625fc6d8758})</extracomment>
|
||||
<translation>Resumo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="87"/>
|
||||
<source>Description</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {fe24c61b-e154-4259-b7ca-6f0602e9d1c3})</extracomment>
|
||||
<translation>Descrição</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="90"/>
|
||||
<source>Developer</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {76ead9c5-0a18-40a2-b31d-f6bb6dfea0a5})</extracomment>
|
||||
<translation>Desenvolvedor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="72"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="75"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="78"/>
|
||||
<source>Channel</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, ActionType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the ParamType (ThingClass: snap, EventType: channel, ID: {7be2b61e-3f59-4b92-b2bb-50d027bb92ff})
|
||||
----------
|
||||
The name of the StateType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="129"/>
|
||||
<source>Set channel</source>
|
||||
<extracomment>The name of the ActionType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Configurar canal</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="189"/>
|
||||
<source>Version changed</source>
|
||||
<extracomment>The name of the EventType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versão alterada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="183"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="186"/>
|
||||
<source>Version</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: version, ID: {532a95f3-db29-427e-bb32-d5a22029e586})
|
||||
----------
|
||||
The name of the StateType ({532a95f3-db29-427e-bb32-d5a22029e586}) of ThingClass snap</extracomment>
|
||||
<translation>Versão</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="123"/>
|
||||
<source>Revision changed</source>
|
||||
<extracomment>The name of the EventType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisão alterada</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="117"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="120"/>
|
||||
<source>Revision</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, EventType: revision, ID: {f26a6404-e011-11e7-9224-2350048461eb})
|
||||
----------
|
||||
The name of the StateType ({f26a6404-e011-11e7-9224-2350048461eb}) of ThingClass snap</extracomment>
|
||||
<translation>Revisão</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="126"/>
|
||||
<source>Rollback to previous version</source>
|
||||
<extracomment>The name of the ActionType ({e061dee6-62fc-45cc-9c9f-403c2be52939}) of ThingClass snap</extracomment>
|
||||
<translation>Retroceder para versão anterior</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="138"/>
|
||||
<source>Start update</source>
|
||||
<extracomment>The name of the ActionType ({45626b75-f09d-4dd1-b6c4-ee33201b47b0}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Iniciar atualização</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="171"/>
|
||||
<source>Update manager</source>
|
||||
<extracomment>The name of the ThingClass ({d90cda58-4d8c-4b7f-a982-38e56a95b72a})</extracomment>
|
||||
<translation>Gestor de atualizações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="180"/>
|
||||
<source>Update manager available changed</source>
|
||||
<extracomment>The name of the EventType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Gestor de atualizações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="174"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="177"/>
|
||||
<source>Update manager available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: snapdAvailable, ID: {6b662b3e-fd12-4f24-be77-aec066f16d8c})
|
||||
----------
|
||||
The name of the StateType ({6b662b3e-fd12-4f24-be77-aec066f16d8c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Disponível gestor de atualizações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="153"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="156"/>
|
||||
<source>System update available</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateAvailable, ID: {a6b1d24b-d523-4516-9bce-5b467e5e09b2})
|
||||
----------
|
||||
The name of the StateType ({a6b1d24b-d523-4516-9bce-5b467e5e09b2}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Disponível atualização do sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="162"/>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="165"/>
|
||||
<source>System update running</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snapdControl, EventType: updateRunning, ID: {01ca7a22-5607-4c5e-a465-a2ae7e8b529c})
|
||||
----------
|
||||
The name of the StateType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Atualização do sistema em curso</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="132"/>
|
||||
<source>Snap</source>
|
||||
<extracomment>The name of the ThingClass ({ff0840d7-fcfc-4403-9d9f-301610d5a437})</extracomment>
|
||||
<translation>Snap</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="168"/>
|
||||
<source>System update running changed</source>
|
||||
<extracomment>The name of the EventType ({01ca7a22-5607-4c5e-a465-a2ae7e8b529c}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Alterada atualização do sistema em curso</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="147"/>
|
||||
<source>Status changed</source>
|
||||
<extracomment>The name of the EventType ({4987aca3-3916-4cb3-938f-df6c99d04dbf}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Estado alterado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="105"/>
|
||||
<source>Name</source>
|
||||
<extracomment>The name of the ParamType (ThingClass: snap, Type: thing, ID: {4f38614d-8be0-48dc-a24d-cee9ff1f2a89})</extracomment>
|
||||
<translation>Nome</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="81"/>
|
||||
<source>Channel changed</source>
|
||||
<extracomment>The name of the EventType ({7be2b61e-3f59-4b92-b2bb-50d027bb92ff}) of ThingClass snap</extracomment>
|
||||
<translation>Canal alterado</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../../build-nymea-plugins-Desktop-Debug/snapd/plugininfo.h" line="84"/>
|
||||
<source>Check for updates</source>
|
||||
<extracomment>The name of the ActionType ({4738f2c9-666e-45b9-91d3-7bcbf722b669}) of ThingClass snapdControl</extracomment>
|
||||
<translation>Verificar atualizações</translation>
|
||||
</message>
|
||||
</context>
|
||||
</TS>
|
||||
Loading…
x
Reference in New Issue
Block a user