added files
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,5 +1,5 @@
|
|||||||
# Ignore everything
|
# Ignore everything
|
||||||
*
|
/*
|
||||||
!.gitignore
|
!.gitignore
|
||||||
|
|
||||||
# Configurations
|
# Configurations
|
||||||
|
106
alacritty/alacritty.toml
Normal file
106
alacritty/alacritty.toml
Normal file
@@ -0,0 +1,106 @@
|
|||||||
|
|
||||||
|
## ENVIRONMENT ----------------------------------------------------
|
||||||
|
|
||||||
|
## All key-value pairs in the [env] section will be added as environment variables for any process spawned
|
||||||
|
## by Alacritty, including its shell. Some entries may override variables set by alacritty itself.
|
||||||
|
[env]
|
||||||
|
TERM = "xterm-256color"
|
||||||
|
WINIT_X11_SCALE_FACTOR = "1.0"
|
||||||
|
|
||||||
|
## WINDOW ---------------------------------------------------------
|
||||||
|
[window]
|
||||||
|
position = "None"
|
||||||
|
dynamic_padding = true
|
||||||
|
decorations = "None"
|
||||||
|
opacity = 0.9
|
||||||
|
blur = false
|
||||||
|
startup_mode = "Windowed"
|
||||||
|
dynamic_title = true
|
||||||
|
class = { instance = "Alacritty", general = "Alacritty" }
|
||||||
|
decorations_theme_variant = "None"
|
||||||
|
|
||||||
|
## Number of lines/columns (not pixels) in the terminal.
|
||||||
|
[window.dimensions]
|
||||||
|
columns = 82
|
||||||
|
lines = 24
|
||||||
|
|
||||||
|
## Blank space added around the window in pixels.
|
||||||
|
[window.padding]
|
||||||
|
x = 30
|
||||||
|
y = 30
|
||||||
|
|
||||||
|
## SCROLLING ------------------------------------------------------
|
||||||
|
[scrolling]
|
||||||
|
history = 10000
|
||||||
|
multiplier = 3
|
||||||
|
|
||||||
|
## BELL -----------------------------------------------------------
|
||||||
|
[bell]
|
||||||
|
animation = "Linear"
|
||||||
|
duration = 20
|
||||||
|
command = { program = "paplay", args = ["/usr/share/sounds/freedesktop/stereo/dialog-error.oga"] }
|
||||||
|
|
||||||
|
## SELECTION ------------------------------------------------------
|
||||||
|
[selection]
|
||||||
|
save_to_clipboard = true
|
||||||
|
|
||||||
|
## CURSOR ---------------------------------------------------------
|
||||||
|
[cursor]
|
||||||
|
vi_mode_style = "None"
|
||||||
|
blink_interval = 750
|
||||||
|
blink_timeout = 5
|
||||||
|
unfocused_hollow = false
|
||||||
|
thickness = 0.15
|
||||||
|
|
||||||
|
[cursor.style]
|
||||||
|
shape = "Block"
|
||||||
|
blinking = "On"
|
||||||
|
|
||||||
|
## MOUSE ----------------------------------------------------------
|
||||||
|
[mouse]
|
||||||
|
hide_when_typing = false
|
||||||
|
|
||||||
|
## HINTS ----------------------------------------------------------
|
||||||
|
[[hints.enabled]]
|
||||||
|
command = "xdg-open"
|
||||||
|
hyperlinks = true
|
||||||
|
post_processing = true
|
||||||
|
persist = false
|
||||||
|
mouse.enabled = true
|
||||||
|
binding = { key = "U", mods = "Control|Shift" }
|
||||||
|
regex = "(ipfs:|ipns:|magnet:|mailto:|gemini://|gopher://|https://|http://|news:|file:|git://|ssh:|ftp://)[^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩‘]+"
|
||||||
|
|
||||||
|
## DEBUG ----------------------------------------------------------
|
||||||
|
[debug]
|
||||||
|
render_timer = false
|
||||||
|
persistent_logging = false
|
||||||
|
log_level = "Warn"
|
||||||
|
renderer = "None"
|
||||||
|
print_events = false
|
||||||
|
highlight_damage = false
|
||||||
|
prefer_egl = false
|
||||||
|
|
||||||
|
[general]
|
||||||
|
|
||||||
|
## You can set shell.program to the path of your favorite shell, e.g. /bin/zsh.
|
||||||
|
## Entries in shell.args are passed as arguments to the shell.
|
||||||
|
#shell = { program = "/bin/zsh", args = ["--login"] }
|
||||||
|
|
||||||
|
## Directory the shell is started in. When this is unset, or "None",
|
||||||
|
## the working directory of the parent process will be used.
|
||||||
|
#working_directory = "None"
|
||||||
|
|
||||||
|
## Live config reload
|
||||||
|
live_config_reload = true
|
||||||
|
|
||||||
|
## Offer IPC using alacritty msg
|
||||||
|
ipc_socket = true
|
||||||
|
## Copyright (C) 2020-2024 Aditya Shakya <adi1090x@gmail.com>
|
||||||
|
##
|
||||||
|
## Configuration for Alacritty, the GPU enhanced terminal emulator.
|
||||||
|
## It's a very basic and simple config file, for full configuration, Run `man 5 alacritty`
|
||||||
|
|
||||||
|
## GENERAL --------------------------------------------------------
|
||||||
|
|
||||||
|
## Import additional configuration files.
|
||||||
|
import = ["~/.config/alacritty/colors.toml", "~/.config/alacritty/fonts.toml"]
|
75
alacritty/catppuccin-frappe.toml
Normal file
75
alacritty/catppuccin-frappe.toml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = "#303446"
|
||||||
|
foreground = "#c6d0f5"
|
||||||
|
dim_foreground = "#838ba7"
|
||||||
|
bright_foreground = "#c6d0f5"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = "#303446"
|
||||||
|
cursor = "#f2d5cf"
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = "#303446"
|
||||||
|
cursor = "#babbf1"
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = "#303446"
|
||||||
|
background = "#a5adce"
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = "#303446"
|
||||||
|
background = "#a6d189"
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = "#303446"
|
||||||
|
background = "#a5adce"
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = "#303446"
|
||||||
|
background = "#e5c890"
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = "#303446"
|
||||||
|
background = "#a5adce"
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = "#303446"
|
||||||
|
background = "#f2d5cf"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "#51576d"
|
||||||
|
red = "#e78284"
|
||||||
|
green = "#a6d189"
|
||||||
|
yellow = "#e5c890"
|
||||||
|
blue = "#8caaee"
|
||||||
|
magenta = "#f4b8e4"
|
||||||
|
cyan = "#81c8be"
|
||||||
|
white = "#b5bfe2"
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "#626880"
|
||||||
|
red = "#e78284"
|
||||||
|
green = "#a6d189"
|
||||||
|
yellow = "#e5c890"
|
||||||
|
blue = "#8caaee"
|
||||||
|
magenta = "#f4b8e4"
|
||||||
|
cyan = "#81c8be"
|
||||||
|
white = "#a5adce"
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = "#51576d"
|
||||||
|
red = "#e78284"
|
||||||
|
green = "#a6d189"
|
||||||
|
yellow = "#e5c890"
|
||||||
|
blue = "#8caaee"
|
||||||
|
magenta = "#f4b8e4"
|
||||||
|
cyan = "#81c8be"
|
||||||
|
white = "#b5bfe2"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 16
|
||||||
|
color = "#ef9f76"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 17
|
||||||
|
color = "#f2d5cf"
|
75
alacritty/catppuccin-latte.toml
Normal file
75
alacritty/catppuccin-latte.toml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = "#eff1f5"
|
||||||
|
foreground = "#4c4f69"
|
||||||
|
dim_foreground = "#8c8fa1"
|
||||||
|
bright_foreground = "#4c4f69"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = "#eff1f5"
|
||||||
|
cursor = "#dc8a78"
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = "#eff1f5"
|
||||||
|
cursor = "#7287fd"
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = "#eff1f5"
|
||||||
|
background = "#6c6f85"
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = "#eff1f5"
|
||||||
|
background = "#40a02b"
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = "#eff1f5"
|
||||||
|
background = "#6c6f85"
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = "#eff1f5"
|
||||||
|
background = "#df8e1d"
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = "#eff1f5"
|
||||||
|
background = "#6c6f85"
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = "#eff1f5"
|
||||||
|
background = "#dc8a78"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "#bcc0cc"
|
||||||
|
red = "#d20f39"
|
||||||
|
green = "#40a02b"
|
||||||
|
yellow = "#df8e1d"
|
||||||
|
blue = "#1e66f5"
|
||||||
|
magenta = "#ea76cb"
|
||||||
|
cyan = "#179299"
|
||||||
|
white = "#5c5f77"
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "#acb0be"
|
||||||
|
red = "#d20f39"
|
||||||
|
green = "#40a02b"
|
||||||
|
yellow = "#df8e1d"
|
||||||
|
blue = "#1e66f5"
|
||||||
|
magenta = "#ea76cb"
|
||||||
|
cyan = "#179299"
|
||||||
|
white = "#6c6f85"
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = "#bcc0cc"
|
||||||
|
red = "#d20f39"
|
||||||
|
green = "#40a02b"
|
||||||
|
yellow = "#df8e1d"
|
||||||
|
blue = "#1e66f5"
|
||||||
|
magenta = "#ea76cb"
|
||||||
|
cyan = "#179299"
|
||||||
|
white = "#5c5f77"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 16
|
||||||
|
color = "#fe640b"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 17
|
||||||
|
color = "#dc8a78"
|
75
alacritty/catppuccin-macchiato.toml
Normal file
75
alacritty/catppuccin-macchiato.toml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = "#24273a"
|
||||||
|
foreground = "#cad3f5"
|
||||||
|
dim_foreground = "#8087a2"
|
||||||
|
bright_foreground = "#cad3f5"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = "#24273a"
|
||||||
|
cursor = "#f4dbd6"
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = "#24273a"
|
||||||
|
cursor = "#b7bdf8"
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = "#24273a"
|
||||||
|
background = "#a5adcb"
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = "#24273a"
|
||||||
|
background = "#a6da95"
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = "#24273a"
|
||||||
|
background = "#a5adcb"
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = "#24273a"
|
||||||
|
background = "#eed49f"
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = "#24273a"
|
||||||
|
background = "#a5adcb"
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = "#24273a"
|
||||||
|
background = "#f4dbd6"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "#494d64"
|
||||||
|
red = "#ed8796"
|
||||||
|
green = "#a6da95"
|
||||||
|
yellow = "#eed49f"
|
||||||
|
blue = "#8aadf4"
|
||||||
|
magenta = "#f5bde6"
|
||||||
|
cyan = "#8bd5ca"
|
||||||
|
white = "#b8c0e0"
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "#5b6078"
|
||||||
|
red = "#ed8796"
|
||||||
|
green = "#a6da95"
|
||||||
|
yellow = "#eed49f"
|
||||||
|
blue = "#8aadf4"
|
||||||
|
magenta = "#f5bde6"
|
||||||
|
cyan = "#8bd5ca"
|
||||||
|
white = "#a5adcb"
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = "#494d64"
|
||||||
|
red = "#ed8796"
|
||||||
|
green = "#a6da95"
|
||||||
|
yellow = "#eed49f"
|
||||||
|
blue = "#8aadf4"
|
||||||
|
magenta = "#f5bde6"
|
||||||
|
cyan = "#8bd5ca"
|
||||||
|
white = "#b8c0e0"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 16
|
||||||
|
color = "#f5a97f"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 17
|
||||||
|
color = "#f4dbd6"
|
75
alacritty/catppuccin-mocha.toml
Normal file
75
alacritty/catppuccin-mocha.toml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = "#1e1e2e"
|
||||||
|
foreground = "#cdd6f4"
|
||||||
|
dim_foreground = "#7f849c"
|
||||||
|
bright_foreground = "#cdd6f4"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
cursor = "#f5e0dc"
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
cursor = "#b4befe"
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6e3a1"
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#f9e2af"
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
background = "#f5e0dc"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "#45475a"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#bac2de"
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "#585b70"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = "#45475a"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#bac2de"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 16
|
||||||
|
color = "#fab387"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 17
|
||||||
|
color = "#f5e0dc"
|
75
alacritty/colors.toml
Normal file
75
alacritty/colors.toml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
[colors.primary]
|
||||||
|
background = "#1e1e2e"
|
||||||
|
foreground = "#cdd6f4"
|
||||||
|
dim_foreground = "#7f849c"
|
||||||
|
bright_foreground = "#cdd6f4"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
cursor = "#f5e0dc"
|
||||||
|
|
||||||
|
[colors.vi_mode_cursor]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
cursor = "#b4befe"
|
||||||
|
|
||||||
|
[colors.search.matches]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.search.focused_match]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6e3a1"
|
||||||
|
|
||||||
|
[colors.footer_bar]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.hints.start]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#f9e2af"
|
||||||
|
|
||||||
|
[colors.hints.end]
|
||||||
|
foreground = "#1e1e2e"
|
||||||
|
background = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.selection]
|
||||||
|
text = "#1e1e2e"
|
||||||
|
background = "#f5e0dc"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "#45475a"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#bac2de"
|
||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "#585b70"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#a6adc8"
|
||||||
|
|
||||||
|
[colors.dim]
|
||||||
|
black = "#45475a"
|
||||||
|
red = "#f38ba8"
|
||||||
|
green = "#a6e3a1"
|
||||||
|
yellow = "#f9e2af"
|
||||||
|
blue = "#89b4fa"
|
||||||
|
magenta = "#f5c2e7"
|
||||||
|
cyan = "#94e2d5"
|
||||||
|
white = "#bac2de"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 16
|
||||||
|
color = "#fab387"
|
||||||
|
|
||||||
|
[[colors.indexed_colors]]
|
||||||
|
index = 17
|
||||||
|
color = "#f5e0dc"
|
38
alacritty/fonts.toml
Normal file
38
alacritty/fonts.toml
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
## Copyright (C) 2020-2024 Aditya Shakya <adi1090x@gmail.com>
|
||||||
|
##
|
||||||
|
## Font configuration ---------------------------------------
|
||||||
|
|
||||||
|
[font]
|
||||||
|
## Font size in points.
|
||||||
|
size = 14
|
||||||
|
|
||||||
|
## When true, Alacritty will use a custom built-in font for box drawing characters and powerline symbols.
|
||||||
|
builtin_box_drawing = true
|
||||||
|
|
||||||
|
## Normal font family.
|
||||||
|
[font.normal]
|
||||||
|
family = "0xProto Nerd Font Mono"
|
||||||
|
|
||||||
|
## If the family is not specified, it will fall back to the value specified for the normal font.
|
||||||
|
[font.bold]
|
||||||
|
family = "0xProto Nerd Font Mono"
|
||||||
|
|
||||||
|
## If the family is not specified, it will fall back to the value specified for the normal font.
|
||||||
|
[font.italic]
|
||||||
|
family = "0xProto Nerd Font Mono"
|
||||||
|
|
||||||
|
## If the family is not specified, it will fall back to the value specified for the normal font.
|
||||||
|
[font.bold_italic]
|
||||||
|
family = "0xProto Nerd Font Mono"
|
||||||
|
|
||||||
|
## Offset is the extra space around each character.
|
||||||
|
## 'y' can be thought of as modifying the line spacing, and 'x' as modifying the letter spacing.
|
||||||
|
[font.offset]
|
||||||
|
x = 0
|
||||||
|
y = 0
|
||||||
|
|
||||||
|
## Glyph offset determines the locations of the glyphs within their cells with the default being at the bottom.
|
||||||
|
## Increasing 'x' moves the glyph to the right, increasing 'y' moves the glyph upward.
|
||||||
|
[font.glyph_offset]
|
||||||
|
x = 0
|
||||||
|
y = 0
|
1
dunst/dunst-catppuccin
Submodule
1
dunst/dunst-catppuccin
Submodule
Submodule dunst/dunst-catppuccin added at 5955cf0213
1
dunst/dunstrc
Symbolic link
1
dunst/dunstrc
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
dunst-catppuccin/themes/mocha.conf
|
1
hypr/catppuccin-hyprland
Submodule
1
hypr/catppuccin-hyprland
Submodule
Submodule hypr/catppuccin-hyprland added at c388ac5556
1
hypr/catppuccin-hyprlock
Submodule
1
hypr/catppuccin-hyprlock
Submodule
Submodule hypr/catppuccin-hyprlock added at f650895064
14
hypr/gamemode.sh
Executable file
14
hypr/gamemode.sh
Executable file
@@ -0,0 +1,14 @@
|
|||||||
|
#!/usr/bin/env sh
|
||||||
|
HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
|
||||||
|
if [ "$HYPRGAMEMODE" = 1 ] ; then
|
||||||
|
hyprctl --batch "\
|
||||||
|
keyword animations:enabled 0;\
|
||||||
|
keyword decoration:shadow:enabled 0;\
|
||||||
|
keyword decoration:blur:enabled 0;\
|
||||||
|
keyword general:gaps_in 0;\
|
||||||
|
keyword general:gaps_out 0;\
|
||||||
|
keyword general:border_size 1;\
|
||||||
|
keyword decoration:rounding 0"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
hyprctl reload
|
332
hypr/hyprland.conf
Normal file
332
hypr/hyprland.conf
Normal file
@@ -0,0 +1,332 @@
|
|||||||
|
|
||||||
|
# #######################################################################################
|
||||||
|
# AUTOGENERATED HYPRLAND CONFIG.
|
||||||
|
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hyprland.conf AND EDIT IT,
|
||||||
|
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
|
||||||
|
# #######################################################################################
|
||||||
|
|
||||||
|
# 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 ###
|
||||||
|
################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=eDP-1, preferred, 0x0, 1
|
||||||
|
monitor=,preferred,auto,auto
|
||||||
|
# trigger when the switch is turning off
|
||||||
|
# bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, 1920x1080@60, 0x0, 1"
|
||||||
|
# trigger when the switch is turning on
|
||||||
|
# bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### MY PROGRAMS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
|
||||||
|
# Set programs that you use
|
||||||
|
$terminal = alacritty
|
||||||
|
$fileManager = nautilus
|
||||||
|
$menu = fuzzel
|
||||||
|
|
||||||
|
|
||||||
|
#################
|
||||||
|
### AUTOSTART ###
|
||||||
|
#################
|
||||||
|
|
||||||
|
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||||
|
# Or execute your favorite apps at launch like this:
|
||||||
|
|
||||||
|
exec-once = systemctl --user start hyprpolkitagent
|
||||||
|
exec-once = waybar & hyprpaper &
|
||||||
|
exec-once = nm-applet &
|
||||||
|
exec-once = nextcloud --background &
|
||||||
|
|
||||||
|
|
||||||
|
#############################
|
||||||
|
### ENVIRONMENT VARIABLES ###
|
||||||
|
#############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
||||||
|
|
||||||
|
env = HYPRCURSOR_THEME,Bibata-Modern-Classic
|
||||||
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
env = XCURSOR_SIZE,24
|
||||||
|
env = XCURSOR_THEME,Bibata-Modern-Classic
|
||||||
|
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||||
|
env = debug:full_cm_proto=true
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### PERMISSIONS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Permissions/
|
||||||
|
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
|
||||||
|
# for security reasons
|
||||||
|
|
||||||
|
# ecosystem {
|
||||||
|
# enforce_permissions = 1
|
||||||
|
# }
|
||||||
|
|
||||||
|
# permission = /usr/(bin|local/bin)/grim, screencopy, allow
|
||||||
|
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
|
||||||
|
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
|
||||||
|
|
||||||
|
|
||||||
|
#####################
|
||||||
|
### LOOK AND FEEL ###
|
||||||
|
#####################
|
||||||
|
|
||||||
|
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||||
|
source = ~/.config/hypr/catppuccin-hyprland/themes/mocha.conf
|
||||||
|
general {
|
||||||
|
gaps_in = 5
|
||||||
|
gaps_out = 5, 5, 5, 5
|
||||||
|
|
||||||
|
border_size = 2
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||||
|
# col.active_border = rgba(cba6f7ee) rgba(f38ba8ee) 45deg
|
||||||
|
col.active_border = rgb($mauveAlpha) rgb($pinkAlpha) 45deg
|
||||||
|
col.inactive_border = rgb($surface2Alpha)
|
||||||
|
|
||||||
|
# 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 = true
|
||||||
|
|
||||||
|
layout = dwindle
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||||
|
decoration {
|
||||||
|
rounding = 5
|
||||||
|
rounding_power = 2
|
||||||
|
|
||||||
|
# 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
|
||||||
|
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[tv1], gapsout:0, gapsin:0
|
||||||
|
# workspace = f[1], gapsout:0, gapsin:0
|
||||||
|
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
|
||||||
|
# windowrule = 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 + P in the keybinds section below
|
||||||
|
preserve_split = true # You probably want this
|
||||||
|
}
|
||||||
|
|
||||||
|
# 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 = 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. :(
|
||||||
|
vrr = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#############
|
||||||
|
### INPUT ###
|
||||||
|
#############
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant = dvorak-intl
|
||||||
|
kb_model =
|
||||||
|
kb_options =
|
||||||
|
kb_rules =
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
accel_profile = flat
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### KEYBINDINGS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
bind = $mainMod, RETURN, exec, $terminal
|
||||||
|
bind = $mainMod SHIFT, Q, killactive,
|
||||||
|
# bind = $mainMod, M, exit,
|
||||||
|
bind = $mainMod CTRL, L, exec, hyprlock
|
||||||
|
bind = $mainMod, E, exec, $fileManager
|
||||||
|
bind = $mainMod, V, togglefloating,
|
||||||
|
bind = $mainMod, F, fullscreen,
|
||||||
|
bindr = $mainMod, SPACE, exec, $menu
|
||||||
|
bind = $mainMod, P, exec, ~/.config/hypr/scripts/powermenu.sh &
|
||||||
|
# bind = $mainMod, J, togglesplit, # dwindle
|
||||||
|
bind = , PRINT, exec, gscreenshot -c -s
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
bind = $mainMod SHIFT, left, movewindow, l
|
||||||
|
bind = $mainMod SHIFT, right, movewindow, r
|
||||||
|
bind = $mainMod SHIFT, up, movewindow, u
|
||||||
|
bind = $mainMod SHIFT, down, movewindow, d
|
||||||
|
bind = $mainMod SHIFT, H, movewindow, l
|
||||||
|
bind = $mainMod SHIFT, L, movewindow, r
|
||||||
|
bind = $mainMod SHIFT, K, movewindow, u
|
||||||
|
bind = $mainMod SHIFT, J, movewindow, 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
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# 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 -l 1 @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 -e4 -n2 set 5%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
|
||||||
|
|
||||||
|
# Requires playerctl
|
||||||
|
bindl = , XF86AudioNext, exec, playerctl next
|
||||||
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||||
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
||||||
|
|
||||||
|
##############################
|
||||||
|
### 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
|
||||||
|
# windowrule = float,class:^(kitty)$,title:^(kitty)$
|
||||||
|
|
||||||
|
# Ignore maximize requests from apps. You'll probably like this.
|
||||||
|
windowrule = suppressevent maximize, class:.*
|
||||||
|
|
||||||
|
# Fix some dragging issues with XWayland
|
||||||
|
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
100
hypr/hyprlock.conf
Normal file
100
hypr/hyprlock.conf
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
source = $HOME/.config/hypr/catppuccin-hyprland/themes/mocha.conf
|
||||||
|
|
||||||
|
$accent = $mauve
|
||||||
|
$accentAlpha = $mauveAlpha
|
||||||
|
$font = JetBrainsMono Nerd Font
|
||||||
|
|
||||||
|
# GENERAL
|
||||||
|
general {
|
||||||
|
hide_cursor = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# BACKGROUND
|
||||||
|
background {
|
||||||
|
monitor =
|
||||||
|
path = $HOME/Pictures/wallpaper.png
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
|
# FINGERPRINT
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "$FPRINTPROMPT";
|
||||||
|
color = "$text";
|
||||||
|
font_size = 14;
|
||||||
|
font_family = $font;
|
||||||
|
position = "0, -107";
|
||||||
|
halign = "center";
|
||||||
|
valign = "center";
|
||||||
|
}
|
||||||
|
|
||||||
|
# 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
|
||||||
|
}
|
2
hypr/hyprpaper.conf
Normal file
2
hypr/hyprpaper.conf
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
preload = ~/Pictures/wallpaper.png
|
||||||
|
wallpaper = ,~/Pictures/wallpaper.png
|
78
hypr/mocha.conf
Normal file
78
hypr/mocha.conf
Normal 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
|
18
hypr/scripts/powermenu.sh
Executable file
18
hypr/scripts/powermenu.sh
Executable file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
options="Shutdown\nReboot\nLock\nLogout"
|
||||||
|
selected=$(echo -e $options | fuzzel --dmenu --prompt='Power:')
|
||||||
|
|
||||||
|
case $selected in
|
||||||
|
"Shutdown")
|
||||||
|
systemctl poweroff
|
||||||
|
;;
|
||||||
|
"Reboot")
|
||||||
|
systemctl reboot
|
||||||
|
;;
|
||||||
|
"Lock")
|
||||||
|
hyprlock
|
||||||
|
;;
|
||||||
|
"Logout")
|
||||||
|
hyprctl dispatch exit
|
||||||
|
;;
|
||||||
|
esac
|
380
nvim/init.lua
Normal file
380
nvim/init.lua
Normal file
@@ -0,0 +1,380 @@
|
|||||||
|
vim.o.number = true
|
||||||
|
vim.o.wrap = false
|
||||||
|
vim.o.tabstop = 4
|
||||||
|
vim.o.shiftwidth = 4
|
||||||
|
vim.o.smartcase = true
|
||||||
|
vim.o.ignorecase = true
|
||||||
|
vim.o.hlsearch = false
|
||||||
|
vim.o.signcolumn = 'yes'
|
||||||
|
|
||||||
|
vim.g.mapleader = ','
|
||||||
|
|
||||||
|
-- Set up 'mini.deps' (customize to your liking)
|
||||||
|
require('mini.deps').setup()
|
||||||
|
|
||||||
|
local add = MiniDeps.add
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'williamboman/mason.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'stevearc/conform.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'williamboman/mason-lspconfig.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'mhartington/formatter.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'mfussenegger/nvim-lint'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'akinsho/toggleterm.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Add to current session (install if absent)
|
||||||
|
add({
|
||||||
|
source = 'neovim/nvim-lspconfig',
|
||||||
|
-- Supply dependencies near target plugin
|
||||||
|
depends = { 'williamboman/mason.nvim' },
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'seblyng/roslyn.nvim',
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'tris203/rzls.nvim',
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'nvim-treesitter/nvim-treesitter',
|
||||||
|
-- Use 'master' while monitoring updates in 'main'
|
||||||
|
checkout = 'master',
|
||||||
|
monitor = 'main',
|
||||||
|
-- Perform action after every checkout
|
||||||
|
hooks = { post_checkout = function() vim.cmd('TSUpdate') end },
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
source = 'simrat39/rust-tools.nvim'
|
||||||
|
})
|
||||||
|
|
||||||
|
add({
|
||||||
|
-- Completion framework:
|
||||||
|
source = 'hrsh7th/nvim-cmp',
|
||||||
|
|
||||||
|
-- LSP completion source:
|
||||||
|
depends = {'hrsh7th/cmp-nvim-lsp',
|
||||||
|
'hrsh7th/cmp-nvim-lua',
|
||||||
|
'hrsh7th/cmp-nvim-lsp-signature-help',
|
||||||
|
'hrsh7th/cmp-vsnip',
|
||||||
|
'hrsh7th/cmp-path',
|
||||||
|
'hrsh7th/cmp-buffer',
|
||||||
|
'hrsh7th/vim-vsnip',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
add({ source = "catppuccin/nvim", name = "catppuccin" })
|
||||||
|
|
||||||
|
require('mini.files').setup({
|
||||||
|
mappings = {
|
||||||
|
show_help = 'gh',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
require('mini.icons').setup({style = 'ascii'})
|
||||||
|
require('mini.pick').setup({})
|
||||||
|
require('mini.snippets').setup({})
|
||||||
|
require('mini.notify').setup({})
|
||||||
|
require('mini.statusline').setup({})
|
||||||
|
require('mini.tabline').setup({})
|
||||||
|
require('mini.git').setup({})
|
||||||
|
local imap_expr = function(lhs, rhs)
|
||||||
|
vim.keymap.set('i', lhs, rhs, { expr = true })
|
||||||
|
end
|
||||||
|
imap_expr('<Tab>', [[pumvisible() ? "\<C-n>" : "\<Tab>"]])
|
||||||
|
imap_expr('<S-Tab>', [[pumvisible() ? "\<C-p>" : "\<S-Tab>"]])
|
||||||
|
_G.cr_action = function()
|
||||||
|
-- If there is selected item in popup, accept it with <C-y>
|
||||||
|
if vim.fn.complete_info()['selected'] ~= -1 then return '\25' end
|
||||||
|
-- Fall back to plain `<CR>`. You might want to customize according
|
||||||
|
-- to other plugins. For example if 'mini.pairs' is set up, replace
|
||||||
|
-- next line with `return MiniPairs.cr()`
|
||||||
|
return '\r'
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.keymap.set('i', '<CR>', 'v:lua.cr_action()', { expr = true })
|
||||||
|
require("toggleterm").setup{
|
||||||
|
size = function(term)
|
||||||
|
if term.direction == "horizontal" then
|
||||||
|
return 30
|
||||||
|
elseif term.direction == "vertical" then
|
||||||
|
return 69
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
open_mapping = [[<c-\>]],
|
||||||
|
hide_numbers = true,
|
||||||
|
shade_terminals = true,
|
||||||
|
persist_size = true,
|
||||||
|
direction = 'float',
|
||||||
|
close_on_exit = true,
|
||||||
|
shell = vim.o.shell,
|
||||||
|
}
|
||||||
|
|
||||||
|
require('nvim-treesitter.configs').setup {
|
||||||
|
ensure_installed = { "lua", "rust", "toml", "c_sharp" },
|
||||||
|
auto_install = true,
|
||||||
|
highlight = {
|
||||||
|
enable = true,
|
||||||
|
additional_vim_regex_highlighting=false,
|
||||||
|
},
|
||||||
|
ident = { enable = true },
|
||||||
|
rainbow = {
|
||||||
|
enable = true,
|
||||||
|
extended_mode = true,
|
||||||
|
max_file_lines = nil,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
require("mason").setup({
|
||||||
|
registries = {
|
||||||
|
"github:mason-org/mason-registry",
|
||||||
|
"github:Crashdummyy/mason-registry",
|
||||||
|
},
|
||||||
|
ui = {
|
||||||
|
icons = {
|
||||||
|
package_installed = "✓",
|
||||||
|
package_pending = "➜",
|
||||||
|
package_uninstalled = "✗"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
require("mason-lspconfig").setup()
|
||||||
|
vim.lsp.config('rust_analyzer', {
|
||||||
|
-- Server-specific settings. See `:help lsp-quickstart`
|
||||||
|
settings = {
|
||||||
|
['rust-analyzer'] = {},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
local mason_registry = require("mason-registry")
|
||||||
|
local cmd = {}
|
||||||
|
vim.list_extend(cmd, {
|
||||||
|
"dotnet",
|
||||||
|
vim.fs.joinpath("/home/narl/.local/share/nvim/mason/packages/roslyn", "libexec", "Microsoft.CodeAnalysis.LanguageServer.dll"),
|
||||||
|
"--stdio",
|
||||||
|
"--logLevel=Information",
|
||||||
|
"--extensionLogDirectory=" .. vim.fs.dirname(vim.lsp.get_log_path()),
|
||||||
|
})
|
||||||
|
|
||||||
|
local rzls_path = vim.fs.joinpath("/home/narl/.local/share/nvim/mason/packages/rzls", "libexec")
|
||||||
|
table.insert(
|
||||||
|
cmd,
|
||||||
|
"--razorSourceGenerator=" .. vim.fs.joinpath(rzls_path, "Microsoft.CodeAnalysis.Razor.Compiler.dll")
|
||||||
|
)
|
||||||
|
table.insert(
|
||||||
|
cmd,
|
||||||
|
"--razorDesignTimePath="
|
||||||
|
.. vim.fs.joinpath(rzls_path, "Targets", "Microsoft.NET.Sdk.Razor.DesignTime.targets")
|
||||||
|
)
|
||||||
|
|
||||||
|
require('roslyn').setup({
|
||||||
|
cmd = cmd,
|
||||||
|
config = {
|
||||||
|
-- the rest of your Roslyn configuration
|
||||||
|
handlers = require("rzls.roslyn_handlers"),
|
||||||
|
},
|
||||||
|
})
|
||||||
|
require('nvim-treesitter.configs').setup({
|
||||||
|
highlight = { enable = true },
|
||||||
|
})
|
||||||
|
|
||||||
|
require("catppuccin").setup({
|
||||||
|
flavour = "auto", -- latte, frappe, macchiato, mocha
|
||||||
|
background = { -- :h background
|
||||||
|
light = "latte",
|
||||||
|
dark = "mocha",
|
||||||
|
},
|
||||||
|
transparent_background = false, -- disables setting the background color.
|
||||||
|
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
|
||||||
|
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
|
||||||
|
dim_inactive = {
|
||||||
|
enabled = false, -- dims the background color of inactive window
|
||||||
|
shade = "dark",
|
||||||
|
percentage = 0.15, -- percentage of the shade to apply to the inactive window
|
||||||
|
},
|
||||||
|
no_italic = false, -- Force no italic
|
||||||
|
no_bold = false, -- Force no bold
|
||||||
|
no_underline = false, -- Force no underline
|
||||||
|
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
|
||||||
|
comments = { "italic" }, -- Change the style of comments
|
||||||
|
conditionals = { "italic" },
|
||||||
|
loops = {},
|
||||||
|
functions = {},
|
||||||
|
keywords = {},
|
||||||
|
strings = {},
|
||||||
|
variables = {},
|
||||||
|
numbers = {},
|
||||||
|
booleans = {},
|
||||||
|
properties = {},
|
||||||
|
types = {},
|
||||||
|
operators = {},
|
||||||
|
-- miscs = {}, -- Uncomment to turn off hard-coded styles
|
||||||
|
},
|
||||||
|
color_overrides = {},
|
||||||
|
custom_highlights = {},
|
||||||
|
default_integrations = true,
|
||||||
|
integrations = {
|
||||||
|
cmp = true,
|
||||||
|
gitsigns = true,
|
||||||
|
nvimtree = true,
|
||||||
|
treesitter = true,
|
||||||
|
notify = false,
|
||||||
|
mini = {
|
||||||
|
enabled = true,
|
||||||
|
indentscope_color = "",
|
||||||
|
},
|
||||||
|
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local sign = function(opts)
|
||||||
|
vim.fn.sign_define(opts.name, {
|
||||||
|
texthl = opts.name,
|
||||||
|
text = opts.text,
|
||||||
|
numhl = ''
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
sign({name = 'DiagnosticSignError', text = ''})
|
||||||
|
sign({name = 'DiagnosticSignWarn', text = ''})
|
||||||
|
sign({name = 'DiagnosticSignHint', text = ''})
|
||||||
|
sign({name = 'DiagnosticSignInfo', text = ''})
|
||||||
|
--Set completeopt to have a better completion experience
|
||||||
|
-- :help completeopt
|
||||||
|
-- menuone: popup even when there's only one match
|
||||||
|
-- noinsert: Do not insert text until a selection is made
|
||||||
|
-- noselect: Do not select, force to select one from the menu
|
||||||
|
-- shortness: avoid showing extra messages when using completion
|
||||||
|
-- updatetime: set updatetime for CursorHold
|
||||||
|
vim.opt.completeopt = {'menuone', 'noselect', 'noinsert'}
|
||||||
|
vim.opt.shortmess = vim.opt.shortmess + { c = true}
|
||||||
|
vim.api.nvim_set_option('updatetime', 300)
|
||||||
|
|
||||||
|
-- Fixed column for diagnostics to appear
|
||||||
|
-- Show autodiagnostic popup on cursor hover_range
|
||||||
|
-- Goto previous / next diagnostic warning / error
|
||||||
|
-- Show inlay_hints more frequently
|
||||||
|
vim.cmd([[
|
||||||
|
set signcolumn=yes
|
||||||
|
autocmd CursorHold * lua vim.diagnostic.open_float(nil, { focusable = false })
|
||||||
|
]])
|
||||||
|
|
||||||
|
vim.diagnostic.config({
|
||||||
|
virtual_text = false,
|
||||||
|
signs = true,
|
||||||
|
update_in_insert = true,
|
||||||
|
underline = true,
|
||||||
|
severity_sort = false,
|
||||||
|
float = {
|
||||||
|
border = 'rounded',
|
||||||
|
source = 'always',
|
||||||
|
header = '',
|
||||||
|
prefix = '',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
vim.cmd([[
|
||||||
|
set signcolumn=yes
|
||||||
|
autocmd CursorHold * lua vim.diagnostic.open_float(nil, { focusable = false })
|
||||||
|
]])
|
||||||
|
|
||||||
|
-- setup must be called before loading
|
||||||
|
vim.cmd.colorscheme "catppuccin"
|
||||||
|
|
||||||
|
vim.keymap.set('n', '<leader>w', '<cmd>write<cr>', {desc = 'Save file'})
|
||||||
|
vim.keymap.set('n', '<leader>q', '<cmd>quitall<cr>', {desc = 'Exit vim'})
|
||||||
|
|
||||||
|
vim.keymap.set({'n', 'x', 'o'}, 'gy', '"+y', {desc = 'Copy to clipboard'})
|
||||||
|
vim.keymap.set({'n', 'x', 'o'}, 'gp', '"+p', {desc = 'Paste clipboard text'})
|
||||||
|
vim.keymap.set('n', '<leader>e', '<cmd>lua MiniFiles.open()<cr>', {desc = 'File explorer'})
|
||||||
|
vim.keymap.set('n', '<leader><space>', '<cmd>Pick buffers<cr>', {desc = 'Search open files'})
|
||||||
|
vim.keymap.set('n', '<leader>ff', '<cmd>Pick files<cr>', {desc = 'Search all files'})
|
||||||
|
vim.keymap.set('n', '<leader>fh', '<cmd>Pick help<cr>', {desc = 'Search help tags'})
|
||||||
|
|
||||||
|
vim.keymap.set('n', '<leader>h', '<cmd>wincmd h<cr>')
|
||||||
|
vim.keymap.set('n', '<leader>l', '<cmd>wincmd l<cr>')
|
||||||
|
vim.keymap.set('n', '<leader>j', '<cmd>wincmd j<cr>')
|
||||||
|
vim.keymap.set('n', '<leader>k', '<cmd>wincmd k<cr>')
|
||||||
|
|
||||||
|
-- Rust
|
||||||
|
--
|
||||||
|
|
||||||
|
local rt = require("rust-tools")
|
||||||
|
|
||||||
|
rt.setup({
|
||||||
|
server = {
|
||||||
|
on_attach = function(_, bufnr)
|
||||||
|
-- Hover actions
|
||||||
|
vim.keymap.set("n", "<C-space>", rt.hover_actions.hover_actions, { buffer = bufnr })
|
||||||
|
-- Code action groups
|
||||||
|
vim.keymap.set("n", "<Leader>a", rt.code_action_group.code_action_group, { buffer = bufnr })
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local cmp = require'cmp'
|
||||||
|
cmp.setup({
|
||||||
|
-- Enable LSP snippets
|
||||||
|
snippet = {
|
||||||
|
expand = function(args)
|
||||||
|
vim.fn["vsnip#anonymous"](args.body)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
mapping = {
|
||||||
|
['<C-p>'] = cmp.mapping.select_prev_item(),
|
||||||
|
['<C-n>'] = cmp.mapping.select_next_item(),
|
||||||
|
-- Add tab support
|
||||||
|
['<S-Tab>'] = cmp.mapping.select_prev_item(),
|
||||||
|
['<Tab>'] = cmp.mapping.select_next_item(),
|
||||||
|
['<C-S-f>'] = cmp.mapping.scroll_docs(-4),
|
||||||
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
['<C-e>'] = cmp.mapping.close(),
|
||||||
|
['<CR>'] = cmp.mapping.confirm({
|
||||||
|
behavior = cmp.ConfirmBehavior.Insert,
|
||||||
|
select = true,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
-- Installed sources:
|
||||||
|
sources = {
|
||||||
|
{ name = 'path' }, -- file paths
|
||||||
|
{ name = 'nvim_lsp', keyword_length = 3 }, -- from language server
|
||||||
|
{ name = 'nvim_lsp_signature_help'}, -- display function signatures with current parameter emphasized
|
||||||
|
{ name = 'nvim_lua', keyword_length = 2}, -- complete neovim's Lua runtime API such vim.lsp.*
|
||||||
|
{ name = 'buffer', keyword_length = 2 }, -- source current buffer
|
||||||
|
{ name = 'vsnip', keyword_length = 2 }, -- nvim-cmp source for vim-vsnip
|
||||||
|
{ name = 'calc'}, -- source for math calculation
|
||||||
|
},
|
||||||
|
window = {
|
||||||
|
completion = cmp.config.window.bordered(),
|
||||||
|
documentation = cmp.config.window.bordered(),
|
||||||
|
},
|
||||||
|
formatting = {
|
||||||
|
fields = {'menu', 'abbr', 'kind'},
|
||||||
|
format = function(entry, item)
|
||||||
|
local menu_icon ={
|
||||||
|
nvim_lsp = 'λ',
|
||||||
|
vsnip = '⋗',
|
||||||
|
buffer = 'Ω',
|
||||||
|
path = '🖫',
|
||||||
|
}
|
||||||
|
item.menu = menu_icon[entry.source.name]
|
||||||
|
return item
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
})
|
1
nvim/pack/nvim/start/mini.nvim
Submodule
1
nvim/pack/nvim/start/mini.nvim
Submodule
Submodule nvim/pack/nvim/start/mini.nvim added at ae198e51b9
1
nvim/pack/nvim/start/nvim-lspconfig
Submodule
1
nvim/pack/nvim/start/nvim-lspconfig
Submodule
Submodule nvim/pack/nvim/start/nvim-lspconfig added at dbdb80d3bd
6
nvim/pack/vendor/start/setup_nvim.sh
vendored
Normal file
6
nvim/pack/vendor/start/setup_nvim.sh
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
rm -rf ~/.config/nvim
|
||||||
|
cp -r nvim ~/.config/
|
||||||
|
git clone https://github.com/neovim/nvim-lspconfig ~/.config/nvim/pack/vendor/start/nvim-lspconfig
|
||||||
|
git clone https://github.com/echasnovski/mini.nvim ~/.config/nvim/pack/vendor/start/mini.nvim
|
1
waybar/catppuccin-waybar
Submodule
1
waybar/catppuccin-waybar
Submodule
Submodule waybar/catppuccin-waybar added at ee8ed32b4f
77
waybar/config.jsonc
Normal file
77
waybar/config.jsonc
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
// ~/.config/waybar/config.jsonc
|
||||||
|
{
|
||||||
|
"layer": "top",
|
||||||
|
"position": "top",
|
||||||
|
"height": 35,
|
||||||
|
"modules-left": ["hyprland/workspaces", "hyprland/window"],
|
||||||
|
"modules-center": ["clock"],
|
||||||
|
"modules-right": ["tray", "pulseaudio", "network", "cpu", "memory", "custom/tlp", "battery", "custom/power"],
|
||||||
|
|
||||||
|
"hyprland/workspaces": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"on-click": "activate"
|
||||||
|
},
|
||||||
|
"hyprland/window": {
|
||||||
|
"format": "{}",
|
||||||
|
"max-length": 35
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"format": "{:%I:%M %p}",
|
||||||
|
"format-alt": "{:%a, %b %d}",
|
||||||
|
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
|
||||||
|
},
|
||||||
|
"cpu": {
|
||||||
|
"format": "CPU:{usage}%",
|
||||||
|
"tooltip": true
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"format": "MEM:{}%"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"format-wifi": "{essid} ({signalStrength}): {ipaddr}",
|
||||||
|
"format-ethernet": "{ifname}: {ipaddr}",
|
||||||
|
"format-disconnected": "Disconnected",
|
||||||
|
"tooltip-format": "{ifname} via {gwaddr}",
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
"format": "{icon} {volume}%",
|
||||||
|
"format-muted": " Muted",
|
||||||
|
"format-icons": {
|
||||||
|
"headphone": "",
|
||||||
|
"hands-free": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"portable": "",
|
||||||
|
"car": "",
|
||||||
|
"default": ["", ""]
|
||||||
|
},
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 18,
|
||||||
|
"spacing": 10
|
||||||
|
},
|
||||||
|
"custom/power": {
|
||||||
|
"format": "",
|
||||||
|
"tooltip": false,
|
||||||
|
"on-click": "~/.config/hypr/scripts/powermenu.sh"
|
||||||
|
},
|
||||||
|
"custom/tlp": {
|
||||||
|
"format": "{}",
|
||||||
|
"exec": "~/.config/waybar/scripts/tlp-profile.sh",
|
||||||
|
"return-type": "json",
|
||||||
|
"interval": 10
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": "{capacity}%",
|
||||||
|
"format-charging": "{capacity}%",
|
||||||
|
"format-plugged": "{capacity}%",
|
||||||
|
"format-alt": "{time} {icon}",
|
||||||
|
"format-full": "{capacity}%",
|
||||||
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
}
|
2
waybar/scripts/power.sh
Executable file
2
waybar/scripts/power.sh
Executable file
@@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
wlogout -p layer-shell
|
24
waybar/scripts/tlp-profile.sh
Executable file
24
waybar/scripts/tlp-profile.sh
Executable file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Get the current power source from tlp-stat
|
||||||
|
power_source=$(tlp-stat -s | grep -i "power source" | awk '{print $4}')
|
||||||
|
|
||||||
|
if [ "$power_source" == "AC" ]; then
|
||||||
|
# On AC power
|
||||||
|
icon=""
|
||||||
|
tooltip="TLP Profile: AC"
|
||||||
|
class="ac"
|
||||||
|
elif [ "$power_source" == "battery" ]; then
|
||||||
|
# On Battery power
|
||||||
|
icon=""
|
||||||
|
tooltip="TLP Profile: Battery"
|
||||||
|
class="bat"
|
||||||
|
else
|
||||||
|
# Fallback for unknown state
|
||||||
|
icon=""
|
||||||
|
tooltip="TLP Profile: Unknown"
|
||||||
|
class="unknown"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Output in JSON format for Waybar
|
||||||
|
printf '{"text": "%s", "tooltip": "%s", "class": "%s"}\n' "$icon" "$tooltip" "$class"
|
81
waybar/style.css
Normal file
81
waybar/style.css
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
/* ~/.config/waybar/style.css */
|
||||||
|
@import "./catppuccin-waybar/themes/mocha.css";
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: "0xProto Nerd Font", FontAwesome, sans-serif;
|
||||||
|
font-size: 14px;
|
||||||
|
padding: 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: alpha(@base, 0.9);
|
||||||
|
border-bottom: 3px solid @mauve;
|
||||||
|
color: @text;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
padding: 0 5px;
|
||||||
|
background-color: transparent;
|
||||||
|
color: @surface2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
color: @mauve;
|
||||||
|
border-bottom: 3px solid @pink;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: @surface0;
|
||||||
|
box-shadow: inherit;
|
||||||
|
text-shadow: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power {
|
||||||
|
color: @red;
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-tlp {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-tlp.ac {
|
||||||
|
color: @green; /* Catppuccin Green for AC power */
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-tlp.bat {
|
||||||
|
color: @yellow; /* Catppuccin Yellow for Battery power */
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
color: @text;
|
||||||
|
padding: 0 10px;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging, #battery.plugged {
|
||||||
|
color: @green;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.warning {
|
||||||
|
color: @yellow;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical {
|
||||||
|
color: @red;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.8s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
color: @text;
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user