Re: New lgi dependency and older Ubuntu LTS

2012-06-18 Thread Paweł Rumian
2012/6/17 Uli Schlachter psyc...@znc.in:
 Short version:
 You need /usr/lib/girepository-1.0/Pango-1.0.typelib (in debian this is in
 package gir1.2-pango-1.0).

Uli, you are absolutely great. Now I not only have my awesome working
again, but I understand the whole 'introspection' thing :) Thank you!

For future reference: in Gentoo you need to have x11-libs/pango built
with USE='introspection'

BR,
Paweł

--
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.


Re: New lgi dependency and older Ubuntu LTS

2012-06-18 Thread Pavel Holejsovsky

On 6/17/2012 6:19 PM, Uli Schlachter wrote:

On 17.06.2012 18:06, Giorgos Keramidas wrote:

On Sun, Jun 17, 2012 at 2:48 PM, Uli Schlachter psyc...@znc.in wrote:

On 17.06.2012 12:31, Giorgos Keramidas wrote:
[...]

Some of the dependencies of the lgi code cannot be met at all on my aging
Ubuntu installation.

[...]


/etc/lsb-release says:
Ubuntu 10.04.1 LTS


Hm. Wikipedia says Ubuntu 10.04 is supported until 2013-04. That's still quite a
while. Sounds like we shouldn't release 3.5 before then. ;-)

Awesome already used Pango before and Pango used gobject before. The only new
dependency (besides lgi) should be on gobject-introspection. Version 0.10.8 was
releases in May 2011. That's a little more recent than I had thought. However, I
have no good idea what could be done about this.

I don't know what's new in gobject-introspection 0.10.8 and thus can't say why
older versions don't work.

Sounds like someone (I?) should write a mail to lgi upstream and ask for 
details...


No need to, upstream is here and listening :-)

Ubuntu Lucid supports only 0.6 series of gobject-introspection.  Thats 
pretty bad, because so many bugfixes, many useful API additionas and 
even a few API/ABI changes were done since then.  Current lgi code 
basically depends on gobject-introspection=1.30, with hacks added here 
and there to support goi=0.10 version.  I was hoping to nuke those 
hacks in the next release, but it looks that I'll have to keep them.


As for supporting 0.6.x series; almost definitely impossible with 
current lgi sourcebase. I'm having my small personal summer of code 
project, rewriting a lot of lgi internals, and (for unrelated reasons) 
it should lessen the dependency on exact version of 
gobject-introspection, so that 0.6.x could be usable (with some 
additional effort).  But don't hold your breath, it might take a few 
months before I get it into the releasable shape.


As Uli said above, installing newer gobject-introspection into the $HOME 
will probably not work, I'm afraid that .typelib files (coming from 
other packages) will not be compatible with it.  The only solution would 
be to build locally (into your $HOME) the Gnome stack parts up to pango 
(which would also include gobject-introspection).  Gnome's jhbuild[0] 
makes this quite a painless experience (at least for me it was).


sorry for not so good news,
Pavel

[0] http://developer.gnome.org/jhbuild/unstable


--
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.


Re: New lgi dependency and older Ubuntu LTS

2012-06-18 Thread Giorgos Keramidas
On Mon, Jun 18, 2012 at 3:25 PM, Pavel Holejsovsky 
pavel.holejsov...@gmail.com wrote:

 As Uli said above, installing newer gobject-introspection into the $HOME
 will probably not work, I'm afraid that .typelib files (coming from other
 packages) will not be compatible with it.  The only solution would be to
 build locally (into your $HOME) the Gnome stack parts up to pango (which
 would also include gobject-introspection).  Gnome's jhbuild[0] makes this
 quite a painless experience (at least for me it was).


I can't build so many parts of the Gnome stack on this machine, for various
reasons (security team constraints among them).

So I'll have to wait until Precise Pangolin rolls out to my work desktop I
guess.

Thanks for all the useful information though. Much appreciated!

Cheers,
Giorgos


New lgi dependency and older Ubuntu LTS

2012-06-17 Thread Giorgos Keramidas
Hi everyone,

I like tracking the git branch of awesome, but it has recently failed to
compile for me after the switch to lgi:

commit ca2fc7811ad769cc88ead583e099230f33f6c8a2
Author: Uli Schlachter psyc...@znc.in
Date:   Tue Jun 5 16:22:04 2012 +0200

gears.surface: Add a version check for lgi

The cairo bindings are quite new in lgi and thus we depend on a quite
new
version of lgi. Older versions will fail with lots of weird errors,
e.g.:

lib/gears/color.lua:61:attempt to call field 'create_rgba' (a nil value)

Signed-off-by: Uli Schlachter psyc...@znc.in


Some of the dependencies of the lgi code cannot be met at all on my aging
Ubuntu installation.

