/hyprdots

// Aesthetic, dynamic and minimal dots for Arch hyprland

Primary LanguageShell

--// Hyprdots //--

        .                                                     
       / \         _       _  _                  _     _      
      /^  \      _| |_    | || |_  _ _ __ _ _ __| |___| |_ ___
     /  _  \    |_   _|   | __ | || | '_ \ '_/ _` / _ \  _(_-<
    /  | | ~\     |_|     |_||_|\_, | .__/_| \__,_\___/\__/__/
   /.-'   '-.\                  |__/|_|                       

My Arch Hyprland Config

showcase_720p.mp4

Installation

Warning

Install script will auto-detect nvidia card and install nvidia-dkms drivers for your kernel.
Nvidia drm will be enabled only in grub and Hyperland is launched by sddm!!

After minimal Arch install (with grub), clone and execute -

pacman -Sy git
git clone https://github.com/prasanthrangan/hyprdots ~/Dots
cd ~/Dots/Scripts
./install.sh

Note

You can also create your own list (for ex. custom_apps.lst) with all your favorite apps and pass the file as a parameter to install it -

./install.sh custom_apps.lst

Please reboot after the install script completes and takes you to sddm login screen (or black screen) for the first time.
For more details, please refer installation.md

Theming

To add your own custom theme, please refer theming.md

  • Available themes
    • Catppuccin-Mocha
    • Catppuccin-Latte
    • Decay-Green
    • Rosé-Pine
    • Tokyo-Night
    • Material-Sakura
    • Gruvbox-Retro (maybe later)
    • Black-n-White (maybe later)
Catppuccin-Mocha
Catppuccin-Latte
Decay-Green
Rosé-Pine
Tokyo-Night
Material-Sakura

Packages

nvidia
linux-headers for main kernel (script will auto detect from /usr/lib/modules/)
linux-zen-headers for zen kernel (script will auto detect from /usr/lib/modules/)
linux-lts-headers for lts kernel (script will auto detect from /usr/lib/modules/)
nvidia-dkms nvidia drivers (script will auto detect from lspci -k
nvidia-utils nvidia drivers (script will auto detect from lspci -k
tools
pipewire audio and video server
pipewire-alsa for audio
pipewire-audio for audio
pipewire-jack for audio
pipewire-pulse for audio
gst-plugin-pipewire for audio
wireplumber audio and video server
networkmanager network manager
network-manager-applet nm tray
bluez for bluetooth
bluez-utils for bluetooth
blueman bt tray
brightnessctl brightness control for laptop
login
sddm-git display manager for login
qt5-wayland for QT wayland XDP
qt6-wayland for QT wayland XDP
qt5-quickcontrols for sddm theme
qt5-quickcontrols2 for sddm theme
qt5-graphicaleffects for sddm theme
hypr
hyprland-git main window manager (script will change this to hyprland-nvidia-git if nvidia card is detected)
dunst graphical notification daemon
rofi-lbonn-wayland-git app launcher
waybar-hyprland-git status bar
swww wallpaper app
swaylock-effects-git lockscreen
swayidle idle management daemon
wlogout logout screen
grim screenshot tool
slurp selects region for screenshot/screenshare
swappy screenshot editor
cliphist clipboard manager
dependencies
polkit-kde-agent authentication agent
xdg-desktop-portal-hyprland-git XDG Desktop Portal
xdg-desktop-portal-gtk XDG Desktop Portal file picker
imagemagick for kitty/neofetch image processing
qt5-imageformats for dolphin thumbnails
pavucontrol audio settings gui
pamixer for waybar audio
theming
nwg-look theming GTK apps
kvantum theming QT apps
qt5ct theming QT5 apps
applications
firefox browser
kitty terminal
neofetch fetch tool
dolphin kde file manager
visual-studio-code-bin gui code editor
vim text editor
ark kde file archiver
shell
zsh main shell
exa colorful file lister
oh-my-zsh-git for zsh plugins
zsh-theme-powerlevel10k-git theme for zsh
zsh-syntax-highlighting-git highlighting of commands
zsh-autosuggestions-git see completion as you type
pokemon-colorscripts-git display pokemon sprites

Keybindings

Key 1 Key 2 Key 3 Action
Super Q Quit active/focused window
Super del quit hyprland session
Super W toggle Window on focus to float
Alt enter toggle window on focus to fullscreen
Super G disable hypr effects for Gamemode
Super T launch kitty Terminal
Super E launch dolphin file Explorer
Super V launch Vs code
Super F launch Firefox
Super A launch desktop Applications (rofi)
Super tab switch open applications (rofi)
Super R browse system files (rofi)
F10 mute audio output (toggle)
F11 decrease volume (hold)
F12 increase volume (hold)
Super L lock screen
Super backspace logout menu
Super P screenshot snip
Super Alt P print current screen and save to ~/Apps/grim/
Super RightClick resize the window
Super LeftClick change the window position
Super MouseScroll cycle through workspaces
Super shift arrow keys resize windows (hold)
Super [0-9] switch to workspace [0-9]
Super shift [0-9] move active window to workspace [0-9]
Super Alt right next wallpaper
Super Alt left previous wallpaper
Super Alt up next waybar mode
Super Alt down previous waybar mode
Super shift T theme select menu

Playlist

youtube
IMAGE ALT TEXT

To-Do

  • Wallpaper change script (ver2)
  • Theme selector script
  • Theme change script (ver2)
  • Update rofi configs
  • Clipboard manager in waybar
  • Add options to install script (ver2)
  • Dynamic waybar config generator script
  • Media control mpris module for waybar
  • Update Volume control script/notification (ver2)
  • Fix rofi configs/scripts for dynamic scaling
  • Rofi config change script + add new config
  • Make wlogout configs dynamic and sync with theme
  • Sync PC/keyboard hw rgb with current theme (themeswitch.sh + openrgb)
  • Add battery and brightness indicator/notification for laptop users
  • Replace waybar with Eww? (maybe later)

Known Issues

  • Random lockscreen crash, refer swaywm/sway#7046
  • Waybar launching rofi breaks mouse input (added sleep 0.1 as workaround), refer Alexays/Waybar#1850
  • Flatpak QT apps does not follow system theme