Product SiteDocumentation Site

6.4. Interfejsy: aptitude, synaptic

APT jest programem w języku C++, którego kod zawiera się głównie we współdzielonej bibliotece libapt-pkg. Używanie biblioteki współdzielonej ułatwia tworzenie interfejsów użytkownika, ponieważ jej kod jest łatwy do wykorzystania. Z historycznego punktu widzenia apt-get był zaprojektowany wyłącznie jako testowy interfejs dla libapt-pkg, ale jego sukces przyćmił ten fakt.

6.4.1. aptitude

aptitude jest interaktywnym programem, który może być używany w semigraficznym trybie konsolowym. Pozwala na przeglądanie listy zainstalowanych pakietów, wyszukiwanie wszystkich dostępnych informacji i wybieranie pakietów do instalacji lub usunięcia. Został on zaprojektowany szczególnie z myślą o administratorach, dlatego jego zachowanie jest dużo bardziej inteligentne w porównaniu do apt-get, a jego interfejs łatwiejszy w zrozumieniu.
Menedżer pakietów aptitude

Rysunek 6.1. Menedżer pakietów aptitude

Po uruchomieniu aptitude pokazuje listę pakietów posortowaną według stanu (zainstalowane, niezainstalowane lub zainstalowane, ale niedostępne na serwerach lustrzanych — inne sekcje wyświetlają zadania, wirtualne pakiety i nowe pakiety, które niedawno pojawiły się na serwerach lustrzanych). W celu ułatwienia przeglądania tematycznego dostępne są inne widoki. We wszystkich przypadkach aptitude wyświetla na ekranie listę łączącą kategorie i pakiety. Kategorie są zorganizowane w strukturę drzewa, którego gałęzie mogą być odpowiednio rozwijane i zamykane za pomocą klawiszy Enter, [ i ]. + jest używany do oznaczania pakietów do instalacji, - do usunięcia, a _ do całkowitej likwidacji (zauważ, że można ich również używać w stosunku do kategorii, wtedy odpowiednie akcje zostaną zastosowane do wszystkich pakietów danej kategorii). u pozwala zaktualizować listę dostępnych pakietów, a Shift+u przygotowuje całkowite uaktualnienie systemu. g przełącza do widoku podsumowania żądanych zmian (ponowne wpisanie g zatwierdza zmiany), a q zamyka aktualny widok. Użycie go w przypadku początkowego widoku spowoduje zamknięcie aptitude.
W celu wyszukania pakietu należy wpisać /, a następnie wyszukiwany wzorzec. Wzorzec zostanie dopasowany do nazwy pakietu, ale poprzedzając go ~d zostanie zastosowany również do opisu, natomiast używając ~s do sekcji, wyszukiwanie innych cech zostało szerzej opisane w dokumentacji. Te same wzorce mogą być też używane do filtrowania listy wyświetlanych pakietów: należy wprowadzić literę l (jako limit), a następnie szukany wzorzec.
Managing the “automatic flag” of Debian packages (see Sekcja 6.2.7, „Śledzenie Automatycznie Zainstalowanych Pakietów”) is a breeze with aptitude. It is possible to browse the list of installed packages and mark packages as automatic with Shift+m or to remove the mark with the m key. “Automatic packages” are displayed with an “A” in the list of packages. This feature also offers a simple way to visualize the packages in use on a machine, without all the libraries and dependencies that you don't really care about. The related pattern that can be used with l (to activate the filter mode) is ~i!~M. It specifies that you only want to see installed packages (~i) not marked as automatic (!~M).

6.4.1.1. Zarządzanie Rekomendacjami, Sugestiami i Zadaniami

