diff --git a/docs/01-readme.md b/docs/01-readme.md index 18f1a7129..57000aff5 100644 --- a/docs/01-readme.md +++ b/docs/01-readme.md @@ -6,21 +6,21 @@ Awesome is a highly configurable, next generation framework window manager for X ## Building and installation -After extracting the dist tarball, run: +After extracting the dist tarball or cloning the repository, run: ```sh make +sudo make install ``` -This will create a build directory, run `cmake` in it and build Awesome. +This will -After building is finished, you can either install via `make install`: +1. create a build directory at `./build`, +2. run `cmake`, +3. build Awesome and +4. install it to the default prefix path `/usr/local`. -```sh -make install # you might need root permissions -``` - -or by auto-generating a .deb or .rpm package, for easy removal later on: +Alternatively to the above, you can generate a `.deb` or `.rpm` package, for easy installation management: ```sh make package @@ -30,14 +30,9 @@ sudo dpkg -i awesome-x.y.z.deb sudo rpm -Uvh awesome-x.y.z.rpm ``` -NOTE: Awesome uses [`cmake`](https://cmake.org) to build. In case you want to -pass arguments to `cmake`, please use the `CMAKE_ARGS` environment variable. For -instance: - -```sh -CMAKE_ARGS="-DCMAKE_INSTALL_PREFIX=/opt/awesome" make -``` +### 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](https://awesomewm.org/apidoc/10-building-and-testing.md.html). ### Installing current git master as a package receipts @@ -60,64 +55,6 @@ make package sudo apt install *.deb ``` - -### Build dependencies - -Awesome has the following dependencies (besides a more-or-less standard POSIX -environment): - -- [CMake >= 3.0.0](https://cmake.org) -- [Lua >= 5.1.0](https://www.lua.org) or [LuaJIT](http://luajit.org) -- [LGI >= 0.8.0](https://github.com/pavouk/lgi) -- [xproto >= 7.0.15](https://www.x.org/archive//individual/proto/) -- [libxcb >= 1.6](https://xcb.freedesktop.org/) with support for the RandR, XTest, Xinerama, SHAPE and - XKB extensions -- [libxcb-cursor](https://xcb.freedesktop.org/) -- [libxcb-util >= 0.3.8](https://xcb.freedesktop.org/) -- [libxcb-keysyms >= 0.3.4](https://xcb.freedesktop.org/) -- [libxcb-icccm >= 0.3.8](https://xcb.freedesktop.org/) -- [libxcb-xfixes](https://xcb.freedesktop.org/) -- [xcb-util-xrm >= 1.0](https://github.com/Airblader/xcb-util-xrm) -- [libxkbcommon](http://xkbcommon.org/) with X11 support enabled -- [libstartup-notification >= - 0.10](https://www.freedesktop.org/wiki/Software/startup-notification/) -- [cairo](https://www.cairographics.org/) with support for XCB and GObject - introspection -- [Pango](http://www.pango.org/) with support for Cairo and GObject - introspection -- [GLib >= 2.40](https://wiki.gnome.org/Projects/GLib) with support for GObject - introspection -- [GIO](https://developer.gnome.org/gio/stable/) with support for GObject - introspection -- [GdkPixbuf](https://wiki.gnome.org/Projects/GdkPixbuf) -- libX11 with xcb support -- [Imagemagick's convert utility](http://www.imagemagick.org/script/index.php) -- [libxdg-basedir >= 1.0.0](https://github.com/devnev/libxdg-basedir) - -Additionally, the following optional dependencies exist: - -- [DBus](https://www.freedesktop.org/wiki/Software/dbus/) for DBus integration - and the `awesome-client` utility -- [asciidoctor](https://asciidoctor.org/) for generating man pages -- [gzip](http://www.gzip.org/) for compressing man pages -- [ldoc >= 1.4.5](https://stevedonovan.github.io/ldoc/) for generating the - documentation -- [busted](https://olivinelabs.com/busted/) for running unit tests -- [luacheck](https://github.com/mpeterv/luacheck) for static code analysis -- [LuaCov](https://keplerproject.github.io/luacov/) for collecting code coverage - information -- libexecinfo on systems where libc does not provide `backtrace_symbols()` to - generate slightly better backtraces on crashes -- `Xephyr` or `Xvfb` for running integration tests -- [GTK+ >= 3.10](https://www.gtk.org/) for `./themes/gtk/` -- [xcb-errors](https://gitlab.freedesktop.org/xorg/lib/libxcb-errors) for - pretty-printing of X11 errors -- [libRSVG](https://wiki.gnome.org/action/show/Projects/LibRsvg) for displaying - SVG files without scaling artifacts -- [wmctrl](http://tripie.sweb.cz/utils/wmctrl) for testing WM interactions - with external actions -- [xterm](https://invisible-island.net/xterm/) for various test cases - ## Running Awesome You can directly select Awesome from your display manager. If not, you can diff --git a/docs/10-building-and-testing.md b/docs/10-building-and-testing.md index e904dc514..b68fd4ccb 100644 --- a/docs/10-building-and-testing.md +++ b/docs/10-building-and-testing.md @@ -138,5 +138,5 @@ Individual test categories can be run as well: * `make check-qa`: Run `luacheck` against the Lua library * `make check-unit`: Run unit tests with `busted` against the Lua library. You can also run `busted ./spec` if you want to specify options for `busted`. * `make check-requires`: Check for invalid `require()` calls. -* `make check-examples`: Run integration tests within the examples in `./tests/examples'. +* `make check-examples`: Run integration tests within the examples in `./tests/examples`. * `make check-themes`: Test themes.