Преносими програми в Linux, Losst

В операционната система Windows ние използваме преносими програми доста често. Това са програми, които не изискват инсталация, съхраняват конфигурационни файлове с тях и работят независимо от компонентите, инсталирани в системата. Техните възможности могат да бъдат много полезни при създаване на флаш устройства за възстановяване, тестване на нов софтуер или просто инсталиране на нови програми, които все още не са в хранилищата.

Linux също има нещо подобно. Най-общо казано, всяка програма може да се използва като преносима, просто създайте програмата от изходния код, изтеглете изпълнимия файл от интернет или го пуснете от приятел и можете да го стартирате от всяка папка.

Но в този случай остава един проблем - преносимостта. Програмата зависи от голям брой библиотеки от определени версии и за да работи, е необходимо всички тези библиотеки да са налични в системата. Но в различни дистрибуции дори едни и същи библиотеки могат да бъдат именувани по различен начин. Ето защо, за да се внедрят преносими програми в Linux, бяха измислени специални решения.

Днес ще разгледаме едно от тези решения. Това е AppImage, проект, базиран на елементарни и преносими Linux приложения. Една програма се състои от един файл с изображение, който съдържа всички библиотеки, конфигурации и самата програма, необходими за нейната работа. Вярно, имаше един минус - конфигурацията все още се запазва в домашната папка на потребителя.

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

Преносими програми в Linux

програми

Сайтът има търсене, така че можете да опитате да намерите правилната програма:

losst

За да изтеглите програмата, трябва да отидете в раздела Файлове, след това да изберете подходящата версия и просто да кликнете върху нея.

linux

След като изтеглянето приключи, остава да направите файла изпълним чрез следната команда:

И можете да започнете изпълнението:

Както можете да видите, програмата работи напълно и сега можете да я запишете на USB флаш устройство и да я изпробвате в друга дистрибуция.

losst

Създаване на преносими програми в Linux

Всъщност няма толкова много от тези преносими програми в хранилището и има само най-популярните, но какво ще стане, ако програмата, от която се нуждаете, не е там? Просто е, можете сами да създадете преносима Linux програма, използвайки appimage, много е лесно. Има дори GUI инструменти за това.

В тази статия ще създадем изображение на AppImage за новия и много обещаващ браузър Vivaldi. Имаме нужда от два инструмента от AppImageKit - AppImageAssistant и AppDirAssisant. Първият е за опаковане на изображението, а вторият е за събиране на информация и файлове, които ще бъдат опаковани. Накратко, програмата ще сканира системата, преди да инсталира програмата, след което можете да инсталирате желаната програма и нейните зависимости по всякакъв начин, независимо дали е мениджър на пакети, ръчна инсталация или изграждане от източника. След това програмата намира всички модифицирани файлове, поставя ги в специална директория и ще бъде създадено изображение въз основа на тази директория.AppImage. Е, сега всичко е наред.

Първо изтеглете необходимия софтуер:

Но има едно предупреждение. Програмите са компилирани за 32-битова архитектура, така че библиотеките libfuse.so-2 и libglade-2.0.so.0 може да не са достатъчни за нормална работа на 64-битова система.В Ubuntu те са много лесни за инсталиране с помощта на пакетния мениджър, а за други дистрибуции можете да ги намерите в Интернет и просто да ги поставите в папката /usr/lib. Във всички останали отношения това са същите преносими програми, така че можете да работите с тях на всяка Linux дистрибуция.

Нека да преминем директно към създаването на преносима Linux програма, отворете AppDirAssistant, за това в терминала отидете в папката с програмата и стартирайте:

cd /Folder/With/Program/ $ ./AppDirAssistant\ 0.3.1

В прозореца, който се показва, натиснетеНапред:

преносими

След това отновоНапред :

losst

Сега програмата извършва сканиране на системата, за да забележи промени по време на инсталирането на програмата:

linux

преносими

Веднага след като сканирането приключи, можете да продължите да инсталирате програмата по всеки удобен начин. Ще инсталираме Vivaldi от пакета, изтеглен от официалния уебсайт на RPM с командата:

sudo zypper инсталиране

Но не забравяйте, че няма значение как инсталирате програмата.

След като инсталацията приключи, върнете се в прозореца на програмата AppDirAssistant и натиснете отновоНапред.

Системата ще бъде сканирана отново, за да се идентифицират промените:

програми

преносими

Оставете стойността както е и натиснетеНапред. Програмата автоматично ще събере програмната папка на Vivaldi, сама ще определи нейното име и ще подготви всички файлове:

преносими

Когато приключите, ще се покаже съобщение,че всичко е готово:

преносими

Папките на приложението се записват в папката Desktop по подразбиране, на този етап можете да добавите допълнителни библиотеки към програмата, като просто ги копирате в подпапката application_folder.AppDir/usr/lib/

Можете да разберете кои библиотеки използва програмата с командата ldd, например за нашия Vivaldi:

ldd /opt/vivaldi/vivaldi-bin sed 's/=>.*//'sed 's/\t//'sed 's/\ (0x.*//'

Разбира се, командата не е приложима за скриптове, трябва да намерите точно изпълнимия файл.

Сега, когато всичко е готово, можете да продължите към изграждането на образа на преносимата програма AppImage. За да направите това, стартирайте помощната програма AppImageAssistant:

В първия прозорец на съветника просто натиснетеНапред :

преносими

След това изберете папката с новосъздадения AppDir на приложението:

linux

След това веднага ще започне опаковането на изображението:

linux

След това можете да вземете готовата програма в папката

/Desctop, копирайте го някъде и можете да стартирате:

преносими

Както виждате всичко работи. Можете да изтеглите програмата на USB флаш устройство и да я използвате във всяка система.

linux