/KwesomeDE

A desktop environment made in AwesomeWM

Primary LanguageLua

🎀 KwesomeDE 🎀

Thanks for dropping by!

Welcome to my AwesomeWM configuration files, aka KwesomeDE.

The setup section will guide you through the installation process. AwesomeWM is the most powerful and highly configurable, next generation framework window manager for X, Although it takes time and effort to configure it, but I'm very satisfied with the result.

❄️ ‎ Information

Here are some details about my setup:

Main Features:

  • Wi-Fi Applet
  • Bluetooth Applet
  • Audio Applet
  • CPU Applet
  • RAM Applet
  • Disk Applet
  • Introduction/Setup tool
  • Screenshot tool
  • Recorder tool
  • Theme Manager
  • Desktop Icons
  • Control Panel
  • Message Panel
  • Info Panel
  • Main Menu
  • Client Menu
  • App Launcher
  • Lock Screen
  • Power/Exit Screen
  • Window Switcher
  • Notifications for various system events
  • Titlebars
  • Ncmpcpp Custom UI
  • Many more!

AwesomeWM Modules:

  • bling
    • Adds new layouts, modules, and widgets that try to primarily focus on window management
  • layout-machi
    • Manual layout for Awesome with an interactive editor
  • color
    • Contains a bunch of useful function for conversion as well as well as a very nice api for just colors in general.

🔧 ‎ Setup

1. Install AwesomeWM

Install the git version of AwesomeWM

Arch users can use this following command

yay/paru -S awesome-git

For other distros, build instructions are here.

2. Install Dependencies
Dependency Why/Where is it needed?
networkmanager Network notifcations, applet/wibar widget
nm-connection-editor Used in the wifi applet settings button
bluez Bluetooth notifcations, applet/wibar widget
blueman Used in the bluetooth applet settings button
pipewire-pulse/pulsaudio + pactl Audio notifcations, applet/wibar widget
libgudev Used for USB notifications (optional - use commands)
libgusb Used for USB notifications
upower Battery notifications/widgets
lm_sensors CPU Temperature
brightnessctl Brightness daemon and widget
redshift Blue light toggle
inotify-tools Daemons that monitor filesystem events
maim Screenshot widget
xcolor Used for color picking
ffmpeg Record widget
picom Compositor widget/notifcations
playerctl Media daemon and controls
fortune-mod Fortune daemon (unused, but might change)
imagemagick Used to generate colors from wallpapers
neofetch Used to display system info
libsecret Used to secrets in a secured way

Arch Linux (and other Arch-based distributions)

   pacman -Sy networkmanager nm-connection-editor bluez blueman pipewire pipewire-pulse libgusb libgudev upower lm_sensors brightnessctl redshift inotify-tools maim xcolor ffmpeg playerctl fortune-mod imagemagick neofetch libsecret --needed

Assuming your AUR Helper is yay or paru.

   yay/paru -Sy picom-animations-git --needed
3. Install Fonts
  • Font Awesome 6 Pro - PAID
  • Nerd Font Mono - here
  • Iosevka - here
  • Oswald - here

Once you download them and unpack them, place them into ~/.fonts or ~/.local/share/fonts

And run this command for your system to detect the newly installed fonts.

fc-cache -v
4. Install KwesomeDE

Clone this repository

git clone --recurse-submodules https://github.com/Kasper24/KwesomeDE ~/.config/awesome

Finally, now you can login with AwesomeWM

Congratulations, at this point you have installed this aesthetic dotfiles! 🎉

Log out from your current desktop session and log in into AwesomeWM

⌨️ ‎ Keybinds

Awesome
Keybind Action
super + r Reload awesome
super + q Quit awesome
Screen
Keybind Action
super + ctrl + j Focus the next screen
super + ctrl + k Focus the previous screen
Client
Keybind Action
super + c Close client
super + t Toggle titlebar
super + space Toggle floating
super + f Toggle fullscreen
super + m Toggle maximize client
super + ctrl + m Toggle maximize client vertically
super + shift + m Toggle maximize client horizontally
super + n Minimize client
super + shift + n Restore minimized clients
super + shift + b Make tiny float and keep on top
super + shift + c Move and resize to center
super + c Center a client
super + shift + up Move up
super + shift + down Move down
super + shift + left Move left
super + shift + right Move right
super + ctrl + up Resize up
super + ctrl + down Resize down
super + ctrl + left Resize left
super + ctrl + right Resize right
super + up Focus up
super + down Focus down
super + left Focus left
super + right Focus right
super + j Focus next
super + k Focus previous
super + shift + k Swap with next
super + shift + j Swap with previous
super + shift + return Swap focused client with master
super + tab Go back in history
super + shift + u Jump to urgent
alt + a Pick client to add to tab group
alt + s Iterate through tabbing group
alt + d Remove focused client from tabbing group
Layout
Keybind Action
super + shift + = Increase paddings
super + shift + - Decrease paddings
super + = Increase gaps
super + - Decrease gaps
super + ctrl + h Increase number of columns
super + ctrl + l Decrease number of columns
super + shift + h Increase number of master clients
super + shift + l Decrease number of master clients
super + h Increase master width
super + l Decrease master width
super + . Edit the current layout if it is a machi layout
super + / Switch between windows for a machi layout
Tags
Keybind Action
super + [1-9] View tag
super + [1-9] Toggle tag
super + shift + [1-9] Move focused client to tag
super + ctrl + [1-9] Move focused client and switch to tag
super + s View none
Media
Keybind Action
XF86AudioPlay Toggle media
XF86AudioPrev Previous media
XF86AudioNext Next media
XF86AudioMute Mute volume
XF86MonBrightnessUp Increase brightness
XF86MonBrightnessDown Decrease brightness
print Screenshot widget
super + p Color picker
UI
Keybind Action
super + d Toggle app launcher
super + escape Toggle exit screen
alt + tab Window switcher
super + F1 Toggle hotkeys

🖱️ ‎ Mousebinds

Desktop
Mousebind Action
right click Toggle main menu
Client
Mousebind Action
left click Focus a client
super + left click Make a client floating and move it
super + right click Make a client floating and resize it

🌊 ‎ Gallery

Action Panel action panel preview
Message Panel message panel preview
Info Panel info panel preview
Wi-Fi Applet wifi applet preview
Bluetooth Applet bluetooth applet preview
Audio Applet audio applet preview
CPU Applet cpu applet preview
Theme Manager theme manager preview
Screenshot Tool screenshot preview
Recorder Tool recorder preview
Power Screen power screen preview
Lock Screen lock screen preview
Main Menu main menu preview
Client Menu client menu preview
Notification notification preview
ncmpcpp ncmpcpp preview

💡 ‎ Acknowledgements