WillPower3309 / awesome-dotfiles

Dotfiles for awesome people using the awesomewm linux environment
1.17k stars 68 forks source link
arch awesome awesomewm config dotfiles emacs linux lua neovim nvim picom rice rofi theme vim

Awesome Dotfiles

Pastel Theme

Mirage Theme

Contents

  1. Details
  2. Features
  3. Dependencies
  4. Installation
  5. Folder Structure
  6. Application Theming
  7. Keybinds
  8. Notes

Details

Features

Dependencies

I have made my best effort to reduce the number of dependencies by using the awesome API to its fullest extent, and allowing users to specify their preferred applications via the rc.lua file (see installation section). That being said, here are the dependencies:

Dependency Description
awesome Window manager
feh Fast image viewer used as wallpaper setting utility
picom-ibhagwan Window compositor, eliminates screen tearing and allows for cool fade effects. ibhagwan version required for mirage theme
rofi Application launcher
imagemagick OPTIONAL BUT NEEDED IF USING A DIFFERENT BACKGROUND, used in config to generate blurred wallpaper

Optional Dependencies

These will improve the user experience but aren't required: Bear in mind that most of these dependencies come preinstalled on non arch systems. I would recommend reading their descriptions below to determine which ones you need to install. Alternatively, set up my config and install the packages based on what isn't appearing in the top panel.

Fonts You Should Install

Installation

  1. Ensure all dependencies are met
  2. Clone this repository and place its contents into your .config folder
  3. edit the awesome/rc.lua file to select your theme, and define your desired default and startup applications, as well as network interfaces
  4. navigate to the awesome/wallpaper folder and place your desired wallpaper there, ensuring that it is named either wallpaper.jpg if using the pastel theme, or mirage.png if using the mirage theme. Remember to delete the blurredWallpaper file in order to make the blurring script recognize a new wallpaper has been added and needs to be blurred
  5. optional: edit the keys.lua file to change / add keybinds

Awesome Folder File Structure

In order to avoid a poorly organized rc.lua spanning thousands of lines, it has been split into multiple files / folders. I have taken extra care to create a logical directory structure that will hopefully allow those new to awesomewm to have an easy time navigating it.

Other cool applications you should install

Application Theming

Firefox

Pastel

  1. Set up my custom Firefox theme
  2. Use this homepage
  3. Use SF Text font

Mirage

  1. Set up the blurredfox theme
  2. Replace the colors/blurred.css with the one found in this repo under awesome/configuration/mirage/blurred.css

Spotify

  1. Install Spicetify
  2. chown spotify directory: sudo chown $USER -R /opt/spotify
  3. run spicetify once to generate config
  4. spicetify backup apply enable-devtool to enable devtools
  5. Copy my spicetify folder to ~/.config
  6. run spicetify update restart

Neovim

  1. Ensure the nvim folder from the repo has been copied into the ~/.config directory
  2. Install VimPlug with
    curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
  3. Open neovim and run :PlugInstall
  4. Exit and reopen neovim

Zsh

  1. Install oh-my-zsh
    sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
  2. Change the zsh theme to powerlevel10k
    • Download this font, and move it into your /usr/share/fonts directory
    • Install powerlevel10k with the command below:
      git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
    • Open ~/.zshrc with your fave text editor
    • Set ZSH_THEME="powerlevel10k/powerlevel10k" and save the file
  3. Install Plugins (Note that the ~/.zshrc edits are already done in this repo)
    • Syntax highlighting (copy and paste the below command to install)
      git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
    • Edit ~/.zshrc, add zsh-syntax-highlighting to the plugins section
    • Autosuggestions (copy and paste the below command to install)
      git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
    • Edit ~/.zshrc, add zsh-autosuggestions to the plugins section
  4. Fini! Reopen the terminal to view the fruit of your labor

Keybinds

Note that the modkey is set to be the windows / command key. If you would like to use a different modkey check out the keys.lua file. If you are new to awesomewm, note that tag refers to workspace, and client refers to window. Shown below are the main keybinds that most users will care about.

Keyboard

Mouse

Notes