[PKGBUILD] TuxMathScrabble (demande)

Mise à jour / Création /debug de paquetages
Répondre
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

[PKGBUILD] TuxMathScrabble (demande)

Message par mélodie »

Bonjour,
Je viens de découvrir ce logiciel éducatif qui a l'air bien sympa, et très récent, TuxMathScrabble.

Comment faut-il faire pour créer un PKGBUILD, sachant que les dépendances sont Python, PyGame, SDL et wxPython, et que la procédure d'installation indiquée est:
chmod +x setup.py
./setup.py
/usr/local/bin/TuxMathScrabble
?

Merci par avance. (En fait si quelqu'un est motivé pour faire le PKGBUILD ça me ferait bien plaisir parce que je ne sais pas les faire). :)
Avatar de l’utilisateur
Skunnyk
Maître du Kyudo
Messages : 1137
Inscription : mer. 06 sept. 2006, 21:31
Localisation : IRC
Contact :

Message par Skunnyk »

Hello,

Tu peux regarder un PKGBUILD comme sonata,et prendre exemple dessus (l'installation est simple).
http://repos.archlinux.org/viewvc.cgi/s ... iew=markup
Bon courage :)
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

Skunnyk a écrit :Hello,

Tu peux regarder un PKGBUILD comme sonata,et prendre exemple dessus
install --root=$startdir/pkg
Et il l'installe où avec ça ? Pas sous /usr/bin ?
(si personne n'est motivé j'essaierai de regarder ce soir, mais ce n'est pas gagné).
Avatar de l’utilisateur
mimas
Elfe
Messages : 559
Inscription : sam. 30 sept. 2006, 22:30
Localisation : Toulouse

Message par mimas »

mélodie a écrit :Et il l'installe où avec ça ? Pas sous /usr/bin ?
Il va l'installer dans $startdir/pkg (entre nous je préfère utiliser l'équivalence $pkgdir). Ce répertoire correspond à / une fois le paquet installé par pacman.

Donc si il installe le binaire dans $$pkgdir/bin ce n'est pas bon. Si c'est dans $pkgdir/usr/bin c'est bon.

Pour récapituler :
$pkgdir/bin :cry:
$pkgdir/usr/bin :D
Anarchy for the triple A.
Avatar de l’utilisateur
mightyjaym
yeomen
Messages : 296
Inscription : dim. 18 nov. 2007, 19:34
Localisation : Nîmes, France

Message par mightyjaym »

Je viens de jeter un oeil au script python d'installation, apparemment il ne fait que copier des fichiers... il doit y avoir moyen de transformer cette syntaxe en en vrai PKGBUILD. Je n'ai rien à faire cet aprèm, donc je pense que je vais essayer 2-3 trucs ^^
Mon blog

Desktop : Intel Core 2 Duo E6850, 8 Gb RAM, NVIDIA GeForce 8500 GT, Arch Linux X86_64
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

mightyjaym a écrit :il doit y avoir moyen de transformer cette syntaxe en en vrai PKGBUILD. Je n'ai rien à faire cet aprèm, donc je pense que je vais essayer 2-3 trucs ^^
Youpi ! \o/ ! :D
Avatar de l’utilisateur
mightyjaym
yeomen
Messages : 296
Inscription : dim. 18 nov. 2007, 19:34
Localisation : Nîmes, France

Message par mightyjaym »

^^

Mélodie, as-tu réussi à faire fonctionner TuxMathScrabble sans faire de paquet ? Parce que de mon côté, l'installation donne ça :
rm -rf /usr/lib/python2.4/site-packages/TuxMathScrabble
cp -r TuxMathScrabble /usr/lib/python2.4/site-packages
cp: ne peut créer le répertoire `/usr/lib/python2.4/site-packages': Aucun fichier ou répertoire de ce type
cp TuxMathScrabble.py /usr/local/bin/TuxMathScrabble
chmod +x /usr/local/bin/TuxMathScrabble
chmod -R 755 /usr/lib/python2.4/site-packages/TuxMathScrabble
chmod: ne peut accéder `/usr/lib/python2.4/site-packages/TuxMathScrabble': Aucun fichier ou répertoire de ce type
****************************************
* *
* Setup Complete *
* *
* Run: /usr/local/bin/TuxMathScrabble *
* *
* Checkout more software at: *
* http://www.asymptopia.org *
* *
****************************************
J'ai donc créé manuellement tout le bazar :
ln -s /usr/lib/python2.5 /usr/lib/python2.4
mv TuxMathScrabble /usr/lib/python2.4/site-packages
chmod -R 755 /usr/lib/python2.4/site-packages/TuxMathScrabble
Quand j'essaie de lancer /usr/local/bin/TuxMathScrabble, j'obtiens ceci :

Code : Tout sélectionner

Traceback (most recent call last):
  File "/usr/local/bin/TuxMathScrabble", line 24, in <module>
    x=TuxMathScrabbleApp()
  File "/usr/lib/python2.4/site-packages/TuxMathScrabble/tms.py", line 57, in __init__
    mode,level=prog.run()
  File "/usr/lib/python2.4/site-packages/TuxMathScrabble/tms.py", line 382, in run
    for self.player_idx in range(2):self.draw_tiles()
  File "/usr/lib/python2.4/site-packages/TuxMathScrabble/tms.py", line 236, in draw_tiles
    tile=self.make_tile(strval,uchar,ptval)
  File "/usr/lib/python2.4/site-packages/TuxMathScrabble/tms.py", line 169, in make_tile
    img=pygame.Surface((tile_size,tile_size), flags=0, depth=0, masks=None)
ValueError: masks argument must be sequence of four numbers
Fatal Python error: (pygame parachute) Segmentation Fault
Abandon
Donc partant de là, je peux faire un paquet sans problème, mais si le programme ne fonctionne pas à la base... c'est pas super :-/
Mon blog

Desktop : Intel Core 2 Duo E6850, 8 Gb RAM, NVIDIA GeForce 8500 GT, Arch Linux X86_64
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

Code : Tout sélectionner

pkgname=tuxmathscrabble
pkgver=0.5.3
pkgrel=1
pkgdesc='a math version of the classic word game "Scrabble"'
arch=(i686 x86_64)
license=("GPL")
depends=('python-pygame' 'wxpython' 'sdl')
source=(http://www.asymptopia.org/1l11ll00l1/TuxMathScrabble-$pkgver-LIN.tgz)
url="http://www.asymptopia.org/index.php?topic=tuxmathscrabble"
md5sums=('14d372660f0d2ec09953cde23783b830')

build() {
  cd $startdir/src/TuxMathScrabble
  # les chemins sont codés en dur ...
  sed -i "s#/usr/local/bin/#$startdir/pkg/usr/bin/#" setup.py
  sed -i "s#Run: $startdir/pkg/usr/bin/#Run: /usr/bin/#" setup.py
  sed -i "s#/var/games/#$startdir/pkg/var/games/#" setup.py
  # une incompatibilité avec pygame peut etre (connais pas bien python)
  sed -i "s#, flags=0, depth=0, masks=None##" TuxMathScrabble/tms.py
  # il ne crée pas lui meme les répertoires
  mkdir -p $startdir/pkg/var/games/
  mkdir -p $startdir/pkg/usr/bin
  mkdir -p $startdir/pkg/usr/lib/python2.4/site-packages
  # il installe directement dans le répertoire de python, il faut lui indiquer le chemin makepkg
  export PYTHONPATH=$startdir/pkg/usr/lib/python2.4/site-packages
  python setup.py || return 1
}
ca devrait faire l'affaire, mais il y a quelques bug (je pense du à la version de python peut etre).

par contre, une fois lancé, il s'arrete plus :)

pour le répertoire python, mettre celui que vous avez, s'il y en a plusieurs, il prend le premier venu (chez moi c'était 2.4)
Dernière modification par tuxce le mer. 14 mai 2008, 14:39, modifié 2 fois.
Avatar de l’utilisateur
mightyjaym
yeomen
Messages : 296
Inscription : dim. 18 nov. 2007, 19:34
Localisation : Nîmes, France

Message par mightyjaym »

Testé et approuvé ! :D

EDIT : Euh par contre il y a juste une petite faute dans le nom du paquet :wink:
Mon blog

Desktop : Intel Core 2 Duo E6850, 8 Gb RAM, NVIDIA GeForce 8500 GT, Arch Linux X86_64
Avatar de l’utilisateur
tuxce
Maître du Kyudo
Messages : 6677
Inscription : mer. 12 sept. 2007, 16:03

Message par tuxce »

le double "b" => arrangé :)

