6 Commits

Author SHA1 Message Date
271fdb0d99 release 1.4.8 2015-07-06 01:25:15 +03:00
45904db741 fix no actions on links activation 2015-07-05 00:32:46 +03:00
a216060447 update to netctl 1.10 and 1.11 changes 2015-07-02 00:08:14 +03:00
05a613b501 release 1.4.7 2015-06-28 14:30:56 +03:00
a9c7f98677 more correct work with configration files (use /etc/netctl-gui.conf if
no configuration present in the home directory)
2015-06-28 00:07:44 +03:00
5018232c08 * drop absolute path from configuration
* add configuration from cmake building
* update submodules
2015-06-27 05:10:56 +03:00
49 changed files with 1287 additions and 491 deletions

View File

@ -1,3 +1,20 @@
Ver.1.4.8
---------
* gui
* update profile tab to netclt 1.10 and 1.11 changes
* plasmoid
* fix bug with no action on link activation
Ver.1.4.7
---------
* all
+ implement support of setting of default configuration values while building
* fix language component (refer to #45)
* gui
* more correct work with configuration file
* helper
* more correct work with configuration file
Ver.1.4.6
---------
* all

View File

@ -3,7 +3,7 @@
pkgbase=netctl-gui
pkgname=('libnetctlgui' 'netctlgui-helper' 'netctl-gui'
'plasma5-applet-netctl-gui')
pkgver=1.4.6
pkgver=1.4.8
pkgrel=1
pkgdesc="Qt4/Qt5 GUI for netctl. Also provides a widget for KDE"
arch=('i686' 'x86_64')
@ -11,7 +11,7 @@ url="http://arcanis.name/projects/netctl-gui"
license=('GPL3')
makedepends=('cmake' 'extra-cmake-modules' 'plasma-framework' 'qt5-tools')
source=("https://github.com/arcan1s/netctl-gui/releases/download/V.${pkgver}/${pkgbase}-${pkgver}-src.tar.xz")
md5sums=('aed674e4c465d849c2044f9464c2671c')
md5sums=('0c50a436064c31f890f69d5f321d2e27')
prepare() {
rm -rf "${srcdir}/build-"{plasmoid,qt5}

View File

@ -4,7 +4,7 @@ pkgbase=netctl-gui-qt4
_pkgbase=netctl-gui
pkgname=('libnetctlgui-qt4' 'netctlgui-helper-qt4' 'netctl-gui-qt4'
'kdeplasma-applets-netctl-gui')
pkgver=1.4.6
pkgver=1.4.8
pkgrel=1
pkgdesc="Qt4 GUI for netctl. Also provides a widget for KDE4"
arch=('i686' 'x86_64')
@ -12,7 +12,7 @@ url="http://arcanis.name/projects/netctl-gui"
license=('GPL3')
makedepends=('automoc4' 'cmake' 'kdelibs')
source=("https://github.com/arcan1s/netctl-gui/releases/download/V.${pkgver}/${_pkgbase}-${pkgver}-src.tar.xz")
md5sums=('aed674e4c465d849c2044f9464c2671c')
md5sums=('0c50a436064c31f890f69d5f321d2e27')
prepare() {

View File

@ -7,6 +7,8 @@
#define LANGUAGES "en,ja,ru"
// language key in the configuration file
#define LANGUAGE_KEY "LANGUAGE"
// name of config section in the file if any
#define LANGUAGE_SECTION "Common"
#endif /* LANGUAGE_CONFIG_H */

View File

@ -11,7 +11,7 @@ set (PROJECT_CONTACT "esalexeev@gmail.com")
set (PROJECT_LICENSE "GPLv3")
set (PROJECT_VERSION_MAJOR 1)
set (PROJECT_VERSION_MINOR 4)
set (PROJECT_VERSION_PATCH 6)
set (PROJECT_VERSION_PATCH 8)
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC)
string (TIMESTAMP CURRENT_YEAR "%Y")
@ -23,6 +23,8 @@ message (STATUS "Build date: ${CURRENT_DATE}")
# install options
option (USE_CAPABILITIES "Use setcap to set capabilities for the helper" ON)
option (USE_QT5 "Use Qt5 instead of Qt4" ON)
# configuration
include (config-defs.cmake)
# components
option (BUILD_GUI "Build GUI" ON)
option (BUILD_HELPER "Build helper" ON)

41
sources/config-defs.cmake Normal file
View File

@ -0,0 +1,41 @@
# default configuration options
# [Common] section
set (CFG_LANGUAGE "en" CACHE STRING "LANGUAGE key")
set (CFG_MAINUPDATE "0" CACHE STRING "MAINUPDATE key")
set (CFG_WIFIUPDATE "0" CACHE STRING "WIFIUPDATE key")
set (CFG_SYSTRAY "true" CACHE STRING "SYSTRAY key")
set (CFG_CLOSETOTRAY "true" CACHE STRING "CLOSETOTRAY key")
set (CFG_STARTTOTRAY "false" CACHE STRING "STARTTOTRAY key")
set (CFG_SKIPCOMPONENTS "false" CACHE STRING "SKIPCOMPONENTS key")
# [Helper] section
set (CFG_USE_HELPER "true" CACHE STRING "USE_HELPER key")
set (CFG_FORCE_SUDO "false" CACHE STRING "FORCE_SUDO key")
set (CFG_CLOSE_HELPER "false" CACHE STRING "CLOSE_HELPER key")
set (CFG_HELPER_PATH "netctlgui-helper" CACHE STRING "HELPER_PATH key")
set (CFG_HELPER_SERVICE "netctlgui-helper.service" CACHE STRING "HELPER_SERVICE key")
# [netctl] section
set (CFG_SYSTEMCTL_PATH "systemctl" CACHE STRING "SYSTEMCTL_PATH key")
set (CFG_NETCTL_PATH "netctl" CACHE STRING "NETCTL_PATH key")
set (CFG_NETCTLAUTO_PATH "netctl-auto" CACHE STRING "NETCTLAUTO_PATH key")
set (CFG_NETCTLAUTO_SERVICE "netctl-auto" CACHE STRING "NETCTLAUTO_SERVICE key")
set (CFG_PROFILE_DIR "/etc/netctl/" CACHE STRING "PROFILE_DIR key")
# [sudo] section
set (CFG_SUDO_PATH "kdesu" CACHE STRING "SUDO_PATH key")
# [wpa_supplicant] section
set (CFG_WPASUP_PATH "wpa_supplicant" CACHE STRING "WPASUP_PATH key")
set (CFG_WPACLI_PATH "wpa_cli" CACHE STRING "WPACLI_PATH key")
set (CFG_PID_FILE "/run/wpa_supplicant_$i.pid" CACHE STRING "PID_FILE key")
set (CFG_WPA_DRIVERS "nl80211,wext" CACHE STRING "WPA_DRIVERS key")
set (CFG_CTRL_DIR "/run/wpa_supplicant" CACHE STRING "CTRL_DIR key")
set (CFG_CTRL_GROUP "users" CACHE STRING "CTRL_GROUP key")
# [Other] section
set (CFG_EDITOR_PATH "gvim" CACHE STRING "EDITOR_PATH key")
set (CFG_IFACE_DIR "/sys/class/net/" CACHE STRING "IFACE_DIR key")
set (CFG_RFKILL_DIR "/sys/class/rfkill/" CACHE STRING "RFKILL_DIR key")
set (CFG_PREFERED_IFACE "" CACHE STRING "PREFERED_IFACE key")

View File

@ -113,8 +113,8 @@ void Netctl::readConfiguration()
QSettings settings(fileName, QSettings::IniFormat);
settings.beginGroup(QString("Netctl commands"));
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("/usr/bin/netctl"));
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("/usr/bin/netctl-auto"));
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("netctl"));
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("netctl-auto"));
settings.endGroup();
settings.beginGroup(QString("External IP"));

View File

@ -1,6 +1,6 @@
[Netctl commands]
NETCTLCMD=/usr/bin/netctl
NETCTLAUTOCMD=/usr/bin/netctl-auto
NETCTLCMD=netctl
NETCTLAUTOCMD=netctl-auto
[External IP]
EXTIP4CMD=curl ip4.telize.com

View File

@ -0,0 +1,69 @@
/***************************************************************************
* This file is part of netctl-gui *
* *
* netctl-gui is free software: you can redistribute it and/or *
* modify it under the terms of the GNU General Public License as *
* published by the Free Software Foundation, either version 3 of the *
* License, or (at your option) any later version. *
* *
* netctl-gui 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 General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with netctl-gui. If not, see http://www.gnu.org/licenses/ *
***************************************************************************/
#include "bondwidget.h"
#include "ui_bondwidget.h"
BondWidget::BondWidget(QWidget *parent)
: QWidget(parent),
ui(new Ui::BondWidget)
{
ui->setupUi(this);
clear();
}
BondWidget::~BondWidget()
{
delete ui;
}
void BondWidget::clear()
{
ui->lineEdit_mode->setText(QString("balance-rr"));
}
QMap<QString, QString> BondWidget::getSettings()
{
QMap<QString, QString> settings;
if (isOk() != 0) return settings;
if (ui->lineEdit_mode->text() != QString("balance-rr"))
settings[QString("Mode")] = ui->lineEdit_mode->text();
return settings;
}
int BondWidget::isOk()
{
// all fine
return 0;
}
void BondWidget::setSettings(const QMap<QString, QString> settings)
{
clear();
if (settings.contains(QString("Mode")))
ui->lineEdit_mode->setText(settings[QString("Mode")]);
}

View File

@ -0,0 +1,47 @@
/***************************************************************************
* This file is part of netctl-gui *
* *
* netctl-gui is free software: you can redistribute it and/or *
* modify it under the terms of the GNU General Public License as *
* published by the Free Software Foundation, either version 3 of the *
* License, or (at your option) any later version. *
* *
* netctl-gui 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 General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with netctl-gui. If not, see http://www.gnu.org/licenses/ *
***************************************************************************/
#ifndef BONDWIDGET_H
#define BONDWIDGET_H
#include <QWidget>
namespace Ui {
class BondWidget;
}
class BondWidget : public QWidget
{
Q_OBJECT
public:
explicit BondWidget(QWidget *parent = 0);
~BondWidget();
QMap<QString, QString> getSettings();
int isOk();
void setSettings(const QMap<QString, QString> settings);
public slots:
void clear();
private:
Ui::BondWidget *ui;
};
#endif /* BONDWIDGET_H */

View File

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>BondWidget</class>
<widget class="QWidget" name="BondWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>550</width>
<height>46</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QDockWidget" name="dockWidget_bond">
<property name="features">
<set>QDockWidget::NoDockWidgetFeatures</set>
</property>
<property name="windowTitle">
<string>Bond settings</string>
</property>
<widget class="QWidget" name="dockWidgetContents_bond">
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QHBoxLayout" name="layout_mode">
<item>
<widget class="QLabel" name="label_mode">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Mode</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_mode">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>The bonding policy. See the kernel documentation on bonding for details</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -124,6 +124,10 @@ QStringList ErrorWindow::getMessage(const int mess)
title = QApplication::translate("ErrorWindow", "Error!");
message = QApplication::translate("ErrorWindow", "IP address does not match the standard");
break;
case 21:
title = QApplication::translate("ErrorWindow", "Error!");
message = QApplication::translate("ErrorWindow", "Key is required for 'gre' mode");
break;
default:
title = QApplication::translate("ErrorWindow", "Error!");
message = QApplication::translate("ErrorWindow", "Unknown error");
@ -164,6 +168,7 @@ QMessageBox::Icon ErrorWindow::getIcon(const int mess)
case 18:
case 19:
case 20:
case 21:
icon = QMessageBox::Critical;
break;
default:

View File

