Niespełnione zależności
Paweł A. Gajda
mis w k2.net.pl
Śro, 8 Lis 2000, 23:02:32 CET
środa 08/11/2000 22:03:33, Sebastian Zagrodzki:
> On Wed, 8 Nov 2000, Paweł A. Gajda wrote:
> > Dla i686 da to mnóstwo niespełnionych rpmlib(...)ów, bo
> > rpm-find-rpm-provides nie dokłada ich rpmowi budowanemu na cenzorze
> > (coś tam nie tak z awk?) Jakiś czas temu podesłałem Ci mini speca,
> > którym można by to spróbować namierzyć (na pewno łatwiej niż za pomocą
> > rpm.spec).
> tak BTW, wstawianie kazdemu pakietowi zaleznosci od rpmlib(blablabla)
> jest lekka(?) glupota.
Ano, pomysł pomieszania tego z zależnościami międzypakietowymi
jest poroniony. W zasadzie Jeff dał się przekonać co do tego, ale,
żeby się z tego wycofać trzeba już przepisać to sobie samemu (zachowując
kompatybilność wstecz), i jeszcze go trochę pomęczyć o włączenie
tego do źródeł rpma.
> a) uniemozliwia to zainstalowanie systemu bez rpma (ale to akurat jest
> najmniejszy problem)
? Nie łapię.
> b) znacznie gorzej: wymusza petle w zaleznosciach: setup nie powinien
> byc zalezny od niczego. Tymczasem zaleznosc od rpmlib powoduje petelke.
> (za setupem wracamy do juz raz obejrzanego pakietu).
Nie wymusza, gdyż rpmlib(...)y są w rpmie "resolwowane" tylko
wewnętrznie i jakiekolwiek Provides: rpmlib(...) w jakimkolwiek
pakiecie (w tym rpm) jest ignorowane (jest na to łatka u nas,
która już weszła do rpma 4.1)
c) PLD sprzed rpm 3.0.5:
rpm -qpR /home/ftp/PLD/RPMS/*.rpm | wc -l
16369
Każde rpmlib(...) x średnio 2 szt/pakiet x 2000 pakietów =
dodatkowe 4 tys zależności do przerobienia.
> Dlatego jesli pakiet ma AutoReqProv: no, to nie powinno tam byc zadnych
> rpmlib(xxx)
Nie bardzo, np. jeżeli od pewnego momentu pakiety zaczną być pakowane
bzip3, to na takim pakiecie nie mającym Requires: rpmlib(Bzip3) rpm
nie posiadający wsparcia do bzip3 się wyłoży, zamiast
napisać czego mu trzeba.
Tak w ogóle to rpmlib(...)y należało IMO zaimplementować
jako analogiczny do Provides/Requires mechanizm, ale:
a) odseparowany od zależności międzypakietowych,
b) oparty o pola bitowe, a nie o "ładne" rpmlib(...........)
Wtedy nie byłoby tych problemów.
Paweł
Więcej informacji o liście dyskusyjnej pld-devel-pl