Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Scrivere Ebuild
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
dalamar
Tux's lil' helper
Tux's lil' helper


Joined: 13 Mar 2004
Posts: 110

PostPosted: Thu Aug 07, 2008 4:02 pm    Post subject: Scrivere Ebuild Reply with quote

Ciao,

Volevo provare a costruire un ebuild per un applicazione piuttosto complessa.
Piu' che costruire un ebuild si tratta di riadattare al mondo gentoo tutta la politica di compilazione dell'applicazione.

L'applicazione in oggetto e' systemimager: http://wiki.systemimager.org/

Secondo il mio modesto parere e' un'applicazione che potrebbe risultare molto utile nel mondo gentoo.
Se ne parla anche qui:

http://www.gentoo.org/news/en/gwn/20051205-newsletter.xml

Purtroppo l'approccio alla compilazione dell'applicazione e' piuttosto distante da qualsiasi distro a pacchetti e dal mondo gentoo.

Attualmente l'applicazione non ha grandi dipendenze, si scarica tutto il necessario per la creazione di un sistema autoinstallante (kernel e tool base) dal web, se li compila, li pacchettizza come piace a lei e infine compila i vari tool di gestione.

Nell'esercizio che volevo intraprendere mi sarebbe piaciuto scollegare completamente l'applicazione dallo scaricarsi i pacchetti dal web e compilarseli autonomamente. Volevo gestire il tutto tramite ebuild di gentoo.

La prima idea che mi e' venuta in mente e' quella di metterli come dipendenze dell'ebuild e poi pescare i file che mi servono dal filesystem di sistema e pacchettizzarli come vuole l'applicazione, ma questo approccio non mi piace molto in quanto installerebbe pacchetti nel sistema che in realta' potrebbero non servire al sistema stesso.

Allora ho pensato che sarebbe necessario che forzassi la compilazione di alcuni ebuild particolari al di fuori del sistema in una directory temporanea per poi pacchettizzarli nel modo che piace a systemimager.

Non sono un grosso esperto di "ebuild" ne' come comando ne' come file, quindi ho alcune domande per voi.

Secondo voi e' fattibile? (Come ?)

Ci sono altri .ebuild che fanno roba simile per prendere qualche spunto interessante?

TIA,
dalamar
Back to top
View user's profile Send private message
!equilibrium
Bodhisattva
Bodhisattva


Joined: 06 Jun 2004
Posts: 2109
Location: MI/BG/LC

PostPosted: Fri Aug 08, 2008 12:16 am    Post subject: Re: Scrivere Ebuild Reply with quote

dalamar wrote:
La prima idea che mi e' venuta in mente e' quella di metterli come dipendenze dell'ebuild e poi pescare i file che mi servono dal filesystem di sistema e pacchettizzarli come vuole l'applicazione, ma questo approccio non mi piace molto in quanto installerebbe pacchetti nel sistema che in realta' potrebbero non servire al sistema stesso.


hai un'idea altamente distorta di come sono e come funzionano le dipendenze sia in generale in linux che su gentoo.
direi che la prima cosa da fare è colmare questa lacuna, per poi passare a studiarti la documentazione ufficiale gentoo per gli ebuilds.

p.s.: comunque arrivi tardi, usa l'ebuild del bugzilla come spunto per migliorare il supporto gentoo.
_________________
Arch Tester for Gentoo/FreeBSD
Equilibrium's Universe

all my contents are released under the Creative Commons Licence by-nc-nd 2.5
Back to top
View user's profile Send private message
dalamar
Tux's lil' helper
Tux's lil' helper


Joined: 13 Mar 2004
Posts: 110

PostPosted: Fri Aug 08, 2008 7:41 am    Post subject: Re: Scrivere Ebuild Reply with quote

!equilibrium wrote:
dalamar wrote:
La prima idea che mi e' venuta in mente e' quella di metterli come dipendenze dell'ebuild e poi pescare i file che mi servono dal filesystem di sistema e pacchettizzarli come vuole l'applicazione, ma questo approccio non mi piace molto in quanto installerebbe pacchetti nel sistema che in realta' potrebbero non servire al sistema stesso.


hai un'idea altamente distorta di come sono e come funzionano le dipendenze sia in generale in linux che su gentoo.
direi che la prima cosa da fare è colmare questa lacuna, per poi passare a studiarti la documentazione ufficiale gentoo per gli ebuilds.


Spiegami in che modo la mia visione e' distorta, altrimenti non mi aiuti.
Avro' sicuramente delle lacune su la gestione delle dipendenze, su portage e su tutto il resto, altrimenti non avrei chiesto aiuto in un forum.
La documentazione ufficiale l'ho gia' letta, se c'e' qualche passaggio che dovrei riguardare dimmi quale, ma continuo a non capire dove hai visto tutta questa "distorsione" nella frase che hai citato dove riporto un metodo "sbagliato" (vedi: non mi piace molto) per fare cio' che voglio fare.

!equilibrium wrote:

p.s.: comunque arrivi tardi, usa l'ebuild del bugzilla come spunto per migliorare il supporto gentoo.


L'avevo gia' visto e lo usero' sicuramente come base per il mio ebuild, ma quello che volevo fare era qualcosa di leggermente piu' complesso di un "make".

Ciao e Grazie,
dalamar
Back to top
View user's profile Send private message
dalamar
Tux's lil' helper
Tux's lil' helper


Joined: 13 Mar 2004
Posts: 110

PostPosted: Fri Aug 08, 2008 9:02 am    Post subject: Re: Scrivere Ebuild Reply with quote

Forse non e' ben chiaro cosa fa attualmente Systemimager e cosa vorrei che facsse io, magari se lo spiego meglio mi potete indirizzare.

