Initial commit

This commit is contained in:
2025-04-30 04:59:01 -05:00
commit 7274197b00
58 changed files with 8010 additions and 0 deletions
+382
View File
@@ -0,0 +1,382 @@
### MangoHud configuration file
### Uncomment any options you wish to enable. Default options are left uncommented
### Use some_parameter=0 to disable a parameter (only works with on/off parameters)
### Everything below can be used / overridden with the environment variable MANGOHUD_CONFIG instead
################ INFORMATIONAL #################
## prints possible options on stdout
# help
################ PERFORMANCE #################
### Limit the application FPS. Comma-separated list of one or more FPS values (e.g. 0,30,60). 0 means unlimited (unless VSynced)
fps_limit=144
### early = wait before present, late = wait after present
# fps_limit_method=
### VSync [0-3] 0 = adaptive; 1 = off; 2 = mailbox; 3 = on
# vsync=-1
### OpenGL VSync [0-N] 0 = off; >=1 = wait for N v-blanks, N > 1 acts as a FPS limiter (FPS = display refresh rate / N)
# gl_vsync=-2
### Mip-map LoD bias. Negative values will increase texture sharpness (and aliasing)
## Positive values will increase texture blurriness (-16 to 16)
# picmip=-17
### Anisotropic filtering level. Improves sharpness of textures viewed at an angle (0 to 16)
# af=-1
### Force bicubic filtering
# bicubic
### Force trilinear filtering
# trilinear
### Disable linear texture filtering. Makes textures look blocky
# retro
################### VISUAL ###################
### Legacy layout
# legacy_layout=0
### pre defined presets
# -1 = default
# 0 = no display
# 1 = fps only
# 2 = horizontal view
# 3 = extended
# 4 = high detailed information
preset=0
### Enable most of the toggleable parameters (currently excludes `histogram`)
# full
### Show FPS only. ***Not meant to be used with other display params***
# fps_only
### Display custom centered text, useful for a header
# custom_text_center=
### Display the current system time
# time
## removes the time label
# time_no_label
### Time formatting examples
## %H:%M
## [ %T %F ]
## %X # locally formatted time, because of limited glyph range, missing characters may show as '?' (e.g. Japanese)
# time_format="%T"
### Display MangoHud version
# version
### Display the current GPU information
## Note: gpu_mem_clock and gpu_mem_temp also need "vram" to be enabled
gpu_stats
# gpu_temp
# gpu_junction_temp
# gpu_core_clock
# gpu_mem_temp
# gpu_mem_clock
# gpu_power
# gpu_text=
# gpu_load_change
# gpu_load_value=60,90
# gpu_load_color=39F900,FDFD09,B22222
## GPU fan in rpm on AMD, FAN in percent on NVIDIA
# gpu_fan
## gpu_voltage only works on AMD GPUs
# gpu_voltage
## Select list of GPUs to display
# gpu_list=0,1
### Display the current CPU information
cpu_stats
# cpu_temp
# cpu_power
# cpu_text=
# cpu_mhz
# cpu_load_change
# cpu_load_value=60,90
# cpu_load_color=39F900,FDFD09,B22222
### Display the current CPU load & frequency for each core
# core_load
# core_load_change
# core_bars
### Display IO read and write for the app (not system)
# io_read
# io_write
### Display system vram / ram / swap space usage
# vram
# ram
# swap
### Display per process memory usage
## Show resident memory and other types, if enabled
# procmem
# procmem_shared
# procmem_virt
### Display battery information
# battery
# battery_icon
# device_battery=gamepad,mouse
# device_battery_icon
# battery_watt
# battery_time
### Display FPS and frametime
fps
# fps_sampling_period=500
# fps_color_change
# fps_value=30,60
# fps_color=B22222,FDFD09,39F900
# fps_text=""
frametime
# frame_count
## fps_metrics takes a list of decimal values or the value avg
# fps_metrics=avg,0.01
### Display GPU throttling status based on Power, current, temp or "other"
## Only shows if throttling is currently happening
throttling_status
## Same as throttling_status but displays throttling on the frametime graph
#throttling_status_graph
### Display miscellaneous information
# engine_version
# engine_short_names
# gpu_name
# vulkan_driver
# wine
# exec_name
# winesync
# present_mode
### Display loaded MangoHud architecture
# arch
### Display the frametime line graph
frame_timing
# frame_timing_detailed
# dynamic_frame_timing
# histogram
### Display GameMode / vkBasalt running status
# gamemode
# vkbasalt
### Gamescope related options
## Display the status of FSR (only works in gamescope)
# fsr
## Hides the sharpness info for the `fsr` option (only available in gamescope)
# hide_fsr_sharpness
## Shows the graph of gamescope app frametimes and latency (only on gamescope obviously)
# debug
## Display the status of HDR (only works in gamescope)
# hdr
## Display the current refresh rate (only works in gamescope)
# refresh_rate
### graphs displays one or more graphs that you chose
## separated by ",", available graphs are
## gpu_load,cpu_load,gpu_core_clock,gpu_mem_clock,vram,ram,cpu_temp,gpu_temp
# graphs=
### mangoapp related options
## Enables mangoapp to be displayed above the Steam UI
# mangoapp_steam
### Steam Deck options
## Shows the Steam Deck fan rpm
# fan
### Display current FPS limit
# show_fps_limit
### Display the current resolution
# resolution
### Display current display session
# display_server
### Display temperature in fahrenheit
# temp_fahrenheit
### Display custom text
# custom_text=
### Display output of Bash command in next column
# exec=
### Display media player metadata
# media_player
## for example spotify
# media_player_name=
## Format metadata, lines are delimited by ; (wip)
## example: {title};{artist};{album}
## example: Track:;{title};By:;{artist};From:;{album}
# media_player_format=title,artist,album
### Network interface throughput
# network
## Network can take arguments but it's not required.
## without arguments it shows all interfaces
## arguments set which interfaces will be displayed
# network=eth0,wlo1
### Change the hud font size
# font_size=24
# font_scale=1.0
# font_size_text=24
# font_scale_media_player=0.55
# no_small_font
### Change default font (set location to TTF/OTF file)
## Set font for the whole hud
# font_file=
## Set font only for text like media player metadata
# font_file_text=
## Set font glyph ranges. Defaults to Latin-only. Don't forget to set font_file/font_file_text to font that supports these
## Probably don't enable all at once because of memory usage and hardware limits concerns
## If you experience crashes or text is just squares, reduce glyph range or reduce font size
# font_glyph_ranges=korean,chinese,chinese_simplified,japanese,cyrillic,thai,vietnamese,latin_ext_a,latin_ext_b
### Outline text
text_outline
# text_outline_color = 000000
# text_outline_thickness = 1.5
### Change the hud position
# position=top-left
### Change the corner roundness
# round_corners=0
### Remove margins around MangoHud
# hud_no_margin
### Display compact version of MangoHud
# hud_compact
### Display MangoHud in a horizontal position
# horizontal
# horizontal_stretch
### Disable / hide the hud by default
# no_display
### Show FEX-Emu statistics
## Only useful for Arm64 devices running applications under emulation
# fex_stats
### Hud position offset
# offset_x=0
# offset_y=0
### Hud dimensions
# width=0
# height=140
# table_columns=3
# cellpadding_y=-0.085
### Hud transparency / alpha
# background_alpha=0.5
# alpha=1.0
### FCAT overlay
### This enables an FCAT overlay to perform frametime analysis on the final image stream.
### Enable the overlay
# fcat
### Set the width of the FCAT overlay.
### 24 is a performance optimization on AMD GPUs that should not have adverse effects on nVidia GPUs.
### A minimum of 20 pixels is recommended by nVidia.
# fcat_overlay_width=24
### Set the screen edge, this can be useful for special displays that don't update from top edge to bottom. This goes from 0 (left side) to 3 (top edge), counter-clockwise.
# fcat_screen_edge=0
### Color customization
# text_color=FFFFFF
# gpu_color=2E9762
# cpu_color=2E97CB
# vram_color=AD64C1
# ram_color=C26693
# engine_color=EB5B5B
# io_color=A491D3
# frametime_color=00FF00
# background_color=020202
# media_player_color=FFFFFF
# wine_color=EB5B5B
# battery_color=FF9078
# network_color=E07B85
### Specify GPU with PCI bus ID
### Set to 'domain:bus:slot.function'
### Example:
### $ lspci | grep A770
### 03:00.0 VGA compatible controller: Intel Corporation DG2 [Arc A770] (rev 08)
# pci_dev=0000:03:00.0
### Blacklist
# blacklist=
### Control over socket
### Enable and set socket name, '%p' is replaced with process id
## example: mangohud
## example: mangohud-%p
# control = -1
################ WORKAROUNDS #################
### Options starting with "gl_*" are for OpenGL
### Specify what to use for getting display size. Options are "viewport", "scissorbox" or disabled. Defaults to using glXQueryDrawable
# gl_size_query=viewport
### (Re)bind given framebuffer before MangoHud gets drawn. Helps with Crusader Kings III
# gl_bind_framebuffer=0
### Don't swap origin if using GL_UPPER_LEFT. Helps with Ryujinx
# gl_dont_flip=1
################ INTERACTION #################
### Change toggle keybinds for the hud & logging
# toggle_hud=Shift_R+F12
# toggle_hud_position=Shift_R+F11
# toggle_preset=Shift_R+F10
# toggle_fps_limit=Shift_L+F1
# toggle_logging=Shift_L+F2
# reload_cfg=Shift_L+F4
# upload_log=Shift_L+F3
# reset_fps_metrics=Shift_R+f9
#################### LOG #####################
### Automatically start the log after X seconds
# autostart_log=
### Set amount of time in seconds that the logging will run for
# log_duration=
### Change the default log interval, 0 is default
# log_interval=0
### Set location of the output files (required for logging)
# output_folder=/home/<USERNAME>/mangologs
### Permit uploading logs directly to FlightlessMango.com
## set to 1 to enable
# permit_upload=0
### Define a '+'-separated list of percentiles shown in the benchmark results
### Use "AVG" to get a mean average. Default percentiles are 97+AVG+1+0.1
## example: ['97', 'AVG', '1', '0.1']
# benchmark_percentiles=97,AVG
## Adds more headers and information such as versioning to the log. This format is not supported on flightlessmango.com (yet)
# log_versioning
## Enable automatic uploads of logs to flightlessmango.com
# upload_logs
# output_file=""
+15
View File
@@ -0,0 +1,15 @@
#!/usr/bin/fish
alias rm="gio trash"
alias din="sudo dnf install"
alias dre="sudo dnf remove"
alias dup="sudo dnf update"
alias pacin="sudo pacman -S"
alias pacre="sudo pacman -R"
alias pacup="sudo pacman -Syu"
alias hyprconf="nvim ~/.config/hypr/hyprland.conf"
alias waybarconf="nvim ~/.config/waybar/config.jsonc"
alias aliasconf="nvim ~/.config/aliases"
alias kittyconf="nvim ~/.config/kitty/kitty.conf"
alias fishconf="nvim ~/.config/fish/config.fish"
alias roficonf="nvim ~/.config/rofi/config.rasi"
+5
View File
@@ -0,0 +1,5 @@
source ~/.config/aliases
set fish_greeting
if status is-interactive
# Commands to run in interactive sessions can go here
end
+31
View File
@@ -0,0 +1,31 @@
# This file contains fish universal variable definitions.
# VERSION: 3.0
SETUVAR __fish_initialized:3800
SETUVAR fish_color_autosuggestion:brblack
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:white\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:yellow\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
+14
View File
@@ -0,0 +1,14 @@
source=$conf/theme.conf
#---AUTOSTART---#
#exec = hyprpm reload
exec-once = xrandr --output DP-1 --primary
exec-once = systemctl --user start hyprpolkitagent
exec-once = hypridle
exec-once = waypaper --restore
exec-once = waybar
exec-once = swaync
#exec-once = ags -c ~/.config/ags-aylur/config.js
#exec-once = [workspace special:media silent] steam -silent
#exec-once = [workspace special:media silent] $terminal -e ncmpcpp
+100
View File
@@ -0,0 +1,100 @@
source=$conf/theme.conf
#---KEYBINDS---#
# Shortcuts
bind = $mainMod Shift, Return, exec, $distrobox
bind = $mainMod, Return, exec, $terminal
bind = $mainMod, Shift_R, exec, $fileManager
bind = $mainMod, Control_R, exec, $browser
bind = $mainMod, E, killactive,
bind = Alt, F4, killactive,
bind = $mainMod, END, exit,
bind = $mainMod, Escape, exec, hyprlock
bind = $mainMod, F, fullscreen
bind = $mainMod Shift, $mainMod_L, exec, pkill rofi || rofi -show run -theme skycontrast -monitor DP-1
bind = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -theme skycontrast -monitor DP-1
bind = $mainMod Shift, w, exec, ~/Scripts/restart-waybar.sh
bind = $mainMod, P, pseudo
bind = $mainMod, V, togglefloating
bind = , print, exec, XDG_SCREENSHOTS_DIR="$HOME/Pictures/Screenshots" grimshot --notify save area
# Move Focus
# Modal
bind = $mainMod, Tab, cyclenext
bind = $mainMod SHIFT, Tab, cyclenext, prev
# bind = $mainMod, H, movefocus, l
# bind = $mainMod, L, movefocus, r
# bind = $mainMod, J, movefocus, d
# bind = $mainMod, K, movefocus, u
bind = $mainMod, J, layoutmsg, cyclenext
bind = $mainMod, K, layoutmsg, cycleprev
# Arrows
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Move window
# Modal
bind = $mainMod, S, swapnext
bind = $mainMod SHIFT, J, layoutmsg, swapnext
bind = $mainMod SHIFT, K, layoutmsg, swapprev
# bind = $mainMod SHIFT, H, movewindow, l
# bind = $mainMod SHIFT, L, movewindow, r
# bind = $mainMod SHIFT, K, movewindow, u
# bind = $mainMod SHIFT, J, movewindow, d
# Resize window
# Modal
bind = $mainMod CONTROL, H, resizeactive, -200 0
bind = $mainMod CONTROL, L, resizeactive, 200 0
bind = $mainMod CONTROL, K, resizeactive, 0 -200
bind = $mainMod CONTROL, J, resizeactive, 0 200
# Media Keys
bindel = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindel = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
bindl = , XF86AudioNext, exec, playerctl next
bind = Control_L Shift_L Alt_L, Super_L, exec, hyprpicker
# Mouse Binds
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
bindm = , mouse:278, movewindow
bindm = , mouse:279, resizewindow
# Workspaces
# Focus Workspace
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, Q, workspace, alt
bind = $mainMod CONTROL, left, workspace, r-1
bind = $mainMod CONTROL, right, workspace, r+1
bind = , Menu, togglespecialworkspace, media
bind = , XF86Tools, togglespecialworkspace, media
# Move to Workspace
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, Q, movetoworkspace, alt
bind = SHIFT, Menu, movetoworkspace, special:media
+16
View File
@@ -0,0 +1,16 @@
#---DEVICES---#
input {
kb_layout = us
kb_variant =
kb_model =
kb_options = caps:escape
kb_rules =
follow_mouse = 2
accel_profile = flat
sensitivity = -0.2
}
cursor:no_warps=true
cursor:no_hardware_cursors=false
cursor:default_monitor=DP-1
+3
View File
@@ -0,0 +1,3 @@
#---MONITORS---#
monitor = DP-1, highres@highrr, 0x420, 1, vrr, 1
monitor = HDMI-A-1, highres@highrr, 2560x0, 1, transform, 1
+11
View File
@@ -0,0 +1,11 @@
plugin {
scroller {
monitor_options = (DP-1 = (mode = row; column_default_width = onehalf), HDMI-A-1 = (mode = col; column_default_width = one; window_default_height = onehalf))
}
}
general:layout = scroller
bind = $mainMod, K, workspace, m-1
bind = $mainMod, J, workspace, m+1
bind = Super, Tab, scroller:fitsize, visible
+4
View File
@@ -0,0 +1,4 @@
#---PROGRAMS---#
$terminal = kitty
$fileManager = nautilus -w
$browser = librewolf
+14
View File
@@ -0,0 +1,14 @@
#---RULES---#
#Window Rules
windowrulev2 = suppressevent maximize, class:.*
windowrulev2 = immediate, class:.*
windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$
windowrulev2 = noanim, class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$
windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$
windowrulev2 = noblur, class:^(xwaylandvideobridge)$
windowrulev2 = workspace special:media silent, class:^(steam)$
# Layer Rules
layerrule = dimaround,rofi
+1
View File
@@ -0,0 +1 @@
$theme=minimal-custom
+15
View File
@@ -0,0 +1,15 @@
#---VARIABLES---#
env = LIBVA_DRIVER_NAME,nvidia
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = QT_QPA_PLATFORM=wayland
env = GBM_BACKEND,nvidia-drm
env = NVD_BACKEND,direct
env = ELECTRON_OZONE_PLATFORM_HINT,auto
env = QT_QPA_PLATFORMTHEME=qt5ct
env = HYPRCURSOR_THEME, PolarCursorTheme
env = XCURSOR_THEME, PolarCursorTheme
env = HYPRCURSOR_SIZE, 24
env = XCURSOR_SIZE, 24
env = EDITOR, nvim
+65
View File
@@ -0,0 +1,65 @@
#---GENERAL---#
general {
gaps_in = 3
gaps_out = 10
border_size = 3
col.active_border = rgba(99bbffff)
col.inactive_border = rgba(414141FF)
resize_on_border = true
allow_tearing = true
layout = master
}
misc {
force_default_wallpaper = 0
disable_hyprland_logo = true
}
gestures {
workspace_swipe = false
}
#---DECORATION---#
decoration {
rounding = 5
active_opacity = 1.0
inactive_opacity = 1.0
#drop_shadow = true
#shadow_range = 4
#shadow_render_power = 3
#col.shadow = rgba(1a1a1aee)
blur {
enabled = true
size = 3
passes = 3
vibrancy = 0.1696
}
}
#---ANIMATIONS---#
animations {
enabled = false
animation = windows, 0, 8, default
animation = workspaces, 0, 8, default, slide
animation = workspaces, 1, 5, default, slidevert
animation = layersIn, 1, 3, default, slide
animation = fade, 0, 0, none
}
dwindle {
pseudotile = true
preserve_split = true
}
#----RENDER----#
#render {
#explicit_sync = 1
#explicit_sync_kms = 1
#direct_scanout = true
#}
+10
View File
@@ -0,0 +1,10 @@
#---WORKSPACES---#
# Define Workspaces
workspace = 1, monitor:DP-1, default:true
workspace = 2, monitor:DP-1
workspace = 3, monitor:DP-1
workspace = 4, monitor:DP-1
workspace = 5, monitor:DP-1
workspace = name:alt, monitor:HDMI-A-1, default:true
workspace = special:media
+8
View File
@@ -0,0 +1,8 @@
timeout = 50
screen_width = 2560
screen_height = 1440
[top_left]
radius = 10
dispatcher = "workspace"
args = "e-1"
+10
View File
@@ -0,0 +1,10 @@
listener {
timeout = 330 # 5.5min
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
}
listener {
timeout = 1800 # 30min
on-timeout = systemctl suspend # suspend pc
}
+16
View File
@@ -0,0 +1,16 @@
$mainMod = SUPER
$conf = ~/.config/hypr/conf/ # Config path
#---IMPORT---#
source = $conf/workspaces.conf
source = $conf/monitors.conf
source = $conf/programs.conf
source = $conf/autostart.conf
source = $conf/variables.conf
source = $conf/rules.conf
source = $conf/visual.conf
source = $conf/devices.conf
source = $conf/binds.conf
#source = $conf/plugin.conf
+32
View File
@@ -0,0 +1,32 @@
# BACKGROUND
background {
monitor =
}
# GENERAL
general {
no_fade_in = false
grace = 0
disable_loading_bar = true
}
# INPUT FIELD
input-field {
monitor = DP-1
size = 250, 60
outline_thickness = 2
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true
outer_color = rgba(0, 0, 0, 0)
inner_color = rgba(0, 0, 0, 0.5)
font_color = rgb(200, 200, 200)
fade_on_empty = false
font_family = monospace
placeholder_text = <i><span foreground="##cdd6f4">...</span></i>
hide_input = false
position = 0, -200
halign = center
valign = center
}
+8
View File
@@ -0,0 +1,8 @@
preload = ~/.wallpapers/dark-abstract.jpg
wallpaper = DP-1,~/.wallpapers/dark-abstract.jpg
wallpaper = HDMI-A-1,~/.wallpapers/dark-abstract.jpg
splash = false
ipc = off
+70
View File
@@ -0,0 +1,70 @@
# vim:ft=kitty
## name: Everforest Light Hard
## author: Sainnhe Park
## license: MIT
## upstream: https://github.com/ewal/kitty-everforest/blob/master/themes/everforest_light_hard.conf
## blurb: A green based color scheme designed to be warm and soft
foreground #5c6a72
background #fffbef
selection_foreground #829181
selection_background #f0f2d4
cursor #5c6a72
cursor_text_color #f8f5e4
url_color #3a94c5
active_border_color #8da101
inactive_border_color #bec5b2
bell_border_color #f57d26
visual_bell_color none
wayland_titlebar_color system
macos_titlebar_color system
active_tab_background #fffbef
active_tab_foreground #5c6a72
inactive_tab_background #f2efdf
inactive_tab_foreground #939f91
tab_bar_background #f8f5e4
tab_bar_margin_color none
mark1_foreground #fffbef
mark1_background #3a94c5
mark2_foreground #fffbef
mark2_background #d3c6aa
mark3_foreground #fffbef
mark3_background #df69ba
#: black
color0 #708089
color8 #829181
#: red
color1 #f85552
color9 #e66868
#: green
color2 #8da101
color10 #93b259
#: yellow
color3 #dfa000
color11 #dfa000
#: blue
color4 #3a94c5
color12 #3a94c5
#: magenta
color5 #df69ba
color13 #df69ba
#: cyan
color6 #35a77c
color14 #35a77c
#: white
color7 #939f91
color15 #a6b0a0
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+33
View File
@@ -0,0 +1,33 @@
-- Options
vim.g.mapleader = '<space>'
vim.o.number = true
vim.o.relativenumber = true
vim.o.termguicolors = true
vim.o.background = light
vim.o.wrap = true
vim.o.tabstop = 4
vim.o.shiftwidth = 4
vim.o.clipboard = 'unnamedplus'
vim.o.mouse = 'a'
vim.o.ignorecase = true
vim.o.smartcase = true
vim.o.smartindent = false
vim.o.undofile = true
vim.o.swapfile = true
vim.o.autochdir = true
vim.o.scrolloff = 15
-- Plugin Manager
require("config.lazy")
-- Theme
vim.cmd.colorscheme("everforest")
vim.api.nvim_set_hl(0, "Normal", { bg = "none" })
vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" })
-- Binds
vim.keymap.set("n", "<leader>f", function() vim.lsp.buf.format() end)
-- Autocompletion
vim.diagnostic.config({ virtual_text = { current_line = true } })
vim.lsp.enable({ "lua_ls", "rust_analyzer", "ts_ls", "pyright", "html", "cssls", "gopls", "lemminx" });
+28
View File
@@ -0,0 +1,28 @@
{
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
"blink.cmp": { "branch": "main", "commit": "cb5e346d9e0efa7a3eee7fd4da0b690c48d2a98e" },
"everforest-nvim": { "branch": "main", "commit": "135cc21a45756e688dd1a3cbeb1c80a04b569b46" },
"friendly-snippets": { "branch": "main", "commit": "fc8f183479a472df60aa86f00e295462f2308178" },
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
"lualine-macro-recording.nvim": { "branch": "main", "commit": "e2dcf63ba74e6111b53e1520a4f8a17a3d7427a1" },
"lualine.nvim": { "branch": "master", "commit": "15884cee63a8c205334ab13ab1c891cd4d27101a" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
"nui.nvim": { "branch": "main", "commit": "8d5b0b568517935d3c84f257f272ef004d9f5a59" },
"nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" },
"nvim-lint": { "branch": "master", "commit": "9dfb77ef6c5092a19502883c02dc5a02ec648729" },
"nvim-lspconfig": { "branch": "master", "commit": "2e3f389aa06c7b7c29600ec2e67ee64c332077eb" },
"nvim-treesitter": { "branch": "master", "commit": "3b308861a8d7d7bfbe9be51d52e54dcfd9fe3d38" },
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
"nvim-web-devicons": { "branch": "master", "commit": "50b5b06bff13a9b4eab946de7c7033649a6618a1" },
"oil.nvim": { "branch": "master", "commit": "685cdb4ffa74473d75a1b97451f8654ceeab0f4a" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"solarized.nvim": { "branch": "main", "commit": "c0dfe1cbfabd93b546baf5f1408f5df7e02e2050" },
"telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" },
"toggleterm.nvim": { "branch": "main", "commit": "9a88eae817ef395952e08650b3283726786fb5fb" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
"vim-illuminate": { "branch": "master", "commit": "fbc16dee336d8cc0d3d2382ea4a53f4a29725abf" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
}
+5
View File
@@ -0,0 +1,5 @@
local builtin = require('telescope.builtin')
vim.keymap.set('n', ',', builtin.find_files, {desc = "Telescope find files"})
vim.keymap.set('n', '<A-,>', builtin.live_grep, {desc = "Telescope live grep"})
vim.keymap.set('n', '-', '<CMD>Oil<CR>', { desc = "Open parent directory" })
vim.keymap.set({'n','v','i','t'}, '<A-.>', '<CMD>ToggleTerm<CR>', { desc = "Toggle Terminal" })
+35
View File
@@ -0,0 +1,35 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
-- Make sure to setup `mapleader` and `maplocalleader` before
-- loading lazy.nvim so that mappings are correct.
-- This is also a good place to setup other settings (vim.opt)
vim.g.mapleader = " "
vim.g.maplocalleader = "\\"
-- Setup lazy.nvim
require("lazy").setup({
spec = {
-- import your plugins
{ import = "plugins" },
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins.
install = { colorscheme = { "habamax" } },
-- automatically check for plugin updates
checker = { enabled = true },
})
+5
View File
@@ -0,0 +1,5 @@
return {
"windwp/nvim-autopairs",
event = "InsertEnter",
opts = {}
}
+22
View File
@@ -0,0 +1,22 @@
return {
'saghen/blink.cmp',
dependencies = { 'rafamadriz/friendly-snippets' },
version = '1.*',
opts = {
keymap = {
preset = 'default',
['<Tab>'] = {'accept', 'fallback'},
['<A-k>'] = {'select_prev', 'fallback'},
['<A-j>'] = {'select_next', 'fallback'},
},
appearance = {
nerd_font_variant = 'mono'
},
completion = { documentation = { auto_show = false } },
sources = {
default = { 'lsp', 'path', 'snippets', 'buffer' },
},
fuzzy = { implementation = "prefer_rust_with_warning" }
},
opts_extend = { "sources.default" }
}
+5
View File
@@ -0,0 +1,5 @@
return {
'numToStr/Comment.nvim',
opts = {
}
}
+9
View File
@@ -0,0 +1,9 @@
return {
"neanias/everforest-nvim",
lazy = true,
priority = 1000,
config = function ()
background = "soft"
ui_contrast = "low"
end
}
@@ -0,0 +1,7 @@
return {
"lukas-reineke/indent-blankline.nvim",
main = "ibl",
---@module "ibl"
---@type ibl.config
opts = {},
}
+12
View File
@@ -0,0 +1,12 @@
return {
"neovim/nvim-lspconfig",
dependencies = {
"folke/lazydev.nvim",
ft = "lua",
opts = {
library = {
{ path = "${3rd}/luv/library", words = { "vim%.uv" } },
},
},
}
}
@@ -0,0 +1,13 @@
return {
"nvim-lualine/lualine.nvim",
dependencies = {
-- display macro recording
{ "yavorski/lualine-macro-recording.nvim" }
},
opts = {
sections = {
-- add to section of your choice
lualine_c = { "macro_recording", "%S" },
},
}
}
+9
View File
@@ -0,0 +1,9 @@
return {
'nvim-lualine/lualine.nvim',
dependencies = { 'nvim-tree/nvim-web-devicons' },
opts = {
options = {
theme = 'everforest'
}
}
}
+4
View File
@@ -0,0 +1,4 @@
return {
"williamboman/mason.nvim",
opts = {}
}
+10
View File
@@ -0,0 +1,10 @@
return {
"folke/noice.nvim",
event = "VeryLazy",
opts = {
-- add any options here
},
dependencies = {
"MunifTanjim/nui.nvim",
}
}
+17
View File
@@ -0,0 +1,17 @@
return {
"mfussenegger/nvim-lint",
event = {
"BufReadPre",
"BufNewFile",
},
-- config = function ()
-- local lint = require("lint")
-- local lint_augroup = vim.api.nvim_create_augroup("lint", {clear = true})
-- vim.api.nvim_create_autocmd({"BufEnter", "BufWritePost", "InsertLeave"}, {
-- group = lint_augroup,
-- callback = function ()
-- lint.try_lint()
-- end,
-- })
-- end
}
@@ -0,0 +1,8 @@
return {
"windwp/nvim-ts-autotag",
lazy = false,
dependencies = {
"nvim-treesitter/nvim-treesitter",
},
opts = {}
}
+6
View File
@@ -0,0 +1,6 @@
return { "stevearc/oil.nvim",
keys = {
{'-', '<CMD>Oil<CR>', desc = "Open parent directory" }
},
opts = { delete_to_trash = true }
}
+13
View File
@@ -0,0 +1,13 @@
return {
'maxmx03/solarized.nvim',
lazy = false,
priority = 1000,
---@type solarized.config
opts = {},
config = function(_, opts)
vim.o.termguicolors = true
vim.o.background = 'light'
require('solarized').setup(opts)
vim.cmd.colorscheme 'solarized'
end,
}
+8
View File
@@ -0,0 +1,8 @@
return {
"nvim-telescope/telescope.nvim",
keys = {
{',', "<cmd>Telescope find_files<cr>", desc = "Telescope find files"},
{'<A-,>', "<cmd>Telescope live_grep<cr>", desc = "Telescope live grep"}
},
requires = { "nvim-lua/plenary.nvim", "BurntSushi/ripgrep" },
}
+7
View File
@@ -0,0 +1,7 @@
return {
"akinsho/toggleterm.nvim",
keys = {
{'<A-.>', '<CMD>ToggleTerm<CR>', mode = {"n","v","i","t"}, desc = "Toggle Terminal" }
},
opts = {}
}
+6
View File
@@ -0,0 +1,6 @@
return {
"folke/tokyonight.nvim",
lazy = true,
priority = 1000,
opts = {}
}
+14
View File
@@ -0,0 +1,14 @@
return {
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
config = function ()
local configs = require("nvim-treesitter.configs")
configs.setup({
ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "elixir", "heex", "javascript", "html" },
sync_install = false,
highlight = { enable = true },
indent = { enable = true },
})
end
}
@@ -0,0 +1,7 @@
return {
"RRethy/vim-illuminate",
lazy = false,
config = function()
require('illuminate').configure({})
end
}
+18
View File
@@ -0,0 +1,18 @@
return {
"folke/which-key.nvim",
event = "VeryLazy",
opts = {
triggers = {
{ "<leader>", mode = { "n", "v" } },
}
},
keys = {
{
"<leader>?",
function()
require("which-key").show({ global = false })
end,
desc = "Buffer Local Keymaps (which-key)",
},
},
}
+73
View File
@@ -0,0 +1,73 @@
-- Plugins
return require('packer').startup(function()
use "wbthomason/packer.nvim"
use "folke/tokyonight.nvim"
use "mikavilpas/yazi.nvim"
use {"akinsho/toggleterm.nvim", tag = '*', config = function()
require("toggleterm").setup()
end}
use {"nvim-treesitter/nvim-treesitter",
run = ':TSUpdate',
config = function()
require('nvim-treesitter.configs').setup {
ensure_installed = {'bash', 'c', 'css', 'dockerfile', 'fish', 'html', 'java', 'javascript', 'json', 'lua', 'luadoc', 'luap', 'markdown', 'markdown_inline', 'nix', 'python', 'query', 'regex', 'ruby', 'rust', 'scss', 'svelte', 'tsx', 'typescript', 'vim', 'vimdoc', 'vue', 'yaml',},
sync_install = false,
auto_install = true,
highlight = {
enabled = true,
additional_vim_regex_highlighting = false
},
indent = {
enable = true,
},
autotag = {
enable = true,
},
rainbow = {
enable = true,
extended_mode = true,
max_file_lines = 1000,
},
}
end
}
use {"windwp/nvim-autopairs",
event="InsertEnter",
config = function ()
require("nvim-autopairs").setup {}
end
}
use {"nvim-telescope/telescope.nvim",
tag = '0.1.8',
requires = {
"nvim-lua/plenary.nvim",
"BurntSushi/ripgrep"
}
}
use {"stevearc/oil.nvim",
config = function()
require("oil").setup({
delete_to_trash = true,
})
end,
}
-- LSP Setup
use "williamboman/mason.nvim"
use { "neovim/nvim-lspconfig",
dependencies = {
"folke/lazydev.nvim",
ft = "lua",
opts = {
library = {
{ path = "${3rd}/luv/library", words = { "vim%.uv" } },
},
},
},
config = function()
require("lspconfig").lua_ls.setup() {}
end,
}
end)
+157
View File
@@ -0,0 +1,157 @@
configuration {
/* modes: "window,drun,run,ssh";*/
/* font: "mono 12";*/
/* location: 0;*/
/* yoffset: 0;*/
/* xoffset: 0;*/
/* fixed-num-lines: true;*/
/* show-icons: false;*/
/* preview-cmd: ;*/
/* terminal: "rofi-sensible-terminal";*/
/* ssh-client: "ssh";*/
/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
/* run-command: "{cmd}";*/
/* run-list-command: "";*/
/* run-shell-command: "{terminal} -e {cmd}";*/
/* window-command: "wmctrl -i -R {window}";*/
/* window-match-fields: "all";*/
/* icon-theme: ;*/
/* drun-match-fields: "name,generic,exec,categories,keywords";*/
/* drun-categories: ;*/
/* drun-show-actions: false;*/
/* drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
/* drun-url-launcher: "xdg-open";*/
/* disable-history: false;*/
/* ignored-prefixes: "";*/
/* sort: false;*/
/* sorting-method: "normal";*/
/* case-sensitive: false;*/
/* cycle: true;*/
/* sidebar-mode: false;*/
/* hover-select: false;*/
/* eh: 1;*/
/* auto-select: false;*/
/* parse-hosts: false;*/
/* parse-known-hosts: true;*/
/* combi-modes: "window,run";*/
/* matching: "normal";*/
/* tokenize: true;*/
/* m: "-5";*/
/* filter: ;*/
/* dpi: -1;*/
/* threads: 0;*/
/* scroll-method: 0;*/
/* window-format: "{w} {c} {t}";*/
/* click-to-exit: true;*/
/* global-kb: false;*/
/* max-history-size: 25;*/
/* combi-hide-mode-prefix: false;*/
/* combi-display-format: "{mode} {text}";*/
/* matching-negate-char: '-' /* unsupported */;*/
/* cache-dir: ;*/
/* window-thumbnail: false;*/
/* drun-use-desktop-cache: false;*/
/* drun-reload-desktop-cache: false;*/
/* normalize-match: false;*/
/* steal-focus: false;*/
/* application-fallback-icon: ;*/
/* refilter-timeout-limit: 300;*/
/* xserver-i300-workaround: false;*/
/* completer-mode: "filebrowser";*/
/* pid: "/run/user/1000/rofi.pid";*/
/* display-window: ;*/
/* display-run: ;*/
/* display-ssh: ;*/
/* display-drun: ;*/
/* display-combi: ;*/
/* display-keys: ;*/
/* display-filebrowser: ;*/
/* display-recursivebrowser: ;*/
/* kb-primary-paste: "Control+V,Shift+Insert";*/
/* kb-secondary-paste: "Control+v,Insert";*/
/* kb-secondary-copy: "Control+c";*/
/* kb-clear-line: "Control+w";*/
/* kb-move-front: "Control+a";*/
/* kb-move-end: "Control+e";*/
/* kb-move-word-back: "Alt+b,Control+Left";*/
/* kb-move-word-forward: "Alt+f,Control+Right";*/
/* kb-move-char-back: "Left,Control+b";*/
/* kb-move-char-forward: "Right,Control+f";*/
/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
/* kb-remove-word-forward: "Control+Alt+d";*/
/* kb-remove-char-forward: "Delete,Control+d";*/
/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
/* kb-remove-to-eol: "Control+k";*/
/* kb-remove-to-sol: "Control+u";*/
/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
/* kb-accept-custom: "Control+Return";*/
/* kb-accept-custom-alt: "Control+Shift+Return";*/
/* kb-accept-alt: "Shift+Return";*/
/* kb-delete-entry: "Shift+Delete";*/
/* kb-mode-next: "Shift+Right,Control+Tab";*/
/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
/* kb-mode-complete: "Control+l";*/
/* kb-row-left: "Control+Page_Up";*/
/* kb-row-right: "Control+Page_Down";*/
kb-row-up: "Up,Alt+k";
kb-row-down: "Down,Alt+j";
/* kb-row-tab: "";*/
/* kb-element-next: "Tab";*/
/* kb-element-prev: "ISO_Left_Tab";*/
/* kb-page-prev: "Page_Up";*/
/* kb-page-next: "Page_Down";*/
/* kb-row-first: "Home,KP_Home";*/
/* kb-row-last: "End,KP_End";*/
/* kb-row-select: "Control+space";*/
/* kb-screenshot: "Alt+S";*/
/* kb-ellipsize: "Alt+period";*/
/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
/* kb-toggle-sort: "Alt+grave";*/
/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
/* kb-custom-1: "Alt+1";*/
/* kb-custom-2: "Alt+2";*/
/* kb-custom-3: "Alt+3";*/
/* kb-custom-4: "Alt+4";*/
/* kb-custom-5: "Alt+5";*/
/* kb-custom-6: "Alt+6";*/
/* kb-custom-7: "Alt+7";*/
/* kb-custom-8: "Alt+8";*/
/* kb-custom-9: "Alt+9";*/
/* kb-custom-10: "Alt+0";*/
/* kb-custom-11: "Alt+exclam";*/
/* kb-custom-12: "Alt+at";*/
/* kb-custom-13: "Alt+numbersign";*/
/* kb-custom-14: "Alt+dollar";*/
/* kb-custom-15: "Alt+percent";*/
/* kb-custom-16: "Alt+dead_circumflex";*/
/* kb-custom-17: "Alt+ampersand";*/
/* kb-custom-18: "Alt+asterisk";*/
/* kb-custom-19: "Alt+parenleft";*/
/* kb-select-1: "Super+1";*/
/* kb-select-2: "Super+2";*/
/* kb-select-3: "Super+3";*/
/* kb-select-4: "Super+4";*/
/* kb-select-5: "Super+5";*/
/* kb-select-6: "Super+6";*/
/* kb-select-7: "Super+7";*/
/* kb-select-8: "Super+8";*/
/* kb-select-9: "Super+9";*/
/* kb-select-10: "Super+0";*/
/* kb-entry-history-up: "Control+Up";*/
/* kb-entry-history-down: "Control+Down";*/
/* ml-row-left: "ScrollLeft";*/
/* ml-row-right: "ScrollRight";*/
/* ml-row-up: "ScrollUp";*/
/* ml-row-down: "ScrollDown";*/
/* me-select-entry: "MousePrimary";*/
/* me-accept-entry: "MouseDPrimary";*/
/* me-accept-custom: "Control+MouseDPrimary";*/
timeout {
action: "kb-cancel";
delay: 0;
}
filebrowser {
directories-first: true;
sorting-method: "name";
}
}
+15
View File
@@ -0,0 +1,15 @@
#!/usr/bin/env bash
if [ x"$@" = x"Power Off" ];then
poweroff
elif [ x"$@" = x"Restart" ];then
restart
elif [ x"$@" = x"Logout" ];then
hyprctl dispatch exit
else
exit 0
fi
echo "Power Off"
echo "Restart"
echo "Logout"
+63
View File
@@ -0,0 +1,63 @@
* {
bg-light: rgba(180, 180, 180, 80%);
bg-dark: rgba(70, 70, 90, 20%);
border: rgba(70, 70, 90, 100%);
font: "CaskaydiaMono Nerd Font 16";
}
window, inputbar, listview, element {
border: 2px;
border-color: @border;
border-radius: 8px;
padding: 20px;
}
configuration {
display-run: "cmd";
display-drun: "apps";
click-to-exit: true;
}
window {
width: 25%;
background-color: @bg-light;
padding: 20px;
}
mainbox {
background-color: transparent;
}
inputbar {
background-color: @bg-dark;
padding: 10px;
}
entry, prompt, case-indicator, element-text {
background-color: transparent;
}
prompt {
padding: 2px 10px ;
margin: 0px 20px 0px 0px;
border: 0px 2px 0px 0px;
border-color: @border;
}
entry {
vertical-align: 0.5;
color: white;
}
listview {
lines: 7;
background-color: @bg-light;
}
element {
padding: 10px 20px;
}
element selected {
background-color: lightskyblue;
}
+161
View File
@@ -0,0 +1,161 @@
# Variables
set $mod Mod4
set $term kitty
set $filemanager kitty -e yazi
set $browser librewolf
set $menu rofi -show drun
# General
floating_modifier $mod normal
# Output
output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
output * bg ~/.wallpapers/saoswords.png fill
output * allow_tearing yes
output DP-1 {
mode 2560x1440@179.959Hz
position 0 400
adaptive_sync on
}
output HDMI-A-1 {
mode 1920x1080@59.939Hz
position 2560 0
transform 270
}
# Input configuration
input "type:keyboard" xkb_options caps:escape
input "type:mouse" {
natural_scroll disabled
accel_profile "flat"
pointer_accel -1
}
# Key bindings
## Spawn
bindsym $mod+Return exec $term
bindsym $mod+Shift_R exec $filemanager
bindsym $mod+Control_R exec $browser
bindsym Menu exec $menu
## Utilities
bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle
bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5%
bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5%
bindsym --locked XF86AudioMicMute exec pactl set-source-mute \@DEFAULT_SOURCE@ toggle
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+
bindsym Print exec grim
## Window Management
bindsym $mod+e kill
bindsym $mod+b splith
bindsym $mod+v splitv
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
bindsym $mod+r reload
bindsym $mod+End exec swaymsg exit
## Window Controls
### Focus windows
#### Vim-style
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
#### Arrows
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
### Move windows
#### Vim-style
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
#### Arrows
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
### Resize windows
#### Vim-style
bindsym $mod+Control+h resize shrink width 5 px or 5 ppt
bindsym $mod+Control+j resize grow height 5 px or 5 ppt
bindsym $mod+Control+k resize shrink height 5 px or 5 ppt
bindsym $mod+Control+l resize grow width 5 px or 5 ppt
#### Arrows
bindsym $mod+Control+Left resize shrink width 5 px or 5 ppt
bindsym $mod+Control+Down resize grow height 5 px or 5 ppt
bindsym $mod+Control+Up resize shrink height 5 px or 5 ppt
bindsym $mod+Control+Right resize grow width 5 px or 5 ppt
# Workspaces
## Define
workspace 1 output DP-1
workspace 2 output DP-1
workspace 3 output DP-1
workspace 4 output DP-1
workspace 5 output DP-1
workspace "alt" output HDMI-A-1
## Focus
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+q workspace "alt"
## Move
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+q move container to workspace "alt"
## Scratchpad
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show
# Status Bar
bar {
position top
# When the status_command prints a new line to stdout, swaybar updates.
# The default just shows the current date and time.
status_command while date +'%Y-%m-%d %X'; do sleep 1; done
colors {
statusline #ffffff
background #323232
inactive_workspace #32323200 #32323200 #5c5c5c
}
}
# Include Global Settings
include /etc/sway/config.d/*
+90
View File
@@ -0,0 +1,90 @@
{
"$schema": "/etc/xdg/swaync/configSchema.json",
"positionX": "right",
"positionY": "top",
"layer": "overlay",
"control-center-layer": "top",
"layer-shell": true,
"cssPriority": "application",
"control-center-margin-top": 0,
"control-center-margin-bottom": 0,
"control-center-margin-right": 0,
"control-center-margin-left": 0,
"notification-2fa-action": true,
"notification-inline-replies": false,
"notification-icon-size": 64,
"notification-body-image-height": 100,
"notification-body-image-width": 200,
"timeout": 10,
"timeout-low": 5,
"timeout-critical": 0,
"fit-to-screen": true,
"relative-timestamps": true,
"control-center-width": 500,
"control-center-height": 600,
"notification-window-width": 500,
"keyboard-shortcuts": true,
"image-visibility": "when-available",
"transition-time": 200,
"hide-on-clear": false,
"hide-on-action": true,
"script-fail-notify": true,
"scripts": {
"example-script": {
"exec": "echo 'Do something...'",
"urgency": "Normal"
},
"example-action-script": {
"exec": "echo 'Do something actionable!'",
"urgency": "Normal",
"run-on": "action"
}
},
"notification-visibility": {
"example-name": {
"state": "muted",
"urgency": "Low",
"app-name": "Spotify"
}
},
"widgets": [
"inhibitors",
"title",
"dnd",
"notifications"
],
"widget-config": {
"inhibitors": {
"text": "Inhibitors",
"button-text": "Clear All",
"clear-all-button": true
},
"title": {
"text": "Notifications",
"clear-all-button": true,
"button-text": "Clear All"
},
"dnd": {
"text": "Do Not Disturb"
},
"label": {
"max-lines": 5,
"text": "Label Text"
},
"mpris": {
"image-size": 96,
"image-radius": 12
},
"buttons-grid": {
"actions": [
{
"label": "直",
"type": "toggle",
"active": true,
"command": "sh -c '[[ $SWAYNC_TOGGLE_STATE == true ]] && nmcli radio wifi on || nmcli radio wifi off'",
"update_command": "sh -c '[[ $(nmcli radio wifi) == \"enabled\" ]] && echo true || echo false'"
}
]
}
}
}
+501
View File
@@ -0,0 +1,501 @@
@define-color cc-bg rgba(46, 46, 46, 0.7);
@define-color noti-border-color rgba(255, 255, 255, 0.15);
@define-color noti-bg rgba(48, 48, 48, 0.8);
@define-color noti-bg-opaque rgb(48, 48, 48);
@define-color noti-bg-darker rgb(38, 38, 38);
@define-color noti-bg-hover rgb(56, 56, 56);
@define-color noti-bg-hover-opaque rgb(56, 56, 56);
@define-color noti-bg-focus rgba(68, 68, 68, 0.6);
@define-color noti-close-bg rgba(255, 255, 255, 0.1);
@define-color noti-close-bg-hover rgba(255, 255, 255, 0.15);
@define-color text-color rgb(255, 255, 255);
@define-color text-color-disabled rgb(150, 150, 150);
@define-color bg-selected rgb(0, 128, 255);
.notification-row {
outline: none;
}
.notification-row:focus, .notification-row:hover {
background: @noti-bg-focus;
}
.notification-row .notification-background {
padding: 6px 12px;
}
.notification-row .notification-background .close-button {
/* The notification Close Button */
background: @noti-close-bg;
color: @text-color;
text-shadow: none;
padding: 0;
border-radius: 100%;
margin-top: 5px;
margin-right: 5px;
box-shadow: none;
border: none;
min-width: 24px;
min-height: 24px;
}
.notification-row .notification-background .close-button:hover {
box-shadow: none;
background: @noti-close-bg-hover;
transition: background 0.15s ease-in-out;
border: none;
}
.notification-row .notification-background .notification {
/* The actual notification */
border-radius: 12px;
border: 1px solid @noti-border-color;
padding: 0;
transition: background 0.15s ease-in-out;
background: @noti-bg;
}
.notification-row .notification-background .notification.low {
/* Low Priority Notification */
}
.notification-row .notification-background .notification.normal {
/* Normal Priority Notification */
}
.notification-row .notification-background .notification.critical {
/* Critical Priority Notification */
}
.notification-row .notification-background .notification .notification-action, .notification-row .notification-background .notification .notification-default-action {
padding: 4px;
margin: 0;
box-shadow: none;
background: transparent;
border: none;
color: @text-color;
transition: background 0.15s ease-in-out;
}
.notification-row .notification-background .notification .notification-action:hover, .notification-row .notification-background .notification .notification-default-action:hover {
-gtk-icon-effect: none;
background: @noti-bg-hover;
}
.notification-row .notification-background .notification .notification-default-action {
/* The large action that also displays the notification summary and body */
border-radius: 12px;
}
.notification-row .notification-background .notification .notification-default-action:not(:only-child) {
/* When alternative actions are visible */
border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content {
background: transparent;
border-radius: 12px;
padding: 4px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .image {
/* Notification Primary Image */
-gtk-icon-effect: none;
border-radius: 100px;
/* Size in px */
margin: 4px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .app-icon {
/* Notification app icon (only visible when the primary image is set) */
-gtk-icon-effect: none;
-gtk-icon-shadow: 0 1px 4px black;
margin: 6px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .text-box .summary {
/* Notification summary/title */
font-size: 16px;
font-weight: bold;
background: transparent;
color: @text-color;
text-shadow: none;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .text-box .time {
/* Notification time-ago */
font-size: 16px;
font-weight: bold;
background: transparent;
color: @text-color;
text-shadow: none;
margin-right: 30px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .text-box .body {
/* Notification body */
font-size: 15px;
font-weight: normal;
background: transparent;
color: @text-color;
text-shadow: none;
}
.notification-row .notification-background .notification .notification-default-action .notification-content progressbar {
/* The optional notification progress bar */
margin-top: 4px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .body-image {
/* The "extra" optional bottom notification image */
margin-top: 4px;
background-color: white;
border-radius: 12px;
-gtk-icon-effect: none;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply {
/* The inline reply section */
margin-top: 4px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-entry {
background: @noti-bg-darker;
color: @text-color;
caret-color: @text-color;
border: 1px solid @noti-border-color;
border-radius: 12px;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-button {
margin-left: 4px;
background: @noti-bg;
border: 1px solid @noti-border-color;
border-radius: 12px;
color: @text-color;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-button:disabled {
background: initial;
color: @text-color-disabled;
border: 1px solid @noti-border-color;
border-color: transparent;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-button:hover {
background: @noti-bg-hover;
}
.notification-row .notification-background .notification .notification-action {
/* The alternative actions below the default action */
border-top: 1px solid @noti-border-color;
border-radius: 0px;
border-right: 1px solid @noti-border-color;
}
.notification-row .notification-background .notification .notification-action:first-child {
/* add bottom border radius to eliminate clipping */
border-bottom-left-radius: 12px;
}
.notification-row .notification-background .notification .notification-action:last-child {
border-bottom-right-radius: 12px;
border-right: none;
}
.notification-group {
/* Styling only for Grouped Notifications */
}
.notification-group.low {
/* Low Priority Group */
}
.notification-group.normal {
/* Low Priority Group */
}
.notification-group.critical {
/* Low Priority Group */
}
.notification-group .notification-group-buttons, .notification-group .notification-group-headers {
margin: 0 16px;
color: @text-color;
}
.notification-group .notification-group-headers {
/* Notification Group Headers */
}
.notification-group .notification-group-headers .notification-group-icon {
color: @text-color;
}
.notification-group .notification-group-headers .notification-group-header {
color: @text-color;
}
.notification-group .notification-group-buttons {
/* Notification Group Buttons */
}
.notification-group.collapsed .notification-row .notification {
background-color: @noti-bg-opaque;
}
.notification-group.collapsed .notification-row:not(:last-child) {
/* Top notification in stack */
/* Set lower stacked notifications opacity to 0 */
}
.notification-group.collapsed .notification-row:not(:last-child) .notification-action,
.notification-group.collapsed .notification-row:not(:last-child) .notification-default-action {
opacity: 0;
}
.notification-group.collapsed:hover .notification-row:not(:only-child) .notification {
background-color: @noti-bg-hover-opaque;
}
.control-center {
/* The Control Center which contains the old notifications + widgets */
background: @cc-bg;
color: @text-color;
border-radius: 12px;
}
.control-center .control-center-list-placeholder {
/* The placeholder when there are no notifications */
opacity: 0.5;
}
.control-center .control-center-list {
/* List of notifications */
background: transparent;
}
.control-center .control-center-list .notification {
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7), 0 2px 6px 2px rgba(0, 0, 0, 0.3);
}
.control-center .control-center-list .notification .notification-default-action,
.control-center .control-center-list .notification .notification-action {
transition: opacity 400ms ease-in-out, background 0.15s ease-in-out;
}
.control-center .control-center-list .notification .notification-default-action:hover,
.control-center .control-center-list .notification .notification-action:hover {
background-color: @noti-bg-hover;
}
.blank-window {
/* Window behind control center and on all other monitors */
background: transparent;
}
.floating-notifications {
background: transparent;
}
.floating-notifications .notification {
box-shadow: none;
}
/*** Widgets ***/
/* Title widget */
.widget-title {
color: @text-color;
margin: 8px;
font-size: 1.5rem;
}
.widget-title > button {
font-size: initial;
color: @text-color;
text-shadow: none;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
border-radius: 12px;
}
.widget-title > button:hover {
background: @noti-bg-hover;
}
/* DND widget */
.widget-dnd {
color: @text-color;
margin: 8px;
font-size: 1.1rem;
}
.widget-dnd > switch {
font-size: initial;
border-radius: 12px;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
}
.widget-dnd > switch:checked {
background: @bg-selected;
}
.widget-dnd > switch slider {
background: @noti-bg-hover;
border-radius: 12px;
}
/* Label widget */
.widget-label {
margin: 8px;
}
.widget-label > label {
font-size: 1.1rem;
}
/* Mpris widget */
@define-color mpris-album-art-overlay rgba(0, 0, 0, 0.55);
@define-color mpris-button-hover rgba(0, 0, 0, 0.50);
.widget-mpris {
/* The parent to all players */
}
.widget-mpris .widget-mpris-player {
padding: 8px;
padding: 16px;
margin: 16px 20px;
background-color: @mpris-album-art-overlay;
border-radius: 12px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
}
.widget-mpris .widget-mpris-player button:hover {
/* The media player buttons (play, pause, next, etc...) */
background: @noti-bg-hover;
}
.widget-mpris .widget-mpris-player .widget-mpris-album-art {
border-radius: 12px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
}
.widget-mpris .widget-mpris-player .widget-mpris-title {
font-weight: bold;
font-size: 1.25rem;
}
.widget-mpris .widget-mpris-player .widget-mpris-subtitle {
font-size: 1.1rem;
}
.widget-mpris .widget-mpris-player > box > button {
/* Change player control buttons */
}
.widget-mpris .widget-mpris-player > box > button:hover {
background-color: @mpris-button-hover;
}
.widget-mpris > box > button {
/* Change player side buttons */
}
.widget-mpris > box > button:disabled {
/* Change player side buttons insensitive */
}
/* Buttons widget */
.widget-buttons-grid {
padding: 8px;
margin: 8px;
border-radius: 12px;
background-color: @noti-bg;
}
.widget-buttons-grid > flowbox > flowboxchild > button {
background: @noti-bg;
border-radius: 12px;
}
.widget-buttons-grid > flowbox > flowboxchild > button.toggle:checked {
/* style given to the active toggle button */
}
/* Menubar widget */
.widget-menubar > box > .menu-button-bar > button {
border: none;
background: transparent;
}
/* .AnyName { Name defined in config after #
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
.AnyName>button {
background: transparent;
border: none;
}
.AnyName>button:hover {
background-color: @noti-bg-hover;
} */
.topbar-buttons > button {
/* Name defined in config after # */
border: none;
background: transparent;
}
/* Volume widget */
.widget-volume {
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
.widget-volume > box > button {
background: transparent;
border: none;
}
.per-app-volume {
background-color: @noti-bg-alt;
padding: 4px 8px 8px 8px;
margin: 0px 8px 8px 8px;
border-radius: 12px;
}
/* Backlight widget */
.widget-backlight {
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
/* Inhibitors widget */
.widget-inhibitors {
margin: 8px;
font-size: 1.5rem;
}
.widget-inhibitors > button {
font-size: initial;
color: @text-color;
text-shadow: none;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
border-radius: 12px;
}
.widget-inhibitors > button:hover {
background: @noti-bg-hover;
}
+134
View File
@@ -0,0 +1,134 @@
// -*- mode: jsonc -*-
{
// "layer": "top", // Waybar at top layer
// "position": "bottom", // Waybar position (top|bottom|left|right)
"output": "DP-1",
"position": "top",
"height": 40, // Waybar height (to be removed for auto height)
// "width": 1280, // Waybar width
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": [
"custom/os_button",
"hyprland/workspaces",
],
"modules-center": [
"hyprland/window",
],
"modules-right": [
"tray",
"idle_inhibitor",
"pulseaudio",
"network",
"custom/notification",
"clock",
"custom/power"
],
"custom/os_button": {
"format": "󰣇",
"on-click": "rofi -show drun -theme skycontrast",
"tooltip": false
},
"custom/notification": {
"tooltip": false,
"format": "{icon}",
"format-icons": {
"notification": "<span foreground='red'><sup></sup></span>",
"none": "",
"dnd-notification": "<span foreground='red'><sup></sup></span>",
"dnd-none": "",
"inhibited-notification": "<span foreground='red'><sup></sup></span>",
"inhibited-none": "",
"dnd-inhibited-notification": "<span foreground='red'><sup></sup></span>",
"dnd-inhibited-none": ""
},
"return-type": "json",
"exec-if": "which swaync-client",
"exec": "swaync-client -swb",
"on-click": "swaync-client -t -sw",
"on-click-right": "swaync-client -d -sw",
"escape": true
},
"wlr/taskbar": {
"format": "{icon}",
"icon-size": 28,
"spacing": 3,
"on-click-middle": "close",
"tooltip-format": "{title}",
"ignore-list": [],
"on-click": "activate"
},
"hyprland/workspaces": {
"persistent-workspaces": {
"DP-1": [1,2,3,4,5],
}
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "({signalStrength}%) ",
"format-ethernet": "",
"tooltip-format": "{ifname} via {gwaddr}",
"format-linked": "{ifname} (No IP)",
"format-disconnected": "⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
"custom/media": {
"format": "{icon} {text}",
"return-type": "json",
"max-length": 40,
"format-icons": {
"spotify": "",
"default": "🎜"
},
"escape": true,
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
},
"custom/power": {
"format" : "⏻ ",
"tooltip": false,
"menu": "on-click",
"menu-file": "$HOME/.config/waybar/power_menu.xml", // Menu file in resources folder
"menu-actions": {
"poweroff": "poweroff",
"reboot": "reboot",
"suspend": "systemctl suspend",
"logout": "hyprctl dispatch exit"
}
}
}
+28
View File
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<object class="GtkMenu" id="menu">
<child>
<object class="GtkMenuItem" id="poweroff">
<property name="label">Power Off</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="reboot">
<property name="label">Reboot</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="suspend">
<property name="label">Suspend</property>
</object>
</child>
<child>
<object class="GtkSeparatorMenuItem" id="delimiter1"/>
</child>
<child>
<object class="GtkMenuItem" id="logout">
<property name="label">Logout</property>
</object>
</child>
</object>
</interface>
+290
View File
@@ -0,0 +1,290 @@
* {
font-family: "CaskaydiaMono Nerd Font", monospace;
font-weight: bold;
font-size: 16px;
color: rgba(65, 65, 65, 1);
}
window#waybar {
background-color: rgba(180, 180, 180, 0.5);
border: solid rgba(70, 70, 90, 0.90);
border-width: 2 0 2 0;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
#custom-os_button {
padding: 0 12px 0 7px;
font-size: 30px;
}
#custom-notification {
padding: 0 5px;
}
#custom-power {
background-color: lightgray;
border-radius: 100px;
margin: 5px 10px 5px 5px;
padding: 1px 1px 1px 6px;
}
.modules-left {
padding-right: 15px;
}
.modules-right {
padding-left: 15px;
}
#workspaces button label {
font-size: 20px;
color: rgba(65, 65, 65, 0.9);
padding: 0 10px 0 10px;
border: solid 2px transparent;
}
#workspaces button.empty label {
background: transparent;
border-color: transparent;
}
#workspaces button label {
background: white;
border-color: transparent;
}
#workspaces button.visible label {
color: black;
background: lightskyblue;
border: solid rgba(70, 70, 90, 1);
padding: 0 10px 0 10px;
border-width: 0 2px 0 2px;
}
.modules-left, .modules-right {
background: rgba(70, 70, 90, 0.20);
border: solid rgba(70, 70, 90, 0.95);
border-width: 2 2 2 0;
border-radius: 0 8px 8px 0;
}
.modules-right {
border-radius: 8px 0 0 8px;
border-width: 2 0 2 2;
}
/*
window#waybar.empty {
background-color: transparent;
}
window#waybar.solo {
background-color: #FFFFFF;
}
*/
window#waybar.termite {
background-color: #3F3F3F;
}
window#waybar.chromium {
background-color: #000000;
border: none;
}
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
button:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
/* you can set a style on hover for any module like this */
#custom-notification:hover,
#idle_inhibitor:hover,
#network:hover,
#clock:hover,
#pulseaudio:hover {
background-color: white;
}
#workspaces button {
padding: 0;
background-color: transparent;
color: #ffffff;
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
}
#workspaces button.focused {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#mode {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#power-profiles-daemon,
#mpd {
padding: 0 10px;
}
/* If workspaces is the leftmost module, omit left margin */
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
@keyframes blink {
to {
background-color: #ffffff;
color: #000000;
}
}
/* Using steps() instead of linear as a timing function to limit cpu usage */
#battery.critical:not(.charging) {
background-color: #f53c3c;
color: #ffffff;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#power-profiles-daemon {
padding-right: 15px;
}
#power-profiles-daemon.performance {
background-color: #f53c3c;
color: #ffffff;
}
#power-profiles-daemon.balanced {
background-color: #2980b9;
color: #ffffff;
}
#power-profiles-daemon.power-saver {
background-color: #2ecc71;
color: #000000;
}
label:focus {
background-color: #000000;
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: #eb4d4b;
}
#mpd {
background-color: #66cc99;
color: #2a5c45;
}
#mpd.disconnected {
background-color: #f53c3c;
}
#mpd.stopped {
background-color: #90b1b1;
}
#mpd.paused {
background-color: #51a37a;
}
#language {
background: #00b093;
color: #740864;
padding: 0 5px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state {
background: #97e1ad;
color: #000000;
padding: 0 0px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state > label {
padding: 0 5px;
}
#keyboard-state > label.locked {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad.empty {
background-color: transparent;
}
#privacy {
padding: 0;
}
#privacy-item {
padding: 0 5px;
color: white;
}
#privacy-item.screenshare {
background-color: #cf5700;
}
#privacy-item.audio-in {
background-color: #1ca000;
}
#privacy-item.audio-out {
background-color: #0069d4;
}
+25
View File
@@ -0,0 +1,25 @@
[Settings]
language = en
folder = ~/.wallpapers
monitors = All
wallpaper = ~/.wallpapers/mountains.jpg
show_path_in_tooltip = True
backend = swaybg
fill = fill
sort = name
color = #ffffff
subfolders = False
all_subfolders = False
show_hidden = False
show_gifs_only = False
post_command =
number_of_columns = 3
swww_transition_type = any
swww_transition_step = 90
swww_transition_angle = 0
swww_transition_duration = 2
swww_transition_fps = 60
mpvpaper_sound = False
mpvpaper_options =
use_xdg_state = False