feat: hyprland B)

This commit is contained in:
Flinner Yuu 2024-11-22 20:44:49 +03:00
parent 6e514a51d3
commit 08c250b3a0
Signed by: flinner
GPG Key ID: 95CE0DA7F0E58CA6
11 changed files with 930 additions and 4 deletions

6
.gitignore vendored
View File

@ -1 +1,7 @@
__pycache__
/emacs.mine/.config/emacs.mine/elpa/
/emacs.mine/.config/emacs.mine/init.el
/emacs.mine/.config/emacs.mine/parinfer-rust/
/emacs.mine/.config/emacs.mine/straight/
/emacs.mine/.config/emacs.mine/var/
/hypr/.face

View File

@ -8,7 +8,7 @@
# Calculation Method: https://api.aladhan.com/v1/methods
method='4'
# Print Text Language (en/ar)
print_lang="ar"
print_lang="en"
# Notifcation Daemon
notify="mako"
# ----------------------- #

View File

@ -0,0 +1,457 @@
# #######################################################################################
# AUTOGENERATED HYPR CONFIG.
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
# #######################################################################################
#autogenerated = 1 # remove this line to remove the warning
# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/
# Please note not all available settings / options are set here.
# For a full list, see the wiki
# 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
################
### MONITORS ###
################
$mainMonitor=DVI-D-1
$secondMonitor=DP-1
# See https://wiki.hyprland.org/Configuring/Monitors/
# MAIN:
monitor=$mainMonitor,preferred,1920x395,auto
# LEFT:
monitor=$secondMonitor,preferred,auto,auto, transform, 3
monitor = , preferred, auto, 1
###################
### MY PROGRAMS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
$terminal = kitty
$fileManager = dolphin
$menu = rofi -show drun
#################
### AUTOSTART ###
#################
# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:
exec-once = nm-applet & (sleep 3 && nextcloud --background ) & (sleep 3 && udiskie --tray ) &
exec-once = (sleep 3 && kdeconnect-indicator)
exec-once = waybar & hyprpaper
exec-once = [workspace 1 silent] firefox
exec-once = [workspace 8 silent] $terminal
exec-once = [workspace 9 silent] keepassxc
exec-once = [workspace 9 silent] emacs
exec-once = [workspace 10 silent] thunderbird
# cliphsit https://wiki.archlinux.org/title/Hyprland
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# lock if left on
exec-once = swayidle -w
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
#####################
### LOOK AND FEEL ###
#####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 5
gaps_out = 0, 10, 10, 10
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
col.inactive_border = rgba(FF000055) rgba(FFFF0055) rgba(00FF0055) rgba(00FFFF55) rgba(0000FF55) rgba(FF00FF55) 270deg
col.active_border = rgba(FF0000ee) rgba(FFFF00ee) rgba(00FF00ee) rgba(00FFFFee) rgba(0000FFee) rgba(FF00FFee) 270deg
bezier = linear, 0.0, 0.0, 1.0, 1.0
animation = borderangle, 1, 100, linear, loop
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
layout = dwindle
}
# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
rounding = 10
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 1.0
shadow {
enabled = true
range = 4
render_power = 3
color = rgba(1a1a1aee)
}
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
popups = false
special = true # this is an expensive operation
size = 3
passes = 1
vibrancy = 0.1696
}
}
# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
enabled = yes, please :)
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = easeOutQuint,0.23,1,0.32,1
bezier = easeInOutCubic,0.65,0.05,0.36,1
bezier = linear,0,0,1,1
bezier = almostLinear,0.5,0.5,0.75,1.0
bezier = quick,0.15,0,0.1,1
animation = global, 1, 10, default
animation = border, 1, 5.39, easeOutQuint
animation = windows, 1, 4.79, easeOutQuint
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
animation = windowsOut, 1, 1.49, linear, popin 87%
animation = fadeIn, 1, 1.73, almostLinear
animation = fadeOut, 1, 1.46, almostLinear
animation = fade, 1, 3.03, quick
animation = layers, 1, 3.81, easeOutQuint
animation = layersIn, 1, 4, easeOutQuint, fade
animation = layersOut, 1, 1.5, linear, fade
animation = fadeLayersIn, 1, 1.79, almostLinear
animation = fadeLayersOut, 1, 1.39, almostLinear
animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade
}
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
# "Smart gaps" / "No gaps when only"
# uncomment all if you wish to use that.
# workspace = w[t1], gapsout:0, gapsin:0
# workspace = w[tg1], gapsout:0, gapsin:0
# workspace = f[1], gapsout:0, gapsin:0
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[t1]
# windowrulev2 = rounding 0, floating:0, onworkspace:w[t1]
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tg1]
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tg1]
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + shift + t in the keybinds section below
preserve_split = true # You probably want this
force_split = 2 # right or bottom
}
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
new_status = master
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
enable_swallow = false
swallow_regex = ^(Alacritty|kitty|footclient)$
swallow_exception_regex = ^(ueberzugpp_.*)
}
#############
### INPUT ###
#############
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = us
kb_variant =
kb_model =
kb_options = altwin:swap_lalt_lwin, ctrl:swapcaps
kb_rules =
follow_mouse = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
touchpad {
natural_scroll = false
}
}
#
#
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = false
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
name = epic-mouse-v1
sensitivity = -0.5
}
###################
### KEYBINDINGS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
$secMod = ALT # ALT
# Programs
bind = $mainMod, Return, exec, $terminal
bind = $mainMod SHIFT, Q, killactive,
# bind = $mainMod, M, exit,
# bind = $mainMod, E, exec, $fileManager
bind = $mainMod, E, exec, emacsclient -nc -alternate-editor="emacs"
bind = $mainMod, R, exec, $menu
bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy
# Lock
bind = $mainMod, HOME, exec, hyprlock >> ~/hyprlock_logfile.txt
# from https://github.com/end-4/dots-hyprland/blob/main/.config/hypr/hyprland/keybinds.conf
bind = $mainMod, Tab, focuscurrentorlast # [hidden] sus keybind
bind = $mainMod, Tab, bringactivetotop, # [hidden] bring it to the top
# Window Modes
bind = $mainMod, s, togglefloating,
bind = $mainMod SHIFT, t, pseudo, # dwindle
bind = $mainMod, t, settiled, # dwindle
bind = $mainMod, p, pin, # dwindle
bind = $mainMod, m, fullscreen, 1 # monocole layout
bind = $mainMod, f, fullscreen, 0 # real fullscreen
#bind = $mainMod, J, togglesplit, # dwindle
# Move focus with mainMod + arrow keys
bind = $mainMod, H, movefocus, l
bind = $mainMod, L, movefocus, r
bind = $mainMod, K, movefocus, u
bind = $mainMod, J, movefocus, d
# swap focus with mainMod + arrow keys
bind = $mainMod + SHIFT, H, swapwindow, l
bind = $mainMod + SHIFT, L, swapwindow, r
bind = $mainMod + SHIFT, K, swapwindow, u
bind = $mainMod + SHIFT, J, swapwindow, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6 bind = $mainMod, 7, workspace, 7 bind = $mainMod, 8, workspace, 8
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
## Move to Next/Prev Workspace
# (Same Monitor, already created)
bind = $mainMod, I, workspace, m+1
bind = $mainMod, U, workspace, m-1
## Move to Next/Prev Workspace
# (Same Monitor, already created)
bind = $mainMod SHIFT Control_L, I, workspace, r+1
bind = $mainMod SHIFT Control_L, U, workspace, r-1
## Swap Workspace
# bind = $mainMod Control_L, I, movecurrentworkspacetomonitor, r+1
# bind = $mainMod Control_L, U, movecurrentworkspacetomonitor, r-1
#
#bind = $mainMod Control_L, 1, focusworkspaceoncurrentmonitor, 1
#bind = $mainMod Control_L, 2, focusworkspaceoncurrentmonitor, 2
#bind = $mainMod Control_L, 3, focusworkspaceoncurrentmonitor, 3
#bind = $mainMod Control_L, 4, focusworkspaceoncurrentmonitor, 4
#bind = $mainMod Control_L, 5, focusworkspaceoncurrentmonitor, 5
#bind = $mainMod Control_L, 6, focusworkspaceoncurrentmonitor, 6
#bind = $mainMod Control_L, 7, focusworkspaceoncurrentmonitor, 7
#bind = $mainMod Control_L, 8, focusworkspaceoncurrentmonitor, 8
#bind = $mainMod Control_L, 9, focusworkspaceoncurrentmonitor, 9
#(Different Monitor)
#bind = $mainMod, I, workspace, r+1
#bind = $mainMod, U, workspace, r-1
# Move Window to Next/Prev Workspace (Same Monitor)
bind = $mainMod SHIFT, I, movetoworkspacesilent, r+1
bind = $mainMod SHIFT, U, movetoworkspacesilent, r-1
# Example special workspace (scratchpad)
bind = $mainMod, x, togglespecialworkspace, magic
bind = $mainMod SHIFT, x, movetoworkspacesilent, special:magic
#bind = $mainMod, N, movetoworkspacesilent, special:minimized
#bind = $mainMod SHIFT, N, togglespecialworkspace, minimized
#bind = $mainMod SHIFT, N, movetoworkspace, +0
# https://github.com/hyprwm/Hyprland/issues/995#issuecomment-2069669681
bind = $mainMod, N, movetoworkspacesilent, special:minimized
bind = $mainMod SHIFT, N, togglespecialworkspace, minimized
bind = $mainMod SHIFT, N, submap, minimized
submap = minimized
bind = , F4, killactive
bind = , Return, movetoworkspace, +0
bind = , Return, submap, reset
bind = , mouse:272, movetoworkspace, +0
bind = , mouse:272, submap, reset
bind = , escape, togglespecialworkspace, minimized
bind = , escape, submap, reset
submap = reset
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
##############################
### WINDOWS AND WORKSPACES ###
##############################
# 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)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# Ignore maximize requests from apps. You'll probably like this.
windowrulev2 = suppressevent maximize, class:.*
# Fix some dragging issues with XWayland
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
# Fix ueberzugpp
windowrulev2 = noanim, class:^(ueberzugpp)
windowrulev2 = workspace 4 silent, class:^(VGA_SIM)
# Fix Matlab
windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Command HistoryWindow)$
windowrulev2 = noborder, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Command HistoryWindow)$
windowrulev2 = opacity 1.0 override, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(Command HistoryWindow)$
windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(TabCompletionPopup)$
windowrulev2 = noborder, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(TabCompletionPopup)$
windowrulev2 = opacity 1.0 override, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(TabCompletionPopup)$
windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(FunctionHints)$
windowrulev2 = noborder, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(FunctionHints)$
windowrulev2 = opacity 1.0 override, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(FunctionHints)$
windowrulev2 = nofocus, class: ^(MATLAB [\w\d]* - academic use)$, title: ^(DefaultOverlayManager\.JWindow)$
# SMART GAPS ()
#workspace = w[tv1], gapsout:0, gapsin:0
#workspace = f[1], gapsout:0, gapsin:0
#windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
#windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
#windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
#windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
# Prayer times
windowrulev2 = float,class:(yad)
windowrulev2 = move cursor -50% 25,title:(Prayers)
# bind workspaces
#workspace = [1-5], monitor: $mainMonitor
workspace=1, monitor:$mainMonitor
workspace=2, monitor:$mainMonitor
workspace=3, monitor:$mainMonitor
workspace=4, monitor:$mainMonitor
workspace=5, monitor:$mainMonitor
workspace=6, monitor:$secondMonitor
workspace=7, monitor:$secondMonitor
workspace=8, monitor:$secondMonitor
workspace=9, monitor:$secondMonitor
workspace=10, monitor:$secondMonitor
#

