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, ниже будет рассмотрена работа модуля.

Установка модуля

Алгоритм установки модуля (в его текущем состоянии) в систему следующий:

  1. Перейти в каталог с исходным кодом: cd sshd
  2. Проверить, установлены ли необходимые пакеты и запустить необходимые скрипты YaSTа чтобы создать make файлы: make -f Makefile.cvs
  3. Проверить синтаксис, комментарии к функциям, сгенерировать документацию, скомпилировать модули *.ycp в бинарную форму *.ybc: make
  4. Установить все в свои каталоги, для этого нужны права root: sudo make install

ВАЖНО: При возникновении каких либо проблем выдается предупреждение или сообщение об ошибке. Нужно будет доустановить недостающие пакеты и исправить синтаксические ошибки.

После внесения изменений в исходный код достаточно повторно вызвать команду sudo make install.

Запуск приложения

Если на предыдущих этапах не было ни каких ошибок, нужно просто ввести команду чтобы открыть новый инструмент YaST для настройки SSHD:

sudo /sbin/yast2 sshd

или просто

/sbin/yast2 sshd

YaST откроет диалог чтения (Read dialog) с полосой прогресса, после того как считается конфигурация произойдет автоматическое переключение на диалог настроек (Configuration), который будет выглядеть подобно этому:

T1-first-start.png

Просмотр логов YaST

ЗАМЕЧАНИЕ: Очень полезно просматривать файлы логов в процессе разработки и тестирования любого модуля YaST или его части. Это можно сделать выполнив следующую команду с правами root в любом терминале: /usr/bin/tail -F /var/log/YaST2/y2log

Далее