Smart versus urpmi - lepsze wrogiem dobrego?

5 grudnia 2005, Ktoś... | ...tam

Większość użytkowników Mandrivy (zarówno tych bardziej, jak i mniej doświadczonych) od dawna wysoko ceni urpmi, czyli system zarządzania pakietami RPM, który pozwala je łatwo wyszukiwać, ściągać z internetu, zarządzać ich zależnościami, instalować je, aktualizować czy wreszcie odinstalowywać.
Od ukazania się Mandrivy 2006 użytkownicy francuskiej dystrybucji mogą zamiast urpmi używać Smart Package Managera.

Postanowiłem sprawdzić czy warto.

Smart, stworzony przez developerów brazylijskiej dystrybucji Connectiva, po połączeniu z którą Mandrakelinux zmienił nazwę na Mandrivę, jest meta-menedżerem, potrafiącym obsługiwać pakiety RPM, DEB i TGZ oraz ich repozytoria (szkoda tylko, że w chwili obecnej nie da się mieszać pakietów różnego typu w jednym systemie ;))

Jako jedną z największych zalet Smarta wymienia się zaawansowany algorytm zarządzania zależnościami międzypakietowymi, który radzi sobie w sytuacjach, w których zawodzą konkurencyjne programy. Jeśli to konieczne, Smart zezwoli np. na współistnienie różnych wersji tego samego pakietu lub - przeciwnie - zamiast wielu paczek zostawi tylko jedną.

Z drugiej strony (jeśli mam być szczery), od dawna już nie zdarzyło mi się, aby urpmi nie poradziło sobie z zależnościami w moim systemie i wydaje się, że Smart jest tu raczej lekarstwem na bolączki użytkowników apt-get lub yuma (również w obecnej w dokumentacji programu analizie kilku “trudnych przypadków”, Smart jest konfrontowany z tymi dwoma menedżerami). Niewykluczone, że Smart może być przydatny dla osób, które chcą mieszać pakiety z repozytoriów przeznaczonych dla różnych wersji systemu (np. gałęzi stabilnej oraz cookera). Używam jednorodnego systemu, więc nie mogę tego sprawdzić (ku radości swojej, a żalowi czytelników ;)

Konsola? Nic przyjemniejszego!

Skoro również urpmi dobrze radzi sobie z zależnościami, to czy Smart w ogóle jest w czymkolwiek lepszy?! - mógłby pomyśleć ktoś, kto nie używał tego programu. Tymczasem jest dziedzina, w której brazylijski program zostawia daleko w tyle swojego francuskiego odpowiednika: jest mianowicie dużo wygodniejszy w obsłudze.
Trudno bowiem powiedzieć, żeby obsługa konsolowej wersji urpmi była łatwa do opanowania - choćby dlatego, że przestudiować należy manuale do kilku poleceń. Tymczasem Smart podręcznika… w ogóle nie ma, a krótka pomoc, dostępna po uruchomieniu go z parametrem --help, w zupełności wystarcza.

Oprócz interfejsu tekstowego oraz graficznego (smart --gui), Smart oferuje również interaktywną powłokę (uruchamianą poleceniem smart --shell) i mogę bez wahania powiedzieć, że nawet ci, którzy na samo słowo “konsola” reagują wysypką, doceniliby intuicyjność, wygodę i szybkość, z jaką obsługuje się w tym trybie Smarta.
Intuicyjność w konsoli?! - mógłby prychnąć któryś z Czytelników.
Wbrew pozorom - tak. Cóż bowiem prostszego, niż napisanie

smart --update

(aby sprawdzić aktualność informacji o repozytoriach), zadanie pytania za pomocą zwrotu

smart search nazwa_programu

albo

smart search '*fragment-nazwy-lub-opisu*'

i wydanie komendy

smart install nazwaprogramu

?

Rzecz jasna, na wyszukiwaniu, instalowaniu czy aktualizacji systemu (smart upgrade) nie kończą się możliwości programu. Ciekawymi opcjami są np. --check [nazwapakietu], sprawdzająca poprawność instalacji (bez nazwy pakietu ta opcja wyświetli wszystkie rodzące problemy pozycje) oraz, będący jej nieodzownym uzupełnieniem, przełącznik --fix, pozwalający na naprawienie znalezionych błędów.
W trybie powłoki jesteśmy jeszcze bardziej rozpieszczani - ot, mały przykład:

smart --shell
smart>update
smart>ls -n

…i już wiemy, jakie nowości możemy zainstalować po zaktualizowaniu repozytoriów.

Uroki klikania

Chwila uwagi należy się również interfejsowi graficznemu (galeria screenshotów), po który początkujący sięgają najchętniej.
Twórca Smarta, Gustavo Niemeyer, jest również developerem Synptica (graficznej nakładki na apt-get), co widać od razu po uruchomieniu Smarta z opcją --gui. Niewątpliwą przewagą nad graficzną nakładką na urpmi, dostępną w Centrum Sterowania Mandriva Linux jest to, że instalacją, aktualizacją, reinstalacją czy deinstalacją programów możemy sterować z jednego okna i dokonywać tych operacji naraz (co jest niemożliwe w drakconf).
Z drugiej strony, o ile zaawansowanych użytkowników ucieszy, że graficzny interfejs użytkownika nie ujmuje programowi funkcjonalności (tak, jak nakładka na konkurencyjnego menedżera pakietów), o tyle ktoś stawiający pierwsze kroki w linuksie może być przytłoczony natłokiem opcji - tym bardziej, że brakuje choćby tej skrótowej pomocy, którą można otrzymać, uruchamiając Smarta w trybie tekstowym.

Przy tym wszystkim Smart może obsługiwać wiele mirrorów tego samego repozytorium, automatycznie wybierając najszybsze, potrafi nawiązywać naraz kilka połączeń (z jednym lub wieloma adresami), pozwala również łatwo nadawać priorytety różnym repozytoriom:

smart channel --set nazwa_repozytorium priority=10

albo poszczególnym pakietom

smart flag --set lock nazwa_pakietu

And the winner is…

Idealny menedżer pakietów? Cóż, niekoniecznie: wprawdzie dosyć stabilny, raz na jakiś czas program potrafi jednak zaskoczyć wywrotką; brakuje również opcji, zezwalającej na instalację pakietów z błędnymi kluczami zabezpieczającymi (choć niektórzy mogą powiedzieć, że to zaleta ;))
Mimo drobnych niedociągnięć, Smart zastąpił u mnie urpmi - zwłaszcza, że tego drugiego najchętniej używałem w (stosunkowo wolnej) wersji graficznej - zaś Smart (notabene, równie szybki we wszystkich trzech interfejsach) sprawił, że z przyjemnością uruchamiam konsolę.

Przydatne linki:

Znalazłeś literówkę? Zgłoś ją używając formularza!

Wpisz wynik działania: sześć + 5:

Komentarze (RSS) | Trackback (URI)

Liczba komentarzy: 7

zwiń wątek kon'ski  5 grudnia 2005 o godz. 16:34 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

wyglada ciekawie, gui jest czytele
i intuicyjne zobaczymy jak z konsolą :)

 
zwiń wątek da.killa  5 grudnia 2005 o godz. 19:27 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

U mnie też smart zastapił urpmi - sprawdza się nieźle, a jego największa przewaga nad konkurentem to ustawianie priorytetów kanałów i mozliwość blokowania paczek.

 
zwiń wątek PW  6 grudnia 2005 o godz. 1:38 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Bawiłem się urpmi, bawiłem się smartem jednak muszę powiedzieć, że oba te programy do pięt poldkowi nie dorastają. Tryb interaktywny poldka z tabcompletions które działa zarówno dla nazw pakietów jak i poleceń, priorytetowanie źródeł, możliwość tworzenia aliasów które też są dopełniane, doskonałe rozwiązywanie zależności, blokowanie pakietów, możliwość przekierowania rezultatu polecenia rurką do innego programu, czy wreszcie indeksy, które nie są z reguły ściągane w całości tylko jako małe łatki sprawiają, że używa się go naprawdę miło i przyjemnie. Oczywiście każde polecenie w trybie interaktywnym ma pomoc. Poza tym działa zdecydowanie szybciej niż smart lub urpmi. Jedyną wadą poldka, no może nie do końca wadą, jest brak gui. W tym względzie smart jest dużo lepszy.
Próbowałem ostatnio uruchomić poldka w mandrive (tak tak, jest dostępny i to w najnowszej wersji), ale jak na razie bez rezultatu. Zobaczymy, może w końcu zadziała.

 
zwiń wątek Ktoś... | ...tam  6 grudnia 2005 o godz. 3:44 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Dodam tylko, że urpmi też posiada możliwość blokowania paczek - choć (zgodnie z tym, co napisałem ;) nie jest to zbyt intuicyjne: trzeba mianowicie wyedytować plik /etc/urpmi/skip.list (vide man urpmi.files).