View File

@ -0,0 +1,111 @@
# # MIT License
# # https://github.com/catppuccin/hyprlock
# Copyright (c) 2021 Catppuccin
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
source = $HOME/.config/hypr/mocha.conf
$accent = $mauve
$accentAlpha = $mauveAlpha
$font = JetBrainsMono Nerd Font
# GENERAL
general {
disable_loading_bar = true
hide_cursor = true
}
# BACKGROUND
background {
monitor =
path = $HOME/.config/background
blur_passes = 0
color = $base
}
# LAYOUT
label {
monitor =
text = Layout: $LAYOUT
color = $text
font_size = 25
font_family = $font
position = 30, -30
halign = left
valign = top
}
# TIME
label {
monitor =
text = $TIME
color = $text
font_size = 90
font_family = $font
position = -30, 0
halign = right
valign = top
}
# DATE
label {
monitor =
text = cmd[update:43200000] date +"%A, %d %B %Y"
color = $text
font_size = 25
font_family = $font
position = -30, -150
halign = right
valign = top
}
# USER AVATAR
image {
monitor =
path = $HOME/.face
size = 100
border_color = $accent
position = 0, 75
halign = center
valign = center
}
# INPUT FIELD
input-field {
monitor =
size = 300, 60
outline_thickness = 4
dots_size = 0.2
dots_spacing = 0.2
dots_center = true
outer_color = $accent
inner_color = $surface0
font_color = $text
fade_on_empty = false
placeholder_text = <span foreground="##$textAlpha"><i>󰌾 Logged in as </i><span foreground="##$accentAlpha">$USER</span></span>
hide_input = false
check_color = $accent
fail_color = $red
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i>
capslock_color = $yellow
position = 0, -47
halign = center
valign = center
}

