Zadanie tego pytania sprawiło, że pomyślałem - czy są dostępne przenośne aplikacje dla Linuksa? Wiem, że wiele prostych narzędzi można uruchomić w sposób autonomiczny, ale czy napotkam ograniczenia bezpieczeństwa w przypadku popularnych dystrybucji systemu Linux?
Biorąc pod uwagę dostępność narzędzi itp. W większości domyślnych systemów Linux, czy w ogóle istnieje taka potrzeba?
EDYCJA: Aby to wyjaśnić, szukam aplikacji, które mogę uruchomić na istniejącym systemie Linux - nie chcę nosić całego systemu operacyjnego, jeśli nie muszę.
./configure
Sztuczka zadziała w przypadku niektórych zastosowań. Jednak wiele aplikacji koduje w sobie prefiks, a następnie używa go w czasie wykonywania do znajdowania plików pomocniczych. Potrzebują także możliwości ładowania plików bibliotek współdzielonych (chociażLD_LIBRARY_PATH
można w tym celu ustawić zmienną środowiskową). Wynika to jednak z tego, że aplikacje przenośne prawdopodobnie nie będą bardzo przenośne - będą zależały od tego, czy mają określony prefiks. Prawdopodobnie będzie to działało w wielu miejscach (większość współczesnych dystrybucji instaluje nośniki w/media/DISKNAME
), ale nie uniemożliwia aplikacji naprawdę przenośnej i niezależnej od lokalizacji.Dlatego odpowiedź netto jest taka, że tworzenie przenośnych aplikacji Linux, choć nie niemożliwe, jest pełne subtelności. Podejrzewam, że jest to główny czynnik przyczyniający się do tego, że nie robi się tak blisko, jak w systemie Windows. Ponadto w publicznych urządzeniach komputerowych (w których powstaje większość korzyści związanych z aplikacjami przenośnymi) zwykle nie działa Linux. Godnym uwagi wyjątkiem są laboratoria uniwersyteckie, ale zwykle można tam zainstalować dodatkowe oprogramowanie w katalogu domowym.
źródło
Linux for Travellers śledzi ten temat i ma kilka sztuczek, aby obejść fakt, że nie ma (jeszcze?) Instalacji aplikacji przenośnych przeznaczonych dla Linuksa - prawdopodobnie z podanego przez ciebie powodu: jeśli masz uprawnienia instalacyjne, już dodawanie nowych aplikacji jest wystarczająco łatwe nie trzeba używać przenośnych.
źródło
HackToLive.org (opiekun wersji Ubuntu dla Super OS) utrzymuje niektóre przenośne aplikacje dla Linuksa:
http://hacktolive.org/wiki/Portable_Applications_(Linux)
źródło
Możesz sprawdzić Portable Linux Apps . Wystarczy pobrać przenośne pliki binarne i uczynić je wykonywalnymi. wszystkie potrzebne zależności są zawarte w pliku binarnym.
źródło
Aby dowolna aplikacja była przenośna, możesz być w stanie tworzyć dowiązania symboliczne, które umieszczasz w folderze domowym podczas logowania; aplikacja zapisze preferencje za pomocą dowiązania symbolicznego do dowolnego miejsca, na którym prowadzi, powiedzmy, że pamięć flash. Użyłem tego do przenośnych zapisów gry Minecraft.
źródło
Problem z uruchamianiem aplikacji w istniejących systemach Linux polega na tym, że często aplikacje są kompilowane w celu korzystania z bibliotek współdzielonych. Istnieje wiele dystrybucji Linuksa i wiele wersji bibliotek podstawowych. Jeśli masz szczęście, istniejący system Linux będzie miał te same wersje, a Twoja aplikacja zostanie połączona z poprawną wersją bibliotek. Jeśli nie, to nie zadziała. Obejściem tego problemu byłoby skompilowanie potrzebnych aplikacji ze statycznie połączonymi bibliotekami, ale prowadzi to do znacznie większych rozmiarów programów.
źródło
Innym podejściem do twojego pytania jest koncepcja dzisiejszych startupów, które często piszą kod po stronie klienta, a następnie wykorzystują frameworki do ciężkiego podnoszenia klientów syntezujących na iOS, Androida i Internet. Tutaj logika biznesowa jest przenośna, ale jest automatycznie przenoszona przez to narzędzie. Istnieje wiele takich ram, Meteor jest jeden.
W ten sposób znaczna część aplikacji znalezionych w sklepach z aplikacjami ma to przenośne dziedzictwo.
Aby jeszcze bardziej zatrzeć ten pomysł, mamy teraz WebAssembly, który umożliwia pisanie kodu przeglądarki (który z definicji jest javascript) w rosnącej liczbie statycznie skompilowanych tradycyjnie języków po stronie serwera, które są analizowane w celu syntezy javascript, aby dotrzeć do klienta.
Pytasz o aplikacje dla Linuksa, ale z oprzyrządowaniem takim jak Electron, który faktycznie jest graficznym interfejsem użytkownika lub wierszem poleceń owiniętym wokół nodejs, idea przenośnych aplikacji linuksowych przeżywa eksplozję wyborów
źródło
Na boisku jest nowy gracz, AppImage . Aplikacje są pakowane jako pojedynczy plik, z uwzględnieniem wszystkich zależności, dzięki czemu można je uruchamiać niezależnie od podstawowej dystrybucji.
W AppImageHub znajduje się repozytorium obrazów aplikacji .
źródło