Go to file
Alex Cornejo 00721a15ea layout: add fair layout
Based on the original idea of Nathan Huesken, which was then implemented by
Gwenhael Le Moine, I completed and corrected the layout.

I added icons for the layout and modified the makefile and the aweseomerc.lua.in
to include the fair layout.

In the process I also decided to modify layoutgen.sh and tag.c, so that in the
future new layouts can be added without touching tag.c.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-09-11 13:31:28 +02:00
build-utils layout: add fair layout 2008-09-11 13:31:28 +02:00
common util: fix a_exec, use it for spawn 2008-09-08 01:45:22 +02:00
icons layout: add fair layout 2008-09-11 13:31:28 +02:00
layouts layout: add fair layout 2008-09-11 13:31:28 +02:00
lib awful: add client.setslave() 2008-09-10 17:04:54 +02:00
themes utils: add awsetbg to set background 2008-08-21 11:33:27 +02:00
utils utils: add awsetbg to set background 2008-08-21 11:33:27 +02:00
widgets textbox: reinit draw parser data 2008-09-02 14:03:11 +02:00
.gitignore gitignore: remove all files 2008-08-12 21:13:39 +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 Added troubleshooting section. 2008-08-29 08:17:13 +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 socket, awesome-client: fix computing if DISPLAY unset 2008-08-28 19:51:44 +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 core: ungrab before init dbus 2008-09-11 11:15:55 +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 build: add minimal version checks for xcb-util 2008-09-06 13:53:50 +02:00
awesomerc.5.txt awesomerc: add an explicit sentence 2008-08-21 13:57:20 +02:00
awesomerc.lua.in layout: add fair layout 2008-09-11 13:31:28 +02:00
client.c client: screen focus is handled by phys_screen 2008-09-06 09:18:23 +02:00
client.h client: implement maybevisible(), and use it for maprequest 2008-08-11 11:57:57 +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 event: handle mapping notify events 2008-09-07 23:22:53 +02:00
event.h use xcb_flush; move refresh stuff in common function 2008-08-26 19:35:37 +02:00
ewmh.c factorize quit/exec elements, and reparent systray 2008-09-02 17:12:10 +02:00
ewmh.h factorize quit/exec elements, and reparent systray 2008-09-02 17:12:10 +02:00
keybinding.c keybinding: ignore LOCK 2008-09-10 17:02:07 +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 window: rename functions according to the rest of code 2008-08-13 19:06:20 +02:00
layout.h Revert "Replace tags by workspaces" 2008-06-09 21:56:03 +02:00
lua.c util: fix a_exec, use it for spawn 2008-09-08 01:45:22 +02:00
lua.h client: make coords a method 2008-08-20 12:00:22 +02:00
mouse.c use xcb_flush; move refresh stuff in common function 2008-08-26 19:35:37 +02:00
mouse.h [client] Rework raise and mouse stuff 2008-05-26 18:08:29 +02:00
placement.c screen: introduce screen objects 2008-08-11 17:14:02 +02:00
placement.h placement: rename FloatingPlacement to floating_placement_t 2008-06-15 10:55:07 +02:00
screen.c use xcb_flush; move refresh stuff in common function 2008-08-26 19:35:37 +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 systray: reparent windows 2008-09-01 17:54:53 +02:00
statusbar.h screen: reset statusbar and windows properly on padding changes 2008-08-14 18:25:45 +02:00
structs.h systray: reparent windows 2008-09-01 17:54:53 +02:00
systray.c systray: add some cleanup code 2008-09-03 18:03:50 +02:00
systray.h systray: add some cleanup code 2008-09-03 18:03:50 +02:00
tag.c layout: add fair layout 2008-09-11 13:31:28 +02:00
tag.h screen: make tags array overwritable 2008-08-13 10:33:15 +02:00
titlebar.c use xcb_flush; move refresh stuff in common function 2008-08-26 19:35:37 +02:00
titlebar.h titlebar: use need_update system (like statusbar, …) 2008-07-31 14:11:07 +02:00
widget.c widget: invalidate on visible flag change 2008-08-25 14:19:36 +02:00
widget.h widgets: generic set/get for list 2008-08-19 19:13:46 +02:00
window.c xutil: remove XUTIL_ANY_MODIFIER 2008-08-19 10:59:40 +02:00
window.h client: rework and document opacity field 2008-08-15 02:00:58 +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
  - Xlib, xcb and xcb-util (>= 0.2.1)
  - Lua 5.1
  - cairo
  - 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.