View File

@ -0,0 +1,3 @@
preload = ~/Pictures/wallhaven-yxdvjx.png
wallpaper = DVI-D-1, ~/Pictures/wallhaven-yxdvjx.png
wallpaper = , ~/Pictures/wallhaven-yxdvjx.png

View File

@ -0,0 +1,100 @@
# https://github.com/catppuccin/hyprland/blob/main/themes/mocha.conf
# MIT License
#
# Copyright (c) 2021 Catppuccin
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
$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

@ -0,0 +1,3 @@
timeout 300 'hyprlock >> ~/hyprlock_logfile.txt'
timeout 315 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on'
before-sleep 'hyprlock'

View File

@ -578,7 +578,7 @@ cursor #d0d0d0
#: The foreground and background colors
background_opacity 0.7
background_opacity 0.9
#: The opacity of the background. A number between 0 and 1, where 1 is
#: opaque and 0 is fully transparent. This will only work if
@ -750,7 +750,7 @@ color15 #ebdbb2
#: Advanced {{{
# shell .
shell /usr/bin/zsh
#: The shell program to execute. The default value of . means to use
#: whatever shell is set as the default shell for the current user.

View File

@ -0,0 +1,101 @@
{
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
// "width": 1280, // Waybar width
// Choose the order of the modules
"reload_style_on_change": true,
"modules-left": ["hyprland/workspaces"],
"modules-center": ["custom/music"],
// "modules-right": ["pulseaudio", "cpu", "backlight", "battery", "clock", "tray", "custom/lock", "custom/power"],
"modules-right": ["pulseaudio","custom/prayers", "network", "cpu", "memory", "clock", "tray", "custom/lock", "custom/power"],
"hyprland/workspaces": {
"disable-scroll": true,
"sort-by-name": true,
//"format": " {icon} ",
"format-icons": {
"default": ""
}
},
"tray": {
"icon-size": 10,
"spacing": 10
},
"network": {
"interface": "enp6s*",
"format": "{ifname}",
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{bandwidthUpBytes}  /{bandwidthDownBytes} ",
"format-disconnected": "", //An empty format will hide the module.
"tooltip-format": "{ifname} via {gwaddr} 󰊗",
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
"tooltip-format-ethernet": "{ifname} via {gwaddr} ",
"tooltip-format-disconnected": "Disconnected",
"max-length": 50
},
"cpu": {
"interval": 10,
"format": " {}%",
"max-length": 10
},
"memory": {
"interval": 30,
"format": "{used:0.1f}G/{total:0.1f}G "
},
"custom/music": {
"format": " {}",
"escape": true,
"interval": 5,
"tooltip": false,
"exec": "playerctl metadata --format='{{ title }}'",
"on-click": "playerctl play-pause",
"max-length": 50
},
"custom/prayers": {
"interval": 60,
"return-type": "json",
"exec": "$HOME/bin/prayer-times waybar",
"on-click": "$HOME/bin/prayer-times yad",
"format": "󱠧 {}"
},
"clock": {
"timezone": "Asia/Riyadh",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": " {:%d/%m/%Y}",
"format": " {:%H:%M}"
},
"backlight": {
"device": "intel_backlight",
"format": "{icon}",
"format-icons": ["", "", "", "", "", "", "", "", ""]
},
"battery": {
"states": {
"warning": 30,
"critical": 15
},
"format": "{icon}",
"format-charging": "",
"format-plugged": "",
"format-alt": "{icon}",
"format-icons": ["", "", "", "", "", "", "", "", "", "", "", ""]
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{icon} {volume}%",
"format-muted": "",
"format-icons": {
"default": ["", "", " "]
},
"on-click": "pavucontrol"
},
"custom/lock": {
"tooltip": false,
"on-click": "sh -c '(sleep 0.5s; hyprlock)' & disown",
"format": ""
},
"custom/power": {
"tooltip": false,
"on-click": "wlogout &",
"format": "襤"
}
}