Allora SystemImager serve per installare uno o piu' sistemi remoti a partire da un'immagine del sistema creata preventivamente.

Per installare un sistema client, systemimager fa all'incirca le seguenti operazioni:

  • boot del sistema client da rete.
  • il client si collega al server ed installa un OS minimale.
  • l'OS minimale si scarica l'immagine del sistema e compie tutte le operazioni per installarla.


In fase di compilazione di systemimager, questo si crea i .tar che andranno a creare l'OS minimale.
Questi .tar contengono vari file che sono per lo piu' binari derivati dalla compilazioni di pacchetti base.

Attualmente systemimager si scarica i sorgenti di questi pacchetti, se li compila in una directory temporanea e infine crea il suo .tar .

A me piacerebbe che questa operazione di creazione del tar non partisse da sorgenti scaricati direttamente dal web, ma si appoggiasse a portage.

In pratica se nel tar ho bisogno del pacchetto X, cerco in portage l'ebuild stabile piu' recente, lo compilo e invece di metterlo nel sistema copio solamente i file che mi interessano nella directory temporanea di compilazione di systemimager cosi' che siano a disposizione per la creazione del .tar.

Volevo solamente sapere se esistono altri pacchetti che fanno piu' o meno questo, oppure se avete suggerimenti su come realizzare cio'.

Ciao e Grazie,
dalamar
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Fri Aug 08, 2008 4:16 pm    Post subject: Reply with quote

Sarà il caldo, sarà vedere gli altri che partono per le ferie ma mi pare che la lucidità, già scarsa normalmente se ne sia andata a farsi benedire del tutto. :twisted:
Forse avrò capito male ma stai tentando di integrare un altro strumento per fare quello che portage normalmente riesce a fare.
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
dalamar
Tux's lil' helper
Tux's lil' helper


Joined: 13 Mar 2004
Posts: 110

PostPosted: Fri Aug 08, 2008 6:32 pm    Post subject: Reply with quote

djinnZ wrote:
Sarà il caldo, sarà vedere gli altri che partono per le ferie ma mi pare che la lucidità, già scarsa normalmente se ne sia andata a farsi benedire del tutto. :twisted:
Forse avrò capito male ma stai tentando di integrare un altro strumento per fare quello che portage normalmente riesce a fare.


Sara' il caldo, sara' che conosco poco portage che sicuramente ha mille potenzialita' a me sconosciute, ma non credo che faccia quello che fa systemimager (installare un cluster con N-mila nodi in TOT minuti).

Quello che sto cercando di fare e' portare la compilazione di systemimager nel mondo gentoo implementando la migliore strategia di compilazione possibile.

Al momento ho pensato di implementare la compilazione tramite meta-pacchetto e poi compilare le varie parti tramite dipendenze dal metapacchetto.

Nel frattempo mi sto crogiolando nella documentazione gentoo.

Ciao e Grazie,
dalamar
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Fri Aug 08, 2008 7:24 pm    Post subject: Reply with quote

catalyst per creare immagini minime del sistema (meglio note come stage3), opzioni -B,-k e -K di emerge, impostare un binhost, variabili ambiente ROOT e CONFIG_ROOT etc. mi sembrano cose abbastanza normali (anche perchè uso da sempre un solo computer in chroot per compilare e verificare prima di aggiornare il server e gli altri, tranne poi piallare tutto al momento di aggiornare gli altri ma questa è un'altra tristissima storia, maledizione a chi si è inventato '"* *", che non possa mai trovare pace)
Altrimenti guarda questo http://www.gentoo.org/proj/it/base/embedded/handbook/?part=1 è pure tradotto in italiano.
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
dalamar
Tux's lil' helper
Tux's lil' helper


Joined: 13 Mar 2004
Posts: 110

PostPosted: Fri Aug 08, 2008 8:23 pm    Post subject: Reply with quote

djinnZ wrote:
catalyst per creare immagini minime del sistema (meglio note come stage3), opzioni -B,-k e -K di emerge, impostare un binhost, variabili ambiente ROOT e CONFIG_ROOT etc. mi sembrano cose abbastanza normali (anche perchè uso da sempre un solo computer in chroot per compilare e verificare prima di aggiornare il server e gli altri, tranne poi piallare tutto al momento di aggiornare gli altri ma questa è un'altra tristissima storia, maledizione a chi si è inventato '"* *", che non possa mai trovare pace)
Altrimenti guarda questo http://www.gentoo.org/proj/it/base/embedded/handbook/?part=1 è pure tradotto in italiano.


Grazie 1000.

Utilizzare catalyst mi sembra una soluzione molto elegante per fare quello che devo fare.
Sara' un po' piu' complicato del previsto, pero' un tentativo lo faccio sicuramente.

Ciao,
dalamar
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Sat Aug 09, 2008 9:49 am    Post subject: Reply with quote

ma esattamente cosa devi fare?
Se vuoi solo usare un computer per compilare per un altro paio ti basta usare gli stage 3 dai mirror (su funtoo.org il buon robbins li aggiorna piuttosto spesso) ed aggiornare.
Piuttosto dimenticavo una cosa: se crei un pacchetto con -B o -b i file di configurazione nel pacchetto sono quelli di default, se non usi il -b ma usi quickpkg dopo aver lanciato etc-update (ed eventualmente localepurge) o salta i file di configurazione o con l'apposita opzione ti prende i file di configurazione presenti sul sistema (questo può essere un vantaggio ma anche un rischio perchè potresti rendere disponibili nei pacchetti le password dell'account di posta o del proxy per esempio, vedi tu cosa ti torna più utile).
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum