[AUR] Présentation de mes PKGBUILD sur AUR

Mise à jour / Création /debug de paquetages
Répondre
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

[AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

Depuis que je suis sur archlinux, j'ai réalisé quelques paquets pour mettre sur AUR.
Un système très pratique qui me permet d'avoir vraiment l'impression de participer et de contribuer à la distribution que j'utilise quotidiennement.

Voici donc une présentation en français de quelques paquets qui me tiennent à coeur. Je pourrai indiquer ici s'il y a des mises à jour ou des nouveautés.

Je n'ai pas indiqué le lien pour chaque paquet, mais on les retrouve sur la page AUR dans ma signature.

Prochainement je vais faire un système pour indiquer automatiquement sur une page html dans mes dépôts l'affichage du paquet dans AUR.


==== Musique ====

- Les paquets débutants par le nom abc*** sont en rapport avec la notation ABC, un système pour créer des partitions et des fichiers midi avec une écriture de notes simple et efficace. Abcm2ps est pour créer des partitions en postcript et par là même en pdf (je ne suis pas le mainteneur du paquet, mais c'est compilé sur mon dépôt), et abcmidi est son pendant pour générer des fichiers midi. Avec ces 2 programmes, on peut presque tout faire en abc.
Abcm2ps permet d'exporter en partitions de tin whistle avec les doigtés.

- tab permet d'afficher en postcript des tablatures de luth. (mais ce n'est pas du abc)

- Abctab2ps est pour les tablatures de luth mais aussi de guitare (dans un format différent du précédent). Utilise une variation de abc. Équivalents de abcm2ps qui lui ne traite que des partitions (mais le fait très bien).

- abc4j est le dernier arrivé dans la liste, c'est un programme java qui permet d'afficher et de lire des fichiers abc (mais pas en multipistes), et de les exporter en images et midi. C'est aussi une API permettant de manipuler des morceaux en abc en programmant en java.

- Skink est un peu similaire, et plus simple et pas libre.

- Idem pour tclabc, avec une interface en tk à la place de java.

- jedabc permet d'avoir la colorisation de l'abc dans l'éditeur jed.

- amuc est un logiciel pour composer de la musique. Je l'ai peu testé.

- Lemma est un logiciel pour utiliser le système MMA d'accompagnement midi. Je l'ai peu testé également.

- songwrite2 est un éditeur de tablatures de guitare.

- goattracker est un super tracker qui permet de composer des musiques façon c64. Par exemple les fichiers sid sur http://anamnese.online.fr/site2/index.php?page=electro

- Schismtracker est un super tracker de mod. C'est la version cvs car les autres paquets sur AUR ou communauty n'étaient pas à jour.


==== Jeux ====

- Gamebook-engine permet d'interpréter des "livres dont vous êtes le héros". Contient également des histoires de "loups solitaires".

- gamebookmaker permet de créer des "livres dont vous êtes le héros" et de les exporter dans divers formats.

- Arkanae3 est un jeu de rôle et d'exploration en français très prenant.
- Battalion est un jeu de destruction amusant pour passer un peu le temps.
- Blockdude est un petit jeu de réflexion bien réalisé.
- Minestein est un démineur.
- Pushover est un clone du jeu amiga du même nom.
- Sable est un jeu de tir en 3d.
- Tubularix est un genre de tetris vu de haut (façon weltris)
- xarchon est un jeu de stratégie façon jeu d'échec

- Rolldice est un simple lanceur de dés virtuels.

- Dices est une table de jeu virtuelle pour faire des parties de jeux de rôles. Je n'ai jamais testé en réel.

- Pyhalebarde est une adaptation du jeu de plateau "Halebarde et Gonfanon". La dernière version utilise pas mal de bibliothèques pas facile à compiler sous archlinux (genre clutter pour python), donc ce paquet n'est pas à jour pour le moment.

- Gruesome est un roguelike original : vous êtes un "grue", monstre imaginaire de l'univers de zork, et votre but est de vous approcher le plus près des aventuriers qui visitent vos grottes, et de les dévorer sans qu'ils vous découvrent.

- Mines-of-elderlore est un autre roguelike (graphique), simple et addictif : il n'y a pas des dizaines de commandes pour progresser, et les parties sont haletantes.

- Nazghul-haxima est un moteur et un jeu de rôle inspiré d'Ultime IV, très bien réalisé. J'y ai peu joué hélas, malgré ses qualités.


La suite plus tard...
erdnaxeli
yeomen
Messages : 267
Inscription : ven. 08 févr. 2008, 21:54

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par erdnaxeli »

Arkanae3 est assez adictif oui :P. Et j'aime bien minestein aussi.
Image
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

dicorime :
C'est la version svn parce que l'auteur n'a pas sorti de version figée. Un bon dictionnaire de rime qui peut également servir de dictionnaire tout court, de dictionnaire de synonymes, d'antonymes, d'anagramme etc :

http://aur.archlinux.org/packages.php?ID=32376

Je suis en contact avec l'auteur pour améliorer ce paquet.

Après l'installation il faut indiquer dans les options la base stockée à cet emplacement :
/usr/share/dicorime/base/dicorime.db

Peut-être que lorsque cela sera plus au point, on pourra le rajouter dans les dépôts binaires sur archlinux.fr ?
Dernière modification par farvardin le lun. 28 déc. 2009, 14:09, modifié 2 fois.
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

Sword of Fargoal, un super roguelike, remake d'un vieux jeu issu de C64 :

http://aur.archlinux.org/packages.php?ID=32415

S'il y a des gens forts en C, savez-vous pourquoi cette ligne ne passe pas :

Code : Tout sélectionner

y = text_height (font) * (sin (-v * AL_PI * 2) + v);
Si je laisse ainsi, cela dit :
credits.o: In function `credits_render':
credits.c:(.text+0x1dd): undefined reference to `sin'
Pour permettre de compiler, j'ai juste retiré le sin, cela modifie un peu l'affichage des crédits (au lieu de passer élégamment en dessous, cela passe dessus plus rapidement), mais je ne comprends pas pourquoi cela compiler sous debian et pas sous archlinux (sans doute différente version de gcc...)

J'ai essayé de rajouter include "math.h" dans la source credits.c mais c'est pareil avec ou sans.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17576
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par benjarobin »

Compile très bien en 32 bits. Math.h de 64 bits contient il la fonction sin ?
La fonction se trouve exactement chez moi ici: /usr/include/c++/4.4.2/cmath

Donc en gros math.h -> /usr/include/bits/mathcalls.h Et l'implémentation est dans /usr/include/c++/4.4.2/cmath
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

si tu compiles depuis le PKGBUILD, il y a un sed qui retire la fonction sin. (et je suis moi aussi en 32 bit). C'est depuis les sources non modifiées que cela bloque.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17576
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par benjarobin »

Juste pour le fun, je regarde... :D

Et voila, remplace

Code : Tout sélectionner

# remove the problematic sin in y = text_height (font) * (sin (-v * AL_PI * 2) + v);
	sed -i -e "s/(sin/(/g" credits.c
par

Code : Tout sélectionner

#Fix the makefile
    sed -i -e "s/LDLIBS :=/LDLIBS := -lm/g" Makefile
Petite explication: C'est au linkage que cela posait problème. Donc il avait bien trouvé le prototype de la fonction dans math.h Mais a la création de l'exécutable il ne savait pas ou trouver la fonction sinus. Il va pas aller loin avec le prototype. Lui il veut l'implémentation.

Et en gros voila l'explication de l'option rajouté à gcc :
-l : option linker (ajout d'un bibliothèque)
m : (comme mathématique) petit nom du fichier bibliothèque libm.a

Donc on a dit a gcc d'ajouter la bibliothèque de mathématique, de lier cette bibliothèque a l'exécutable. Donc quand il fait le linkage il trouve bien une référence a 'sin'

Il faut savoir que les thread c'est la même chose tu dois ajouter -lpthread. Alors pourquoi cela fonctionnait sous Debian, les options par défaut surement de gcc...
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

super, merci, tu es trop fort !
Avatar de l’utilisateur
chipster
Maître du Kyudo
Messages : 2063
Inscription : ven. 11 août 2006, 22:25
Localisation : Saint-Étienne (42)
Contact :

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par chipster »

Gamebook-engine pour les aventures de "Loup solitaire" :copain:
J'ai quasi la collection complète. Il ne me manque qu'un seul livre que je n'ai jamais réussi à trouver (le 27 ou 28) :(

Bon, visiblement il y a un soucis :

Code : Tout sélectionner

==> Téléchargement du PKGBUILD de Gamebook-engine depuis AUR...
Error: Gamebook-engine non trouvé dans AUR
alors que

Code : Tout sélectionner

yaourt -Ss Gamebook-engine
aur/gamebook-engine 0.1.4-2 (1)
Avatar de l’utilisateur
chipster
Maître du Kyudo
Messages : 2063
Inscription : ven. 11 août 2006, 22:25
Localisation : Saint-Étienne (42)
Contact :

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par chipster »

Bon, je devais pas être très réveillé comme Nic0 me l'a fait remarqué :D
Si on vire les majuscules, tout de suite ça fonctionne mieux :copain: :chinois:
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

Crawl Stone Soup :
http://aur.archlinux.org/packages.php?ID=17099

Originellement ce n'est pas de moi, mais je viens de récupérer le paquet orphelin et de le mettre à jour vers la version 5.2 de ce superbe roguelike (bien plus complexe et riche que fargoal...), existe en version ncurses et avec des graphismes. J'ai créé également un fichier .desktop
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

nouvelle version de dicorime, cette fois-ci pas en svn :

http://aur.archlinux.org/packages.php?ID=35209

Également nouvelles versions de löve et linotte en systèmes de programmation alternatifs.
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

Un super jeu de tir et d'exploration, vu de dessus:

BOFH: Servers under siege

Le PKGBUILD est ici :

http://aur.archlinux.org/packages.php?ID=36349

Par contre cela utilise une dépendance que j'ai également packagée (bme), et celle-ci m'indique à l'installation (et à chaque ldconfig) :

ldconfig: Ne peut établir un lien entre /usr/lib/../linux/libbme.so.0 et libbme.so.0

J'ai dû copier les bibliothèques à la main dans /usr/lib, (car il n'y a pas de makefile), je ne sais pas comment corriger ce problème (à part supprimer bme une fois la compilation effectuée), avez-vous une idée ?
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17576
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par benjarobin »

Pour bme le PKGBUILD:

Code : Tout sélectionner

# Contributor: Eric Forgeot < http://anamnese.online.fr >

pkgname=bme
pkgver=1.31
pkgrel=1
pkgdesc="The Blasphemous Multimedia Engine is a graphics/sound/input library using in turn SDL library for lowlevel support"
arch=('i686' 'x86_64')
url="http://covertbitops.c64.org/"
license=('BSD')
depends=('sdl')

source=(http://cadaver.homeftp.net/misc/bme.zip makefile.patch)

md5sums=('d394278f789d00116cc8fbfa52d20bb9' 'f9358e3af2aa8d5a82090f46478c693f')


build() {
	cd $startdir/src/src
	patch makefile < $startdir/makefile.patch || return 1
	make || return 1

	mkdir -p $startdir/pkg/usr/lib || return 1
	mkdir -p $startdir/pkg/usr/share/bme || return 1
	
	install -m644 $startdir/src/src/libbme.a $startdir/pkg/usr/lib || return 1
	install -m755 $startdir/src/src/libbme.so.0 $startdir/pkg/usr/lib || return 1
	install -m644 $startdir/src/src/{editor,fonts}.spr $startdir/pkg/usr/share/bme || return 1
	install -m644 $startdir/src/src/{editor,fonts}.lbm $startdir/pkg/usr/share/bme || return 1
	install -m755 $startdir/src/src/{bmeconv,bmeplay,dat2inc,datafile,infedit,mapedit} $startdir/pkg/usr/share/bme || return 1
}
Le makefile.patch

Code : Tout sélectionner

--- b/makefile	2008-07-13 22:24:44.000000000 -0400
+++ a/makefile	2010-04-10 17:18:31.000000000 -0400
@@ -5,16 +5,15 @@
 CC = cc
 CFLAGS = -O3 -Wall
 LIBS = `sdl-config --libs`
-PREFIX = ../linux/
 
 all_cflags = $(CFLAGS) `sdl-config --cflags`
 objs = bme.o bme_gfx.o bme_io.o bme_win.o bme_kbd.o bme_mou.o		\
 bme_joy.o bme_map.o bme_txt.o bme_snd.o bme_mod.o bme_xm.o bme_s3m.o	\
 bme_raw.o bme_wav.o bme_smp.o bme_tbl.o
 picobjs = $(objs:.o=.pic.o)
-so = $(PREFIX)libbme.so.0
+so = libbme.so.0
 
-all: $(PREFIX)libbme.a $(so) $(PREFIX)bmeconv $(PREFIX)datafile $(PREFIX)dat2inc $(PREFIX)mapedit $(PREFIX)infedit $(PREFIX)bmeplay
+all: libbme.a $(so) bmeconv datafile dat2inc mapedit infedit bmeplay
 .PHONY: all
 
 clean: linkclean
@@ -25,17 +24,17 @@
 .PHONY: clean
 
 linkclean:
-	rm -f $(PREFIX)libbme.a
+	rm -f libbme.a
 	rm -f $(so)
-	rm -f $(PREFIX)bmeconv
-	rm -f $(PREFIX)bmeplay
-	rm -f $(PREFIX)dat2inc
-	rm -f $(PREFIX)datafile
-	rm -f $(PREFIX)infedit
-	rm -f $(PREFIX)mapedit
+	rm -f bmeconv
+	rm -f bmeplay
+	rm -f dat2inc
+	rm -f datafile
+	rm -f infedit
+	rm -f mapedit
 .PHONY: linkclean
 
-$(PREFIX)libbme.a: $(objs)
+libbme.a: $(objs)
 	ar -rs $@ $^
 
 %.o: %.c
@@ -47,29 +46,29 @@
 %.pic.o: %.c
 	$(CC) -c -fPIC $(all_cflags) -o $@ $<
 
-mapdata.c: mapedit.dat $(PREFIX)dat2inc
-	$(PREFIX)dat2inc $< $@
+mapdata.c: mapedit.dat dat2inc
+	./dat2inc $< $@
 
-mapedit.dat: mapedit.seq $(PREFIX)datafile fonts.spr editor.spr
-	$(PREFIX)datafile $@ $<
+mapedit.dat: mapedit.seq datafile fonts.spr editor.spr
+	./datafile $@ $<
 
-%.spr: %.lbm $(PREFIX)bmeconv
-	$(PREFIX)bmeconv -s $< $@
+%.spr: %.lbm bmeconv
+	./bmeconv -s $< $@
 
-$(PREFIX)mapedit: mapedit.o fileio.o cfgfile.o mapdata.o $(PREFIX)libbme.a 
+mapedit: mapedit.o fileio.o cfgfile.o mapdata.o libbme.a 
 	$(CC) -o $@ $^ $(LIBS)
 
-$(PREFIX)infedit: infedit.o fileio.o cfgfile.o mapdata.o $(PREFIX)libbme.a
+infedit: infedit.o fileio.o cfgfile.o mapdata.o libbme.a
 	$(CC) -o $@ $^ $(LIBS)
 
-$(PREFIX)bmeplay: bmeplay.o $(PREFIX)libbme.a
+bmeplay: bmeplay.o libbme.a
 	$(CC) -o $@ $^ $(LIBS)
 
-$(PREFIX)datafile: datafile.o fileio.o
+datafile: datafile.o fileio.o
 	$(CC) -o $@ $^
 
-$(PREFIX)bmeconv: bmeconv.o fileio.o
+bmeconv: bmeconv.o fileio.o
 	$(CC) -o $@ $^
 
-$(PREFIX)dat2inc: dat2inc.o
+dat2inc: dat2inc.o
 	$(CC) -o $@ $^
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

Re: [AUR] Présentation de mes PKGBUILD sur AUR

Message par farvardin »

super, merci tu es trop fort !
Répondre