Initial commit
This commit is contained in:
@@ -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=""
|
||||||
@@ -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"
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
source ~/.config/aliases
|
||||||
|
set fish_greeting
|
||||||
|
if status is-interactive
|
||||||
|
# Commands to run in interactive sessions can go here
|
||||||
|
end
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
#---MONITORS---#
|
||||||
|
monitor = DP-1, highres@highrr, 0x420, 1, vrr, 1
|
||||||
|
monitor = HDMI-A-1, highres@highrr, 2560x0, 1, transform, 1
|
||||||
@@ -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
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
#---PROGRAMS---#
|
||||||
|
$terminal = kitty
|
||||||
|
$fileManager = nautilus -w
|
||||||
|
$browser = librewolf
|
||||||
@@ -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
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
$theme=minimal-custom
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
|
#}
|
||||||
|
|
||||||
@@ -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
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
timeout = 50
|
||||||
|
screen_width = 2560
|
||||||
|
screen_height = 1440
|
||||||
|
|
||||||
|
[top_left]
|
||||||
|
radius = 10
|
||||||
|
dispatcher = "workspace"
|
||||||
|
args = "e-1"
|
||||||
@@ -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
|
||||||
|
}
|
||||||
@@ -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
|
||||||
Executable
+32
@@ -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
|
||||||
|
}
|
||||||
Executable
+8
@@ -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
|
||||||
@@ -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
Executable
+33
@@ -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" });
|
||||||
@@ -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" }
|
||||||
|
}
|
||||||
@@ -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" })
|
||||||
@@ -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 },
|
||||||
|
})
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
"windwp/nvim-autopairs",
|
||||||
|
event = "InsertEnter",
|
||||||
|
opts = {}
|
||||||
|
}
|
||||||
@@ -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" }
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
'numToStr/Comment.nvim',
|
||||||
|
opts = {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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 = {},
|
||||||
|
}
|
||||||
@@ -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" },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
return {
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||||
|
opts = {
|
||||||
|
options = {
|
||||||
|
theme = 'everforest'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
return {
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
opts = {}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
return {
|
||||||
|
"folke/noice.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
-- add any options here
|
||||||
|
},
|
||||||
|
dependencies = {
|
||||||
|
"MunifTanjim/nui.nvim",
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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 = {}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
return { "stevearc/oil.nvim",
|
||||||
|
keys = {
|
||||||
|
{'-', '<CMD>Oil<CR>', desc = "Open parent directory" }
|
||||||
|
},
|
||||||
|
opts = { delete_to_trash = true }
|
||||||
|
}
|
||||||
@@ -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,
|
||||||
|
}
|
||||||
@@ -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" },
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
return {
|
||||||
|
"akinsho/toggleterm.nvim",
|
||||||
|
keys = {
|
||||||
|
{'<A-.>', '<CMD>ToggleTerm<CR>', mode = {"n","v","i","t"}, desc = "Toggle Terminal" }
|
||||||
|
},
|
||||||
|
opts = {}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
"folke/tokyonight.nvim",
|
||||||
|
lazy = true,
|
||||||
|
priority = 1000,
|
||||||
|
opts = {}
|
||||||
|
}
|
||||||
@@ -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
|
||||||
|
}
|
||||||
@@ -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)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
@@ -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)
|
||||||
@@ -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";
|
||||||
|
}
|
||||||
|
}
|
||||||
Executable
+15
@@ -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"
|
||||||
@@ -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;
|
||||||
|
}
|
||||||
@@ -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/*
|
||||||
@@ -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'"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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;
|
||||||
|
}
|
||||||
@@ -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"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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>
|
||||||
@@ -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;
|
||||||
|
}
|
||||||
@@ -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
|
||||||
|
|
||||||
Reference in New Issue
Block a user