@ -46,6 +46,7 @@ void EthernetWidget::clear()
showWpa(ui->checkBox_8021x->checkState());
ui->lineEdit_wpaConfig->clear();
ui->comboBox_driver->setCurrentIndex(0);
ui->spinBox_priority->setValue(1);
ui->spinBox_timeoutCarrier->setValue(5);
ui->spinBox_timeoutWpa->setValue(15);
@ -104,6 +105,8 @@ QMap<QString, QString> EthernetWidget::getSettings()
settings[QString("WPAConfigFile")] = QString("'%1'").arg(ui->lineEdit_wpaConfig->text());
settings[QString("WPADriver")] = ui->comboBox_driver->currentText();
}
if (ui->spinBox_priority->value() != 1)
settings[QString("Priority")] = QString::number(ui->spinBox_priority->value());
if (ui->spinBox_timeoutCarrier->value() != 5)
settings[QString("TimeoutCarrier")] = QString::number(ui->spinBox_timeoutCarrier->value());
if (ui->spinBox_timeoutWpa->value() != 15)
@ -139,6 +142,8 @@ void EthernetWidget::setSettings(const QMap<QString, QString> settings)
int index = ui->comboBox_driver->findText(settings[QString("WPADriver")]);
ui->comboBox_driver->setCurrentIndex(index);
}
if (settings.contains(QString("Priority")))
ui->spinBox_priority->setValue(settings[QString("Priority")].toInt());
if (settings.contains(QString("TimeoutCarrier")))
ui->spinBox_timeoutCarrier->setValue(settings[QString("TimeoutCarrier")].toInt());
if (settings.contains(QString("TimeoutWPA")))

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>550</width>
<height>227</height>
<height>255</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
@ -301,6 +301,45 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_priority">
<item>
<widget class="QLabel" name="label_priority">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Priority</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="spinBox_priority">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</string>
</property>
<property name="maximum">
<number>999</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>

View File

@ -59,6 +59,7 @@ void GeneralWidget::clear()
ui->listWidget_after->clear();
ui->lineEdit_execUpPost->clear();
ui->lineEdit_execDownPre->clear();
ui->checkBox_exclude->setCheckState(Qt::Unchecked);
ui->checkBox_forceConnect->setCheckState(Qt::Unchecked);
ui->checkBox_debug->setCheckState(Qt::Unchecked);
@ -139,6 +140,8 @@ QMap<QString, QString> GeneralWidget::getSettings()
settings[QString("ExecUpPost")] = QString("'%1'").arg(ui->lineEdit_execUpPost->text());
if (!ui->lineEdit_execDownPre->text().isEmpty())
settings[QString("ExecDownPre")] = QString("'%1'").arg(ui->lineEdit_execDownPre->text());
if (ui->checkBox_exclude->checkState() == Qt::Checked)
settings[QString("ExcludeAuto")] = QString("yes");
if (ui->checkBox_forceConnect->checkState() == Qt::Checked)
settings[QString("ForceConnect")] = QString("yes");
if (ui->checkBox_debug->checkState() == Qt::Checked)
@ -186,6 +189,9 @@ void GeneralWidget::setSettings(const QMap<QString, QString> settings)
ui->lineEdit_execUpPost->setText(settings[QString("ExecUpPost")]);
if (settings.contains(QString("ExecDownPre")))
ui->lineEdit_execDownPre->setText(settings[QString("ExecDownPre")]);
if (settings.contains(QString("ExcludeAuto")))
if (settings[QString("ExcludeAuto")] == QString("yes"))
ui->checkBox_exclude->setCheckState(Qt::Checked);
if (settings.contains(QString("ForceConnect")))
if (settings[QString("ForceConnect")] == QString("yes"))
ui->checkBox_forceConnect->setCheckState(Qt::Checked);

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>550</width>
<height>452</height>
<height>479</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
@ -417,6 +417,36 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_exclude">
<item>
<widget class="QLabel" name="label_exclude">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkBox_exclude">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Whether or not to exclude this profile from automatic profile selection</string>
</property>
<property name="text">
<string>Exclude auto</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_forceConnect">
<item>

View File

@ -373,7 +373,8 @@ void MainWindow::updateConfiguration(const QVariantMap args)
deleteObjects();
settingsWin = new SettingsWindow(this, debug, configPath);
QString actualConfigPath = QFile(configPath).exists() ? configPath : QString("/etc/netctl-gui.conf");
settingsWin = new SettingsWindow(this, debug, actualConfigPath);
if (args[QString("default")].toBool())
settingsWin->setDefault();
configuration = settingsWin->getSettings();
@ -386,7 +387,7 @@ void MainWindow::updateConfiguration(const QVariantMap args)
// update translation
qApp->removeTranslator(translator);
QString language = Language::defineLanguage(configPath, args[QString("options")].toString());
QString language = Language::defineLanguage(actualConfigPath, args[QString("options")].toString());
if (debug) qDebug() << PDEBUG << ":" << "Language is" << language;
qtTranslator->load(QString("qt_%1").arg(language), QLibraryInfo::location(QLibraryInfo::TranslationsPath));
qApp->installTranslator(qtTranslator);

View File

@ -46,9 +46,11 @@ void MobileWidget::clear()
ui->lineEdit_apn->clear();
ui->lineEdit_pin->clear();
ui->comboBox_mode->setCurrentIndex(0);
ui->spinBox_fail->setValue(5);
ui->checkBox_route->setCheckState(Qt::Checked);
ui->checkBox_dns->setCheckState(Qt::Checked);
ui->lineEdit_init->setText(QString("ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"));
ui->spinBox_fail->setValue(5);
ui->lineEdit_chat->clear();
ui->lineEdit_options->clear();
ui->pushButton_mobileAdvanced->setChecked(false);;
@ -59,10 +61,22 @@ void MobileWidget::clear()
void MobileWidget::createActions()
{
connect(ui->pushButton_mobileAdvanced, SIGNAL(clicked(bool)), this, SLOT(showAdvanced()));
connect(ui->pushButton_chat, SIGNAL(clicked(bool)), this, SLOT(selectChatFile()));
connect(ui->pushButton_options, SIGNAL(clicked(bool)), this, SLOT(selectOptionsFile()));
}
void MobileWidget::selectChatFile()
{
QString filename = QFileDialog::getOpenFileName(this,
QApplication::translate("MobileWidget", "Select chat file"),
QDir::currentPath(),
QApplication::translate("MobileWidget", "All (*.*)"));
if (!filename.isEmpty())
ui->lineEdit_chat->setText(filename);
}
void MobileWidget::selectOptionsFile()
{
QString filename = QFileDialog::getOpenFileName(this,
@ -102,12 +116,16 @@ QMap<QString, QString> MobileWidget::getSettings()
else
settings[QString("PIN")] = QString("None");
settings[QString("Mode")] = ui->comboBox_mode->currentText();
if (ui->spinBox_fail->value() != 5)
settings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value());
if (ui->checkBox_route->checkState() == Qt::Unchecked)
settings[QString("DefaultRoute")] = QString("false");
if (ui->checkBox_dns->checkState() == Qt::Unchecked)
settings[QString("UsePeerDNS")] = QString("false");
if (ui->lineEdit_init->text() != QString("ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"))
settings[QString("Init")] = QString("'%1'").arg(ui->lineEdit_init->text());
if (ui->spinBox_fail->value() != 5)
settings[QString("MaxFail")] = QString::number(ui->spinBox_fail->value());
if (!ui->lineEdit_chat->text().isEmpty())
settings[QString("ChatScript")] = QString("'%1'").arg(ui->lineEdit_chat->text());
if (!ui->lineEdit_options->text().isEmpty())
settings[QString("OptionsFile")] = QString("'%1'").arg(ui->lineEdit_options->text());
@ -143,14 +161,18 @@ void MobileWidget::setSettings(const QMap<QString, QString> settings)
int index = ui->comboBox_mode->findText(settings[QString("Mode")]);
ui->comboBox_mode->setCurrentIndex(index);
}
if (settings.contains(QString("MaxFail")))
ui->spinBox_fail->setValue(settings[QString("MaxFail")].toInt());
if (settings.contains(QString("DefaultRoute")))
if (settings[QString("DefaultRoute")] == QString("false"))
ui->checkBox_route->setCheckState(Qt::Unchecked);
if (settings.contains(QString("UsePeerDNS")))
if (settings[QString("UsePeerDNS")] == QString("false"))
ui->checkBox_dns->setCheckState(Qt::Unchecked);
if (settings.contains(QString("Init")))
ui->lineEdit_init->setText(settings[QString("Init")]);
if (settings.contains(QString("MaxFail")))
ui->spinBox_fail->setValue(settings[QString("MaxFail")].toInt());
if (settings.contains(QString("ChatScript")))
ui->lineEdit_chat->setText(settings[QString("ChatScript")]);
if (settings.contains(QString("OptionsFile")))
ui->lineEdit_options->setText(settings[QString("OptionsFile")]);
}

View File

@ -40,6 +40,7 @@ public slots:
void clear();
private slots:
void selectChatFile();
void selectOptionsFile();
void showAdvanced();

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>445</width>
<height>314</height>
<height>376</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
@ -319,6 +319,39 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_init">
<item>
<widget class="QLabel" name="label_init">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Init</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_init">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>An initialization string sent to the modem before dialing</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_fail">
<item>
@ -358,6 +391,52 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_chat">
<item>
<widget class="QLabel" name="label_chat">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>7</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Chat script</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_chat">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>10</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Path to a chat file</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_chat">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>4</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_options">
<item>

View File

