Ciao tutti, sto tentando di pacchettizzare un mio programma scritto in python in rpm , é tutta mattina che tento di scrivere lo .spec .
la difficoltá é che di solito mi basta metter dentro make e "make install Builddiir etc etc" nelle sezioni di build e ïntall e ci pensa il make a fare il lavoro sporco. in questo caso peró io ho nel mio tar.gz tutti i files necessari, e vorrei che semplicemente il tutto venga copiato nella dir /var/lib/myProgect
ho provato sia a fare cp * /var/lib/myProgect sia a farlo copiare nel dir di BUILD, sia varie altre prove ma comunque non va nulla nell'rpm, ovviamente inserito la lista dei files in %files
qualcuno é in grado di tirarmi fuori uno spec file di esempio dal cilindro? (mi bastano le due sezioni %build e %install)
gracias! =) A.
2011/6/16 Alessandro Lorenzi alessandro.lorenzi@gmail.com:
in questo caso peró io ho nel mio tar.gz tutti i files necessari, e vorrei che semplicemente il tutto venga copiato nella dir /var/lib/myProgect
sei sicuro che vada in /var/lib? di solito vanno in python_sitelib o python_sitearch, vedi: http://fedoraproject.org/wiki/Packaging:Python
ed eventualmente in /usr/bin quelli eseguibili
ho provato sia a fare cp * /var/lib/myProgect sia a farlo copiare nel dir di BUILD, sia varie altre prove ma comunque non va nulla nell'rpm, ovviamente inserito la lista dei files in %files
Allora ci sei vicino :) i files che rpm pacchettizza vanno messi nella buldroot (non nella buiddir, che è quella dove avviene la build, quando esiste ovviamente...) quindi basta creare la directory di destinazione e copiarci tutti i files, qualcosa di questo genere:
%install rm -rf %{buildroot} install -d %{buildroot}/directory/da/usare cp -rp * %{buildroot}/directory/da/usare
Ti consiglio di dare anche una occhiata al metodo "standard" di distribuzione dei progetti python: http://docs.python.org/distutils/index.html
HTH
G.
2011/6/16 Gianluca Sforna giallu@gmail.com:
2011/6/16 Alessandro Lorenzi alessandro.lorenzi@gmail.com:
in questo caso peró io ho nel mio tar.gz tutti i files necessari, e vorrei che semplicemente il tutto venga copiato nella dir /var/lib/myProgect
sei sicuro che vada in /var/lib? di solito vanno in python_sitelib o python_sitearch, vedi: http://fedoraproject.org/wiki/Packaging:Python
ed eventualmente in /usr/bin quelli eseguibili
ho provato sia a fare cp * /var/lib/myProgect sia a farlo copiare nel dir di BUILD, sia varie altre prove ma comunque non va nulla nell'rpm, ovviamente inserito la lista dei files in %files
Allora ci sei vicino :) i files che rpm pacchettizza vanno messi nella buldroot (non nella buiddir, che è quella dove avviene la build, quando esiste ovviamente...) quindi basta creare la directory di destinazione e copiarci tutti i files, qualcosa di questo genere:
%install rm -rf %{buildroot} install -d %{buildroot}/directory/da/usare cp -rp * %{buildroot}/directory/da/usare
Ti consiglio di dare anche una occhiata al metodo "standard" di distribuzione dei progetti python: http://docs.python.org/distutils/index.html
HTH
G.
Ciao Alessandro,
puoi anche provare a installare il pacchetto "rpmdevtools" e generare uno spec file di esempio col comando "rpmdev-newspec" con l'opzione "-t python".
Il 16 giugno 2011 12:05, Gianluca Sforna giallu@gmail.com ha scritto:
2011/6/16 Alessandro Lorenzi alessandro.lorenzi@gmail.com:
in questo caso peró io ho nel mio tar.gz tutti i files necessari, e vorrei che semplicemente il tutto venga copiato nella dir /var/lib/myProgect
sei sicuro che vada in /var/lib? di solito vanno in python_sitelib o python_sitearch, vedi: http://fedoraproject.org/wiki/Packaging:Python
dovrebbe essere una cosa a supporto a libvirt e volevo metterglielo li vicino ( /var/lib/libvirtd )
ed eventualmente in /usr/bin quelli eseguibili
yes, comunque poi riorganizzo meglio, adesso vorrei solo capire come fare le cose ;)
ho provato sia a fare cp * /var/lib/myProgect sia a farlo copiare nel dir di BUILD, sia varie altre prove ma comunque non va nulla nell'rpm, ovviamente inserito la lista dei files in %files
Allora ci sei vicino :) i files che rpm pacchettizza vanno messi nella buldroot (non nella buiddir, che è quella dove avviene la build, quando esiste ovviamente...) quindi basta creare la directory di destinazione e copiarci tutti i files, qualcosa di questo genere:
%install rm -rf %{buildroot} install -d %{buildroot}/directory/da/usare cp -rp * %{buildroot}/directory/da/usare
grazie mille funzionicchia :) che differenza c'é tra il %{buildroot} e $RPM_BUILD_ROOT (funziona solo con il secondo)
inoltre mi ha *inventato* lui una dipendenza, liblua e continua a rompere anche se ho installato il lua-devel. hai iedea da dove possa venir fuori secondo te sta cosa?
Ti consiglio di dare anche una occhiata al metodo "standard" di distribuzione dei progetti python: http://docs.python.org/distutils/index.html
oooookkey :)
2011/6/16 Alessandro Lorenzi alessandro.lorenzi@gmail.com:
grazie mille funzionicchia :) che differenza c'é tra il %{buildroot} e $RPM_BUILD_ROOT (funziona solo con il secondo)
Che io sappia non ce n'è http://fedoraproject.org/wiki/Packaging/Guidelines#Using_.25.7Bbuildroot.7D_...
inoltre mi ha *inventato* lui una dipendenza, liblua e continua a rompere anche se ho installato il lua-devel. hai iedea da dove possa venir fuori secondo te sta cosa?
Una dipendeza del pacchetto binario risultante? In tal caso "yum install tuopacchetto.rpm" dovrebbe installare anche il pacchetto che soddisfa la dipendenza (penso sia lua, non lua-devel)
Poi bisogna vedere se veramente la dipendenza da liblua è corretta verificando se qualcosa nel codice arriva ad utilizzarlo, magari attraverso una dipendenza intermedia (cioè tu importi qualcosa che dipende da lua).
no, non avevo segnalato nessuna dipendenza... comunque alla fine una botta di qua e una di la' cel' ho fatta... anche se e' molto grezzo e migliorabile.
grazie :-)
ciao Alessandro
Il 16 giugno 2011 20:15, Gianluca Sforna giallu@gmail.com ha scritto:
2011/6/16 Alessandro Lorenzi alessandro.lorenzi@gmail.com:
grazie mille funzionicchia :) che differenza c'é tra il %{buildroot} e $RPM_BUILD_ROOT (funziona solo con il secondo)
Che io sappia non ce n'è http://fedoraproject.org/wiki/Packaging/Guidelines#Using_.25.7Bbuildroot.7D_...
inoltre mi ha *inventato* lui una dipendenza, liblua e continua a rompere anche se ho installato il lua-devel. hai iedea da dove possa venir fuori secondo te sta cosa?
Una dipendeza del pacchetto binario risultante? In tal caso "yum install tuopacchetto.rpm" dovrebbe installare anche il pacchetto che soddisfa la dipendenza (penso sia lua, non lua-devel)
Poi bisogna vedere se veramente la dipendenza da liblua è corretta verificando se qualcosa nel codice arriva ad utilizzarlo, magari attraverso una dipendenza intermedia (cioè tu importi qualcosa che dipende da lua).
-- Gianluca Sforna
http://morefedora.blogspot.com http://identi.ca/giallu - http://twitter.com/giallu _______________________________________________ it-users mailing list it-users@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/it-users
it-users@lists.fedoraproject.org