Poldek w madrivie? Nie omieszkam sprawdzić (choć dystrybucji przez ładnych parę miesięcy nie planuję zmieniać - to na pewno ;)

 
zwiń wątek kocio  6 grudnia 2005 o godz. 11:53 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Smart dla mnie musi jeszcze się trochę “odstać” zanim ponownie go przetestuję: wykorzystałem go jakiś czas temu do upgradu Fedory z mieszanymi pakietami i skończyło się tym, że system zarządzania pakietami stał się nieużywalny (na ręczne interwencje nie miałem akurat czasu ani chęci). Jest niezły, ale od inteligentnego menedżera oczekuję że nawet przy moich dzikich harcach nie da się tak głupio zablokować.

W Mandrivie Smart ma taką przewagę, że do usuwania i instalowania jest jeden program (graficzne urpmi ma osobno dodawanie, usuwanie i konfigurowanie repozytoriów, co jest niewygodne) no i ma bardziej reaktywny interfejs, który się nie zamraża tak jak urpmi nieraz (co jest wkurzające).

ATSD: czy ktoś planuje spolszczyć Smarta?

 
zwiń wątek jellonek  13 stycznia 2006 o godz. 16:54 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: -1 [Pokaż komentarz]

apt-get rółó
moze i nie ma interface graficznego (aptitude feee), moze nie ma obslugi w stylu shella, ale mimo jechania na zrodlach stable, unstable, testing i experimental - wszystko dziala jak nalezy!! ZERO wywrotow bazy pakietow, przyjemna instalacja/deinstalacja/upgrade/zamiana pakietow na inne.
czego wiecej oczekiwac?

 
zwiń wątek Ktoś... | ...tam  14 stycznia 2006 o godz. 1:36 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Ja apt-get ostatni raz w rękach miałem ponad pół roku temu (przez pół roku używałem Yopera) i spotkałem kilka problemów - na czele z tym, że przy każdej aktualizacji próbował odinstalować (owszem, błędnie napisany) sterownik do mojej drukarki, który odwoływał się do starszej wersji Cups, niż ta, którą miałem na pokładzie - żadne modły ani przypinanie pakietu nie pomagały. Urpmi oraz Smart przełykają tę sytuację bez zająknięcia…

Apt-get w zasadzie używa się bardzo przyjemnie - ale np. przypinowywanie pakietu to męka.
Koniec końców, apt-get jest całkiem miły (dopóki nie odstawi jakiejś niespodzianki ;)

 
Identyfikator (wymagane)
Adres e-mail (wymagany - nie pokażemy go publicznie)
Adres URI
Rozmiar pola: zmniejsz rozmiar | zwiększ rozmiar

Literówki najlepiej zgłaszać jabberem: michuk@jakilinux.org lub kocio@jabber.org!

W komentarzach możesz używać prostych znaczników HTML. Przykłady:
  • Link: <a href="jaklinux.org">Linux dla każdego</a>,
  • Wytłuszczenie: <strong>tekst pogrubiony</strong>,
  • Kursywa: <em>tekst pochylony</em>,
  • Przekreślenie: <strike>tekst przekreślony</strike>,
  • Kod: <code>printf("blok kodu");</code>,
  • Cytat: <blockquote>cytat</blockquote>
Uwaga: jeśli dodasz nieznany znacznik, będzie on niewidoczny, gdyż system filtruje takie znaczniki.

O Autorze

Łukasz Roś

RSS

Możesz śledzić komentarze do tego artykułu poprzez specjalny kanał; RSS 2.0 .

Inne z kategorii Mandriva

 więcej »

Najpopularniejsze

Porównaj dystrybucje!

vs

Dołącz do nas!

Znasz się na grafice? Wymiatasz w CSS? Przerób design jednego z serwisów Grupy Jakilinux!
Więcej o współpracy na blogu Grupy Jakilinux.

Butik JL

jakilinux butik
Obejrzyj więcej produktów i wybierz coś dla siebie.

Subskrybuj Biuletyn!

Biuletyn Grupy Jakilinux to okresowy subiektywny przegląd najważniejszych informacji o których piszemy w naszych serwisach, który wysyłamy e-mailem. Subskrybuj biuletyn!

Reklama

To jest miejsce na Twoją reklamę! Więcej informacji: Reklama w jakilinux.org