Kolejny bug w rpm...

Jakub Bogusz qboosh w pld.org.pl
Czw, 8 Maj 2003, 23:54:58 CEST


On Wed, May 07, 2003 at 05:33:18PM +0200, Artur Frysiak wrote:
> On Wed, May 07, 2003 at 08:59:00AM +0200, Radoslaw Zielinski wrote:
> > Tym razem przy obsłudze zależności w przypadku instalacji pakietu
> > w dwóch wersjach:
> > 
> > $ rpm -q perl-base
> > perl-base-5.8.0-0.35
> > perl-base-5.8.1-0.19408.1
> > 
> > $ sudo rpm -e perl-base-5.8.1
> > error: Failed dependencies:
> >         perl-base = 5.8.0 is needed by (installed) perl-modules-5.8.0-0.35
> >         perl-base = 5.8.0 is needed by (installed) perl-5.8.0-0.35
> >         perl-base = 5.8.0 is needed by (installed) perl-tools-pod-5.8.0-0.35
> >         perl-base = 5.8.0 is needed by (installed) perl-devel-5.8.0-0.35
> >         perl-base = 5.8.0 is needed by (installed) perl-GDBM_File-5.8.0-0.35
> > 
> > $ rpm -q rpm
> > rpm-4.2-0.20030322.10
> 
> Błąd jest znany ale rozwiązanie jeszcze nie.

On chyba myśli, że perl-base może być dostarczone tylko przez jeden
pakiet naraz i nawet nie sprawdza wersji.

Co do implikacji Provides->Obsoletes, to chyba to namierzyłem w źródłach
rpm-a - ale nie próbowałem jeszcze zmieniać, bo to było w 4.1,
a w międzyczasie pojawił się snap 4.2... którego już sobie nawet
zbudowałem, ale po obejrzeniu stwierdziłem, że pakiety są jeszcze zbyt
niedopracowane, żebym je instalował[1].
Sprawdzanie zależności przy usuwaniu jest chyba oddzielne, ale opiera
się na tych samych założeniach.

[1] chodzi zwłaszcza o programy /usr/lib/rpm/rpm[ikq] znajdujące się
w rpm-utils. Jeśli (teraz dynamicznie linkowany) /bin/rpm+biblioteki
potrafi wykonywać te zadania, to po co oddzielne rpmk i rpmq?
Chyba żeby dodać do pakietu tworzone do nich symlinki rpmquery,
rpmverify, rpmsign, rpmdb w %{_bindir}, jakby ktoś chciał je w ten
sposób uruchamiać...

rpmi jest statycznie zlinkowany - OK, może się przydać - ale dlaczego
jest włączony akurat do rpm-utils? Zastosowania niezbyt się pokrywają,
a różnica rozmiarów jest duża.

W rpm-build jest trochę niepotrzebnych plików - chyba wszystkie brp-* są
do wycięcia; jest kilka nie używanych przez nas (nie jestem pewien co do
magic.{prov,req)) skryptów, które powodują, że rpm-build wymaga perla.
Nie wiem też, dlaczego magic.mgc, magic.mime i magic.mime.mgc są
w rpm-build, a magic w rpm-utils; druga sprawa to to, czy są potrzebne
oddzielne bazy pokrywające się w większości z bazami file(1)?


-- 
Jakub Bogusz    http://cyber.cs.net.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl