Igen, csak ez nem egy tipikus tanulo projekt, mert kozben a sajat rendszeredet meg - ha jol ertem - ezzel manageled.
Illetve, a problemam nem is feltetlen azzal van, hogy ez egy tanulo projekt, hanem hogy ebbe ugy vagtal bele, hogy egy csomo mindent nem gondoltal at, hogy annak hogyan is kellene mukodnie. Az ember nem ugy ul le forrasfat olvasni, mint egy sci-fi regenyt, hogy na akkor ezt most jol kiolvasom, hanem ugy, hogy celzottan keres dolgokra megoldast. Csomagkezelo irasaba emberek tobb evnyi uzemeltetesi es fejlesztoi tapasztalattal a hatuk mogott se nagyon mernek belekezdeni, mert nagyon sokretu, sokkomponensu problema, az egesznek baromira rugalmasnak es adaptivnak kell lennie, raadasul ket, egymastol kicsit tavol allo teruleten is profinak kell lenned (uzemeltetokent es fejlesztokent is jonak kell lenned ehhez). Kezdve attol, hogy nem minden projektnek van letoltes-listazo oldala, egeszen addig, hogy neha meg a letoltes maga is igen trukkos tud lenni (lasd pl. az Oracle JDK koruli hackokat a megfelelo AUR csomagban). Es ez meg csak a letoltes, a megszamolhatatlan mennyisegu (es minosegu) build rendszert fel sem emlitem, oke, hogy a projektek 80%-a az autotools-cmake parost hasznalja, de egyreszt az autotools-t nagyon sokszor rosszul hasznaljak, rosszul konfiguraljak (tehat nem jelent konstans minoseget a hasznalata), masfelol pedig a maradek 20-30% pedig total egyedi build rendszert hasznal, amiket eleve 2-3 nap kiismerni, es az egyik legtipikusabb hiba, hogy egyaltalan nem ismerik a DESTDIR-t, vagy ha ismerik is, nem hasznaljak konzisztensen. Eleg csak megnezni a Gentoo altal a projektekhez csomagolt patchek mennyiseget. Es ez mar egy sokkal jobb vilag, mert a forrasalapu disztrok miatt sok fejleszto vette a faradsagot, es atnezte es alkalmazta azokat a patcheket, amiket a Gentoo-hoz hasonlo projektek fejlesztoi bekuldtek. Ot-het evvel ezelott sokkal siralmasabb volt a helyzet.
Nekem tudod mi volt az elso harom tanuloprojektem? Az elso egy szamologep alkalmazas volt VB6-ban (igen, egy idoben kacerkodtam a desktop fejlesztessel), a masodik egy forummotor volt, a harmadik egy blogmotor. Ezek tanuloprojektek, mert egyszeru, konnyen atlathato szerkezetuk van, jol ismert es jol definialhato problemakkal szembesulunk, es elore lathato hibakba szaladunk bele. Egy csomagkezelo fejlesztoje azonban sokszor olyan problemakkal szembesul, amikkel elotte senki mas, olyan megoldasokat kell nullarol feltalalnia, amikhez kell az a sok eves tapasztalat, ami neked nincs meg.
Felre ne ertsd, en orulok, hogy egy ilyen projektbe vagtad a fejszedet, de amig nem erted meg, hogy ez nem a legjobb utja-modja egyaltalan a fejlesztesi metodologiak elsajatitasanak (foleg a bash nem igazan jo erre), addig nagyon nehez utad lesz, es nem mindig fogunk tudni segiteni. Folyamatosan azt latom, hogy amikor kerdessel fordulsz felenk, akkor nem is feltetlen az a baj, hogy nem tudod megoldani a problemat, hanem meg a kerdest sem erted, az ajanlott megoldast meg kevesbe. Ez abbol fakad, hogy ehhez a mufajhoz _kell_ a tapasztalat, muszaj, hogy lassal tobbszaz projektet forrasbol fordulni, lasd es ertsd, hogy a meglevo csomagkezelok mit miert csinalnak, tudjal kerdeseket megfogalmazni az egesz mukodesevel kapcsolatban.
Keress olyan projekteket, olyan programnyelveket, amik egyszerubbek, jobban attekinthetoek, tanuld meg a fejlesztest alaposan, menj el ket-harom evre Gentoo-t uzemeltetni, utana gyere vissza, es talalj fel egy uj csomagkezelot, ami lehet, hogy meg sikeres is lesz.
--
Blog | @hron84
Üzemeltető macik