Kolejną ciekawą funkcją aptitude jest to, że uznaje rekomendacje pomiędzy pakietami, jednocześnie dla każdego przypadku dając użytkownikowi możliwość ich nie instalowania. Na przykład pakiet gnome rekomenduje (między innymi) gdebi. Kiedy pierwszy z nich zostanie wybrany do instalacji, to drugi również zostanie wybrany (i oznaczony jako automatyczny, jeżeli nie jest jeszcze zainstalowany). Po wpisaniu g, gdebi pojawi się na ekranie podsumowania oczekujących akcji na liście pakietów zainstalowanych automatycznie dla rozwiązania zależności. Jednakże można zdecydować, aby pominąć jego instalację poprzez odznaczenie go przed zatwierdzeniem operacji.
Zauważ, że funkcja śledzenia rekomendacji nie stosuje się do uaktualnień. Na przykład, jeżeli nowa wersja gnome rekomenduje pakiet, którego wcześniej nie rekomendowała, wtedy pakiet nie zostanie zaznaczony do instalacji. Jednakże nadal zostanie na liście ekranu uaktualnienia, tak żeby administrator mógł ja zaznaczyć do instalacji.
Sugestie pomiędzy pakietami również są brane pod uwagę, ale w sposób dopasowany do ich szczególnego statusu. Na przykład, ponieważ gnome sugeruje dia-gnome, ten drugi zostanie wyświetlony na ekranie oczekujących akcji (w sekcji pakietów sugerowanych przez inne pakiety). W ten sposób jest to widoczne i administrator może zdecydować, czy wziąć pod uwagę sugestie, czy nie. Ze względu na to, że jest to tylko sugestia, a nie zależność lub rekomendacja, pakiet nie zostanie zaznaczony automatycznie — jego zaznaczenie wymaga ręcznej interwencji użytkownika (dlatego pakiet nie zostanie zaznaczony jako automatyczny).
W tym samym duchu, należy pamiętać, że aptitude inteligentnie wykorzystuje koncepcję zadań. Ze względu na to, że zadania są wyświetlane jako kategorie na ekranie list pakietów, możliwe jest zaznaczenia całego zadania do instalacji lub usunięcia, lub przeglądanie listy pakietów zawartych w zadaniu, aby zaznaczyć mniejszy podzbiór.

6.4.1.2. Lepsze Algorytmy Analityczne

W celu podsumowania tej sekcji należy zauważyć, że aptitude do rozwiązywania problemów używa bardziej zaawansowanych algorytmów w porównaniu z apt-get. Kiedy żądany zbiór akcji w połączeniu prowadziłby do rozbieżnego działania systemu aptitude ocenia kilka możliwych scenariuszy i prezentuje je w kolejności malejącej ważności. Algorytmy te nie są jednak niezawodne. Na szczęście zawsze istnieje możliwość ręcznego wybrania pożądanych akcji. W przypadku, gdy aktualnie zaznaczone akcje prowadzą do sprzeczności, górna część ekranu wskazuje liczbę "zepsutych" pakietów (można przejść do nich bezpośrednio po naciśnięciu b). Można wtedy ręcznie stworzyć rozwiązanie dla znalezionych problemów. W szczególności można uzyskać dostęp do różnych dostępnych wersji poprzez wybranie pakietu za pomocą klawisza Enter. Jeżeli wybranie jednej z tych wersji rozwiązuje problem, to użycie tej funkcji jest najprostszym rozwiązaniem. Kiedy już liczba zepsutych pakietów spadnie do zera, można bezpiecznie przejść do ekranu oczekujących akcji i jeszcze raz je sprawdzić przed zatwierdzeniem.

6.4.2. synaptic

synaptic jest graficznym menedżerem pakietów dla Debiana, który posiada wydajny i prosty interfejs graficzny bazujący na GTK+/GNOME. Posiada wbudowane filtry pozwalające na szybki dostęp do nowych pakietów, zainstalowanych pakietów, pakietów do uaktualnienia, przestarzałych pakietów, itd. Po przejrzeniu tych list można wybrać operacje do wykonania na pakietach (instalacja, uaktualnienie, usunięcie, wyczyszczenie); operacje te nie są wykonywane natychmiast, ale dodawane do listy zadań. Pojedyncze naciśnięcie przycisku sprawdza listę operacji, które są następnie wykonane za jednym razem.
Menedżer pakietów synaptic

Rysunek 6.2. Menedżer pakietów synaptic