The rest of the list does not assume a distro, so the AUR mention and the Arch package names for the Vulkan driver should not either. State what is needed and give the Arch names as a parenthetical.
124 lines
3.7 KiB
Markdown
124 lines
3.7 KiB
Markdown
Jeena's Hyprland setup
|
|
======================
|
|
|
|
This git repo hosts all the dotfiles I need for my hyprland setup. You
|
|
can use it to learn and to copy from it, but you probably don't want
|
|
to just use it as it is because it's very opinionated and hard coded.
|
|
|
|
Introduction Video
|
|
==================
|
|
|
|
[Jeena's Hyprland Demo](https://tube.jeena.net/w/2EpbXJnMrDokc3362oXSTQ)
|
|
|
|
Screenshots
|
|
===========
|
|
|
|
Hyprlock lockscreen with custom font and showing keyboard layout
|
|

|
|
|
|
Empty hyprland screen
|
|

|
|
|
|
Firefox and Kitty side by side, no margin on the outside
|
|

|
|
|
|
If only one window is visible, border is removed
|
|

|
|
|
|
Tofi as app menu
|
|

|
|
|
|
nmtui to edit network and tofi to choose I/O audio devices
|
|

|
|
|
|
wlogout menu
|
|

|
|
|
|
Install
|
|
=======
|
|
|
|
You need to clone this git repository to your computer, let's assume
|
|
you do:
|
|
|
|
```
|
|
mkdir -p ~/Projects/
|
|
cd ~/Projects/
|
|
git clone https://git.jeena.net/jeena/hypr-dotfiles.git
|
|
```
|
|
|
|
The next step is to set up a hostname config where you can overwrite
|
|
hyprland configs for a specific host:
|
|
|
|
```
|
|
cd ~/Projects/hypr-dotfiles/hypr/hosts/
|
|
touch $(hostname).conf
|
|
ln -s $(hostname).conf host.conf
|
|
```
|
|
|
|
|
|
Then you need to soft link the directories in this git repo to the
|
|
`~/.config/` directory, make sure that those directories don't exist
|
|
yet in your `~/.config`, you will need to delete or move them
|
|
before. In our example it would be:
|
|
|
|
```
|
|
cd ~/.config
|
|
ln -s ~/Projects/hypr-dotfiles/hypr hypr
|
|
ln -s ~/Projects/hypr-dotfiles/waybar waybar
|
|
ln -s ~/Projects/hypr-dotfiles/tofi tofi
|
|
ln -s ~/Projects/hypr-dotfiles/wlogout wlogout
|
|
ln -s ~/Projects/hypr-dotfiles/kitty kitty
|
|
ln -s ~/Projects/hypr-dotfiles/helix helix
|
|
ln -s ~/Projects/hypr-dotfiles/fcitx5 fcitx5
|
|
ln -s ~/Projects/hypr-dotfiles/whisrs whisrs
|
|
```
|
|
|
|
To enable the auto-mute/unmute timers (mutes at 21:00, unmutes at
|
|
07:00, only when idle-inhibit is active), link the systemd user units:
|
|
|
|
```
|
|
systemctl --user link ~/Projects/hypr-dotfiles/systemd/user/auto-mute.service
|
|
systemctl --user link ~/Projects/hypr-dotfiles/systemd/user/auto-mute.timer
|
|
systemctl --user link ~/Projects/hypr-dotfiles/systemd/user/auto-unmute.service
|
|
systemctl --user link ~/Projects/hypr-dotfiles/systemd/user/auto-unmute.timer
|
|
systemctl --user enable --now auto-mute.timer auto-unmute.timer
|
|
```
|
|
|
|
You also need to install all the dependencies:
|
|
|
|
- hyprland
|
|
- hypridle
|
|
- hyprlock
|
|
- wlogout
|
|
- tofi
|
|
- waybar
|
|
- swaybg
|
|
- nmtui
|
|
- kitty
|
|
- python3
|
|
- Curved Square font https://www.1001freefonts.com/curved-square.font
|
|
- FontAwesome
|
|
- ttf-jetbrains-mono-nerd (required for waybar icons)
|
|
- xdg-desktop-portal-hyprland
|
|
- xdg-desktop-portal-gtk
|
|
- uwsm (recommended; log in via the "Hyprland (uwsm-managed)" session so
|
|
systemd starts the portals before the autostart apps — otherwise apps like
|
|
waybar and chromium intermittently come up in light mode. Without uwsm the
|
|
portal startup script falls back to launching the portals manually.)
|
|
- fcitx5
|
|
- fcitx5-hangul
|
|
- pipewire-alsa (whisrs captures audio via raw ALSA; without it the default
|
|
PCM is the headset-jack mic, which is silent when nothing is plugged in)
|
|
- a Vulkan driver for your GPU (vulkan-intel + vulkan-icd-loader on Arch)
|
|
- whisrs (hold-to-talk voice dictation on the Copilot key; on Arch install
|
|
whisrs-git from the AUR). Rebuild it locally with -march=native and the
|
|
vulkan cargo feature, otherwise decoding is too slow; on this machine the
|
|
rebuild tooling lives in ~/Projects/whisrs-local-build
|
|
|
|
There are probably more, I will update the list next time I'm
|
|
installing it on a new computer.
|
|
|
|
License
|
|
=======
|
|
|
|
All scripts here are under the GPL-v3 or a later version.
|