diff --git a/README.md b/README.md
index f751d77..579a191 100644
--- a/README.md
+++ b/README.md
@@ -1,27 +1,44 @@
-# Simple Hyprland š
-Welcome to the Simple Hyprland Guide! This repository is designed to help users set up a minimal Hyprland environment on Arch Linux. Although various scripts and configuration files are available elsewhere, they often result in bloated systems with many unused themes and configurations. This guide aims to provide a clear, concise, and minimal setup, allowing users to understand each step and customize their environment to their liking.
+# simple-hyprland (db123 fork) š±
-By the end of this guide, you'll have a clean and functional Hyprland setup like this:
+**Personalized fork of [gaurav23b/simple-hyprland](https://github.com/gaurav23b/simple-hyprland) ā customized for `db123` (Arch Linux, dual GPU, Catppuccin Mocha).**
+
+| Component | Value |
+| ---------- | ---------------------------------------------------------- |
+| Hostname | `db123` |
+| OS | Arch Linux (rolling) |
+| CPU | 12th Gen Intel i3-12100 |
+| GPU | Intel UHD 730 + AMD Radeon RX 580 |
+| Monitor | HDMI-A-3, 1920x1080@74.97 |
+| Keyboard | `us,ir` (Win+Space toggle) |
+| Theme | Catppuccin Mocha (everything) |
+| Cursor | Bibata-Modern-Ice |
+| Compositor | Hyprland + plugins (hyprbars, hyprtrails, dynamic-cursors) |
+| Wallpaper | awww + mpvpaper |
+| Shell | fish |
+
+## Quick Installation
+
+```bash
+git clone https://git.db123.ir/db123/simple-hyprland.git ~/simple-hyprland
+cd ~/simple-hyprland/scripts/installer
+sudo sh install.sh
+```
+
+## Screenshots
-##### Setup Walkthrough š (Click to Play)
-[](https://www.youtube.com/watch?v=eNJorbKz_-U)
+## Credits
-## Purpose āØ
-This guide is intended for:
-
-**Newcomers transitioning to Hyprland who want to gain knowledge.** š If you're new to Hyprland and looking to understand the ins and outs of setting it up, this guide will take you through the process step-by-step, explaining each component along the way.
-
-**Users who wish to set up a minimal system their way, knowing what's happening at each step.** š§ Rather than relying on scripts that automate the process, this guide empowers you to build your Hyprland environment from the ground up, enabling you to customize and tweak every aspect according to your preferences.
-
-**Individuals looking to save time by following a structured and efficient setup process.** ā±ļø While many guides and resources are available, they can be scattered and overwhelming. This guide consolidates the essential steps into a streamlined workflow, helping you get up and running with Hyprland quickly and efficiently.
+Forked from [gaurav23b/simple-hyprland](https://github.com/gaurav23b/simple-hyprland) ā original guide author. Thanks to the [Hyprland project](https://github.com/hyprwm/Hyprland), [hyprdots](https://github.com/prasanthrangan/hyprdots), and the Catppuccin community.
## Getting Started š
+
If you're new to this guide, you can start from the [Prerequisites section](docs/prerequisites.md). This document outlines the necessary tools, packages, and assumptions required for a smooth installation and setup process.
## Documentation š
+
1. [Prerequisites](docs/prerequisites.md)
2. [Core Installation](docs/installation_Hypr.md)
3. [Basic Configuration](docs/basic_configuration.md)
@@ -30,22 +47,24 @@ If you're new to this guide, you can start from the [Prerequisites section](docs
6. [Summary](docs/final.md)
## Compatibility āļø
+
While this guide is created with [Arch Linux](https://archlinux.org/) in mind, it can also be helpful for users of other distributions who are familiar with their package management and system tweaking.
## Quick Installation Script š
1. Clone the repository to your home folder:
- ```
- git clone https://github.com/gaurav23b/simple-hyprland.git ~/simple-hyprland
- ```
+ ```
+ git clone https://github.com/gaurav23b/simple-hyprland.git ~/simple-hyprland
+ ```
2. Navigate to the installer directory:
- ```
- cd ~/simple-hyprland/scripts/installer
- ```
+ ```
+ cd ~/simple-hyprland/scripts/installer
+ ```
3. Run the installation script with sudo:
- ```
- sudo sh install.sh
- ```
+ ```
+ sudo sh install.sh
+ ```
+
#### Important Notes:
- This script is user-centric and allows you to choose which components to install (Everything is asked, even for the core).
@@ -55,12 +74,12 @@ While this guide is created with [Arch Linux](https://archlinux.org/) in mind, i
> **Note for Newcomers**: Although this script enables rapid setup, it's highly recommended to read through the documentation for those new to Hyprland. Understanding each step will greatly enhance your ability to customize and troubleshoot your environment.
-
### Key Bindings š¹
After installation, you'll want to familiarize yourself with the default key bindings. Here are some essential shortcuts to get you started:
#### General
+
- `Super + T`: Open the terminal (`$terminal`).
- `Super + B`: Open the browser (`$browser`).
- `Super + O`: Open notes application (`$notes`).
@@ -71,6 +90,7 @@ After installation, you'll want to familiarize yourself with the default key bin
- `Super + M`: Exit Hyprland.
#### Window Management & Workspace Navigation
+
- `Super + Q`: Close the active window.
- `Super + W`: Toggle floating mode for the active window.
- `Super + J`: Toggle split mode in the Dwindle layout.
@@ -81,6 +101,7 @@ After installation, you'll want to familiarize yourself with the default key bin
- `SUPER + SHIFT + [1-9]`: Move active window to workspace 1-9
#### Screen Brightness, Volume and Media Control
+
- `Brightness Up`: Increase the screen brightness by 5%.
- `Brightness Down`: Decrease the screen brightness by 5%.
- `Volume Up`: Increase the volume by 5%.
@@ -92,6 +113,7 @@ After installation, you'll want to familiarize yourself with the default key bin
- `Previous Track`: Go back to the previous track.
#### Miscellaneous
+
- `Super + V`: Open the clipboard history and paste the selected item.
- `Super + P`: Open the color picker and copy the selected color to the clipboard.
- `Super + L`: Lock the screen.
@@ -104,11 +126,13 @@ After installation, you'll want to familiarize yourself with the default key bin
Make sure to have applications installed corresponding to the binds. Feel free to customize these keybindings to better suit your needs. You can customize these and add more in your Hyprland configuration file (`~/.config/hypr/hyprland.conf`).
## Credits š
+
Many configuration parts, themes, and scripts in this guide are sourced from the community. I extend my thanks to all contributors, especially the [Hyprland project](https://github.com/hyprwm/Hyprland) and other cool repositories like [hyprdots](https://github.com/prasanthrangan/hyprdots). If you find that credit has not been given where due, please feel free to open a Pull Request (PR).
## References š
-* [Hyprland Wiki](https://wiki.hyprland.org/)
-* [Hyprdots Repo](https://github.com/prasanthrangan/hyprdots)
-* [Hyprland-titus Repo](https://github.com/ChrisTitusTech/hyprland-titus) and more.
+
+- [Hyprland Wiki](https://wiki.hyprland.org/)
+- [Hyprdots Repo](https://github.com/prasanthrangan/hyprdots)
+- [Hyprland-titus Repo](https://github.com/ChrisTitusTech/hyprland-titus) and more.
Feel free to explore the documentation and contribute to this guide if you find any improvements or have suggestions. š¤
diff --git a/assets/icons/Tela-circle-dracula.tar.xz b/assets/icons/Tela-circle-dracula.tar.xz
deleted file mode 100644
index 9d67416..0000000
Binary files a/assets/icons/Tela-circle-dracula.tar.xz and /dev/null differ
diff --git a/assets/themes/Catppuccin-Mocha.tar.xz b/assets/themes/Catppuccin-Mocha.tar.xz
deleted file mode 100644
index f90a4f7..0000000
Binary files a/assets/themes/Catppuccin-Mocha.tar.xz and /dev/null differ
diff --git a/configs/dunst/dunstrc b/configs/dunst/dunstrc
index 39b2ce7..b95822b 100644
--- a/configs/dunst/dunstrc
+++ b/configs/dunst/dunstrc
@@ -1,8 +1,18 @@
[global]
+
+#source = ~/.config/assets/myColors.conf
+
+# user created manually
+ frame_color = "#cba6f7"
+ separator_color= frame
+ highlight = "#cba6f7"
+
+
follow = mouse
indicate_hidden = yes
- offset = 10x10
+# user modified manually
+ offset = 5x5
notification_height = 0
@@ -13,12 +23,13 @@
text_icon_padding = 0
frame_width = 2
- frame_color = "#a6adc8"
- separator_color = frame
+ #frame_color = "#a6adc8"
+ #separator_color = frame
sort = yes
idle_threshold = 120
- font = monospace 10
+# user modified manually
+ font = monospace 14
line_height = 0
markup = full
alignment = left
@@ -30,29 +41,38 @@
show_indicators = yes
- min_icon_size = 0
- max_icon_size = 64
+ min_icon_size = 54
+ max_icon_size = 80
icon_path = /usr/share/icons/Papirus-Dark/16x16/status/:/usr/share/icons/Papirus-Dark/16x16/devices/:/usr/share/icons/Papirus-Dark/16x16/actions/:/usr/share/icons/Papirus-Dark/16x16/animations/:/usr/share/icons/Papirus-Dark/16x16/apps/:/usr/share/icons/Papirus-Dark/16x16/categories/:/usr/share/icons/Papirus-Dark/16x16/emblems/:/usr/share/icons/Papirus-Dark/16x16/emotes/:/usr/share/icons/Papirus-Dark/16x16/devices/mimetypes:/usr/share/icons/Papirus-Dark/16x16/panel/:/usr/share/icons/Papirus-Dark/16x16/places/
- dmenu = /usr/bin/wofi -p dunst:
+ dmenu = /usr/bin/tofi -p dunst:
browser = /usr/bin/firefox --new-tab
title = Dunst
class = Dunst
corner_radius = 10
- timeout = 5
+# user modified manually
+ timeout = 7
+
+# user created manually
+ width = 450
+ height = (0, 300)
+ progress_bar_frame_width = 0
+ progress_bar_corner_radius = 3
+ icon_corner_radius = 4
+ dmenu = tofi --show drun --prompt 'Open with'
[urgency_low]
- background = "#1e1e2e"
- foreground = "#CDD6F4"
+background = "#1e1e2e"
+foreground = "#cdd6f4"
[urgency_normal]
- background = "#1e1e2e"
- foreground = "#CDD6F4"
+background = "#1e1e2e"
+foreground = "#cdd6f4"
[urgency_critical]
- background = "#1e1e2e"
- foreground = "#CDD6F4"
- frame_color = "#FAB387"
\ No newline at end of file
+background = "#1e1e2e"
+foreground = "#cdd6f4"
+frame_color = "#fab387"
diff --git a/configs/hypr/hypridle.conf b/configs/hypr/hypridle.conf
index e2303ce..ed83495 100644
--- a/configs/hypr/hypridle.conf
+++ b/configs/hypr/hypridle.conf
@@ -11,17 +11,18 @@ listener {
}
listener {
- timeout = 120 # 2min
+ timeout = 2400 # 30min
on-timeout = loginctl lock-session # lock screen when timeout has passed
}
listener {
- timeout = 300 # 5min
+ timeout = 3600 # 1h
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
}
-listener {
- timeout = 900 # 30min
- on-timeout = systemctl suspend # suspend pc
-}
+# user modified manually
+#listener {
+# timeout = 2400 # 30min
+# on-timeout = systemctl suspend # suspend pc
+#}
diff --git a/configs/hypr/hyprland.conf b/configs/hypr/hyprland.conf
index 4b74f8f..26cabec 100644
--- a/configs/hypr/hyprland.conf
+++ b/configs/hypr/hyprland.conf
@@ -1,4 +1,3 @@
-
# #######################################################################################
# AUTOGENERATED HYPR CONFIG.
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
@@ -16,7 +15,7 @@
# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
-# source = ~/.config/hypr/myColors.conf
+# source =
################
@@ -24,7 +23,8 @@
################
# See https://wiki.hyprland.org/Configuring/Monitors/
-monitor=,preferred,auto,1,mirror,DP-1
+monitor= HDMI-A-3, 1920x1080@74.97, 0x0, 1
+
###################
### MY PROGRAMS ###
###################
@@ -32,17 +32,42 @@ monitor=,preferred,auto,1,mirror,DP-1
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
-$terminal = kitty
+# user modified manually
+$terminal = kitty --title kitty
$fileManager = nautilus
$menu = tofi-drun -c ~/.config/tofi/configA --drun-launch=true
-$browser = thorium-browser --enable-features=UseOzonePlatform --ozone-platform=wayland
-$notes = obsidian
-$editor = code
-$editor-alt = subl
+# $browser = firefox
+$browser = zen-browser
+$notes = obsidian --disable-gpu-compositing
+# $editor = code --disable-gpu-compositing
+# $editor = zeditor
+$editor = neovide
+$editor-alt = kitty --title nvim -e nvim
$colorPicker = hyprpicker
+$mail = thunderbird
# --enable-features=UseOzonePlatform --ozone-platform=wayland use this flag to launch CEF/Electron apps in wayland
+# user created manually
+$spotify = kitty --title jellyfin-tui -e jellyfin-tui
+$mumble = mumble
+$mumblemic = mumble rpc togglemute
+$cava = kitty --title cava -e cava
+$matrix = kitty --title unimatrix -e unimatrix -u 01 -s 96 -c white
+$lavat = kitty --title lavat -e lavat -c A6ADC8 -R 4 -b 5 -r 1 -k CBA6F7 -g -s 3
+$gamelauncher = flatpak run page.kramo.Cartridges
+$telegram = Telegram
+$element = element-desktop
+$jellyfin = jellyfinmediaplayer
+$htop = kitty --title htop -e htop
+$nvtop = kitty --title nvtop -e nvtop
+$btop = kitty --title btop -e btop
+$lazydocker = kitty --title lazydocker -e lazydocker
+$hyperion0 = kitty -e hyperion-remote --suspend
+$hyperion1 = kitty -e hyperion-remote --resume
+$headset = kitty -e pactl set-default-sink alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.iec958-stereo
+$speaker = kitty -e pactl set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo
+
#################
### AUTOSTART ###
#################
@@ -53,17 +78,28 @@ $colorPicker = hyprpicker
exec-once=/usr/lib/polkit-kde-authentication-agent-1 #Polkit to manage passwords
exec-once=/usr/bin/dunst
exec-once=waybar # topbar
-exec-once = swww-daemon # wallpaper
-exec-once = swww img ~/.config/assets/backgrounds/cat_leaves.png --transition-fps 255 --transition-type outer --transition-duration 0.8
+exec-once = awww-daemon # wallpaper
+exec-once = awww img ~/.config/assets/backgrounds/cat_leaves.png --transition-fps 255 --transition-type outer --transition-duration 0.8
+exec-once = mpvpaper HDMI-A-3 ~/Downloads/walls/175436-853585098.mp4 --loop --no-audio --fps=30
exec-once = wl-paste --type text --watch cliphist store # clipboard
exec-once = wl-paste --type image --watch cliphist store
-#exec-once = rm "$HOME/.cache/cliphist/db" #it'll delete history at every restart
+# user modified manually
+exec-once = rm "$HOME/.cache/cliphist/db" #it'll delete history at every restart
exec-once = hypridle
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
-# exec-once = $terminal
-# exec-once = nm-applet &
-# exec-once = waybar & hyprpaper & firefox
+exec-once = $terminal
+#exec-once = nm-applet &
+#exec-once = waybar & hyprpaper & firefox
+
+# user created manually
+# exec-once = $mail
+exec-once = udiskie
+# exec-once = $telegram
+exec-once = $element
+exec-once = $browser
+exec-once = hyprpm reload
+# exec-once = $cava
#############################
### ENVIRONMENT VARIABLES ###
@@ -73,16 +109,17 @@ exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRE
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
+# user created manually
+env = HYPRCURSOR_THEME, Bibata-Modern-Ice
+env = XCURSOR_THEME, Bibata-Modern-Ice
# Firefox
# env = MOZ_ENABLE_WAYLAND,1
-# Nvidia
-env = LIBVA_DRIVER_NAME,nvidia
+# AMD
+env = LIBVA_DRIVER_NAME,radeonsi
env = XDG_SESSION_TYPE,wayland
-env = GBM_BACKEND,nvidia-drm
-env = __GLX_VENDOR_LIBRARY_NAME,nvidia # remove if firefox crashes
-env = NVD_BACKEND,direct
+env = GBM_BACKEND,amdgpu
env = ELECTRON_OZONE_PLATFORM_HINT,auto
# QT
@@ -102,6 +139,9 @@ env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
+# user created manually
+env "YAZI_CONFIG_HOME=~/.config/yazi" yazi
+env = AQ_DRM_DEVICES,/dev/dri/card2:/dev/dri/card1
#####################
### LOOK AND FEEL ###
@@ -117,11 +157,13 @@ general {
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
- col.active_border = rgb(8aadf4) rgb(24273A) rgb(24273A) rgb(8aadf4) 45deg
- col.inactive_border = rgb(24273A) rgb(24273A) rgb(24273A) rgb(27273A) 45deg
+# user modified manually
+ col.active_border = rgb(cba6f7) rgb(1e1e1e) rgb(1e1e1e) rgb(cba6f7) 45deg
+ col.inactive_border = rgb(cba6f7) rgb(cba6f7) rgb(cba6f7) rgb(cba6f7) 45deg
# Set to true enable resizing windows by clicking and dragging on borders and gaps
- resize_on_border = true
+# user modified manually
+ resize_on_border = false
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
@@ -135,13 +177,15 @@ decoration {
# Change transparency of focused and unfocused windows
active_opacity = 1.0
- inactive_opacity = 1.0
+# user modified manually
+ inactive_opacity = 0.7
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 3
- passes = 3
+# user modified manually
+ passes = 2
new_optimizations = true
vibrancy = 0.1696
ignore_opacity = true
@@ -179,7 +223,7 @@ animations {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
- pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
+ #pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
}
@@ -193,6 +237,7 @@ misc {
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
disable_splash_rendering = true
+# user modified manually
vrr = 0
}
@@ -202,14 +247,14 @@ misc {
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
- kb_layout = us
+ kb_layout = us,ir
kb_variant =
kb_model =
- kb_options =
+ kb_options = grp:win_space_toggle
kb_rules =
follow_mouse = 1
- # force_no_accel = 1
+ force_no_accel = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
@@ -220,7 +265,8 @@ input {
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
- gesture = 3, horizontal, workspace
+ # workspace_swipe = true
+ # workspace_swipe_fingers = 3
}
# Example per-device config
@@ -244,12 +290,13 @@ bind = $mainMod, O, exec, $notes
bind = $mainMod, C, exec, $editor
bind = $mainMod, S, exec, $editor-alt
bind = $mainMod, Q, killactive,
-bind = $mainMod, M, exit,
+# user modified manually
+# bind = $mainMod, M, exit,
bind = $mainMod, F, exec, $fileManager
bind = $mainMod, W, togglefloating,
bind = $mainMod, A, exec, $menu
# bind = $mainMod, P, pseudo, # dwindle
-bind = $mainMod, J, togglesplit, # dwindle
+#bind = $mainMod, J, togglesplit, # dwindle
bind = SUPER, E, exec, jome -d | wl-copy #Emojipicker + clipboard copy
@@ -259,12 +306,6 @@ bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
-# Move window position with mainMod + SHIFT + arrow keys
-bind = $mainMod SHIFT, left, movewindow, l
-bind = $mainMod SHIFT, right, movewindow, r
-bind = $mainMod SHIFT, up, movewindow, u
-bind = $mainMod SHIFT, down, movewindow, d
-
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
@@ -289,9 +330,10 @@ bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
+# user modified manually
# Example special workspace (scratchpad)
#bind = $mainMod, S, togglespecialworkspace, magic
-bind = $mainMod SHIFT, S, movetoworkspace, special:magic
+#bind = $mainMod SHIFT, S, movetoworkspace, special:magic
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
@@ -305,11 +347,11 @@ bindm = $mainMod, mouse:273, resizewindow
bindm = $mainMod, Z, movewindow
bindm = $mainMod, X, resizewindow
-# Resize windows with mainMod + CTRL + arrow keys
-binde = $mainMod+Ctrl, Right, resizeactive, 30 0
-binde = $mainMod+Ctrl, Left, resizeactive, -30 0
-binde = $mainMod+Ctrl, Up, resizeactive, 0 -30
-binde = $mainMod+Ctrl, Down, resizeactive, 0 30
+# Resize windows
+binde = $mainMod+Shift, Right, resizeactive, 30 0
+binde = $mainMod+Shift, Left, resizeactive, -30 0
+binde = $mainMod+Shift, Up, resizeactive, 0 -30
+binde = $mainMod+Shift, Down, resizeactive, 0 30
# Clipboard
@@ -330,8 +372,8 @@ bind = Ctrl, Escape, exec, killall waybar || waybar # toggle waybar
# Screenshot
# add --cursor flag to include cursor also, --freeze flag to freeze before selection
bind = , Print, exec, grimblast --notify copysave screen # Entire screen + clipboard copy
-bind = SUPER, Print, exec, grimblast --notify copysave active # current Active window only + clipboard copy
-bind = SUPER ALT, Print, exec, grimblast --notify copysave area # Select area to take screenshot
+bind = SUPER, Print, exec, grimblast --freeze --notify copysave active # current Active window only + clipboard copy
+bind = SUPER ALT, Print, exec, grimblast --freeze --notify copysave area # Select area to take screenshot
# Volume and Media Control
bind = , XF86AudioRaiseVolume, exec, pamixer -i 5
@@ -347,6 +389,40 @@ bind = , XF86AudioPrev, exec, playerctl previous
bind = , XF86MonBrightnessUp, exec, brightnessctl s +5%
bind = , XF86MonBrightnessDown, exec, brightnessctl s 5%-
+# user created manually
+bind = $mainMod, K, exec, $mail
+bind = $mainMod, F1, exec, $spotify
+bind = $mainMod, F2, exec, $htop
+bind = $mainMod, F3, exec, $nvtop
+# bind = $mainMod, F4, exec, $telegram
+bind = $mainMod, F4, exec, $element
+bind = $mainMod, F5, exec, $jellyfin
+bind = $mainMod, F6, exec, $btop
+bind = $mainMod, F7, exec, $btop
+bind = $mainMod, F8, exec, $btop
+bind = $mainMod, F9, exec, $gamelauncher
+bind = $mainMod, F10, exec, $lavat
+bind = $mainMod, F11, exec, $matrix
+bind = $mainMod, F12, exec, $cava
+bind = $mainMod, M, exec, $mumblemic
+bind = $mainMod, Delete, exec, $hyperion0
+bind = $mainMod, Insert, exec, $hyperion1
+bind = $mainMod, bracketright, exec, $headset
+bind = $mainMod, bracketleft, exec, $speaker
+bind = $mainMod, H, togglespecialworkspace, Magic
+bind = $mainMod Shift, H, movetoworkspace, special:Magic
+bind = $mainMod, Page_Up, togglespecialworkspace, Dream
+bind = $mainMod Shift, Page_Up, movetoworkspace, special:Dream
+#bind = $mainMod, mouse:276, togglespecialworkspace, Dream
+#bind = $mainMod Shift, mouse:276, movetoworkspace, special:Dream
+bind = $mainMod, Page_Down, togglespecialworkspace, Sky
+bind = $mainMod Shift, Page_Down, movetoworkspace, special:Sky
+#bind = $mainMod, mouse:275, togglespecialworkspace, Sky
+#bind = $mainMod Shift, mouse:275, movetoworkspace, special:Sky
+bind = $mainMod, mouse:275, exec, mumble rpc starttalking
+bindr = $mainMod, mouse:275, exec, mumble rpc stoptalking
+bind = $mainMod, Scroll_Lock, exec, systemctl hibernate
+
##############################
### WINDOWS AND WORKSPACES ###
##############################
@@ -356,51 +432,197 @@ bind = , XF86MonBrightnessDown, exec, brightnessctl s 5%-
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
-# Example windowrule v1
-# windowrule = float, ^(kitty)$
-windowrule = float, class:^(jome)$
+# Example windowrule
+windowrule = match:class Thorium-browser, opacity 0.90 0.90
+windowrule = match:class Code, opacity 0.80 0.80
+windowrule = match:class Arduino IDE, opacity 0.80 0.80
+windowrule = match:class dev.warp.Warp, opacity 0.80 0.80
+windowrule = match:class obsidian, opacity 0.80 0.80
+windowrule = match:class code-url-handler, opacity 0.80 0.80
+windowrule = match:class code-insiders-url-handler, opacity 0.80 0.80
+windowrule = match:class kitty, opacity 0.80 0.80
+windowrule = match:class org.gnome.Nautilus, opacity 0.80 0.80
+windowrule = match:class org.kde.ark, opacity 0.80 0.80
+windowrule = match:class nwg-look, opacity 0.80 0.80
+windowrule = match:class qt5ct, opacity 0.80 0.80
+windowrule = match:class qt6ct, opacity 0.80 0.80
+windowrule = match:class kvantummanager, opacity 0.80 0.80
+windowrule = match:class pavucontrol, opacity 0.80 0.70
+windowrule = match:class blueman-manager, opacity 0.80 0.70
+windowrule = match:class nm-applet, opacity 0.80 0.70
+#user modified manually
+windowrule = match:class nm-connection-editor, opacity 0.80 0.70
+windowrule = match:class org.kde.polkit-kde-authentication-agent-1, opacity 0.80 0.70
+windowrule = match:class polkit-gnome-authentication-agent-1, opacity 0.80 0.70
+windowrule = match:class org.freedesktop.impl.portal.desktop.gtk, opacity 0.80 0.70
+windowrule = match:class org.freedesktop.impl.portal.desktop.hyprland, opacity 0.80 0.70
-# Example windowrule v2
-# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
-windowrulev2 = opacity 0.90 0.90,class:^(Thorium-browser)$
-windowrulev2 = opacity 0.80 0.80,class:^(Code)$
-windowrulev2 = opacity 0.80 0.80,class:^(Arduino IDE)$
-windowrulev2 = opacity 0.80 0.80,class:^(dev.warp.Warp)$
-windowrulev2 = opacity 0.80 0.80,class:^(obsidian)$
-windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$
-windowrulev2 = opacity 0.80 0.80,class:^(code-insiders-url-handler)$
-windowrulev2 = opacity 0.80 0.80,class:^(kitty)$
-windowrulev2 = opacity 0.80 0.80,class:^(org.gnome.Nautilus)$
-windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$
-windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$
-windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$
-windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$
-windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$
-windowrulev2 = opacity 0.80 0.70,class:^(pavucontrol)$
-windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$
-windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$
-windowrulev2 = opacity 0.70 0.70,class:^(Spotify)$
-windowrulev2 = opacity 0.70 0.70,initialTitle:^(Spotify Free)$
-windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$
-windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$
-windowrulev2 = opacity 0.80 0.70,class:^(polkit-gnome-authentication-agent-1)$
-windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.gtk)$
-windowrulev2 = opacity 0.80 0.70,class:^(org.freedesktop.impl.portal.desktop.hyprland)$
+windowrule = match:class kvantummanager, float on
+windowrule = match:class qt5ct, float on
+windowrule = match:class qt6ct, float on
+windowrule = match:class nwg-look, float on
+windowrule = match:class org.kde.ark, float on
+windowrule = match:class pavucontrol, float on
+windowrule = match:class blueman-manager, float on
+windowrule = match:class nm-applet, float on
+windowrule = match:class nm-connection-editor, float on
+windowrule = match:class org.kde.polkit-kde-authentication-agent-1, float on
-windowrulev2 = float,class:^(kvantummanager)$
-windowrulev2 = float,class:^(qt5ct)$
-windowrulev2 = float,class:^(qt6ct)$
-windowrulev2 = float,class:^(nwg-look)$
-windowrulev2 = float,class:^(org.kde.ark)$
-windowrulev2 = float,class:^(pavucontrol)$
-windowrulev2 = float,class:^(blueman-manager)$
-windowrulev2 = float,class:^(nm-applet)$
-windowrulev2 = float,class:^(nm-connection-editor)$
-windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
+# user created manually
+windowrule = match:class kitty, match:title kitty, opacity 0.90 0.90
+windowrule = match:class kitty, match:title kitty, float on
+windowrule = match:class kitty, match:title kitty, center on
+windowrule = match:class kitty, match:title kitty, size 1280 720
+# windowrule = match:class kitty, match:title kitty, no_initial_focus on
+# windowrule = match:class kitty, match:title kitty, workspace 2
+# windowrule = match:class kitty, match:title kitty, pin on
-# windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
+windowrule = match:class org.jackhuang.hmcl.Launcher, float on
+windowrule = match:class org.jackhuang.hmcl.Launcher, center on
+windowrule = match:class org.jackhuang.hmcl.Launcher, size 1280 720
-# layerrule = blur,waybar
-layerrule = ignorezero,tofi
-layerrule = ignorezero, dunst
-layerrule = blur,dunst
+windowrule = match:class page.kramo.Cartridges, float on
+windowrule = match:class page.kramo.Cartridges, center on
+windowrule = match:class page.kramo.Cartridges, size 1280 720
+
+windowrule = match:class org.pulseaudio.pavucontrol, float on
+windowrule = match:class org.pulseaudio.pavucontrol, center on
+windowrule = match:class org.pulseaudio.pavucontrol, size 1280 720
+
+windowrule = match:class kitty, match:title unimatrix, float on
+windowrule = match:class kitty, match:title unimatrix, center on
+windowrule = match:class kitty, match:title unimatrix, size 1280 720
+windowrule = match:class kitty, match:title unimatrix, no_initial_focus on
+windowrule = match:class kitty, match:title unimatrix, pin on
+
+windowrule = match:class kitty, match:title cava, float on
+windowrule = match:class kitty, match:title cava, center on
+windowrule = match:class kitty, match:title cava, size 450 180
+windowrule = match:class kitty, match:title cava, no_initial_focus on
+windowrule = match:class kitty, match:title cava, pin on
+
+windowrule = match:class kitty, match:title btop, float on
+windowrule = match:class kitty, match:title btop, center on
+windowrule = match:class kitty, match:title btop, size 1280 720
+
+windowrule = match:class kitty, match:title nvim, float on
+windowrule = match:class kitty, match:title nvim, center on
+windowrule = match:class kitty, match:title nvim, size 1600 900
+
+windowrule = match:class obsidian, float on
+windowrule = match:class obsidian, center on
+windowrule = match:class obsidian, size 1280 720
+
+# user created manually
+workspace = 10, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false
+
+# user created manually
+####################
+# hyprland plugins #
+####################
+plugin:dynamic-cursors {
+ enabled = true
+
+ # tilt
+ # rotate
+ # stretch
+ # none
+ mode = stretch
+
+ # minimum angle difference in degrees after which the shape is changed
+ # smaller values are smoother, but more expensive for hw cursors
+ threshold = 2
+
+ rotate {
+ length = 20
+ offset = 0.0
+ }
+
+ tilt {
+ limit = 5000
+
+ # linear
+ # quadratic
+ # negative_quadratic
+ function = negative_quadratic
+
+ window = 100
+ }
+
+ # for mode = stretch
+ stretch {
+ limit = 3000
+
+ # linear
+ # quadratic
+ # negative_quadratic
+ function = quadratic
+
+ window = 100
+ }
+
+ shake {
+ enabled = false
+ nearest = true
+ threshold = 6.0
+ base = 4.0
+ speed = 4.0
+ influence = 0.0
+
+ # values below 1 disable the limit (e.g. 0)
+ limit = 0.0
+
+ timeout = 1000
+
+ # show cursor behaviour `tilt`, `rotate`, etc. while shaking
+ effects = false
+
+ ipc = false
+ }
+
+ hyprcursor {
+
+ # use nearest-neighbour (pixelated) scaling when magnifing beyond texture size
+ # this will also have effect without hyprcursor support being enabled
+ # 0 / false - never use pixelated scaling
+ # 1 / true - use pixelated when no highres image
+ # 2 - always use pixleated scaling
+ nearest = true
+ enabled = true
+ resolution = -1
+
+ # shape to use when clientside cursors are being magnified
+ # see the shape-name property of shape rules for possible names
+ # specifying clientside will use the actual shape, but will be pixelated
+ fallback = clientside
+ }
+}
+plugin {
+ hyprtrails {
+ color = rgb(cba6f7)
+ }
+}
+plugin {
+ hyprbars {
+ bar_height = 20
+ bar_color = rgb(1e1e1e)
+ #bar_blur = true
+ col.text = rgb(a6adc8)
+ bar_padding = 15
+ bar_button_padding = 7
+ icon_on_hover = true
+ inactive_button_color = rgb(cba6f7)
+
+ # hyprbars-button = color, size, on-click
+ hyprbars-button = rgb(cba6f7), 15, ó°, hyprctl dispatch killactive
+ hyprbars-button = rgb(cba6f7), 15, ļ, hyprctl dispatch fullscreen 1
+
+ # cmd to run on double click of the bar
+ on_double_click = hyprctl dispatch fullscreen 1
+ }
+}
+# plugin {
+# hyprscrolling {
+# column_width = 0.7
+# }
+# }
diff --git a/configs/hypr/hyprlock.conf b/configs/hypr/hyprlock.conf
index 72572ea..68efe9e 100644
--- a/configs/hypr/hyprlock.conf
+++ b/configs/hypr/hyprlock.conf
@@ -1,19 +1,36 @@
+#user created manually
+source = $HOME/.config/hypr/mocha.conf
+$lock_main = rgb(203, 166, 247)
+$lock_outer_color = rgb(203, 166, 247)
+$lock_inner_color = rgb(30, 30, 30)
+$lock_font_color = rgb(166, 173, 200)
+
+#user added manually
+$accent = $mauve
+$accentAlpha = $mauveAlpha
+$font = JetBrainsMono Nerd Font
+
background {
monitor =
path = ~/.config/assets/backgrounds/cat_leaves_blurred.png # only png supported for now
}
+general {
+ hide_cursor = true
+}
+
input-field {
monitor =
size = 200, 50
- outline_thickness = 3
+ outline_thickness = 2
dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true
dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
- outer_color = rgb(a6adc8)
- inner_color = rgb(11111b)
- font_color = rgb(a6adc8)
+# user modified manually
+ outer_color = $lock_outer_color
+ inner_color = $lock_inner_color
+ font_color = $lock_font_color
fade_on_empty = true
fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
placeholder_text = Input Password... # Text rendered in the input box when it's empty.
@@ -36,7 +53,8 @@ input-field {
label {
monitor =
text = cmd[update:1000] echo "$TIME"
- color = rgba(a6adc8)
+# user modified manually
+ color = $lock_font_color
font_size = 55
font_family = Fira Semibold
position = -100, 40
@@ -46,10 +64,23 @@ label {
shadow_size = 10
}
+#user added manually
+label {
+ monitor =
+ text = Layout: $LAYOUT
+ color = $text
+ font_size = 20
+ font_family = $font
+ position = 30, -30
+ halign = left
+ valign = top
+}
+
label {
monitor =
- text = Hello
- color = rgba(a6adc8)
+# user modified manually
+ text = Arch BTW
+ color = $lock_font_color
font_size = 20
font_family = Fira Semibold
position = -100, 160
@@ -64,12 +95,13 @@ image {
path = ~/.config/assets/backgrounds/cat_pacman.png
size = 280 # lesser side if not 1:1 ratio
rounding = -1 # negative values mean circle
- border_size = 4
- border_color = rgb(a6adc8)
+ border_size = 2
+# user modified manually
+ border_color = $lock_main
rotate = 0 # degrees, counter-clockwise
reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
# reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
position = 0, 200
halign = center
valign = center
-}
\ No newline at end of file
+}
diff --git a/configs/hypr/mocha.conf b/configs/hypr/mocha.conf
new file mode 100644
index 0000000..8ccb56a
--- /dev/null
+++ b/configs/hypr/mocha.conf
@@ -0,0 +1,78 @@
+
+$rosewater = rgb(f5e0dc)
+$rosewaterAlpha = f5e0dc
+
+$flamingo = rgb(f2cdcd)
+$flamingoAlpha = f2cdcd
+
+$pink = rgb(f5c2e7)
+$pinkAlpha = f5c2e7
+
+$mauve = rgb(cba6f7)
+$mauveAlpha = cba6f7
+
+$red = rgb(f38ba8)
+$redAlpha = f38ba8
+
+$maroon = rgb(eba0ac)
+$maroonAlpha = eba0ac
+
+$peach = rgb(fab387)
+$peachAlpha = fab387
+
+$yellow = rgb(f9e2af)
+$yellowAlpha = f9e2af
+
+$green = rgb(a6e3a1)
+$greenAlpha = a6e3a1
+
+$teal = rgb(94e2d5)
+$tealAlpha = 94e2d5
+
+$sky = rgb(89dceb)
+$skyAlpha = 89dceb
+
+$sapphire = rgb(74c7ec)
+$sapphireAlpha = 74c7ec
+
+$blue = rgb(89b4fa)
+$blueAlpha = 89b4fa
+
+$lavender = rgb(b4befe)
+$lavenderAlpha = b4befe
+
+$text = rgb(cdd6f4)
+$textAlpha = cdd6f4
+
+$subtext1 = rgb(bac2de)
+$subtext1Alpha = bac2de
+
+$subtext0 = rgb(a6adc8)
+$subtext0Alpha = a6adc8
+
+$overlay2 = rgb(9399b2)
+$overlay2Alpha = 9399b2
+
+$overlay1 = rgb(7f849c)
+$overlay1Alpha = 7f849c
+
+$overlay0 = rgb(6c7086)
+$overlay0Alpha = 6c7086
+
+$surface2 = rgb(585b70)
+$surface2Alpha = 585b70
+
+$surface1 = rgb(45475a)
+$surface1Alpha = 45475a
+
+$surface0 = rgb(313244)
+$surface0Alpha = 313244
+
+$base = rgb(1e1e2e)
+$baseAlpha = 1e1e2e
+
+$mantle = rgb(181825)
+$mantleAlpha = 181825
+
+$crust = rgb(11111b)
+$crustAlpha = 11111b
diff --git a/configs/kitty/kitty.conf b/configs/kitty/kitty.conf
index 3b7cb86..b82787a 100644
--- a/configs/kitty/kitty.conf
+++ b/configs/kitty/kitty.conf
@@ -1,10 +1,25 @@
font_size 13.0
window_padding_width 8
-font_family JetBrainsMono Nerd Font
+font_family JetBrainsMono Nerd Font Mono
italic_font auto
# bold_font auto
bold_italic_font auto
include theme.conf
-#background_opacity 0.60
+background_opacity 0.60
#hide_window_decorations yes
#confirm_os_window_close 0
+
+tab_bar_min_tabs 1
+tab_bar_edge bottom
+tab_bar_style powerline
+tab_powerline_style slanted
+tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}
+
+# BEGIN_KITTY_THEME
+# Catppuccin-Mocha
+include current-theme.conf
+# END_KITTY_THEME
+
+# user created manually
+cursor_trail 3
+cursor_trail_decay 0.1 0.4
diff --git a/configs/kitty/theme.conf b/configs/kitty/theme.conf
index 877aa99..2533db7 100644
--- a/configs/kitty/theme.conf
+++ b/configs/kitty/theme.conf
@@ -1,5 +1,6 @@
+# vim:ft=kitty
-## name: Catppuccin Mocha šæ
+## name: Catppuccin-Mocha
## author: Pocco81 (https://github.com/Pocco81)
## license: MIT
## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf
@@ -18,12 +19,12 @@ cursor #F5E0DC
cursor_text_color #1E1E2E
# URL underline color when hovering with mouse
-url_color #B4BEFE
+url_color #F5E0DC
# Kitty window border colors
-active_border_color #CBA6F7
-inactive_border_color #8E95B3
-bell_border_color #EBA0AC
+active_border_color #B4BEFE
+inactive_border_color #6C7086
+bell_border_color #F9E2AF
# OS Window titlebar colors
wayland_titlebar_color system
@@ -38,7 +39,7 @@ tab_bar_background #11111B
# Colors for marks (marked text in the terminal)
mark1_foreground #1E1E2E
-mark1_background #87B0F9
+mark1_background #B4BEFE
mark2_foreground #1E1E2E
mark2_background #CBA6F7
mark3_foreground #1E1E2E
@@ -47,8 +48,8 @@ mark3_background #74C7EC
# The 16 terminal colors
# black
-color0 #43465A
-color8 #43465A
+color0 #45475A
+color8 #585B70
# red
color1 #F38BA8
@@ -63,8 +64,8 @@ color3 #F9E2AF
color11 #F9E2AF
# blue
-color4 #87B0F9
-color12 #87B0F9
+color4 #89B4FA
+color12 #89B4FA
# magenta
color5 #F5C2E7
@@ -75,5 +76,5 @@ color6 #94E2D5
color14 #94E2D5
# white
-color7 #CDD6F4
-color15 #A1A8C9
\ No newline at end of file
+color7 #BAC2DE
+color15 #A6ADC8
diff --git a/configs/tofi/configA b/configs/tofi/configA
index bdff994..5eb4676 100644
--- a/configs/tofi/configA
+++ b/configs/tofi/configA
@@ -1,18 +1,28 @@
-width = 100%
-height = 100%
+# user created manually
+#include = /home/db123/.config/assets/myColors.conf
+
+width = 40%
+height = 40%
border-width = 0
-outline-width = 0
-padding-left = 33%
-padding-top = 33%
-result-spacing = 25
+corner-radius = 15
+# user modified manually
+outline-width = 1
+outline-color = #cba6f7
+padding-left = 3%
+padding-top = 2%
+result-spacing = 20
num-results = 5
font = JetBrainsMono Nerd Font
font-size = 24
-text-color = #4e4e5f
+text-color = #b6b6db
prompt-text = "ļ : "
-background-color = #11111bd9
-selection-color = #83A4E7
+background-color = #1e1e2edd
+selection-color = #cba6f7
+
+# user created manually
+terminal = kitty
+history = true
diff --git a/configs/tofi/configV b/configs/tofi/configV
index 0b30e05..b274d00 100644
--- a/configs/tofi/configV
+++ b/configs/tofi/configV
@@ -1,20 +1,22 @@
-width = 100%
-height = 100%
+width = 80%
+height = 40%
border-width = 0
-outline-width = 0
-padding-top = 33%
-padding-left = 10%
-padding-right = 10%
-result-spacing = 25
+outline-width = 1
+corner-radius = 15
+outline-color = #cba6f7
+padding-top = 2%
+padding-left = 3%
+padding-right = 5%
+result-spacing = 20
num-results = 5
font = JetBrainsMono Nerd Font
font-size = 24
-text-color = #4e4e5f
+text-color = #b6b6db
prompt-text = "ļ : "
-background-color = #11111bd9
-selection-color = #83A4E7
+background-color = #1e1e2edd
+selection-color = #cba6f7
diff --git a/configs/waybar/config.jsonc b/configs/waybar/config.jsonc
index a328af4..69f19af 100644
--- a/configs/waybar/config.jsonc
+++ b/configs/waybar/config.jsonc
@@ -1,146 +1,166 @@
{
- "layer": "top",
- "position": "top",
- "mode": "dock",
- "exclusive": true,
- "passthrough": false,
- "gtk-layer-shell": true,
- "height": 0,
- "modules-left": [
- "clock",
- "hyprland/workspaces"
- ],
- "modules-center": ["hyprland/window"],
- "modules-right": [
- "tray",
- "memory",
- "cpu",
- "network",
- "battery",
- "backlight",
- "pulseaudio",
- "pulseaudio#microphone"
- ],
+ "layer": "top",
+ "position": "top",
+ "mode": "dock",
+ "exclusive": true,
+ "passthrough": false,
+ "gtk-layer-shell": true,
+ "height": 0,
+ "output": ["HDMI-A-3"],
+ "modules-left": ["clock", "hyprland/language", "hyprland/workspaces"],
+ "modules-center": ["hyprland/window"],
+ "modules-right": [
+ "tray",
+ "memory",
+ "cpu",
+ "network",
+ "battery",
+ "backlight",
+ "pulseaudio",
+ "pulseaudio#microphone",
+ ],
- "hyprland/window": {
- "format": "ó°£ {}"
- },
-
- "hyprland/workspaces": {
- "disable-scroll": true,
- "all-outputs": true,
- "on-click": "activate"
- //"format": "{icon}",
- },
+ "hyprland/window": {
+ "format": "ó°£ {}",
+ },
- "tray": {
- "icon-size": 13,
- "spacing": 10
- },
+ // user created manually
+ // "custom/window": {
+ // "exec": "~/.config/waybar/scritps/test.sh",
+ // "format": "ó°£ {}"
+ // },
- "clock": {
- "format": "{:%A ļ² %B-%d-%Y ļŗ %I:%M:%S %p}",
- "interval": 1,
- "rotate": 0,
- "tooltip-format": "{calendar}",
- "calendar": {
- "mode": "month",
- "mode-mon-col": 3,
- "on-scroll": 1,
- "on-click-right": "mode",
- "format": {
- "months": "{}",
- "weekdays": "{}",
- "today": "{}",
- "days": "{}"
- }
- }
- },
+ "hyprland/workspaces": {
+ "format": "{icon}",
+ "disable-scroll": true,
+ "all-outputs": true,
+ "on-click": "activate",
+ },
- "backlight": {
- "device": "intel_backlight",
- "format": "{icon} {percent}%",
- "format-icons": ["ó°", "ó°", "ó° "],
- "on-scroll-up": "brightnessctl set 1%+",
- "on-scroll-down": "brightnessctl set 1%-",
- "min-length": 6
- },
+ // user created manually
+ "hyprland/language": {
+ "format": "{}",
+ "min-length": 2,
+ "format-en": "English",
+ "format-ir": "ir",
+ "format-persian": "ir",
+ // "on-click":
+ // "keyboard-name": "evision-rgb-keyboard"
+ },
- "battery": {
- "states": {
- "good": 95,
- "warning": 30,
- "critical": 20
- },
- "format": "{icon} {capacity}%",
- "format-charging": "ļ¦ {capacity}%",
- "format-plugged": "ļ¦ {capacity}%",
- "format-alt": "{time} {icon}",
- "format-icons": ["ó°", "ó°ŗ", "ó°»", "ó°¼", "ó°½", "ó°¾", "ó°æ", "ó°", "ó°", "ó°", "ó°¹"]
- },
+ "tray": {
+ "icon-size": 13,
+ "spacing": 10,
+ },
- "pulseaudio": {
- "format": "{icon} {volume}%",
- "tooltip": false,
- "format-muted": " Muted",
- "on-click": "pamixer -t",
- "on-scroll-up": "pamixer -i 1",
- "on-scroll-down": "pamixer -d 1",
- "scroll-step": 5,
- "format-icons": {
- "headphone": "ļ„",
- "hands-free": "ļ„",
- "headset": "ļ„",
- "phone": "ļ",
- "portable": "ļ",
- "car": "ļ¹",
- "default": ["ļ¦","ļ§", "ļ§", "ļØ"]
- }
+ "clock": {
+ "format": "{:%A ļ² %B-%d-%Y ļŗ %I:%M:%S %p}",
+ "interval": 1,
+ "rotate": 0,
+ "tooltip-format": "{calendar}",
+ "calendar": {
+ "mode": "month",
+ "mode-mon-col": 3,
+ "on-scroll": 1,
+ "on-click-right": "mode",
+ "format": {
+ "months": "{}",
+ "weekdays": "{}",
+ "today": "{}",
+ "days": "{}",
+ },
},
+ },
- "pulseaudio#microphone": {
- "format": "{format_source}",
- "format-source": "ļ° {volume}%",
- "format-source-muted": "ļ± Muted",
- "on-click": "pamixer --default-source -t",
- "on-scroll-up": "pamixer --default-source -i 5",
- "on-scroll-down": "pamixer --default-source -d 5",
- "scroll-step": 5
+ "backlight": {
+ "device": "intel_backlight",
+ "format": "{icon} {percent}%",
+ "format-icons": ["ó°", "ó°", "ó° "],
+ "on-scroll-up": "brightnessctl set 1%+",
+ "on-scroll-down": "brightnessctl set 1%-",
+ "min-length": 6,
+ },
+
+ "battery": {
+ "states": {
+ "good": 95,
+ "warning": 30,
+ "critical": 20,
},
+ "format": "{icon} {capacity}%",
+ "format-charging": "ļ¦ {capacity}%",
+ "format-plugged": "ļ¦ {capacity}%",
+ "format-alt": "{time} {icon}",
+ "format-icons": ["ó°", "ó°ŗ", "ó°»", "ó°¼", "ó°½", "ó°¾", "ó°æ", "ó°", "ó°", "ó°", "ó°¹"],
+ },
- "memory": {
- "states": {
- "c": 90, // critical
- "h": 60, // high
- "m": 30 // medium
- },
- "interval": 10,
- "format": "ó°¾ {used}GB",
- "format-m": "ó°¾
{used}GB",
- "format-h": "ó°
{used}GB",
- "format-c": "ļ” {used}GB",
- "format-alt": "ó°¾ {percentage}%",
- "max-length": 10,
- "tooltip": true,
- "tooltip-format": "ó°¾ {percentage}%\nī¦ {used:0.1f}GB/{total:0.1f}GB"
+ "pulseaudio": {
+ "format": "{icon} {volume}%",
+ "tooltip": false,
+ "format-muted": " Muted",
+ "on-click": "pamixer -t",
+ // user created manually
+ "on-click-right": "pavucontrol",
+ "on-scroll-up": "pamixer -i 1",
+ "on-scroll-down": "pamixer -d 1",
+ "scroll-step": 5,
+ "format-icons": {
+ "headphone": "ļ„",
+ "hands-free": "ļ„",
+ "headset": "ļ„",
+ "phone": "ļ",
+ "portable": "ļ",
+ "car": "ļ¹",
+ "default": ["ļ¦", "ļ§", "ļ§", "ļØ"],
},
+ },
- "cpu": {
- "interval": 10,
- "format": "ó° {usage}%",
- "format-alt": "{icon0}{icon1}{icon2}{icon3}",
- "format-icons": ["ā", "ā", "ā", "ā", "ā
", "ā", "ā", "ā"]
+ "pulseaudio#microphone": {
+ "format": "{format_source}",
+ "format-source": "ļ° {volume}%",
+ "format-source-muted": "ļ± Muted",
+ "on-click": "pamixer --default-source -t",
+ "on-click-right": "pavucontrol",
+ "on-scroll-up": "pamixer --default-source -i 5",
+ "on-scroll-down": "pamixer --default-source -d 5",
+ "scroll-step": 5,
+ },
+
+ "memory": {
+ "states": {
+ "c": 90, // critical
+ "h": 60, // high
+ "m": 30, // medium
},
+ "interval": 10,
+ "format": "ó°¾ {used}GB",
+ "format-m": "ó°¾
{used}GB",
+ "format-h": "ó°
{used}GB",
+ "format-c": "ļ” {used}GB",
+ "format-alt": "ó°¾ {percentage}%",
+ "max-length": 10,
+ "tooltip": true,
+ "tooltip-format": "ó°¾ {percentage}%\nī¦ {used:0.1f}GB/{total:0.1f}GB",
+ },
- "network": {
- "tooltip": true,
- "format-wifi": "ļ« {essid}",
- "format-ethernet": "ó° ",
- "tooltip-format": "Network: {essid}\nSignal strength: {signaldBm}dBm ({signalStrength}%)\nFrequency: {frequency}MHz\nInterface: {ifname}\nIP: {ipaddr}/{cidr}\nGateway: {gwaddr}\nNetmask: {netmask}",
- "format-linked": "ó° {ifname} (No IP)",
- "format-disconnected": "ó°Ŗ ",
- "tooltip-format-disconnected": "Disconnected",
- "format-alt": "ļ {bandwidthDownBytes} ļ {bandwidthUpBytes}",
- "interval": 2
- }
+ "cpu": {
+ "interval": 10,
+ "format": "ó° {usage}%",
+ "format-alt": "{icon0}{icon1}{icon2}{icon3}",
+ "format-icons": ["ā", "ā", "ā", "ā", "ā
", "ā", "ā", "ā"],
+ },
+
+ "network": {
+ "tooltip": true,
+ "format-wifi": "ļ« {essid}",
+ "format-ethernet": "ó° ",
+ "tooltip-format": "Network: {essid}\nSignal strength: {signaldBm}dBm ({signalStrength}%)\nFrequency: {frequency}MHz\nInterface: {ifname}\nIP: {ipaddr}/{cidr}\nGateway: {gwaddr}\nNetmask: {netmask}",
+ "format-linked": "ó° {ifname} (No IP)",
+ "format-disconnected": "ó°Ŗ ",
+ "tooltip-format-disconnected": "Disconnected",
+ "format-alt": "ļ {bandwidthDownBytes} ļ {bandwidthUpBytes}",
+ // user created manually
+ "on-click-right": "nm-connection-editor",
+ "interval": 2,
+ },
}
diff --git a/configs/waybar/scripts/test.sh b/configs/waybar/scripts/test.sh
new file mode 100755
index 0000000..4213613
--- /dev/null
+++ b/configs/waybar/scripts/test.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+pid=$(hyprctl activewindow -j | jq -r '.pid')
+exe=$(readlink /proc/$pid/exe)
+basename "$exe"
diff --git a/configs/waybar/style.css b/configs/waybar/style.css
index 39b92f2..b747b24 100644
--- a/configs/waybar/style.css
+++ b/configs/waybar/style.css
@@ -1,3 +1,11 @@
+/* user created manually */
+/* @import "mocha.css"; */
+@define-color waybalttrans rgba(30, 30, 30, 0.3);
+@define-color waybmain rgb(203, 166, 247);
+@define-color waybfont rgb(166, 173, 200);
+@define-color waybalt rgb(30, 30, 30);
+@define-color waybalt2 rgb( 100, 100, 100);
+
* {
border: none;
border-radius: 0;
@@ -8,39 +16,42 @@
}
window#waybar {
- background: rgba(21, 18, 27, 0);
- color: #cdd6f4;
+ background: @waybalttrans;
+ color: @waybfont;
+ border-radius: 10px;
}
#workspaces button {
padding: 5px;
- color: #555869;
+ color: @waybalt2;
margin-right: 5px;
}
#workspaces button.active {
- color: #a6adc8;
+ color: @waybmain;
}
#workspaces button.focused {
- color: #a6adc8;
- background: #eba0ac;
+ color: @waybfont;
+ background: @waybalt;
border-radius: 10px;
}
#workspaces button.urgent {
- color: #11111b;
- background: #a6e3a1;
+ color: @waybalt;
+ background: @waybfont;
border-radius: 10px;
}
#workspaces button:hover {
- background: #cdd6f4;
- color: #11111b;
+ background: @waybmain;
+ color: @waybalt;
border-radius: 10px;
}
#window,
+/* user modified manually */
+#language,
#clock,
#battery,
#pulseaudio,
@@ -50,13 +61,51 @@ window#waybar {
#workspaces,
#tray,
#backlight {
- background: #1e1e2e;
+ background: @waybalt;
padding: 0px 10px;
margin: 3px 0px;
margin-top: 5px;
/* border: 1px solid #181825; */
}
+/* user created manually */
+#window,
+#tray {
+ border: 2px solid @waybmain;
+}
+#language {
+ border: 2px solid @waybmain;
+}
+#clock {
+ border: 2px solid @waybmain;
+}
+#pulseaudio {
+ border: 2px solid @waybmain;
+}
+#pulseaudio.microphone {
+ border-right: 2px solid @waybmain;
+}
+#network {
+ border: 2px solid @waybmain;
+ border-right: none;
+}
+#cpu {
+ border: 2px solid @waybmain;
+ border-left: none;
+}
+#memory {
+ border: 2px solid @waybmain;
+ border-right: none;
+}
+#workspaces {
+ border: 2px solid @waybmain;
+}
+
+#language {
+ border-radius: 10px;
+ margin-left: 10px;
+}
+
#backlight {
border-radius: 10px 0px 0px 10px;
}
@@ -67,7 +116,7 @@ window#waybar {
}
#workspaces {
- background: #1e1e2e;
+ background: @waybalt;
border-radius: 10px;
margin-left: 10px;
padding-right: 0px;
@@ -90,34 +139,36 @@ window#waybar {
}
#clock {
- color: #a6adc8;
+ color: @waybfont;
border-radius: 10px 10px 10px 10px;
margin-left: 5px;
- border-right: 0px;
+/* user modified manually */
+ /* border-right: 0px; */
}
#network {
- color: #a6adc8;
+ color: @waybfont;
border-radius: 10px 0px 0px 10px;
}
#pulseaudio {
- color: #a6adc8;
+ color: @waybfont;
border-left: 0px;
border-right: 0px;
}
#pulseaudio.microphone {
- color: #a6adc8;
+ color: @waybfont;
border-radius: 0px 10px 10px 0px;
- border-left: 0px;
- border-right: 0px;
+/* user modified manually */
+ /* border-left: 0px; */
+ /* border-right: 0px; */
margin-right: 5px;
}
#battery {
- color:#a6adc8;
+ color:@waybfont;
border-radius: 0px 10px 10px 0px;
margin-right: 10px;
}
diff --git a/configs/wlogout/style.css b/configs/wlogout/style.css
index 08cd3db..c05e325 100644
--- a/configs/wlogout/style.css
+++ b/configs/wlogout/style.css
@@ -1,3 +1,9 @@
+/* user created manually */
+@define-color wlogalttrans rgba(30, 30, 30, 0.5);
+@define-color wlogfont rgb(166, 173, 200);
+@define-color wlogalt rgb(30, 30, 30);
+@define-color wlogmain rgb(203, 166, 247);
+
* {
font-family: JetBrains Mono, Symbols Nerd Font;
font-size: 24px;
@@ -6,14 +12,15 @@
}
window {
- background-color: #11111b;
+ background-color: @wlogalttrans;
/* border-radius: 10px; */
}
button {
- background-color: #11111b;
+ background-color: @wlogalt;
+ border-color: @wlogmain;
border-style: solid;
- /* border-width: 2px; */
+ border-width: 2px;
border-radius: 50px;
background-repeat: no-repeat;
background-position: center;
@@ -23,66 +30,67 @@ button {
button:active,
button:hover {
- background-color: #cdd6f4;
+ background-color: @wlogmain;
+ color: @wlogalt;
}
button:focus {
- background-color: #cdd6f4;
+ background-color: @wlogmain;
}
#lock {
- background-image: image(url("../assets/wlogout/assets/lock.png"), url("/usr/local/share/wlogout/icons/lock.png"));
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/lock.png"), url("/usr/local/share/wlogout/icons/lock.png"));
}
#lock:hover {
- background-image: image(url("../assets/wlogout/assets/lock-hover.png"), url("/usr/local/share/wlogout/icons/lock.png"));
- color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/lock-hover.png"), url("/usr/local/share/wlogout/icons/lock.png"));
+ color: @wlogalt;
}
#logout {
- background-image: image(url("../assets/wlogout/assets/logout.png"), url("/usr/local/share/wlogout/icons/logout.png"));
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/logout.png"), url("/usr/local/share/wlogout/icons/logout.png"));
}
#logout:hover {
- background-image: image(url("../assets/wlogout/assets/logout-hover.png"), url("/usr/local/share/wlogout/icons/logout.png"));
- color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/logout-hover.png"), url("/usr/local/share/wlogout/icons/logout.png"));
+ color: @wlogalt;
}
#suspend {
- background-image: image(url("../assets/wlogout/assets/sleep.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/sleep.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
}
#suspend:hover {
- background-image: image(url("../assets/wlogout/assets/sleep-hover.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
- color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/sleep-hover.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
+ color: @wlogalt;
}
#shutdown {
- background-image: image(url("../assets/wlogout/assets/power.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/power.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
}
#shutdown:hover {
- background-image: image(url("../assets/wlogout/assets/power-hover.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
- color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/power-hover.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
+ color: @wlogalt;
}
#reboot {
- background-image: image(url("../assets/wlogout/assets/restart.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/restart.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
}
#reboot:hover {
- background-image: image(url("../assets/wlogout/assets/restart-hover.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
- color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/restart-hover.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
+ color: @wlogalt;
}
#exit {
- background-image: image(url("../assets/wlogout/assets/restart.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
- background-color: #11111b;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/restart.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
+ background-color: @wlogalt;
}
#exit:hover {
- background-image: image(url("../assets/wlogout/assets/restart-hover.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
- color: #11111b;
- background-color: #cdd6f4;
+ background-image: image(url("/home/db123/.config/assets/wlogout/assets/restart-hover.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
+ color: @wlogalt;
+ background-color: @wlogmain;
}
diff --git a/scripts/installer/final.sh b/scripts/installer/final.sh
index 2eac639..9c52f27 100644
--- a/scripts/installer/final.sh
+++ b/scripts/installer/final.sh
@@ -10,16 +10,15 @@ log_message "Final setup script started"
print_bold_blue "\nCongratulations! Your Simple Hyprland setup is complete!"
print_bold_blue "\nRepository Information:"
-echo " - GitHub Repository: https://github.com/gaurav23b/simple-hyprland"
-echo " - If you found this repo helpful, please consider giving it a star on GitHub!"
+echo " - Gitea Repository: https://git.db123.ir/db123/simple-hyprland"
+echo " - Original source: https://github.com/gaurav23b/simple-hyprland"
-print_bold_blue "\nContribute:"
-echo " - Feel free to open issues, submit pull requests, or provide feedback."
-echo " - Every contribution, big or small, is valuable to the community."
-
-print_bold_blue "\nTroubleshooting:"
-echo " - If you encounter any issues, please check the GitHub issues section."
-echo " - Don't hesitate to open a new issue if you can't find a solution to your problem."
+print_bold_blue "\nCustomizations for db123:"
+echo " - Dual GPU: Intel UHD 730 + AMD Radeon RX 580"
+echo " - Monitor: HDMI-A-3, 1920x1080@74.97"
+echo " - Keyboard: us/ir layout"
+echo " - Catppuccin Mocha theme throughout"
+echo " - Wallpaper: awww daemon + mpvpaper for video wallpapers"
print_success "\nEnjoy your new Hyprland environment!"
diff --git a/scripts/installer/hypr.sh b/scripts/installer/hypr.sh
index 323a064..a060af0 100644
--- a/scripts/installer/hypr.sh
+++ b/scripts/installer/hypr.sh
@@ -11,7 +11,7 @@ print_info "\nStarting hypr setup..."
print_info "\nEverything is recommended to INSTALL"
run_command "pacman -S --noconfirm hyprland" "Install Hyprland (Must)" "yes"
-run_command "mkdir -p /home/$SUDO_USER/.config/hypr/ && cp -r $BASE_DIR/configs/hypr/hyprland.conf /home/$SUDO_USER/.config/hypr/" "Copy hyprland config (Must)" "yes" "no"
+run_command "mkdir -p /home/$SUDO_USER/.config/hypr/ && cp -r $BASE_DIR/configs/hypr/hyprland.conf $BASE_DIR/configs/hypr/mocha.conf /home/$SUDO_USER/.config/hypr/" "Copy hyprland config + mocha colors (Must)" "yes" "no"
run_command "pacman -S --noconfirm xdg-desktop-portal-hyprland" "Install XDG desktop portal for Hyprland" "yes"
diff --git a/scripts/installer/prerequisites.sh b/scripts/installer/prerequisites.sh
index bb83d85..6dc120d 100755
--- a/scripts/installer/prerequisites.sh
+++ b/scripts/installer/prerequisites.sh
@@ -19,11 +19,13 @@ elif run_command "pacman -S --noconfirm --needed git base-devel" "Install YAY (M
fi
run_command "pacman -S --noconfirm pipewire wireplumber pamixer brightnessctl" "Configuring audio and brightness (Recommended)" "yes"
-run_command "pacman -S --noconfirm ttf-cascadia-code-nerd ttf-cascadia-mono-nerd ttf-fira-code ttf-fira-mono ttf-fira-sans ttf-firacode-nerd ttf-iosevka-nerd ttf-iosevkaterm-nerd ttf-jetbrains-mono-nerd ttf-jetbrains-mono ttf-nerd-fonts-symbols ttf-nerd-fonts-symbols ttf-nerd-fonts-symbols-mono" "Installing Nerd Fonts and Symbols (Recommended)" "yes"
+run_command "pacman -S --noconfirm awww mpvpaper" "Install wallpaper daemon (awww) and video wallpaper (mpvpaper)" "yes"
+
+run_command "pacman -S --noconfirm ttf-jetbrains-mono-nerd ttf-jetbrains-mono ttf-nerd-fonts-symbols ttf-nerd-fonts-symbols ttf-nerd-fonts-symbols-mono" "Installing Nerd Fonts and Symbols (Recommended)" "yes"
run_command "pacman -S --noconfirm sddm && systemctl enable sddm.service" "Install and enable SDDM (Recommended)" "yes"
-run_command "yay -S --sudoloop --noconfirm brave-bin" "Install Brave Browser" "yes" "no"
+run_command "yay -S --sudoloop --noconfirm zen-browser-bin" "Install Zen Browser" "yes" "no"
run_command "pacman -S --noconfirm kitty" "Install Kitty (Recommended)" "yes"
diff --git a/scripts/installer/theming.sh b/scripts/installer/theming.sh
index 69aac74..76fd67c 100644
--- a/scripts/installer/theming.sh
+++ b/scripts/installer/theming.sh
@@ -13,9 +13,9 @@ run_command "pacman -S --noconfirm nwg-look" "Install nwg-look for GTK theme man
run_command "pacman -S --noconfirm qt5ct qt6ct kvantum" "Install Qt5, Qt6 Settings, and Kvantum theme engines" "yes"
-run_command "tar -xvf $BASE_DIR/assets/themes/Catppuccin-Mocha.tar.xz -C /usr/share/themes/" "Install Catppuccin Mocha GTK theme" "yes"
+run_command "yay -S --sudoloop --noconfirm catppuccin-gtk-theme-mocha" "Install Catppuccin Mocha GTK theme" "yes" "no"
-run_command "tar -xvf $BASE_DIR/assets/icons/Tela-circle-dracula.tar.xz -C /usr/share/icons/" "Install Tela Circle Dracula icon theme" "yes"
+run_command "yay -S --sudoloop --noconfirm catppuccin-cursors-mocha" "Install Catppuccin Mocha cursors" "yes" "no"
run_command "yay -S --sudoloop --noconfirm kvantum-theme-catppuccin-git" "Install Catppuccin theme for Kvantum" "yes" "no"
@@ -24,8 +24,11 @@ run_command "cp -r $BASE_DIR/configs/kitty /home/$SUDO_USER/.config/" "Copy Catp
# Add instructions to configure theming
print_info "\nPost-installation instructions:"
print_bold_blue "Set themes and icons:"
-echo " - Run 'nwg-look' and set the global GTK and icon theme"
-echo " - Open 'kvantummanager' (run with sudo for system-wide changes) to select and apply the Catppuccin theme"
+echo " - Run 'nwg-look' and set GTK theme to Catppuccin-Mocha, icon theme to Tela-circle-dracula, cursor to catppuccin-mocha"
+echo " - Open 'kvantummanager' to select and apply the Catppuccin theme"
echo " - Open 'qt6ct' to set the icon theme"
+print_bold_blue "Optional: Catppuccin GRUB theme:"
+echo " - Install via: yay -S catppuccin-grub-theme-git"
+echo " - Then run: sudo grub-install && sudo grub-mkconfig -o /boot/grub/grub.cfg"
echo "------------------------------------------------------------------------"
\ No newline at end of file
diff --git a/scripts/installer/utilities.sh b/scripts/installer/utilities.sh
index 2e2d76c..a66da9f 100644
--- a/scripts/installer/utilities.sh
+++ b/scripts/installer/utilities.sh
@@ -17,7 +17,7 @@ run_command "cp -r $BASE_DIR/configs/tofi /home/$SUDO_USER/.config/" "Copy Tofi
run_command "pacman -S --noconfirm cliphist" "Install Cliphist - Clipboard Manager" "yes"
-run_command "yay -S --sudoloop --noconfirm swww" "Install SWWW for wallpaper management" "yes" "no"
+run_command "yay -S --sudoloop --noconfirm awww" "Install awww for wallpaper management" "yes" "no"
run_command "mkdir -p /home/$SUDO_USER/.config/assets/backgrounds && cp -r $BASE_DIR/assets/backgrounds /home/$SUDO_USER/.config/assets/" "Copy sample wallpapers to assets directory (Recommended)" "yes" "no"
run_command "yay -S --sudoloop --noconfirm hyprpicker" "Install Hyprpicker - Color Picker" "yes" "no"
@@ -30,6 +30,8 @@ run_command "cp -r $BASE_DIR/configs/wlogout /home/$SUDO_USER/.config/ && cp -r
run_command "yay -S --sudoloop --noconfirm grimblast" "Install Grimblast - Screenshot tool" "yes" "no"
+run_command "yay -S --sudoloop --noconfirm mpvpaper" "Install mpvpaper - animated/video wallpapers" "yes" "no"
+
run_command "yay -S --sudoloop --noconfirm hypridle" "Install Hypridle for idle management (Must)" "yes" "no"
run_command "cp -r $BASE_DIR/configs/hypr/hypridle.conf /home/$SUDO_USER/.config/hypr/" "Copy Hypridle config" "yes" "no"