Go to file
Nikos Ntarmos 1a829fd76d Make awesome-client exit with a meaningful value on error
As discussed on #awesome, the attached patch makes awesome-client exit
with a meaningful value (i.e. that of errno) when it encounters an
error. Since the most frequent error with awesome-client is a mismatch
in the socket path, there is an explicit case for ENOENT errors. I
thought of adding a matching fprintf in awesome.c, but you can tell what
socket awesome is listening on by looking at what ~/.awesome_ctl.* file
you have.

CAVEAT: Exiting on error may break setups such as:

	while true; do
		echo "some text"
	done | /path/to/awesome-client

which relied on awesome-client continuing to send to the given socket
(although failing) until EOF was encountered on stdin.
2007-11-19 20:42:06 +01:00
layouts rename uicb_set* to uicb_tag_set* since they apply on tags 2007-11-14 18:12:33 +01:00
.gitignore added awesome-client to ignore list 2007-11-04 17:39:04 +01:00
AUTHORS add Nikos Ntarmos in AUTHORS 2007-11-14 17:21:12 +01:00
LICENSE chance license to GPLv2 2007-09-12 14:29:51 +02:00
Makefile ignore cp errors 2007-11-16 20:23:28 +01:00
README remove useless information about statusbar for now 2007-10-12 18:44:07 +02:00
STYLE add a rule to STYLE 2007-11-12 19:11:14 +01:00
awesome-client-common.c add display name in socket path 2007-10-29 17:29:58 +01:00
awesome-client.c Make awesome-client exit with a meaningful value on error 2007-11-19 20:42:06 +01:00
awesome-client.h add display name in socket path 2007-10-29 17:29:58 +01:00
awesome.1 update manpage: remove mouse bindings 2007-11-14 17:43:36 +01:00
awesome.c delete key->arg on cleanup 2007-11-15 17:21:38 +01:00
awesome.doxygen set version to devel 2007-09-18 23:30:10 +02:00
awesome.h add cleanup_screen() and setup_screen() functions to split init/clean ops 2007-10-30 14:59:24 +01:00
awesomerc remove _ on view_prev and view_next to be homogeneous 2007-11-14 21:38:25 +01:00
client.c move_client_to_screen() implies tag_client_with_current_selected() 2007-11-15 14:49:08 +01:00
client.h rename uicb_swap{prev,next} to uicb_client_swap{prev,next} 2007-11-14 18:07:35 +01:00
common.h tabswidth is 4 not 6 2007-10-15 13:56:24 +02:00
config.c move UicbList in uicb.c 2007-11-15 14:41:03 +01:00
config.h remove mouse modkey 2007-11-14 19:50:30 +01:00
config.mk Make config.mk bsd-friendly 2007-11-08 11:40:35 +01:00
draw.c use real and smaller surface size to draw statusbar when rotating 2007-11-13 21:23:13 +01:00
draw.h statusbar drawable is no more stored but dynamicaly created; this fix a problem with statusbar on right 2007-11-11 22:27:00 +01:00
event.c fix reloadconfig segmentation fault 2007-11-15 17:20:22 +01:00
event.h introduce mouse.[ch] files and move uicb_mouse*() to them 2007-11-13 22:57:57 +01:00
layout.c uicb_client_zoom() on nmaster swap with next window 2007-11-17 08:37:42 +01:00
layout.h rename setlayout to tag_setlayout 2007-11-14 18:19:00 +01:00
mouse.c rename uicb_*mouse to uicb_client_*mouse 2007-11-14 18:14:23 +01:00
mouse.h rename uicb_*mouse to uicb_client_*mouse 2007-11-14 18:14:23 +01:00
rules.c get_client_screen_from_rules() is not needed; deleting 2007-11-13 22:50:54 +01:00
rules.h get_client_screen_from_rules() is not needed; deleting 2007-11-13 22:50:54 +01:00
screen.c remove old screen client_sel if needed 2007-11-15 15:44:16 +01:00
screen.h rename screen uicb correctly 2007-11-14 18:16:43 +01:00
statusbar.c use real and smaller surface size to draw statusbar when rotating 2007-11-13 21:23:13 +01:00
statusbar.h fix information headers 2007-10-17 10:53:32 +02:00
tag.c handle uicb_client_toggletag() with no args or with i > ntags 2007-11-16 22:07:58 +01:00
tag.h rename uicb_view to uicb_tag_view 2007-11-14 18:07:38 +01:00
uicb.c move UicbList in uicb.c 2007-11-15 14:41:03 +01:00
uicb.h tabswidth is 4 not 6 2007-10-15 13:56:24 +02:00
util.c tabswidth is 4 not 6 2007-10-15 13:56:24 +02:00
util.h tabswidth is 4 not 6 2007-10-15 13:56:24 +02:00
window.c mouse button clicks on windows are now configurable 2007-11-14 17:18:16 +01:00
window.h mouse button clicks on windows are now configurable 2007-11-14 17:18:16 +01:00

README

awesome
=======
awesome is an extremely fast, small, and dynamic window manager for X.
It's based on dwm.

Requirements
------------
In order to build awesome you need the Xlib header files, libconfuse and cairo.

Installation
------------
Edit config.mk to match your local setup (awesome is installed into
the /usr/local namespace by default).

Afterwards enter the following command to build and install awesome (if
necessary as root):

    make install

Running awesome
-----------
Add the following line to your .xinitrc to start awesome using startx
or to .xsession to start awesome using gdm/kdm/xdm...:

    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 ~/.awesomerc file.
An example is provided in the sources.