added hyprland

This commit is contained in:
Sohrab Behdani 2024-05-01 10:13:28 +03:30
parent a65ed2a768
commit 1da277eb00
19 changed files with 4071 additions and 0 deletions

View file

@ -0,0 +1,465 @@
# See dunst(5) for all configuration options
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
### Geometry ###
# dynamic width from 0 to 300
# width = (0, 300)
# constant width of 300
width = 300
# The maximum height of a single notification, excluding the frame.
height = 300
# Position the notification in the top right corner
# origin = top-right
origin = bottom-right
# Offset from the origin
offset = 10x50
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 0
### Progress bar ###
# Turn on the progess bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 10
# Set the frame width of the progress bar
progress_bar_frame_width = 1
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 300
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
transparency = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 10
# Padding between text and icon.
text_icon_padding = 0
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 2
# Defines color of the frame around the notification window.
# frame_color = "#282a36"
# foreground = "#F8F8F2"
# background = "#040612"
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = frame
# Sort messages by urgency.
sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
# idle_threshold = 120
### Text ###
font = Noto Sans 10
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed
format = "<b>%s</b>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Recursive icon lookup. You can set a single theme, instead of having to
# define all lookup paths.
enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup)
#icon_theme = Adwaita
#icon_theme = Dracula
# You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze"
# Align icons left/right/top/off
icon_position = right
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128
# Paths to default icons (only neccesary when not using recursive icon lookup)
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
#icon_path = /use/share/icons/Papirus-Dark/
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/xdg-open
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
# Define the title of the windows spawned by dunst
title = Dunst
# Define the class of the windows spawned by dunst
class = Dunst
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 15
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
mouse_middle_click = do_action, close_current
mouse_right_click = close_all
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
#background = "#000000"
#foreground = "#F8F8F2"
background = "#282a36"
foreground = "#6272a4"
frame_color = "#6272a4"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_normal]
background = "#282a36"
foreground = "#bd93f9"
frame_color = "#bd93f9"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_critical]
# background = "#6F1515"
background = "#ff5555"
foreground = "#f8f8f2"
frame_color = "#f8f8f2"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg

View file

@ -0,0 +1,5 @@
if status is-interactive
# Commands to run in interactive sessions can go here
set -g fish_greeting
starship init fish | source
end

View file

@ -0,0 +1,31 @@
# This file contains fish universal variable definitions.
# VERSION: 3.0
SETUVAR __fish_initialized:3400
SETUVAR fish_color_autosuggestion:555\x1ebrblack
SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:blue
SETUVAR fish_color_comment:red
SETUVAR fish_color_cwd:green
SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:green
SETUVAR fish_color_error:brred
SETUVAR fish_color_escape:brcyan
SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_normal:normal
SETUVAR fish_color_operator:brcyan
SETUVAR fish_color_param:cyan
SETUVAR fish_color_quote:yellow
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_default_key_bindings
SETUVAR fish_pager_color_completion:normal
SETUVAR fish_pager_color_description:B3A06D\x1eyellow\x1e\x2di
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
SETUVAR fish_pager_color_selected_background:\x2dr

View file

@ -0,0 +1,55 @@
# Dracula Color Palette
#
# Foreground: f8f8f2
# Selection: 44475a
# Comment: 6272a4
# Red: ff5555
# Orange: ffb86c
# Yellow: f1fa8c
# Green: 50fa7b
# Purple: bd93f9
# Cyan: 8be9fd
# Pink: ff79c6
# Syntax Highlighting Colors
fish_color_normal f8f8f2
fish_color_command 8be9fd
fish_color_keyword ff79c6
fish_color_quote f1fa8c
fish_color_redirection f8f8f2
fish_color_end ffb86c
fish_color_error ff5555
fish_color_param bd93f9
fish_color_comment 6272a4
fish_color_selection --background=44475a
fish_color_search_match --background=44475a
fish_color_operator 50fa7b
fish_color_escape ff79c6
fish_color_autosuggestion 6272a4
fish_color_cancel ff5555 --reverse
fish_color_option ffb86c
fish_color_history_current --bold
fish_color_status ff5555
fish_color_valid_path --underline
# Default Prompt Colors
fish_color_cwd 50fa7b
fish_color_cwd_root red
fish_color_host bd93f9
fish_color_host_remote bd93f9
fish_color_user 8be9fd
# Completion Pager Colors
fish_pager_color_progress 6272a4
fish_pager_color_background
fish_pager_color_prefix 8be9fd
fish_pager_color_completion f8f8f2
fish_pager_color_description 6272a4
fish_pager_color_selected_background --background=44475a
fish_pager_color_selected_prefix 8be9fd
fish_pager_color_selected_completion f8f8f2
fish_pager_color_selected_description 6272a4
fish_pager_color_secondary_background
fish_pager_color_secondary_prefix 8be9fd
fish_pager_color_secondary_completion f8f8f2
fish_pager_color_secondary_description 6272a4

View file

@ -0,0 +1,256 @@
########################################################################################
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.
########################################################################################
#
# Please note not all available settings / options are set here.
# For a full list, see the wiki
#
autogenerated = 0 # remove this line to remove the warning
# See https://wiki.hyprland.org/Configuring/Monitors/
#monitor=eDP-1,1920x1080@60,0x0,1
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
# Execute your favorite apps at launch
# exec-once = waybar & hyprpaper & firefox
exec-once = waybar
exec-once = dunst
exec-once = /usr/lib/polkit-kde-authentication-agent-1
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
#exec-once = mpvpaper -o "no-audio --loop-playlist" eDP-1 ~/.wallpapers/video/
exec-once = swaybg -i /usr/share/wallpapers/parch-wallpapers/W4.png -m fill
exec-once = gsettings set org.gnome.desktop.wm.preferences theme "Dracula"
exec-once = gsettings set org.gnome.desktop.interface gtk-theme "Dracula"
exec-once = gsettings set org.gnome.desktop.interface icon-theme "Papirus-Dark"
# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf
# Some default env vars.
env = XCURSOR_SIZE,16
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us,ir
kb_variant =
kb_model =
kb_options = grp:win_space_toggle
kb_rules =
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 10
border_size = 3
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
# col.inactive_border = rgba(595959aa)
layout = master
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 10
active_opacity = 1.0
inactive_opacity = 1.0
blur {
enabled = false
size = 3
passes = 1
}
# drop_shadow = yes
# shadow_range = 4
# shadow_render_power = 3
# col.shadow = rgba(1a1a1aee)
}
misc {
disable_hyprland_logo = true
# disable_splash_rendering = true
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
master {
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
new_is_master = false
}
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = on
workspace_swipe_fingers = 3
workspace_swipe_invert = true
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic-mouse-v1 {
sensitivity = -0.5
}
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
windowrulev2 = float,class:org.kde.polkit-kde-authentication-agent-1
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, kitty
bind = $mainMod, C, killactive,
bind = $mainMod SHIFT, ESCAPE, exit,
bind = $mainMod, E, exec, thunar
bind = $mainMod, V, togglefloating,
bind = $mainMod, R, exec, wofi
# bind = $mainMod, G, pseudo, # dwindle
# bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, F, fullscreen,
bind = $mainMod SHIFT, T, layoutmsg, orientationtop # master
bind = $mainMod SHIFT, L, layoutmsg, orientationleft # master
bind = $mainMod SHIFT, M, layoutmsg, swapwithmaster master # master
# Screenshot
bind = , Print, exec, grim -c - | convert - -shave 1x1 - | wl-copy && dunstify "screenshot was taken."
bind = SHIFT, Print, exec, grim -g "$(slurp)" - | convert - -shave 1x1 - | swappy -f -
# Screencast
bind = $mainMod, Print, exec, dunstify "recording..." && mkdir -p ~/Video/Screencast/ && wf-recorder -f ~/Video/Screencast/wf-recorder_$(date +"%Y-%m-%d_%H:%M:%S.mp4") --audio="merge-io.monitor" -c h264_vaapi -C aac -d /dev/dri/renderD128
bind = $mainMod SHIFT, Print, exec, mkdir -p ~/Video/Screencast/ && wf-recorder -f ~/Video/Screencast/wf-recorder_$(date +"%Y-%m-%d_%H:%M:%S.mp4") --audio="merge-io.monitor" -c h264_vaapi -C aac -d /dev/dri/renderD128 -g "$(slurp)"
bind = $mainMod SHIFT, BackSpace, exec,killall -s SIGINT wf-recorder && dunstify "wf-recorder paused."
# Screen brightness
bind = , XF86MonBrightnessUp, exec, brightnessctl s +10%
bind = , XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Volume
bind = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bind = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bind = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bind = , XF86AudioPlay, exec, playerctl play-pause
bind = , XF86AudioPause, exec, playerctl play-pause
bind = , XF86AudioNext, exec, playerctl next
bind = , XF86AudioPrev, exec, playerctl previous
# Clipboard
bind = SUPER, P, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
# Idle
bind = SUPER, L, exec, swaylock
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, 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, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
# 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
# dracula/hyprland
general {
# col.active_border = rgb(44475a) rgb(bd93f9) 90deg
# col.inactive_border = rgba(44475aaa)
col.active_border = rgb(f1fa8c)
col.inactive_border = rgb(282a36)
# col.inactive_border = rgba(1e1f29eb)
#col.group_border = rgba(282a36dd)
#col.group_border_active = rgb(bd93f9) rgb(44475a) 90deg
# non-gradient alternative
#col.active_border = rgb(bd93f9)
#col.inactive_border = rgba(44475aaa)
#col.group_border = rgba(282a36dd)
#col.group_border_active = rgb(bd93f9)
# darker alternative
#col.active_border = rgb(44475a) # or rgb(6272a4)
#col.inactive_border = rgb(282a36)
#col.group_border = rgb(282a36)
#col.group_border_active = rgb(44475a) # or rgb(6272a4)
}
decoration {
# col.shadow = rgba(1E202966)
col.shadow = rgb(1e1f29)
# suggested shadow setting
drop_shadow = yes
shadow_range = 30
shadow_offset = 1 1
shadow_render_power = 3
shadow_scale = 0.97
}
windowrulev2 = bordercolor rgb(ff5555),xwayland:1 # check if window is xwayland

View file

@ -0,0 +1,19 @@
foreground #f8f8f2
background #282a36
title_fg #f8f8f2
title_bg #282a36
margin_bg #6272a4
margin_fg #44475a
removed_bg #ff5555
highlight_removed_bg #ff5555
removed_margin_bg #ff5555
added_bg #50fa7b
highlight_added_bg #50fa7b
added_margin_bg #50fa7b
filler_bg #44475a
hunk_margin_bg #44475a
hunk_bg #bd93f9
search_bg #8be9fd
search_fg #282a36
select_bg #f1fa8c
select_fg #282a36

View file

@ -0,0 +1,66 @@
# https://draculatheme.com/kitty
#
# Installation instructions:
#
# cp dracula.conf ~/.config/kitty/
# echo "include dracula.conf" >> ~/.config/kitty/kitty.conf
#
# Then reload kitty for the config to take affect.
# Alternatively copy paste below directly into kitty.conf
foreground #f8f8f2
background #282a36
selection_foreground #ffffff
selection_background #44475a
url_color #8be9fd
# black
color0 #21222c
color8 #6272a4
# red
color1 #ff5555
color9 #ff6e6e
# green
color2 #50fa7b
color10 #69ff94
# yellow
color3 #f1fa8c
color11 #ffffa5
# blue
color4 #bd93f9
color12 #d6acff
# magenta
color5 #ff79c6
color13 #ff92df
# cyan
color6 #8be9fd
color14 #a4ffff
# white
color7 #f8f8f2
color15 #ffffff
# Cursor colors
cursor #f8f8f2
cursor_text_color background
# Tab bar colors
active_tab_foreground #282a36
active_tab_background #f8f8f2
inactive_tab_foreground #282a36
inactive_tab_background #6272a4
# Marks
mark1_foreground #282a36
mark1_background #ff5555
# Splits/Windows
active_border_color #f8f8f2
inactive_border_color #6272a4

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,126 @@
# Source: https://github.com/Chick2D/neofetch-themes/
# Made by https://github.com/tralph3
# Customization Wiki https://github.com/dylanaraps/neofetch/wiki/Customizing-Info
# Colour config is here and in .zshrc
print_info() {
info title
info underline
prin "$(color 12)╭──────────── $(color 10)Software$(color 12) ────────────"
info "$(color 12)│ $(color 14)OS" distro
info "$(color 12)│ $(color 14)Kernel" kernel
info "$(color 12)│ $(color 14)Packages" packages
info "$(color 12)│ $(color 14)Shell" shell
info "$(color 12)│ $(color 14)DE" de
info "$(color 12)│ $(color 14)Terminal" term
# info "$(color 12)│ $(color 14)Local IP" local_ip
prin "$(color 12)├──────────── $(color 10)Hardware$(color 12) ────────────"
info "$(color 12)│ $(color 14)Host" model
info "$(color 12)│ $(color 14)CPU" cpu
info "$(color 12)│ $(color 14)GPU" gpu
info "$(color 12)│ $(color 14)Memory" memory
info "$(color 12)│ $(color 14)Disk" disk
prin "$(color 12)├───────────── $(color 10)Uptime$(color 12) ─────────────"
info "$(color 12)│" uptime
prin "$(color 12)╰──────────────────────────────────"
# info cols
# Defaults
# info "OS" distro
# info "Host" model
# info "Kernel" kernel
# info "Uptime" uptime
# info "Packages" packages
# info "Shell" shell
# info "Resolution" resolution
# info "DE" de
# info "WM" wm
# info "WM Theme" wm_theme
# info "Theme" theme
# info "Icons" icons
# info "Terminal" term
# info "Terminal Font" term_font
# info "CPU" cpu
# info "GPU" gpu
# info "Memory" memory
# info "GPU Driver" gpu_driver # Linux/macOS only
# info "CPU Usage" cpu_usage
# info "Disk" disk
# info "Battery" battery
# info "Font" font
# info "Song" song
# [[ "$player" ]] && prin "Music Player" "$player"
# info "Local IP" local_ip
# info "Public IP" public_ip
# info "Users" users
# info "Locale" locale # This only works on glibc systems.
# info cols
}
# To know what these functions mean, go to the Customization Wiki on top
title_fqdn="off"
kernel_shorthand="on"
distro_shorthand="on"
os_arch="off"
uptime_shorthand="off"
memory_percent="off"
memory_unit="mib"
package_managers="on"
shell_path="off"
shell_version="on"
cpu_brand="on"
cpu_speed="on"
cpu_cores="logical"
cpu_temp="off"
gpu_type="all"
refresh_rate="on"
gtk_shorthand="on"
gtk2="on"
gtk3="on"
public_ip_host="http://ident.me"
public_ip_timeout=2
de_version="on"
disk_subtitle="dir"
disk_percent="on"
music_player="auto"
song_format="%artist% - %title%"
mpc_args=()
colors=(distro)
underline_enabled="on"
underline_char="¨"
separator=""
color_blocks="on"
block_width=3
block_height=1
col_offset="auto"
bar_char_elapsed="-"
bar_char_total="="
bar_border="on"
bar_length=15
bar_color_elapsed="distro"
bar_color_total="distro"
cpu_display="off"
memory_display="off"
battery_display="off"
disk_display="off"
image_source="auto"
ascii_distro="auto"
ascii_bold="on"
image_loop="off"
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
crop_mode="normal"
crop_offset="center"
image_size="auto"
gap=3
yoffset=0
xoffset=0
background_color=
stdout="off"

View file

@ -0,0 +1,171 @@
# PulseAudio config file for PipeWire version "0.3.84" #
#
# Copy and edit this file in /etc/pipewire for system-wide changes
# or in ~/.config/pipewire for local changes.
#
# It is also possible to place a file with an updated section in
# /etc/pipewire/pipewire-pulse.conf.d/ for system-wide changes or in
# ~/.config/pipewire/pipewire-pulse.conf.d/ for local changes.
#
context.properties = {
## Configure properties in the system.
#mem.warn-mlock = false
#mem.allow-mlock = true
#mem.mlock-all = false
#log.level = 2
#default.clock.quantum-limit = 8192
}
context.spa-libs = {
audio.convert.* = audioconvert/libspa-audioconvert
support.* = support/libspa-support
}
context.modules = [
{ name = libpipewire-module-rt
args = {
nice.level = -11
#rt.prio = 88
rt.prio = 65
#rt.time.soft = -1
#rt.time.hard = -1
}
flags = [ ifexists nofail ]
}
{ name = libpipewire-module-protocol-native }
{ name = libpipewire-module-client-node }
{ name = libpipewire-module-adapter }
{ name = libpipewire-module-metadata }
{ name = libpipewire-module-protocol-pulse
args = {
# contents of pulse.properties can also be placed here
# to have config per server.
}
}
]
# Extra scripts can be started here. Setup in default.pa can be moved in
# a script or in pulse.cmd below
context.exec = [
{ path = "pactl" args = "load-module module-null-sink sink_name=merge-io" }
{ path = "pactl" args = "load-module module-loopback sink=merge-io source=@DEFAULT_AUDIO_SOURCE@" }
{ path = "pactl" args = "load-module module-loopback sink=merge-io source=@DEFAULT_AUDIO_SINK@" }
#{ path = "pactl" args = "load-module module-always-sink" }
#{ path = "pactl" args = "upload-sample my-sample.wav my-sample" }
#{ path = "/usr/bin/sh" args = "~/.config/pipewire/default.pw" }
]
# Extra commands can be executed here.
# load-module : loads a module with args and flags
# args = "<module-name> <module-args>"
# ( flags = [ nofail ] )
pulse.cmd = [
{ cmd = "load-module" args = "module-always-sink" flags = [ ] }
#{ cmd = "load-module" args = "module-switch-on-connect" }
#{ cmd = "load-module" args = "module-gsettings" flags = [ nofail ] }
]
stream.properties = {
#node.latency = 1024/48000
#node.autoconnect = true
#resample.quality = 4
#channelmix.normalize = false
#channelmix.mix-lfe = true
#channelmix.upmix = true
#channelmix.upmix-method = psd # none, simple
#channelmix.lfe-cutoff = 150
#channelmix.fc-cutoff = 12000
#channelmix.rear-delay = 12.0
#channelmix.stereo-widen = 0.0
#channelmix.hilbert-taps = 0
#dither.noise = 0
}
pulse.properties = {
# the addresses this server listens on
server.address = [
"unix:native"
#"unix:/tmp/something" # absolute paths may be used
#"tcp:4713" # IPv4 and IPv6 on all addresses
#"tcp:[::]:9999" # IPv6 on all addresses
#"tcp:127.0.0.1:8888" # IPv4 on a single address
#
#{ address = "tcp:4713" # address
# max-clients = 64 # maximum number of clients
# listen-backlog = 32 # backlog in the server listen queue
# client.access = "restricted" # permissions for clients
#}
]
#server.dbus-name = "org.pulseaudio.Server"
#pulse.min.req = 128/48000 # 2.7ms
#pulse.default.req = 960/48000 # 20 milliseconds
#pulse.min.frag = 128/48000 # 2.7ms
#pulse.default.frag = 96000/48000 # 2 seconds
#pulse.default.tlength = 96000/48000 # 2 seconds
#pulse.min.quantum = 128/48000 # 2.7ms
#pulse.idle.timeout = 0 # don't pause after underruns
#pulse.default.format = F32
#pulse.default.position = [ FL FR ]
# These overrides are only applied when running in a vm.
vm.overrides = {
pulse.min.quantum = 1024/48000 # 22ms
}
}
# client/stream specific properties
pulse.rules = [
{
matches = [
{
# all keys must match the value. ! negates. ~ starts regex.
#client.name = "Firefox"
#application.process.binary = "teams"
#application.name = "~speech-dispatcher.*"
}
]
actions = {
update-props = {
#node.latency = 512/48000
}
# Possible quirks:"
# force-s16-info forces sink and source info as S16 format
# remove-capture-dont-move removes the capture DONT_MOVE flag
# block-source-volume blocks updates to source volume
# block-sink-volume blocks updates to sink volume
#quirks = [ ]
}
}
{
# skype does not want to use devices that don't have an S16 sample format.
matches = [
{ application.process.binary = "teams" }
{ application.process.binary = "teams-insiders" }
{ application.process.binary = "skypeforlinux" }
]
actions = { quirks = [ force-s16-info ] }
}
{
# firefox marks the capture streams as don't move and then they
# can't be moved with pavucontrol or other tools.
matches = [ { application.process.binary = "firefox" } ]
actions = { quirks = [ remove-capture-dont-move ] }
}
{
# speech dispatcher asks for too small latency and then underruns.
matches = [ { application.name = "~speech-dispatcher.*" } ]
actions = {
update-props = {
pulse.min.req = 512/48000 # 10.6ms
pulse.min.quantum = 512/48000 # 10.6ms
pulse.idle.timeout = 5 # pause after 5 seconds of underrun
}
}
}
#{
# matches = [ { application.process.binary = "Discord" } ]
# actions = { quirks = [ block-source-volume ] }
#}
]

View file

@ -0,0 +1,25 @@
[aws]
style = "#ffb86c"
[character]
success_symbol = "[➜](#50fa7b) "
error_symbol = "[➜](#ff5555) "
[cmd_duration]
style = "bold #f1fa8c"
[directory]
style = "bold #50fa7b"
[git_branch]
style = "bold #ff79c6"
[git_status]
style = "bold #ff5555"
[hostname]
style = "bold #bd93f9"
[username]
format = "[$user]($style) on "
style_user = "bold #8be9fd"

View file

@ -0,0 +1,10 @@
[Default]
save_dir=$HOME/Picture/Screenshot/
save_filename_format=swappy-%Y%m%d-%H%M%S.png
show_panel=true
line_size=5
text_size=20
text_font=FiraCode
paint_mode=arrow
early_exit=true
fill_shape=false

View file

@ -0,0 +1,29 @@
image=~/.config/swaylock/dracula-wallpaper.svg
color=282a36
inside-color=1F202A
line-color=1F202A
ring-color=bd93f9
text-color=f8f8f2
layout-bg-color=1F202A
layout-text-color=f8f8f2
inside-clear-color=6272a4
line-clear-color=1F202A
ring-clear-color=6272a4
text-clear-color=1F202A
inside-ver-color=bd93f9
line-ver-color=1F202A
ring-ver-color=bd93f9
text-ver-color=1F202A
inside-wrong-color=ff5555
line-wrong-color=1F202A
ring-wrong-color=ff5555
text-wrong-color=1F202A
bs-hl-color=ff5555
key-hl-color=50fa7b
text-caps-lock-color=f8f8f2

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.1 KiB

View file

@ -0,0 +1,12 @@
@define-color background-darker #1e1f29;
@define-color background #282a36;
@define-color selection #44475a;
@define-color foreground #f8f8f2;
@define-color comment #6272a4;
@define-color cyan #8be9fd;
@define-color green #50fa7b;
@define-color orange #ffb86c;
@define-color pink #ff79c6;
@define-color purple #bd93f9;
@define-color red #ff5555;
@define-color yellow #f1fa8c;

View file

@ -0,0 +1,107 @@
{
"layer": "top",
"position": "top",
"height": 30,
"modules-left": ["tray", "cpu", "temperature","memory", "clock"],
"modules-center": ["hyprland/workspaces"],
"modules-right": ["hyprland/language", "wireplumber", "pulseaudio#mic", "battery", "network", "backlight"],
"tray": {
"icon-size": 20,
"spacing": 10
},
"cpu": {
"format": "{usage}% ",
"tooltip": false,
"interval": 3
},
"temperature": {
"critical-threshold": 80,
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", ""],
"tooltip": false,
"interval": 3
},
"memory": {
"format": "{}% ",
"interval": 3
},
"clock": {
"format": "{:%H:%M} ",
"tooltip-format": "<tt><big>{calendar}</big></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"hyprland/workspaces": {
"format": "{icon}",
"format-icons": {
"urgent": "",
"active": "",
"default": ""
},
"on-click": "activate",
"sort-by-number": true,
"persistent-workspaces": {
"*": 10
}
},
"hyprland/language": {
"format-en": "En",
"format-fa": "Fa"
},
"wireplumber": {
"format": "{volume}% {icon}",
"format-muted": "",
"format-icons": ["", "", ""],
"tooltip": false
},
// "pulseaudio#device": {
// "format": "{icon}",
// "format-bluetooth": "{icon}",
// "format-icons": {
// "headphone": "",
// "hands-free": "",
// "headset": "",
// "phone": "",
// "portable": "",
// "car": ""
// },
// "tooltip": false
// },
"pulseaudio#mic": {
"format": "{format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle",
"tooltip": false
},
"battery": {
"states": {
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", ""],
"interval": 3
},
"network": {
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}",
"interval": 3
},
"backlight": {
"format": "{percent}% {icon}",
"format-icons": ["", "", "", "", "", "", "", "", ""],
"tooltip": false
}
}

View file

@ -0,0 +1,182 @@
@import url("colors.css");
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, FiraCode;
font-size: 13px;
}
window#waybar {
background-color: rgba(0, 0, 0, 0);
}
#tray,
#cpu,
#temperature,
#memory,
#clock {
margin: 0 10px;
background-color: transparent;
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
}
#cpu {
color: @comment;
}
#temperature {
color: @comment;
}
#temperature.critical {
color: @red;
}
#memory {
color: @comment;
}
#clock {
color: @yellow;
}
.modules-left {
margin: 4px 4px 4px 10px;
padding: 0 5px;
border-radius: 15px;
border: 0.5px solid @background-darker;
background-color: @background;
box-shadow: 0.5px 0.5px 3px @background-darker;
}
#workspaces button {
color: @green;
background-color: transparent;
border-radius: 50%;
}
#workspaces button:hover {
box-shadow: 0.15em 0.15em 0.5em rgba(255, 85, 85, 0.6);
}
/* #workspaces button.active {
color: @green;
} */
#workspaces button.empty {
color: @selection;
}
#workspaces button.urgent {
color: @red;
}
#workspaces {
padding: 4px;
background-color: transparent;
}
.modules-center {
margin: 4px;
border-radius: 15px;
border: 0.5px solid @background-darker;
background-color: @background;
box-shadow: 0.5px 0.5px 3px @background-darker;
}
#language,
#wireplumber,
#pulseaudio,
#battery,
#network,
#backlight {
margin: 0 10px;
background-color: transparent;
}
#language {
color: @yellow;
}
#wireplumber {
color: @orange;
}
#wireplumber.muted {
color: @comment;
}
/* #pulseaudio.device {
color: @purple;
} */
#pulseaudio.mic {
color: @red;
}
#pulseaudio.mic.source-muted {
color: @comment;
}
#battery {
color: @foreground;
}
#battery.charging, #battery.plugged {
color: @green;
}
@keyframes blink {
to {
color: @foreground;
}
}
#battery.critical:not(.charging) {
color: @red;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#network {
color: @cyan;
}
#network.disconnected {
color: @red;
}
#backlight {
color: @comment;
}
.modules-right {
margin: 4px 10px 4px 4px;
padding: 0 5px;
border-radius: 15px;
border: 0.5px solid @background-darker;
background-color: @background;
box-shadow: 0.5px 0.5px 3px @background-darker;
}
tooltip {
border-radius: 15px;
border: 0.5px solid rgba(30, 31, 41, 0.75);
background-color: rgba(40, 42, 54, 0.75);
box-shadow: 0.5px 0.5px 3px @background-darker;
}
tooltip label {
color: @foreground;
}

View file

@ -0,0 +1,4 @@
mode=drun
width=25%
insensitive=true
no_actions=true

View file

@ -0,0 +1,52 @@
window {
margin: 0px;
border: 1px solid #bd93f9;
background-color: #282a36;
}
#input {
margin: 5px;
border: none;
color: #f8f8f2;
background-color: #44475a;
}
#inner-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#outer-box {
margin: 5px;
border: none;
background-color: #282a36;
}
#scroll {
margin: 0px;
border: none;
}
#text {
margin: 5px;
border: none;
color: #f8f8f2;
}
#entry.activatable #text {
color: #282a36;
}
#entry > * {
color: #f8f8f2;
}
#entry:selected {
background-color: #44475a;
}
#entry:selected #text {
font-weight: bold;
background-color: #44475a;
}