EnglishУкраїнськаmRussian
Login/New
Topic with many replies

Создал PKGBUILD для сборки в ArchLinux


Author Message
Written on: 18. 11. 2009 [09:53]
kuzulis
Денис Шиенков
Topic creator
registered since: 10.07.2009
Posts: 128

Да, он для Alt. Могу выслать спек для Fedora и вы посмотрите как мне пришлось его перепахать и init скрипт, что-бы он отвечал всем требованиям дистрибутива. Только после, главный майнтейнер RedHat, пустил OpenSCADA в официальные репозитарии.

Да, если не трудно - то сюда можете прикрепить в тему?

Вопрос: Вы составляли спек так, чтобы установка проходила локально или глобально?

Вопрос: я могу взглянуть в принципе в нутро rpm пакета (например распаковав и т.п) и сразу понять что и куда устанавливается? (не помню уже, т.к. давно использовал)

[This article was edited 1 times, at last 18.11.2009 at 09:55.]
Written on: 18. 11. 2009 [10:00]
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
almaz wrote:

Потому что Вы занимаетесь не разработкой, а применением. Хорошо, больше в этой теме флеймить не буду.

Это нам обоим ?
Written on: 18. 11. 2009 [10:13]
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
kuzulis wrote:


Да, он для Alt. Могу выслать спек для Fedora и вы посмотрите как мне пришлось его перепахать и init скрипт, что-бы он отвечал всем требованиям дистрибутива. Только после, главный майнтейнер RedHat, пустил OpenSCADA в официальные репозитарии.

Да, если не трудно - то сюда можете прикрепить в тему?


Вопрос: Вы составляли спек так, чтобы установка проходила локально или глобально?

Вы что не читаете или делаете это через строчку ? Яж писал, пакеты для установки из под рут, а значит это глобальный инсталинг.

Вопрос: я могу взглянуть в принципе в нутро rpm пакета (например распаковав и т.п) и сразу понять что и куда устанавливается? (не помню уже, т.к. давно использовал)

http://aleksey2005.fedorapeople.org/ - вот сюда, специально для Вас, выложил последнюю сборку
ftp://ftp.oscada.org/OpenSCADA/0.6.4/Fedora11/x86_64/ - вот тут вся сборка

[This article was edited 1 times, at last 18.11.2009 at 10:16.]
Written on: 18. 11. 2009 [10:35]
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
to Aleksey: kuzulis only. Вы в разделе "Разработка" тем не создавали. Хотя разработка скриптов для дистрибутивов - уже разработка.
Если все нормально получится для Arch - буду только рад.

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 18. 11. 2009 [10:37]
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
almaz wrote:

to Aleksey: kuzulis only. Вы в разделе "Разработка" тем не создавали. Хотя разработка скриптов для дистрибутивов - уже разработка.
Если все нормально получится для Arch - буду только рад.

Да мы не обсуждаем саму разработку, обсуждаем только то чего необходимо для сборки и тестирования пакета на Arch
Written on: 18. 11. 2009 [10:39]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
kuzulis wrote:

Хм. Чтобы самому разобраться - нужно в тонкостях знать работу самой Скады, т.е. что куда/откуда она подгружает и т.п.
А для сборки пакета для Арча необходимо всего-лишь знать куда что должно установиться и скопироваться.

Два важных тезиса:
- Тот кто собирает пакеты есть мантейнер, а не просто пользователь.
- Мантейнер должен досконально знать правила и особенности дистрибутива, а также пакеты, которые он собирает.

kuzulis wrote:


Да. Тут именно так. Любые пакеты ставяться от рута. И идиология сборки такова, что поставленное будет пускаться от рута.

Понятно.
А как быть к примеру, если нужно ограничить права? т.е. оператор не будет же из своего аккаунта писать: sudo или su каждый раз?
Т.е. основной упор делается на демоны?

Вовсе нет. Изначально предусмотрено три способа запуска:
- Режим демона из init скрипта или прямым вызовом команды openscada из под root с конфигом в /etc/oscada.xml. Характерен для SCADA-сервера и PLC.
- Пользовательский режим путём запуска скрипта openscada_start c конфигом и данными в домашней директории пользователя ~/.openscada. Характерен для рабочих мест оператора и для разработки. В скрипте запуска предусмотрена организация директории ~/.openscada и исключение повторного запуска.
- Демо режим путём запуска скрипта openscada_demo, конфигом в /etc/oscada_demo.xml и базой только на чтение. В скрипте запуска предусмотрено исключение повторного запуска.

При особых требованиях можно легко создать нужный режим запуска предусмотрев отдельный скрипт.

Learn, learn and learn better than work, work and work.
Written on: 18. 11. 2009 [10:42]
kuzulis
Денис Шиенков
Topic creator
registered since: 10.07.2009
Posts: 128
2 Алексей,
я посмотрел сейчас ваш спек и там в нем есть следующие строчки:

