[FreeBSD] a ports-rol
Miklos Niedermayer
mico at bsd.hu
2001. Jan. 10., Sze, 21:01:18 CET
Hello,
( > Adam Szilveszter)
> Igen, nem tokeletes. Pl nem lehet make deinstallt hasznalni, ha mar
> frissult a verzio. Akkor csak pkg_delete marad. Azonkivul van amikor akkor
> se telepiti az ujabb fuggoseget, ha tenyleg kellene, mert a regi valtoztnak
> is ugyanaz volt a neve. (pl mert a FreeBSD rtld-je nem ismeri konyvtaraknal
> az un mikro verziot ezert ha az 0.0.3 helyett most mar a 0.0.6 kellene,
> neki az mindegy. A port vezioszama emelkedik, tehat ha onnan teszed fel
> frissen, nem lesz baj. De ha mar fenn van a regi es arra varsz, hogy
> felismerje hogy a fuggoseget frissiteni kene, hat hiaba varsz:-(
Hadd szóljak közbe. A Porters' Handbook és/vagy a -ports lista
leírja, hogy nem lenne valami kellemes dolog, ha gtk-1.2.7 vs. gtk-1.2.8
dolgokkal vesződnénk (lásd a fokozottan kellemes Linux-disztribúciókat).
Pl. a usernek fenn van mondjuk n darab alkalmazása még tavalyról, amit még
a 4.5.6 library verzióval rakott fel, most viszont cvsuppolta a ports
treet, és az egyik új alkalmazás, amit használni szeretne, már a 4.5.7
verziót igényelné (mármint a port Makefile-jában 4.5.7 lenne megadva
függőségnek). Hát bizony érdekes dolgot tudnának történni. Éppen ezért
library függőséget soha nem adunk meg úgy, hogy 1.2.3, vagy ilyesmi.
Ennyit mondunk:
LIB_DEPENDS=
jpeg.9:${PORTSDIR}/graphics/jpeg:install
Így ha az ldconfig -r szerint van jpeg.9, akkor kuss neki. De ajánlott még a
.9-et is lehagyni, ha nem muszáj. Mindegy, hogy ez x.y verziójú libjpeg,
vagy más... működnie kell. Annak, hogy jpeg.9 vagy jpeg.8 vagy jpeg.x,
elégnek kell lennie ahhoz, hogy a port leforduljon vele és működjön.
Ezért is _sokkal_ kellemesebb portsból telepíteni, mint .tgz csomagból:
ports-nál a fent említett függőségi rendszer működik, míg make package-nél
a bináris csomagba nem az kerül be, hogy kell neki jpeg.x library, hanem
függőségi csomagként tünteti fel azt a package verziót, ami az adott jpeg.x
libraryt a make package idején nyújtotta. Pl. jpeg-x.y.z., és itt már
tényleg bonyodalmak lehetnek.
Namost hogy a GTK és egyéb GNU-közeli (ehehe, portolók kedvencei) dolgok
miért működnek olyan bonyolultan, ahogy, _az egy másik dolog_. Pl. hogy
valamelyik GNU-közeli program saját configure scriptje elkezdené megnézni,
hogy van-e x.y.z verziójú valami library. Suxx!
> De van jobb is: Most mar vannak olyan portok, amik ha van, hasznaljak pl a
> GNOME vagy a KDE konyvtarakat, vagy eppen az ESD-t. De van amikor en nem
> akarom:-) es akkor csak a Makefilek durva atfaragasaval lehet
> megakadalyozni,
Hmm, vagy a make parancssorában, nem?
> hany port is van pontosan egy egy BSD variansnal... pl a FreeBSD 4100
> feletti portja kozul nem jelentektelen reszt tesz ki a fel CPAN:-) vagyis
> egy csomo Perl modul. Amellett pl ami OpenBSD-n csak kulon flavor lenne, az
> FreeBSD-n rendszerint kulon port, novelve az osszletszamot, de nem a
> rendelkezesre allo sw mennyiseget. Pl w3m es w3m-ssl nalunk kulon port,
Ettől függetlenül FreeBSD-n naponta 6-8-10 új portot commitelnek.
Elég szép növekedés. A 4100-at tudtommal már jól elhagytuk, 4500-ról van
most szó. (nem is olyan rég volt, amikor átléptük a 3000-t, ugye?)
> statisztikazni, hogy pl a portok kozul mennyi az, ami le se fordul, vagy
> elerhetetlen stb. Ilyen azonban sajnos csak FreeBSD-n van, itt napra keszen
> lehet tudni, hogy melyik distfile elerhetetlen es azt is, hogy kb 600 port
> nem fordul le:-( a tobbi projekt eroforrasai ehhez kicsik.)
Hát itt sincs erőforrás-túltengés. A distfiles-hibákat többnyire hamar
észreveszik, de külső emberek, és send-pr-elnek. A naprakészség azért sem
reális, mivel több napig (mostanában kb 4) eltart az összes port
lefordítása (pedig vannak rá jó gépek). Most az ARM, Sparc, stb. gcc-k és
egyebek megjelenése még plusz gondokat is okoz a fejeseknek. Ha jól csal
az eszem, havonta jön egy levél a nyitott PR-ekről, 2 hetente Wolframtól
egy összesítés, hogy milyen új portok kerültek be vagy lettek upgradelve,
és mintha havonta jönne az unfetchable distfiles is. (de lehet, hogy a
PR-es dolog gyakrabban.)
A 600 port le nem fordulását pedig nem kell olyan komolyan venni,
mindennapos, rövid, átmeneti problémákról van szó, amiket a legtöbb
esetben hamar fixálnak. Megjavítják az egyiket, elromlik a másik,
megjavítják azt, elromlik a harmadik, stb.
--
______ o _. __
/ / / (_(_(__(_) @ bsd.hu
További információk a(z) BSD levelezőlistáról