YaST/Tutorials/Simple YaST Module/Starting Up
Содержание
Начало разработки
На этом этапе начинается фактическая разработка.
Создание нового модуля YaST
Самый быстрый способ создать новый YaST модуль - это использовать мощный скрипт y2tool, который кроме всего прочего может генерировать структуру каталогов для нового модуля и заполнить их стандартными файлами проекта по шаблону. Данный инструмент часть пакета yast2-devtools.
Для просмотра всех доступных опций y2tool, надо использовать команду:
/usr/bin/y2tool --help
Вывод команды должен содержать примерно такой список
create-new-package gettextdomains pot-spellcheck y2autoconf create-spec check_icons rny2rnc y2automake devtools-migration checkin-stable showy2log y2compile for-proofread check-textdomain svnall y2makeall generateYCPWrappers check_ycp tagversion y2makepot get-lib kill-leftover-stuff version
Для создание модуля, наиболее подходящей опцией является create-new-package. Чтобы просмотреть все под опции надо ввести команду:
/usr/bin/y2tool create-new-package
Вывод команды должен выглядеть так
Usage: create-new-package [-dsv] <skeleton> <name> <maintainer> <email> -v verbose -d debug -s list of available skeletons skeleton - the one which should be used (config, trans, ...) name - of the component. A package name will be constructed like yast2-skeleton-name maintainer - his name email - maintainer's, of course :-)
Следующая команда создаст новый модуль настроек со следующими параметрами: название - sshd, автор - John The Fish:
/usr/bin/y2tool create-new-package -v config sshd "John The Fish" "john@thesmallfish.net"
Будет создана следующая структура каталогов:
sshd agents - SCR агенты doc - автоматически генерируемая документация package - специальный каталог для создания RPM пакета с файлом .changes src - исходные файлы проекта testsuite - набор автоматических тестов проекта
Скачать только что созданный пакет можно здесь.
Проверка работоспособности модуля
Только что был создан новый модуль YaST для настройки sshd, ниже будет рассмотрена работа модуля.
Установка модуля
Алгоритм установки модуля (в его текущем состоянии) в систему следующий:
- Перейти в каталог с исходным кодом:
cd sshd
- Проверить, установлены ли необходимые пакеты и запустить необходимые скрипты YaSTа чтобы создать make файлы:
make -f Makefile.cvs
- Проверить синтаксис, комментарии к функциям, сгенерировать документацию, скомпилировать модули *.ycp в бинарную форму *.ybc:
make
- Установить все в свои каталоги, для этого нужны права root:
sudo make install
ВАЖНО: При возникновении каких либо проблем выдается предупреждение или сообщение об ошибке. Нужно будет доустановить недостающие пакеты и исправить синтаксические ошибки.
После внесения изменений в исходный код достаточно повторно вызвать команду sudo make install
.
Запуск приложения
Если на предыдущих этапах не было ни каких ошибок, нужно просто ввести команду чтобы открыть новый инструмент YaST для настройки SSHD:
sudo /sbin/yast2 sshd
или просто
/sbin/yast2 sshd
YaST откроет диалог чтения (Read dialog) с полосой прогресса, после того как считается конфигурация произойдет автоматическое переключение на диалог настроек (Configuration), который будет выглядеть подобно этому:
Просмотр логов YaST
ЗАМЕЧАНИЕ: Очень полезно просматривать файлы логов в процессе разработки и тестирования любого модуля YaST или его части. Это можно сделать выполнив следующую команду с правами root в любом терминале: /usr/bin/tail -F /var/log/YaST2/y2log