Skip to content

taylor85345/hyprland-dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Garden

Packages

WM          : Hyprland
terminal    : foot
bar         : eww
launcher    : rofi
file manager: Dolphin

Screenshot

HyprGarden.mp4

See hypr/themes for additional screenshots/clips of my various themes.

Dependencies

  • hyprland-git - Wayland Compositor/WM
  • eww - Bar and Widgets
  • nerd-fonts-inter - Font for bar text and icons
  • fuzzel - Rofi-like launcher
  • rofi-lbonn-wayland - For search utility, since no Wayland utilities can handle custom Rofi modi (that I know of)
  • dunst - Notification Daemon
  • mpvpaper - Video Backgrounds
  • socat - Socket utility for eww workspace module
  • geticons - Show icon of focused application in eww.
  • macchina - (Optional) Fetch Script in Garden theme
  • nitch - (Optional) Fetch Script in Neon/Cyber themes
  • trayer - Systray Utility (Optional, borked solution)

Installation

These instructions assume an Arch Linux-based distribution. Hyprland is not present in repositories for other Linux distribution as of this writing, and availability of other dependencies may vary. If a package is unavailable on your distribution, please see the links in the Dependencies section to the various repositories for each dependency, and follow the relevant instructions to install manually.

  1. Install an AUR Helper (if necessary):

    sudo pacman -S base-devel git
    git clone https://aur.archlinux.org/yay
    cd yay
    makepkg -si
  2. Install all required dependencies

    yay -S --needed hyprland-git eww-wayland rofi-lbonn-wayland dunst trayer mpvpaper macchina nitch nerd-fonts-inter socat geticons

  3. Clone the repository

    git clone --recursive https://github.com/taylor85345/hyprland-dotfiles.git

  4. Copy dotfiles into your config directory (assumptions made).

    cp -ri hyprland-dotfiles/* $HOME/.config/

Configuration

  • Default Apps script

    I've included the default_app script, which assigns a program to each workspace and opens the appropriate application for the focused workspace. Edit the script with your preferred application for each workspace. This is called with the SUPER SHIFT ENTER keybind, or by right-clicking on the appropriate workspace icon in the bar.

    Known issue: this script currently will not work if more than one monitor is active, as hyprctl does not provide a way to identify the focused monitor.

  • Application Theming

    For consistency, I use the following themes in GTK and QT apps:

    I highly recommend using QT5 applications with this theme, particularly those made for the KDE desktop environment, and applying the Inverse-dark theme via qt5ct and kvantum-manager.

  • Fetch Script

    If you want to use my fetch script, you will need to install Macchina and add macchina to your shell config:

    macchina

Tips

  • Keybinds

    SUPER LEFTMOUSE - Drag to move windows

    SUPER RIGHTMOUSE - Drag to resize windows

    SUPER ENTER - Open Terminal (foot)

    SUPER SHIFT ENTER - Open default application for focused workspace (see hypr/default_apps script)

    SUPER (1-9) - Switch to Workspace (1-9)

    SUPER SHIFT (1-9) - Move active window to Workspace (1-9)

    SUPER (LEFT,DOWN,UP,RIGHT or HJKL) - Move window focus within workspace

    SUPER SHIFT (LEFT,DOWN,UP,RIGHT or H,J,K,L) - Move window within tiling layout

    SUPER SHIFT (LEFT,DOWN,UP,RIGHT or H,J,K,L) - Move window within tiling layout

    SUPER CTRL (LEFT,RIGHT or H,L) - Move to Previous/Next Workspace

    SUPER D - Open Application Launcher (fuzzel)

    SUPER Q - Kill current window

    SUPER SHIFT Q - Kill Hyprland

    SUPER S - Toggle Tiling/Floating Window

    SUPER SHIFT R - Force reload of hyprland.cfg

    SUPER [ALT] T - Open or [Kill] Trayer

    SUPER [ALT] B - Open or [Kill] Bar

    SUPER [ALT] F12 - Enable or [Disable] Background Blur (Helps FPS in Games)

    SUPER SPACE - Launch Rofi File Browser Module

    This covers the basics. See the Binds section of hyprland.conf for all configured keybinds.