[PKGBUILD] Creation d'un paquet pour pdfrw
[PKGBUILD] Creation d'un paquet pour pdfrw
Bonjour,
J'aimerais utiliser cet outil http://code.google.com/p/pdfrw/, mais apparemment personne n'a encore fait un paquet pour celui-ci.
Si quelqu'un pouvait le faire ce serait sympa, sinon je vais essayer de le faire. Mais il va falloir m'expliquer comment on fait un paquet d'ajout de fonctionnalités à python. Car je n'y connais absolument rien sur la manière dont celui-ci est implémenter sur nos machines. Et cela a l'aire un peu complexe.
En fait, tout ceci c'est pour faire fonctionner correctement le logiciel mat.
Merci d'avance.
J'aimerais utiliser cet outil http://code.google.com/p/pdfrw/, mais apparemment personne n'a encore fait un paquet pour celui-ci.
Si quelqu'un pouvait le faire ce serait sympa, sinon je vais essayer de le faire. Mais il va falloir m'expliquer comment on fait un paquet d'ajout de fonctionnalités à python. Car je n'y connais absolument rien sur la manière dont celui-ci est implémenter sur nos machines. Et cela a l'aire un peu complexe.
En fait, tout ceci c'est pour faire fonctionner correctement le logiciel mat.
Merci d'avance.
Dernière modification par tuxce le mar. 04 sept. 2012, 10:41, modifié 1 fois.
Raison : mettre des crochets juste pour mettre des crochets .... bof !
Raison : mettre des crochets juste pour mettre des crochets .... bof !
x86_64 | KDE | Clavier Bépo
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
Salut,
Le paquet abs propose des prototypes de PKGBUILD, dont python et svn pour récupérer le code, si tu veux t'y frotter, au moins un peu (normalement avec cette base tout atterira dans la bonne arborescence). Pour python, il suffit de savoir si c'est du 2 (python2 sous Arch) ou 3 (python) et rajouter les dépendances appropriées (plus ou moins simple si le code source a un README, INSTALL ou autre truc dans le genre qui détaille l'installation). Sinon, moi, ou une âme charitable désireuse de faire le build bien sûr, y jetera un oeil (on t'aidera à corriger évidemment si tu te lances).
PKGBUILD
Makepkg
Standard_paquetage
Le paquet abs propose des prototypes de PKGBUILD, dont python et svn pour récupérer le code, si tu veux t'y frotter, au moins un peu (normalement avec cette base tout atterira dans la bonne arborescence). Pour python, il suffit de savoir si c'est du 2 (python2 sous Arch) ou 3 (python) et rajouter les dépendances appropriées (plus ou moins simple si le code source a un README, INSTALL ou autre truc dans le genre qui détaille l'installation). Sinon, moi, ou une âme charitable désireuse de faire le build bien sûr, y jetera un oeil (on t'aidera à corriger évidemment si tu te lances).
PKGBUILD
Makepkg
Standard_paquetage
«The following statement is not true. The previous statement is true.»
Re: [Creation] d'un paquet pour pdfrw
C'est des libraires pour python2.5 donc du 2.
En fait il n'y a que les sources que l'on peut obtenir a partir d'un dépôt svn.
Je sens que cela va être très facile du coup
Je suis désolé, mais cela dépasse mes simples compétences.
En fait il n'y a que les sources que l'on peut obtenir a partir d'un dépôt svn.
Je sens que cela va être très facile du coup
Je suis désolé, mais cela dépasse mes simples compétences.
x86_64 | KDE | Clavier Bépo
Re: [Creation] d'un paquet pour pdfrw
Salut, bon je ne sais pas trop ce que ça donne sachant qu'il n'y a pas de
Quand je fais
Je te donne le pkgbuild que je viens de faire :
Edit : modifications après les remarques de FoolEcho plus bas.
Ce n'est peut être pas parfait (cf. les cp -a), donc si quelqu'un (FoolEcho ?) passe par là et veux bien jeter un oeil
setup.py
, mais je pense que c'est bon.Quand je fais
import pdfrw
ça fonctionne.Je te donne le pkgbuild que je viens de faire :
Edit : modifications après les remarques de FoolEcho plus bas.
Code : Tout sélectionner
pkgname=python2-pdfrw-svn
pkgver=latest
pkgrel=1
pkgdesc="Python library to read and write PDF files"
arch=('any')
url="http://pdfrw.googlecode.com/"
license=('MIT')
makedepends=('subversion')
_svntrunk="http://pdfrw.googlecode.com/svn/trunk/"
_svnmod=pdfrw
build() {
cd "$srcdir"
msg "Connecting to SVN server...."
if [[ -d "$_svnmod/.svn" ]]; then
(cd "$_svnmod" && svn up -r "$pkgver")
else
svn co "$_svntrunk" --config-dir ./ -r "$pkgver" "$_svnmod"
fi
msg "SVN checkout done or server timeout"
msg "Starting build..."
}
package() {
cd "$srcdir/"
_ver=$(python2 -V 2>&1 | sed 's/.* //; s/\..$//')
mkdir -p "$pkgdir"/usr/lib/python"${_ver}"/site-packages/
mkdir p "$pkgdir"/usr/share/licenses/"$pkgname"/
cp -a pdfrw/pdfrw "$pkgdir"/usr/lib/python"${_ver}"/site-packages
cp -a pdfrw/{examples,tests} "$pkgdir"/usr/lib/python"${_ver}"/site-packages/pdfrw
cp -a pdfrw/LICENSE.txt "$pkgdir"/usr/share/licenses/"$pkgname"/
}
Ce n'est peut être pas parfait (cf. les cp -a), donc si quelqu'un (FoolEcho ?) passe par là et veux bien jeter un oeil
Dernière modification par MrMen le mar. 31 juil. 2012, 22:44, modifié 2 fois.
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
En effet, c'est "juste" une bibliothèque (bon après, python et moi...).Mr_Men a écrit :Salut, bon je ne sais pas trop ce que ça donne sachant qu'il n'y a pas de setup.py, mais je pense que c'est bon.
Quand je fais import pdfrw ça fonctionne.
Côté pinaillage:
-pkgdesc à remplir
-arch: 'any' car c'est du python (indépendant de l'architecture)
-la licence est 'MIT' dans le source et il y a un LICENSE.txt à rajouter dans $pkgdir/usr/share/licenses/$pkgname/
-rajouter python2 comme dépendance ? (à supposer qu'il n'y ait rien d'autre, ça manque de doc)
Pour ce qui est du cp, aucune importance (il y a les adeptes du install), normalement le paquet a les bons droits.
Vu qu'il n'y a effectivement pas de setup, déterminer la version du répertoire /usr/lib/python2.7/site-packages plutôt avec un truc plus portable du genre:
Code : Tout sélectionner
_ver=`python2 -V 2>&1|cut -d' ' -f 2|cut -d'.' -f1,2`
#d'où: /usr/lib/python${_ver}/site-packages
«The following statement is not true. The previous statement is true.»
Re: [Creation] d'un paquet pour pdfrw
Roh mais le boulet !! j'ai pas pensé à faire ça pour python. Je faisais :
Merci pour l'idée (la chaleur ça me réussi pas).
Pour les petits plus à remplir, j'attendais d'avoir ton avis sur le reste. J'avais encore oublié que pour python c'était any l'architecture…
En tout cas merci pour le coup d'oeil, je vais allez éditer le post du haut.
J'ai quand même une petite question :
je crois savoir que tu préfères
edit : après recherche, une version de pdfrw est comprise dans python2-rst2pdf, un peu gros mais il est dedans
Code : Tout sélectionner
python2 --version | sed 's/.* //; s/\..$//'
Pour les petits plus à remplir, j'attendais d'avoir ton avis sur le reste. J'avais encore oublié que pour python c'était any l'architecture…
En tout cas merci pour le coup d'oeil, je vais allez éditer le post du haut.
J'ai quand même une petite question :
je crois savoir que tu préfères
install
à cp
, mais je n'ai pas trop réussi (je pige pas tout dans le man). Je voulais copier tous le contenu d'un répertoire (y compris répertoire) dans un autre, tu ferais comment ?edit : après recherche, une version de pdfrw est comprise dans python2-rst2pdf, un peu gros mais il est dedans
Re: [Creation] d'un paquet pour pdfrw
Tu es sûr qu'il est bien dedans? Car mat ne le voie pas lui. bizarre
Code d'erreur de mat:
Code d'erreur de mat:
Code : Tout sélectionner
Unable to import python-pdfrw: no PDf suppor
x86_64 | KDE | Clavier Bépo
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
@Mr_Men: bien vu.
@Distag: tu as essayé avec python2-rst2pdf ?
Sinon pour info:
Mais cp est plus adapté ici, puisqu'il y a copie récursive sans se prendre plus la tête (avec install, on ne peut pas directement copier récursivement des répertoires et leur contenu, sauf erreur de ma part).
@Distag: tu as essayé avec python2-rst2pdf ?
Sinon pour info:
Y a une redirection à faire sinon on peut rien hâcher (pas compris pourquoi, constaté et vu sur le net).Mr_Men a écrit :Roh mais le boulet !! j'ai pas pensé à faire ça pour python. Je faisais :Code : Tout sélectionner
python2 --version | sed 's/.* //; s/\..$//'
Je ne préfère pas (d'autant que les formes source/destination varient selon les options, donc le man n'est pas du luxe ), c'est juste une question d'habitude pour les PKGBUILDs (l'intérêt d'install est de combiner mkdir/cp/chmod/chown -- ceci étant on a pas forcément besoin):Mr_Men a écrit :je crois savoir que tu préfères install à cp, mais je n'ai pas trop réussi (je pige pas tout dans le man). Je voulais copier tous le contenu d'un répertoire (y compris répertoire) dans un autre, tu ferais comment ?
donnerait:Mr_Men a écrit :Code : Tout sélectionner
mkdir -p "$pkgdir"/usr/lib/python"${_ver}"/site-packages/ mkdir p "$pkgdir"/usr/share/licenses/"$pkgname"/ cp -a pdfrw/pdfrw "$pkgdir"/usr/lib/python"${_ver}"/site-packages cp -a pdfrw/{examples,tests} "$pkgdir"/usr/lib/python"${_ver}"/site-packages/pdfrw cp -a pdfrw/LICENSE.txt "$pkgdir"/usr/share/licenses/"$pkgname"/
Code : Tout sélectionner
install -dm755 ${pkgdir}/usr/{lib/python${_ver}/site-packages/,share/licenses/${pkgname}/}
install -D -m644 pdfrw/LICENSE.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
install -dm755 ${pkgdir}/usr/lib/python${_ver}/site-packages/pdfrw
install -D -m644 pdfrw/pdfrw/* ${pkgdir}/usr/lib/python${_ver}/site-packages/pdfrw/
#Et je zappe volontairement exemples et tests :-P
«The following statement is not true. The previous statement is true.»
Re: [Creation] d'un paquet pour pdfrw
C'est ce que je me disais : la copier récursive c'est pas top avec
install
. Pour python, j'en avais déjà eu besoin un jour et j'avais eu l'idée mais là, le néant hier En tout cas merci pour les infos FoolEcho.Re: [Creation] d'un paquet pour pdfrw
Oui, et justement il est là le problème, dans le dernier mis à jour de mat cela marchait parfaitement avec python2-rst2pdf. Mais depuis il y a eu une mise à jour, et le temps que je voie que le programme renvoyai cette erreur (car celui-ci tourne automatiquement à chaque démarrage) ce logiciel de suppression de metadata ne prenait plus en compte les fichiers au forma PDF. Et m'affichait cette jolie erreur:FoolEcho a écrit : @Distag: tu as essayé avec python2-rst2pdf ?
Code : Tout sélectionner
Unable to import python-pdfrw: no PDf support
x86_64 | KDE | Clavier Bépo
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
Un bug de mat alors, non ? (ou une option d'installation ajoutée/enlevée ?)
Quand tu recompiles la version d'avant, ça fonctionne, je présume ?
Quand tu recompiles la version d'avant, ça fonctionne, je présume ?
«The following statement is not true. The previous statement is true.»
Re: [Creation] d'un paquet pour pdfrw
Elle fonctionnait tout du moins. Je ne l'ai pas recompilé depuis la nouvelle version.
De plus, je ne suis pas un adepte de la compilation direct par les sources, j'ai trop peur d'installer des trucs à des endroits dont je ne comprends pas le fonctionnement sur mon OS. D'où ma vénération pour les mainteneurs des PKGBUILD.
Où trouve-t-on déjà les anciennes versions des paquets?
De plus, je ne suis pas un adepte de la compilation direct par les sources, j'ai trop peur d'installer des trucs à des endroits dont je ne comprends pas le fonctionnement sur mon OS. D'où ma vénération pour les mainteneurs des PKGBUILD.
Où trouve-t-on déjà les anciennes versions des paquets?
x86_64 | KDE | Clavier Bépo
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
C'était sous-entendu que tu passes par le PKGBUILD (le jour où tu m'entendras conseiller une compilation sous passer par makepkg ). Il n'y a pas d'archives pour les paquets d'AUR, à moins que tu n'aies placé le paquet dans /var/cache/pacman/pkg (ce qui soit-dit en passant peut-être une bonne idée en plaçant dans /etc/yaourtc, EXPORT=2).
Essaie en modifiant simplement pkgver en 0.3.1 et en adaptant md5sums. Mais c'est juste pour retrouver un mat fonctionnel, à priori. Pour le reste, je penche pour un bug.
Essaie en modifiant simplement pkgver en 0.3.1 et en adaptant md5sums. Mais c'est juste pour retrouver un mat fonctionnel, à priori. Pour le reste, je penche pour un bug.
«The following statement is not true. The previous statement is true.»
Re: [Creation] d'un paquet pour pdfrw
Apparemment, le mainteneur a abandonné le paquet mat faute de ne pas savoir comment le debugger. Je vais y jeter un coup d’œil pour voir comment résoudre le problème. Mais je vais sûrement avoir besoin d'aide.
[EDIT] Apparemment, le problème ne vient pas de la version de mat, car je viens d'essayer la précédente version et j'ai le même problème de pdfrw que je n'avais pas avant.
C'est tout comme si mat se plantait et allait chercher les lib python à la place de python2. Y a-t-il eu un changement dans l'organisation de python depuis 6 dernier mois sous arch ?
[EDIT] Apparemment, le problème ne vient pas de la version de mat, car je viens d'essayer la précédente version et j'ai le même problème de pdfrw que je n'avais pas avant.
C'est tout comme si mat se plantait et allait chercher les lib python à la place de python2. Y a-t-il eu un changement dans l'organisation de python depuis 6 dernier mois sous arch ?
x86_64 | KDE | Clavier Bépo
- FoolEcho
- Maître du Kyudo
- Messages : 10707
- Inscription : dim. 15 août 2010, 11:48
- Localisation : Basse-Normandie
Re: [Creation] d'un paquet pour pdfrw
Pas à ma connaissance. C'est bien plus vieux (quand python est devenu python2 et python3, python ).Distag a écrit :C'est tout comme si mat se plantait et allait chercher les lib python à la place de python2. Y a-t-il eu un changement dans l'organisation de python depuis 6 dernier mois sous arch ?
En ce qui me concerne, je ne connais pas python.Distag a écrit :Mais je vais sûrement avoir besoin d'aide.
«The following statement is not true. The previous statement is true.»