Elv1313 . | 20 Oct 17:27 2014

Announcing Retrograde 1.0: A module to configure your widgets like Awesome 3.4.*

Hello everyone Awesome,

I wrote this little module yesterday and I think some users will like it:


It allow you to setup layout using a declarative syntax again,
something I missed since the 3.4.* days. It is rare I consider a
module as complete and ready for the general public after 1 commit,
but this is quite small and straightforward. So enjoy!


Antonio Marín | 17 Oct 16:20 2014

awesome and xdotool

If you like (as myself) use more the keyboard and less the mouse, Awesome it's great... 
Some implementations as Rodentbane or little applications as xdotool can help even a little more.

Thats my rc.lua (v3.5.5) to do that... Maybe do you think it's better do the same in another way?

local leapV = 25
local leapH = 1
local function moveMouse(nx, ny)
        mouse.coords({ x = mouse.coords()["x"] + nx, y = mouse.coords()["y"] + ny })

--- in global_keys
     -- Bind to move the mouse
    awful.key({ modkey,         }, "Return", function () awful.util.spawn_with_shell("sleep 1 && xdotool click 1") end),
    awful.key({ modkey, "Shift" }, "Up", function() moveMouse(0, -leapV) end),
    awful.key({ modkey, "Shift" }, "Down", function() moveMouse(0, leapV) end),
    awful.key({ modkey, "Shift" }, "Left", function() moveMouse(-leapV, leapH) end),
    awful.key({ modkey, "Shift" }, "Right", function() moveMouse(leapV, leapH) end),
Zum Testen | 15 Oct 11:15 2014

Remove titlebar in some applications (awesome 3.5)

I would like to exclude some of my applications to have a title bar. For example, chromium should have no
title bar but all other applications should have one.

I found this thread: 
Unfortunately, the solutions seem to be a little bit outdated. I couldn't port them to awesome 3.5

What would be the appropriate way to remove the title bar for specific applications in awesome 3.5?

Zoch, Donald | 14 Oct 16:46 2014

attempt to call field 'font_map_get_default' crash



I’m attempting to get Awesome built and running on Redhat Enterprise Linux 5.  I’ve built all of the dependencies

and installed to a nfs mounted location.


I’m getting an error when I start which seems to be related to libpangocairo.   I’m not sure what is wrong with my

installation or how to debug it.      I’ve started with building all dependencies from scratch several times and

have tried different versions of Pango and Cairo and still end up with the same issue no matter what I do.


>  lua -e 'print (require("lgi"). PangoCairo.font_map_get_default())'

lua: (command line):1: attempt to call field 'font_map_get_default' (a nil value)

stack traceback:

        (command line):1: in main chunk

        [C]: ?


error while running function

stack traceback:

        ...ge/awesomedeps-10714/share/awesome/lib/beautiful.lua:47: in function 'load_font'

        ...ge/awesomedeps-10714/share/awesome/lib/beautiful.lua:59: in function 'set_font'

        ...ge/awesomedeps-10714/share/awesome/lib/beautiful.lua:112: in main chunk

        [C]: in function 'require'

        ...awesomedeps-10714/share/awesome/lib/awful/prompt.lua:20: in main chunk

        [C]: in function 'require'

        ...e/awesomedeps-10714/share/awesome/lib/awful/init.lua:16: in main chunk

        [C]: in function 'require'

        /home/zochd/.config/awesome/rc.lua:3: in main chunk

error: ...ge/awesomedeps-10714/share/awesome/lib/beautiful.lua:47: attempt to call field 'font_map_get_default' (a nil value)

E: awesome: main:535: couldn't find any rc file



Any tips would be appreciated




Donald Zoch

Daniel | 14 Oct 15:05 2014

internal manipulation of icon pixmap

I'm currently manipulating program's icons with a hook. I grayscale/modulate
the icons using external convert(1). Recently external call has begun to take
too long time. Seconds. Which hangs awesome... Is it possible to toh
this image manipulation internally with cairo, lua, or something like

Dmitry Grigoriev | 9 Oct 18:13 2014

awful.util.spawn creates a process with PPID=1. Any way to create a child of awesome process?

Hello again.

Isabella, thank you for answering my previous question.

Now I want to show a confirmation yes-no dialog and get user's choice. 
For now I know only one way - via external process, so I do this:

local pid = awful.util.spawn("Xdialog --yesno 'hello?' 7 34")
local x1, x2, status = posix.wait(pid)
if not x1 then error("posix.wait() failed for PID=" .. pid .. ": " .. 
x2) end
local isYes = status == 0

The problem is that both spawn() and spawn_with_shell() create a child 
of init process (PPID=1), not the child of awesome, so wait() always 
gives me "No child processes" error. Is there any way to fix/overcome this?

