jaka nazwa w pkgssel

Paweł Gajda mis w hq.obop.com.pl
Śro, 19 Maj 1999, 13:40:53 CEST


On Tue, 18 May 1999, Jarek Woloszyn wrote:

> On Tue, 18 May 1999, Paweł Gajda wrote:
> 
> > 
> > Nie bardzo rozumiem dlaczego będzie to uciążliwe przy tworzeniu
> > grup. W czym mogą przeszkadzać dublety?
> 
> Trzeba bedzie zrobic jakis soft do tworzenia pliku z grupami. Bo nie
> wyobrazam sobie wpisywanie kilkuset nazw pakietow z wersjami recznie.
> A co potem z aktualizacja? Bedzie kolejna dystrybucja i trzeba bedzie
> tworzyc kolejna wersje pliku z grupami?

Ale po co w definicjach grup chcesz mieć wersję? Potrzebna jest
jedynie nazwa. Wybieraczka dostanie nr wersji z nagłówka pakietu 
i sama się zorientuje, że ma kilka takich samych pakietów.    


> Wlasnie wpadlem, ze mozna zrobic skrypt, ktory z pliku wzorca wezmie nazwy
> i uzupelni je o wersje. A jezeli bedzie mial dostepne dwie wersje pakietu,
> to obie dolaczy. Takze ok. Napisze to z wersjami

Na dobrą sprawę to należałoby wziąć jeszcze pod uwagę wersję
pakietu. Chyba najlepiej nie kombinować i brać tę największą, 
a resztę odrzucać.


Na pierwsz rzut oka, to coś za bardzo kombinujesz ;-) Widzę to tak, że
wybieraczka: 
- bierze listę dostępnych pakietów 
- wyświetla ją w postaci: %{name} %{version} 
- nie dopuszcza do umieszczenia na liście ,,instalacyjnej'' 2
  jednakowych nazw.
 
Grupy to rzecz wtórna, np. jeżeli apache będzie w grupie WWW, to
wystarczy wziąć wszystkich apaczów i ich tam pokazać.       


W zależności od sposobu realizacji zaznaczeń w rpmenie(nie do końca
wiem, jak to jest zrobione): 
- lista ,,instalacyjna'' będzie musiała zawierać nr wersji
- jeżeli zaznaczamy pakiet przez wskazanie *rekordu*(np. przez indeks
  lub wskaźnik), to nr wersji nie będzie potrzebny.   

Coś pominąłem?

    
> > No, ale z tym będzie trochę więcej pracy, także IMHO można sobie to
> > na razie darować :-)   
> > 
> > Trzeba będzie poprawić pod tym względem gentocf.   
> 
> I gdzies trzeba trzymac ta wersje pakietu. Najwygodniej byloby
> zmodyfikowac TPkgInfo i w getPackagesList od razu pobierac wersje z
> naglowka. Po co niepotrzebnie wplatywac rpmlib'a tam gdzie to nie jest
> potrzebne.

Jeżeli dobrze się domyślam(niechęć do wołania headerGetEntry()) to: 

Nagłówek jest już w strukturze, także, jeżeli zaznaczanie pakietu
odbywa się poprzez wskazanie rekordu, to IMHO lepiej opakować funkcję
headerGetEntry() w coś takiego: rpmpkg_header_entry_get(pkg*, entry).
Zaoszczędzimy te parę kB(co prawda, przy paru MB wymaganych przez 
rpmlib, ale zawsze :-).  


Tak na marginesie, to trzymanie nagłówków tych >500 pakietów będzie b.
pamięciożerne. Niestety nie ma sposobu obejścia tego, rpmlib wymaga
podania listy nagłówków przy wynajdowaniu zależności(lista siedzi w
pamięci). Może jest ktoś chętny do poprawienia rpmliba? :-)

Paweł  

 




Więcej informacji o liście dyskusyjnej pld-installer