hyprland-dotfiles/README.md

276 lines
10 KiB
Markdown
Raw Normal View History

2023-12-18 20:01:53 +00:00
# ML4W dotfiles 2.7 BETA 1
2023-01-22 17:27:01 +00:00
2023-11-26 14:52:49 +00:00
This is my configuration of Hyprland (Wayland) and Qtile (Xorg & Wayland) for Arch. This package includes an installation script to install and setup the required components.
2023-10-18 15:39:51 +00:00
2023-11-30 15:23:16 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v26/screenshot-26-1.png" alt="Click to watch on YouTube" /></a>
2023-11-26 14:55:15 +00:00
PLEASE NOTE: This branch is the rolling release of my dotfiles and includes the latest changes.
Please be aware that this version is not a tested release.
2023-11-21 06:36:23 +00:00
The released dotfiles are tested with Arch Linux, Manjaro Linux, EndeavourOS and Arco Linux.
2023-08-31 13:01:03 +00:00
2023-11-27 15:24:02 +00:00
You can find the video on YouTube: <a href="https://youtu.be/e9ro_P9rbFk" target="_blank">Dotfiles Configuration and Installation</a>
2023-11-14 19:53:27 +00:00
2023-11-26 15:00:12 +00:00
[TOC]
2023-11-26 15:06:51 +00:00
# Installation
2023-04-06 12:49:57 +00:00
2023-11-24 08:35:31 +00:00
To make it easy for you to get started with my dotfiles, here's a list of recommended next steps.
2023-11-24 14:30:48 +00:00
The script will try to create a backup from an previous dotfiles installation.
2023-11-26 14:55:15 +00:00
PLEASE BACKUP YOUR EXISTING .config FOLDER WITH YOUR DOTFILES BEFORE STARTING THE SCRIPTS FOR INITIONAL INSTALLTION.
PLEASE READ THIS README until the end before starting the installation.
2023-08-31 13:01:03 +00:00
2023-12-19 12:00:57 +00:00
Please note: To get the default Linux folder structure incl. Downloads, etc please install the packages xdg-user-dirs and run xdg-user-dirs-update.
2023-11-26 15:06:51 +00:00
## Installation with GIT (Rolling Release of main branch)
2023-08-31 13:01:03 +00:00
2023-11-24 08:35:31 +00:00
```
# 1.) Change into your Downloads folder
cd ~/Downloads
# 2.) Clone the dotfiles repository into the Downloads folder
git clone https://gitlab.com/stephan-raabe/dotfiles.git
# 3.) Change into the dotfiles folder
cd dotfiles
# 4.) Start the installation
./install.sh
2023-11-26 09:44:19 +00:00
```
2023-11-26 15:06:51 +00:00
## Update with GIT (Rolling Release of main branch)
2023-11-26 12:27:11 +00:00
```
# 1.) Change into your Downloads folder
cd ~/Downloads/dotfiles
# 2.) Pull the latest version and update the repository
git stash; git pull
# 3.) Start the installation to update
./install.sh
```
2023-12-19 12:01:30 +00:00
## Update with GIT (Rolling Release of main branch) (fresh update)
2023-11-26 12:27:11 +00:00
You can also update by deleting the ~/Downloads/dotfiles folder and clone again.
2023-11-26 09:44:19 +00:00
```
# 1.) Change into your Downloads folder
cd ~/Downloads
2023-11-26 10:28:25 +00:00
# 2.) Delete existing dotfiles folder from Downloads folder
rm -rf ~/Downloads/dotfiles
2023-11-26 09:44:19 +00:00
# 3.) Clone the dotfiles repository into the Downloads folder
git clone https://gitlab.com/stephan-raabe/dotfiles.git
# 4.) Change into the dotfiles folder
cd dotfiles
# 5.) Start the installation to update
./install.sh
2023-11-24 08:35:31 +00:00
```
2023-11-26 15:06:51 +00:00
## Installation by downloading the latest release
2023-11-24 08:35:31 +00:00
2023-11-26 12:34:37 +00:00
If you don't want to use the rolling release, you can download the latest release the latest release https://gitlab.com/stephan-raabe/dotfiles/-/releases or choose the the latest tag https://gitlab.com/stephan-raabe/dotfiles/-/tags and download the zip.
```
# 1.) Change into your Downloads folder where you have downloaded the release to
cd ~/Downloads
# 2.) Unzip
unzip dotfiles-2.6.zip
# 3.) Change into the new dotfiles folder
cd dotfiles-2.6
# 4.) Start the installation to update
./install.sh
```
2023-11-24 08:35:31 +00:00
2023-11-24 14:30:48 +00:00
You can also use the dotfiles installer script to download and install the latest release: https://gitlab.com/stephan-raabe/installer
2023-11-24 08:35:31 +00:00
2023-12-07 20:32:32 +00:00
## Installation Hook
The installation script will prepare the configuration files in a folder ~/dotfiles-versions/[version] before copying into the final destination in ~/dotfiles
If you want to modify the installation files just before the copy procedure starts, you can create a file hook.sh in the folder ~/dotfiles-versions
You can delete folders and files or update existing configurations.
```
#!/bin/bash
rm -rf ~/dotfiles-versions/$version/vim/
rm -rf ~/dotfiles-versions/$version/nvim/
```
This script will for example remove the vim and nvim folder before the installation. The symbolic link will not be created because the source folder doesn't exits.
You can find a template in .install/templates/hook.sh
2023-11-30 15:22:26 +00:00
## Hyprland & NVIDIA
2023-11-24 08:35:31 +00:00
There is no official Hyprland support for Nvidia hardware. However, you might make it work properly following this page.
https://wiki.hyprland.org/Nvidia/
That's why NVIDIA GPUs are currently not supported by my dotfiles. But in upcoming releases, I will try to setup Hyprland for NVIDIA based on the article above.
2023-08-31 13:01:03 +00:00
2023-11-27 08:44:11 +00:00
## Installation in a KVM virtual machine
Qtile X11 works fine in a KVM virtual machine. The Hyprland performance is low but it's enough for testing new features.
In virt-manager please make sure that 3D acceleration is enabled in Video Virtio and the Listen type is set to None in Display Spice.
2023-11-27 08:52:39 +00:00
To fix the mouse issue on Hyprland, open the Hyprland settings with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>S</kbd> and select in Environments the variation kvm.conf
2023-11-27 08:44:11 +00:00
2023-11-30 15:26:36 +00:00
## Base Hyprland installation with Hyperland Starter
If you want to install only the core packages of Hyprland as a starting point for your Hyprland experiments please also try my Hyprland Starter script: https://gitlab.com/stephan-raabe/hyprland-starter
2023-11-26 15:06:51 +00:00
# Some important key bindings
2023-11-24 14:30:48 +00:00
2023-11-26 14:52:49 +00:00
- <kbd>SUPER</kbd> + <kbd>RETURN</kbd>: Alacritty
- <kbd>SUPER</kbd> + <kbd>CMD</kbd> + <kbd>RETURN</kbd>: rofi application launcher
- <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd>: Change wallpaper
- <kbd>SUPER</kbd> + <kbd>PRINT</kbd>: Screenshot
- <kbd>SUPER</kbd> + <kbd>CMS</kbd> + <kbd>Q</kbd>: Logout screen
2023-11-24 14:30:48 +00:00
All keybindings for Hyprland with right mouse click on Apps in waybar or here:
2023-11-30 15:26:36 +00:00
https://gitlab.com/stephan-raabe/dotfiles/-/blob/main/hypr/conf/keybindings.conf
2023-11-24 14:30:48 +00:00
2023-11-30 15:26:36 +00:00
All keybindings for Qtile: https://gitlab.com/stephan-raabe/dotfiles/-/blob/main/qtile/config.py
2023-11-24 14:30:48 +00:00
2023-11-30 15:22:26 +00:00
# Hyprland
2023-11-10 21:12:15 +00:00
2023-11-27 15:24:02 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v26/screenshot-26-1.png" alt="Click to watch on YouTube" /></a>
2023-11-10 21:12:15 +00:00
2023-11-27 15:24:02 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v26/screenshot-26-2.png" alt="Click to watch on YouTube" /></a>
2023-01-22 17:27:01 +00:00
2023-11-30 15:28:34 +00:00
<b><a href="https://gitlab.com/stephan-raabe/dotfiles/-/tree/main/screenshots?ref_type=heads">You can find more screenshots here.</a></b>
2023-11-27 15:24:02 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank">Watch on YouTube</a>
2023-10-18 15:40:48 +00:00
2023-11-30 15:22:26 +00:00
## Wallpaper and Pywal
2023-11-10 21:12:15 +00:00
2023-11-30 15:19:52 +00:00
Included is a pywal configuration that changes the color scheme based on a randomly selected wallpaper. With the key binding <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd> you can change the wallpaper coming from the folder ~/wallpaper/.
2023-11-10 21:12:15 +00:00
2023-11-30 15:19:52 +00:00
<kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>W</kbd> opens rofi with a list of installed wallpapers in ~/wallpaper/ for your individual selection.
2023-11-10 21:12:15 +00:00
2023-11-30 15:22:26 +00:00
## Waybar themes and themeswitcher
2023-10-03 09:37:41 +00:00
2023-11-30 15:19:52 +00:00
In addition, you can switch the Waybar Template with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>T</kbd> or by pressing the "..." icon in Waybar with the themeswitcher.
2023-10-03 09:37:41 +00:00
2023-11-30 15:19:52 +00:00
The templates are available in ~/dotfiles/waybar/themes. You can add your own personal themes into this folder.
2023-10-18 09:14:29 +00:00
2023-11-30 15:19:52 +00:00
More information here: https://gitlab.com/stephan-raabe/dotfiles/-/tree/main/waybar
2023-10-03 09:37:41 +00:00
2023-11-30 15:22:26 +00:00
## Hyprland settings
2023-08-31 16:11:09 +00:00
2023-11-30 15:19:52 +00:00
You can open the settings script with <kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>S</kbd> to select variations for your hyprland.conf and customize your desktop even more.
2023-01-22 17:27:01 +00:00
2023-12-10 18:36:38 +00:00
You can create custom variations by copying a file from the ~/dotfiles/hypr/conf subfolders like monitor/default.conf, give the file a custom name (e.g., mymonitor.conf) and select the variation in the settings script in the corresponding section.
You can also edit the file custom.conf which is included at the bottom of the hyprland.conf and can hold you personal configurations.
You can also edit the file directly in the settings script in the section Custom.
2023-11-30 15:22:26 +00:00
## Screensharing and recording
2023-01-22 17:27:01 +00:00
2023-11-24 08:35:31 +00:00
In case you have issues with starting Waybar please make sure that only one xdg-desktop-portal-x is installed additionally to xdg-desktop-portal.
2023-09-05 04:31:24 +00:00
2023-11-24 08:35:31 +00:00
I had several issues with xdg-desktop-portal-wlr on Hyprland and Waybar. Please make sure that xdg-desktop-portal-wlr is uninstalled and xdg-desktop-portal-hyprland is installed.
2023-09-04 20:20:21 +00:00
2023-11-24 08:35:31 +00:00
More information you can find here:
https://gist.github.com/PowerBall253/2dea6ddf6974ba4e5d26c3139ffb7580
2023-11-15 07:41:58 +00:00
2023-11-24 08:35:31 +00:00
Please note that every Arch Linux system is different and I cannot guarantee that everything works fine on your system.
2023-11-20 07:45:06 +00:00
2023-11-30 15:22:26 +00:00
## Main packages
2023-11-20 07:45:06 +00:00
2023-11-24 08:35:31 +00:00
- Terminal: alacritty
- Editor: nvim
- Prompt: starship
- Icons: Font Awesome
- Launch Menus: Rofi
- Colorscheme: pywal
- Browsers: chromium (brave optional)
- Filemanager: Thunar
- Cursor: Bibata Modern Ice
- Icons: Papirus-Icon-Theme
- Status Bar: waybar
- Screenshots: grim & slurp
- Clipboard Manager: cliphist
2023-11-24 14:30:48 +00:00
- Logout: wlogout
- Screenlock: swaylock-effects
2023-11-30 15:22:26 +00:00
# Qtile
2023-11-30 15:19:52 +00:00
2023-11-30 15:22:26 +00:00
## X11
2023-11-30 15:19:52 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v25/screenshot-25-3.png" alt="Click to watch on YouTube" /></a>
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v25/screenshot-25-4.png" alt="Click to watch on YouTube" /></a>
2023-11-30 15:22:26 +00:00
## Wayland
2023-11-30 15:19:52 +00:00
2023-11-30 15:28:34 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v25/screenshot-25-1.png" alt="Click to watch on YouTube" /></a>
2023-11-30 15:19:52 +00:00
2023-11-30 15:28:34 +00:00
<a href="https://youtu.be/e9ro_P9rbFk" target="_blank"><img src="screenshots/v25/screenshot-25-2.png" alt="Click to watch on YouTube" /></a>
2023-11-30 15:19:52 +00:00
<b><a href="https://gitlab.com/stephan-raabe/dotfiles/-/tree/main/screenshots?ref_type=heads">You can find more screenshots here.</a></b>
2023-11-24 14:30:48 +00:00
2023-11-30 15:19:52 +00:00
2023-11-30 15:22:26 +00:00
## Wallpaper and Pywal
2023-11-30 15:19:52 +00:00
Included is a pywal configuration that changes the color scheme based on a randomly selected wallpaper. With the key binding <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>W</kbd> you can change the wallpaper coming from the folder ~/wallpaper/.
<kbd>SUPER</kbd> + <kbd>CTRL</kbd> + <kbd>W</kbd> opens rofi with a list of installed wallpapers in ~/wallpaper/ for your individual selection.
2023-11-30 15:22:26 +00:00
## Qtile status bar switcher
2023-11-30 15:19:52 +00:00
With <kbd>SUPER</kbd> + <kbd>SHIFT</kbd> + <kbd>S</kbd>, you can switch between the Qtile standard status bar and Polybar and back.
2023-11-30 15:22:26 +00:00
## Main Packages
2023-11-30 15:19:52 +00:00
2023-11-30 15:22:26 +00:00
### Qtile X11
2023-11-30 15:19:52 +00:00
- Terminal: alacritty
- Editor: nvim
- Prompt: starship
- Icons: Font Awesome
- Launch Menus: Rofi
- Colorscheme: pywal
- Browsers: chromium (brave optional)
- Filemanager: Thunar
- Cursor: Bibata Modern Ice
- Icons: Papirus-Icon-Theme
- Status Bar: Qtile status bar + Polybar (optional)
2023-11-30 15:26:36 +00:00
- Compositor: picom
2023-11-30 15:19:52 +00:00
- Screenshots: scrot
2023-11-30 15:22:26 +00:00
### Qtile Wayland
2023-11-30 15:19:52 +00:00
2023-11-30 15:26:36 +00:00
- Terminal: alacritty
- Editor: nvim
- Prompt: starship
- Icons: Font Awesome
- Launch Menus: Rofi
- Colorscheme: pywal
- Browsers: chromium (brave optional)
- Filemanager: Thunar
- Cursor: Bibata Modern Ice
- Icons: Papirus-Icon-Theme
- Status Bar: Qtile status bar
2023-11-24 14:30:48 +00:00
- Screenshots: grim & slurp
- Clipboard Manager: cliphist
- Logout: rofi power menu
2023-11-24 08:35:31 +00:00
- Screenlock: swaylock-effects
2023-11-20 07:45:06 +00:00
2023-11-30 15:22:26 +00:00
# Wallpaper repository
2023-01-22 17:27:01 +00:00
2023-11-30 15:19:52 +00:00
You can find my wallpaper collection in the repository https://gitlab.com/stephan-raabe/wallpaper