Russian Qt Forum
Ноябрь 25, 2024, 07:12 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Создание deb/rpm пакета  (Прочитано 11554 раз)
fantom
Гость
« : Сентябрь 25, 2013, 01:38 »

В линухе новичок. Но тем не менее захотелось создать deb/rpm пакеты для некоторых своих программ, что бы и другие люди могли бы их запукскать в linux.
Сбственно deb сгенерировать получилось. Использоват след инструкцию: http://golos.sourceforge.net/?page_id=399
Потом для эксперимента установил сгенерированный пакет себе в систему. Ни в меню, ни на рабочем столе иконки не появилось. Нету пакета и в категории "Избранное" менеджера программ. Программа как бы есть, но фиг ее найдешь))
В общем полный ппц, мучаюсь уже день. В интернете нету толковой инструкции...
Записан
voral
Гость
« Ответ #1 : Сентябрь 25, 2013, 07:16 »

В хаутушке вообще про пакет исходников вроде как.
читайте здесь: http://www.debian.org/doc/manuals/maint-guide/

Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #2 : Октябрь 12, 2013, 21:23 »

Сам делал свои пакеты, в инструкции нашел как устанавливать в меню и ярылык.
Суть в кратце, скинуть свою иконку и ярлык .desktop в определенные директории в скриптах установки.
postintall. Если не забуду, на след. неделе скину сюда пример свой.
Записан
fdfsdfgjfh
Гость
« Ответ #3 : Март 17, 2015, 20:06 »

можно ли получить пример ?

Сам делал свои пакеты, в инструкции нашел как устанавливать в меню и ярылык.
Суть в кратце, скинуть свою иконку и ярлык .desktop в определенные директории в скриптах установки.
postintall. Если не забуду, на след. неделе скину сюда пример свой.
« Последнее редактирование: Март 21, 2015, 12:08 от fdfsdfgjfh » Записан
torwig
Самовар
**
Offline Offline

Сообщений: 134



Просмотр профиля
« Ответ #4 : Март 18, 2015, 09:15 »

Имеем структуру папок для deb-пакета:
SoftwareName/DEBIAN (файлы control, postinstall и т.д.)
SoftwareName/opt (наша папка с бинарником и пр доп файлами)
SoftwareName/usr и в ней папки bin и share.
В первой там файл/скрипт запуска, например, а вот в share две папки: applications и menu.
В applications файлик создаем SoftwareName.desktop с содержимым:
Код:
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=SoftwareName
Comment=Запуск SoftwareName
Exec=/usr/bin/имя к файлу запуска
Icon=/opt/my-software/product_logo_48.png
Terminal=false
GenericName[en_US]=SoftwareName

В папке menu создаем файл SoftwareName.mune с содержимым:
Код:
?package(название бинарника запуска):needs="x11" \
  section="Applications/Network/Web Browsing" \
  hints="Web browsers" \
  title="SoftwareName" \
  icon="/opt/my-software/product_logo_32.xpm" \
  command="/usr/bin/softwarename"

Делал на примере deb-пакета Хрома для Убунты.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #5 : Март 27, 2015, 11:34 »

Вы все делаете неправильно:( Иконка не имеет ровно никакого отношения к пакетированию. Это как попить чаю и сварить суп - и то и то работа с жидкостью (линуксом), вот только общего мало. Иконка должна ставится в нужное место при установке приложения (make install/qbs install). Пакет же должен брать (ну собственно и берет) ВСЁ, что лежит в директории установки и распихивать аналогичным образом в систему. Во-первых, вы решите задачу без ковыряния пакетов. Во-вторых, вы можете собрать и поставить приложение в систему руками (для тех, у кого нет пакетов).
Вот пример для qbs:
Код:
    Group {
        name: ".desktop"
        condition: qbs.targetOS.contains("linux")
        files: "limon.desktop"
        qbs.install: true
        qbs.installDir: "share/applications"
    }
    Group {
        name: ".png"
        condition: qbs.targetOS.contains("linux")
        files: "limon.png"
        qbs.install: true
        qbs.installDir: "share/pixmaps"
    }
Файлы кладутся в ${INSTALL_ROOT}/share/applications и ${INSTALL_ROOT}/share/pixmaps соответственно.
Записан
fdfsdfgjfh
Гость
« Ответ #6 : Февраль 28, 2016, 17:35 »

Не могу создать иконку на раб столе.
что надо прописать в postinstall файле?
использую deb пакет
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #7 : Февраль 29, 2016, 22:44 »

Не могу создать иконку на раб столе.
что надо прописать в postinstall файле?
использую deb пакет

deb пакеты не делают иконки на рабочем столе, только меняют меню программ.
Записан
fdfsdfgjfh
Гость
« Ответ #8 : Март 01, 2016, 21:36 »

какими средствами создать иконку на раб столе у всех пользователей после распаковки deb пакета?
Записан
AlFoX
Гость
« Ответ #9 : Март 02, 2016, 00:25 »

использовать скрипт: debian/postinst 

он должен:
1) определить окружение рабочего стола (или все окружения)
2) определить какой каталог представляет содержимое рабочего стола
3) скопировать файл myProgram.desktop в этот каталог для всех пользователей
4) определить где находится скелетон рабочего стола для всех окружений
5) исправить скелетоны для всех рабочих столов, чтобы при заведение нового пользователя после установки вашуй программы у него тоже появлялась ссылка на вашу прогу на рабочем столе
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.21 секунд. Запросов: 23.