View File

@ -0,0 +1,26 @@
@define-color rosewater #f5e0dc;
@define-color flamingo #f2cdcd;
@define-color pink #f5c2e7;
@define-color mauve #cba6f7;
@define-color red #f38ba8;
@define-color maroon #eba0ac;
@define-color peach #fab387;
@define-color yellow #f9e2af;
@define-color green #a6e3a1;
@define-color teal #94e2d5;
@define-color sky #89dceb;
@define-color sapphire #74c7ec;
@define-color blue #89b4fa;
@define-color lavender #b4befe;
@define-color text #cdd6f4;
@define-color subtext1 #bac2de;
@define-color subtext0 #a6adc8;
@define-color overlay2 #9399b2;
@define-color overlay1 #7f849c;
@define-color overlay0 #6c7086;
@define-color surface2 #585b70;
@define-color surface1 #45475a;
@define-color surface0 #313244;
@define-color base #1e1e2e;
@define-color mantle #181825;
@define-color crust #11111b;

View File

@ -0,0 +1,119 @@
@import "mocha.css";
* {
font-family: FantasqueSansMono Nerd Font;
font-size: 10px;
min-height: 0;
}
#waybar {
background: transparent;
color: @text;
margin: 5px 5px;
}
#workspaces {
border-radius: 1rem;
margin: 5px;
background-color: @surface0;
margin-left: 1rem;
}
#workspaces button {
color: @lavender;
border-radius: 1rem;
padding: 0.4rem;
}
#workspaces button.active {
color: @sky;
border-radius: 1rem;
}
#workspaces button:hover {
color: @sapphire;
border-radius: 1rem;
}
#custom-prayers,
#custom-music,
#cpu,
#memory,
#network,
#tray,
#backlight,
#clock,
#battery,
#pulseaudio,
#custom-lock,
#custom-power {
background-color: @surface0;
padding: 0.5rem 1rem;
margin: 5px 0;
}
#clock {
color: @blue;
border-radius: 0px 1rem 1rem 0px;
margin-right: 1rem;
}
#battery {
color: @green;
}
#battery.charging {
color: @green;
}
#battery.warning:not(.charging) {
color: @red;
}
#memory {
color: @yellow;
}
#backlight {
color: @yellow;
}
#backlight, #battery {
border-radius: 0;
}
#network {
color: @lavender;
border-radius: 0rem 0px 0px 0rem;
}
#pulseaudio {
color: @maroon;
border-radius: 1rem 0px 0px 1rem;
margin-left: 1rem;
}
#custom-prayers {
color: @teal;
border-radius: 0rem 0px 0px 0rem;
}
#custom-music {
color: @mauve;
border-radius: 1rem;
}
#custom-lock {
border-radius: 1rem 0px 0px 1rem;
color: @lavender;
}
#custom-power {
margin-right: 1rem;
border-radius: 0px 1rem 1rem 0px;
color: @red;
}
#tray {
margin-right: 1rem;
border-radius: 1rem;
}