@ -25,8 +25,9 @@
#include <pdebug/pdebug.h>
#include <task/taskadds.h>
#include "calls.h"
#include "bondwidget.h"
#include "bridgewidget.h"
#include "calls.h"
#include "commonfunctions.h"
#include "dbusoperation.h"
#include "errorwindow.h"
@ -60,6 +61,8 @@ NewProfileWidget::NewProfileWidget(QWidget *parent, const QMap<QString, QString>
ui->scrollAreaWidgetContents->layout()->addWidget(generalWid);
ipWid = new IpWidget(this);
ui->scrollAreaWidgetContents->layout()->addWidget(ipWid);
bondWid = new BondWidget(this);
ui->scrollAreaWidgetContents->layout()->addWidget(bondWid);
bridgeWid = new BridgeWidget(this);
ui->scrollAreaWidgetContents->layout()->addWidget(bridgeWid);
ethernetWid = new EthernetWidget(this);
@ -87,6 +90,7 @@ NewProfileWidget::~NewProfileWidget()
{
if (debug) qDebug() << PDEBUG;
if (bondWid != nullptr) delete bondWid;
if (bridgeWid != nullptr) delete bridgeWid;
if (ethernetWid != nullptr) delete ethernetWid;
if (generalWid != nullptr) delete generalWid;
@ -168,6 +172,7 @@ void NewProfileWidget::updateProfileTab()
generalWid->clear();
ipWid->clear();
bondWid->clear();
bridgeWid->clear();
ethernetWid->clear();
macvlanWid->clear();
@ -192,6 +197,7 @@ void NewProfileWidget::profileTabChangeState(const QString current)
generalWid->setVisible(true);
ipWid->setVisible((current != QString("pppoe")) && (current != QString("mobile_ppp")));
bondWid->setVisible(current == QString("bond"));
bridgeWid->setVisible(current == QString("bridge"));
ethernetWid->setVisible((current == QString("ethernet")) ||
(current == QString("vlan")) ||
@ -250,6 +256,7 @@ void NewProfileWidget::profileTabCreateProfile()
return ErrorWindow::showWindow(7, QString(PDEBUG), debug);
else if (wirelessWid->isOk() == 5)
return ErrorWindow::showWindow(11, QString(PDEBUG), debug);
} else if (generalWid->connectionType->currentText() == QString("bond")) {
} else if (generalWid->connectionType->currentText() == QString("bridge")) {
} else if (generalWid->connectionType->currentText() == QString("pppoe")) {
if (pppoeWid->isOk() == 1)
@ -269,11 +276,13 @@ void NewProfileWidget::profileTabCreateProfile()
else if (generalWid->connectionType->currentText() == QString("tunnel")) {
if (tunnelWid->isOk() == 1)
return ErrorWindow::showWindow(20, QString(PDEBUG), debug);
else if (tunnelWid->isOk() == 2)
return ErrorWindow::showWindow(21, QString(PDEBUG), debug);
}
else if (generalWid->connectionType->currentText() == QString("tuntap")) {
if (tuntapWid->isOk() == 1)
return ErrorWindow::showWindow(15, QString(PDEBUG), debug);
if (tuntapWid->isOk() == 2)
else if (tuntapWid->isOk() == 2)
return ErrorWindow::showWindow(15, QString(PDEBUG), debug);
}
else if (generalWid->connectionType->currentText() == QString("vlan")) {
@ -304,17 +313,23 @@ void NewProfileWidget::profileTabCreateProfile()
addSettings = wirelessWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
} else if ((generalWid->connectionType->currentText() == QString("bond")) ||
(generalWid->connectionType->currentText() == QString("dummy")) ||
} else if ((generalWid->connectionType->currentText() == QString("dummy")) ||
(generalWid->connectionType->currentText() == QString("openvswitch"))) {
QMap<QString, QString> addSettings = ipWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
} else if (generalWid->connectionType->currentText() == QString("bond")) {
QMap<QString, QString> addSettings = ipWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
addSettings = bondWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
} else if (generalWid->connectionType->currentText() == QString("bridge")) {
QMap<QString, QString> addSettings = ipWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
addSettings = bridgeWid->getSettings();
addSettings = bridgeWid->getSettings();
for (int i=0; i<addSettings.keys().count(); i++)
settings.insert(addSettings.keys()[i], addSettings[addSettings.keys()[i]]);
} else if (generalWid->connectionType->currentText() == QString("pppoe")) {
@ -388,13 +403,15 @@ void NewProfileWidget::profileTabLoadProfile()
} else if (generalWid->connectionType->currentText() == QString("wireless")) {
ipWid->setSettings(settings);
wirelessWid->setSettings(settings);
} else if ((generalWid->connectionType->currentText() == QString("bond")) ||
(generalWid->connectionType->currentText() == QString("dummy")) ||
} else if ((generalWid->connectionType->currentText() == QString("dummy")) ||
(generalWid->connectionType->currentText() == QString("openvswitch"))) {
ipWid->setSettings(settings);
} else if (generalWid->connectionType->currentText() == QString("bridge")) {
ipWid->setSettings(settings);
bridgeWid->setSettings(settings);
} else if (generalWid->connectionType->currentText() == QString("bond")) {
ipWid->setSettings(settings);
bondWid->setSettings(settings);
} else if (generalWid->connectionType->currentText() == QString("pppoe")) {
pppoeWid->setSettings(settings);
} else if (generalWid->connectionType->currentText() == QString("mobile_ppp")) {

View File

@ -23,6 +23,7 @@
#include <netctlgui/netctlgui.h>
class BondWidget;
class BridgeWidget;
class EthernetWidget;
class GeneralWidget;
@ -71,6 +72,7 @@ private:
// ui
MainWindow *mainWindow;
Ui::NewProfileWidget *ui = nullptr;
BondWidget *bondWid = nullptr;
BridgeWidget *bridgeWid = nullptr;
EthernetWidget *ethernetWid = nullptr;
GeneralWidget *generalWid = nullptr;

View File

@ -591,49 +591,49 @@ QMap<QString, QString> SettingsWindow::getSettings(QString fileName)
config[QString("LANGUAGE")] = Language::defineLanguage(fileName, QString());
settings.beginGroup(QString("Common"));
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString("en")).toString();
config[QString("MAINUPDATE")] = settings.value(QString("MAINUPDATE"), QString("0")).toString();
config[QString("WIFIUPDATE")] = settings.value(QString("WIFIUPDATE"), QString("0")).toString();
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString("true")).toString();
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString("true")).toString();
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString("false")).toString();
config[QString("SKIPCOMPONENTS")] = settings.value(QString("SKIPCOMPONENTS"), QString("false")).toString();
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), config[QString("LANGUAGE")]).toString();
config[QString("MAINUPDATE")] = settings.value(QString("MAINUPDATE"), QString(MAINUPDATE)).toString();
config[QString("WIFIUPDATE")] = settings.value(QString("WIFIUPDATE"), QString(WIFIUPDATE)).toString();
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString(SYSTRAY)).toString();
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString(CLOSETOTRAY)).toString();
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString(STARTTOTRAY)).toString();
config[QString("SKIPCOMPONENTS")] = settings.value(QString("SKIPCOMPONENTS"), QString(SKIPCOMPONENTS)).toString();
settings.endGroup();
settings.beginGroup(QString("Helper"));
config[QString("USE_HELPER")] = settings.value(QString("USE_HELPER"), QString("true")).toString();
config[QString("FORCE_SUDO")] = settings.value(QString("FORCE_SUDO"), QString("false")).toString();
config[QString("CLOSE_HELPER")] = settings.value(QString("CLOSE_HELPER"), QString("false")).toString();
config[QString("HELPER_PATH")] = settings.value(QString("HELPER_PATH"), QString("/usr/bin/netctlgui-helper")).toString();
config[QString("HELPER_SERVICE")] = settings.value(QString("HELPER_SERVICE"), QString("netctlgui-helper.service")).toString();
config[QString("USE_HELPER")] = settings.value(QString("USE_HELPER"), QString(USE_HELPER)).toString();
config[QString("FORCE_SUDO")] = settings.value(QString("FORCE_SUDO"), QString(FORCE_SUDO)).toString();
config[QString("CLOSE_HELPER")] = settings.value(QString("CLOSE_HELPER"), QString(CLOSE_HELPER)).toString();
config[QString("HELPER_PATH")] = settings.value(QString("HELPER_PATH"), QString(HELPER_PATH)).toString();
config[QString("HELPER_SERVICE")] = settings.value(QString("HELPER_SERVICE"), QString(HELPER_SERVICE)).toString();
settings.endGroup();
settings.beginGroup(QString("netctl"));
config[QString("SYSTEMCTL_PATH")] = settings.value(QString("SYSTEMCTL_PATH"), QString("/usr/bin/systemctl")).toString();
config[QString("NETCTL_PATH")] = settings.value(QString("NETCTL_PATH"), QString("/usr/bin/netctl")).toString();
config[QString("NETCTLAUTO_PATH")] = settings.value(QString("NETCTLAUTO_PATH"), QString("/usr/bin/netctl-auto")).toString();
config[QString("NETCTLAUTO_SERVICE")] = settings.value(QString("NETCTLAUTO_SERVICE"), QString("netctl-auto")).toString();
config[QString("PROFILE_DIR")] = settings.value(QString("PROFILE_DIR"), QString("/etc/netctl")).toString();
config[QString("SYSTEMCTL_PATH")] = settings.value(QString("SYSTEMCTL_PATH"), QString(SYSTEMCTL_PATH)).toString();
config[QString("NETCTL_PATH")] = settings.value(QString("NETCTL_PATH"), QString(NETCTL_PATH)).toString();
config[QString("NETCTLAUTO_PATH")] = settings.value(QString("NETCTLAUTO_PATH"), QString(NETCTLAUTO_PATH)).toString();
config[QString("NETCTLAUTO_SERVICE")] = settings.value(QString("NETCTLAUTO_SERVICE"), QString(NETCTLAUTO_SERVICE)).toString();
config[QString("PROFILE_DIR")] = settings.value(QString("PROFILE_DIR"), QString(PROFILE_DIR)).toString();
settings.endGroup();
settings.beginGroup(QString("sudo"));
config[QString("SUDO_PATH")] = settings.value(QString("SUDO_PATH"), QString("/usr/bin/kdesu")).toString();
config[QString("SUDO_PATH")] = settings.value(QString("SUDO_PATH"), QString(SUDO_PATH)).toString();
settings.endGroup();
settings.beginGroup(QString("wpa_supplicant"));
config[QString("WPASUP_PATH")] = settings.value(QString("WPASUP_PATH"), QString("/usr/bin/wpa_supplicant")).toString();
config[QString("WPACLI_PATH")] = settings.value(QString("WPACLI_PATH"), QString("/usr/bin/wpa_cli")).toString();
config[QString("PID_FILE")] = settings.value(QString("PID_FILE"), QString("/run/wpa_supplicant_$i.pid")).toString();
config[QString("WPA_DRIVERS")] = settings.value(QString("WPA_DRIVERS"), QString("nl80211,wext")).toString();
config[QString("CTRL_DIR")] = settings.value(QString("CTRL_DIR"), QString("/run/wpa_supplicant")).toString();
config[QString("CTRL_GROUP")] = settings.value(QString("CTRL_GROUP"), QString("users")).toString();
config[QString("WPASUP_PATH")] = settings.value(QString("WPASUP_PATH"), QString(WPASUP_PATH)).toString();
config[QString("WPACLI_PATH")] = settings.value(QString("WPACLI_PATH"), QString(WPACLI_PATH)).toString();
config[QString("PID_FILE")] = settings.value(QString("PID_FILE"), QString(PID_FILE)).toString();
config[QString("WPA_DRIVERS")] = settings.value(QString("WPA_DRIVERS"), QString(WPA_DRIVERS)).toString();
config[QString("CTRL_DIR")] = settings.value(QString("CTRL_DIR"), QString(CTRL_DIR)).toString();
config[QString("CTRL_GROUP")] = settings.value(QString("CTRL_GROUP"), QString(CTRL_GROUP)).toString();
settings.endGroup();
settings.beginGroup(QString("Other"));
config[QString("EDITOR_PATH")] = settings.value(QString("EDITOR_PATH"), QString("/usr/bin/gvim")).toString();
config[QString("IFACE_DIR")] = settings.value(QString("IFACE_DIR"), QString("/sys/class/net/")).toString();
config[QString("RFKILL_DIR")] = settings.value(QString("RFKILL_DIR"), QString("/sys/class/rfkill/")).toString();
config[QString("PREFERED_IFACE")] = settings.value(QString("PREFERED_IFACE"), QString("")).toString();
config[QString("EDITOR_PATH")] = settings.value(QString("EDITOR_PATH"), QString(EDITOR_PATH)).toString();
config[QString("IFACE_DIR")] = settings.value(QString("IFACE_DIR"), QString(IFACE_DIR)).toString();
config[QString("RFKILL_DIR")] = settings.value(QString("RFKILL_DIR"), QString(RFKILL_DIR)).toString();
config[QString("PREFERED_IFACE")] = settings.value(QString("PREFERED_IFACE"), QString(PREFERED_IFACE)).toString();
settings.endGroup();
settings.beginGroup(QString("Toolbars"));

View File

@ -42,6 +42,7 @@ void TunnelWidget::clear()
ui->comboBox_mode->setCurrentIndex(0);
ui->lineEdit_local->clear();
ui->lineEdit_remote->clear();
ui->lineEdit_key->clear();
}
@ -62,6 +63,8 @@ QMap<QString, QString> TunnelWidget::getSettings()
if (!IpRegExp::checkString(ui->lineEdit_local->text(), IpRegExp::ip4Regex()))
settings[QString("Local")] = QString("'%1'").arg(ui->lineEdit_local->text());
settings[QString("Remote")] = QString("'%1'").arg(ui->lineEdit_remote->text());
if (ui->comboBox_mode->currentText() == QString("gre"))
settings[QString("Key")] = QString("'%1'").arg(ui->lineEdit_key->text());
return settings;
}
@ -71,6 +74,9 @@ int TunnelWidget::isOk()
{
// ip is not correct
if (!IpRegExp::checkString(ui->lineEdit_remote->text(), IpRegExp::ip4Regex())) return 1;
// key is empty
if (ui->comboBox_mode->currentText() == QString("gre"))
if (ui->lineEdit_key->text().isEmpty()) return 2;
// all fine
return 0;
}
@ -88,4 +94,6 @@ void TunnelWidget::setSettings(const QMap<QString, QString> settings)
ui->lineEdit_local->setText(settings[QString("Local")]);
if (settings.contains(QString("Remote")))
ui->lineEdit_remote->setText(settings[QString("Remote")]);
if (settings.contains(QString("Key")))
ui->lineEdit_key->setText(settings[QString("Key")]);
}

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>411</width>
<height>108</height>
<height>137</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
@ -166,6 +166,39 @@
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_key">
<item>
<widget class="QLabel" name="label_key">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Key</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_key">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>A key identifying an individual traffic flow within a tunnel</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>

View File

