[announce] packages.pld-linux.org /early alpha/

Radosław Kintzi rakin w pop.e-wro.pl
Czw, 6 Sty 2005, 11:51:41 CET


Radoslaw Zielinski napisał(a):

>Marcin Doliński <devel-pl w pld-dc.org> [05-01-2005 20:25]:
>  
>
>>On Wednesday 05 of January 2005 17:34, Radoslaw Zielinski wrote:
>>    
>>
>>>http://packages.whisky.one.pl:81/
>>>      
>>>
>[...]
>  
>
>>Podoba mi się Twoje podejście do sprawy i to, co zrobiłeś. Gdybyś był nowy, 
>>już bym postawił wniosek o rw ;-) Jeśli się nudzisz, możesz kiedyś pomyśleć o 
>>rozwinięciu tego do czegoś na kształt packages.debian.org. Ale nie spiesz 
>>się :-) I tak zrobiłeś już wiele.
>>    
>>
>
>Blah.  Nie nudzę się, po prostu nie mogłem się powstrzymać. ;-)
>
>Chciałbym to rozwinąć do packages.debian.org, ale potrzebowałbym
>wsparcia zaawansowanego bazodanowca (szkoda, że depesz sobie z PLD
>poszedł).  No i lepszy hosting, niż sam mogę dostarczyć.
>  
>
Jeżeli faktycznie chcemy mieć coś jak packages.debian.org, to proponuje 
zrobić bazę opartą o RDF. Nie wiem jak działa packages.debian.org ale o 
ile się nie mylę to rpmfind.net jest oparte właśnie o RDF (być może uda 
się wziąć od nich część automatyki - nie wiem nic o licencjach). W tym 
momencie nie mam czasu googlować, ale jestem pewnien, że już istnieje 
odpowiedni schemat RDF dla opisu pakietów. Jak nie to i tak będzie prost:

<rdf ns:rdf="http://www.w3c.org/......."
           ns:rpm="http://www.rpm.org/">
<rdf:Description 
        
rdf:about="ftp://ftp.pld-linux.org/dists/2.0/PLD/athlon/PLD/jakiś-pakiet-1.0-3.athlon.rpm">
   <rpm:name>jakiś-pakiet</rpm:name>
   <rpm:version>1.0</rpm:name>
   <rpm:release>3</rpm:name>
   <rpm:description>bla bla bla</rpm:description>
   ...

i tak dalej i tak dalej. Właściwości z ns:rpm najpewniej byłyby takie:
$ rpm -q --querytags | awk '{print tolower($1)}'

Nie trzeba tego trzymać w pliku tekstowym. Rdfland (http://librdf.org/) 
dostarcza świetną bibliotekę do parsowania, przechowywania, wyszukiwania 
w takich bazach wiedzy. Wspiera przechowywanie w plikach .db oraz w 
MySQLu (pewnie inne metody też).

Interfejs mógłby wyglądać tak:
1.  http://packages.pld-linux.org/?name=jakiś-pakiet&arch=athlon 
dostarczałby wynik w htmlu
2. http://packages.pld-linux.org/?name=jakiś-pakiet&arch=athlon&type=xml/rdf
zwracałby wynik w postaci pliku .rdf - niech sobie robią z nim co chcą.

Wyszukiwanie w bazach rdf można robić po wielu kryteriach. Nie będę się 
rozpisywał - podam linka: 
http://www.w3.org/Submission/2004/SUBM-RDQL-20040109/

Redland wspiera RDQL, a także inne metody.

Ja w perlu nie piszę. Mogę popracować nad tym w Pythonie (wiązania 
Redland działają wyśmienicie) z wykorzystaniem Webware for Python 
(http://www.webwareforpython.org/) - jest to świetny serwer dla 
aplikacyji w Pythonie, który można
podpiąć do każdego serwera httpd przez cgi, a do apacha istnieje 
specjalny moduł. Ktoś mógłby serwować taką aplikację?

Jeżeli jest zainteresowanie takim rozwiązaniem i jeśli zgłosi się jedna 
osoba chętna do współpracy w ciągu jednego/dwuch dni przygotuję 
narzędzia do generowania wiedzy (z rpmów albo na bazie indeksów poldka), 
oraz prosty interfejs.


Pozdrawiam
Radek





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