par contre, j'avais oublié la dépendance "sdl", mais bon, c'était surtout pour tester, il y a surement d'autres améliorations à faire
Avatar de l’utilisateur
mélodie
Maître du Kyudo
Messages : 2784
Inscription : lun. 30 oct. 2006, 02:06
Localisation : Pyrénées

Message par mélodie »

Hé hé ! Marrant, mais je n'ai pas l'impression que nous ayons tous les jeux de caractères. Chez moi ça fonctionne, sinon, avec les chiffres, les 4 niveaux (F1).

http://www.asymptopia.org/index.php?topic=TWS
The game is currently distributed with sixty-five (65) dictionary resources for playing Language-Language[j] "Scrabble".


Super ! :D
Avatar de l’utilisateur
mimas
Elfe
Messages : 559
Inscription : sam. 30 sept. 2006, 22:30
Localisation : Toulouse

Message par mimas »

Nay !!!

Pour le PKGBUILD, il faut mettre 'any' dans arch puisque c'est un shell python, donc indépendant d'une architecture.

...
arch=('any')
...



-----
Chief Officer du Bureau Qualitay de Mimarchs Linux
Anarchy for the triple A.
Avatar de l’utilisateur
marc[i1]
Maître du Kyudo
Messages : 1753
Inscription : ven. 27 oct. 2006, 10:48
Localisation : Nantes (44)

