2015-02-20 15:24:26 +01:00
# Readme
2017-08-16 20:07:08 +02:00
## About Awesome
2014-05-24 22:14:06 +02:00
2017-08-16 20:07:08 +02:00
Awesome is a highly configurable, next generation framework window manager for X.
2007-09-05 20:15:00 +02:00
2014-05-26 21:26:52 +02:00
## Building and installation
2014-05-24 22:14:06 +02:00
2021-03-10 22:53:34 +01:00
After extracting the dist tarball or cloning the repository, run:
2007-09-05 20:15:00 +02:00
2021-03-10 22:50:24 +01:00
```sh
make
2021-03-10 22:53:34 +01:00
sudo make install
2021-03-10 22:50:24 +01:00
```
2007-09-05 20:15:00 +02:00
2021-03-10 22:53:34 +01:00
This will
2008-07-01 08:25:40 +02:00
2021-03-10 22:53:34 +01:00
1. create a build directory at `./build` ,
2. run `cmake` ,
3. build Awesome and
4. install it to the default prefix path `/usr/local` .
2008-07-01 08:25:40 +02:00
2021-03-10 22:53:34 +01:00
Alternatively to the above, you can generate a `.deb` or `.rpm` package, for easy installation management:
2015-01-19 01:20:33 +01:00
2021-03-10 22:50:24 +01:00
```sh
make package
2016-12-28 12:39:03 +01:00
2021-03-10 22:50:24 +01:00
sudo dpkg -i awesome-x.y.z.deb
# or
sudo rpm -Uvh awesome-x.y.z.rpm
```
2015-01-19 01:20:33 +01:00
2021-03-10 22:53:34 +01:00
### Advanced options and testing
2016-12-28 12:39:03 +01:00
2021-11-28 23:59:51 +01:00
A full list of dependencies, more advanced build options, as well as instructions on how to use the test suite can be found [here ](https://awesomewm.org/apidoc/documentation/10-building-and-testing.md.html ).
2019-01-01 18:43:43 +01:00
### Installing current git master as a package receipts
#### Arch Linux AUR
2021-03-10 22:50:24 +01:00
```sh
2019-01-01 18:43:43 +01:00
sudo pacman -S --needed base-devel git
git clone https://aur.archlinux.org/awesome-git.git
cd awesome-git
makepkg -fsri
```
#### Debian-based
2021-03-10 22:50:24 +01:00
```sh
2019-01-01 18:43:43 +01:00
sudo apt build-dep awesome
git clone https://github.com/awesomewm/awesome
cd awesome
make package
2022-06-09 11:16:12 +02:00
cd build
sudo apt install ./*.deb
2019-01-01 18:43:43 +01:00
```
2017-08-16 20:07:08 +02:00
## Running Awesome
2014-05-24 22:14:06 +02:00
2017-08-16 20:07:08 +02:00
You can directly select Awesome from your display manager. If not, you can
2019-06-09 19:47:31 +02:00
add the following line to your `.xinitrc` to start Awesome using `startx`
2017-08-16 20:07:08 +02:00
or to `.xsession` to start Awesome using your display manager:
2007-09-05 20:15:00 +02:00
2021-03-10 22:50:24 +01:00
```sh
exec awesome
```
2007-09-05 20:15:00 +02:00
2017-08-16 20:07:08 +02:00
In order to connect Awesome to a specific display, make sure that
2014-05-24 22:14:06 +02:00
the `DISPLAY` environment variable is set correctly, e.g.:
2007-09-05 20:15:00 +02:00
2021-03-10 22:50:24 +01:00
```sh
DISPLAY=foo.bar:1 exec awesome
```
2007-09-05 20:15:00 +02:00
2017-08-16 20:07:08 +02:00
(This will start Awesome on display `:1` of the host foo.bar.)
2007-09-05 20:15:00 +02:00
2014-05-26 21:26:52 +02:00
## Configuration
2014-05-24 22:14:06 +02:00
2017-08-16 20:07:08 +02:00
The configuration of Awesome is done by creating a
2015-07-24 02:25:39 +02:00
`$XDG_CONFIG_HOME/awesome/rc.lua` file, typically `~/.config/awesome/rc.lua` .
2014-04-07 23:21:25 +02:00
2017-02-05 18:16:27 +01:00
An example configuration named `awesomerc.lua` is provided in the source.
2008-08-29 02:21:58 +02:00
2014-05-26 21:26:52 +02:00
## Troubleshooting
2014-05-24 22:14:06 +02:00
2017-08-16 20:07:08 +02:00
On most systems any message printed by Awesome (including warnings and errors)
2015-07-24 02:25:39 +02:00
is written to `~/.xsession-errors` .
2014-04-07 23:21:25 +02:00
2017-08-16 20:07:08 +02:00
If Awesome does not start or the configuration file is not producing the
2014-04-07 23:21:25 +02:00
desired results the user should examine this file to gain insight into the
problem.
2008-08-29 02:21:58 +02:00
2016-04-04 22:44:49 +02:00
### Debugging tips
You can call `awesome` with `gdb` like this:
2021-03-10 22:50:24 +01:00
```sh
DISPLAY=:2 gdb awesome
```
2016-04-04 22:44:49 +02:00
2019-06-09 19:47:31 +02:00
Then in `gdb` set any arguments and run it:
2016-04-04 22:44:49 +02:00
2021-03-10 22:50:24 +01:00
```
(gdb) set args --replace
(gdb) run
```
2019-01-01 18:43:43 +01:00
2018-11-19 22:01:37 +01:00
## Asking questions
2018-11-19 22:09:46 +01:00
#### IRC
You can join us in the `#awesome` channel on the [OFTC ](http://www.oftc.net/ ) IRC network.
[IRC Webchat ](https://webchat.oftc.net/?channels=awesome )
2018-11-19 22:01:37 +01:00
#### Stack Overflow
You can ask questions on [Stack Overflow ](http://stackoverflow.com/questions/tagged/awesome-wm ).
#### Reddit
2022-09-07 00:43:36 +02:00
We also have an [awesome subreddit ](https://www.reddit.com/r/awesomewm/ ) where you can share your work and ask questions.
2016-04-04 22:44:49 +02:00
2014-05-26 21:26:52 +02:00
## Reporting issues
2014-05-24 22:14:06 +02:00
Please report any issues you may find on [our bugtracker ](https://github.com/awesomeWM/awesome/issues ).
2018-11-19 22:01:37 +01:00
## Contributing code
2022-09-07 00:43:36 +02:00
You can submit pull requests on the [GitHub repository ](https://github.com/awesomeWM/awesome ).
2018-11-19 22:01:37 +01:00
Please read the [contributing guide ](https://github.com/awesomeWM/awesome/blob/master/docs/02-contributing.md ) for any coding, documentation or patch guidelines.
2014-05-26 21:26:52 +02:00
2015-04-26 04:00:50 +02:00
## Status
2019-01-29 11:24:31 +01:00
[![Build Status ](https://travis-ci.com/awesomeWM/awesome.svg?branch=master )](https://travis-ci.com/awesomeWM/awesome)
2015-04-26 04:00:50 +02:00
2015-07-24 02:25:39 +02:00
## Documentation
2018-11-19 22:01:37 +01:00
Online documentation is available [here ](https://awesomewm.org/apidoc/ ).
2015-07-24 02:25:39 +02:00
2014-05-26 21:26:52 +02:00
## License
2019-06-09 22:11:11 +02:00
The project is licensed under GNU General Public License v2 or later.
2014-05-26 21:26:52 +02:00
You can read it online at ([v2](http://www.gnu.org/licenses/gpl-2.0.html)
or [v3 ](http://www.gnu.org/licenses/gpl.html )).