Compare commits
3 Commits
f4c1c54e72
...
b3d97a9232
Author | SHA1 | Date | |
---|---|---|---|
doryan | b3d97a9232 | ||
doryan | 0a1dc0c287 | ||
doryan | b8b8161b14 |
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 27c07dddb42f05b199319a9b66473c8de7935856
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit c3d4e576c9c86eac62884bd47c01f6faed043fc5
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 7fed01afba9392b6392408b9a0cf888522ed7a10
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 0bab1b99041719d35e44e29d9a0dfd3d3b61cf61
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit e0165eaa730dd0fa321a6a6de74f092fe87630b0
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit f13d39a1ae84219e4ee14e77d31bb774c91f2fe3
|
|
@ -0,0 +1,99 @@
|
||||||
|
|
||||||
|
|
||||||
|
# Path to your oh-my-zsh installation.
|
||||||
|
# export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
|
||||||
|
# Set name of the theme to load --- if set to "random", it will
|
||||||
|
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||||
|
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||||
|
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||||
|
#ZSH_THEME="robbyrussell"
|
||||||
|
|
||||||
|
# Set list of themes to pick from when loading at random
|
||||||
|
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||||
|
# a theme from this variable instead of looking in $ZSH/themes/
|
||||||
|
# If set to an empty array, this variable will have no effect.
|
||||||
|
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||||
|
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
# CASE_SENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to use hyphen-insensitive completion.
|
||||||
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||||
|
# HYPHEN_INSENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to change the auto-update behavior
|
||||||
|
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||||
|
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||||
|
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||||
|
|
||||||
|
# Uncomment the following line to change how often to auto-update (in days).
|
||||||
|
# zstyle ':omz:update' frequency 13
|
||||||
|
|
||||||
|
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||||
|
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable colors in ls.
|
||||||
|
# DISABLE_LS_COLORS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable auto-setting terminal title.
|
||||||
|
# DISABLE_AUTO_TITLE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to enable command auto-correction.
|
||||||
|
# ENABLE_CORRECTION="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||||
|
# You can also set it to another string to have that shown instead of the default red dots.
|
||||||
|
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||||
|
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||||
|
# COMPLETION_WAITING_DOTS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to disable marking untracked files
|
||||||
|
# under VCS as dirty. This makes repository status check for large repositories
|
||||||
|
# much, much faster.
|
||||||
|
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to change the command execution time
|
||||||
|
# stamp shown in the history command output.
|
||||||
|
# You can set one of the optional three formats:
|
||||||
|
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||||
|
# or set a custom format using the strftime function format specifications,
|
||||||
|
# see 'man strftime' for details.
|
||||||
|
# HIST_STAMPS="mm/dd/yyyy"
|
||||||
|
|
||||||
|
# Would you like to use another custom folder than $ZSH/custom?
|
||||||
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||||
|
|
||||||
|
# Which plugins would you like to load?
|
||||||
|
# Standard plugins can be found in $ZSH/plugins/
|
||||||
|
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||||
|
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||||
|
# Add wisely, as too many plugins slow down shell startup.
|
||||||
|
|
||||||
|
# source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
|
alias du="ncdu"
|
||||||
|
alias cat="bat"
|
||||||
|
alias ls="lsd"
|
||||||
|
alias vi="~/.local/bin/lvim"
|
||||||
|
|
||||||
|
eval "$(starship init zsh)"
|
||||||
|
|
||||||
|
# To custom config.zshize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
# ___MY_VMOPTIONS_SHELL_FILE="${HOME}/.jetbrains.vmoptions.sh"; if [ -f "${___MY_VMOPTIONS_SHELL_FILE}" ]; then . "${___MY_VMOPTIONS_SHELL_FILE}"; fi
|
||||||
|
|
||||||
|
bindkey "^[[1;5C" forward-word
|
||||||
|
bindkey "^[[1;5D" backward-word
|
||||||
|
bindkey "^[[P" delete-char
|
||||||
|
|
||||||
|
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||||
|
source ~/.zsh/zsh-auto-notify/auto-notify.plugin.zsh
|
||||||
|
source ~/.zsh/zsh-you-should-use/you-should-use.plugin.zsh
|
||||||
|
source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
|
source ~/.zsh/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh
|
||||||
|
|
||||||
|
autoload -U compinit; compinit
|
||||||
|
source ~/.zsh/zsh-fzf-tab/fzf-tab.plugin.zsh
|
||||||
|
|
||||||
|
SAVEHIST=1000
|
||||||
|
HISTFILE=~/.zsh_history
|
|
@ -23,16 +23,14 @@ bspc config split_ratio 0.52
|
||||||
bspc config borderless_monocle true
|
bspc config borderless_monocle true
|
||||||
bspc config gapless_monocle true
|
bspc config gapless_monocle true
|
||||||
|
|
||||||
bspc config active_border_color "#ABC2AB"
|
bspc config active_border_color "#FFBB53"
|
||||||
bspc config normal_border_color "#478061"
|
bspc config normal_border_color "#FEA3A1"
|
||||||
bspc config urgent_border_color "#B58900"
|
|
||||||
bspc config presel_border_color "#26E2FF"
|
|
||||||
|
|
||||||
bash $HOME/.config/polybar/launch.sh &
|
|
||||||
sxhkd &
|
sxhkd &
|
||||||
picom &
|
picom &
|
||||||
nitrogen --restore &
|
nitrogen --restore &
|
||||||
dunst &
|
dunst &
|
||||||
xsetroot -cursor_name left_ptr &
|
xsetroot -cursor_name left_ptr &
|
||||||
pipewire &
|
pgrep -x polybar > /dev/null || polybar &
|
||||||
pipewire-pulse
|
pgrep -x pipewire > /dev/null || pipewire &
|
||||||
|
pgrep -x pipewire-pulse > /dev/null || pipewire-pulse &
|
||||||
|
|
|
@ -8,7 +8,7 @@ color_theme = "Default"
|
||||||
theme_background = False
|
theme_background = False
|
||||||
|
|
||||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||||
truecolor = False
|
truecolor = True
|
||||||
|
|
||||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||||
|
@ -32,7 +32,7 @@ rounded_corners = True
|
||||||
#* "block" has half the resolution of braille but uses more common characters.
|
#* "block" has half the resolution of braille but uses more common characters.
|
||||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||||
graph_symbol = "braille"
|
graph_symbol = "tty"
|
||||||
|
|
||||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||||
graph_symbol_cpu = "default"
|
graph_symbol_cpu = "default"
|
||||||
|
@ -53,7 +53,7 @@ graph_symbol_proc = "default"
|
||||||
shown_boxes = "cpu mem net proc"
|
shown_boxes = "cpu mem net proc"
|
||||||
|
|
||||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||||
update_ms = 100
|
update_ms = 500
|
||||||
|
|
||||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||||
|
|
|
@ -8,3 +8,8 @@
|
||||||
2024/04/27 (01:33:15) | INFO: Logger set to INFO
|
2024/04/27 (01:33:15) | INFO: Logger set to INFO
|
||||||
2024/04/27 (01:33:17) | INFO: Logger set to INFO
|
2024/04/27 (01:33:17) | INFO: Logger set to INFO
|
||||||
2024/04/27 (01:33:17) | INFO: Logger set to DEBUG
|
2024/04/27 (01:33:17) | INFO: Logger set to DEBUG
|
||||||
|
|
||||||
|
2024/09/20 (16:23:18) | ===> btop++ v.1.3.2
|
||||||
|
2024/09/20 (16:23:18) | INFO: Logger set to INFO
|
||||||
|
2024/09/20 (16:23:19) | INFO: Logger set to DEBUG
|
||||||
|
2024/09/20 (16:23:19) | INFO: Logger set to INFO
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
starship init fish | source
|
|
||||||
|
|
||||||
alias du="ncdu"
|
|
||||||
alias cat="bat"
|
|
||||||
alias ls="lsd"
|
|
||||||
alias vi="~/.local/bin/lvim"
|
|
||||||
|
|
||||||
if status is-interactive
|
|
||||||
# Commands to run in interactive sessions can go here
|
|
||||||
end
|
|
|
@ -1,31 +0,0 @@
|
||||||
# This file contains fish universal variable definitions.
|
|
||||||
# VERSION: 3.0
|
|
||||||
SETUVAR __fish_initialized:3400
|
|
||||||
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:bryellow\x1e\x2d\x2dbackground\x3dbrblack
|
|
||||||
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
|
||||||
SETUVAR fish_color_status:red
|
|
||||||
SETUVAR fish_color_user:brgreen
|
|
||||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
|
||||||
SETUVAR fish_key_bindings:fish_default_key_bindings
|
|
||||||
SETUVAR fish_pager_color_completion:normal
|
|
||||||
SETUVAR fish_pager_color_description: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,10 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
configs=("bspwm" "btop" "cava" "lvim" "picom" "polybar" "rofi" "yazi" "sxhkd")
|
||||||
|
|
||||||
|
for config in ${configs[@]}; do
|
||||||
|
cp -r ./$config ~/.config/
|
||||||
|
done
|
||||||
|
|
||||||
|
cp ./.zshrc ~/
|
||||||
|
cp ./.zsh ~/
|
|
@ -11,7 +11,6 @@ vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "rust_analyz
|
||||||
|
|
||||||
require "plugins.init"
|
require "plugins.init"
|
||||||
require "mappings"
|
require "mappings"
|
||||||
require "configs.noice"
|
|
||||||
require "configs.nvimtree"
|
require "configs.nvimtree"
|
||||||
require "configs.bufferline"
|
require "configs.bufferline"
|
||||||
require "configs.dropbar"
|
require "configs.dropbar"
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
"nord.nvim": { "branch": "main", "commit": "6d6bae56a002a4da507ba263776e9691f47deb5f" },
|
"nord.nvim": { "branch": "main", "commit": "6d6bae56a002a4da507ba263776e9691f47deb5f" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "61574ce6e60c815b0a0c4b5655b8486ba58089a1" },
|
"nui.nvim": { "branch": "main", "commit": "61574ce6e60c815b0a0c4b5655b8486ba58089a1" },
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "14e97371b2aab6ee70054c1070a123dfaa3e217e" },
|
"nvim-autopairs": { "branch": "master", "commit": "14e97371b2aab6ee70054c1070a123dfaa3e217e" },
|
||||||
|
"nvim-bqf": { "branch": "main", "commit": "1b24dc6050c34e8cd377b6b4cd6abe40509e0187" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "cd2cf0c124d3de577fb5449746568ee8e601afc8" },
|
"nvim-cmp": { "branch": "main", "commit": "cd2cf0c124d3de577fb5449746568ee8e601afc8" },
|
||||||
"nvim-colorizer.lua": { "branch": "master", "commit": "194ec600488f7c7229668d0e80bd197f3a2b84ff" },
|
"nvim-colorizer.lua": { "branch": "master", "commit": "194ec600488f7c7229668d0e80bd197f3a2b84ff" },
|
||||||
"nvim-dap": { "branch": "master", "commit": "13ce59d4852be2bb3cd4967947985cb0ceaff460" },
|
"nvim-dap": { "branch": "master", "commit": "13ce59d4852be2bb3cd4967947985cb0ceaff460" },
|
||||||
|
|
|
@ -19,6 +19,9 @@ lvim.plugins = {
|
||||||
{
|
{
|
||||||
'rust-lang/rust.vim',
|
'rust-lang/rust.vim',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'kevinhwang91/nvim-bqf'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
'MunifTanjim/prettier.nvim'
|
'MunifTanjim/prettier.nvim'
|
||||||
},
|
},
|
||||||
|
@ -186,14 +189,21 @@ lvim.plugins = {
|
||||||
{
|
{
|
||||||
"folke/noice.nvim",
|
"folke/noice.nvim",
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
routes = {
|
||||||
|
{
|
||||||
|
filter = { event = "notify", find = "No information available" },
|
||||||
|
opts = { skip = true },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
presets = {
|
||||||
|
lsp_doc_border = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
dependencies = {
|
dependencies = {
|
||||||
-- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
|
|
||||||
"MunifTanjim/nui.nvim",
|
"MunifTanjim/nui.nvim",
|
||||||
-- OPTIONAL:
|
|
||||||
-- `nvim-notify` is only needed, if you want to use the notification view.
|
|
||||||
-- If not available, we use `mini` as the fallback
|
|
||||||
"rcarriga/nvim-notify",
|
"rcarriga/nvim-notify",
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
668
picom/picom.conf
668
picom/picom.conf
|
@ -1,57 +1,3 @@
|
||||||
#################################
|
|
||||||
# Animations #
|
|
||||||
|
|
||||||
# !These animations WILL NOT work correctly for any other wm other than phyOS-dwm fork!
|
|
||||||
|
|
||||||
# fly-in: Windows fly in from random directions to the screen
|
|
||||||
# maximize: Windows pop from center of the screen to their respective positions
|
|
||||||
# minimize: Windows minimize from their position to the center of the screen
|
|
||||||
# slide-in-center: Windows move from upper-center of the screen to their respective positions
|
|
||||||
# slide-out-center: Windows move to the upper-center of the screen
|
|
||||||
# slide-left: Windows are created from the right-most window position and slide leftwards
|
|
||||||
# slide right: Windows are created from the left-most window position and slide rightwards
|
|
||||||
# slide-down: Windows are moved from the top of the screen and slide downward
|
|
||||||
# slide-up: Windows are moved from their position to top of the screen
|
|
||||||
# squeeze: Windows are either closed or created to/from their center y-position (the animation is similar to a blinking eye)
|
|
||||||
# squeeze-bottom: Similar to squeeze, but the animation starts from bottom-most y-position
|
|
||||||
# zoom: Windows are either created or destroyed from/to their center (not the screen center)
|
|
||||||
|
|
||||||
#################################
|
|
||||||
|
|
||||||
#enable or disable animations
|
|
||||||
animations = true;
|
|
||||||
#change animation speed of windows in current tag e.g open window in current tag
|
|
||||||
animation-stiffness-in-tag = 250;
|
|
||||||
#change animation speed of windows when tag changes
|
|
||||||
animation-stiffness-tag-change = 90.0;
|
|
||||||
|
|
||||||
animation-window-mass = 0.3;
|
|
||||||
animation-dampening = 15;
|
|
||||||
animation-clamping = true;
|
|
||||||
|
|
||||||
#open windows
|
|
||||||
animation-for-open-window = "zoom";
|
|
||||||
#minimize or close windows
|
|
||||||
animation-for-unmap-window = "zoom";
|
|
||||||
#popup windows
|
|
||||||
animation-for-transient-window = "zoom"; #available options: slide-up, slide-down, slide-left, slide-right, squeeze, squeeze-bottom, zoom
|
|
||||||
|
|
||||||
#set animation for windows being transitioned out while changings tags
|
|
||||||
animation-for-prev-tag = "minimize";
|
|
||||||
#enables fading for windows being transitioned out while changings tags
|
|
||||||
enable-fading-prev-tag = true;
|
|
||||||
|
|
||||||
#set animation for windows being transitioned in while changings tags
|
|
||||||
animation-for-next-tag = "slide-in-center";
|
|
||||||
#enables fading for windows being transitioned in while changings tags
|
|
||||||
enable-fading-next-tag = true;
|
|
||||||
|
|
||||||
animation-exclude = [
|
|
||||||
"window_type = 'dock'",
|
|
||||||
"class_g = 'flameshot'",
|
|
||||||
"class_g = 'polybar'",
|
|
||||||
];
|
|
||||||
|
|
||||||
#################################
|
#################################
|
||||||
# Shadows #
|
# Shadows #
|
||||||
#################################
|
#################################
|
||||||
|
@ -96,17 +42,6 @@ shadow-offset-y = -20;
|
||||||
# shadow-exclude = "n:e:Notification";
|
# shadow-exclude = "n:e:Notification";
|
||||||
#
|
#
|
||||||
# shadow-exclude = []
|
# shadow-exclude = []
|
||||||
shadow-exclude = [
|
|
||||||
"name = 'Notification'",
|
|
||||||
"class_g = 'Conky'",
|
|
||||||
"class_g ?= 'Notify-osd'",
|
|
||||||
"class_g = 'Cairo-clock'",
|
|
||||||
"class_g = 'dwm'",
|
|
||||||
"class_g = 'chromium'",
|
|
||||||
"class_g *?= 'slop'",
|
|
||||||
"_GTK_FRAME_EXTENTS@:c"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window.
|
# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window.
|
||||||
# clip-shadow-above = []
|
# clip-shadow-above = []
|
||||||
|
|
||||||
|
@ -129,18 +64,18 @@ shadow-exclude = [
|
||||||
|
|
||||||
# Fade windows in/out when opening/closing and when opacity changes,
|
# Fade windows in/out when opening/closing and when opacity changes,
|
||||||
# unless no-fading-openclose is used.
|
# unless no-fading-openclose is used.
|
||||||
fading = true;
|
fading = false;
|
||||||
|
|
||||||
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
||||||
# fade-in-step = 0.028
|
# fade-in-step = 0.028
|
||||||
fade-in-step = 0.023;
|
fade-in-step = 0.028;
|
||||||
|
|
||||||
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
||||||
# fade-out-step = 0.03
|
# fade-out-step = 0.03
|
||||||
fade-out-step = 0.023;
|
fade-out-step = 0.03;
|
||||||
|
|
||||||
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
||||||
fade-delta = 5
|
fade-delta = 10
|
||||||
|
|
||||||
# Specify a list of conditions of windows that should not be faded.
|
# Specify a list of conditions of windows that should not be faded.
|
||||||
# fade-exclude = []
|
# fade-exclude = []
|
||||||
|
@ -165,7 +100,6 @@ fade-delta = 5
|
||||||
|
|
||||||
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
|
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
|
||||||
# inactive-opacity-override = true
|
# inactive-opacity-override = true
|
||||||
inactive-opacity-override = true;
|
|
||||||
|
|
||||||
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
|
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
|
||||||
# active-opacity = 1.0
|
# active-opacity = 1.0
|
||||||
|
@ -175,9 +109,6 @@ inactive-opacity-override = true;
|
||||||
|
|
||||||
# Specify a list of conditions of windows that should never be considered focused.
|
# Specify a list of conditions of windows that should never be considered focused.
|
||||||
# focus-exclude = []
|
# focus-exclude = []
|
||||||
focus-exclude = [
|
|
||||||
"class_g = 'Cairo-clock'" ,
|
|
||||||
];
|
|
||||||
|
|
||||||
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
||||||
# inactive-dim-fixed = 1.0
|
# inactive-dim-fixed = 1.0
|
||||||
|
@ -189,7 +120,7 @@ focus-exclude = [
|
||||||
# Sets the radius of rounded window corners. When > 0, the compositor will
|
# Sets the radius of rounded window corners. When > 0, the compositor will
|
||||||
# round the corners of windows. Does not interact well with
|
# round the corners of windows. Does not interact well with
|
||||||
# `transparent-clipping`.
|
# `transparent-clipping`.
|
||||||
corner-radius = 2;
|
corner-radius = 10;
|
||||||
|
|
||||||
# Exclude conditions for rounded corners.
|
# Exclude conditions for rounded corners.
|
||||||
#rounded-corners-exclude = [
|
#rounded-corners-exclude = [
|
||||||
|
@ -197,27 +128,9 @@ corner-radius = 2;
|
||||||
# "window_type = 'desktop'"
|
# "window_type = 'desktop'"
|
||||||
#];
|
#];
|
||||||
|
|
||||||
blur: {
|
|
||||||
method = "dual_kawase";
|
|
||||||
strength = 9;
|
|
||||||
background = true;
|
|
||||||
background-frame = false;
|
|
||||||
background-fixed = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Exclude conditions for background blur.
|
# Exclude conditions for background blur.
|
||||||
# blur-background-exclude = []
|
# blur-background-exclude = []
|
||||||
blur-background-exclude = [
|
|
||||||
"window_type = 'dock'",
|
|
||||||
"window_type = 'desktop'",
|
|
||||||
"_GTK_FRAME_EXTENTS@:c",
|
|
||||||
"class_g = 'Chromium'",
|
|
||||||
"class_g = 'Discord'",
|
|
||||||
"class_g = 'Dunst'",
|
|
||||||
"class_g = 'Peek'",
|
|
||||||
"class_g *?= 'slop'",
|
|
||||||
];
|
|
||||||
|
|
||||||
#################################
|
#################################
|
||||||
# General Settings #
|
# General Settings #
|
||||||
|
@ -229,220 +142,371 @@ blur-background-exclude = [
|
||||||
# Specify the backend to use: `xrender`, `glx`, `egl` or `xr_glx_hybrid`.
|
# Specify the backend to use: `xrender`, `glx`, `egl` or `xr_glx_hybrid`.
|
||||||
# `xrender` is the default one.
|
# `xrender` is the default one.
|
||||||
#
|
#
|
||||||
backend = "egl"
|
backend = "glx"
|
||||||
|
|
||||||
# Use higher precision during rendering, and apply dither when presenting the
|
|
||||||
# rendered screen. Reduces banding artifacts, but might cause performance
|
|
||||||
# degradation. Only works with OpenGL.
|
|
||||||
dithered-present = false;
|
dithered-present = false;
|
||||||
|
|
||||||
# Enable/disable VSync.
|
|
||||||
vsync = true;
|
vsync = true;
|
||||||
|
detect-client-opacity = true;
|
||||||
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
|
|
||||||
# dbus = false
|
|
||||||
|
|
||||||
# Try to detect WM windows (a non-override-redirect window with no
|
|
||||||
# child that has 'WM_STATE') and mark them as active.
|
|
||||||
#
|
|
||||||
# mark-wmwin-focused = false
|
|
||||||
mark-wmwin-focused = true;
|
|
||||||
|
|
||||||
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
|
|
||||||
# mark-ovredir-focused = false
|
|
||||||
mark-ovredir-focused = true;
|
|
||||||
|
|
||||||
# Try to detect windows with rounded corners and don't consider them
|
|
||||||
# shaped windows. The accuracy is not very high, unfortunately.
|
|
||||||
#
|
|
||||||
# detect-rounded-corners = false
|
|
||||||
detect-rounded-corners = false;
|
|
||||||
|
|
||||||
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
|
|
||||||
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
|
|
||||||
#
|
|
||||||
# detect-client-opacity = false
|
|
||||||
detect-client-opacity = false;
|
|
||||||
|
|
||||||
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
|
|
||||||
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
|
|
||||||
# provided that the WM supports it.
|
|
||||||
#
|
|
||||||
use-ewmh-active-win = true;
|
|
||||||
|
|
||||||
# Unredirect all windows if a full-screen opaque window is detected,
|
|
||||||
# to maximize performance for full-screen windows. Known to cause flickering
|
|
||||||
# when redirecting/unredirecting windows.
|
|
||||||
#
|
|
||||||
unredir-if-possible = false;
|
|
||||||
|
|
||||||
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
|
|
||||||
# unredir-if-possible-delay = 0
|
|
||||||
|
|
||||||
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
|
|
||||||
# unredir-if-possible-exclude = []
|
|
||||||
|
|
||||||
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
|
|
||||||
# in the same group focused at the same time.
|
|
||||||
#
|
|
||||||
# detect-transient = false
|
|
||||||
detect-transient = true;
|
detect-transient = true;
|
||||||
|
detect-client-leader = true
|
||||||
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
|
glx-no-stencil = true
|
||||||
# group focused at the same time. This usually means windows from the same application
|
glx-no-rebind-pixmap = false
|
||||||
# will be considered focused or unfocused at the same time.
|
|
||||||
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
|
|
||||||
#
|
|
||||||
# detect-client-leader = false
|
|
||||||
|
|
||||||
# Resize damaged region by a specific number of pixels.
|
|
||||||
# A positive value enlarges it while a negative one shrinks it.
|
|
||||||
# If the value is positive, those additional pixels will not be actually painted
|
|
||||||
# to screen, only used in blur calculation, and such. (Due to technical limitations,
|
|
||||||
# with use-damage, those pixels will still be incorrectly painted to screen.)
|
|
||||||
# Primarily used to fix the line corruption issues of blur,
|
|
||||||
# in which case you should use the blur radius value here
|
|
||||||
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
|
|
||||||
# with a 5x5 one you use `--resize-damage 2`, and so on).
|
|
||||||
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
|
|
||||||
#
|
|
||||||
# resize-damage = 1
|
|
||||||
|
|
||||||
# Specify a list of conditions of windows that should be painted with inverted color.
|
|
||||||
# Resource-hogging, and is not well tested.
|
|
||||||
#
|
|
||||||
# invert-color-include = []
|
|
||||||
|
|
||||||
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
|
|
||||||
# Might cause incorrect opacity when rendering transparent content (but never
|
|
||||||
# practically happened) and may not work with blur-background.
|
|
||||||
# My tests show a 15% performance boost. Recommended.
|
|
||||||
#
|
|
||||||
glx-no-stencil = true;
|
|
||||||
|
|
||||||
# GLX backend: Avoid rebinding pixmap on window damage.
|
|
||||||
# Probably could improve performance on rapid window content changes,
|
|
||||||
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
|
|
||||||
# Recommended if it works.
|
|
||||||
#
|
|
||||||
# glx-no-rebind-pixmap = false
|
|
||||||
|
|
||||||
# Disable the use of damage information.
|
|
||||||
# This cause the whole screen to be redrawn every time, instead of the part of the screen
|
|
||||||
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
|
|
||||||
# The opposing option is use-damage
|
|
||||||
#
|
|
||||||
# no-use-damage = false
|
|
||||||
use-damage = true;
|
use-damage = true;
|
||||||
|
xrender-sync-fence = false
|
||||||
# Use X Sync fence to sync clients' draw calls, to make sure all draw
|
|
||||||
# calls are finished before picom starts drawing. Needed on nvidia-drivers
|
|
||||||
# with GLX backend for some users.
|
|
||||||
#
|
|
||||||
xrender-sync-fence = true;
|
|
||||||
|
|
||||||
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
|
|
||||||
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
|
|
||||||
# in the source tree for examples.
|
|
||||||
#
|
|
||||||
window-shader-fg = "default";
|
|
||||||
|
|
||||||
# Force all windows to be painted with blending. Useful if you
|
|
||||||
# have a glx-fshader-win that could turn opaque pixels transparent.
|
|
||||||
#
|
|
||||||
# force-win-blend = true;
|
|
||||||
|
|
||||||
# Do not use EWMH to detect fullscreen windows.
|
|
||||||
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
|
||||||
#
|
|
||||||
# no-ewmh-fullscreen = false
|
|
||||||
|
|
||||||
# Dimming bright windows so their brightness doesn't exceed this set value.
|
|
||||||
# Brightness of a window is estimated by averaging all pixels in the window,
|
|
||||||
# so this could comes with a performance hit.
|
|
||||||
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
|
|
||||||
#
|
|
||||||
# max-brightness = 1.0
|
|
||||||
|
|
||||||
# Make transparent windows clip other windows like non-transparent windows do,
|
|
||||||
# instead of blending on top of them.
|
|
||||||
#
|
|
||||||
transparent-clipping = false;
|
|
||||||
|
|
||||||
# Specify a list of conditions of windows that should never have transparent
|
|
||||||
# clipping applied. Useful for screenshot tools, where you need to be able to
|
|
||||||
# see through transparent parts of the window.
|
|
||||||
#
|
|
||||||
# transparent-clipping-exclude = []
|
|
||||||
|
|
||||||
# Set the log level. Possible values are:
|
|
||||||
# "trace", "debug", "info", "warn", "error"
|
|
||||||
# in increasing level of importance. Case doesn't matter.
|
|
||||||
# If using the "TRACE" log level, it's better to log into a file
|
|
||||||
# using *--log-file*, since it can generate a huge stream of logs.
|
|
||||||
#
|
|
||||||
# log-level = "debug"
|
|
||||||
log-level = "warn";
|
log-level = "warn";
|
||||||
|
|
||||||
# Set the log file.
|
rules = ({
|
||||||
# If *--log-file* is never specified, logs will be written to stderr.
|
match = "WM_TRANSIENT_FOR@";
|
||||||
# Otherwise, logs will to written to the given file, though some of the early
|
animations = ({
|
||||||
# logs might still be written to the stderr.
|
triggers = ["open", "show"];
|
||||||
# When setting this option from the config file, it is recommended to use an absolute path.
|
opacity = {
|
||||||
#
|
curve = "linear";
|
||||||
# log-file = "/path/to/your/log/file"
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
# Show all X errors (for debugging)
|
end = "window-raw-opacity";
|
||||||
# show-all-xerrors = false
|
|
||||||
|
|
||||||
# Write process ID to a file.
|
|
||||||
# write-pid-path = "/path/to/your/log/file"
|
|
||||||
|
|
||||||
# Window type settings
|
|
||||||
#
|
|
||||||
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
|
|
||||||
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
|
|
||||||
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
|
|
||||||
# "tooltip", "notification", "combo", and "dnd".
|
|
||||||
#
|
|
||||||
# Following per window-type options are available: ::
|
|
||||||
#
|
|
||||||
# fade, shadow:::
|
|
||||||
# Controls window-type-specific shadow and fade settings.
|
|
||||||
#
|
|
||||||
# opacity:::
|
|
||||||
# Controls default opacity of the window type.
|
|
||||||
#
|
|
||||||
# focus:::
|
|
||||||
# Controls whether the window of this type is to be always considered focused.
|
|
||||||
# (By default, all window types except "normal" and "dialog" has this on.)
|
|
||||||
#
|
|
||||||
# full-shadow:::
|
|
||||||
# Controls whether shadow is drawn under the parts of the window that you
|
|
||||||
# normally won't be able to see. Useful when the window has parts of it
|
|
||||||
# transparent, and you want shadows in those areas.
|
|
||||||
#
|
|
||||||
# clip-shadow-above:::
|
|
||||||
# Controls whether shadows that would have been drawn above the window should
|
|
||||||
# be clipped. Useful for dock windows that should have no shadow painted on top.
|
|
||||||
#
|
|
||||||
# redir-ignore:::
|
|
||||||
# Controls whether this type of windows should cause screen to become
|
|
||||||
# redirected again after been unredirected. If you have unredir-if-possible
|
|
||||||
# set, and doesn't want certain window to cause unnecessary screen redirection,
|
|
||||||
# you can set this to `true`.
|
|
||||||
#
|
|
||||||
wintypes:
|
|
||||||
{
|
|
||||||
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
|
||||||
dock = { shadow = false; clip-shadow-above = true; }
|
|
||||||
dnd = { shadow = false; }
|
|
||||||
popup_menu = { opacity = 0.8; }
|
|
||||||
dropdown_menu = { opacity = 0.8; }
|
|
||||||
};
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
scale-y = {
|
||||||
|
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 0.8;
|
||||||
|
end = 1;
|
||||||
|
};
|
||||||
|
offset-y = "(-window-height/2) + (window-height/2) * scale-y";
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
},{
|
||||||
|
triggers = ["close", "hide"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "0";
|
||||||
|
};
|
||||||
|
blur-opacity = 0;
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
scale-y = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 1;
|
||||||
|
end = 0.7;
|
||||||
|
};
|
||||||
|
offset-y = "(-window-height/2) + (window-height/2) * scale-y";
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
});
|
||||||
|
}, {
|
||||||
|
match = "window_type = 'dropdown_menu' || window_type = 'popup_menu' || window_type = 'menu'";
|
||||||
|
animations = ({
|
||||||
|
triggers = ["open", "show"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
scale-y = {
|
||||||
|
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 0.8;
|
||||||
|
end = 1;
|
||||||
|
};
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
|
||||||
opacity-rule = [
|
},{
|
||||||
"100:class_g = 'St' && focused",
|
triggers = ["close", "hide"];
|
||||||
"50:class_g = 'St' && !focused",
|
opacity = {
|
||||||
"100:fullscreen",
|
curve = "linear";
|
||||||
];
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "0";
|
||||||
|
};
|
||||||
|
blur-opacity = 0;
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
scale-y = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 1;
|
||||||
|
end = 0.7;
|
||||||
|
};
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
|
||||||
|
});
|
||||||
|
}, {
|
||||||
|
match = "window_type = 'dropdown_menu' || window_type = 'popup_menu' || window_type = 'menu'";
|
||||||
|
opacity = 0.9;
|
||||||
|
}, {
|
||||||
|
match = "window_type = 'dock' || window_type = 'desktop'";
|
||||||
|
blur-background = false;
|
||||||
|
corner-radius = 0;
|
||||||
|
}, {
|
||||||
|
match = "class_g *= 'i3lock' || _NET_WM_STATE@[1] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[2] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[3] = '_NET_WM_STATE_FULLSCREEN' || _NET_WM_STATE@[4] = '_NET_WM_STATE_FULLSCREEN'";
|
||||||
|
shadow = false;
|
||||||
|
corner-radius = 0;
|
||||||
|
animations = ({
|
||||||
|
triggers = ["open", "show"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
|
||||||
|
},{
|
||||||
|
triggers = ["close", "hide"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "0";
|
||||||
|
};
|
||||||
|
blur-opacity = 0;
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
saved-image-blend = 0;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
animations = ({
|
||||||
|
triggers = ["close", "hide"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = "0";
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
offset-x = "(1 - scale-x) / 2 * window-width";
|
||||||
|
offset-y = "(1 - scale-y) / 2 * window-height";
|
||||||
|
scale-x = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 1;
|
||||||
|
end = 0.9;
|
||||||
|
};
|
||||||
|
scale-y = "scale-x";
|
||||||
|
shadow-scale-x = "scale-x";
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
shadow-offset-x = "offset-x";
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
}, {
|
||||||
|
triggers = ["open", "show"];
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
offset-x = "(1 - scale-x) / 2 * window-width";
|
||||||
|
offset-y = "(1 - scale-y) / 2 * window-height";
|
||||||
|
scale-x = {
|
||||||
|
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = 0.95;
|
||||||
|
end = 1;
|
||||||
|
};
|
||||||
|
scale-y = "scale-x";
|
||||||
|
shadow-scale-x = "scale-x";
|
||||||
|
shadow-scale-y = "scale-y";
|
||||||
|
shadow-offset-x = "offset-x";
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
},
|
||||||
|
|
||||||
|
# Half Window Size Desktop Switch
|
||||||
|
{
|
||||||
|
triggers = ["workspace-out"];
|
||||||
|
offset-y = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "- window-height / 2";
|
||||||
|
};
|
||||||
|
scale-x = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.10;
|
||||||
|
start = "0";
|
||||||
|
end = "- window-height / 2";
|
||||||
|
|
||||||
|
}
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = "0";
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
}, {
|
||||||
|
triggers = ["workspace-out-inverse"];
|
||||||
|
offset-y = {
|
||||||
|
curve = "cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "window-height / 2";
|
||||||
|
};
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-raw-opacity-before";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = "0";
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
}, {
|
||||||
|
triggers = ["workspace-in"];
|
||||||
|
offset-y = {
|
||||||
|
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "window-height / 2";
|
||||||
|
end = "0";
|
||||||
|
};
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
}, {
|
||||||
|
triggers = ["workspace-in-inverse"];
|
||||||
|
offset-y = {
|
||||||
|
curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "- window-height / 2";
|
||||||
|
end = "0";
|
||||||
|
};
|
||||||
|
shadow-offset-y = "offset-y";
|
||||||
|
opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
blur-opacity = {
|
||||||
|
curve = "linear";
|
||||||
|
duration = 0.1;
|
||||||
|
delay = 0.15;
|
||||||
|
start = "0";
|
||||||
|
end = "window-raw-opacity";
|
||||||
|
};
|
||||||
|
shadow-opacity = "opacity";
|
||||||
|
},
|
||||||
|
# {
|
||||||
|
# triggers = [ "geometry" ];
|
||||||
|
# crop-width = {
|
||||||
|
# curve = "cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
# duration = 0.5;
|
||||||
|
# start = "window-width-before";
|
||||||
|
# end = "window-width";
|
||||||
|
# };
|
||||||
|
# }
|
||||||
|
|
||||||
|
# Full Opaque Desktop Switch
|
||||||
|
#{
|
||||||
|
# triggers = ["workspace-out"];
|
||||||
|
# offset-y = {
|
||||||
|
# timing = "0.15s cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
# start = "0";
|
||||||
|
# end = "-window-monitor-height";
|
||||||
|
# };
|
||||||
|
# shadow-offset-y = "offset-y";
|
||||||
|
# opacity = {
|
||||||
|
# timing = "0.2s linear";
|
||||||
|
# start = "window-raw-opacity-before";
|
||||||
|
# end = "window-raw-opacity-before";
|
||||||
|
# };
|
||||||
|
# blur-opacity = "opacity";
|
||||||
|
# shadow-opacity = "opacity";
|
||||||
|
#}, {
|
||||||
|
# triggers = ["workspace-out-inverse"];
|
||||||
|
# offset-y = {
|
||||||
|
# timing = "0.15s cubic-bezier(0.21, 0.02, 0.76, 0.36)";
|
||||||
|
# start = "0";
|
||||||
|
# end = "window-monitor-height";
|
||||||
|
# };
|
||||||
|
# shadow-offset-y = "offset-y";
|
||||||
|
# opacity = {
|
||||||
|
# timing = "0.2s linear";
|
||||||
|
# start = "window-raw-opacity-before";
|
||||||
|
# end = "window-raw-opacity-before";
|
||||||
|
# };
|
||||||
|
# blur-opacity = "opacity";
|
||||||
|
# shadow-opacity = "opacity";
|
||||||
|
#}, {
|
||||||
|
# triggers = ["workspace-in"];
|
||||||
|
# offset-y = {
|
||||||
|
# timing = "0.15s cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
# start = "window-monitor-height";
|
||||||
|
# end = "0";
|
||||||
|
# };
|
||||||
|
# shadow-offset-y = "offset-y";
|
||||||
|
# opacity = {
|
||||||
|
# timing = "0.2s linear";
|
||||||
|
# start = "window-raw-opacity";
|
||||||
|
# end = "window-raw-opacity";
|
||||||
|
# };
|
||||||
|
# blur-opacity = "opacity";
|
||||||
|
# shadow-opacity = "opacity";
|
||||||
|
#}, {
|
||||||
|
# triggers = ["workspace-in-inverse"];
|
||||||
|
# offset-y = {
|
||||||
|
# timing = "0.15s cubic-bezier(0.24, 0.64, 0.79, 0.98)";
|
||||||
|
# start = "-window-monitor-height";
|
||||||
|
# end = "0";
|
||||||
|
# };
|
||||||
|
# shadow-offset-y = "offset-y";
|
||||||
|
# opacity = {
|
||||||
|
# timing = "0.2s linear";
|
||||||
|
# start = "window-raw-opacity";
|
||||||
|
# end = "window-raw-opacity";
|
||||||
|
# };
|
||||||
|
# blur-opacity = "opacity";
|
||||||
|
# shadow-opacity = "opacity";
|
||||||
|
#}
|
||||||
|
|
||||||
|
)
|
||||||
|
|
|
@ -17,18 +17,18 @@
|
||||||
;==========================================================
|
;==========================================================
|
||||||
|
|
||||||
[colors]
|
[colors]
|
||||||
background = #282A2E
|
background = #353F5D
|
||||||
background-alt = #373B41
|
background-alt = #414D72
|
||||||
foreground = #C5C8C6
|
foreground = #C8C7D1
|
||||||
primary = #89A989
|
primary = #FFCC4D
|
||||||
secondary = #478061
|
secondary = #FF7FA3
|
||||||
alert = #A54242
|
alert = #A54242
|
||||||
disabled = #707880
|
disabled = #707880
|
||||||
|
|
||||||
[bar/example]
|
[bar/example]
|
||||||
width = 100%
|
width = 100%
|
||||||
height = 18pt
|
height = 18pt
|
||||||
radius = 7pt
|
radius = 11t
|
||||||
|
|
||||||
; dpi = 96
|
; dpi = 96
|
||||||
|
|
||||||
|
@ -116,12 +116,16 @@ label-unmounted-foreground = ${colors.disabled}
|
||||||
[module/pulseaudio]
|
[module/pulseaudio]
|
||||||
type = internal/pulseaudio
|
type = internal/pulseaudio
|
||||||
|
|
||||||
format-volume = %{F#89A989}<ramp-volume>%{F-} <label-volume>
|
ramp-volume-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
format-volume = <ramp-volume> <label-volume>
|
||||||
|
|
||||||
label-volume = %percentage%%
|
label-volume = %percentage%%
|
||||||
|
|
||||||
label-muted = muted
|
label-muted = muted
|
||||||
|
|
||||||
|
click-right = ~/.config/rofi/volume/launch.sh
|
||||||
|
|
||||||
; Only applies if <ramp-volume> is used
|
; Only applies if <ramp-volume> is used
|
||||||
ramp-volume-0 =
|
ramp-volume-0 =
|
||||||
ramp-volume-1 =
|
ramp-volume-1 =
|
||||||
|
@ -156,15 +160,18 @@ label = %percentage:2%%
|
||||||
[network-base]
|
[network-base]
|
||||||
type = internal/network
|
type = internal/network
|
||||||
interval = 5
|
interval = 5
|
||||||
format-connected = <label-connected>
|
|
||||||
|
|
||||||
format-disconnected = <label-disconnected>
|
format-disconnected = <label-disconnected>
|
||||||
label-disconnected = %{F#89A989} %{F#707880} disconnected
|
label-disconnected = disconnected
|
||||||
|
|
||||||
[module/wlan]
|
[module/wlan]
|
||||||
inherit = network-base
|
inherit = network-base
|
||||||
interface-type = wireless
|
interface-type = wireless
|
||||||
|
|
||||||
format-connected = %{F#89A989}<ramp-signal>%{F-} <label-connected>
|
ramp-signal-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
format-connected = <ramp-signal> <label-connected>
|
||||||
|
|
||||||
label-connected = %essid% %local_ip%
|
label-connected = %essid% %local_ip%
|
||||||
|
|
||||||
|
@ -178,7 +185,14 @@ ramp-signal-5 =
|
||||||
[module/eth]
|
[module/eth]
|
||||||
inherit = network-base
|
inherit = network-base
|
||||||
interface-type = wired
|
interface-type = wired
|
||||||
label-connected = %{F#89A989} %{F-} %local_ip%
|
|
||||||
|
format-connected = %{} <label-connected>
|
||||||
|
|
||||||
|
format-connected-prefix =
|
||||||
|
format-connected-prefix-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
label-connected = %local_ip%
|
||||||
|
label-connected-foreground = ${colors.foreground}
|
||||||
|
|
||||||
[module/date]
|
[module/date]
|
||||||
type = internal/date
|
type = internal/date
|
||||||
|
@ -321,52 +335,9 @@ pseudo-transparency = true
|
||||||
; vim:ft=dosini
|
; vim:ft=dosini
|
||||||
;
|
;
|
||||||
[module/powermenu]
|
[module/powermenu]
|
||||||
type = custom/menu
|
type = custom/text
|
||||||
|
|
||||||
expand-right = true
|
content = " "
|
||||||
|
content-foreground = ${colors.urgent}
|
||||||
|
|
||||||
format-spacing = 1
|
click-left = ~/.config/rofi/power/launch.sh
|
||||||
|
|
||||||
label-open = " "
|
|
||||||
label-open-foreground = ${colors.urgent}
|
|
||||||
label-close =
|
|
||||||
label-close-foreground = ${colors.success}
|
|
||||||
label-separator = |
|
|
||||||
label-separator-foreground = ${colors.foreground}
|
|
||||||
|
|
||||||
;Powermenu
|
|
||||||
menu-0-0 = ""
|
|
||||||
menu-0-0-exec = menu-open-1
|
|
||||||
menu-0-0-foreground = ${colors.urgent}
|
|
||||||
|
|
||||||
menu-0-1 = ""
|
|
||||||
menu-0-1-exec = menu-open-2
|
|
||||||
menu-0-1-foreground = ${colors.urgent}
|
|
||||||
|
|
||||||
menu-0-2 = " "
|
|
||||||
menu-0-2-exec = menu-open-3
|
|
||||||
menu-0-2-foreground = ${colors.warning}
|
|
||||||
|
|
||||||
;Reboot
|
|
||||||
menu-1-0 = "Reboot"
|
|
||||||
menu-1-0-exec = loginctl reboot
|
|
||||||
menu-1-0-foreground = ${colors.urgent}
|
|
||||||
menu-1-1 = "Cancel "
|
|
||||||
menu-1-1-exec = menu-open-0
|
|
||||||
menu-1-1-foreground = ${colors.success}
|
|
||||||
|
|
||||||
;Shutdown
|
|
||||||
menu-2-0 = "Power off"
|
|
||||||
menu-2-0-exec = loginctl poweroff
|
|
||||||
menu-2-0-foreground = ${colors.urgent}
|
|
||||||
menu-2-1 = "Cancel "
|
|
||||||
menu-2-1-exec = menu-open-0
|
|
||||||
menu-2-1-foreground = ${colors.success}
|
|
||||||
|
|
||||||
;Sleep
|
|
||||||
menu-3-0 = "Sleep"
|
|
||||||
menu-3-0-exec = loginctl suspend
|
|
||||||
menu-3-0-foreground = ${colors.urgent}
|
|
||||||
menu-3-1 = "Cancel "
|
|
||||||
menu-3-1-exec = menu-open-0
|
|
||||||
menu-3-1-foreground = ${colors.success}
|
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
* {
|
||||||
|
selected: #FFCC4D;
|
||||||
|
background: #353F5D;
|
||||||
|
foreground: #C8C7D1;
|
||||||
|
background-alt: #414D72;
|
||||||
|
urgent: #353F5D;
|
||||||
|
active: #FF7FA3;
|
||||||
|
}
|
|
@ -0,0 +1,323 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Author : Aditya Shakya (adi1090x)
|
||||||
|
* Github : @adi1090x
|
||||||
|
*
|
||||||
|
* Rofi Theme File
|
||||||
|
* Rofi Version: 1.7.3
|
||||||
|
**/
|
||||||
|
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
modi: "drun,run,filebrowser,ssh,window";
|
||||||
|
show-icons: false;
|
||||||
|
display-drun: " Apps";
|
||||||
|
display-run: " Run";
|
||||||
|
display-filebrowser: " Files";
|
||||||
|
display-window: " Windows";
|
||||||
|
display-ssh: " SSH";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
window-format: "{w} · {c} · {t}";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Global Properties -----*****/
|
||||||
|
|
||||||
|
@import "../colors.rasi"
|
||||||
|
|
||||||
|
* {
|
||||||
|
border-colour: var(selected);
|
||||||
|
handle-colour: var(selected);
|
||||||
|
background-colour: var(background);
|
||||||
|
foreground-colour: var(foreground);
|
||||||
|
alternate-background: var(background-alt);
|
||||||
|
normal-background: var(background);
|
||||||
|
normal-foreground: var(foreground);
|
||||||
|
urgent-background: var(urgent);
|
||||||
|
urgent-foreground: var(background);
|
||||||
|
active-background: var(active);
|
||||||
|
active-foreground: var(background);
|
||||||
|
selected-normal-background: var(selected);
|
||||||
|
selected-normal-foreground: var(background);
|
||||||
|
selected-urgent-background: var(active);
|
||||||
|
selected-urgent-foreground: var(background);
|
||||||
|
selected-active-background: var(urgent);
|
||||||
|
selected-active-foreground: var(background);
|
||||||
|
alternate-normal-background: var(background);
|
||||||
|
alternate-normal-foreground: var(foreground);
|
||||||
|
alternate-urgent-background: var(urgent);
|
||||||
|
alternate-urgent-foreground: var(background);
|
||||||
|
alternate-active-background: var(active);
|
||||||
|
alternate-active-foreground: var(background);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Window -----*****/
|
||||||
|
window {
|
||||||
|
/* properties for window widget */
|
||||||
|
transparency: "real";
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 800px;
|
||||||
|
x-offset: 0px;
|
||||||
|
y-offset: 0px;
|
||||||
|
|
||||||
|
/* properties for all widgets */
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 35px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
cursor: "default";
|
||||||
|
/* Backgroud Colors */
|
||||||
|
background-color: @background-colour;
|
||||||
|
/* Backgroud Image */
|
||||||
|
//background-image: url("/path/to/image.png", none);
|
||||||
|
/* Simple Linear Gradient */
|
||||||
|
//background-image: linear-gradient(red, orange, pink, purple);
|
||||||
|
/* Directional Linear Gradient */
|
||||||
|
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
|
||||||
|
/* Angle Linear Gradient */
|
||||||
|
//background-image: linear-gradient(45, cyan, purple, indigo);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Box -----*****/
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 20px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "inputbar", "message", "custombox" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- A Custom Box -----*****/
|
||||||
|
custombox {
|
||||||
|
spacing: 10px;
|
||||||
|
background-color: @background-colour;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
orientation: horizontal;
|
||||||
|
children: [ "mode-switcher", "listview" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Inputbar -----*****/
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 8px 12px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 50%;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
children: [ "textbox-prompt-colon", "entry" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enabled: true;
|
||||||
|
padding: 5px 0px;
|
||||||
|
expand: false;
|
||||||
|
str: "";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
entry {
|
||||||
|
enabled: true;
|
||||||
|
padding: 5px 0px;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: text;
|
||||||
|
placeholder: "Search...";
|
||||||
|
placeholder-color: inherit;
|
||||||
|
}
|
||||||
|
num-filtered-rows {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
textbox-num-sep {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
str: "/";
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
num-rows {
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
case-indicator {
|
||||||
|
enabled: true;
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Listview -----*****/
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: true;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
|
||||||
|
spacing: 5px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: "default";
|
||||||
|
}
|
||||||
|
scrollbar {
|
||||||
|
handle-width: 5px ;
|
||||||
|
handle-color: @handle-colour;
|
||||||
|
border-radius: 50%;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Elements -----*****/
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 10px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
element normal.normal {
|
||||||
|
background-color: var(normal-background);
|
||||||
|
text-color: var(normal-foreground);
|
||||||
|
}
|
||||||
|
element normal.urgent {
|
||||||
|
background-color: var(urgent-background);
|
||||||
|
text-color: var(urgent-foreground);
|
||||||
|
}
|
||||||
|
element normal.active {
|
||||||
|
background-color: var(active-background);
|
||||||
|
text-color: var(active-foreground);
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
element selected.urgent {
|
||||||
|
background-color: var(selected-urgent-background);
|
||||||
|
text-color: var(selected-urgent-foreground);
|
||||||
|
}
|
||||||
|
element selected.active {
|
||||||
|
background-color: var(selected-active-background);
|
||||||
|
text-color: var(selected-active-foreground);
|
||||||
|
}
|
||||||
|
element alternate.normal {
|
||||||
|
background-color: var(alternate-normal-background);
|
||||||
|
text-color: var(alternate-normal-foreground);
|
||||||
|
}
|
||||||
|
element alternate.urgent {
|
||||||
|
background-color: var(alternate-urgent-background);
|
||||||
|
text-color: var(alternate-urgent-foreground);
|
||||||
|
}
|
||||||
|
element alternate.active {
|
||||||
|
background-color: var(alternate-active-background);
|
||||||
|
text-color: var(alternate-active-foreground);
|
||||||
|
}
|
||||||
|
element-icon {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
size: 24px;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
highlight: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Mode Switcher -----*****/
|
||||||
|
mode-switcher{
|
||||||
|
enabled: true;
|
||||||
|
expand: false;
|
||||||
|
orientation: vertical;
|
||||||
|
spacing: 10px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
button {
|
||||||
|
padding: 0px 20px 0px 20px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 50%;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
button selected {
|
||||||
|
background-color: var(selected-normal-background);
|
||||||
|
text-color: var(selected-normal-foreground);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Message -----*****/
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px 0px 0px 0px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
padding: 12px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 8px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @alternate-background;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.0;
|
||||||
|
highlight: none;
|
||||||
|
placeholder-color: @foreground-colour;
|
||||||
|
blink: true;
|
||||||
|
markup: true;
|
||||||
|
}
|
||||||
|
error-message {
|
||||||
|
padding: 10px;
|
||||||
|
border: 2px solid;
|
||||||
|
border-radius: 8px;
|
||||||
|
border-color: @border-colour;
|
||||||
|
background-color: @background-colour;
|
||||||
|
text-color: @foreground-colour;
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
rofi -show drun -config ~/.config/rofi/launcher/app_menu.rasi -verbose
|
Binary file not shown.
After Width: | Height: | Size: 55 KiB |
|
@ -0,0 +1,105 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
## Author : Aditya Shakya (adi1090x)
|
||||||
|
## Github : @adi1090x
|
||||||
|
#
|
||||||
|
## Rofi : Power Menu
|
||||||
|
#
|
||||||
|
## Available Styles
|
||||||
|
#
|
||||||
|
## style-1 style-2 style-3 style-4 style-5
|
||||||
|
|
||||||
|
# Current Theme
|
||||||
|
dir="$HOME/.config/rofi/power/power_menu.rasi"
|
||||||
|
|
||||||
|
# CMDs
|
||||||
|
uptime="`uptime -p | sed -e 's/up //g'`"
|
||||||
|
host=`hostname`
|
||||||
|
|
||||||
|
# Options
|
||||||
|
shutdown='⏻'
|
||||||
|
reboot=''
|
||||||
|
lock=''
|
||||||
|
suspend=''
|
||||||
|
logout=''
|
||||||
|
yes=''
|
||||||
|
no=''
|
||||||
|
|
||||||
|
# Rofi CMD
|
||||||
|
rofi_cmd() {
|
||||||
|
rofi -dmenu \
|
||||||
|
-mesg " Uptime: $uptime" \
|
||||||
|
-theme ${dir}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Confirmation CMD
|
||||||
|
confirm_cmd() {
|
||||||
|
rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 240px;}' \
|
||||||
|
-theme-str 'listview {columns: 2; lines: 1;}' \
|
||||||
|
-theme-str 'element-text {horizontal-align: 0.48;}' \
|
||||||
|
-theme-str 'textbox {horizontal-align: 0.5;}' \
|
||||||
|
-dmenu \
|
||||||
|
-p 'Confirmation' \
|
||||||
|
-mesg 'Are you Sure?' \
|
||||||
|
-theme ${dir}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Ask for confirmation
|
||||||
|
confirm_exit() {
|
||||||
|
echo -e "$yes\n$no" | confirm_cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
# Pass variables to rofi dmenu
|
||||||
|
run_rofi() {
|
||||||
|
echo -e "$lock\n$suspend\n$logout\n$reboot\n$shutdown" | rofi_cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
# Execute Command
|
||||||
|
run_cmd() {
|
||||||
|
selected="$(confirm_exit)"
|
||||||
|
if [[ "$selected" == "$yes" ]]; then
|
||||||
|
if [[ $1 == '--shutdown' ]]; then
|
||||||
|
loginctl poweroff
|
||||||
|
elif [[ $1 == '--reboot' ]]; then
|
||||||
|
loginctl reboot
|
||||||
|
elif [[ $1 == '--suspend' ]]; then
|
||||||
|
loginctl suspend
|
||||||
|
elif [[ $1 == '--logout' ]]; then
|
||||||
|
if [[ "$DESKTOP_SESSION" == 'openbox' ]]; then
|
||||||
|
openbox --exit
|
||||||
|
elif [[ "$DESKTOP_SESSION" == 'bspwm' ]]; then
|
||||||
|
bspc quit
|
||||||
|
elif [[ "$DESKTOP_SESSION" == 'i3' ]]; then
|
||||||
|
i3-msg exit
|
||||||
|
elif [[ "$DESKTOP_SESSION" == 'plasma' ]]; then
|
||||||
|
qdbus org.kde.ksmserver /KSMServer logout 0 0 0
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Actions
|
||||||
|
chosen="$(run_rofi)"
|
||||||
|
case ${chosen} in
|
||||||
|
$shutdown)
|
||||||
|
run_cmd --shutdown
|
||||||
|
;;
|
||||||
|
$reboot)
|
||||||
|
run_cmd --reboot
|
||||||
|
;;
|
||||||
|
$lock)
|
||||||
|
if [[ -x '/usr/bin/betterlockscreen' ]]; then
|
||||||
|
betterlockscreen -l
|
||||||
|
elif [[ -x '/usr/bin/i3lock' ]]; then
|
||||||
|
i3lock
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
$suspend)
|
||||||
|
run_cmd --suspend
|
||||||
|
;;
|
||||||
|
$logout)
|
||||||
|
run_cmd --logout
|
||||||
|
;;
|
||||||
|
esac
|
|
@ -0,0 +1,138 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Author : Aditya Shakya (adi1090x)
|
||||||
|
* Github : @adi1090x
|
||||||
|
*
|
||||||
|
* Rofi Theme File
|
||||||
|
* Rofi Version: 1.7.3
|
||||||
|
**/
|
||||||
|
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
show-icons: false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
USE_BUTTONS=YES
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import "../colors.rasi"
|
||||||
|
|
||||||
|
/*****----- Main Window -----*****/
|
||||||
|
window {
|
||||||
|
transparency: "real";
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 550px;
|
||||||
|
x-offset: 0px;
|
||||||
|
y-offset: 0px;
|
||||||
|
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 20px;
|
||||||
|
border-color: @selected;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: @background;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Main Box -----*****/
|
||||||
|
mainbox {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 0px;
|
||||||
|
border-color: @selected;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "inputbar", "listview", "message" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Inputbar -----*****/
|
||||||
|
inputbar {
|
||||||
|
enabled: true;
|
||||||
|
spacing: 0px;
|
||||||
|
padding: 100px 80px;
|
||||||
|
background-color: transparent;
|
||||||
|
background-image: url("/home/doryan/.config/rofi/power/bg.png", width);
|
||||||
|
children: [ "textbox-prompt-colon", "dummy","prompt"];
|
||||||
|
}
|
||||||
|
|
||||||
|
dummy {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enabled: false;
|
||||||
|
expand: false;
|
||||||
|
str: " System";
|
||||||
|
padding: 12px;
|
||||||
|
border-radius: 100%;
|
||||||
|
background-color: @selected;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
prompt {
|
||||||
|
enabled: false;
|
||||||
|
padding: 12px;
|
||||||
|
border-radius: 100%;
|
||||||
|
background-color: @active;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Listview -----*****/
|
||||||
|
listview {
|
||||||
|
enabled: true;
|
||||||
|
columns: 5;
|
||||||
|
lines: 1;
|
||||||
|
cycle: true;
|
||||||
|
dynamic: true;
|
||||||
|
scrollbar: false;
|
||||||
|
layout: vertical;
|
||||||
|
reverse: false;
|
||||||
|
fixed-height: true;
|
||||||
|
fixed-columns: true;
|
||||||
|
|
||||||
|
spacing: 15px;
|
||||||
|
margin: 15px;
|
||||||
|
background-color: transparent;
|
||||||
|
cursor: "default";
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Elements -----*****/
|
||||||
|
element {
|
||||||
|
enabled: true;
|
||||||
|
padding: 23px 10px;
|
||||||
|
border-radius: 100%;
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: @foreground;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
element-text {
|
||||||
|
font: "FiraCode Nerd Font Propo 28";
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
|
element selected.normal {
|
||||||
|
background-color: var(selected);
|
||||||
|
text-color: var(background);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****----- Message -----*****/
|
||||||
|
message {
|
||||||
|
enabled: true;
|
||||||
|
margin: 0px 15px 15px 15px;
|
||||||
|
padding: 15px;
|
||||||
|
border-radius: 100%;
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: @foreground;
|
||||||
|
}
|
||||||
|
textbox {
|
||||||
|
background-color: inherit;
|
||||||
|
text-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.48;
|
||||||
|
}
|
|
@ -0,0 +1,54 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
theme_path="$HOME/.config/rofi/volume/volume_menu.rasi"
|
||||||
|
|
||||||
|
volume=''
|
||||||
|
microphone=''
|
||||||
|
pavucontrol=''
|
||||||
|
|
||||||
|
rofi_cmd() {
|
||||||
|
rofi -theme "$theme_path" -dmenu -markup-rows
|
||||||
|
}
|
||||||
|
|
||||||
|
# Microphone Info
|
||||||
|
amixer get Capture | grep '\[on\]' &>/dev/null
|
||||||
|
if [[ "$?" == 0 ]]; then
|
||||||
|
microphone=''
|
||||||
|
else
|
||||||
|
microphone=''
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Microphone Info
|
||||||
|
amixer get Master | grep '\[on\]' &>/dev/null
|
||||||
|
if [[ "$?" == 0 ]]; then
|
||||||
|
volume=''
|
||||||
|
else
|
||||||
|
volume=''
|
||||||
|
fi
|
||||||
|
|
||||||
|
run_cmd() {
|
||||||
|
if [[ "$1" == '--opt1' ]]; then
|
||||||
|
amixer set Master toggle
|
||||||
|
elif [[ "$1" == '--opt2' ]]; then
|
||||||
|
amixer set Capture toggle
|
||||||
|
elif [[ "$1" == '--opt3' ]]; then
|
||||||
|
exec pavucontrol
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
run() {
|
||||||
|
echo -e "$volume\n$microphone\n$pavucontrol" | rofi_cmd
|
||||||
|
}
|
||||||
|
|
||||||
|
chosen="$(run)"
|
||||||
|
case ${chosen} in
|
||||||
|
$volume)
|
||||||
|
run_cmd --opt1
|
||||||
|
;;
|
||||||
|
$microphone)
|
||||||
|
run_cmd --opt2
|
||||||
|
;;
|
||||||
|
$pavucontrol)
|
||||||
|
run_cmd --opt3
|
||||||
|
;;
|
||||||
|
esac
|
|
@ -0,0 +1,83 @@
|
||||||
|
/*****----- Configuration -----*****/
|
||||||
|
configuration {
|
||||||
|
show-icons: false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
USE_BUTTONS=YES
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import "../colors.rasi"
|
||||||
|
|
||||||
|
/*****----- Main Window -----*****/
|
||||||
|
window {
|
||||||
|
transparency: "real";
|
||||||
|
location: east;
|
||||||
|
anchor: east;
|
||||||
|
fullscreen: false;
|
||||||
|
width: 80px;
|
||||||
|
x-offset: -20px;
|
||||||
|
y-offset: 0px;
|
||||||
|
|
||||||
|
padding: 0px;
|
||||||
|
border: 0px solid;
|
||||||
|
border-radius: 100%;
|
||||||
|
border-color: @selected;
|
||||||
|
cursor: "default";
|
||||||
|
background-color: @background;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "listview" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
inputbar {
|
||||||
|
enable: true;
|
||||||
|
background-color: transparent;
|
||||||
|
children: [ "textbox-prompt-colon", "dummy", "prompt" ];
|
||||||
|
}
|
||||||
|
|
||||||
|
promt {
|
||||||
|
enable: false;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
textbox-prompt-colon {
|
||||||
|
enable: false;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
dummy {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
columns: 1;
|
||||||
|
lines: 3;
|
||||||
|
background-color: transparent;
|
||||||
|
spacing: 10px;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
element {
|
||||||
|
background-color: @background-alt;
|
||||||
|
text-color: @foreground;
|
||||||
|
border-radius: 100%;
|
||||||
|
cursor: pointer;
|
||||||
|
padding: 15px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-text {
|
||||||
|
font: "FiraCode Nerd Font Propo 18";
|
||||||
|
background-color: transparent;
|
||||||
|
text-color: inherit;
|
||||||
|
cursor: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
horizontal-align: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected.normal {
|
||||||
|
background-color: @selected;
|
||||||
|
text-color: @background;
|
||||||
|
}
|
|
@ -12,8 +12,7 @@ super + Return
|
||||||
tabbed -r 2 st -w ''
|
tabbed -r 2 st -w ''
|
||||||
# program launcher
|
# program launcher
|
||||||
super + d
|
super + d
|
||||||
rofi -show drun -
|
~/.config/rofi/launcher/launch.sh
|
||||||
|
|
||||||
|
|
||||||
# make sxhkd reload its configuration files:
|
# make sxhkd reload its configuration files:
|
||||||
super + Escape
|
super + Escape
|
||||||
|
|
|
@ -41,3 +41,7 @@ setup {
|
||||||
-- Available values: ui.Border.PLAIN, ui.Border.ROUNDED
|
-- Available values: ui.Border.PLAIN, ui.Border.ROUNDED
|
||||||
type = ui.Border.ROUNDED,
|
type = ui.Border.ROUNDED,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
require("archivemount"):setup()
|
||||||
|
require("chmod")
|
||||||
|
require("starship").setup()
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
[[manager.prepend_keymap]]
|
||||||
|
on = "<C-n>"
|
||||||
|
run = '''
|
||||||
|
shell 'dragon -x -i -T "$1"' --confirm
|
||||||
|
'''
|
||||||
|
|
||||||
|
[[manager.prepend_keymap]]
|
||||||
|
on = "y"
|
||||||
|
run = [ '''
|
||||||
|
shell 'echo "$@" | xclip -i -selection clipboard -t text/uri-list' --confirm
|
||||||
|
''', "yank" ]
|
||||||
|
|
||||||
|
[[manager.prepend_keymap]]
|
||||||
|
on = [ "m", "a" ]
|
||||||
|
run = "plugin archivemount --args=mount"
|
||||||
|
desc = "Mount selected archive"
|
||||||
|
|
||||||
|
[[manager.prepend_keymap]]
|
||||||
|
on = [ "m", "u" ]
|
||||||
|
run = "plugin archivemount --args=unmount"
|
||||||
|
desc = "Unmount and save changes to original archive"
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 354a4d6df9df6187f811c9e24598351e3180e195
|
|
@ -0,0 +1,39 @@
|
||||||
|
local selected_or_hovered = ya.sync(function()
|
||||||
|
local tab, paths = cx.active, {}
|
||||||
|
for _, u in pairs(tab.selected) do
|
||||||
|
paths[#paths + 1] = tostring(u)
|
||||||
|
end
|
||||||
|
if #paths == 0 and tab.current.hovered then
|
||||||
|
paths[1] = tostring(tab.current.hovered.url)
|
||||||
|
end
|
||||||
|
return paths
|
||||||
|
end)
|
||||||
|
|
||||||
|
return {
|
||||||
|
entry = function()
|
||||||
|
ya.manager_emit("escape", { visual = true })
|
||||||
|
|
||||||
|
local urls = selected_or_hovered()
|
||||||
|
if #urls == 0 then
|
||||||
|
return ya.notify { title = "Chmod", content = "No file selected", level = "warn", timeout = 5 }
|
||||||
|
end
|
||||||
|
|
||||||
|
local value, event = ya.input {
|
||||||
|
title = "Chmod:",
|
||||||
|
position = { "top-center", y = 3, w = 40 },
|
||||||
|
}
|
||||||
|
if event ~= 1 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local status, err = Command("chmod"):arg(value):args(urls):spawn():wait()
|
||||||
|
if not status or not status.success then
|
||||||
|
ya.notify {
|
||||||
|
title = "Chmod",
|
||||||
|
content = string.format("Chmod with selected files failed, exit code %s", status and status.code or err),
|
||||||
|
level = "error",
|
||||||
|
timeout = 5,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 20d5a4d4544124bade559b31d51ad41561dad92b
|
|
@ -2,5 +2,4 @@
|
||||||
show_hidden = true
|
show_hidden = true
|
||||||
|
|
||||||
[preview]
|
[preview]
|
||||||
image_uality = 90
|
image_quality = 70
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue