Dan Lukes wrote:
Martin Baumann wrote:

A nebolo by perspektivnejsie zacat uz rovno s "portmaster"-om ??:)


Mozna, kdyby nekdo, kdo driv rutinne pouzival portupgrade a nyni (take pokud mozno uz nejakou dobu) pouziva portmaster dokazal shrnout hlavni rozdily mezi nimi (jiste budou mit obe metody jak nejake klady tak nejake zapory), bylo by pro takove rozhodnuti vic prostoru.

Ale ja o zadnem takovem "prebehlikovi" nevim.

Tak ja se tedy dobrovolne priznavam k tomu prebehnuti. S portupgradem jsem fungoval nekolik let, ale po case se z neho vyklubal spis muj nepritel, nez pritel. V novejsich verzich v nem jeho autor celkem zasadne zmenil chovani programu v nekterych oblastech a zacalo mi to delat v systemu vic skody, nez uzitku (napriklad to, ze nejprve nainstaloval vsechny defaultni zavislosti nejakeho baliku, pak teprve vyhodil OPTIONS dialog toho, co jsem chtel nainstalovat a zacal vsechny zavislosti kompilovat podruhe a zanechal tak v systemu i zavislosti, ktere nebyly vubec potreba). To je moje zkusenost stara neco pres rok. V te dobe jsem si rekl "tak a dost". Chvili jsem nektere slozitejsi porty (jako treba amavisd-new / spamassassin) musel instalovat / aktualizovat "po staru" pomoci `cd /usr/ports/kategorie/port && make install clean`, az jsem narazil na portmaster a vyzkousel ho. U portmasteru jsem zustal a priblizne rok pouzivam uz jenom portmaster.

Rozdilu mezi portupgradem a portmasterem je spoustu a tak je ani nebudu vsechny vyjmenovavat. Zakladnim rozdilem je to, ze pormaster je jen cisty sh scrip bez dalsich zavislosti a bez vyuzivani nejakych pomocnych databazi atd. Portupgrade je napsany v Ruby a pouziva pro svoje interni ucely DB. Citelnym rozdilem je take to, ze portmaster slouzi pouze na instalaci a aktualizaci z ports. Portupgrade oproti nemu umi instalovat i binarni balicky a ma i nastroje na odinstalaci, jako je treba zmineny pkg_deinstall. Tyto oblasti portmaster vubec neresi a ani to Doug Barton nema v planu resit. Pro nekoho je to mozna vazna prekazka, ale ja binarni balicky nijak casto neinstaluju, pouzivam je jen jako "zalohy" v pripade nepovedeneho upgrade nejakeho portu a tam si pak vystacim s prikazy pkg_add a pkg_delete, vic nepotrebuji. Stejne tak portmaster nema moznost definovat nejake akci pred / po instalaci portu (u portupgrade je to v pkgtools.conf, sekce BEFOREBUILD, BEFOREDEINSTALL, AFTERINSTALL). Pro me to opet neni zadny tragicky problem a nejdulezitejsi pro me je fakt, ze portmaster se zavislostma pracuje presne tak, jak ocekavam. Kdyz portmasterem davam neco nainstalovat, nejprve pro vsechny zavislosti spusti make config, pak zacne fetch na vsechny distfiles a teprve pak se zacina kompilovat. Za ten rok pouzivani portmasteru jsem narazil i na nejake bugy a vzdy je Doug Barton velmi svizne opravil (nebo implementoval nove featury atd.), coz se v pripade hlaseni nejakych problemu s portupgradem neda srovnavat - jeho autor byl sveho casu hodne vytizeny a nektere nove vznikle bugy pak radeji prohlasil za "feature" v zajmu zjednoduseni kodu portupgrade. Proto jsem s portupgradem skoncil a dal si vystacim s portmasterem. Pro nekoho muze byt prechod z portupgrade na portmaster jeste prekvapujici v tom, ze portmaster defaultne zacne vzdy aktualizovat zavislosti toho portu, ktery chceme zaktualizovat, zatim co portupgrade aktualizuje jenom zadany port a jeho zavislosti necha ve stare verzi.

Pokud by nekoho zajimaly jeste nejake veci ohledne prechodu z portupgrade na portmaster, rad se je pokusim zodpovedet.

Mirek
--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem