Customize for db123: replace configs, adapt installer for dual-GPU/Catppuccin/awww

This commit is contained in:
2026-06-07 23:02:09 +03:30
parent ff25b19b6c
commit b8890f7c5e
21 changed files with 865 additions and 371 deletions

View File

@@ -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
<img src="/assets/github_repo/images/final-setup-01.png" alt="final-setup-01">
<img src="/assets/github_repo/images/final-setup-02.png" alt="final-setup-02">
##### Setup Walkthrough 👇 (Click to Play)
[![Showcase Video](https://raw.githubusercontent.com/gaurav23b/simple-hyprland/main/assets/github_repo/images/Simple_hypr_thumbnail.png)](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. 🤝

View File

@@ -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"
background = "#1e1e2e"
foreground = "#cdd6f4"
frame_color = "#fab387"

View File

@@ -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
#}

View File

@@ -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
# }
# }

View File

@@ -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 = <i>Input Password...</i> # 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
}
}

78
configs/hypr/mocha.conf Normal file
View File

@@ -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

View File

@@ -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

View File

@@ -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
color7 #BAC2DE
color15 #A6ADC8

View File

@@ -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

View File

@@ -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

View File

@@ -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": "<tt>{calendar}</tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"months": "<span color='#a6adc8'><b>{}</b></span>",
"weekdays": "<span color='#a6adc8'><b>{}</b></span>",
"today": "<span color='#a6adc8'><b>{}</b></span>",
"days": "<span color='#555869'><b>{}</b></span>"
}
}
},
"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": "<tt>{calendar}</tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"months": "<span color='#a6adc8'><b>{}</b></span>",
"weekdays": "<span color='#a6adc8'><b>{}</b></span>",
"today": "<span color='#a6adc8'><b>{}</b></span>",
"days": "<span color='#555869'><b>{}</b></span>",
},
},
},
"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: <big><b>{essid}</b></big>\nSignal strength: <b>{signaldBm}dBm ({signalStrength}%)</b>\nFrequency: <b>{frequency}MHz</b>\nInterface: <b>{ifname}</b>\nIP: <b>{ipaddr}/{cidr}</b>\nGateway: <b>{gwaddr}</b>\nNetmask: <b>{netmask}</b>",
"format-linked": "󰈀 {ifname} (No IP)",
"format-disconnected": "󰖪 ",
"tooltip-format-disconnected": "Disconnected",
"format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
"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: <big><b>{essid}</b></big>\nSignal strength: <b>{signaldBm}dBm ({signalStrength}%)</b>\nFrequency: <b>{frequency}MHz</b>\nInterface: <b>{ifname}</b>\nIP: <b>{ipaddr}/{cidr}</b>\nGateway: <b>{gwaddr}</b>\nNetmask: <b>{netmask}</b>",
"format-linked": "󰈀 {ifname} (No IP)",
"format-disconnected": "󰖪 ",
"tooltip-format-disconnected": "Disconnected",
"format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
// user created manually
"on-click-right": "nm-connection-editor",
"interval": 2,
},
}

4
configs/waybar/scripts/test.sh Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
pid=$(hyprctl activewindow -j | jq -r '.pid')
exe=$(readlink /proc/$pid/exe)
basename "$exe"

View File

@@ -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;
}

View File

@@ -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;
}

View File

@@ -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!"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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 "------------------------------------------------------------------------"

View File

@@ -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"