Go to file
Julien Danjou fef8ef91cb awful: add no_overlap and no_offscreen placement
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: split X props; handle fullscreen status 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 awful: add no_overlap and no_offscreen placement 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 layout: add fair layout 2008-09-11 13:31:28 +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 hooks: rename mouseover to mouse_over and simplify config 2008-09-22 11:11:54 +02:00
client.c client: now support fullcoords, with border and titlebar included 2008-09-22 11:11:54 +02:00
client.h client: split X props; handle fullscreen status 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 hooks: rename mouseover to mouse_over and simplify config 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: rework all stacking stuff 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: include header file for key_getkeysym() 2008-08-13 12:31:42 +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 titlebar: remove/add now handle border 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
placement.c titlebar: remove/add now handle border 2008-09-22 11:11:54 +02:00
placement.h placement: rename FloatingPlacement to floating_placement_t 2008-06-15 10:55:07 +02:00
screen.c client: rework all stacking stuff 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 hooks: rename mouseover to mouse_over and simplify config 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: rework all stacking stuff 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.