Go to file
Julien Danjou 8b21d64df6 client: export window type
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-22 11:11:54 +02:00
build-utils layout: add fair layout 2008-09-11 13:31:28 +02:00
common client: export window type 2008-09-22 11:11:54 +02:00
icons icons: optimize size 2008-09-12 09:36:35 +02:00
layouts client: rework all stacking stuff 2008-09-22 11:11:54 +02:00
lib keygrabber: push an hash table instead of indexed table 2008-09-22 11:11:54 +02:00
themes utils: add awsetbg to set background 2008-08-21 11:33:27 +02:00
utils awsetbg: fix typo 2008-09-13 13:33:23 +02:00
widgets client: remove useless skip attribute 2008-09-22 11:11:54 +02:00
.gitignore gitignore: add binaries 2008-09-22 10:37:07 +02:00
AUTHORS update AUTHORS file 2008-06-26 22:01:09 +02:00
BUGS BUG's page 2008-04-18 19:33:58 +02:00
CMakeLists.txt placement: deprecate in favor of awful.placement 2008-09-22 11:11:54 +02:00
LICENSE chance license to GPLv2 2007-09-12 14:29:51 +02:00
Makefile build: any target need cmake first 2008-08-04 11:51:11 +02:00
PATCHES update STYLE, add PATCHES 2008-08-30 13:09:15 +02:00
README Clean up dependency list in README 2008-09-15 20:30:32 +02:00
STYLE update STYLE, add PATCHES 2008-08-30 13:09:15 +02:00
awesome-client.1.txt Revert "Replace tags by workspaces" 2008-06-09 21:56:03 +02:00
awesome-client.c awesome-client: read on !tty 2008-09-22 11:10:07 +02:00
awesome-version-internal.h.in cmake: consolidate version strings 2008-06-22 22:13:06 +02:00
awesome.1.txt client: when redrawing a window, set the mouse focus on this window if 2008-08-21 08:12:52 +02:00
awesome.c client: split X props; handle fullscreen status 2008-09-22 11:11:54 +02:00
awesome.desktop build: add desktop file (FS#257) 2008-08-12 11:37:04 +02:00
awesome.doxygen.in doxygen: add lfield 2008-07-02 17:59:26 +02:00
awesome.h factorize quit/exec elements, and reparent systray 2008-09-02 17:12:10 +02:00
awesomeConfig.cmake change codename 2008-09-18 16:12:42 +02:00
awesomerc.5.txt awesomerc: add an explicit sentence 2008-08-21 13:57:20 +02:00
awesomerc.lua.in placement: deprecate in favor of awful.placement 2008-09-22 11:11:54 +02:00
client.c client: export window type 2008-09-22 11:11:54 +02:00
client.h client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
cnode.c comments fixing 2008-06-20 08:38:00 +02:00
cnode.h [focus] Split client_node functions out 2008-05-25 18:12:27 +02:00
config.h.in Fix default search path for configurations 2008-07-24 20:10:13 +02:00
dbus.c dbus, lua: set CLOEXEC on fds 2008-08-27 14:20:51 +02:00
dbus.h Plug dbus in the event loop. 2008-06-16 23:51:07 +02:00
event.c client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
event.h use xcb_flush; move refresh stuff in common function 2008-08-26 19:35:37 +02:00
ewmh.c client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
ewmh.h factorize quit/exec elements, and reparent systray 2008-09-02 17:12:10 +02:00
keybinding.c mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00
keybinding.h keybinding: honor modifier state correctly (FS#264) 2008-08-13 10:30:24 +02:00
keygrabber.c keygrabber: push an hash table instead of indexed table 2008-09-22 11:11:54 +02:00
keygrabber.h [keygrabber] Fix key mapping 2008-06-10 22:37:45 +02:00
layout.c mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00
layout.h Revert "Replace tags by workspaces" 2008-06-09 21:56:03 +02:00
lua.c hooks: rename mouseover to mouse_over and simplify config 2008-09-22 11:11:54 +02:00
lua.h mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00
mouse.c client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
mouse.h mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00
screen.c client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
screen.h screen: introduce screen objects 2008-08-11 17:14:02 +02:00
stack.c ewmh: add support for _NET_CLIENT_LIST_STACKING 2008-06-17 21:47:57 +02:00
stack.h [client] Add proper stacking support 2008-05-25 19:32:30 +02:00
statusbar.c widget: add support for mouse enter and leave events 2008-09-22 11:11:54 +02:00
statusbar.h statusbar: add statusbar_getbywin() 2008-09-22 11:11:54 +02:00
structs.h client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
systray.c systray: rely on xcb_atom_name_by_screen available since xcb-util 0.3.0 2008-09-16 13:42:17 +01:00
systray.h systray: add some cleanup code 2008-09-03 18:03:50 +02:00
tag.c client: split X props; handle fullscreen status 2008-09-22 11:11:54 +02:00
tag.h client: use a type attribute for NET WM window type 2008-09-22 11:11:54 +02:00
titlebar.c client: check for visibility before arranging 2008-09-22 11:11:53 +02:00
titlebar.h titlebar: remove/add now handle border 2008-09-22 11:11:54 +02:00
widget.c widget: add support for mouse enter and leave events 2008-09-22 11:11:54 +02:00
widget.h widgets: generic set/get for list 2008-08-19 19:13:46 +02:00
window.c mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00
window.h mouse: rework mouse buttons API, support release events 2008-09-22 11:11:53 +02:00

README

awesome
=======
awesome is an extremely fast, small, and dynamic window manager for X.

Requirements
------------
In order to build awesome itself, you need header files and libs of:
  - cmake (>= 2.6)
  - Xlib
  - xcb (>= 1.1)
  - xcb-util (>= 0.3)
  - Lua (>= 5.1)
  - cairo built with xcb support
  - pango and pangocairo
  - libev
  - glib
  - Imlib2 or GdkPixBuf (use -DWITH_IMLIB2=OFF with cmake)
  - dbus (optional, use -DWITH_DBUS=OFF with cmake to disable)
  - gperf

In order to build the awesome man pages and documentation,
you need these tools:
  - asciidoc
  - xmlto
  - docbook XSL stylesheets
  - luadoc

In order to build the source code reference, you need these tools:
  - doxygen
  - graphviz

Building and installation
-------------------------
After extracting the dist tarball, run:

  make

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

After the building done, you can type this to install:

  make install # 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 is provided in the sources.

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.