Behold, my dynamic Hyprland rice ! Rofi theme : Wlogout theme (for waybar) :
I am currently fighting against those annoying config, cache and data directories inside of my home folder, so there is a bunch of environment set for this, you may yeet this without any problem.
Almost required software :
- rofi-wayland : app launcher
- hyprlock : stylish lock screen
- mpvpaper : for wallpaper support
- wl-clip-persist and wl-clipboard : finally a working clipboard manager
- brightnessctl : brightness control
- playerctl : media player control
- python-pywal : automatic colours for Hyprland (archived, as neofetch...shiet)
- xdg-desktop-portal-hyprland : portal for screensharing
- xdg-desktop-portal-gtk : portal for file picker
Status bar :
- ags : Aylur's GTK shell
- pipewire, bluez, bluez-utils : basic bluetooth support
- bunAUR : some JS fuckery
- dart-sass : some CSS fuckery
- gnome-bluetooth-3.0 : for bluetooth applet
- hyprpicker : color picker for Hyprland
- [optional] python-gpustatAUR : get nvidia GPU usage on dashboard
- [optional] matugenAUR : a palette generator
- [optional] gpu-screen-recorderAUR : maybe this can work, but not for me
Old status bar :
- waybar : wabar :)
- wlogout : session menu
- mako : notifications daemon
- blueman
- network-manager-applet
- gawk : arithmetics for VRAM usage query
Optional software :
- greetd : a minimalistic login manager
- kitty : terminal emulator
- nautilus : file manager
- vesktop : best wayland discord client so far, but breaks ToS
- btop & resources : TUI & GUI system monitors
- grimblast-gitAUR : a really good screenshot utility for Hyprland
- kvantum & kvantum-qt5 : for unified Qt and GTK themes
- fastfetch : to show off your rice
You should use autologin feature from your login manager as my config will lock your session automatically on startup because hyprlock is classier than any login manager's config known to me.
In that case,do not forget to automatically launch dbus-run-session Hyprland
and not just Hyprland
, otherwise some things will break, especially screenshare.
Edit /etc/greetd/config.toml
:
[terminal]
vt = 1
[initial_session]
command = "dbus-run-session Hyprland"
user = "USERNAME"
[default_session]
command = "agreety --cmd/bin/TERMINAL"
user = "greeter"
# it can restart Hyprland automatically if you just want to reload it when logging out, in that case use this one :
#[default_session]
#command = "dbus-run-session Hyprland"
#user = "USERNAME"
You shall run wallpaper set /path/to/wallpaper.avif_goofy_aah
once in order to get your dynamic rice accordingly as you will get default colours upon first launch.
Yeah, only static images are supported by hyprlock at the moment, so forget about GIF, animated WEBP or AVIF. Just pray for animated wallpaper support.
Or pray so that I finally write a stupid shell script to extract the first frame of an animated wallpaper to make hyprlock happy, but I'm too lazy :3.
As I have to set them outside of Hyprland's config, here they are :
Edit /etc/zsh/zshenv
:
export XDG_DATA_HOME="$HOME"/.local/share
export XDG_CONFIG_HOME="$HOME"/.config
export XDG_CACHE_HOME="$HOME"/.cache
export ZDOTDIR="$XDG_CONFIG_HOME"/zsh
I made two scripts for toggling integrated touchpad and keyboard for laptops, but their name can differ from one computer to another.
That is why you should hyprctl devices
, look for your integrated devices names and replace at-translated-set-2-keyboard
and elan1203:00-04f3:307a-touchpad
with yours in .config/hypr/scripts/keyboard-toggle.sh
, .config/hypr/scripts/touchpad-toggle.sh
and .config/hypr/input.conf
.
That way, you will be able to easily access these controls in wabar and by keybinds (super+shift+k
and xf86touchpadtoggle
)
I set up hardware acceleration with nvidia but disabled rendering though it, because my monitor is not wired to my dGPU, so you might want to tweak these settings, in that case, get to for setting up this despicable thing. I left a config file for this, but be careful as I do not update it often : .config/hypr/nyavidia.conf
.
For people who does not have nvidia-smi, wabar should have missing parts : this is because the GPU temperature section cannot be displayed. Well, just remove custom-gpu
and custom-vram
modules and round corners in .config/waybar/
to make it look pretty again.
This one is only supposed to work for intel CPUs using pstate driver, without any guarantee. This was painful and I do not plan on making it it better for now.
Hyprland : https://github.com/hyprwm/Hyprland
HyprPanel : https://github.com/Jas-SinghFSU/HyprPanel