W poprzednim wpisie wspominałem, iż tym co mnie zaskoczyło w Fedorze 12, był manager pakietów Yum. Domyślnie pobierał on program wraz z jego zależnościami, przy wyrzucaniu aplikacji jednak, pozostawiał po nim jego depends. Bardzo mnie to irytowało, ponieważ tym sposobem, sukcesywnie będziemy zmniejszali sobie miejsce na dysku, potencjalnie niepotrzebnymi nam paczkami. Zacząłem jednak szukać rozwiązania, a okazał się nim pewien plugin...
Na początek posłużę się może obrazowo. Tak wygląda lista zależności do zainstalowania w Fedorze programu Wine:
"================================================================================
Pakiet Architektura Wersja Repozytorium Rozmiar
================================================================================
Instalowanie:
wine x86_64 1.1.32-1.fc12 updates 27 k
Instalowanie, aby rozwiązać zależności:
libXaw x86_64 1.0.6-4.fc12 fedora 159 k
libXdamage i686 1.1.2-1.fc12 fedora 16 k
libXfixes i686 4.0.4-1.fc12 fedora 19 k
libXrender i686 0.9.5-1.fc12 fedora 26 k
libXxf86vm i686 1.1.0-1.fc12 fedora 18 k
libgphoto2 i686 2.4.7-2.fc12 fedora 1.0 M
libjpeg i686 6b-46.fc12 fedora 126 k
libtool-ltdl i686 2.2.6-15.fc12 fedora 44 k
mesa-dri-drivers i686 7.6-0.13.fc12 fedora 1.4 M
mesa-libGL i686 7.6-0.13.fc12 fedora 153 k
mesa-libGLU i686 7.6-0.13.fc12 fedora 177 k
nss-mdns i686 0.10-8.fc12 fedora 22 k
nss-mdns x86_64 0.10-8.fc12 fedora 21 k
wine-capi i686 1.1.32-1.fc12 updates 31 k
wine-capi x86_64 1.1.32-1.fc12 updates 32 k
wine-cms i686 1.1.32-1.fc12 updates 44 k
wine-cms x86_64 1.1.32-1.fc12 updates 47 k
wine-common noarch 1.1.32-1.fc12 updates 81 k
wine-core i686 1.1.32-1.fc12 updates 11 M
wine-core x86_64 1.1.32-1.fc12 updates 11 M
wine-desktop noarch 1.1.32-1.fc12 updates 31 k
wine-fonts noarch 1.1.32-1.fc12 updates 129 k
wine-ldap i686 1.1.32-1.fc12 updates 79 k
wine-ldap x86_64 1.1.32-1.fc12 updates 85 k
wine-pulseaudio i686 1.1.32-1.fc12 updates 47 k
wine-pulseaudio x86_64 1.1.32-1.fc12 updates 48 k
wine-twain i686 1.1.32-1.fc12 updates 53 k
wine-twain x86_64 1.1.32-1.fc12 updates 55 k
xorg-x11-apps x86_64 7.4-8.fc12 fedora 295 k
Podsumowanie transakcji
================================================================================
Instalacja 30 pakiet(y)
Aktualizacja 0 pakiet(y)
Całkowity rozmiar pobierania: 26 M
W porządku? [t/N]:"
Jak widzimy – do pobrania jest 30 pakietów, zajmujących 26MB. Wszystkie pakiety zostają pobrane i zainstalowane w systemie. Aplikacja znudziła się nam i chcemy ją usunąć. Co wtedy widzimy?
"================================================================================
Pakiet Architektura Wersja Repozytorium Rozmiar
================================================================================
Usuwanie:
wine x86_64 1.1.32-1.fc12 installed 0.0
Podsumowanie transakcji
================================================================================
Usunięcie 1 pakiet(y)
Ponowna instalacja 0 pakiet(y)
Instalacja starszej wersji 0 pakiet(y)
W porządku? [t/N]:"
Usunięty ma zostać sam Wine, lecz co z jego zależnościami? Tak, zostają one w systemie. Usuwana jest sama aplikacja. Dlatego też postanowiłem dążyć do rozwiązania owego problemu. Rozwiązaniem okazało się doinstalowanie paczki „yum-plugin-remove-with-leaves-1.1.24-2.fc12.noarch”. Po jego zainstalowaniu wpisujemy w konsoli yum –help, po czym możemy zauważyć:
"Opcje wtyczki:
--remove-leaves remove dependencies no longer needed by any other packages"
Oznacza to, że przy usuwaniu programu (w konsoli), dodać do yum należy parametr –remove-leaves. Parę linijek wyżej pokazane zostało działanie usuwania Wine standardowym Yum bez wtyczek – usuwany zostaje program, bez zależności. Przeanalizujmy teraz działanie Yum z parametrem zainstalowanego pluginu, podczas chęci usunięcia wspomnianego Wine:
yum remove wine –remove-leaves:
„================================================================================
Pakiet Architektura Wersja Repozytorium Rozmiar
================================================================================
Usuwanie:
libXaw x86_64 1.0.6-4.fc12 installed 433 k
libXdamage i686 1.1.2-1.fc12 installed 18 k
libXfixes i686 4.0.4-1.fc12 installed 29 k
libXrender i686 0.9.5-1.fc12 installed 44 k
libXxf86vm i686 1.1.0-1.fc12 installed 28 k
libgphoto2 i686 2.4.7-2.fc12 installed 4.1 M
libjpeg i686 6b-46.fc12 installed 280 k
libtool-ltdl i686 2.2.6-15.fc12 installed 62 k
mesa-dri-drivers i686 7.6-0.13.fc12 installed 6.1 M
mesa-libGL i686 7.6-0.13.fc12 installed 574 k
mesa-libGLU i686 7.6-0.13.fc12 installed 436 k
nss-mdns i686 0.10-8.fc12 installed 64 k
nss-mdns x86_64 0.10-8.fc12 installed 71 k
wine x86_64 1.1.32-1.fc12 installed 0.0
wine-capi i686 1.1.32-1.fc12 installed 79 k
wine-capi x86_64 1.1.32-1.fc12 installed 84 k
wine-cms i686 1.1.32-1.fc12 installed 118 k
wine-cms x86_64 1.1.32-1.fc12 installed 138 k
wine-common noarch 1.1.32-1.fc12 installed 297 k
wine-core i686 1.1.32-1.fc12 installed 68 M
wine-core x86_64 1.1.32-1.fc12 installed 71 M
wine-desktop noarch 1.1.32-1.fc12 installed 5.1 k
wine-fonts noarch 1.1.32-1.fc12 installed 532 k
wine-ldap i686 1.1.32-1.fc12 installed 324 k
wine-ldap x86_64 1.1.32-1.fc12 installed 373 k
wine-pulseaudio i686 1.1.32-1.fc12 installed 115 k
wine-pulseaudio x86_64 1.1.32-1.fc12 installed 119 k
wine-twain i686 1.1.32-1.fc12 installed 205 k
wine-twain x86_64 1.1.32-1.fc12 installed 209 k
xorg-x11-apps x86_64 7.4-8.fc12 installed 754 k
Podsumowanie transakcji
================================================================================
Usunięcie 30 pakiet(y)
Ponowna instalacja 0 pakiet(y)
Instalacja starszej wersji 0 pakiet(y)
W porządku? [t/N]: ”
Jak widzimy, tym razem program zostanie usunięty wraz z jego zależnościami.
Podsumowując. W celu usuwania programów wraz z ich zależnościami, należy zainstalować plugin o nazwie „yum-plugin-remove-with-leaves”. Następnie wyrzucać program z dodaniem parametru „--remove-leaves”. Czasem jednak musimy uważać więc nie jesteśmy zwolnieni z myślenia, ponieważ niektóre programy wyrzucić chcą nam pakiety z czcionkami, których używały. Dlatego zdarza się, iż wyrzucony ma zostać najczęściej pakiet odpowiedzialny za DejaVu Sans, więc bądźmy przygotowani na jego ponowną instalację :-)
Tak wygląda rozwiązanie problemu zalegających zależności w systemie Fedora 12.



1 komentarzy:
świetnie, tego było mi trzeba
Prześlij komentarz