I can't install the latest and greatest packages available on this system.
Does this mean I cannot run awesome-master anymore?


Re: New lgi dependency and older Ubuntu LTS

2012-06-17 Thread Uli Schlachter
On 17.06.2012 12:31, Giorgos Keramidas wrote:
[...]
 Some of the dependencies of the lgi code cannot be met at all on my aging
 Ubuntu installation.
[...]

Never tried to install lgi, but which dependencies do you have problems with?
Also, what exactly is an aging Ubuntu installation, how old exactly?

Uli
-- 
In the beginning the Universe was created. This has made a lot of
 people very angry and has been widely regarded as a bad move.

-- 
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.


Re: New lgi dependency and older Ubuntu LTS

2012-06-17 Thread Uli Schlachter
On 17.06.2012 15:39, Paweł Rumian wrote:
 2012/6/17 Uli Schlachter psyc...@znc.in:
 Never tried to install lgi
 
 I am not sure how to read this - the latest git/master version of
 awesome depends on the lgi library, so how could you develop awesome
 without installing lgi? :)

apt-get install -t unstable lgi

But that doesn't count as trying to install it myself.

-- 
Why make things difficult, when it is possible to make them cryptic
and totally illogical, with just a little bit more effort? -- A. P. J.

-- 
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.


Re: New lgi dependency and older Ubuntu LTS

2012-06-17 Thread Giorgos Keramidas
On Sun, Jun 17, 2012 at 2:48 PM, Uli Schlachter psyc...@znc.in wrote:
 On 17.06.2012 12:31, Giorgos Keramidas wrote:
 [...]
 Some of the dependencies of the lgi code cannot be met at all on my aging
 Ubuntu installation.
 [...]

 Never tried to install lgi, but which dependencies do you have problems with?
 Also, what exactly is an aging Ubuntu installation, how old exactly?

/etc/lsb-release says:
Ubuntu 10.04.1 LTS

Note that I do not have any control of the release version on
this laptop, for security reasons enforced for all employees
of my company.

I used to run awesome from git/master until about last week,
but then it grew a dependency on lgi, and lgi depends in turn
on gobject-introspection = 0.10.8.  But this version of
gobject-introspection is not available at all on my release.

What my main question is I guess goes like this:

- This seems to have added a dependency (indirect, through lgi,
  but still a dependency) of awesome to GTK+ or Gnome stuff
  with very specific version constraints.

- If that's the case, is there any way to build _without_ the features
  that depend on lgi and gobject-introspection?

-- 
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.


Re: New lgi dependency and older Ubuntu LTS

2012-06-17 Thread Uli Schlachter
Hi,

On 17.06.2012 16:20, Paweł Rumian wrote:
 2012/6/17 Uli Schlachter psyc...@znc.in:
 apt-get install -t unstable lgi

 But that doesn't count as trying to install it myself.
 
 Ah, OK, I was just wondering if there was another change that I have
 not noticed :)
 
 Anyway, I have just tried running the latest version from git and it
 fails with the following:
 
 /usr/local/share/lua/5.1/lgi/namespace.lua:149: Typelib file for
 namespace 'Pango' (any version) not found
 /etc/xdg/awesome/rc.lua:2: loop or previous error loading module 'awful'
 E: awesome: main:555: couldn't find any rc file
 
 Is it happening because of some intensive work-in-progress in the
 repository and I just need to be more patient or do I need to adjust
 something on my system?
 I am using lua-5.1 and lgi compiled manually from git sources.

Short version:
You need /usr/lib/girepository-1.0/Pango-1.0.typelib (in debian this is in
package gir1.2-pango-1.0).

Long version:
The gi in lgi means gobject introspection. The old oocairo and oopango
handwritten code and every single function needed to be bound by hand. 
Cumbersome.

The gobject API is supposed to be introspectable. That means that you can write
a program which gets a description of which functions are there and which
argument they take. This program can then call these functions.

This is especially useful for language bindings like lgi. Instead of having to
write the binding by hand, gobject introspection is used to figure out which
objects, functions etc exist and the binding for them is created
automatically[0]. Since I were the one who had to write the binding in oocairo
by hand, I love this approach. :-)

Your problem now seems to be that the description of which functions exist in
Pango is missing and thus lgi can't do its gobject-magic.

Uli


[0]: Well, it's not perfect. lgi contains overrides which extend the
introspectable API with extra stuff. Some of these functions aren't
introspectable (yet) and thus can't be auto-generated, some of this works around
bugs in the introspection information and some of this describes stuff which GIR
can't express (yet?).
-- 
- He made himself, me nothing, you nothing out of the dust
- Er machte sich mir nichts, dir nichts aus dem Staub

-- 
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.