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

When it starts, aptitude shows a list of packages sorted by state (installed, non-installed, or installed but not available on the mirrors — other sections display tasks, virtual packages, and new packages that appeared recently on mirrors). To facilitate thematic browsing, other views are available. In all cases, aptitude displays a list combining categories and packages on the screen. Categories are organized through a tree structure, whose branches can respectively be unfolded or closed with the Enter, [ and ] keys. + should be used to mark a package for installation, - to mark it for removal and _ to purge it (note that these keys can also be used for categories, in which case the corresponding actions will be applied to all the packages of the category). u updates the lists of available packages and Shift+u prepares a global system upgrade. g switches to a summary view of the requested changes (and typing g again will apply the changes), and q quits the current view. If you are in the initial view, this will effectively close 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

Another interesting feature of aptitude is the fact that it respects recommendations between packages while still giving users the choice not to install them on a case by case basis. For example, the gnome package recommends brasero (among others). When you select the former for installation, the latter will also be selected (and marked as automatic if not already installed on the system). Typing g will make it obvious: brasero appears on the summary screen of pending actions in the list of packages installed automatically to satisfy dependencies. However, you can decide not to install it by deselecting it before confirming the operations.
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.
Suggestions between packages are also taken into account, but in a manner adapted to their specific status. For example, since gnome suggests empathy, the latter will be displayed on the summary screen of pending actions (in the section of packages suggested by other packages). This way, it is visible and the administrator can decide whether to take the suggestion into account or not. Since it is only a suggestion and not a dependency or a recommendation, the package will not be selected automatically — its selection requires a manual intervention from the user (thus, the package will not be marked as automatic).
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