Message par marc[i1] »

mimas a écrit :Pour le PKGBUILD, il faut mettre 'any' dans arch puisque c'est un shell python, donc indépendant d'une architecture.
C'est enfin reconnu cette option ?
si c'est pour utiliser makepkg avec l'option -A, ça vaut pas le coup !
Ne vous emmerdez plus, emmerdez les autres.
Avatar de l’utilisateur
mimas
Elfe
Messages : 559
Inscription : sam. 30 sept. 2006, 22:30
Localisation : Toulouse

Message par mimas »

marc[i1] a écrit :C'est enfin reconnu cette option ?
Depuis la version 3.1 de pacman. Il y a aussi possibilité d'ajouter d'autres architectures, ça couine juste un peu au niveau des PKGBUILD si on n'y ajoute pas le nom de l'architecture.
Anarchy for the triple A.
Avatar de l’utilisateur
marc[i1]
Maître du Kyudo
Messages : 1753
Inscription : ven. 27 oct. 2006, 10:48
Localisation : Nantes (44)

Message par marc[i1] »

Pacman le reconnais mais il me semblai que les serveurs non, enfin de ce que j'ai compris, donc pour le moment on peut le faire pour un paquetage perso mais si tu veux le diffuser sur les serveurs Arch c'est pas possible.
Ne vous emmerdez plus, emmerdez les autres.
Avatar de l’utilisateur
mimas
Elfe
Messages : 559
Inscription : sam. 30 sept. 2006, 22:30
Localisation : Toulouse

Message par mimas »

j'aime bien les messages postés à 13:37. :)

Je ne sais pas pour les serveurs archlinux mais je ne vois pas en quoi le fait qu'un paquet de ce nom xxx-yyy-r-arch.pkg.tar.gz gène en quoi que ce soit la construction de l'index du dépôt et l'intégration du paquet dans ce dernier.

Il va seulement y avoir des paquets, les any (noarch pour reprendre la notation plus explicite de slackware) qui vont être présents sur plusieurs dépôts, soit par un jeu de liens symboliques, soit par copie simple.

Si il y a problème c'est parce que l'architecture logicielle a été conçue pour ne tenir compte que de deux architectures. Une adaptation s'impose donc.

N'y aurait-il pas le code source de la gestion du dépôt de archlinuxfr en ligne des fois ? :)

Pour ma part, en tant que packager de ma propre distro à moi mais qui utilise (encore) les outils archlinux, il me parait très étrange d'associer une architecture à des fichiers textes ou scripts puisqu'ils en sont indépendants.
Anarchy for the triple A.
Répondre