I also tried os.exec() and posix.fork()+posix.exec(), both ways make WM 
unresponsive: mouse cursor moves but no other reactions to my 
mouse/keyboard commands.



Best regards,
Dmitry Grigoriev

Dmitry Grigoriev | 9 Oct 09:00 2014
Dmitry Grigoriev <mail <at> dimgel.ru>

Subject: How to place widgets on desktop itself?

How to place widgets on desktop itself?

Hi all.

I'm a newbie in Awesome, have a few questions and will ask each one 

Wiki says that I can place widgets on status bar and title bar. Never 
mentioned how to place them on desktop: like application icons or 
gkrellm-like graphical system monitors (ideally - with semi-transparent 
background). I believe it's possible because someone has already done 
it: http://awesome.naquadah.org/w/images/Screenshot-nac-theme.png So, 
how can I do it?



Best regards,
Dmitry Grigoriev

Gerome Fournier | 5 Oct 17:17 2014

awesome-client && dbus reply


I've been using awesome-client with success to execute some lua code
through dbus, but I'm wondering how to obtain a reply from this code.

If I have a function like this un my rc.lua file:

    dbus_test = function()
        -- do something...

        -- let's try to return a value
        return "test"

when I call it through dbus, I dont get any response. The code is
executed, but the return statement is not handled properly, a dbus
reply is not generated (awesome-client is calling dbus-send
with the argument --print-reply):

    $ echo "dbus_test()" | awesome-client

I would expect the following output:

    $ echo "dbus_test()" | awesome-client
       string "test"

After digging in /usr/share/awesome/lib/awful/remote.lua, I can see
how the call is made: 

    dbus.add_signal("org.naquadah.awesome.awful.Remote", function(data, code)
        if data.member == "Eval" then
            local f, e = loadstring(code)
            if f then
                results = { f() }    <-- call is made here

But the results table is always empty, and I don't understand
why. If anyone have an idea or a proper example how to get a reply
from a dbus call, I would appreciate.

My version of awesome:

    awesome v3.4.15 (Never Gonna Give You Up)
     • Build: Feb 17 2013 21:10:46 for x86_64 by gcc version 4.7.2 (buildd <at> barber)
     • D-Bus support: ✔

Gerome Fournier


To unsubscribe, send mail to awesome-unsubscribe <at> naquadah.org.

Maytar Byle | 5 Oct 15:06 2014

Automatically open processes on startup


I'm running awesome 3.4 and i wanted to add a feature that on startup - a list of processes will be loaded to their designated tags.
For example: terminal will be loaded to the first tag, music player will be loaded to the fifth etc..

The code i added to rc.lua goes like this:

tag_apps = { { terminal, terminal } , { terminal } }
for i = 1, #tag_apps do
for j = 1, #tag_apps[i] do
--awful.client.movetotag(i, c)

teminal is the terminal command.

My problems are those:
1. spawn makes the xserver crash and i don't understand why.
2. Even if it would work, how do i get the client object for the process i just opened so i can move it to the correct tag with movetotag?

Thank you!
Yussi | 4 Oct 10:08 2014

problems with xcb_cursor libraries

Hi, i'm struggling to build the latest git on a debian system, i'm getting

Linking C executable awesome
CMakeFiles/awesome.dir/awesome.c.o: In function `awesome_atexit':
/home/volcan/Repositories/awesome/awesome.c:94: undefined reference to
CMakeFiles/awesome.dir/awesome.c.o: In function `main':
/home/volcan/Repositories/awesome/awesome.c:429: undefined reference to
CMakeFiles/awesome.dir/common/xcursor.c.o: In function `xcursor_new':
/home/volcan/Repositories/awesome/common/xcursor.c:144: undefined
reference to `xcb_cursor_load_cursor'
collect2: error: ld returned 1 exit status
make[2]: *** [awesome] Error 1
make[1]: *** [CMakeFiles/awesome.dir/all] Error 2
make: *** [all] Error 2

anyone got any suggestions?

i suspect this is relevant, this is my libxcursor  (the one i have on
deb repositories, do i need to build a different version of it?
Package: libxcursor-dev
Source: libxcursor
Version: 1:1.1.13-1+deb7u1


Antonio Marín | 3 Oct 14:14 2014


I have a problem trying to add an application switcher...
 awful.key({ "Mod1" }, "Escape", function ()
     -- If you want to always position the menu on the same place set coordinates
     awful.menu.menu_keys.down = { "Down", "Alt_L" }
     awful.menu:clients({theme = { width = 250 }}, { keygrabber=true, coords={x=525, y=330} })
It's working for me... But after escape, the next time duplicate the apps showed... Finally my XWindow session it's closed...
A similar experience? Some help?