@ -77,7 +77,6 @@ void WirelessWidget::clear()
}
ui->comboBox_rfkill->setCurrentIndex(0);
ui->spinBox_timeoutWpa->setValue(15);
ui->checkBox_exclude->setCheckState(Qt::Unchecked);
ui->pushButton_wirelessAdvanced->setChecked(false);
showAdvanced();
@ -231,8 +230,6 @@ QMap<QString, QString> WirelessWidget::getSettings()
settings[QString("RFKill")] = ui->comboBox_rfkill->currentText();
if (ui->spinBox_timeoutWpa->value() != 15)
settings[QString("TimeoutWPA")] = QString::number(ui->spinBox_timeoutWpa->value());
if (ui->checkBox_exclude->checkState() == Qt::Checked)
settings[QString("ExcludeAuto")] = QString("yes");
return settings;
}
@ -310,9 +307,6 @@ void WirelessWidget::setSettings(const QMap<QString, QString> settings)
}
if (settings.contains(QString("TimeoutWPA")))
ui->spinBox_timeoutWpa->setValue(settings[QString("TimeoutWPA")].toInt());
if (settings.contains(QString("ExcludeAuto")))
if (settings[QString("ExcludeAuto")] == QString("yes"))
ui->checkBox_exclude->setCheckState(Qt::Checked);
changeSecurity(ui->comboBox_security->currentText());
}

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>584</width>
<height>697</height>
<height>670</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
@ -280,17 +280,11 @@
<item>
<layout class="QHBoxLayout" name="layout_wirelessAdvanced">
<item>
<spacer name="spacer_wirelessAdvanced">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</widget>
</item>
<item>
<widget class="QToolButton" name="pushButton_wirelessAdvanced">
@ -313,36 +307,6 @@
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QHBoxLayout" name="layout_exclude">
<item>
<widget class="QLabel" name="label_exclude">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkBox_exclude">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>2</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Whether or not to exclude this profile from automatic profile selection</string>
</property>
<property name="text">
<string>Exclude auto</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="layout_hidden">
<item>

View File

@ -18,13 +18,16 @@ add_subdirectory (${SUBPROJECT_SOURCE_DIR})
# build man
file (GLOB SUBPROJECT_MAN_IN *.1)
file (GLOB SUBPROJECT_MAN5_IN *.5)
file (GLOB SUBPROJECT_CONF_IN netctl-gui.conf)
file (RELATIVE_PATH SUBPROJECT_MAN ${CMAKE_SOURCE_DIR} ${SUBPROJECT_MAN_IN})
file (RELATIVE_PATH SUBPROJECT_MAN5 ${CMAKE_SOURCE_DIR} ${SUBPROJECT_MAN5_IN})
file (RELATIVE_PATH SUBPROJECT_CONF ${CMAKE_SOURCE_DIR} ${SUBPROJECT_CONF_IN})
configure_file (${SUBPROJECT_MAN_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_MAN})
configure_file (${SUBPROJECT_MAN5_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_MAN5})
configure_file (${SUBPROJECT_CONF_IN} ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_CONF})
install (FILES org.netctlgui.helper.conf DESTINATION ${DBUS_SYSTEMCONF_PATH})
install (FILES netctl-gui.conf DESTINATION /etc)
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_CONF} DESTINATION /etc)
install (FILES netctlgui-helper.service DESTINATION ${SYSTEMD_SERVICE_PATH})
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_MAN} DESTINATION share/man/man1/)
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${SUBPROJECT_MAN5} DESTINATION share/man/man5/)

View File

@ -5,81 +5,81 @@
[Common]
# application language
LANGUAGE=en
#LANGUAGE="@CFG_LANGUAGE@"
# auto update interval for main tab in seconds
# 0 means there is no updates
MAINUPDATE=0
#MAINUPDATE="@CFG_MAINUPDATE@"
# auto update interval for wifi tab in seconds
# 0 means there is no updates
WIFIUPDATE=0
#WIFIUPDATE="@CFG_WIFIUPDATE@"
# create system tray icon.
# This option is not recognized by netctlgui-helper
SYSTRAY=true
#SYSTRAY="@CFG_SYSTRAY@"
# close helper after GUI application quit.
# This option is not recognized by netctlgui-helper
CLOSETOTRAY=true
#CLOSETOTRAY="@CFG_CLOSETOTRAY@"
# start netctl-gui minimized to tray if it is available.
# This option is not recognized by netctlgui-helper
STARTTOTRAY=false
#STARTTOTRAY="@CFG_STARTTOTRAY@"
# skip external components checking
# This option is not recognized by netctlgui-helper
SKIPCOMPONENTS=false
#SKIPCOMPONENTS="@CFG_SKIPCOMPONENTS@"
[Helper]
# use netctlgui-helper if it is available.
# This option is not recognized by netctlgui-helper
USE_HELPER=true
#USE_HELPER="@CFG_USE_HELPER@"
# force use SUDO_PATH for helper instead of using setuid(3) to child processes
FORCE_SUDO=false
#FORCE_SUDO="@CFG_FORCE_SUDO@"
# hide application to tray on exit if tray is available.
# This option is not recognized by netctlgui-helper
CLOSE_HELPER=false
#CLOSE_HELPER="@CFG_CLOSE_HELPER@"
# path to netctlgui-helper.
# This option is not recognized by netctlgui-helper
HELPER_PATH=/usr/bin/netctlgui-helper
#HELPER_PATH="@CFG_HELPER_PATH@"
# netctlgui-helper service name.
# This option is not recognized by netctlgui-helper
HELPER_SERVICE=netctlgui-helper.service
#HELPER_SERVICE="@CFG_HELPER_SERVICE@"
[netctl]
# path to systemctl
SYSTEMCTL_PATH=/usr/bin/systemctl
#SYSTEMCTL_PATH="@CFG_SYSTEMCTL_PATH@"
# path to netctl
NETCTL_PATH=/usr/bin/netctl
#NETCTL_PATH="@CFG_NETCTL_PATH@"
# path to netctl-auto
NETCTLAUTO_PATH=/usr/bin/netctl-auto
#NETCTLAUTO_PATH="@CFG_NETCTLAUTO_PATH@"
# netctl-auto service name without .service suffix
NETCTLAUTO_SERVICE=netctl-auto
#NETCTLAUTO_SERVICE="@CFG_NETCTLAUTO_SERVICE@"
# path to netctl profile directory
PROFILE_DIR=/etc/netctl/
#PROFILE_DIR="@CFG_PROFILE_DIR@"
[sudo]
# path to sudo frontend
SUDO_PATH=/usr/bin/sudo
#SUDO_PATH="@CFG_SUDO_PATH@"
[wpa_supplicant]
# path to wpa_supplicant
WPASUP_PATH=/usr/bin/wpa_supplicant
#WPASUP_PATH="@CFG_WPASUP_PATH@"
# path to wpa_cli
WPACLI_PATH=/usr/bin/wpa_cli
#WPACLI_PATH="@CFG_WPACLI_PATH@"
# wpa_supplicant PID file
# $i is interface
PID_FILE=/run/wpa_supplicant_$i.pid
#PID_FILE="@CFG_PID_FILE@"
# wpa_supplicant drivers for wireless interface comma separated
WPA_DRIVERS="nl80211,wext"
#WPA_DRIVERS="@CFG_WPA_DRIVERS@"
# path to control directory which is required by wpa_supplicant
CTRL_DIR=/run/wpa_supplicant
#CTRL_DIR="@CFG_CTRL_DIR@"
# group which is owner of CTRL_DIR
CTRL_GROUP=users
#CTRL_GROUP="@CFG_CTRL_GROUP@"
[Other]
# path to external editor
# This option is not recognized by netctlgui-helper
EDITOR_PATH=/usr/bin/gvim
#EDITOR_PATH="@CFG_EDITOR_PATH@"
# path to directory which contains interface information
IFACE_DIR=/sys/class/net/
#IFACE_DIR="@CFG_IFACE_DIR@"
# path to directory with rfkill devices.
# This option is not recognized by netctlgui-helper
RFKILL_DIR=/sys/class/rfkill/
#RFKILL_DIR="@CFG_RFKILL_DIR@"
# prefered wireless interface
PREFERED_IFACE=
#PREFERED_IFACE="@CFG_PREFERED_IFACE@"

View File

@ -32,10 +32,10 @@ force use
for helper instead of using
.BR setuid (3)
to child processes
.IP "EDITOR_PATH=/usr/bin/gvim"
.IP "EDITOR_PATH=gvim"
path to an external editor. This option is not recognized by
.BR netctlgui-helper (1)
.IP "HELPER_PATH=/usr/bin/netctlgui-helper"
.IP "HELPER_PATH=netctlgui-helper"
path to
.BR netctlgui-helper (1)
This option is not recognized by
@ -50,10 +50,10 @@ path to directory which contains interface information
application language
.IP "MAINUPDATE=0"
main tab autoupdate interval in seconds. 0 is disable autoupdate
.IP "NETCTL_PATH=/usr/bin/netctl"
.IP "NETCTL_PATH=netctl"
path to
.BR netctl (1)
.IP "NETCTLAUTO_PATH=/usr/bin/netctl-auto"
.IP "NETCTLAUTO_PATH=netctl-auto"
path to
.BR netctl-auto (1)
.IP "NETCTLAUTO_SERVICE=netctl-auto"
@ -83,11 +83,11 @@ start
.BR netctl-gui (1)
minimized to tray if it is available. This option is not recognized by
.BR netctlgui-helper (1)
.IP "SUDO_PATH=/usr/bin/kdesu"
.IP "SUDO_PATH=kdesu"
path to
.BR sudo (8)
frontend
.IP "SYSTEMCTL_PATH=/usr/bin/systemctl"
.IP "SYSTEMCTL_PATH=systemctl"
path to
.BR systemctl (1)
.IP "SYSTRAY=true"
@ -100,10 +100,10 @@ if it is available. This option is not recognized by
.BR netctlgui-helper (1)
.IP "WIFIUPDATE=0"
WiFi tab autoupdate interval in seconds. 0 is disable autoupdate
.IP "WPACLI_PATH=/usr/bin/wpa_cli"
.IP "WPACLI_PATH=wpa_cli"
path to
.BR wpa_cli (8)
.IP "WPASUP_PATH=/usr/bin/wpa_supplicant"
.IP "WPASUP_PATH=wpa_supplicant"
path to
.BR wpa_supplicant (8)
.IP "WPA_DRIVERS=nl80211,wext"

View File

@ -36,7 +36,7 @@ QVariantMap getArgs()
args[QString("debug")] = false;
args[QString("nodaemon")] = false;
args[QString("session")] = false;
args[QString("state")] = (int) 0;
args[QString("state")] = static_cast<int>(0);
args[QString("system")] = false;
args[QString("help")] = false;
args[QString("info")] = false;

View File

