Debian/Ubuntu package build scripts
authorAndrey Paskal <app@xps.(none)>
Mon, 27 Apr 2009 14:00:55 +0000 (18:00 +0400)
committerAndrey Paskal <app@xps.(none)>
Mon, 27 Apr 2009 14:00:55 +0000 (18:00 +0400)
build/ubuntu/README.Debian [new file with mode: 0644]
build/ubuntu/README.build [new file with mode: 0644]
build/ubuntu/changelog [new file with mode: 0644]
build/ubuntu/compat [new file with mode: 0644]
build/ubuntu/control [new file with mode: 0644]
build/ubuntu/copyright [new file with mode: 0644]
build/ubuntu/dirs [new file with mode: 0644]
build/ubuntu/docs [new file with mode: 0644]
build/ubuntu/postinst [new file with mode: 0644]
build/ubuntu/prerm [new file with mode: 0644]
build/ubuntu/rules [new file with mode: 0755]

diff --git a/build/ubuntu/README.Debian b/build/ubuntu/README.Debian
new file mode 100644 (file)
index 0000000..41a93b6
--- /dev/null
@@ -0,0 +1,6 @@
+ananas for Debian
+-----------------------------
+
+<possible notes regarding this package - if none, delete this file>
+
+ -- Andrey Paskal <apaskal@gmail.com>, Wed, 24 Oct 2007 12:13:55 +0400
diff --git a/build/ubuntu/README.build b/build/ubuntu/README.build
new file mode 100644 (file)
index 0000000..30e9659
--- /dev/null
@@ -0,0 +1,90 @@
+Это инструкция по сборке дистрибутива ananas в виде одного deb пакета.
+
+При сборке используется архив ananas-0.9.5.tar.gz
+Сборка в Ubuntu при помощи pbuilder & co.
+Подразумевается, что среда сборки pbuilder настроена и готова для сборки пакетов.
+Если нет - читай документацию "Ubuntu packaging guide" packagingguide.pdf
+и инструкцию в конце этого файла.
+
+1. Создаем новый пустой каталог в произвольном месте, например
+mkdir -p ~/tmp/ananas-build
+
+2. Копируем в него архив исходников, который
+допустим лежит в корне домашней папке
+cp ~/ananas-0.9.5.tar.gz ~/tmp/ananas-build/
+
+3. Переходим в новую папку и распаковываем архив
+cd ~/tmp/ananas-build
+tar zxf ananas-0.9.5.tar.gz
+
+4. Дальше выполняем команды
+cd ananas-0.9.5
+dh_make -e ananasproject@googlegroups.com -f ../ananas-0.9.5.tar.gz
+
+В последней команде email используется для выбора pgp ключа для подписи пакета и dsc файла.
+Так что указываете идентификатор ключа, который есть у вас.
+
+5. Дальше
+debuild -S
+sudo $HOME/bin/pbuilder-gutsy build ../ananas_0.9.5-1.dsc
+
+Результат сборки будет положен в каталог, который у вас указан в параметре BUILDRESULT
+файла конфигурации pbuilder. Пример -- ниже.
+
+
+Да и еще. Для сборки 
+потребуется пакет qsa-x11-free...deb, лежащий в доступном для pbuilder репозитарии,
+так как по состоянию на 2007-12-22 ни один из общеизвестных и общедоступных репозитариев
+Ubuntu не содержит такого пакета. 
+В инструкции ниже показано как настроить свой репозитарий с таким пакетом.
+
+=====
+
+Вспомогательная информация по настройке cреды сборки pbuilde & co.
+1. устанавливаем необходимые пакеты 
+sudo apt-get install build-essential
+sudo apt-get install devscripts
+sudo apt-get install debhelper
+sudo apt-get install dh-make
+sudo apt-get install fakeroot
+sudo apt-get install lintian
+sudo apt-get install linda
+sudo apt-get install pbuilder
+
+2. создаем каталоги, копируем файлы
+mkdir -p ~/pbuilder/result
+mkdir -p ~/bin
+cp /usr/share/doc/pbuilder/examples/pbuilder-distribution.sh ~/bin/pbuilder-gutsy
+cp /etc/pbuilderrc ~/.pbuilderrc
+
+3. подправляем конфиг ~/.pbuilderrc
+BUILDPLACE=$HOME/pbuilder/build/
+BUILDRESULT=$HOME/pbuilder/result/
+MIRRORSITE=http://localhost/cdrom0
+OTHERMIRROR="deb http://localhost/result ./"
+
+4. делаем доступными по http локальные репозитории
+sudo ln -s /media/cdrom0 /var/www/
+sudo ln -s $HOME/pbuilder/result /var/www/
+
+5. складываем в репозитарий result готовый deb пакет qsa, если его еще нет там
+(для сборки qsa OTHERMIRROR нужно отключить и перезапустить pbuilder-gutsy create)
+cp ~/qsa-x11-free_1.1.4-1_i386.deb $HOME/pbuilder/result
+cd $HOME/pbuilder/result 
+dpkg-scanpackages . /dev/null |gzip -9 > Packages.gz
+
+6. проверяем запущен ли apache2
+sudo /etc/init.d/apache2 start
+
+7. проверяем доступность DVD диска
+mount |grep cdrom0
+
+8. создаем среду сборки
+$HOME/bin/pbuilder-gutsy create
+
+
+Если все прошло успешно должен появиться файл ненулевого размера
+$HOME/pbuilder/gutsy-base.tgz
+
+Можно переходить к действиям, описанным в начале этого файла.
+
diff --git a/build/ubuntu/changelog b/build/ubuntu/changelog
new file mode 100644 (file)
index 0000000..339e641
--- /dev/null
@@ -0,0 +1,33 @@
+ananas (0.9.5-1) unstable; urgency=low
+
+  * Initial release of debian package
+  * Новое расширение для прямой работы с SQL сервером. Предназначено для 
+  подготовки аналитических отчетов и документов, требующих сложных запросов к 
+  базе данных. 
+  * Добавлена поддержка MSOffice2003 xml формата в подсистеме отчетов. 
+  * Доработан установщик с учетом добавления поддержки MSO xml. Ананас для 
+  Windows по-умолчанию, которое можно поменять, для формирования отчетов 
+  использует Microsoft Office. 
+  * Доработано расширение service, позволяющее программисту бизнес-схемы 
+  определять какой офисный пакет используется, т.е. задан в файле конфигурации. 
+  * Добавлены шаблоны отчетов MSO XML. 
+  * В Дизайнере появились новые диалоги редактирования свойств документов и 
+  справочников. 
+  * Изменился диалог выбора бизнес-схемы и редактор rc файла, вызываемый из 
+  него. Появилась возможность тестировать соединение с сервером, получать с 
+  сервера список баз данных и пользователей. 
+  * В скрипт установки rpm файлов ananas и ananas-inventory добавлена команда 
+  запуска mysql сервера. Теперь пользователю не нужно заботиться о том, чтобы 
+  mysql был запущен перед установкой Ананаса на linux. 
+  * При деинсталляции Ананаса с Windows аккуратно вычищаются из реестра все 
+  записи, касающиеся Ананаса. 
+  * Доработано Руководство пользователя бизнес-схемы "Оперативный учет". 
+  Добавлен раздел по настройке справочника Контрагентров. Показан пример добавления 
+  нового реквизита в карточку контрагента.
+  * В информационном окне "О программе" Ананаса теперь выводятся данные 
+  о бизнес-схеме и ее авторе. 
+  * Обновлены изображения на заставках, отображаемых при запуске Ананаса и 
+  Дизайнера. 
+
+ -- Ananas Project Package Key (ananasproject) <ananasproject@googlegroups.com>  Wed, 24 Oct 2007 12:13:55 +0400
+
diff --git a/build/ubuntu/compat b/build/ubuntu/compat
new file mode 100644 (file)
index 0000000..7ed6ff8
--- /dev/null
@@ -0,0 +1 @@
+5
diff --git a/build/ubuntu/control b/build/ubuntu/control
new file mode 100644 (file)
index 0000000..682c63d
--- /dev/null
@@ -0,0 +1,13 @@
+Source: ananas
+Section: Office
+Priority: optional
+Maintainer: Ananas Project Package Key (ananasproject) <ananasproject@googlegroups.com>
+Build-Depends: debhelper (>= 5), qt4-dev-tools, libqt4-dev, libmysqlclient-dev, libqsa1-qt4-dev
+Standards-Version: 3.7.2
+
+Package: ananas
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, zip, unzip, libqtgui4, mysql-client (>=4.1), mysql-server (>=4.1), libqsa1-qt4
+Description: Runtime and development environment of Finance Applications
+Description-ru:  Среда разработки и исполнения прикладных решений автоматизации оперативного, бухгалтерского и других видов учета.
+ Учет товаров и рассчетов на компьютере.
diff --git a/build/ubuntu/copyright b/build/ubuntu/copyright
new file mode 100644 (file)
index 0000000..db4ce1c
--- /dev/null
@@ -0,0 +1,302 @@
+This package was debianized by Andrey Paskal <apaskal@gmail.com> on
+Wed, 24 Oct 2007 12:13:55 +0400.
+
+It was downloaded from <http://ananas.lrn.ru>
+
+Upstream Author: Проект Ананас <ananasproject@googlegroups.com>
+
+Copyright: 2007, Проект Ананас
+
+License: 
+
+
+
+                              ОТКРЫТАЯ ЛИЦЕНЗИЯ
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+(C) Перевод. О.В. Кузина, В.М. Юфа, 1993
+(C) Перевод. О.С. Тихонов, 1998
+(С) Адаптация для законодательства России.
+Андрей П. Паскаль, г. Йошкар-Ола, 2000
+
+
+Всем разрешается воспроизводить и распространять дословные копии этого
+лицензионного документа, но изменять его нельзя.
+
+
+
+                                 Предисловие
+
+Данная лицензия предназначена для обеспечения в рамках законодательства
+Российской Федерации тех же условий использования программ для ЭВМ, которые
+обеспечивает лицензия GPL Фонда Свободного программного обеспечения в США.
+
+Лицензии на большую часть программ для ЭВМ составлены так, чтобы лишить вас
+свободы совместно использовать и изменять их. Напротив, Открытая лицензия
+предназначена гарантировать вашу свободу совместно использовать и изменять
+свободные программы для ЭВМ, т.е. удостоверить, что программа для ЭВМ
+является свободной для всех ее пользователей. Эта Открытая лицензия
+аналогична лицензии GPL применяемой к большей части программ для ЭВМ Фонда
+Свободного программного обеспечения Вы тоже можете использовать ее для своих
+программ.
+
+Когда мы говорим о свободных программах для ЭВМ, мы имеем в виду свободу, а
+не цену.
+
+Предполагается, что Открытая лицензия гарантирует: что вы вправе
+распространять свободные программы для ЭВМ (и получать за это
+вознаграждение, если вы того желаете); что вы получаете исходный текст или
+можете получить его, если захотите; что вы можете изменять программу или
+использовать ее части в новых свободных программах; и что вы знаете, что вы
+можете все это делать.
+
+Чтобы защитить ваши права, нам нужно ввести такие ограничения, которые
+запретят кому бы то ни было отказывать вам в этих правах или потребовать от
+вас отказаться от этих прав. Эти ограничения переводятся в некоторые
+обязательства для вас, если вы распространяете программы для ЭВМ или если вы
+модифицируете или адаптируете их.
+
+Например, если вы распространяете такую программу для ЭВМ бесплатно или за
+вознаграждение, вы должны предоставить получателям все права на эту
+программу, которыми вы обладаете. Вы должны гарантировать, что они тоже
+получат или смогут получить исходный текст. И вы должны показать им эти
+условия, чтобы они знали о своих правах.
+
+Мы защищаем ваши права в два этапа: (1) сохраняем авторские права на
+программу для ЭВМ и (2) предлагаем вам эту лицензию, которая дает вам
+законное право воспроизводить, распространять и/или модифицировать
+программу.
+
+Также, чтобы защитить нас и каждого автора, мы хотим удостовериться, что все
+понимают, что гарантий на эти свободные программы нет. Если программа для
+ЭВМ модифицируется и передается кем-то еще, мы хотим, чтобы получатели
+программы знали, что то, что у них есть - это не оригинал, чтобы любые
+проблемы, созданные другими, не отразились на репутации первоначальных
+авторов.
+
+И наконец, каждой свободной программе для ЭВМ постоянно угрожают патенты на
+программы для ЭВМ. Мы хотим избежать опасности, что повторные
+распространители свободной программы для ЭВМ самостоятельно получат патенты,
+делая программу таким образом частной собственностью. Чтобы предотвратить
+это, мы явно заявляем, что любой патент должен быть либо предоставлен всем
+для свободного использования, либо не предоставлен никому.
+
+Ниже следуют точные определения и условия для воспроизведения,
+распространения и модификации.
+
+
+
+                             ОТКРЫТАЯ ЛИЦЕНЗИЯ
+  ОПРЕДЕЛЕНИЯ И УСЛОВИЯ ДЛЯ ВОСПРОИЗВЕДЕНИЯ, РАСПРОСТРАНЕНИЯ И МОДИФИКАЦИИ
+
+  1. Эта Лицензия применима к любой программе или другому произведению,
+     содержащему уведомление, помещенное держателем авторских прав и
+     сообщающее о том, что оно может распространяться при условиях,
+     оговоренных в данной Открытой лицензии. В последующем термин
+     "Программа" относится к любой такой программе для ЭВМ или произведению,
+     а термин "произведение, основанное на Программе" означает Программу или
+     любое произведение, содержащее Программу или ее часть, дословную или
+     модифицированную, и/или переведенную на другой язык. (Здесь и далее
+     перевод включается без ограничений в понятие "модификация".) Каждый
+     обладатель лицензии адресуется как "вы". Виды деятельности, не
+     являющиеся воспроизведением, распространением, выпуском в свет,
+     адаптацией или модификацией не охватываются этой Лицензией; они за
+     пределами ее влияния. Использование Программы по ее функциональному
+     назначению не ограничено, и выходные данные Программы охватываются этой
+     Лицензией, только если их содержание является произведением, основанным
+     на Программе (вне зависимости от того, были ли они получены в процессе
+     использования Программы). Являются ли они таковыми, зависит от того,
+     что именно делает Программа.
+  2. Вы можете воспроизводить и распространять экземпляры исходного текста
+     Программы по его получении в любой материальной форме, при условии что
+     вы соответствующим образом помещаете на видном месте в каждого
+     экземпляра соответствующее уведомление об авторских правах и отказ от
+     гарантий; оставляете нетронутыми все уведомления, относящиеся к данной
+     Лицензии и к отсутствию каких-либо гарантий; и передаете всем другим
+     получателям Программы экземпляр данной Лицензии вместе с Программой. Вы
+     можете назначить плату за физический акт передачи экземпляра и можете
+     по своему усмотрению предоставлять гарантии за вознаграждение.
+  3. Вы можете изменять свой экземпляр или экземпляры Программы или любой ее
+     части, создавая таким образом произведение, основанное на Программе, и
+     воспроизводить и распространять эти модификации или произведение в
+     соответствии с Разделом 2, приведенным выше, при условии, что вы
+     выполните все нижеследующие условия:
+          а) Вы обязаны снабдить модифицированные файлы заметными
+          уведомлениями, содержащими указания на то, что вы изменили файлы,
+          и дату каждого изменения.
+          б) Вы обязаны предоставить всем третьим лицам лицензию на
+          бесплатное использование каждого произведения, которое вы
+          распространяете или публикуете, целиком, и которое полностью или
+          частично содержит Программу или какую-либо ее часть, на условиях,
+          оговоренных в данной Лицензии.
+          в) Если модифицированная программа обычно читает команды в
+          интерактивном режиме работы, вы должны сделать так, чтобы при
+          запуске для работы в таком интерактивном режиме обычным для нее
+          способом она печатала или выводила на экран объявление, содержащее
+          соответствующее уведомление об авторских правах и уведомление о
+          том, что гарантий нет (или, наоборот, сообщающее о том, что вы
+          обеспечиваете гарантии), и что пользователи могут повторно
+          распространять программу при этих условиях, и указывающее
+          пользователю, как просмотреть копию данной Лицензии. (Исключение:
+          если сама Программа работает в интерактивном режиме, но обычно не
+          выводит подобное объявление, то ваше произведение, основанное на
+          Программе, не обязано выводить объявление.)
+     Эти требования применяются к модифицированному произведению в целом.
+     Если известные части этого произведения не были основаны на Программе и
+     могут обоснованно считаться независимыми и самостоятельными
+     произведениями, то эта Лицензия и ее условия не распространяются на эти
+     части, если вы распространяете их как отдельные произведения. Но если
+     вы распространяете эти части как часть целого произведения, основанного
+     на Программе, то вы обязаны делать это в соответствии с условиями
+     данной Лицензии, распространяя права получателей лицензии на все
+     произведение и,таким образом, на каждую часть, вне зависимости от того,
+     кто ее написал. Такимобразом, содержание этого раздела не имеет цели
+     претендовать на ваши права напроизведение, написанное полностью вами,
+     или оспаривать их; цель скорее в том, чтобы развить право управлять
+     распространением производных или коллективных произведений, основанных
+     на Программе. Кроме того, простое нахождение другого произведения, не
+     основанного на этой Программе, совместно с Программой (или с
+     произведением, основанным на этой Программе) на том же материальном
+     носителе для постоянного хранения или распространяемом материальном
+     носителе не распространяет действие этой Лицензии на другое
+     произведение.
+
+  4. Вы можете копировать и распространять Программу (или произведение,
+     основанное на ней) согласно Разделу 3) в объектном коде или в
+     выполнимом виде в соответствии с Разделами 2 и 3, приведенными выше,
+     при условии, что вы также выполните одно из следующих требований:
+          а) Сопроводите ее полным соответствующим машиночитаемым исходным
+          текстом, который     должен распространяться в соответствии с
+          Разделами 2 и 3, приведенными выше, на носителе, обычно
+          используемом для обмена ПО; или,
+          б) Сопроводите ее письменным предложением, действительным, по
+          крайней мере, в течение трех лет, предоставить любому третьему
+          лицу за вознаграждение не большее стоимости физического акта
+          изготовления экземпляра машиночитаемый экземпляр соответствующего
+          исходного текста, подлежащий распространению в соответствии с
+          Разделами 2 и 3, приведенными выше; или
+          в) Сопроводите ее информацией, полученной вами в качестве
+          предложения распространить соответствующий исходный текст. (Эта
+          возможность допустима только для некоммерческого распространения,
+          и только если вы получили программу в объектном коде или в
+          выполнимом виде с предложением в соответствии с Пунктом б) выше.)
+     Исходный текст для произведения означает его вид, предпочтительный для
+     выполнения в нем модификаций. Для исполняемого произведения полный
+     исходный текст означает все исходные тексты для всех модулей, которые
+     он содержит, плюс любые связанные с произведением файлы определения
+     интерфейса, плюс сценарии, используемые для управления компиляцией и
+     установкой исполняемого произведения. Однако, в виде особого исключения
+     распространяемый исходный текст не обязан включать то, что обычно
+     предоставляется с основными компонентами операционной системы, под
+     управлением которой работает исполняемое произведение, за исключением
+     случая, когда сам компонент сопровождает исполняемое произведение. Если
+     распространение исполняемого произведения или объектного кода
+     происходит путем предоставления доступа для получения с обозначенного
+     места, то предоставление доступа для получения исходного текста с того
+     же места считается распространением исходного текста, даже если третьи
+     лица не принуждаются к копированию исходного текста вместе с объектным
+     кодом.
+
+  5. Вы не можете воспроизводить, изменять, повторно лицензировать, или
+     распространять Программу иначе, чем это явно предусмотрено данной
+     Лицензией. Любая попытка воспроизводить, изменять, повторно
+     лицензировать или распространять Программу каким-либо другим способом
+     неправомерна и автоматически прекращает ваши права данные вам этой
+     Лицензией. Однако лицензии лиц, получивших от вас копии или права
+     согласно данной Открытой Лицензии, не прекратят своего действия до тех
+     пор, пока эти лица полностью соблюдают условия.
+  6. Вы не обязаны соглашаться с этой Лицензией, так как вы не подписывали
+     ее. Однако тогда вы не получаете права модифицировать или
+     распространять Программу или основанные на Программе произведения. Эти
+     действия запрещены законом, если вы не принимаете к соблюдению эту
+     Лицензию. А значит, изменяя или распространяя Программу (или
+     произведение, основанное на Программе), вы изъявляете свое согласие с
+     этой Лицензией и всеми ее условиями о воспроизведении, распространении
+     или модификации Программы или произведений, основанных на ней.
+  7. Каждый раз, когда вы повторно распространяете Программу (или любое
+     произведение, основанное на Программе), получатель этого произведения
+     автоматически получает лицензию от первоначального держателя лицензии
+     на воспроизведение, распространение или модификацию Программы,
+     обсуждаемую в этих определениях и условиях. Вы не можете налагать
+     каких-либо дополнительных ограничений на осуществление получателем
+     прав, предоставленных данным документом. Вы не несете ответственности
+     за соблюдение третьими лицами условий этой Лицензии.
+  8. Если в результате судебного разбирательства, или обвинения в нарушении
+     патента или по любой другой причине (не обязательно связанной с
+     патентами), вам навязаны условия, противоречащие данной Лицензии (как
+     по решению суда, так и нет), то это не освобождает вас от соблюдения
+     Лицензии. Если вы не можете заниматься распространением так, чтобы
+     одновременно удовлетворить требованиям и этой Лицензии, и всем другим
+     требованиям, то вы не должны заниматься распространением Программы.
+     Например, если патент не позволяет безвозмездное повторное
+     распространение Программы всем, кто получил копии от вас
+     непосредственно или через посредников, то единственным способом
+     удовлетворить и патенту, и этой Лицензии будет ваш полный отказ от
+     распространения Программы. Если какая-либо часть этого раздела не имеет
+     силы или не может быть применена при любых конкретных обстоятельствах,
+     то подразумевается, что имеет силу остальная часть раздела, и весь
+     Раздел имеет силу при других обстоятельствах. Цель этого раздела - не
+     побудить вас делать заявления о нарушениях прав на патент, или заявлять
+     о других претензиях на право собственности, или оспаривать правильность
+     подобных претензий; единственная цель этого раздела - защита
+     целостности системы распространения свободных программ, которая
+     реализуется использованием общих лицензий. Многие люди благодаря этой
+     системе внесли щедрый вклад в широкий спектр распространяемых программ,
+     полагаясь на согласованное применение этой системы; автору принадлежит
+     право решать хочет ли он или она распространять программы в этой
+     системе или в какой-то другой, и получатель лицензии не может влиять на
+     принятие этого решения. Этот раздел предназначен для того, чтобы
+     тщательно прояснить, что полагается следствием из остальной части
+     данной Лицензии.
+  9. Если распространение и/или использование Программы ограничено в ряде
+     стран либо патентами, либо авторскими правами на интерфейсы,
+     первоначальный обладатель авторских прав, выпускающий Программу с этой
+     Лицензией, может добавить явное ограничение на географическое
+     распространение, исключив такие страны, так что распространение
+     разрешается только в тех странах, которые не были исключены. В этом
+     случае данная Лицензия включает в себя это ограничение, как если бы оно
+     было написано в тексте данной Лицензии.
+ 10. Вы можете по выбору следовать определениям и условиям либо настоящей
+     лицензии либо любой версии GPL лицензии, когда-либо опубликованной
+     Фондом Свободного програмного обеспечения.
+ 11. Если вы хотите встроить части Программы в другие свободные программы с
+     иными условиями распространения, напишите автору с просьбой о
+     разрешении. Для программ, которые охраняется авторскими правами Фонда
+     Свободного ПО, напишите в Фонд Свободного ПО.
+
+
+                                 НИКАКИХ ГАРАНТИЙ
+
+ 12. ПОСКОЛЬКУ ПРОГРАММА ПРЕДОСТАВЛЯЕТСЯ БЕСПЛАТНО, НА ПРОГРАММУ НЕТ
+     ГАРАНТИЙ В ТОЙ МЕРЕ, КАКАЯ ДОПУСТИМА ПРИМЕНИМЫМ ЗАКОНОМ. ЗА ИСКЛЮЧЕНИЕМ
+     ТЕХ СЛУЧАЕВ, КОГДА ПРОТИВНОЕ ЗАЯВЛЕНО В ПИСЬМЕННОЙ ФОРМЕ, ДЕРЖАТЕЛИ
+     АВТОРСКИХ ПРАВ И/ИЛИ ДРУГИЕ СТОРОНЫ ПОСТАВЛЯЮТ ПРОГРАММУ "КАК ОНА ЕСТЬ"
+     БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ,
+     ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ КОММЕРЧЕСКОЙ
+     ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. ВЕСЬ РИСК В ОТНОШЕНИИ
+     КАЧЕСТВА И ПРОИЗВОДИТЕЛЬНОСТИ ПРОГРАММЫ ОСТАЕТСЯ ПРИ ВАС. ЕСЛИ
+     ПРОГРАММА ОКАЖЕТСЯ ДЕФЕКТНОЙ, ВЫ ПРИНИМАЕТЕ НА СЕБЯ СТОИМОСТЬ ВСЕГО
+     НЕОБХОДИМОГО ОБСЛУЖИВАНИЯ, ВОССТАНОВЛЕНИЯ ИЛИ ИСПРАВЛЕНИЯ.
+ 13. НИ В КОЕМ СЛУЧАЕ, ЕСЛИ НЕ ТРЕБУЕТСЯ ПОДХОДЯЩИМ ЗАКОНОМ ИЛИ НЕ УСЛОВЛЕНО
+     В ПИСЬМЕННОЙ ФОРМЕ, НИКАКОЙ ДЕРЖАТЕЛЬ АВТОРСКИХ ПРАВ ИЛИ НИКАКОЕ ДРУГОЕ
+     ЛИЦО, КОТОРОЕ МОЖЕТ ИЗМЕНЯТЬ И/ИЛИ ПОВТОРНО РАСПРОСТРАНЯТЬ ПРОГРАММУ,
+     КАК БЫЛО РАЗРЕШЕНО ВЫШЕ, НЕ ОТВЕТСТВЕННЫ ПЕРЕД ВАМИ ЗА УБЫТКИ, ВКЛЮЧАЯ
+     ЛЮБЫЕ ОБЩИЕ, СПЕЦИАЛЬНЫЕ, СЛУЧАЙНЫЕ ИЛИ ПОСЛЕДОВАВШИЕ УБЫТКИ,
+     ПРОИСТЕКАЮЩИЕ ИЗ ИСПОЛЬЗОВАНИЯ ИЛИ НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ
+     ПРОГРАММЫ (ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОТЕРЕЙ ДАННЫХ, ИЛИ ДАННЫМИ,
+     СТАВШИМИ НЕПРАВИЛЬНЫМИ, ИЛИ ПОТЕРЯМИ, ПОНЕСЕННЫМИ ИЗ-ЗА ВАС ИЛИ ТРЕТЬИХ
+     ЛИЦ, ИЛИ ОТКАЗОМ ПРОГРАММЫ РАБОТАТЬ СОВМЕСТНО С ЛЮБЫМИ ДРУГИМИ
+     ПРОГРАММАМИ), ДАЖЕ ЕСЛИ ТАКОЙ ДЕРЖАТЕЛЬ ИЛИ ДРУГОЕ ЛИЦО БЫЛИ ИЗВЕЩЕНЫ О
+     ВОЗМОЖНОСТИ ТАКИХ УБЫТКОВ.
+
+                         КОНЕЦ ОПРЕДЕЛЕНИЙ И УСЛОВИЙ
+
+
+
+The Debian packaging is (C) 2007, Andrey Paskal <apaskal@gmail.com>.
+
+
+# Please also look if there are files or directories which have a
+# different copyright/license attached and list them here.
+
diff --git a/build/ubuntu/dirs b/build/ubuntu/dirs
new file mode 100644 (file)
index 0000000..ca882bb
--- /dev/null
@@ -0,0 +1,2 @@
+usr/bin
+usr/sbin
diff --git a/build/ubuntu/docs b/build/ubuntu/docs
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/build/ubuntu/postinst b/build/ubuntu/postinst
new file mode 100644 (file)
index 0000000..176a667
--- /dev/null
@@ -0,0 +1,57 @@
+#!/bin/sh
+# postinst script for ananas
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+#
+
+case "$1" in
+    configure)
+
+       #starts mysql server 
+       [ -e /etc/init.d/mysql ] && /etc/init.d/mysql status|grep stopped  > /dev/null && /etc/init.d/mysql start > /dev/null || :
+       #creates databases
+       mysql -u root -e "create database ananas_inventory character set utf8" > /dev/null 2>&1 && mysql -u root \
+       ananas_inventory < /usr/share/ananas/inventory/inventory.sql || :
+       mysql -u root -e "create database ananas_inventory_demo character set utf8" > /dev/null 2>&1 && mysql -u root \
+       ananas_inventory_demo < /usr/share/ananas/inventory/inventory-demo.sql || :
+
+
+       #creates system base for mysql
+       mysqlshow -u root| grep ananas_system > /dev/null || mysqladmin -u root create ananas_system || :
+
+       ln -fs  /usr/lib/ananas/qt3plugins/designer/libananasplugin.so /usr/lib/libananasplugin.so
+       chmod 666 /etc/ananas/* || :
+       chmod 777 /etc/ananas
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
diff --git a/build/ubuntu/prerm b/build/ubuntu/prerm
new file mode 100644 (file)
index 0000000..2f242ad
--- /dev/null
@@ -0,0 +1,57 @@
+#!/bin/sh
+# prerm script for ananas
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    remove)
+       rm -f /usr/share/ananas/translations/*.qm
+       rm -f /usr/share/ananas/templates/*.*
+       rm -f /usr/share/ananas/inventory/templ_*.odt
+       rm -f /usr/share/ananas/inventory/templ_*.ods
+       rm -f /etc/ananas/inventory.*
+       rm -f /etc/ananas/inventory-demo.*
+       rm -f /etc/ananas/inventory_grouprc
+       rm -f /etc/ananas/.*
+       [ -e /usr/share/ananas/inventory ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/inventory
+       [ -e /usr/share/ananas/translations ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/translations
+       [ -e /usr/share/ananas/template ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/templates
+       [ -e /usr/share/ananas ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas
+       [ -e /etc/ananas ] && rmdir --ignore-fail-on-non-empty /etc/ananas
+
+       # extentions
+       rmdir --ignore-fail-on-non-empty /usr/lib/ananas
+
+        ;;
+    upgrade|deconfigure)
+        ;;
+    failed-upgrade)
+        ;;
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
diff --git a/build/ubuntu/rules b/build/ubuntu/rules
new file mode 100755 (executable)
index 0000000..9988abc
--- /dev/null
@@ -0,0 +1,158 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+export QTDIR=/usr/share/qt4
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -O0
+else
+       CFLAGS += -O2
+endif
+
+configure: configure-stamp
+configure-stamp:
+       dh_testdir
+       # Add here commands to configure the package.
+
+       # ananas
+       
+       # Временная заглушка для откладки процесса сборки пакета
+       # Используем архив с ранее откомпилированным Ананасом, что бы ускорить процедуру сборки пакета
+       # Если вы не занимаетесь отладкой сборки пакета, а собираете Ананас, закоментируйте этот блок кода.
+#      mkdir tmp
+#      cd tmp && wget http://localhost/tmp/compiled/ananas-0.9.5.tgz && \
+#      cd ../.. && tar zxf ananas-0.9.5/tmp/ananas-0.9.5.tgz && \
+#      rm -Rf  ananas-0.9.5/tmp
+       
+       touch configure-stamp
+
+
+build: build-stamp
+
+build-stamp: configure-stamp 
+       dh_testdir
+
+       # Add here commands to compile the package.
+
+       # Makes ananas
+       # Закоментированно временно для отладки процесса сборки пакета
+#      rm -f `find src doc -name Makefile`
+#      /usr/share/qt4/bin/qmake src/src.pro -o src/Makefile
+       $(MAKE)
+       $(MAKE) tr
+
+       touch $@
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-stamp configure-stamp
+
+       # Add here commands to clean up after the build process.
+#      -$(MAKE) clean
+
+       dh_clean 
+
+install: build
+       dh_testdir
+       dh_testroot
+       dh_clean -k 
+       dh_installdirs
+
+       # Add here commands to install the package into debian/ananas.
+#      rm -f `find src doc -name Makefile`
+#      qmake src/src.pro -o src/Makefile
+
+       cd src && \
+       $(MAKE) install \
+       INSTALL_ROOT=$(CURDIR)/debian/ananas LIBDIR=/usr/lib \
+       BINDIR=/usr/bin INCLUDEDIR=/usr/include/ananas 
+       #cd ../doc && qmake doc.pro -o Makefile && make install INSTALL_ROOT=$(CURDIR)/debian/ananas \
+       #DOCDIR=$(CURDIR)/debian/ananas/usr/share/doc/ananas
+       mkdir -p $(CURDIR)/debian/ananas/etc/ananas
+       mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/translations
+       mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/templates
+       mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/inventory
+       mkdir -p $(CURDIR)/debian/ananas/usr/share/applications
+       mkdir -p $(CURDIR)/debian/ananas/usr/share/pixmaps
+       mkdir -p $(CURDIR)/debian/ananas/usr/lib/menu
+
+       cp -f ./translations/*.qm $(CURDIR)/debian/ananas/usr/share/ananas/translations
+       cp -f ./src/designer/templates/*.* $(CURDIR)/debian/ananas/usr/share/ananas/templates
+
+
+       # clear debug info
+#      strip $(CURDIR)/debian/$(package)/usr/bin/ananas
+#      strip $(CURDIR)/debian/$(package)/usr/bin/ananas-designer
+#      strip $(CURDIR)/debian/$(package)/usr/lib/libananas.so*
+#      strip $(CURDIR)/debian/$(package)/usr/lib/ananas/qt4plugins/designer/libananasplugin.so
+#      strip $(CURDIR)/debian/$(package)/usr/lib/ananas/qt4plugins/sqldrivers/libqsqlmysqlu.so
+       
+
+       cp -f ./build/menus/kde/ananas.desktop $(CURDIR)/debian/ananas/usr/share/applications/
+       cp -f ./build/menus/kde/ananas-designer.desktop $(CURDIR)/debian/ananas/usr/share/applications/
+       cp -f ./build/icons/*.png $(CURDIR)/debian/ananas/usr/share/pixmaps/
+
+       # inventory
+#      cp -f ./applications/inventory/inventory.cfg $(CURDIR)/debian/ananas/etc/ananas/
+#      cp -f ./applications/inventory/inventory.rc $(CURDIR)/debian/ananas/etc/ananas/
+#      cp -f ./applications/inventory/inventory_grouprc $(CURDIR)/debian/ananas/etc/ananas/
+#      cp -f ./applications/inventory/inventory.sql $(CURDIR)/debian/ananas/usr/share/ananas/inventory/
+#      cp -f ./applications/inventory/inventory-demo.cfg $(CURDIR)/debian/ananas/etc/ananas/
+#      cp -f ./applications/inventory/inventory-demo.rc $(CURDIR)/debian/ananas/etc/ananas/
+#      cp -f ./applications/inventory/inventory-demo.sql $(CURDIR)/debian/ananas/usr/share/ananas/inventory/
+#      cp -f ./applications/inventory/templ_*.odt $(CURDIR)/debian/ananas/usr/share/ananas/inventory/
+#      cp -f ./applications/inventory/templ_*.ods $(CURDIR)/debian/ananas/usr/share/ananas/inventory/
+
+       rm -Rf $(CURDIR)/debian/ananas/usr/include/ananas || :
+       rm -f $(CURDIR)/debian/ananas/usr/share/doc/ananas/*.tex || :
+
+       # QSA
+#      cp /usr/share/qt4/lib/libqsa* $(CURDIR)/debian/ananas/usr/lib/
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+       dh_testdir
+       dh_testroot
+       dh_installchangelogs 
+       dh_installdocs
+       dh_installexamples
+#      dh_install
+#      dh_installmenu
+#      dh_installdebconf       
+#      dh_installlogrotate
+#      dh_installemacsen
+#      dh_installpam
+#      dh_installmime
+#      dh_python
+#      dh_installinit
+#      dh_installcron
+#      dh_installinfo
+       dh_installman
+       dh_link
+       dh_strip
+       dh_compress
+       dh_fixperms
+#      dh_perl
+#      dh_makeshlibs
+       dh_installdeb
+       dh_shlibdeps
+       dh_gencontrol
+       dh_md5sums
+       dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure