Създавайте инсталатори на приложения в различни дистрибуции на Linux

Когато създаваме приложение, винаги трябва да имаме a дистрибутор и метод на инсталиране За потребителя е лесно и трябва да имаме предвид, че ако нашето приложение е предназначено за множество платформи и потребителите обичат да инсталират и използват програми по рождение, така че ще видим как да го направим инсталатор на различни платформи.
Нека да видим като пример проста програма, направена на Java. Можем да направим Jframe, Desktoppane, етикет и бутон просто приложение. След това го компилираме, за да създадем пакета с буркан. Ще видим сега как да разпространяваме нашето приложение.

Linux Ubuntu / Debian / Mint и производни - DEB пакети


За разпространение на приложение в a Linux дистрибуция базиран на Debian по -добре е да го опаковате като a .deb, това е debian пакет.
Важно е да се спомене, че тази опаковка няма да инсталира външни ресурси, като сървър на база данни като MySQL, ако използвате база данни, най -добре е тя да бъде вградена като SQLITE или че вече е подготвен за свързване със сървър, където се намира базата данни.
Нека да видим структурата на инсталационния проект, който ще използваме, в Linux изпълнимите sh обикновено се инсталират в / usr / bin папката, въпреки че е по избор, след това самото приложение и неговите библиотеки обикновено се инсталират в / usr / lib папка и иконата за интегриране на менюто в / usr / share / installation-folder, както е показано по-долу:
/usr/bin/tutoriales.sh [Sh или стартирайте изпълним скрипт]
/usr/lib/tutoriales/tutoriales.jar [java runtime jar]
/usr/lib/tutoriales/librerias_tutoriales.jar [различни библиотеки]
/usr/share/doc/tutoriales/icono.gif.webp [икона на Java приложение]
Отваряме File Explorer и създаваме папка с учебни приложения, важно е тя да бъде лесно достъпна по -късно от терминала, за да създадем инсталационната структура. Създаваме следната структура на папките:

След това в папката ДЕБИАН, създаваме текстов файл без никакво разширение, което ще наречем контрол. Този файл ще съдържа спецификациите и описанията за Linux, за да покаже информацията на потребителя на нашето приложение:
Нека да разгледаме примера за конфигурация, да създадем файла и да напишем следното съдържание:
Пакет: Уроци
Версия: 2.0
Раздел: Документация
Приоритет: по избор
Архитектура: всички
Поддържащ: innovesoft
Инсталиран размер: 171
Описание: Това е описанието на опаковката.
Ако имате нужда от повече редове, за да напишете описанието, трябва да се уверите, че всеки ред започва с интервал, както се вижда тук, така че да не се тълкува като поле.
.
Празните линии са представени с точка.
Запазваме контролния файл.
Някои полета са важни и изискват вече стандартизирани параметри:
Раздел: Това поле определя област на приложение, в която пакетът е класифициран. _Списъкът на раздели, стандартизирани от Debian, може да се види тук https://packages.debian.org/jessie/
В този случай уроците могат да отидат в раздела Документация или Образование.
Приоритет: Това поле представя колко важно е потребителят да инсталира този софтуер, параметрите, които приема, са задължителни, важни, стандартни, незадължителни и допълнителни.
В този случай го определяме като по избор.
Архитектура: Това е архитектурата, необходима за стартиране на приложението 32 -битово, 64 -битово или и двете, параметрите са; всичко, i386 amd64.
След това в папката уроци / usr / lib / уроци / Копираме всички окончателни компилирани файлове на нашето приложение, в случай на java приложението трябва да копираме буркана.
След това ще създадем файл в папката уроци / usr / bin генерираме текстов файл, наречен tutorials.sh със следния bash скрипт, който сочи към изпълнимия файл
 #! /bin /bash java -jar /usr/lib/tutoriales/tutoriales.jar 
Записваме като tutorials.sh Този bash скрипт е изпълним в Linux, който от своя страна ще изпълни jar файла в посочената папка. Трябва да помним да му предоставим разрешения за изпълнение чрез терминала с командата:
 chmod + x tutorials.sh
След това ще присвоим икона на нашето приложение, в папката уроци / usr / share / hello-world хвърляме иконата, която ще използваме за приложението.

Сега трябва да създадем файла със спецификациите, така че когато е инсталиран, стартер или директен достъп автоматично да се добави към главното меню на нашия Linux дистрибуция.
Вътре в папката уроци / usr / share / applications Създаваме текстов файл, наречен уроци със следното съдържание:
[Запис на работния плот]
Кодиране = UTF-8
Име = Уроци
Коментар = Инструкции за самостоятелно изучаване
Exec = / usr / bin / уроци
Икона = / usr / share / tutorials.png.webp
Терминал = невярно
Тип = Приложение
Категории = Образование; Документация; Други
StartupNotify = вярно
Запазваме файла с уроци без разширение, след запазването го преименуваме на tutorials.desktop.
Полетата за генериране на запис в менюто са:
Име: е името на приложението, което ще се показва в менюто.
Коментар: Коментар, който ще се появи заедно с името на приложението.
Exec: Пътят на изпълнимия файл.
Икона: Пътят на файла на иконата.
Терминал: посочва дали визуално или да преминава през терминала.
Категории: определя коя категория меню ще съдържа приложението, в този случай прилагаме три възможни категории, образование, документация и други. Той ще приеме този, който е на разположение.
Стандартизираните категории са http: //standards.fre… tegory-registry.
Сега имаме всички елементи и необходимата структура изградете пакета DEB. Отваряме терминален прозорец и отиваме там, където имаме основната папка с всички файлове, които създаваме, в този случай нашата домашна папка, и пишем следната команда, за да създадем DEB пакета.
 dpkg -изграждане на уроци

Можем да видим резултата както в терминала, така и във File Explorer, сега deb файлът е независим инсталатор, който можем да добавим в хранилищата или да споделим с други хора.

Инсталирайте и деинсталирайте DEB пакети с помощта на командата dpkg


The Команда dpkg е този, който се използва за обработка на .deb пакети, от терминала с dpkg можем да инсталираме, премахваме и получаваме информация за .deb пакет.
Те обикновено се използват заедно с инструмента и команда apt-get. Ако зависимост или изискване за приложение не е намерено или има проблем, dpkg няма да позволи на софтуера да се инсталира и ще си помогне с apt-get, за да ни покаже списък с зависимости, които трябва да бъдат предварително инсталирани, за да инсталирате софтуера, в в нашия случай имаме нужда от Java Runtime. Чрез dpkg инсталираме .deb пакета, но е важно да се има предвид, че dpkg няма да изтегли нищо.
За да инсталираме пакети с dpkg използваме опцията -i, например:
 dpkg -i tutorials.deb
Използваме за деинсталиране
 dpkg -r tutorials.deb
Също с команда apt-get
 apt-get премахнете уроците
Друга опция за инсталиране е чрез инструмента GDebi, избираме deb файла с десен бутон и избираме опцията Open with Installer. GDebi пакети.

Gdebi ни позволява да инсталираме deb пакети, които сме изтеглили и ще търси, разрешава и инсталира техните зависимости, стига да са в хранилищата. Този инструмент работи по същия начин като apt-get …

След това кликваме върху инсталационния пакет и инсталационният процес ще започне и дори ще можем да видим подробно стъпките и действията, които прави инсталаторът.

Ако не бъде открит проблем в края на инсталацията, можем да видим нашето приложение в менюто, което имаме, в този случай използваме Linux Mint с Mate, то трябва да работи на повечето настолни компютри XFCE, Gnome, Cinnamon и т.н.

До този момент създадохме deb пакет за разпространение на нашите приложения в Linux с Debian и производни. Но тези файлове не работят за дистрибуции като Fedora / Centos, тъй като използват инсталационни файлове rpm.

Конвертиране на DEB файл в RPM


Можем да преобразуваме DEB файлове в RPM пакет с командата Alien. Инсталираме инструмента от терминала
 sudo apt-get install alien
След това пишем командата за преобразуване:
 alien -r -c tutorials.deb
че файлът ще ни генерира
 Уроци-2.0-2.noarch.rpm
След като rpm файлът беше генериран, ние ги копирахме в Red Hat, Fedora или CentOS.
За да го инсталираме, ще използваме следната команда:
 rpm -ivh Уроци-2.0-2.noarch.rpm
Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка
wave wave wave wave wave