change project structure to more pretty one

This commit is contained in:
2016-01-27 11:38:36 +03:00
parent 2ab2093829
commit c0ad1a6912
22 changed files with 90 additions and 242 deletions

View File

@ -0,0 +1,208 @@
---
permalink: ru/projects/netctl-gui
category: ru
hastr: true
layout: project
title: Netctl GUI
short: netctl-gui
tags: archlinux, c++, qt, сеть, kde, netctl, система, dbus, библиотека
hasgui: true
hasdocs: true
developers:
- Evgeniy Alekseev
- nosada (перевод на японский)
license: GPLv3
links:
- Страница на <a href="//linux.softpedia.com/get/System/Networking/Netctl-GUI-103383.shtml" title="Softpedia">Softpedia</a>
- Страница на <a href="//kde-apps.org/content/show.php?content=164490" title="kde-apps">kde-apps.org</a>
- <a href="//aur.archlinux.org/pkgbase/netctl-gui/" title="AUR">Пакет в AUR</a>
- <a href="/devs/netctl-gui-dbus-api.html" title="DBus API">Описание DBus API</a>
- <a href="/devs/netctl-gui-security-notes.html" title="Security">Примечания о безопасности</a>
---
<!-- info block -->
Графическая оболочка для `netctl` (набор скриптов для поднятия сети в Arch'е). Написана на `C++` с использованием библиотеки `Qt`. На текущим момент умеет работать с профилями, в том числе создавать новые, а также умеет подключаться к WiFi. Также предоставляет библиотеку для взаимодействия с netctl и виджет и DataEngine для KDE.
<!--more-->
**ВНИМАНИЕ:** [НУЖНЫ ПЕРЕВОДЧИКИ!](//github.com/arcan1s/netctl-gui/issues/3 "Тикет")
```bash
$ netctl-gui --help
Использование:
netctl-gui [ options ]
Опции:
Открыть окно:
--detached - запустить открепленным от консоли
--maximized - запустить развернутым
--minimized - запустить свернутым в трей
--about - показать окно "О программе"
--netctl-auto - показать окно netctl-auto
--settings - показать окно настроек
Функции:
-e, --essid <arg> - выбрать данный ESSID
-o, --open <arg> - открыть данный профиль
-s, --select <arg> - выбрать данный профиль
Дополнительные флаги:
-c, --config <arg> - прочитать настройки из данного файла
-d, --debug - показать отладочную информацию
--default - запустить со стандартными настройками
--set-opts <arg> - установить опции для данного запуска, разделенные запятыми
-t, --tab <arg> - открыть вкладку с этим номером
Показать сообщения:
-v, --version - показать версию и выход
-i, --info - показать информацию о сборке и выход
-h, --help - показать справку и выход
```
```bash
$ netctlgui-helper --help
Использование:
netctlgui-helper [ options ]
Опции:
-c, --config <arg> - прочитать настройки из данного файла
-d, --debug - показать отладочную информацию
--nodaemon - не запускать как демон
--replace - принудительно заменить существующую сессию
--restore - принудительно восстановить существующую сессию
--system - не считывать пользовательские настройки, только системные
Показать сообщения:
-v, --version - показать версию и выход
-i, --info - показать информацию о сборке и выход
-h, --help - показать справку и выход
```
### <a href="#devel" class="anchor" id="devel"><span class="octicon octicon-link"></span></a>Разработчики
{% for devel in page.developers %}
* {{ devel }}{% endfor %}
### <a href="#license" class="anchor" id="license"><span class="octicon octicon-link"></span></a>Лицензия
* {{ page.license }}
### <a href="#changelog" class="anchor" id="changelog"><span class="octicon octicon-link"></span></a>Changelog
[CHANGELOG](//github.com/arcan1s/netctl-gui/blob/master/CHANGELOG "GitHub")
<!-- end of info block -->
<!-- install block -->
## <a href="#install" class="anchor" id="install"><span class="octicon octicon-link"></span></a>Установка
### <a href="#instruction" class="anchor" id="instruction"><span class="octicon octicon-link"></span></a>Инструкция
* Скачайте [архив](//github.com/arcan1s/netctl-gui/releases "GitHub") с актуальной версией исходных файлов.
* Извлеките из него файлы и установите приложение. Если Вы хотите установить в `/`, Вы должны запустить как root:
```bash
cd /путь/к/распакованному/архиву
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../
make
sudo make install
```
Доступные флаги cmake:
* компоненты:
* `-DBUILD_DATAENGINE:BOOL=0` - не собирать DataEngine
* `-DBUILD_GUI:BOOL=0` - не собирать GUI
* `-DBUILD_HELPER:BOOL=0` - не собирать хелпер
* `-DBUILD_LIBRARY:BOOL=0` - не собирать библиотеку
* `-DBUILD_PLASMOID:BOOL=0` - не собирать плазмоид
* дополнительные компоненты:
* `-DBUILD_DOCS:BOOL=0` - не собирать документацию разработчика
* `-DBUILD_TEST:BOOL=1` - собирать авто тесты для библиотеки и хелпера
* свойства проекта:
* `-DDBUS_SYSTEMCONF_PATH=/etc/dbus-1/system.d/` - путь к системный файлам конфигурации DBus
* `-DSYSTEMD_SERVICE_PATH=lib/systemd/system` - путь к сервису systemd
* `-DUSE_CAPABILITIES:BOOL=0` - не использовать setcap, чтобы дать необходимые привилегии хелперу
* `-DBUILD_KDE4:BOOL=1` - собирать виджет под KDE4 вместо KF5
* `-DUSE_QT5:BOOL=0` - использовать Qt4 вместо Qt5
### <a href="#dependencies" class="anchor" id="dependencies"><span class="octicon octicon-link"></span></a>Зависимости
Все было протестировано на последних версиях зависимостей.
* netctl
* qt5-base *(если используется Qt5)* **или** qt4 *(если используется Qt4)*
* automoc4 *(make)*
* cmake *(make)*
* qt5-tools *(make, если используется Qt5)*
* kdebase-workspace *(опционально, KDE4 виджет)*
* plasma-frameworks *(опционально, KF5 виджет)*
* sudo *(опционально, поддержка sudo)*
* wpa_supplicant *(опционально, поддержка WiFi)*
<!-- end of install block -->
<!-- howto block -->
## <a href="#howto" class="anchor" id="howto"><span class="octicon octicon-link"></span></a>Использование
Просто запустите приложение `netctl-gui`. Если потребуется (и если Вы используете KDE), можете добавить виджет `netctl`, предоставляемый приложением.
<!-- end of howto block -->
<!-- config block -->
## <a href="#config" class="anchor" id="config"><span class="octicon octicon-link"></span></a>Настройка
Рекомендуется использовать графический интерфейс для настройки. Конфигурационные файлы:
* Графический интерфейс и хелпер
* `$HOME/.config/netctl-gui.conf` - пользовательские настройки GUI/хелпера
* `/etc/netctl-gui.conf` - системные настройки хелпера
* DataEngine (KDE4 версия)
* `$KDEHOME/share/config/plasma-dataengine-netctl.conf` - пользовательские настройки DataEngine
* `$KDESYSTEM/share/config/plasma-dataengine-netctl.conf` - системные настройки DataEngine
* DataEngine (KF5 версия)
* `$HOME/.config/plasma-dataengine-netctl.conf` - пользовательские настройки DataEngine
* `/etc/xdg/plasma-dataengine-netctl.conf` - системные настройки DataEngine
Для настройки виджета и DataEngine рекомендуется использовать графический интерфейс. Все настройки графического интерфейса хранятся в `$HOME/.config/netctl-gui.conf`. Для редактирования настоятельно рекомендуется использовать графический интерфейс.
<!-- end of config block -->
<!-- gui block -->
## <a href="#gui" class="anchor" id="gui"><span class="octicon octicon-link"></span></a>Графический интерфейс
Графический интерфейс предоставляется приложением `netctl-gui`.
### <a name="screenshots" class="anchor" href="#screenshots"><span class="octicon octicon-link"></span></a>Скриншоты
<div class="thumbnails">
{% assign scrdesc = "DataEngine" %}
{% assign scrname = "netctl-gui_dataengine" %}
{% include prj_scr.html %}
{% assign scrdesc = "Виджет" %}
{% assign scrname = "netctl-gui_plasmoid" %}
{% include prj_scr.html %}
{% assign scrdesc = "Настройки виджета" %}
{% assign scrname = "netctl-gui_plasmoid_conf_01" %}
{% include prj_scr.html %}
{% assign scrdesc = "Настройки виджета" %}
{% assign scrname = "netctl-gui_plasmoid_conf_02" %}
{% include prj_scr.html %}
{% assign scrdesc = "Настройки виджета" %}
{% assign scrname = "netctl-gui_plasmoid_conf_03" %}
{% include prj_scr.html %}
{% assign scrdesc = "Главное окно" %}
{% assign scrname = "netctl-gui_main" %}
{% include prj_scr.html %}
{% assign scrdesc = "Окно создания профиля" %}
{% assign scrname = "netctl-gui_profile" %}
{% include prj_scr.html %}
{% assign scrdesc = "WiFi меню" %}
{% assign scrname = "netctl-gui_wifi" %}
{% include prj_scr.html %}
{% assign scrdesc = "Окно 'О программе'" %}
{% assign scrname = "netctl-gui_about" %}
{% include prj_scr.html %}
{% assign scrdesc = "Окно netctl-auto" %}
{% assign scrname = "netctl-gui_netctl-auto" %}
{% include prj_scr.html %}
{% assign scrdesc = "Окно настроек" %}
{% assign scrname = "netctl-gui_settings" %}
{% include prj_scr.html %}
</div>
<!-- end of gui block -->