Как распространять наше программное обеспечение на Ubuntu и других дистрибутивах

Если вы программист или нет, и вам нужен метод для установки этого приложения или скрипта, вот несколько методов.
Пакет DEB со шрифтами (Только для debian и производных)

Этот метод подходит, когда у нас есть исходный код приложения.

Сначала мы устанавливаем программу, которая творит чудеса "Проверить установку", в терминале выполняем

sudo aptitude установить checkinstall

Для примера воспользуемся библиотекой "ХРОМОЙ", загрузите исходный код из здесь, создаем папку и помещаем файл хромой-3.98.4.tar.gz и из терминала как root мы заходим в эту папку и выполняем эти строки.

tar -xzvf lame-3.98.4.tar.gz cd lame-3.98.4 ./configure make checkinstall cp * .deb ../ cd .. rm -R lame-3.98.4 chmod 777 lame-3.98.4 *. деб

Он генерирует для нас пакет deb, этот метод устанавливает сгенерированный пакет в конце.

Ручной пакет DEB (Только для debian и производных)

Этот метод предназначен для наших предварительно скомпилированных скриптов или приложений.

Структура пакета DEB

| Настройка (общая папка) | | -DEBIAN (папка, в которой находятся файлы конфигурации) | --control (файл конфигурации) | --preinst (файл или скрипт, который запускается перед установкой) | --postinst (файл или скрипт, который запускается после установки) | --prerm ( Файл или сценарий для запуска перед удалением) | --postrm (Файл или сценарий для запуска после удаления) | | -usr (Папка, в которой находятся файлы вашего приложения) | -usr / bin (Папка, в которой находятся двоичные файлы или скрипты) | -usr / share / pixmaps (Папка, в которой находятся значки) | -usr / share / applications (Папка, в которой находятся пусковые установки)

Пример «контрольного» файла

Пакет: TUPACKAGE Версия: VERSION Архитектура: amd64 (i386 или все) Сопровождающий: AUTHOR Раздел: партнер / Интернет Приоритет: необязательно Описание: TEXT

Создание пакета DEB

sudo chmod -R root: установка root / sudo chmod -R 755 setup / sudo dpkg -b setup / package.deb chmod 777 package.deb chown -R setup

С этими данными мы теперь можем сгенерировать пакет deb для нашего приложения, в качестве примера мы собираемся сделать простой сценарий bash

Создаем папку с именем «ubunlog» и в этом другом имени Настраивать
затем внутри последней папки мы создаем две папки с именем "ДЕБИАН" и другой «Уср».

Это контрольный файл

Пакет: ubunlog-web Версия: 0.11.5.13 Архитектура: все Сопровождающий: ИМЯ ТУ Раздел: партнер/веб Приоритет: необязательно Описание: Учебники, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu

Храним внутри папки "ДЕБИАН" что мы создали раньше как «контроль»

Этот код взят из файла postinst

#!/bin/sh chmod 755 /usr/bin/ubunlog-web chmod +x /usr/bin/ubunlog-web chmod 755 /usr/share/pixmaps/ubunlog-web.png chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

Мы сохраняем это в той же папке, что и раньше, как "postinst".

Теперь мы создаем папки для скрипта, средства запуска и значка внутри папки. Настраивать мы создаем папку с именем «Уср»

Как видите, у нас есть две папки: одна "ДЕБИАН" и другой «Уср» которые мы создали несколько секунд назад, в последнем мы создаем папки по одной "Бин" и другой "Компартир"

Это код скрипта

#!/bin/sh Firefox https://ubunlog.com/ &

сохраняем в папке "Бин" с именем «ubunlog-Веб".

Теперь заходим в папку "Компартир" в этом мы создаем папку с именем "Pixmaps" и сохраняем с именем «ubunlog-web.png» мы загрузили это изображение из здесь

Нам нужно только создать пусковую установку, для этого мы создаем последнюю папку в Share по имени "Приложения"

Это код того же

[Запись на рабочем столе] Кодировка=UTF-8 Имя=Ubunlog Комментарий в веб-блоге=Учебные пособия, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu GenericName=Учебные пособия, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu Exec=ubunlog-web Terminal=false Тип=Значок приложения=ubunlog-web Категории=Приложение;Сеть;Интернет; ЗапускWMClass=ubunlog-web StartupNotify=истина

Они хранят это в папке "Приложения" в качестве «ubunlog-web.desktop»

У нас все готово, осталось только сгенерировать пакет deb, он запрашивает пароль root, но ничего не устанавливает.

sudo chmod -R root:root setup/ sudo chmod -R 755 setup/ sudo dpkg -b setup/ ubunlog-web_0.11.5.13_all.deb chmod 777 ubunlog-web_0.11.5.13_all.deb chown -R настройка

