Bonjour à tous,

Voilà le passage un peu intensif à la fac est fini.
Je reviens avec mon petit rpm.

Petit rappel :
PyPar2 (http://pypar2.silent-blade.org/) est une interface graphique (en python) à par2cmdline.
Il permet de créer des fichiers de redondances et ainsi que de vérifier l'intégrité de fichiers télécharger.

Je voudrais juste que les experts fassent une petite revue de mon paquet.

Vous trouverez le spec, le rpm et le srpm ici : http://carron.maxime.free.fr/fedora/rpms/

rpmlint me retourne une erreur et un warning, mais je ne pense pas que je puisse les enlever.
[builder@localhost SPECS]$ rpmlint ../RPMS/i386/pypar2-1.2-1.fc6.maxca.i386.rpm 
E: pypar2 no-binary
W: pypar2 symlink-should-be-relative /usr/bin/pypar2 /usr/share/pypar2/src/main.py
L'objectif c'est de le proposer sur extras.

TODO :
Il y a un truc qui cloche, c'est l'emplacement du raccourci dans le menu fedora.
Il existe un utilitaire complementaire pour integrer pypar2 dans nautilus (nautilus-action). Je ferai le rpm tres bientot.

Voilà, j'attends vos remarques.
Puis si qq'un veut etre mon sponsor...

A+
Salut,

- je suppose que ce programme ne consiste «qu'en» de scripts Python : dans ce cas, remplace ta clause «BuildArch: i386» par «BuildArch: noarch» ;
-pour ton problème de lien, peut-être que ceci :
ln -s ../..%{_datadir}/pypar2/src/main.py %{buildroot}%{_bindir}/pypar2
à la place de cela :
ln -s %{_datadir}/pypar2/src/main.py %{buildroot}%{_bindir}/pypar2
passera outre le warning.

P.S. : j'ai ces petits warnings quand j'appelle rpmlint sur ton RPM source :
- W: pypar2 no-%build-section
- W: pypar2 mixed-use-of-spaces-and-tabs (spaces: line 5, tab: line 19)
Des détails, mais à corriger 😉
Bon, j'ai plus que ces deux warnings :
[builder@localhost result]$ rpmlint pypar2-1.2-1.fc6.noarch.rpm 
W: pypar2 symlink-should-be-relative /usr/bin/pypar2 /usr/share/pypar2/src/main.py
[builder@localhost result]$ rpmlint pypar2-1.2-1.fc6.src.rpm 
W: pypar2 no-%build-section
Le second sur le src, c'est normal, il n'y a pas de make à faire, donc...
Je sais pas si je laisse une section build vide.

Le premier est selon moi normal aussi.
Il faut que mon lien symbolique soit placer à cette endroit.
Sinon laisse faire le Makefile, le lien (qui permet de lancer le programme se trouve dans %{buildroot}/%{datadir} et donc n'est pas accessible une fois installé.

Voilà...
j'ai mis à jour les nouveaux spec, rpm et srpm sur http://carron.maxime.free.fr/fedora/rpms/
alors,

* Remplace pypare2 par sa macros %{name}.
* Rajoute le timestamps INSTALL="install -p -D" à ton make install.
* > rm %{buildroot}%{_bindir}/pypar2
> ln -s %{_datadir}/pypar2/src/main.py %{buildroot}%{_bindir}/pypar2 --> il faut commenter les modifications que tu apportes pour une meilleur review.
ce lien est déjà généré par le Makefile, donc pourquoi tu l'écrase ?
* "--add-category X-Fedora \" ne doit pas être appliqué.
* Ton paquet ne contient pas de licence. c'est pas bon ça ! vois avec le dev de l'app pour c'la.
* Tu n'es pas obligé d'entrer tous les fichiers dans %files, le chemin suffit.
%{_datadir}/%{name}/pix
%{_datadir}/%{name}/res
%{_datadir}/%{name}/src --> ou juste %{_datadir}/%{name} suffit.
* Placer le disttag .fc6 n'est pas nécessaire, rpmlint l'ignore lors du check. Par contre si tu le laisse rpmlint pourrai se plaindre si t'a buildé pour une autre version (fc-devel par exemple).
* Rajoute un point pour "initiale rpm release.
Voilà, j'attends vos remarques.
Puis si qq'un veut etre mon sponsor...
Il faut faire ces preuves pour c'la 😉
Oui :
%{_datadir}/%{name}
Sinon aucun paquet ne sera le propriétaire de ce répertoire.

A+
Me revoilà!!

Voici donc le specfile : http://carron.maxime.free.fr/fedora/rpms/pypar2.spec.html
Les autres fichiers sont toujours dispo sur http://carron.maxime.free.fr/fedora/rpms/

Deux petites questions supplémentaires :
- pourquoi lorsque je fais un yum remove pypar2, par2cmdline n'est pas supprimé aussi?
- SmootherFrog m'a dit qu'il n'y avait pas de licence dans mon paquet. Indiquer la licence dans le specfile ne suffit pas? Il faut mettre le contrat de licence dans le paquet?

Merci
- SmootherFrog m'a dit qu'il n'y avait pas de licence dans mon paquet. Indiquer la licence dans le specfile ne suffit pas? Il faut mettre le contrat de licence dans le paquet?
oui dans %doc
ok.
Le probleme, c'est que le texte n'est pas dans le source.
J'ai demandé à l'auteur c'est bien de la GPLv2.

Mais comment ajouter un fichier exterrieur?
Source1 : monfichier

%doc %{SOURCE1}

monfichier doit se trouver dans ton dossier de sources.
Ouais Sereinity m'a dit ca aussi.

Je voyais un truc plus compliqué avec un wget dans une section %pre, puis unn ajout dans la section %file.
C'etait plus drole aussi.

Bon, je fais ça, puis ca devrait etre bon.

Merci à tous.
ouais Pingoomax ! lol
avec un
BuildRequires: Internet-Connection
BuildRequires: wget
^^
Ho putain, j'avais pas pensé à celle là!
J'ai encore du chemin à faire. 🙂

En tout cas ca fait des blagues à balancer sur la ml d'extras :-D
j'adore lire ce genre de post, je sens à quel point j'ai encore à apprendre pcq là je pige rien de ce que vous dites !! ^^ MDR

Faudrait que je m'y mette ... qd j'aurrai du temps ! :hammer:
Gné...
Ca marche pô 😢

J'ai donc ajouté :
Source1: http://www.gnu.org/licenses/gpl.txt

puis :
%doc doc/whatsnew.txt %{SOURCE1}
qui me rend l'erreur :
Erreur de construction de RPM:
    Ne peut mélanger un %doc spécial avec d'autre formes: /home/builder/rpmbuild/SOURCES/gpl.txt
J'ai donc mis ca en deux lignes :
%doc doc/whatsnew.txt
%doc %{SOURCE1}
Erreur de construction de RPM:
    Fichier non trouvé: /var/tmp/pypar2-1.2-1.fc6.maxca-root-builder/home/builder/rpmbuild/SOURCES/gpl.txt
Any idea?
mets ton fichier gpl.txt dans le dossier ~/rpmbuild/SOURCES
Source1: gpl.txt
ouais, ca, ca va marcher, mais normalement, je ne suis pas censé mettre l'adresse du fichier que j'ajoute?
Sinon comment les gars qui reconstruisent le paquet vont faire?