@ -147,47 +147,49 @@ QMap<QString, QString> NetctlHelper::getSettings(const QString file)
QSettings settings(file, QSettings::IniFormat);
settings.beginGroup(QString("Common"));
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString("en")).toString();
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString("true")).toString();
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString("true")).toString();
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString("false")).toString();
config[QString("SKIPCOMPONENTS")] = settings.value(QString("SKIPCOMPONENTS"), QString("false")).toString();
config[QString("LANGUAGE")] = settings.value(QString("LANGUAGE"), QString(LANGUAGE)).toString();
config[QString("MAINUPDATE")] = settings.value(QString("MAINUPDATE"), QString(MAINUPDATE)).toString();
config[QString("WIFIUPDATE")] = settings.value(QString("WIFIUPDATE"), QString(WIFIUPDATE)).toString();
config[QString("SYSTRAY")] = settings.value(QString("SYSTRAY"), QString(SYSTRAY)).toString();
config[QString("CLOSETOTRAY")] = settings.value(QString("CLOSETOTRAY"), QString(CLOSETOTRAY)).toString();
config[QString("STARTTOTRAY")] = settings.value(QString("STARTTOTRAY"), QString(STARTTOTRAY)).toString();
config[QString("SKIPCOMPONENTS")] = settings.value(QString("SKIPCOMPONENTS"), QString(SKIPCOMPONENTS)).toString();
settings.endGroup();
settings.beginGroup(QString("Helper"));
config[QString("USE_HELPER")] = settings.value(QString("USE_HELPER"), QString("true")).toString();
config[QString("FORCE_SUDO")] = settings.value(QString("FORCE_SUDO"), QString("false")).toString();
config[QString("CLOSE_HELPER")] = settings.value(QString("CLOSE_HELPER"), QString("false")).toString();
config[QString("HELPER_PATH")] = settings.value(QString("HELPER_PATH"), QString("/usr/bin/netctlgui-helper")).toString();
config[QString("HELPER_SERVICE")] = settings.value(QString("HELPER_SERVICE"), QString("netctlgui-helper.service")).toString();
config[QString("USE_HELPER")] = settings.value(QString("USE_HELPER"), QString(USE_HELPER)).toString();
config[QString("FORCE_SUDO")] = settings.value(QString("FORCE_SUDO"), QString(FORCE_SUDO)).toString();
config[QString("CLOSE_HELPER")] = settings.value(QString("CLOSE_HELPER"), QString(CLOSE_HELPER)).toString();
config[QString("HELPER_PATH")] = settings.value(QString("HELPER_PATH"), QString(HELPER_PATH)).toString();
config[QString("HELPER_SERVICE")] = settings.value(QString("HELPER_SERVICE"), QString(HELPER_SERVICE)).toString();
settings.endGroup();
settings.beginGroup(QString("netctl"));
config[QString("SYSTEMCTL_PATH")] = settings.value(QString("SYSTEMCTL_PATH"), QString("/usr/bin/systemctl")).toString();
config[QString("NETCTL_PATH")] = settings.value(QString("NETCTL_PATH"), QString("/usr/bin/netctl")).toString();
config[QString("NETCTLAUTO_PATH")] = settings.value(QString("NETCTLAUTO_PATH"), QString("/usr/bin/netctl-auto")).toString();
config[QString("NETCTLAUTO_SERVICE")] = settings.value(QString("NETCTLAUTO_SERVICE"), QString("netctl-auto")).toString();
config[QString("PROFILE_DIR")] = settings.value(QString("PROFILE_DIR"), QString("/etc/netctl")).toString();
config[QString("SYSTEMCTL_PATH")] = settings.value(QString("SYSTEMCTL_PATH"), QString(SYSTEMCTL_PATH)).toString();
config[QString("NETCTL_PATH")] = settings.value(QString("NETCTL_PATH"), QString(NETCTL_PATH)).toString();
config[QString("NETCTLAUTO_PATH")] = settings.value(QString("NETCTLAUTO_PATH"), QString(NETCTLAUTO_PATH)).toString();
config[QString("NETCTLAUTO_SERVICE")] = settings.value(QString("NETCTLAUTO_SERVICE"), QString(NETCTLAUTO_SERVICE)).toString();
config[QString("PROFILE_DIR")] = settings.value(QString("PROFILE_DIR"), QString(PROFILE_DIR)).toString();
settings.endGroup();
settings.beginGroup(QString("sudo"));
config[QString("SUDO_PATH")] = settings.value(QString("SUDO_PATH"), QString("/usr/bin/kdesu")).toString();
config[QString("SUDO_PATH")] = settings.value(QString("SUDO_PATH"), QString(SUDO_PATH)).toString();
settings.endGroup();
settings.beginGroup(QString("wpa_supplicant"));
config[QString("WPASUP_PATH")] = settings.value(QString("WPASUP_PATH"), QString("/usr/bin/wpa_supplicant")).toString();
config[QString("WPACLI_PATH")] = settings.value(QString("WPACLI_PATH"), QString("/usr/bin/wpa_cli")).toString();
config[QString("PID_FILE")] = settings.value(QString("PID_FILE"), QString("/run/wpa_supplicant_$i.pid")).toString();
config[QString("WPA_DRIVERS")] = settings.value(QString("WPA_DRIVERS"), QString("nl80211,wext")).toString();
config[QString("CTRL_DIR")] = settings.value(QString("CTRL_DIR"), QString("/run/wpa_supplicant")).toString();
config[QString("CTRL_GROUP")] = settings.value(QString("CTRL_GROUP"), QString("users")).toString();
config[QString("WPASUP_PATH")] = settings.value(QString("WPASUP_PATH"), QString(WPASUP_PATH)).toString();
config[QString("WPACLI_PATH")] = settings.value(QString("WPACLI_PATH"), QString(WPACLI_PATH)).toString();
config[QString("PID_FILE")] = settings.value(QString("PID_FILE"), QString(PID_FILE)).toString();
config[QString("WPA_DRIVERS")] = settings.value(QString("WPA_DRIVERS"), QString(WPA_DRIVERS)).toString();
config[QString("CTRL_DIR")] = settings.value(QString("CTRL_DIR"), QString(CTRL_DIR)).toString();
config[QString("CTRL_GROUP")] = settings.value(QString("CTRL_GROUP"), QString(CTRL_GROUP)).toString();
settings.endGroup();
settings.beginGroup(QString("Other"));
config[QString("EDITOR_PATH")] = settings.value(QString("EDITOR_PATH"), QString("/usr/bin/gvim")).toString();
config[QString("IFACE_DIR")] = settings.value(QString("IFACE_DIR"), QString("/sys/class/net/")).toString();
config[QString("RFKILL_DIR")] = settings.value(QString("RFKILL_DIR"), QString("/sys/class/rfkill/")).toString();
config[QString("PREFERED_IFACE")] = settings.value(QString("PREFERED_IFACE"), QString("")).toString();
config[QString("EDITOR_PATH")] = settings.value(QString("EDITOR_PATH"), QString(EDITOR_PATH)).toString();
config[QString("IFACE_DIR")] = settings.value(QString("IFACE_DIR"), QString(IFACE_DIR)).toString();
config[QString("RFKILL_DIR")] = settings.value(QString("RFKILL_DIR"), QString(RFKILL_DIR)).toString();
config[QString("PREFERED_IFACE")] = settings.value(QString("PREFERED_IFACE"), QString(PREFERED_IFACE)).toString();
settings.endGroup();
settings.beginGroup(QString("Toolbars"));
@ -210,7 +212,7 @@ void NetctlHelper::updateConfiguration()
if (debug) qDebug() << PDEBUG;
deleteInterface();
if (system)
if ((system) || (!QFile(configPath).exists()))
configuration = getSettings(QString("/etc/netctl-gui.conf"));
else
configuration = getSettings(configPath);

View File

@ -30,6 +30,8 @@
#include <QMap>
#include <QObject>
#include "version.h"
class NetctlProfile;
@ -303,27 +305,27 @@ private:
/**
* @brief prefered interface for WiFi. Default is ""
*/
QString mainInterface = QString("");
QString mainInterface = QString(PREFERED_IFACE);
/**
* @brief path to netctl command. Default is "/usr/bin/netctl"
* @brief path to netctl command. Default is "netctl"
*/
QString netctlCommand = QString("/usr/bin/netctl");
QString netctlCommand = QString(NETCTL_PATH);
/**
* @brief path to netctl-auto command. Default is "/usr/bin/netctl-auto"
* @brief path to netctl-auto command. Default is "netctl-auto"
*/
QString netctlAutoCommand = QString("/usr/bin/netctl-auto");
QString netctlAutoCommand = QString(NETCTLAUTO_PATH);
/**
* @brief netctl-auto service name. Default is "netctl-auto"
*/
QString netctlAutoService = QString("netctl-auto");
QString netctlAutoService = QString(NETCTLAUTO_SERVICE);
/**
* @brief path to sudo command. Default is "/usr/bin/kdesu"
* @brief path to sudo command. Default is "kdesu"
*/
QString sudoCommand = QString("/usr/bin/kdesu");
QString sudoCommand = QString(SUDO_PATH);
/**
* @brief path to systemctl command. Default is "/usr/bin/systemctl"
* @brief path to systemctl command. Default is "systemctl"
*/
QString systemctlCommand = QString("/usr/bin/systemctl");
QString systemctlCommand = QString(SYSTEMCTL_PATH);
// functions
/**
* @brief method which calls command

View File

@ -30,6 +30,8 @@
#include <QMap>
#include <QObject>
#include "version.h"
/**
* @brief The NetctlProfile class interacts with netctl profiles
@ -114,9 +116,9 @@ private:
*/
QDir *profileDirectory = nullptr;
/**
* @brief path to sudo command. Default is "/usr/bin/kdesu"
* @brief path to sudo command. Default is "kdesu"
*/
QString sudoCommand = QString("/usr/bin/kdesu");
QString sudoCommand = QString(SUDO_PATH);
};

View File

@ -30,6 +30,8 @@
#include <QMap>
#include <QObject>
#include "version.h"
class Netctl;
class NetctlProfile;
@ -184,31 +186,31 @@ private:
/**
* @brief path to ctrl_directory. Defaults is "/run/wpa_supplicant"
*/
QString ctrlDir = QString("/run/wpa_supplicant");
QString ctrlDir = QString(CTRL_DIR);
/**
* @brief group which is owner of CTRL_DIR. Default is "users"
*/
QString ctrlGroup = QString("users");
QString ctrlGroup = QString(CTRL_GROUP);
/**
* @brief wpa_supplicant PID file. $i is interface. Default is "/run/wpa_supplicant_$i.pid"
*/
QString pidFile = QString("/run/wpa_supplicant_$i.pid");
QString pidFile = QString(PID_FILE);
/**
* @brief path to sudo command. Default is "/usr/bin/kdesu"
* @brief path to sudo command. Default is "kdesu"
*/
QString sudoCommand = QString("/usr/bin/kdesu");
QString sudoCommand = QString(SUDO_PATH);
/**
* @brief path to wpa_cli command. Default is "/usr/bin/wpa_cli"
* @brief path to wpa_cli command. Default is "wpa_cli"
*/
QString wpaCliPath = QString("/usr/bin/wpa_cli");
QString wpaCliPath = QString(WPACLI_PATH);
/**
* @brief wpa_supplicant drivers comma separated. Default is "nl80211,wext"
*/
QString wpaDrivers = QString("nl80211,wext");
QString wpaDrivers = QString(WPA_DRIVERS);
/**
* @brief path to wpa_supplicant command. Default is "/usr/bin/wpa_supplicant"
* @brief path to wpa_supplicant command. Default is "wpa_supplicant"
*/
QString wpaSupPath = QString("/usr/bin/wpa_supplicant");
QString wpaSupPath = QString(WPASUP_PATH);
// functions
/**
* @brief method which calls wpa_cli and returns its output

View File

@ -45,7 +45,7 @@ Netctl::Netctl(const bool debugCmd, const QMap<QString, QString> settings)
if (settings.contains(QString("IFACE_DIR")))
ifaceDirectory = new QDir(settings[QString("IFACE_DIR")]);
else
ifaceDirectory = new QDir(QString("/sys/class/net/"));
ifaceDirectory = new QDir(QString(IFACE_DIR));
if (settings.contains(QString("PREFERED_IFACE")))
mainInterface = settings[QString("PREFERED_IFACE")];
if (settings.contains(QString("NETCTL_PATH")))

View File

@ -46,7 +46,7 @@ NetctlProfile::NetctlProfile(const bool debugCmd, const QMap<QString, QString> s
if (settings.contains(QString("PROFILE_DIR")))
profileDirectory = new QDir(settings[QString("PROFILE_DIR")]);
else
profileDirectory = new QDir(QString("/etc/netctl/"));
profileDirectory = new QDir(QString(PROFILE_DIR));
if (settings.contains(QString("SUDO_PATH")))
sudoCommand = settings[QString("SUDO_PATH")];
if (settings.contains(QString("FORCE_SUDO")))

View File

@ -154,8 +154,8 @@ QMap<QString, QString> Netctl::readDataEngineConfiguration()
QSettings settings(fileName, QSettings::IniFormat);
settings.beginGroup(QString("Netctl commands"));
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("/usr/bin/netctl")).toString();
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("/usr/bin/netctl-auto")).toString();
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("netctl")).toString();
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("netctl-auto")).toString();
settings.endGroup();
settings.beginGroup(QString("External IP"));
@ -836,12 +836,12 @@ void Netctl::configChanged()
KConfigGroup cg = config();
autoUpdateInterval = cg.readEntry("autoUpdateInterval", 1000);
paths[QString("gui")] = cg.readEntry("guiPath", "/usr/bin/netctl-gui");
paths[QString("helper")] = cg.readEntry("helperPath", "/usr/bin/netctlgui-helper");
paths[QString("netctl")] = cg.readEntry("netctlPath", "/usr/bin/netctl");
paths[QString("netctlAuto")] = cg.readEntry("netctlAutoPath", "/usr/bin/netctl-auto");
paths[QString("sudo")] = cg.readEntry("sudoPath", "/usr/bin/kdesu");
paths[QString("wifi")] = cg.readEntry("wifiPath", "/usr/bin/netctl-gui -t 3");
paths[QString("gui")] = cg.readEntry("guiPath", "netctl-gui");
paths[QString("helper")] = cg.readEntry("helperPath", "netctlgui-helper");
paths[QString("netctl")] = cg.readEntry("netctlPath", "netctl");
paths[QString("netctlAuto")] = cg.readEntry("netctlAutoPath", "netctl-auto");
paths[QString("sudo")] = cg.readEntry("sudoPath", "kdesu");
paths[QString("wifi")] = cg.readEntry("wifiPath", "netctl-gui -t 3");
useSudo = cg.readEntry("useSudo", true);
useWifi = cg.readEntry("useWifi", false);
useHelper = cg.readEntry("useHelper", true);

View File

@ -11,22 +11,22 @@
<default>100</default>
</entry>
<entry name="guiPath" type="string">
<default>/usr/bin/netctl-gui</default>
<default>netctl-gui</default>
</entry>
<entry name="helperPath" type="string">
<default>/usr/bin/netctlgui-helper</default>
<default>netctlgui-helper</default>
</entry>
<entry name="netctlPath" type="string">
<default>/usr/bin/netctl</default>
<default>netctl</default>
</entry>
<entry name="netctlAutoPath" type="string">
<default>/usr/bin/netctl-auto</default>
<default>netctl-auto</default>
</entry>
<entry name="sudoPath" type="string">
<default>/usr/bin/kdesu</default>
<default>kdesu</default>
</entry>
<entry name="wifiPath" type="string">
<default>/usr/bin/netctl-gui -t 3</default>
<default>netctl-gui -t 3</default>
</entry>
<entry name="useHelper" type="bool">
<default>true</default>

View File

@ -58,6 +58,7 @@ Item {
horizontalAlignment: Text.AlignLeft
textFormat: Text.RichText
text: NetctlAdds.getAboutText("links")
onLinkActivated: Qt.openUrlExternally(link);
}
QtControls.Label {
@ -85,6 +86,7 @@ Item {
horizontalAlignment: Text.AlignJustify
textFormat: Text.RichText
text: NetctlAdds.getAboutText("3rdparty")
onLinkActivated: Qt.openUrlExternally(link);
}
}
}

View File

@ -14,7 +14,7 @@ X-Plasma-RemoteLocation=
X-KDE-PluginInfo-Author=Evgeniy Alekseev
X-KDE-PluginInfo-Email=esalexeev@gmail.com
X-KDE-PluginInfo-Name=org.kde.plasma.netctl
X-KDE-PluginInfo-Version=1.4.6
X-KDE-PluginInfo-Version=1.4.8
X-KDE-PluginInfo-Website=http://arcanis.name/projects/netctl-gui
X-KDE-PluginInfo-Category=Network
X-KDE-PluginInfo-Depends=

View File

@ -344,8 +344,8 @@ QVariantMap NetctlAdds::readDataEngineConfiguration()
QSettings settings(fileName, QSettings::IniFormat);
settings.beginGroup(QString("Netctl commands"));
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("/usr/bin/netctl"));
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("/usr/bin/netctl-auto"));
configuration[QString("NETCTLCMD")] = settings.value(QString("NETCTLCMD"), QString("netctl"));
configuration[QString("NETCTLAUTOCMD")] = settings.value(QString("NETCTLAUTOCMD"), QString("netctl-auto"));
settings.endGroup();
settings.beginGroup(QString("External IP"));

View File

@ -42,22 +42,22 @@ public:
Q_INVOKABLE QString valueByKey(const QString key);
// context menu
Q_INVOKABLE void enableProfileSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl"),
const QString cmd = QString("netctl"),
const QString sudoCmd = QString(""));
Q_INVOKABLE void restartProfileSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl"),
const QString cmd = QString("netctl"),
const QString sudoCmd = QString(""));
Q_INVOKABLE void startProfileSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl"),
const QString cmd = QString("netctl"),
const QString sudoCmd = QString(""));
Q_INVOKABLE void stopProfileSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl"),
const QString cmd = QString("netctl"),
const QString sudoCmd = QString(""));
Q_INVOKABLE void stopAllProfilesSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl"),
const QString cmd = QString("netctl"),
const QString sudoCmd = QString(""));
Q_INVOKABLE void switchToProfileSlot(const bool useHelper = true,
const QString cmd = QString("/usr/bin/netctl-auto"));
const QString cmd = QString("netctl-auto"));
// dataengine
Q_INVOKABLE QVariantMap readDataEngineConfiguration();
Q_INVOKABLE void writeDataEngineConfiguration(const QVariantMap configuration);

View File

@ -65,6 +65,21 @@
<translation>This software uses: %1</translation>
</message>
</context>
<context>
<name>BondWidget</name>
<message>
<source>Bond settings</source>
<translation>Bond settings</translation>
</message>
<message>
<source>Mode</source>
<translation>Mode</translation>
</message>
<message>
<source>The bonding policy. See the kernel documentation on bonding for details</source>
<translation>The bonding policy. See the kernel documentation on bonding for details</translation>
</message>
</context>
<context>
<name>BridgeWidget</name>
<message>
@ -190,6 +205,10 @@
<source>IP address does not match the standard</source>
<translation>IP address does not match the standard</translation>
</message>
<message>
<source>Key is required for &apos;gre&apos; mode</source>
<translation>Key is required for &apos;gre&apos; mode</translation>
</message>
</context>
<context>
<name>EthernetWidget</name>
@ -281,6 +300,14 @@
<source>Maximum time, in seconds, to wait for 802.1x authentication to succeed</source>
<translation>Maximum time, in seconds, to wait for 802.1x authentication to succeed</translation>
</message>
<message>
<source>Priority</source>
<translation>Priority</translation>
</message>
<message>
<source>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</source>
<translation>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</translation>
</message>
</context>
<context>
<name>GeneralWidget</name>
@ -376,6 +403,14 @@
<source>A description of the profile</source>
<translation>A description of the profile</translation>
</message>
<message>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation>Whether or not to exclude this profile from automatic profile selection</translation>
</message>
<message>
<source>Exclude auto</source>
<translation>Exclude auto</translation>
</message>
</context>
<context>
<name>IpWidget</name>
@ -1519,6 +1554,30 @@ Should be according to standards</translation>
<source>Browse</source>
<translation>Browse</translation>
</message>
<message>
<source>Select chat file</source>
<translation>Select chat file</translation>
</message>
<message>
<source>All (*.*)</source>
<translation>All (*.*)</translation>
</message>
<message>
<source>Init</source>
<translation>Init</translation>
</message>
<message>
<source>An initialization string sent to the modem before dialing</source>
<translation>An initialization string sent to the modem before dialing</translation>
</message>
<message>
<source>Chat script</source>
<translation>Chat script</translation>
</message>
<message>
<source>Path to a chat file</source>
<translation>Path to a chat file</translation>
</message>
</context>
<context>
<name>NetctlAutoWindow</name>
@ -2467,6 +2526,14 @@ Should be according to standards</translation>
<source>The address of the remote end of the tunnel</source>
<translation>The address of the remote end of the tunnel</translation>
</message>
<message>
<source>Key</source>
<translation>Key</translation>
</message>
<message>
<source>A key identifying an individual traffic flow within a tunnel</source>
<translation>A key identifying an individual traffic flow within a tunnel</translation>
</message>
</context>
<context>
<name>TuntapWidget</name>
@ -2809,11 +2876,11 @@ Should be according to standards</translation>
</message>
<message>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation>Whether or not to exclude this profile from automatic profile selection</translation>
<translation type="vanished">Whether or not to exclude this profile from automatic profile selection</translation>
</message>
<message>
<source>Exclude auto</source>
<translation>Exclude auto</translation>
<translation type="vanished">Exclude auto</translation>
</message>
<message>
<source>Frequency</source>

View File

@ -79,6 +79,24 @@
<translation></translation>
</message>
</context>
<context>
<name>BondWidget</name>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="91"/>
<source>Bond settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="92"/>
<source>Mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="94"/>
<source>The bonding policy. See the kernel documentation on bonding for details</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>BridgeWidget</name>
<message>
@ -125,6 +143,7 @@
<location filename="../../gui/src/errorwindow.cpp" line="120"/>
<location filename="../../gui/src/errorwindow.cpp" line="124"/>
<location filename="../../gui/src/errorwindow.cpp" line="128"/>
<location filename="../../gui/src/errorwindow.cpp" line="132"/>
<source>Error!</source>
<translation></translation>
</message>
@ -230,11 +249,16 @@
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="129"/>
<source>Key is required for &apos;gre&apos; mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="133"/>
<source>Unknown error</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="192"/>
<location filename="../../gui/src/errorwindow.cpp" line="197"/>
<source>Sender : %1</source>
<translation>%1</translation>
</message>
@ -246,7 +270,7 @@
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="282"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="307"/>
<source>Ethernet options</source>
<translation></translation>
</message>
@ -255,95 +279,105 @@
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="284"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="309"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether or not the absence of a carrier is acceptable&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translatorcomment>I don&apos;t know this translation is exactry correct because of my lack of knowledge in network.</translatorcomment>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="286"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="311"/>
<source>Skip no carrier</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="288"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="313"/>
<source>Set to yes to use 802.1x authentication</source>
<translation>802.1.x 使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="290"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="315"/>
<source>802.1x authentication</source>
<translation>802.1.x </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="291"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="316"/>
<source>WPA config file</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="293"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="318"/>
<source>Path to a wpa_supplicant configuration file</source>
<translation>wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="295"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="320"/>
<source>Browse</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="296"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="321"/>
<source>WPA driver</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="304"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="329"/>
<source>The wpa_supplicant driver to use for 802.1x authentication</source>
<translation>802.1.x wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="299"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="339"/>
<source>Priority</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="341"/>
<source>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="324"/>
<source>wired</source>
<translation>wired</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="300"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="325"/>
<source>nl80211</source>
<translation>nl80211</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="301"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="326"/>
<source>wext</source>
<translation>wext</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="306"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="331"/>
<source>Timeout carrier</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="308"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="333"/>
<source>Maximum time, in seconds, to wait for a carrier</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="310"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="335"/>
<source>Timeout WPA</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="312"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="337"/>
<source>Maximum time, in seconds, to wait for 802.1x authentication to succeed</source>
<translation>802.1.x </translation>
</message>
<message>
<location filename="../../gui/src/wirelesswidget.cpp" line="154"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="68"/>
<location filename="../../gui/src/wirelesswidget.cpp" line="153"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="69"/>
<source>Select wpa configuration file</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../gui/src/wirelesswidget.cpp" line="156"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="70"/>
<location filename="../../gui/src/wirelesswidget.cpp" line="155"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="71"/>
<source>Configuration files (*.conf)</source>
<translation> (*.conf)</translation>
</message>
@ -359,12 +393,12 @@
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="394"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="419"/>
<source>General</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="395"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="420"/>
<source>Description</source>
<translation></translation>
</message>
@ -373,98 +407,108 @@
<translation type="obsolete">&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="399"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="424"/>
<source>Connection</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="401"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="426"/>
<source>The connection type used by the profile</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="403"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="428"/>
<source>Interface</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="405"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="430"/>
<source>The name of the associated network interface</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="407"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="432"/>
<source>Binds to interfaces</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="408"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="413"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="433"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="438"/>
<source>Add</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="410"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="435"/>
<source>An array of physical network interfaces that this profile needs before it can be started</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/generalwidget.cpp" line="109"/>
<location filename="../../gui/src/generalwidget.cpp" line="110"/>
<source>Hide advanced</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="397"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="422"/>
<source>A description of the profile</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="412"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="437"/>
<source>After</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="415"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="440"/>
<source>An array of profile names that should be started before this profile is started</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="417"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="442"/>
<source>Command after starting</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="419"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="444"/>
<source>A command that is executed after a connection is established</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="421"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="446"/>
<source>Command before stoping</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="423"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="448"/>
<source>A command that is executed before a connection is brought down</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="426"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="451"/>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="453"/>
<source>Exclude auto</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="455"/>
<source>Set to yes to force connecting even if the interface is up</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="428"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="457"/>
<source>Force connect</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="429"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="458"/>
<source>Debug mode</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/generalwidget.cpp" line="112"/>
<location filename="../../gui/src/generalwidget.cpp" line="113"/>
<source>Show advanced</source>
<translation></translation>
</message>
@ -1438,12 +1482,12 @@ Should be according to standards</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/main.cpp" line="193"/>
<location filename="../../gui/src/main.cpp" line="200"/>
<source>Restore existing session.</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/main.cpp" line="198"/>
<location filename="../../gui/src/main.cpp" line="205"/>
<source>Close existing session.</source>
<translation></translation>
</message>
@ -1484,78 +1528,78 @@ Should be according to standards</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="348"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="402"/>
<source>Mobile PPP settings</source>
<translation> PPP </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="349"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="403"/>
<source>Username</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="351"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="355"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="405"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="409"/>
<source>The username and password to connect with</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="353"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="407"/>
<source>Password</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="357"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="411"/>
<source>Access point name</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="359"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="413"/>
<source>The access point (apn) to connect on</source>
<translation> (APN)</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="361"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="415"/>
<source>PIN</source>
<translation>PIN</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="363"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="417"/>
<source>If your modem requires a PIN to unlock, use this option</source>
<translation> PIN 使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="365"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="419"/>
<source>Mode</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="375"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="429"/>
<source>This option is used to specify the connection mode</source>
<translation>使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="368"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="422"/>
<source>None</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="369"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="423"/>
<source>3Gpref</source>
<translation>3Gpref</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="370"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="424"/>
<source>3Gonly</source>
<translation>Gonly</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="371"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="425"/>
<source>GPRSpref</source>
<translation>GPRSpref</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="372"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="426"/>
<source>GPRSonly</source>
<translation>GPRSonly</translation>
</message>
@ -1564,57 +1608,88 @@ Should be according to standards</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="385"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="443"/>
<source>Max fail</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="387"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="445"/>
<source>The number of consecutive failed connection attempts to tolerate</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="378"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="432"/>
<source>Use the default route provided by the peer</source>
<translation>使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="380"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="434"/>
<source>Default route</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="382"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="436"/>
<source>Use the DNS provided by the peer</source>
<translation> DNS 使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="384"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="438"/>
<source>Use peer DNS</source>
<translation> DNS 使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="389"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="439"/>
<source>Init</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="441"/>
<source>An initialization string sent to the modem before dialing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="447"/>
<source>Chat script</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="449"/>
<source>Path to a chat file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="452"/>
<source>Options file</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="391"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="454"/>
<source>A file to read additional pppd options from</source>
<translation> PPPD </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="393"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="451"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="456"/>
<source>Browse</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="69"/>
<location filename="../../gui/src/mobilewidget.cpp" line="72"/>
<source>Select chat file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="74"/>
<source>All (*.*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="83"/>
<source>Select options file</source>
<translation></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="71"/>
<location filename="../../gui/src/mobilewidget.cpp" line="85"/>
<source>Configuration files (*.conf)</source>
<translation> (*.conf)</translation>
</message>
@ -2687,80 +2762,90 @@ Should be according to standards</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="143"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="166"/>
<source>Tunnel settings</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="144"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="167"/>
<source>Mode</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="157"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="180"/>
<source>The tunnel type</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="147"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="170"/>
<source>ipip</source>
<translation>ipip</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="148"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="171"/>
<source>gre</source>
<translation>gre</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="149"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="172"/>
<source>sit</source>
<translation>sit</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="150"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="173"/>
<source>isatap</source>
<translation>isatap</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="151"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="174"/>
<source>ip6ip6</source>
<translation>ip6ip6</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="152"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="175"/>
<source>ipip6</source>
<translation>ipip6</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="153"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="176"/>
<source>ip6gre</source>
<translation>ip6gre</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="154"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="177"/>
<source>any</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="159"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="182"/>
<source>Local</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="161"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="184"/>
<source>The address of the local end of the tunnel</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="163"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="186"/>
<source>Remote</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="165"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="188"/>
<source>The address of the remote end of the tunnel</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="190"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="192"/>
<source>A key identifying an individual traffic flow within a tunnel</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>TuntapWidget</name>
@ -2988,109 +3073,109 @@ Should be according to standards</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="608"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="589"/>
<source>Wireless options</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="609"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="590"/>
<source>Security</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="612"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="593"/>
<source>none</source>
<translation>none</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="613"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="594"/>
<source>wep</source>
<translation>wep</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="614"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="595"/>
<source>wpa</source>
<translation>wpa</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="615"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="596"/>
<source>wpa-configsection</source>
<translation>wpa-configsection</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="616"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="597"/>
<source>wpa-config</source>
<translation>wpa-config</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="618"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="599"/>
<source>ESSID</source>
<translation>ESSID</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="620"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="601"/>
<source>The name of the network to connect to</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="622"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="603"/>
<source>Wpa config section</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="623"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="649"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="676"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="604"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="626"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="653"/>
<source>Add</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="625"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="606"/>
<source>Array of lines that form a network block for wpa_supplicant</source>
<translation>wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="627"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="608"/>
<source>Wpa config file</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="629"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="610"/>
<source>Path to a wpa_supplicant configuration file</source>
<translation>wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="631"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="612"/>
<source>Browse</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="632"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="613"/>
<source>Key</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="634"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="615"/>
<source>The secret key to a WEP, or WPA encrypted network</source>
<translation>WEP WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="641"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="618"/>
<source>Whether or not the specified network is a hidden network</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="643"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="620"/>
<source>Hidden</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="645"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="622"/>
<source>Whether or not to use ad-hoc mode</source>
<translation>使</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="647"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="624"/>
<source>Ad-hoc</source>
<translation></translation>
</message>
@ -3099,105 +3184,103 @@ Should be according to standards</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="648"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="625"/>
<source>Scan frequencies</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="651"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="628"/>
<source>A space-separated list of frequencies in MHz to scan when searching for the network</source>
<translation> (MHz) </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="653"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="630"/>
<source>Frequency</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="655"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="659"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="632"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="636"/>
<source>Priority group for the network</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="657"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="634"/>
<source>Priority</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="661"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="638"/>
<source>Country</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="663"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="640"/>
<source>The country for which frequency regulations will be enforced</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="665"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="642"/>
<source>WPA group</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="667"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="644"/>
<source>Group that has the authority to configure wpa_supplicant via its control interface</source>
<translation>wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="669"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="646"/>
<source>Drivers</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="672"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="649"/>
<source>west</source>
<translation>west</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="673"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="650"/>
<source>nl80211</source>
<translation>nl80211</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="674"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="651"/>
<source>wired</source>
<translation>wired</translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="678"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="655"/>
<source>The wpa_supplicant driver to use</source>
<translation>使 wpa_supplicant </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="680"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="657"/>
<source>RFkill device</source>
<translation>RFkill </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="682"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="659"/>
<source>The name of an rfkill device</source>
<translation>Rfkill </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="684"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="661"/>
<source>Timeout WPA</source>
<translation>WPA </translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="686"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="663"/>
<source>Maximum time, in seconds, to wait for steps in the association and authentication to succeed</source>
<translation></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="637"/>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="639"/>
<source>Exclude auto</source>
<translation></translation>
<translation type="vanished"></translation>
</message>
<message>
<source>Hide advanced</source>

View File

@ -78,6 +78,24 @@
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>BondWidget</name>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="91"/>
<source>Bond settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="92"/>
<source>Mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_bondwidget.h" line="94"/>
<source>The bonding policy. See the kernel documentation on bonding for details</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>BridgeWidget</name>
<message>
@ -120,6 +138,7 @@
<location filename="../../gui/src/errorwindow.cpp" line="120"/>
<location filename="../../gui/src/errorwindow.cpp" line="124"/>
<location filename="../../gui/src/errorwindow.cpp" line="128"/>
<location filename="../../gui/src/errorwindow.cpp" line="132"/>
<source>Error!</source>
<translation type="unfinished"></translation>
</message>
@ -225,11 +244,16 @@
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="129"/>
<source>Key is required for &apos;gre&apos; mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="133"/>
<source>Unknown error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/errorwindow.cpp" line="192"/>
<location filename="../../gui/src/errorwindow.cpp" line="197"/>
<source>Sender : %1</source>
<translation type="unfinished"></translation>
</message>
@ -237,99 +261,109 @@
<context>
<name>EthernetWidget</name>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="282"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="307"/>
<source>Ethernet options</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="284"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="309"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether or not the absence of a carrier is acceptable&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="286"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="311"/>
<source>Skip no carrier</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="288"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="313"/>
<source>Set to yes to use 802.1x authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="290"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="315"/>
<source>802.1x authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="291"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="316"/>
<source>WPA config file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="293"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="318"/>
<source>Path to a wpa_supplicant configuration file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="295"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="320"/>
<source>Browse</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="296"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="321"/>
<source>WPA driver</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="304"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="329"/>
<source>The wpa_supplicant driver to use for 802.1x authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="299"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="339"/>
<source>Priority</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="341"/>
<source>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="324"/>
<source>wired</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="300"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="325"/>
<source>nl80211</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="301"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="326"/>
<source>wext</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="306"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="331"/>
<source>Timeout carrier</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="308"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="333"/>
<source>Maximum time, in seconds, to wait for a carrier</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="310"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="335"/>
<source>Timeout WPA</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="312"/>
<location filename="../../../build/gui/src/ui_ethernetwidget.h" line="337"/>
<source>Maximum time, in seconds, to wait for 802.1x authentication to succeed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/wirelesswidget.cpp" line="154"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="68"/>
<location filename="../../gui/src/wirelesswidget.cpp" line="153"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="69"/>
<source>Select wpa configuration file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/wirelesswidget.cpp" line="156"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="70"/>
<location filename="../../gui/src/wirelesswidget.cpp" line="155"/>
<location filename="../../gui/src/ethernetwidget.cpp" line="71"/>
<source>Configuration files (*.conf)</source>
<translation type="unfinished"></translation>
</message>
@ -337,108 +371,118 @@
<context>
<name>GeneralWidget</name>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="394"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="419"/>
<source>General</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="395"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="420"/>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="399"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="424"/>
<source>Connection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="401"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="426"/>
<source>The connection type used by the profile</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="403"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="428"/>
<source>Interface</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="405"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="430"/>
<source>The name of the associated network interface</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="407"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="432"/>
<source>Binds to interfaces</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="408"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="413"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="433"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="438"/>
<source>Add</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="410"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="435"/>
<source>An array of physical network interfaces that this profile needs before it can be started</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/generalwidget.cpp" line="109"/>
<location filename="../../gui/src/generalwidget.cpp" line="110"/>
<source>Hide advanced</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="397"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="422"/>
<source>A description of the profile</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="412"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="437"/>
<source>After</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="415"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="440"/>
<source>An array of profile names that should be started before this profile is started</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="417"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="442"/>
<source>Command after starting</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="419"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="444"/>
<source>A command that is executed after a connection is established</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="421"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="446"/>
<source>Command before stoping</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="423"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="448"/>
<source>A command that is executed before a connection is brought down</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="426"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="451"/>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="453"/>
<source>Exclude auto</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="455"/>
<source>Set to yes to force connecting even if the interface is up</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="428"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="457"/>
<source>Force connect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="429"/>
<location filename="../../../build/gui/src/ui_generalwidget.h" line="458"/>
<source>Debug mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/generalwidget.cpp" line="112"/>
<location filename="../../gui/src/generalwidget.cpp" line="113"/>
<source>Show advanced</source>
<translation type="unfinished"></translation>
</message>
@ -1236,12 +1280,12 @@ Should be according to standards</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/main.cpp" line="193"/>
<location filename="../../gui/src/main.cpp" line="200"/>
<source>Restore existing session.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/main.cpp" line="198"/>
<location filename="../../gui/src/main.cpp" line="205"/>
<source>Close existing session.</source>
<translation type="unfinished"></translation>
</message>
@ -1270,133 +1314,164 @@ Should be according to standards</source>
<context>
<name>MobileWidget</name>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="348"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="402"/>
<source>Mobile PPP settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="349"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="403"/>
<source>Username</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="351"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="355"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="405"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="409"/>
<source>The username and password to connect with</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="353"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="407"/>
<source>Password</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="357"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="411"/>
<source>Access point name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="359"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="413"/>
<source>The access point (apn) to connect on</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="361"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="415"/>
<source>PIN</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="363"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="417"/>
<source>If your modem requires a PIN to unlock, use this option</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="365"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="419"/>
<source>Mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="375"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="429"/>
<source>This option is used to specify the connection mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="368"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="422"/>
<source>None</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="369"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="423"/>
<source>3Gpref</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="370"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="424"/>
<source>3Gonly</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="371"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="425"/>
<source>GPRSpref</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="372"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="426"/>
<source>GPRSonly</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="385"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="439"/>
<source>Init</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="441"/>
<source>An initialization string sent to the modem before dialing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="443"/>
<source>Max fail</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="387"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="445"/>
<source>The number of consecutive failed connection attempts to tolerate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="378"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="432"/>
<source>Use the default route provided by the peer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="380"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="434"/>
<source>Default route</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="382"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="436"/>
<source>Use the DNS provided by the peer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="384"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="438"/>
<source>Use peer DNS</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="389"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="447"/>
<source>Chat script</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="449"/>
<source>Path to a chat file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="452"/>
<source>Options file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="391"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="454"/>
<source>A file to read additional pppd options from</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="393"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="451"/>
<location filename="../../../build/gui/src/ui_mobilewidget.h" line="456"/>
<source>Browse</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="69"/>
<location filename="../../gui/src/mobilewidget.cpp" line="72"/>
<source>Select chat file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="74"/>
<source>All (*.*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="83"/>
<source>Select options file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../gui/src/mobilewidget.cpp" line="71"/>
<location filename="../../gui/src/mobilewidget.cpp" line="85"/>
<source>Configuration files (*.conf)</source>
<translation type="unfinished"></translation>
</message>
@ -2397,80 +2472,90 @@ Should be according to standards</source>
<context>
<name>TunnelWidget</name>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="143"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="166"/>
<source>Tunnel settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="144"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="167"/>
<source>Mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="157"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="180"/>
<source>The tunnel type</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="147"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="170"/>
<source>ipip</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="148"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="171"/>
<source>gre</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="149"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="172"/>
<source>sit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="150"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="173"/>
<source>isatap</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="151"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="174"/>
<source>ip6ip6</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="152"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="175"/>
<source>ipip6</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="153"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="176"/>
<source>ip6gre</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="154"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="177"/>
<source>any</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="159"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="182"/>
<source>Local</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="161"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="184"/>
<source>The address of the local end of the tunnel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="163"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="186"/>
<source>Remote</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="165"/>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="188"/>
<source>The address of the remote end of the tunnel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="190"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_tunnelwidget.h" line="192"/>
<source>A key identifying an individual traffic flow within a tunnel</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>TuntapWidget</name>
@ -2686,212 +2771,202 @@ Should be according to standards</source>
<context>
<name>WirelessWidget</name>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="608"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="589"/>
<source>Wireless options</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="609"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="590"/>
<source>Security</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="612"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="593"/>
<source>none</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="613"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="594"/>
<source>wep</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="614"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="595"/>
<source>wpa</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="615"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="596"/>
<source>wpa-configsection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="616"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="597"/>
<source>wpa-config</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="618"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="599"/>
<source>ESSID</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="620"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="601"/>
<source>The name of the network to connect to</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="622"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="603"/>
<source>Wpa config section</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="623"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="649"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="676"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="604"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="626"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="653"/>
<source>Add</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="625"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="606"/>
<source>Array of lines that form a network block for wpa_supplicant</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="627"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="608"/>
<source>Wpa config file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="629"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="610"/>
<source>Path to a wpa_supplicant configuration file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="631"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="612"/>
<source>Browse</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="632"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="613"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="634"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="615"/>
<source>The secret key to a WEP, or WPA encrypted network</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="641"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="618"/>
<source>Whether or not the specified network is a hidden network</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="643"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="620"/>
<source>Hidden</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="645"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="622"/>
<source>Whether or not to use ad-hoc mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="647"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="624"/>
<source>Ad-hoc</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="648"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="625"/>
<source>Scan frequencies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="651"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="628"/>
<source>A space-separated list of frequencies in MHz to scan when searching for the network</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="653"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="630"/>
<source>Frequency</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="655"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="659"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="632"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="636"/>
<source>Priority group for the network</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="657"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="634"/>
<source>Priority</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="661"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="638"/>
<source>Country</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="663"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="640"/>
<source>The country for which frequency regulations will be enforced</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="665"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="642"/>
<source>WPA group</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="667"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="644"/>
<source>Group that has the authority to configure wpa_supplicant via its control interface</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="669"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="646"/>
<source>Drivers</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="672"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="649"/>
<source>west</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="673"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="650"/>
<source>nl80211</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="674"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="651"/>
<source>wired</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="678"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="655"/>
<source>The wpa_supplicant driver to use</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="680"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="657"/>
<source>RFkill device</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="682"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="659"/>
<source>The name of an rfkill device</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="684"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="661"/>
<source>Timeout WPA</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="686"/>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="663"/>
<source>Maximum time, in seconds, to wait for steps in the association and authentication to succeed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="637"/>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../../build/gui/src/ui_wirelesswidget.h" line="639"/>
<source>Exclude auto</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

View File

@ -65,6 +65,21 @@
<translation>Данное приложение использует: %1</translation>
</message>
</context>
<context>
<name>BondWidget</name>
<message>
<source>Bond settings</source>
<translation>Настройки bond соединения</translation>
</message>
<message>
<source>Mode</source>
<translation>Режим</translation>
</message>
<message>
<source>The bonding policy. See the kernel documentation on bonding for details</source>
<translation>Политка соединения. Обратитесь к документации ядра для более подробной информации</translation>
</message>
</context>
<context>
<name>BridgeWidget</name>
<message>
@ -190,6 +205,10 @@
<source>IP address does not match the standard</source>
<translation>IP адрес не соответствует стандартам</translation>
</message>
<message>
<source>Key is required for &apos;gre&apos; mode</source>
<translation>Необходимо указать ключ для &apos;gre&apos; режима</translation>
</message>
</context>
<context>
<name>EthernetWidget</name>
@ -281,6 +300,14 @@
<source>Maximum time, in seconds, to wait for 802.1x authentication to succeed</source>
<translation>Максимальное время в секундах для ожидания выполнения 802.1x авторизации</translation>
</message>
<message>
<source>Priority</source>
<translation>Приоритет</translation>
</message>
<message>
<source>Priority level of the profile. In case of automatic profile selection, profiles are tried in decreasing order of priority</source>
<translation>Приоритет профиля. В случае автоматического выбора профиля, профили будут выбираться по уменьшению приоритета</translation>
</message>
</context>
<context>
<name>GeneralWidget</name>
@ -376,6 +403,14 @@
<source>A description of the profile</source>
<translation>Описание профиля</translation>
</message>
<message>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation>Исключить ли профиль из автоматического выбора</translation>
</message>
<message>
<source>Exclude auto</source>
<translation>Исключить профиль</translation>
</message>
</context>
<context>
<name>IpWidget</name>
@ -1518,6 +1553,30 @@ Should be according to standards</source>
<source>Browse</source>
<translation>Обзор</translation>
</message>
<message>
<source>Select chat file</source>
<translation>Выберете скрипт с настройками чата</translation>
</message>
<message>
<source>All (*.*)</source>
<translation>Все (*.*)</translation>
</message>
<message>
<source>Init</source>
<translation>Инициализация</translation>
</message>
<message>
<source>An initialization string sent to the modem before dialing</source>
<translation>Команда, которая будет послана при инициализации модема</translation>
</message>
<message>
<source>Chat script</source>
<translation>Скрипт</translation>
</message>
<message>
<source>Path to a chat file</source>
<translation>Путь к скрипту с настройками чата</translation>
</message>
</context>
<context>
<name>NetctlAutoWindow</name>
@ -2466,6 +2525,14 @@ Should be according to standards</source>
<source>The address of the remote end of the tunnel</source>
<translation>Адрес удаленного конца туннеля</translation>
</message>
<message>
<source>Key</source>
<translation>Ключ</translation>
</message>
<message>
<source>A key identifying an individual traffic flow within a tunnel</source>
<translation>Ключ, указывающий на отдельные потоки трафика в туннеле</translation>
</message>
</context>
<context>
<name>TuntapWidget</name>
@ -2808,11 +2875,11 @@ Should be according to standards</source>
</message>
<message>
<source>Whether or not to exclude this profile from automatic profile selection</source>
<translation>Исключить ли профиль из автоматического выбора</translation>
<translation type="vanished">Исключить ли профиль из автоматического выбора</translation>
</message>
<message>
<source>Exclude auto</source>
<translation>Исключить профиль</translation>
<translation type="vanished">Исключить профиль</translation>
</message>
<message>
<source>Frequency</source>

View File

@ -52,4 +52,40 @@
#define DBUS_INTERFACE_PATH "/interface"
#define DBUS_LIB_PATH "/netctl"
// defaul configuration
// [Common] section
#define LANGUAGE "@CFG_LANGUAGE@"
#define MAINUPDATE "@CFG_MAINUPDATE@"
#define WIFIUPDATE "@CFG_WIFIUPDATE@"
#define SYSTRAY "@CFG_SYSTRAY@"
#define CLOSETOTRAY "@CFG_CLOSETOTRAY@"
#define STARTTOTRAY "@CFG_STARTTOTRAY@"
#define SKIPCOMPONENTS "@CFG_SKIPCOMPONENTS@"
// [Helper] section
#define USE_HELPER "@CFG_USE_HELPER@"
#define FORCE_SUDO "@CFG_FORCE_SUDO@"
#define CLOSE_HELPER "@CFG_CLOSE_HELPER@"
#define HELPER_PATH "@CFG_HELPER_PATH@"
#define HELPER_SERVICE "@CFG_HELPER_SERVICE@"
// [netctl] section
#define SYSTEMCTL_PATH "@CFG_SYSTEMCTL_PATH@"
#define NETCTL_PATH "@CFG_NETCTL_PATH@"
#define NETCTLAUTO_PATH "@CFG_NETCTLAUTO_PATH@"
#define NETCTLAUTO_SERVICE "@CFG_NETCTLAUTO_SERVICE@"
#define PROFILE_DIR "@CFG_PROFILE_DIR@"
// [sudo] section
#define SUDO_PATH "@CFG_SUDO_PATH@"
// [wpa_supplicant] section
#define WPASUP_PATH "@CFG_WPASUP_PATH@"
#define WPACLI_PATH "@CFG_WPACLI_PATH@"
#define PID_FILE "@CFG_PID_FILE@"
#define WPA_DRIVERS "@CFG_WPA_DRIVERS@"
#define CTRL_DIR "@CFG_CTRL_DIR@"
#define CTRL_GROUP "@CFG_CTRL_GROUP@"
// [Other] section
#define EDITOR_PATH "@CFG_EDITOR_PATH@"
#define IFACE_DIR "@CFG_IFACE_DIR@"
#define RFKILL_DIR "@CFG_RFKILL_DIR@"
#define PREFERED_IFACE "@CFG_PREFERED_IFACE@"
#endif /* VERSION_H */