awesomewm/README.md

79 lines
2.1 KiB
Markdown
Raw Normal View History

2021-08-01 07:24:26 -07:00
# Awesomewm configuration
Core configuration for awesomewm.
The PACKAGES file contains information on dependencies and desktop setup
Rofi config in bin/rofi is set to use the papirus theme. Edit the configs there
to change it.
Copy conf-example.lua into conf.lua, then configure your system.
## Project structure
All directories are ``require``d from the root project dir.
Most directories contain an init.lua.
That file initializes the module, it is run when the module is required.
bin: various non-awesome scripts and configs
binds: keyboard and mouse binds
errors.lua: manages errors in rc.lua
clients:
Manages applications.
Awesome keybinds for applications are in clients/binds.
desktop:
Manages tags, wallpapers, and the bar (with its widgets).
theme:
Theming. Everything there compiles into a ton of awesome.beautiful.*
variables that are used throughout this project.
wrapper:
Scripts that provide an interface to system functions.
rc.lua:
The main script, axwesomewm only looks for this file.
Everything else in this project is pulled in by it.
## Dependencies
rofi
Launcher. Config is in bin/rofi
Fish shell
All scripts in bin/scripts are written for the fish shell.
upower, xbacklight
Used for battery and backlight management.
flameshot, scrot, xclip, tesseract
Scrot is used for quick screenshots. Script is bin/scripts/capture.
Tesseract is used for OCR screenshots. Make sure to install language packs!
(e.g. tesseract-data-eng, tesseract-data-rus)
It is also used in bin/scripts/capture.
Flameshot is used for regular screenshots.
pamixer
Used to control pulseaudio in wrapper/volume
sox
provides the play command used to play system sounds.
It may need some extra packages for certain file types (mp3).
See the documentation.
ibus
This configuration does not rely on ibus default keybinds. Instead, it uses
ibus cli commands (see wrapper.ibus) to make language switching work.
If you do not need multilanguage input, you may remove wrapper.ibus,
desktop.popups.language, and the language binds in binds.system.input.
redshift
Used to tint the screen.
MPC
Used in keybinds.