Awesome is a highly configurable, next generation framework window manager for X.
Building and installation
After extracting the dist tarball or cloning the repository, run:
make sudo make install
- create a build directory at
- build Awesome and
- install it to the default prefix path
Alternatively to the above, you can generate a
.rpm package, for easy installation management:
make package sudo dpkg -i awesome-x.y.z.deb # or sudo rpm -Uvh awesome-x.y.z.rpm
Advanced options and testing
A full list of dependencies, more advanced build options, as well as instructions on how to use the test suite can be found here.
Installing current git master as a package receipts
Arch Linux AUR
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/awesome-git.git cd awesome-git makepkg -fsri
sudo apt build-dep awesome git clone https://github.com/awesomewm/awesome cd awesome make package cd build sudo apt install ./*.deb
You can directly select Awesome from your display manager. If not, you can
add the following line to your
.xinitrc to start Awesome using
.xsession to start Awesome using your display manager:
In order to connect Awesome to a specific display, make sure that
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.)
The configuration of Awesome is done by creating a
$XDG_CONFIG_HOME/awesome/rc.lua file, typically
An example configuration named
awesomerc.lua is provided in the source.
On most systems any message printed by Awesome (including warnings and errors)
is written to
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.
You can call awesome with
gdb like this:
DISPLAY=:2 gdb awesome
gdb set any arguments and run it:
(gdb) set args --replace (gdb) run
You can join us in the
#awesome channel on the OFTC IRC network.
You can ask questions on Stack Overflow.
We also have an awesome subreddit where you can share your work and ask questions.
Please report any issues you may find on our bugtracker.
You can submit pull requests on the GitHub repository. Please read the contributing guide for any coding, documentation or patch guidelines.
Online documentation is available here.
The project is licensed under GNU General Public License v2 or later. You can read it online at (v2 or v3).