Page 1 sur 1
[blingbling] installer oocairo (résolu)
Publié : dim. 20 janv. 2013, 22:42
par iluso
Bonsoir,
je suis un utilisateur récent d'awesome. J'essaye d'utiliser blingbling(github.com/cedlemo/blingbling) qui nécessite oocairo, et là c'est le drame.
Impossible de l'installer avec yaourt ou depuis un des dépôts git, ça bloque sur "LUA_GLOBALSINDEX undeclared"...
Oocairo semble ne plus être maintenu et est annoncé non compatible avec Lua 5.2, or blingblin l'est donc je ne pige pas...
Là y'a une piste mais ça dépasse mes compétences :
http://git.naquadah.org/?p=oocairo.git; ... 1e19cbd2ab.
Si quelqu'un a une idée ou même une solution, ce serait super

Re: [blingbling] installer oocairo
Publié : dim. 20 janv. 2013, 23:23
par MrMen
Bonsoir, je suis un peu pris par le temps ce soir, mais je pense que si tu prends les deux diff qui sont dans le post tu dois pouvoir t'en sortir.
Une fois que tu les as tu modifies le PKGBUILD pour qu'il patch ce qu'il faut.
Si je ne me trompe pas :
et tu fais de même pour le second. (désolé je ne suis pas très copain avec diff/patch).
Ensuite d'après ce qu'il dit ça devrait aller.
Je repasse demain pour voir si ça a marché.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 03:27
par iluso
Merci de ta réponse,
j'arrive pas télécharger juste le diff et donc à utiliser ta commande ; en remplaçant les 2 fichiers manuellement ça donne la même erreur. Je galère franchement
En plus de ça, le readme indique un simple "make install" mais pas de PKGBUIL, y'a bien un srcript de configuration mais il lui "manque Makefile.in"...
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 10:21
par MrMen
Je repasse vers midi, mais j'ai réussi hier à le compiler. Le diff est à copier-coller (voir modfier un peu) pour que ça fonctionne.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 10:58
par vlamy
Salut, je n'ai pas trop de temps non plus, mais chez moi blingbling fonctionne sans que j'ai ajouté la lib-oocairo via AUR.
Je ne veux pas dire de bêtise, mais j'ai l'impression qu'il n'y a pas besoin de l'installer pour utiliser blingbling (à confirmer quand même).
EDIT : en fait blingbling tourne sur un vieux snapshot du git d'awesome, mais là je viens de m'apercevoir que cette lib est dépréciée. En particulier, awesome ne supporte plus la lib lua-oocairo au privilège de lgi. Bref, si tu débutes awesome, faire fonctionner blingbling n'est pas la chose la plus abordable, sachant qu'en plus elle ne sera visiblement plus maintenue. En même temps, je ne trouve pas de librairie de widgets qui soit compatible avec la version 3.5.
Si tu veux je peux te proposer mes 3 widgets : contrôle volume, pacman et batterie.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 11:47
par MrMen
Bon j'ai plus de temps. Avec ça tu devrais y arriver :
PKGBUILD
Code : Tout sélectionner
# Contributor: Michal Minar <mr.mini@centrum.cz>
# Maintainer: Zsolt Udvari <udvzsolt@gmail.com>
pkgname=lua-oocairo
pkgver=1.4
pkgrel=2
pkgdesc="Module providing access to the Cairo from within Lua."
arch=(i686 x86_64)
url="http://luaforge.net/projects/oocairo/"
license=('MIT')
depends=("cairo>=1.8.0" "lua>=5.1")
makedepends=("libtool" "pkgconfig")
source=("http://oocairo.naquadah.org/dist/oocairo-${pkgver}.tar.bz2"
configure-ac.patch
oocairo-c.patch)
md5sums=('d39574cdb781a62728758553afef1d31'
'8be5ab25d3adfa4b3c44525012f976bf'
'9576bd35288955bff27b2c387b08db70')
build() {
cd ${srcdir}/oocairo-${pkgver}
patch -p0 < ${srcdir}/configure-ac.patch
patch -p1 < ${srcdir}/oocairo-c.patch
./configure --prefix=/usr
make || return 1
}
package() {
cd ${srcdir}/oocairo-${pkgver}
make DESTDIR="$pkgdir" install
mkdir -p "$pkgdir/usr/share/licenses/lua-oocairo"
cp COPYRIGHT "$pkgdir/usr/share/licenses/lua-oocairo"
}
configure-ac.patch
Code : Tout sélectionner
--- configure.ac.old 2013-01-21 11:47:32.672219957 +0100
+++ configure.ac 2013-01-21 11:47:42.028850478 +0100
@@ -18,6 +18,6 @@
# Lua gets different names in different distros :(
PKG_PROG_PKG_CONFIG
AC_MSG_CHECKING([for lua])
-for lua_name in lua lua5.1
+for lua_name in lua lua5.1 lua5.2
do
PKG_CHECK_EXISTS([$lua_name], [LUA_NAME=$lua_name ; break])
done
oocairo-c.patch
Code : Tout sélectionner
--- a/oocairo.c
+++ b/oocairo.c
@@ -41,6 +41,18 @@
#error "This Lua binding requires Cairo version 1.6 or better."
#endif
+#if LUA_VERSION_NUM >= 502
+#define lua_objlen(a, b) lua_rawlen(a, b)
+
+static int luaL_typerror (lua_State *L, int narg, const char *tname) {
+ const char *msg = lua_pushfstring(L, "%s expected, got %s",
+ tname, luaL_typename(L, narg));
+ return luaL_argerror(L, narg, msg);
+}
+#else
+#define lua_rawlen(a, b) do_not_use_lua_rawlen_use_lua_objlen_instead;
+#endif
+
static const int ENDIANNESS_TEST_VAL = 1;
#define IS_BIG_ENDIAN (!(*(const char *) &ENDIANNESS_TEST_VAL))
@@ -785,6 +797,14 @@ write_chunk_to_fh (void *closure, const unsigned char *buf,
return CAIRO_STATUS_SUCCESS;
}
+#if LUA_VERSION_NUM >= 502
+static void
+get_gtk_module_function (lua_State *L, const char *name) {
+ /* FIXME: Implement this again */
+ (void) name;
+ luaL_error(L, "cannot access gtk with lua >= 5.2, TODO: Implement this again");
+}
+#else
static void
get_gtk_module_function (lua_State *L, const char *name) {
lua_getfield(L, LUA_GLOBALSINDEX, "gtk");
@@ -797,6 +817,7 @@ get_gtk_module_function (lua_State *L, const char *name) {
name);
lua_remove(L, -2);
}
+#endif
static int
push_cairo_status (lua_State *L, cairo_status_t status) {
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 19:04
par iluso
@viamy : comme tu dis, j'ai vu partout que c'était un truc à abandonner mais j'ai fais une fixette sur un thème (
https://github.com/romockee/powerarrow) et j'ai beau être un peu débutant, j'aime bien essayer de faire fonctionner les choses, c'est comme ça qu'on apprend dit-on
@Mr_Men : j'essaye ça tout à l'heure mais c'est du copier-coller (#travail_mâché) je devrais m'en sortir, super aide, merci encore !
Je repasse ce soir dire si tout a fonctionné et, j'espère, rajouter un petit "(résolu)" au sujet !
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 19:35
par vlamy
iluso a écrit :@viamy : comme tu dis, j'ai vu partout que c'était un truc à abandonner mais j'ai fais une fixette sur un thème (
https://github.com/romockee/powerarrow) et j'ai beau être un peu débutant, j'aime bien essayer de faire fonctionner les choses, c'est comme ça qu'on apprend dit-on
Pas de problème alors, si tu le fais en connaissance de cause. Tu as tout à fait raison

Je pense que le patch de Mr Men devrait être bon, mais il y aura probablement des choses à adapter dans blingbling si tu utilises awesome 3.5.
Je te rassure, rien d'insurmontable, de mémoire les widgets ont la bonne syntaxe déja

Bon courage et n'hésites pas à repasser en cas de problèmes.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 20:07
par iluso
C'est un vrai complot ou alors je me trompe de commande complètement...
Avec git je récupère oocairo, dans le dossier je rajoute le PKGBUILD et les deux patchs fournis pas Mr_Men.
Là, je me trompe peut être, je fais un makepkg, et il me dit que les deux *.patch n'ont pas la bonne somme md5, pourtant en comparant celles données par makepkg -g et le md5sum ... des deux fichiers c'est identique, je ne comprend pas. 1) je dois utiliser une autre commande ?
Un petit makepkg -g >> PKGBUILD et le test md5 passe, mais au "lancement de build()", erreur :
"patching file configure.ac
patch: **** malformed patch at line 5: PKG_PROG_PKG_CONFIG"
J'suis désolé, la compilation je connais pas du tout, c'est pas demain que j'irai installer gentoo

Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 21:39
par MrMen
Tu as récupéré les sources comment ? Il suffit de faire un makepkg normalement.
Je ne sais pas si ça joue, mais passe à la ligne en fin de fichier. Chez moi ça passe.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 21:58
par iluso
J'ai récupéré les sources avec un "git clone git://git.naquadah.org/oocairo.git".
Les md5 c'est effectivement une histoire de saut de ligne, de ce côté là c'est réglé.
Mais makepkg bloque au lancement de build() sur la ligne 5 et veut rien savoir... Je ne sais absolument pas ce que veut dire "PKG_PROG_PKG_CONFIG" mais ça arrête tout.
Re: [blingbling] installer oocairo
Publié : lun. 21 janv. 2013, 23:58
par MrMen
Justement, il ne faut pas que tu les récupèrent avec git : le pkgbuild va récuperer une archive tout seul.
Tu mets le fichier PKGBUILD dans /tmp par exemple, tu t'y mets aussi et tu fais makepkg.
Re: [blingbling] installer oocairo
Publié : mar. 22 janv. 2013, 00:12
par iluso
En faisant exactement ce que tu viens de me dire j'arrive à la même erreur au niveau du build()...
Il digère pas la ligne 5 du configure.ac (après avoir appliqué le patch) : "PKG_PROG_PKG_CONFIG" et abandonne.
Cette ligne on la retrouve dans le man pkg-build mais je ne parle pas assez bien anglais pour trouver quelque chose d'utile.
Merci de ta patience en tout cas !
Re: [blingbling] installer oocairo
Publié : mar. 22 janv. 2013, 00:46
par benjarobin
Utilise ceci :
http://dl.free.fr/in2Ebdb5N Cela évitera tout souci

Il y a le PKGBUILD, configure-ac.patch ainsi que oocairo-c.patch
Re: [blingbling] installer oocairo (résolu)
Publié : mar. 22 janv. 2013, 17:11
par iluso
Super, tout a fonctionné ! Merci à tous en tout cas