Find a file
Uli Schlachter 6adeafdec3 Test if cairo-xcb is usable during startup
Create a pixmap of size 1x1 and a cairo-xcb surface for this pixmap. If the
surface ends up in an error state, awesome will refuse to start.

This turns a "awesome is unusable and prints lots of errors on X11 servers where
the root window has a depth of 8bpp and no one knows where exactly the problem
is" into "awesome refuses to start on such X11 servers and prints an error that
helps Uli to say immediately what the problem is".

Signed-off-by: Uli Schlachter <psychon@znc.in>
2015-02-18 21:23:47 +01:00
build-tests use CMake check_function_exists() for execinfo 2010-10-11 22:52:20 +02:00
build-utils Bump minimum lgi dependency to 0.7.0 2014-03-17 17:52:09 +01:00
common luaA_object_emit_signal: check for valid object 2015-02-10 14:52:47 +01:00
icons icons: remove invaders 2009-09-08 13:29:25 +02:00
lib awful.util.deprecate: do not use glib.String() for the hash 2015-02-15 10:52:35 +01:00
luadoc Add c:apply_size_hints() to client objects 2015-02-14 15:12:46 +01:00
manpages Remove F1-9 bindings from the manpages. 2013-03-10 11:22:35 +01:00
objects Merge pull request #119 from psychon/apply_size_hints 2015-02-15 01:47:25 +01:00
spec awful.util.unittest: Move into spec/ 2015-02-14 13:38:01 +01:00
themes taglist: Add [bg|fg]_empty 2013-12-02 15:10:10 +01:00
utils Remove all traces of awsetbg and wallpaper setters 2012-07-29 15:38:31 +02:00
.gitignore
AUTHORS update Arnaud commit years 2009-08-24 11:13:59 +02:00
awesome-version-internal.h.in
awesome.c Test if cairo-xcb is usable during startup 2015-02-18 21:23:47 +01:00
awesome.desktop Remove NoDisplay from desktop file 2013-02-25 11:50:00 +01:00
awesome.doxygen.in awesome.doxygen: doxygen configuration fixes. 2009-09-04 18:18:03 +02:00
awesome.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
awesomeConfig.cmake cmake: Remove useless program checks 2014-07-13 16:18:01 +02:00
awesomerc.lua.in rc.lua: Prevent clients from being lost on RANRD changes 2014-11-01 18:53:03 -04:00
banning.c Clean up header includes 2014-03-30 20:07:48 +02:00
banning.h Clean up header includes 2014-03-30 20:07:48 +02:00
BUGS
CMakeLists.txt timer: Move from C to lua as gears.timer 2014-12-06 16:44:04 +01:00
color.c Clean up header includes 2014-03-30 20:07:48 +02:00
color.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
config.h.in test for __builtin_clz() and fallback to an inline implementation. 2010-10-11 20:42:03 +02:00
config.ld.in Use LDoc instead of Luadoc (FS#1006) 2012-11-19 14:57:47 +01:00
dbus.c a_dbus_message_iter: Handle DBUS_TYPE_DOUBLE 2015-01-17 19:44:04 +01:00
dbus.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
draw.c Test if cairo-xcb is usable during startup 2015-02-18 21:23:47 +01:00
draw.h Test if cairo-xcb is usable during startup 2015-02-18 21:23:47 +01:00
event.c Hide globalconf.L 2014-12-06 11:56:58 +01:00
event.h Clean up header includes 2014-03-30 20:07:48 +02:00
ewmh.c Add new request::urgent signal 2015-02-10 19:27:46 +00:00
ewmh.h Clean up header includes 2014-03-30 20:07:48 +02:00
globalconf.h Hide globalconf.L 2014-12-06 11:56:58 +01:00
keygrabber.c Clean up header includes 2014-03-30 20:07:48 +02:00
keygrabber.h Clean up header includes 2014-03-30 20:07:48 +02:00
keyresolv.c Clean up header includes 2014-03-30 20:07:48 +02:00
keyresolv.h Clean up header includes 2014-03-30 20:07:48 +02:00
LICENSE
luaa.c awesome: Add startup signal 2015-02-14 15:41:11 +01:00
luaa.h awesome: Add startup signal 2015-02-14 15:41:11 +01:00
Makefile Makefile: distclean is a phony target 2014-08-23 22:09:17 +02:00
mouse.c Fix some more dubious uses of globalconf.L 2014-12-06 11:07:20 +01:00
mouse.h Revert "Support more than 5 mouse buttons" (FS#1082) 2013-03-29 16:07:13 +01:00
mousegrabber.c Clean up header includes 2014-03-30 20:07:48 +02:00
mousegrabber.h Revert "Support more than 5 mouse buttons" (FS#1082) 2013-03-29 16:07:13 +01:00
PATCHES PATCHES: Mention the unit tests 2014-09-13 14:07:09 +02:00
property.c Add new request::urgent signal 2015-02-10 19:27:46 +00:00
property.h Add new request::urgent signal 2015-02-10 19:27:46 +00:00
README.md Move README to README.md 2014-04-08 13:47:24 +02:00
root.c Fix some more dubious uses of globalconf.L 2014-12-06 11:07:20 +01:00
selection.c Clean up header includes 2014-03-30 20:07:48 +02:00
selection.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
spawn.c Hide globalconf.L 2014-12-06 11:56:58 +01:00
spawn.h Clean up header includes 2014-03-30 20:07:48 +02:00
stack.c Clean up header includes 2014-03-30 20:07:48 +02:00
stack.h Clean up header includes 2014-03-30 20:07:48 +02:00
strut.c remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
strut.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
STYLE STYLE: add prefix rule 2009-08-21 15:30:48 +02:00
systray.c Hide globalconf.L 2014-12-06 11:56:58 +01:00
systray.h remove encoding=utf-8 from modelines 2011-09-11 17:34:09 +02:00
xwindow.c xwindow_shape_pixmap: Correctly handle invalid geometry 2014-04-14 10:04:14 +02:00
xwindow.h Clean up header includes 2014-03-30 20:07:48 +02:00

awesome

awesome is a highly configurable, next generation framework window manager for X.

Building and installation

After extracting the dist tarball, run:

make

This will create a build directory, run cmake in it and build awesome.

After building is finished, you can install:

make install  # you might need root permissions

Running awesome

You can directly select awesome from your display manager. If not, you can add the following line to your .xinitrc to start awesome using startx or to .xsession to start awesome using your display manager:

exec awesome

In order to connect awesome to a specific display, make sure that the DISPLAY environment variable is set correctly, e.g.:

DISPLAY=foo.bar:1 exec awesome

(This will start awesome on display :1 of the host foo.bar.)

Configuration

The configuration of awesome is done by creating a $XDG_CONFIG_HOME/awesome/rc.lua file.

An example configuration named "awesomerc.lua.in" is provided in the source.

Troubleshooting

In most systems any message printed by awesome (including warnings and errors) are written to $HOME/.xsession-errors.

If awesome does not start or the configuration file is not producing the desired results the user should examine this file to gain insight into the problem.

Reporting issues

Please report any issues you may find at https://awesome.naquadah.org/bugs/ . You can submit pull requests at https://github.com/awesomeWM/awesome .