Instalacja programu bez jakichkolwiek zależności - jest to możliwe?

Dzień dobry! :slight_smile:

Tak, wiem, mówiłam o tym w temacie wyboru jakiegoś systemu z rodziny GNU/Linux. Zastanawia mnie to, czy jest jakaś możliwość ominięcia wszelakich zależności w Manjaro XFCE związanych z instalacją Krity? Jedynie w tym programie nic mi nie szwankowało, posiadałam bogatą ilość pędzli, dobrze odczytywało nacisk piórka. W KDE to mi tam żal nie było, ale zrobiłam na nowo system z lekkim XFCE i mi obecnie żal jest tych 0,5 GB.

akonadi-1.13.0-4 attica-qt4-0.4.2-1 attica-qt5-5.12.0-1 calligra-filters-2.9.6-1 calligra-libs-2.9.6-1 calligra-plugins-2.9.6-1
             docbook-xml-4.5-6 docbook-xsl-1.78.1-1 gamin-0.1.10-8 gsl-1.16-1 jemalloc-3.6.0-1 kactivities-frameworks-5.12.0-1
             karchive-5.12.0-1 kauth-5.12.0-1 kbookmarks-5.12.0-1 kcmutils-5.12.0-1 kcodecs-5.12.0-1 kcompletion-5.12.0-1 kconfig-5.12.0-1
             kconfigwidgets-5.12.0-1 kcoreaddons-5.12.0-1 kcrash-5.12.0-1 kdbusaddons-5.12.0-1 kdebase-runtime-15.04.3-3
             kdeclarative-5.12.0-1 kdelibs-4.14.10-1 kdepimlibs-4.14.10-1 kglobalaccel-5.12.0-1 kguiaddons-5.12.0-1 ki18n-5.12.0-1
             kiconthemes-5.12.0-1 kio-5.12.0-1 kitemviews-5.12.0-1 kjobwidgets-5.12.0-1 knotifications-5.12.0-1 kpackage-5.12.0-1
             kservice-5.12.0-1 ktextwidgets-5.12.0-1 kwallet-5.12.0-1 kwidgetsaddons-5.12.0-1 kwindowsystem-5.12.0-1 kxmlgui-5.12.0-1
             libdbusmenu-qt4-0.9.3+15.10.20150604-1 libdbusmenu-qt5-0.9.3+15.10.20150604-1 libdmtx-0.7.4-5 libkactivities4-4.13.3-1
             libkdcraw-15.04.3-1 libmariadbclient-10.0.20-1 libqzeitgeist-0.8.0-4 libraw-0.16.2-1 libspnav-0.2.3-1 libutempter-1.1.6-2
             mariadb-10.0.20-1 mariadb-clients-10.0.20-1 media-player-info-22-1 opencolorio-1.0.9-2 oxygen-icons-15.04.3-1 phonon-qt4-4.8.3-2
             phonon-qt4-gstreamer-4.8.2-1 phonon-qt5-4.8.3-2 phonon-qt5-gstreamer-4.8.2-1 polkit-qt4-0.112.0-1 polkit-qt5-0.112.0-1
             prison-1.1.1-1 qca-2.0.3-5 qjson-0.8.1-3 qt5-declarative-5.5.0-1 qt5-script-5.5.0-1 qt5-x11extras-5.5.0-1
             qt5-xmlpatterns-5.5.0-1 solid-5.12.0-1 sonnet-5.12.0-1 strigi-0.7.8-6 calligra-krita-2.9.6-1

Jest jakiś sposób, by “oszukać” system? Tyle tych niepotrzebnych pakietów dowalili (i są one mi niepotrzebne) :/.

Pozdrawiam i dziękuję za pomoc, Neukrate :).

Żal, czy nie, Krita ich potrzebuje. Jak dobrze pamiętam, pacman domyślnie nie instaluje zależności opcjonalnych, tylko na bieżąco o nich informuje. Nic tu raczej nie wymyślisz.

Może ściągnąć ręcznie ten program, rozpakuj i przeszukaj pliki, gdzieś tam w pkbuild’zie chyba, są napewno wymienione zależności, spróbuj pousuwać to co zbędne i zainstaluj program ręcznie pacman -U …

Kombinacje alpejskie, i nikt nie da gwarancji że to zadziała. Mnie osobiście też wkurzają takie zależności.

Większość z nich to zależności kdebase-runtime -> kdelibs. Nie odważyłbym się ich usuwać.

Zainstaluj sobie z aur wersję https://aur.archlinux.org/packages/krita/ u mnie wymaga tylko jakieś ~280MB zależności.

Możesz to rozwinąć?

Ostatnio sporo gier testuję i wysyłam błędy do twórców. Do tego Windows, na którego przeznaczyłam połowę dysku - gdyby nie to, że ostatnio laptop wylądował do serwisu i musieli na nowo system zainstalować, bo się nie dało, Manjaro nadal by był, ale bez produktu Microsoftu. Dla mnie wszystko, co bierze dużo miejsca, jest niepotrzebne.

 

U mnie 409 MB zależności ;).

Są lepsze (i mniej idiotyczne) sposoby na zmniejszenie użycia dysku niż próby rezygnacji z instalowania wymaganych zależności.

​Programy powiązane z KDE mają postać: mała_binarka1 + kdelibs, mała_binarka2 + kdelibs i tego nie przeskoczysz. Krita ma takie wymagania i twój problem jest zwyczajnie głupi.

