Replace your desktop environment with a keyboard-driven tiling window manager for a faster, distraction-free workflow.
Write Lua scripts to automatically arrange windows based on which application opens.
Build a custom status bar with widgets showing CPU usage, battery level, or network stats.
Requires an X11 environment, you must configure .xinitrc or a display manager entry to launch it, then edit rc.lua before it is usable.
Awesome is a window manager for the Linux desktop, specifically for the X window system. A window manager controls how application windows are displayed on screen: which ones overlap, how they tile, which keyboard shortcuts open or close things. Awesome is classified as a tiling window manager, meaning it arranges windows to fill the screen without overlapping, rather than letting you drag them around freely. What makes it different from most window managers is that its entire configuration is written in Lua, a lightweight scripting language. You write or edit a file called rc.lua to define your own keybindings, layouts, status bar widgets, and rules for how specific apps behave when they open. There is no graphical settings panel. Instead, everything is expressed as code, which means experienced users can make the environment behave exactly as they want, but the learning curve is steep for newcomers. Installing Awesome requires building it from source or using a package manager that supports it. Common Linux distributions like Arch Linux and Debian have packages available. After installation, you tell your display manager to launch Awesome, or add a line to your .xinitrc file to start it manually. The project is licensed under the GNU General Public License version 2 or later, which means it is free to use, modify, and share. Support channels include an IRC channel on OFTC, a Reddit community at r/awesomewm, and Stack Overflow. Bug reports go to GitHub issues, and code contributions are accepted via pull requests. Documentation for the full API lives at awesomewm.org, covering everything from layout modules to widget APIs. This is a project for Linux users who want deep control over their desktop environment and are comfortable editing configuration files and reading technical documentation.
← awesomewm on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.