Dlaczego prawie wszystkie pakiety są oznaczone jako zainstalowane ręcznie?

11

Właśnie zainstalowałem Maverick i zdziwiłem się, że prawie wszystkie pakiety są oznaczone jako zainstalowane ręcznie (nie są to nagłówki Linux i CRD-Wireless). Czy nie przeczy to celowi rozróżnienia między pakietami instalowanymi automatycznie i ręcznie?

htorque
źródło

Odpowiedzi:

9

Wygląda na to, że moje moce Google'a zostały osłabione: jest to znany błąd (skoncentruj się na komentarzach Colina Watsona) i kręci się przez jakiś czas bez widocznej poprawki:

Cytując Colina Watsona :
[...] Pozostawienie wszystkich pakietów ręcznie zainstalowanych jest brzydkie, ale konsekwencje tego błędu są na ogół ograniczone do tego, że nie udaje mu się być wystarczająco sprytnym, aby usuwać niepotrzebne pakiety. Wada w odwrotnym kierunku byłaby znacznie gorsza, ponieważ mogłaby spowodować usunięcie pakietów, gdy są one nadal potrzebne. Biorąc pod uwagę, że nie wydaje się, aby dostępna była poprawna poprawka, lepiej jest wyemitować [sic] po stronie ostrożności. [...]
htorque
źródło
powietrze? tak, z pewnością.
TRiG,
1
Tak, ale gdybym to poprawił, nie byłby to już cytat. : P
htorque
Zastanawiam się: skoro ta „ręcznie zainstalowana” sekcja jest oczywiście nieistotna (bezużyteczna), dlaczego po prostu jej nie ukryje? Nie musisz go wyświetlać, jeśli nie możesz nic z tym zrobić ... wydaje mi się, że tak właśnie jest. Jeśli pewnego dnia coś naprawią, mogą to pokazać ponownie. To było w Ubuntu od Jaunty lub Karmic, jeśli dobrze pamiętam ...
Mała Jawa
1
Chociaż kiedy naprawi to w następnym komentarzu, myślę, że możesz dostosować cytat. :)
@Little: Może być przydatny w przypadku pakietów instalowanych później, ale nie obejmuje niczego przy pierwszej instalacji.
1

Okej, teraz to pierwsza rzecz, którą robię zaraz po instalacji. Zaznaczam (prawie) każdą paczkę jako automatycznie zainstalowaną i pozostają one jako zależności ubuntu-desktop:

apt-mark showmanual | xargs sudo apt-mark auto
sudo apt-mark unmarkauto ubuntu-desktop 

Najlepiej byłoby, gdyby to wystarczyło. Ale według Colina Watsona świat nie jest tak idealny i potrzebujemy trochę dopracowania. Powtarzać:

apt-get autoremove --simulate
# ...
# output of what's to be autoremoved
sudo apt-mark unmarkauto <package>

gdzie <package>dla mnie kończy się co najmniej jak każda ubuntu-standard, ubuntu-minimal, ubuntu-restricted-addons. Również niektóre pakiety językowe.

Warto również zauważyć aptitude, że dzięki TUI może pomóc w tym procesie.

Po wykonaniu tej czynności raporty menedżera pakietów mojego systemu wyglądają o wiele bardziej przyjemnie i zrozumiale:

$ apt-mark showmanual
aptitude
dkms
git
subversion
ubuntu-desktop
ubuntu-minimal
ubuntu-restricted-addons
ubuntu-standard
vim
zsh

Voila!

ulidtko
źródło
nie próbuj tej odpowiedzi z najnowszym Willy. Zostaniesz
pieprzony
@StefanoMtangoo Sam to zrobiłem na Wily. Obecnie mam 97 paczek oznaczonych ręcznie, a 2455 paczek oznaczonych automatycznie. Te 97 reprezentują prawie dokładnie wszystkie te apt-get install, które zrobiłem. Powiedziałbym, że dość czyste zarządzanie zależnościami.
ulidtko
Zrobiłem to i wszystko, co dostałem, to prawie wszystkie pakiety zostały ustawione na autorove i musiałem przejść przez usuwanie i
ponowne
@Stefano, zauważyłaś opisałem pętlę z autoremove --simulatenastępnie unmarkautoz ręcznie zbieranych pakietów parasol? To jest klucz. Teraz nie miał faktycznie usunąć i zainstalować z powrotem pakiety. Wszystkie zmiany, które wprowadzasz w systemie, polegają na oznaczaniu pakietów jako zainstalowane ręcznie lub automatycznie - jako zależność (często pośrednia) od innego ręcznie zainstalowanego pakietu.
ulidtko