Если все верно, пакет у вас уже есть «ubunlog-web_0.11.5.13_all.deb».

Самораспаковывающееся руководство (Проверено только на Ubuntu, работает на любом дистрибутиве)

Этот метод заключается в создании файлов с помощью скрипта makeself (http://megastep.org/makeself/).

Они скачивают из Интернета, это файл .run, они дают ему права, и мы его выполняем,

Как это использовать.

makeself.sh ПАПКА / ИСТОЧНИК / РЕЗУЛЬТАТ.RUN "ТЕКСТ" ./setup.sh

Как вы видете "ПАПКА / ПРОИСХОЖДЕНИЕ / » файлы и папки нашего приложения или скрипта «РЕЗУЛЬТАТ.ПРОБ» итоговый файл или самораспаковывающийся файл
"ТЕКСТ" - это сообщение, которое отображается при запуске самораспаковывающегося файла, и оно заключено в кавычки.
"./Setup.sh" это сценарий, который запускается при распаковке самораспаковывающегося файла, не забудьте предоставить ему разрешения.

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

Создаем папку с именем «ubunlog» и скопируйте созданную папку, переименуйте ее как Сделать себя
В папке «ubunlog» создать другое имя установка и внутри этого поместите следующие файлы.

Сценарий установщика

#!/bin/sh cp ubunlog-web /usr/bin/ chmod 755 /usr/bin/ubunlog-web chmod +x /usr/bin/ubunlog-веб-CP ubunlog-web.png /usr/share/pixmaps/ chmod 755 /usr/share/pixmaps/ubunlog-web.png КП ubunlog-web.desktop /usr/share/applications/ chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

Они сохраняют его как setup.sh

Наш сценарий

#!/bin/sh Firefox https://ubunlog.com/ &

Они сохраняют это как "ubunlog-web» иконка сохраняется с именем «ubunlog-web.png» мы загрузили это изображение из здесь

Кувшин

[Запись на рабочем столе] Кодировка=UTF-8 Имя=Ubunlog Комментарий в веб-блоге=Учебные пособия, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu GenericName=Учебные пособия, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu Exec=ubunlog-web Terminal=false Тип=Значок приложения=ubunlog-web Категории=Приложение;Сеть;Интернет; ЗапускWMClass=ubunlog-web StartupNotify=истина

Они сохраняют это как «ubunlog-web.desktop»

Теперь мы генерируем самораспаковывающийся файл

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh setup ubunlog-web.run "Ubunlog - Учебники, рабочие столы Linux, программное обеспечение, новости и все об Ubuntu"./setup.sh

Самораспаковывающийся файл у нас уже есть.

Надеюсь, это тебе в чем-то поможет

Спасибо за ваши комментарии, если есть ОШИБКА, это продукт вашего воображения, хахаха


6 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Дэвид Гомес сказал

    Отличный мануал, поздравляю ...

  2.   Давайте использовать Linux сказал

    Отличная статья Лучано!
    Я вас очень поздравляю.
    Объятья! Павел.

  3.   мати1206 сказал

    Поздравляю! Эта статья - одна из лучших, которые я видел, чтобы научиться упаковывать двоичные файлы .deb для Debian и производных, таких как Ubuntu.

    В случае ArchLinux мы используем PKGBUILD в лучшем стиле BSD: https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    Обнять!

    1.    Лучано Лагасса сказал

      Здравствуйте, спасибо за ваш комментарий, если вы думаете, что мы можем добавить в пост, как создавать пакеты для Arch, я поясняю, что использую только ubuntu и немного centos, я комментирую, что это очень хорошо, я пробовал однажды, но у меня не было время, чтобы установить его, для чего было бы очень хорошо, так как, если я могу, кто угодно может.

  4.   Лучано Лагасса сказал

    Здравствуйте, спасибо за ваши комментарии, как я уже упоминал в других случаях, мои сообщения основаны на моем опыте, я надеюсь, что они будут вам полезны.

  5.   Джош сказал

    Привет, Лучано.

    Я начал следовать инструкциям, но мне не удалось пройти проверку. Он возвращает следующую ошибку:

    "Makefile: 349: рецепт целевой" рекурсивной установки "не выполнен
    make: *** [install-recursive] Ошибка 1

    **** Не удалось выполнить установку. Прерывание создания пакета ".

    Перед этим команда "make" показывает в выводе следующее:

    «Сделайте [3]: Ничего не нужно делать для« всех »».

    Я не понимаю, что не так. Я попытался загрузить самую последнюю версию LAME, чтобы посмотреть, решит ли она мою проблему, но ничего не поделать.

    Привет.