Te dodatkowe biblioteki instalujesz tylko raz i przy instalacji kolejnego programu KDE masz już większość zależności w systemie.

​Zacznij od programu Bleachbit.

Ja rozumiem kiedyś dyski 20 GB ale teraz? Tobie te 500 MB przeszkadza ale chyba tylko w twojej świadomości. Program ma zależności jakie ma jakby mógł działać bez nich to by nie były zależnościami to chyba logiczne. Dla mnie to nie jest problem, potrzebuje program to go instaluje i czy ma zależności 1 czy 500 nie jest dla mnie kryterium przy wyborze programu.

Proste pytanie przerodziło się w swoisty atak na pytającą. ( -_-)

Problem jest w sumie szerszy, bo, przy uruchamianiu programu, potrzebne zależności również będą ładowane. I tak oto, poza apetytem na miejsce na dysku, pojawia się zwiększone zapotrzebowanie na RAM – uroki mieszania GTK i Qt.

Ja się tym nie przejmuję, ale, jak widać, Neukrate już tak.

 

Ze swojej strony mówię: ściągaj i się nie przejmuj. Co dociągniesz teraz, oszczędzisz przy kolejnej aplikacji powiązanej z KDE.

Tobie może są niepotrzebne, ale są potrzebne programowi i musisz je zaakceptować, jeżeli chcesz mieć ten program. Masz środowisko napisane w GTK, a usiłujesz zainstalować program powiązany z KDE, więc nie da się uniknąć tych zależności. Spójrz na to z innej strony - jak ci się zachce kolejnego programu z KDE, to zależności będzie albo mniej, albo wcale, bo większość będziesz miał już w systemie.

Nie na pytającą, a na głupie pomysły. Wiesz jaka by była różnica gdyby Krita zamiast zajmować z wymaganymi zależnościami 500 MB, zajmowała by te same 500 MB jako pojedynczy pakiet? System by nie zajmował 5 GB na dysku tylko kilkadziesiąt GB, jak to jest w Windowsie przy braku współdzielonych bibliotek/pakietów. Z pamięcią byłoby podobnie.

​Bzdura.

Private  +   Shared  =  RAM used       Program
​257.0 MiB +   9.3 MiB = 266.2 MiB       krita

i kilka dodatkowych procesów:

Private  +   Shared  =  RAM used       Program
656.0 KiB +   2.0 MiB =   2.6 MiB       kdeinit4
​  1.4 MiB +   2.8 MiB =   4.2 MiB       klauncher
​  5.0 MiB +   4.3 MiB =   9.3 MiB       kded4

Pododawaj to sobie na palcach i nie ośmieszaj się więcej.

Całe szczęście, dzięki BTRFS, te Windowsowe problemy pod Linuksem znikną. Dzięki deduplikacji będzie można mieć na dysku wiele kopii tego samego pliku.

Czyli twierdzisz, że nic nie jest ładowane? To po co te zależności? Nie pisałem o znacznie zwiększonym apetycie na RAM. To, że na nowoczesnym desktopie problem jest najczęściej pomijalny, bynajmniej nie znaczy, że go w ogóle nie ma. :wink:

Dla mnie temat zamknięty.

Dlaczego bzdura?

Bo tak właśnie działają dynamicznie ładowane biblioteki na Linuksie.

Otwarcie pliku w POSIX nie czyta go automatycznie. Dostajesz tylko deskryptor pliku oraz offset. I podobnie z bibliotekami, w pamięci są tylko te funkcje, które są w poszczególnym momencie używane.

Praktycznie każdy program w Linuksie ma jakieś zależności. Natomiast ty pisałeś jakieś bzdury o mieszaniu gtk z qt i “ładowaniu zależności” do RAM. Toż to totalne brednie i wstyd mi by było publicznie pisać takie głupoty.

​Każdy program wymaga odpowiednich bibliotek, a to czy wpakujesz je do samego programu, czy do współdzielonej zewnętrznej biblioteki niczego nie zmieni. Zwiększy się tylko zużycie dysku i pamięci bo nie będzie instalowana i ładowana jedna współdzielona wersja (tak jak w Linuksie) tylko będą wielokrotnie instalowane i ładowane różne statyczne wersje wbudowane w programy (tak jak w Windowsie).

​Przejrzyj podane wcześniej zależności pakietu Krity i wskaż mi, gdzie one są niby ładowane.

​W Linuksie współdzielone biblioteki i zależności nie są problemem, a zaletą.

Zainstaluj sobie Kritę na Windowsie i porównaj.

I tu dochodzimy do ładowania zależności programu. Ładowanie całych bibliotek byłoby oczywiście głupotą i marnotrawstwem.

 

Odnoszę wrażenie, że mówimy o tym samym, ale w inny sposób. Wina prawdopodobnie jest po mojej stronie.

 

W tym przypadku, Krita będzie jedyną aplikacją korzystającą z tych zależności. Oszczędności z tego tytułu nie będzie (przynajmniej do czasu).

 

 

Trzeba być jednak świadomym wad tego rozwiązania. Takie Valve nie bez powodu udostępnia swój zestaw bibliotek.

Heh, narodziła się wojna przeciwko użytkownikom (?). Tak czy siak, zostałam zmuszona do instalacji zależności. Przynajmniej teraz GIMP nie sprawia mi trudności, gdyż poprzednio często akcja Control + Z kończyła się na powiększaniu i zmniejszaniu. Dzięki wszystkim tutaj, którzy odpowiedzili na to pytanie! :slight_smile:

Pozdrawiam, Neukrate.