That looks like a cairocffi/cffi problem. Do you have a user (i.e.
non-root) install of cairocffi that you would only get when running as a
user? If so, you should try removing and re-installing it.

How did you install qtile to "/home/malkuth/bin/"? If you did it by hand
you need to run `python libqtile/ffi_build.py`.

Sean

On Thu, Sep 17, 2015 at 10:09 AM, Stephen Barnes <[email protected]>
wrote:

> First off, thanks for writing Qtile, I've been using it for about a year
> now and it's great.
>
> I'm trying to update to the latest version. I followed the instructions
> for installing from source at
> http://qtile.readthedocs.org/en/latest/manual/install/ . When I run qtile
> as the root user, everything runs fine:
>
> > su
>> Password:
>> # qtile
>> No handlers could be found for logger "qtile"
>> 2015-09-17 08:02:25,867 qtile init_log:107  Starting Qtile
>> 2015-09-17 08:02:25,871 qtile _setup_xcursor_binding:115  xcb-cursor not
>> found, fallback to font pointer
>> ^C
>
>
> However, when I run it from a user account, there's some problem with
> Cairo:
>
> No handlers could be found for logger "qtile"
>> 2015-09-17 08:01:20,969 qtile init_log:107  Starting Qtile
>> 2015-09-17 08:01:20,989 qtile _setup_xcursor_binding:115  xcb-cursor not
>> found, fallback to font pointer
>> 2015-09-17 08:01:21,013 qtile make_qtile:129  Qtile crashed during startup
>> Traceback (most recent call last):
>>   File "/home/malkuth/bin/qtile", line 126, in make_qtile
>>     state=options.state,
>>   File "/home/malkuth/bin/libqtile/manager.py", line 179, in __init__
>>     self._process_screens()
>>   File "/home/malkuth/bin/libqtile/manager.py", line 385, in
>> _process_screens
>>     self.groups[i],
>>   File "/home/malkuth/bin/libqtile/config.py", line 262, in _configure
>>     i._configure(qtile, self)
>>   File "/home/malkuth/bin/libqtile/bar.py", line 199, in _configure
>>     i._configure(qtile, self)
>>   File "/home/malkuth/bin/libqtile/widget/groupbox.py", line 73, in
>> _configure
>>     self.fontshadow
>>   File "/home/malkuth/bin/libqtile/drawer.py", line 340, in textlayout
>>     font_shadow, markup=markup, **kw)
>>   File "/home/malkuth/bin/libqtile/drawer.py", line 47, in __init__
>>     layout = drawer.ctx.create_layout()
>>   File "/home/malkuth/bin/libqtile/pangocffi.py", line 64, in
>> create_layout
>>     return PangoLayout(cairo_t._pointer)
>>   File "/home/malkuth/bin/libqtile/pangocffi.py", line 85, in __init__
>>     self._pointer = pangocairo.pango_cairo_create_layout(cairo_t)
>> TypeError: initializer for ctype 'cairo_t *' must be a pointer to same
>> type, not cdata 'struct _cairo *'
>> Traceback (most recent call last):
>>   File "/home/malkuth/bin/qtile", line 135, in <module>
>>     q = make_qtile()
>>   File "/home/malkuth/bin/qtile", line 126, in make_qtile
>>     state=options.state,
>>   File "/home/malkuth/bin/libqtile/manager.py", line 179, in __init__
>>     self._process_screens()
>>   File "/home/malkuth/bin/libqtile/manager.py", line 385, in
>> _process_screens
>>     self.groups[i],
>>   File "/home/malkuth/bin/libqtile/config.py", line 262, in _configure
>>     i._configure(qtile, self)
>>   File "/home/malkuth/bin/libqtile/bar.py", line 199, in _configure
>>     i._configure(qtile, self)
>>   File "/home/malkuth/bin/libqtile/widget/groupbox.py", line 73, in
>> _configure
>>     self.fontshadow
>>   File "/home/malkuth/bin/libqtile/drawer.py", line 340, in textlayout
>>     font_shadow, markup=markup, **kw)
>>   File "/home/malkuth/bin/libqtile/drawer.py", line 47, in __init__
>>     layout = drawer.ctx.create_layout()
>>   File "/home/malkuth/bin/libqtile/pangocffi.py", line 64, in
>> create_layout
>>     return PangoLayout(cairo_t._pointer)
>>   File "/home/malkuth/bin/libqtile/pangocffi.py", line 85, in __init__
>>     self._pointer = pangocairo.pango_cairo_create_layout(cairo_t)
>> TypeError: initializer for ctype 'cairo_t *' must be a pointer to same
>> type, not cdata 'struct _cairo *'
>> ^C
>
>
> I'm on Ubuntu 14.04, running Python 2.7.6. (Python 3.4.0 is also
> installed.)
>
> I suspect I'm making some noob mistake with the package manager. Here's
> some of the output from `sudo python setup.py install`, showing the
> dependency versions:
>
> Processing dependencies for qtile==0.10.1
> Searching for trollius==2.0
> Best match: trollius 2.0
> Adding trollius 2.0 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for cffi==1.2.1
> Best match: cffi 1.2.1
> Adding cffi 1.2.1 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for six==1.9.0
> Best match: six 1.9.0
> Adding six 1.9.0 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for cairocffi==0.7.2
> Best match: cairocffi 0.7.2
> Adding cairocffi 0.7.2 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for xcffib==0.3.6
> Best match: xcffib 0.3.6
> Adding xcffib 0.3.6 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for futures==3.0.3
> Best match: futures 3.0.3
> Adding futures 3.0.3 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Searching for pycparser==2.14
> Best match: pycparser 2.14
> Adding pycparser 2.14 to easy-install.pth file
>
> Using /usr/local/lib/python2.7/dist-packages
> Finished processing dependencies for qtile==0.10.1
>
> --
> You received this message because you are subscribed to the Google Groups
> "qtile-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"qtile-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to