install -m 755 -d %{buildroot}%{_includedir}/openscada/
install -m 644 *.h %{buildroot}%{_includedir}/openscada
install -m 644 src/*.h %{buildroot}%{_includedir}/openscada
install -m 644 -pD data/oscada.xml %{buildroot}%{_sysconfdir}/oscada.xml
install -m 644 -pD data/oscada_start.xml %{buildroot}%{_sysconfdir}/oscada_start.xml
install -m 755 -pD data/openscada_start %{buildroot}%{_bindir}/openscada_start
install -m 755 -pD data/oscada.init %{buildroot}%{_initrddir}/openscadad
install -m 755 -d %{buildroot}/var/spool/openscada/{DATA,icons}
install -m 644 data/icons/* %{buildroot}/var/spool/openscada/icons
install -m 755 -d %{buildroot}/var/spool/openscada/ARCHIVES/{MESS,VAL}
install -m 644 -pD demo/oscada_demo.xml %{buildroot}%{_sysconfdir}/oscada_demo.xml
install -m 755 -pD demo/openscada_demo %{buildroot}%{_bindir}/openscada_demo
%if 0%{?with_qtstarter}
install -m 644 -pD demo/openscada_demo.png %{buildroot}%_iconsdir/openscada_demo.png
install -m 644 -pD data/openscada.png %{buildroot}%_iconsdir/openscada.png
%endif
install -m 755 -d %{buildroot}/var/spool/openscada/DEMO
install -m 644 demo/*.db %{buildroot}/var/spool/openscada/DEMO


обратите внимание на строку:
install -m 755 -d %{buildroot}/var/spool/openscada/{DATA,icons}

Вот это ТО о чем я Вам и говорил. У Вас это тоже есть.. Вот ЭТО мне и нужно было узнать..

ЗЫ: а то, ей богу, развели тут флуд.. Клещами из вас нужно что-ля все тянуть? icon_smile.gif
Written on: 18. 11. 2009 [10:57]
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
kuzulis wrote:

2 Алексей,
я посмотрел сейчас ваш спек и там в нем есть следующие строчки:

install -m 755 -d %{buildroot}%{_includedir}/openscada/
install -m 644 *.h %{buildroot}%{_includedir}/openscada
install -m 644 src/*.h %{buildroot}%{_includedir}/openscada
install -m 644 -pD data/oscada.xml %{buildroot}%{_sysconfdir}/oscada.xml
install -m 644 -pD data/oscada_start.xml %{buildroot}%{_sysconfdir}/oscada_start.xml
install -m 755 -pD data/openscada_start %{buildroot}%{_bindir}/openscada_start
install -m 755 -pD data/oscada.init %{buildroot}%{_initrddir}/openscadad
install -m 755 -d %{buildroot}/var/spool/openscada/{DATA,icons}
install -m 644 data/icons/* %{buildroot}/var/spool/openscada/icons
install -m 755 -d %{buildroot}/var/spool/openscada/ARCHIVES/{MESS,VAL}
install -m 644 -pD demo/oscada_demo.xml %{buildroot}%{_sysconfdir}/oscada_demo.xml
install -m 755 -pD demo/openscada_demo %{buildroot}%{_bindir}/openscada_demo
%if 0%{?with_qtstarter}
install -m 644 -pD demo/openscada_demo.png %{buildroot}%_iconsdir/openscada_demo.png
install -m 644 -pD data/openscada.png %{buildroot}%_iconsdir/openscada.png
%endif
install -m 755 -d %{buildroot}/var/spool/openscada/DEMO
install -m 644 demo/*.db %{buildroot}/var/spool/openscada/DEMO


обратите внимание на строку:
install -m 755 -d %{buildroot}/var/spool/openscada/{DATA,icons}

Вот это ТО о чем я Вам и говорил. У Вас это тоже есть.. Вот ЭТО мне и нужно было узнать..



Ну так Вы ж ясней изьясняйтесь.


ЗЫ: а то, ей богу, развели тут флуд.. Клещами из вас нужно что-ля все тянуть? icon_smile.gif

Из меня клещами icon_biggrin.gif
Вы вот попробуйте пообщаться с Романом, и я Вам покажусь божьим одуванчиком.
Мне вот, на всем пути общения с ним, хлеборезкой не раз приходилось в г.... нырять.


[This article was edited 1 times, at last 18.11.2009 at 11:16.]
Written on: 24. 11. 2009 [21:24]
kuzulis
Денис Шиенков
Topic creator
registered since: 10.07.2009
Posts: 128
В общем вроде создал финальную версию билда для сборки опен скады для арча.

Инструкции для сборки (для тех кто не в курсе):

Подготовка:
1. Проверить соединение с интернетом, т.к. сборка будет происходить путем вытягивания последней версии скады из SVN

Сборка:
1. Создаем директорию /var/abs/local/oscada
2. Копируем в нее файлы: PKGBUILD и oscadad
3. Переходим в директорию/var/abs/local/oscada
4. Делаем: $ makepkg
Всё, ждем пока соберется пакет. Пакет должен собраться в этой же директории,
т.е. должно получится что-то вроде: openscada-svn-1028-1-x86_64.pkg.tar.gz (у меня так)
Если в процессе сборки произошли ошибки - то разбираться изза чего они возникли!!!

Внимание - создание директории и сборка пакета должна производится от обычного пользователя.!!!

Установка:
1. Получаем каким либо способом права суперпользователя (root)
2. Делаем: $ pacman -U /var/abs/local/oscada/<наш пакет>.pkg.tar.gz

Всё, пакет установлен... Можно приступать к работе! icon_smile.gif

ЗЫ:
1. Если тестирование пройдет гладко - я постараюсь выложить пакет в AUR и т.п.
2. Все отзывы, пожелания и замечания просьба - постить в эту тему !


[This article was edited 3 times, at last 24.11.2009 at 21:26.]
Attachment

PKGBUILD (File type: application/octet-stream, Size: 2.54 kilobytes) — 1101 downloads
oscadad (File type: application/octet-stream, Size: 898 bytes) — 1075 downloads
Written on: 25. 11. 2009 [09:57]
Aleksey
Aleksey Popkov
Contributor
registered since: 31.07.2008
Posts: 326
А зачем с рабочего среза билдить ?
Это ж не релиз и даже не минор.



5479