Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 94102b9d8c | |||
| 474ced6590 | |||
| c0699f971d | |||
| ff69bb8284 | |||
| 298eb76909 | |||
| 2173267246 | |||
| 315a0b3869 | |||
| 9ed520abc2 | |||
| 9f4a11f2e0 | |||
| 7f7c20cfda | |||
| 213d8bf9c8 | |||
| 2600016096 | |||
| 0a0a444a2d | |||
| 0cdbfbd9bd | |||
| c5c11a7cfb | |||
| 72ae9f6ce7 | |||
| e06469f47b | |||
| 4f45d3b02f |
12
.gitignore
vendored
Normal file
12
.gitignore
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
/wallpapers
|
||||||
|
/test
|
||||||
|
/home/.config/qutebrowser/bookmarks
|
||||||
|
/home/.config/qutebrowser/quickmarks
|
||||||
|
/home/.config/qutebrowser/qsettings
|
||||||
|
/home/.config/micro/backups
|
||||||
|
/home/.config/micro/buffers
|
||||||
|
node_modules/
|
||||||
|
/home/.config/vesktop/Crashpad
|
||||||
|
/home/.config/vesktop/sessionData
|
||||||
|
/home/.config/vesktop/.updaterId
|
||||||
|
/home/.fonts/**/.uuid
|
||||||
6
.gitmodules
vendored
Normal file
6
.gitmodules
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[submodule "lib/mocu-xcursor"]
|
||||||
|
path = lib/mocu-xcursor
|
||||||
|
url = https://github.com/sevmeyer/mocu-xcursor
|
||||||
|
[submodule "lib/shchemes"]
|
||||||
|
path = lib/shchemes
|
||||||
|
url = https://git.sys42.net/dakedres/shchemes
|
||||||
33
README
33
README
@@ -4,30 +4,25 @@
|
|||||||
| | | | | |- | | |-' `-.
|
| | | | | |- | | |-' `-.
|
||||||
`-' `-' `-' | ' ' `-' `-'
|
`-' `-' `-' | ' ' `-' `-'
|
||||||
-' [1]
|
-' [1]
|
||||||
| The Cape fox (Vulpes chama), also called the asse, cama fox or the silver-backed fox, is a small species of fox, native to southern Africa.
|
Desktop Environment - xfce4[7]
|
||||||
|
Window Manager - bspwm[6]
|
||||||
|
Terminal - kitty[3]
|
||||||
|
Browser - qutebrowser[4]
|
||||||
|
|
||||||
Required
|
Screenshot in ./screenshot.png, if it pleases
|
||||||
‾‾‾‾‾
|
|
||||||
- bspwm
|
|
||||||
- sxhkd
|
|
||||||
- tint2
|
|
||||||
- feh
|
|
||||||
- rofi
|
|
||||||
- mate-power-manager
|
|
||||||
- nm-applet
|
|
||||||
- alacritty
|
|
||||||
|
|
||||||
Programs I use with this setup
|
|
||||||
‾‾‾‾‾
|
|
||||||
- sxiv
|
|
||||||
- ncspot
|
|
||||||
- flameshot
|
|
||||||
|
|
||||||
Theme
|
Theme
|
||||||
‾‾‾‾‾
|
`````
|
||||||
Right now I use a Kaolin Dark theme. Many themes are pulled directly from alternateved/kaolin-inspired[2]
|
Right now I use a Kaolin Dark theme. Many themes are pulled directly from alternateved/kaolin-inspired[2]
|
||||||
|
|
||||||
|
|
||||||
Links
|
Links
|
||||||
‾‾‾‾‾
|
`````
|
||||||
1. Ascii font is "Shimrod" from http://www.patorjk.com/software/taag (other cool small fonts are "script", and "stampatello")
|
1. Ascii font is "Shimrod" from http://www.patorjk.com/software/taag (other cool small fonts are "script", and "stampatello")
|
||||||
2. https://github.com/alternateved/kaolin-inspired
|
2. https://github.com/alternateved/kaolin-inspired
|
||||||
|
3. https://sw.kovidgoyal.net/kitty
|
||||||
|
4. https://qutebrowser.org
|
||||||
|
5. https://wiki.archlinux.org/title/Tint2
|
||||||
|
6. https://github.com/baskerville/bspwm
|
||||||
|
7. https://www.xfce.org/
|
||||||
4
TODO
Normal file
4
TODO
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
- Make bspc-column only operate on the window initially focused, as to prevent bugs with floating windows between rows in the column
|
||||||
|
- Fix slowness with XFCE Display management dialog and bspc-xfce-monitors
|
||||||
|
- Configure picom
|
||||||
|
- Finish context menu
|
||||||
43
archive
Executable file
43
archive
Executable file
@@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
dir="$PWD"
|
||||||
|
scripts_subdir="$PWD/scripts"
|
||||||
|
config="${dir}/config"
|
||||||
|
|
||||||
|
rsync -a \
|
||||||
|
--exclude 'bookmarks' \
|
||||||
|
--exclude 'quickmarks' \
|
||||||
|
--exclude 'qsettings' \
|
||||||
|
--exclude 'autoconfig.yml' \
|
||||||
|
~/.config/qutebrowser "$config"
|
||||||
|
rsync -a ~/.config/vesktop/settings "${config}/vesktop"
|
||||||
|
rsync -a ~/.config/bspwm "$config"
|
||||||
|
rsync -a ~/.config/sxhkd "$config"
|
||||||
|
rsync -a ~/.config/xfce4 \
|
||||||
|
--exclude 'desktop' "$config"
|
||||||
|
rsync -a ~/.config/rofi "$config"
|
||||||
|
rsync -a ~/.config/i3 "$config"
|
||||||
|
# cp ~/.config/picom.conf .
|
||||||
|
|
||||||
|
cd ~/.local/bin || exit
|
||||||
|
cp \
|
||||||
|
bsp-auto-monitors \
|
||||||
|
bsp-float \
|
||||||
|
bsp-key-daemon \
|
||||||
|
bsp-smove \
|
||||||
|
le-keyboard \
|
||||||
|
le-audio \
|
||||||
|
sxhkd-help \
|
||||||
|
change-scheme \
|
||||||
|
le-wallpaper \
|
||||||
|
le-wallpaper-open \
|
||||||
|
xfce4-le-wallpaper \
|
||||||
|
qutebrowser \
|
||||||
|
qutesearch \
|
||||||
|
mdread \
|
||||||
|
rack \
|
||||||
|
f \
|
||||||
|
"$scripts_subdir"
|
||||||
|
cd "$dir" || exit
|
||||||
|
|
||||||
|
cp -r ~/.local/share/qutebrowser/userscripts "${dir}/local/share/qutebrowser"
|
||||||
37
archive.sh
37
archive.sh
@@ -1,37 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -x
|
|
||||||
|
|
||||||
dotfiles_root="$(dirname "$0")"
|
|
||||||
dotfiles_root="$(realpath "$dotfiles_root")"
|
|
||||||
scripts_dir="${dotfiles_root}/scripts"
|
|
||||||
config_dir="${dotfiles_root}/config"
|
|
||||||
|
|
||||||
echo "$scripts_dir"
|
|
||||||
|
|
||||||
rsync -a ~/pictures/wallpapers/* wallpapers/
|
|
||||||
cp ~/.chama "${scripts_dir}/chama"
|
|
||||||
|
|
||||||
cd "$config_dir" || exit
|
|
||||||
rsync -a --exclude 'bookmarks' --exclude '__pycache__' ~/.config/qutebrowser .
|
|
||||||
rsync -a ~/.config/alacritty .
|
|
||||||
rsync -a ~/.config/bspwm .
|
|
||||||
rsync -a ~/.config/sxhkd .
|
|
||||||
rsync -a ~/.config/tint2/tint2rc tint2/
|
|
||||||
|
|
||||||
cd ~/bin || exit
|
|
||||||
cp \
|
|
||||||
bsp-float \
|
|
||||||
bsp-smove \
|
|
||||||
bsp-toggle-visibility \
|
|
||||||
pfetch \
|
|
||||||
power \
|
|
||||||
qutesearch \
|
|
||||||
qutebrowser \
|
|
||||||
rofi-ask \
|
|
||||||
"set-desktop-theme" \
|
|
||||||
tabc-smart-detach \
|
|
||||||
sxhkd-help \
|
|
||||||
web \
|
|
||||||
git-untracked \
|
|
||||||
"$scripts_dir"
|
|
||||||
152
bin/dotf
Executable file
152
bin/dotf
Executable file
@@ -0,0 +1,152 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
SOURCE="$(realpath "$0")"
|
||||||
|
STORE_PATH="$(dirname "$SOURCE")/../"
|
||||||
|
STORE_PATH="$(realpath "$STORE_PATH")"
|
||||||
|
STORE_ENTRIES_FILE="${STORE_PATH}/paths"
|
||||||
|
ABS_HOME="$(readlink -f "$HOME")"
|
||||||
|
|
||||||
|
method=""
|
||||||
|
path=""
|
||||||
|
do_commit=false
|
||||||
|
commit_message="."
|
||||||
|
pull_to=""
|
||||||
|
for arg in "$@"; do
|
||||||
|
case $arg in
|
||||||
|
"-c")
|
||||||
|
do_commit=true
|
||||||
|
;;
|
||||||
|
|
||||||
|
"-m="*)
|
||||||
|
commit_message="${arg#*=}"
|
||||||
|
;;
|
||||||
|
|
||||||
|
"-pt="*)
|
||||||
|
pull_to="${arg#*=}"
|
||||||
|
pull_to="$(realpath "$pull_to")"
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
if [ -z "$method" ]; then
|
||||||
|
method="$arg"
|
||||||
|
else
|
||||||
|
path="$arg"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
if [ -z "$path" ]; then
|
||||||
|
path="."
|
||||||
|
fi
|
||||||
|
path="$(realpath --no-symlinks "$path")"
|
||||||
|
|
||||||
|
add() {
|
||||||
|
entry="$path"
|
||||||
|
check-cyclical-entry
|
||||||
|
check-duplicate-entry
|
||||||
|
|
||||||
|
printf %s\\n "$entry" >> "$STORE_ENTRIES_FILE"
|
||||||
|
printf %s\\n "Added path: $entry"
|
||||||
|
}
|
||||||
|
|
||||||
|
check-cyclical-entry() {
|
||||||
|
case "$STORE_PATH" in
|
||||||
|
"$entry"*)
|
||||||
|
printf 'Cannot cyclically archive: "%s" contains dotfiles directory'\\n "$path" >&2
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
check-duplicate-entry() {
|
||||||
|
while IFS='' read -r line || [ -n "$line" ]; do
|
||||||
|
case $entry in
|
||||||
|
"$line"*)
|
||||||
|
printf %s\\n "Item already within path: ${line}" >&2
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done < "$STORE_ENTRIES_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
update-dest() {
|
||||||
|
dest="$STORE_PATH/root$entry"
|
||||||
|
}
|
||||||
|
|
||||||
|
push() {
|
||||||
|
while IFS='' read -r entry || [ -n "$entry" ]; do
|
||||||
|
check-cyclical-entry
|
||||||
|
|
||||||
|
update-dest
|
||||||
|
dest_dir="$(dirname "$dest")"
|
||||||
|
rsync -rv --itemize-changes "$entry" "$dest_dir"
|
||||||
|
done < "$STORE_ENTRIES_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
pull() {
|
||||||
|
printf %s\\n "Diffs:"
|
||||||
|
show-diff
|
||||||
|
pull-prompt
|
||||||
|
}
|
||||||
|
|
||||||
|
entry-in-pull-path() {
|
||||||
|
entry="${pull_to}${entry}"
|
||||||
|
}
|
||||||
|
|
||||||
|
pull-prompt() {
|
||||||
|
printf "Is this ok? [y/N/d(etails)] "
|
||||||
|
read -r response
|
||||||
|
case "$response" in
|
||||||
|
d*|D*)
|
||||||
|
show-diff-detail
|
||||||
|
pull-prompt
|
||||||
|
;;
|
||||||
|
|
||||||
|
y*|Y*)
|
||||||
|
confirmed-pull
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
printf %s\\n "No action taken"
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
show-diff() {
|
||||||
|
while IFS='' read -r entry || [ -n "$entry" ]; do
|
||||||
|
update-dest
|
||||||
|
entry-in-pull-path
|
||||||
|
diff -rq "$entry" "$dest" | awk '
|
||||||
|
/^Only in/ { print $0 " (this will not be overwritten)"; next }
|
||||||
|
{ print }
|
||||||
|
'
|
||||||
|
done < "$STORE_ENTRIES_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
show-diff-detail() {
|
||||||
|
while IFS='' read -r entry || [ -n "$entry" ]; do
|
||||||
|
update-dest
|
||||||
|
entry-in-pull-path
|
||||||
|
diff -ru "$entry" "$dest"
|
||||||
|
done < "$STORE_ENTRIES_FILE" | less
|
||||||
|
}
|
||||||
|
|
||||||
|
confirmed-pull() {
|
||||||
|
while IFS='' read -r entry || [ -n "$entry" ]; do
|
||||||
|
check-cyclical-entry
|
||||||
|
|
||||||
|
update-dest
|
||||||
|
entry-in-pull-path
|
||||||
|
entry_dir="$(dirname "$entry")"
|
||||||
|
mkdir -p "$entry_dir"
|
||||||
|
rsync -rv --itemize-changes "$dest" "$entry_dir"
|
||||||
|
done < "$STORE_ENTRIES_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$method" in
|
||||||
|
"add") add ;;
|
||||||
|
"remove") remove ;;
|
||||||
|
"push") push ;;
|
||||||
|
"pull") pull ;;
|
||||||
|
esac
|
||||||
@@ -1,321 +0,0 @@
|
|||||||
[font]
|
|
||||||
size = 10.0
|
|
||||||
|
|
||||||
[font.normal]
|
|
||||||
family = "Inconsolata"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollPageUp"
|
|
||||||
key = "PageUp"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollPageDown"
|
|
||||||
key = "PageDown"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleViMode"
|
|
||||||
key = "Space"
|
|
||||||
mode = "~Search"
|
|
||||||
mods = "Shift|Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollToBottom"
|
|
||||||
key = "Space"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift|Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ClearSelection"
|
|
||||||
key = "Escape"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleViMode"
|
|
||||||
key = "I"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollToBottom"
|
|
||||||
key = "I"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleViMode"
|
|
||||||
key = "C"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollLineUp"
|
|
||||||
key = "Y"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollLineDown"
|
|
||||||
key = "E"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollToTop"
|
|
||||||
key = "G"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollToBottom"
|
|
||||||
key = "G"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollPageUp"
|
|
||||||
key = "B"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollPageDown"
|
|
||||||
key = "F"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollHalfPageUp"
|
|
||||||
key = "U"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ScrollHalfPageDown"
|
|
||||||
key = "D"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Copy"
|
|
||||||
key = "Y"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ClearSelection"
|
|
||||||
key = "Y"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ClearSelection"
|
|
||||||
key = "Copy"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleNormalSelection"
|
|
||||||
key = "V"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleLineSelection"
|
|
||||||
key = "V"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleBlockSelection"
|
|
||||||
key = "V"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Control"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "ToggleSemanticSelection"
|
|
||||||
key = "V"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Alt"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Open"
|
|
||||||
key = "Return"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "CenterAroundViCursor"
|
|
||||||
key = "Z"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Up"
|
|
||||||
key = "K"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Down"
|
|
||||||
key = "J"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Left"
|
|
||||||
key = "H"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Right"
|
|
||||||
key = "L"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Up"
|
|
||||||
key = "Up"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Down"
|
|
||||||
key = "Down"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Left"
|
|
||||||
key = "Left"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Right"
|
|
||||||
key = "Right"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "First"
|
|
||||||
key = "Key0"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Last"
|
|
||||||
key = "Key4"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "FirstOccupied"
|
|
||||||
key = "Key6"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "High"
|
|
||||||
key = "H"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Middle"
|
|
||||||
key = "M"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Low"
|
|
||||||
key = "L"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SemanticLeft"
|
|
||||||
key = "B"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SemanticRight"
|
|
||||||
key = "W"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SemanticRightEnd"
|
|
||||||
key = "E"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "WordLeft"
|
|
||||||
key = "B"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "WordRight"
|
|
||||||
key = "W"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "WordRightEnd"
|
|
||||||
key = "E"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "Bracket"
|
|
||||||
key = "Key5"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SearchForward"
|
|
||||||
key = "Slash"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SearchBackward"
|
|
||||||
key = "Slash"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SearchNext"
|
|
||||||
key = "N"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
|
|
||||||
[[keyboard.bindings]]
|
|
||||||
action = "SearchPrevious"
|
|
||||||
key = "N"
|
|
||||||
mode = "Vi|~Search"
|
|
||||||
mods = "Shift"
|
|
||||||
|
|
||||||
[shell]
|
|
||||||
program = "/bin/zsh"
|
|
||||||
|
|
||||||
#START SHCHEMES BLOCK : shchemes create_theme alacritty
|
|
||||||
# Base16 - alacritty color config
|
|
||||||
#
|
|
||||||
|
|
||||||
[colors]
|
|
||||||
draw_bold_text_with_bright_colors = false
|
|
||||||
|
|
||||||
# Default colors
|
|
||||||
[colors.primary]
|
|
||||||
background = '0x1C1E26'
|
|
||||||
foreground = '0xCBCED0'
|
|
||||||
|
|
||||||
# Colors the cursor will use if `custom_cursor_colors` is true
|
|
||||||
[colors.cursor]
|
|
||||||
text = '0x1C1E26'
|
|
||||||
cursor = '0xCBCED0'
|
|
||||||
|
|
||||||
# Normal colors
|
|
||||||
[colors.normal]
|
|
||||||
black = '0x1C1E26'
|
|
||||||
red = '0xE95678'
|
|
||||||
green = '0x29D398'
|
|
||||||
yellow = '0xFAC29A'
|
|
||||||
blue = '0x26BBD9'
|
|
||||||
magenta = '0xEE64AC'
|
|
||||||
cyan = '0x59E1E3'
|
|
||||||
white = '0xCBCED0'
|
|
||||||
|
|
||||||
# Bright colors
|
|
||||||
[colors.bright]
|
|
||||||
black = '0x6F6F70'
|
|
||||||
red = '0xFAB795'
|
|
||||||
green = '0x232530'
|
|
||||||
yellow = '0x2E303E'
|
|
||||||
blue = '0x9DA0A2'
|
|
||||||
magenta = '0xDCDFE4'
|
|
||||||
cyan = '0xF09383'
|
|
||||||
white = '0xE3E6EE'
|
|
||||||
|
|
||||||
#END SHCHEMES BLOCK
|
|
||||||
@@ -1,911 +0,0 @@
|
|||||||
# Configuration for Alacritty, the GPU enhanced terminal emulator.
|
|
||||||
|
|
||||||
# Import additional configuration files
|
|
||||||
#
|
|
||||||
# Imports are loaded in order, skipping all missing files, with the importing
|
|
||||||
# file being loaded last. If a field is already present in a previous import, it
|
|
||||||
# will be replaced.
|
|
||||||
#
|
|
||||||
# All imports must either be absolute paths starting with `/`, or paths relative
|
|
||||||
# to the user's home directory starting with `~/`.
|
|
||||||
#import:
|
|
||||||
# - /path/to/alacritty.yml
|
|
||||||
|
|
||||||
# Any items in the `env` entry below will be added as
|
|
||||||
# environment variables. Some entries may override variables
|
|
||||||
# set by alacritty itself.
|
|
||||||
#env:
|
|
||||||
# TERM variable
|
|
||||||
#
|
|
||||||
# This value is used to set the `$TERM` environment variable for
|
|
||||||
# each instance of Alacritty. If it is not present, alacritty will
|
|
||||||
# check the local terminfo database and use `alacritty` if it is
|
|
||||||
# available, otherwise `xterm-256color` is used.
|
|
||||||
#TERM: alacritty
|
|
||||||
|
|
||||||
#window:
|
|
||||||
# Window dimensions (changes require restart)
|
|
||||||
#
|
|
||||||
# Number of lines/columns (not pixels) in the terminal. Both lines and columns
|
|
||||||
# must be non-zero for this to take effect. The number of columns must be at
|
|
||||||
# least `2`, while using a value of `0` for columns and lines will fall back
|
|
||||||
# to the window manager's recommended size
|
|
||||||
#dimensions:
|
|
||||||
# columns: 0
|
|
||||||
# lines: 0
|
|
||||||
|
|
||||||
# Window position (changes require restart)
|
|
||||||
#
|
|
||||||
# Specified in number of pixels.
|
|
||||||
# If the position is not set, the window manager will handle the placement.
|
|
||||||
#position:
|
|
||||||
# x: 0
|
|
||||||
# y: 0
|
|
||||||
|
|
||||||
# Window padding (changes require restart)
|
|
||||||
#
|
|
||||||
# Blank space added around the window in pixels. This padding is scaled
|
|
||||||
# by DPI and the specified value is always added at both opposing sides.
|
|
||||||
#padding:
|
|
||||||
# x: 0
|
|
||||||
# y: 0
|
|
||||||
|
|
||||||
# Spread additional padding evenly around the terminal content.
|
|
||||||
#dynamic_padding: false
|
|
||||||
|
|
||||||
# Window decorations
|
|
||||||
#
|
|
||||||
# Values for `decorations`:
|
|
||||||
# - full: Borders and title bar
|
|
||||||
# - none: Neither borders nor title bar
|
|
||||||
#
|
|
||||||
# Values for `decorations` (macOS only):
|
|
||||||
# - transparent: Title bar, transparent background and title bar buttons
|
|
||||||
# - buttonless: Title bar, transparent background and no title bar buttons
|
|
||||||
#decorations: full
|
|
||||||
|
|
||||||
# Background opacity
|
|
||||||
#
|
|
||||||
# Window opacity as a floating point number from `0.0` to `1.0`.
|
|
||||||
# The value `0.0` is completely transparent and `1.0` is opaque.
|
|
||||||
#opacity: 1.0
|
|
||||||
|
|
||||||
# Startup Mode (changes require restart)
|
|
||||||
#
|
|
||||||
# Values for `startup_mode`:
|
|
||||||
# - Windowed
|
|
||||||
# - Maximized
|
|
||||||
# - Fullscreen
|
|
||||||
#
|
|
||||||
# Values for `startup_mode` (macOS only):
|
|
||||||
# - SimpleFullscreen
|
|
||||||
#startup_mode: Windowed
|
|
||||||
|
|
||||||
# Window title
|
|
||||||
#title: Alacritty
|
|
||||||
|
|
||||||
# Allow terminal applications to change Alacritty's window title.
|
|
||||||
#dynamic_title: true
|
|
||||||
|
|
||||||
# Window class (Linux/BSD only):
|
|
||||||
#class:
|
|
||||||
# Application instance name
|
|
||||||
#instance: Alacritty
|
|
||||||
# General application class
|
|
||||||
#general: Alacritty
|
|
||||||
|
|
||||||
# Decorations theme variant
|
|
||||||
#
|
|
||||||
# Override the variant of the System theme/GTK theme/Wayland client side
|
|
||||||
# decorations. Commonly supported values are `Dark`, `Light`, and `None` for
|
|
||||||
# auto pick-up. Set this to `None` to use the default theme variant.
|
|
||||||
#decorations_theme_variant: None
|
|
||||||
|
|
||||||
# Resize increments
|
|
||||||
#
|
|
||||||
# Prefer resizing window by discrete steps equal to cell dimensions.
|
|
||||||
#resize_increments: false
|
|
||||||
|
|
||||||
# Make `Option` key behave as `Alt` (macOS only):
|
|
||||||
# - OnlyLeft
|
|
||||||
# - OnlyRight
|
|
||||||
# - Both
|
|
||||||
# - None (default)
|
|
||||||
#option_as_alt: None
|
|
||||||
|
|
||||||
#scrolling:
|
|
||||||
# Maximum number of lines in the scrollback buffer.
|
|
||||||
# Specifying '0' will disable scrolling.
|
|
||||||
#history: 10000
|
|
||||||
|
|
||||||
# Scrolling distance multiplier.
|
|
||||||
#multiplier: 3
|
|
||||||
|
|
||||||
# Font configuration
|
|
||||||
font:
|
|
||||||
# Normal (roman) font face
|
|
||||||
normal:
|
|
||||||
# Font family
|
|
||||||
#
|
|
||||||
# Default:
|
|
||||||
# - (macOS) Menlo
|
|
||||||
# - (Linux/BSD) monospace
|
|
||||||
# - (Windows) Consolas
|
|
||||||
family: Inconsolata
|
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
|
||||||
#style: Regular
|
|
||||||
|
|
||||||
# Bold font face
|
|
||||||
#bold:
|
|
||||||
# Font family
|
|
||||||
#
|
|
||||||
# If the bold family is not specified, it will fall back to the
|
|
||||||
# value specified for the normal font.
|
|
||||||
#family: monospace
|
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
|
||||||
#style: Bold
|
|
||||||
|
|
||||||
# Italic font face
|
|
||||||
#italic:
|
|
||||||
# Font family
|
|
||||||
#
|
|
||||||
# If the italic family is not specified, it will fall back to the
|
|
||||||
# value specified for the normal font.
|
|
||||||
#family: monospace
|
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
|
||||||
#style: Italic
|
|
||||||
|
|
||||||
# Bold italic font face
|
|
||||||
#bold_italic:
|
|
||||||
# Font family
|
|
||||||
#
|
|
||||||
# If the bold italic family is not specified, it will fall back to the
|
|
||||||
# value specified for the normal font.
|
|
||||||
#family: monospace
|
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
|
||||||
#style: Bold Italic
|
|
||||||
|
|
||||||
# Point size
|
|
||||||
size: 10.0
|
|
||||||
|
|
||||||
# Offset is the extra space around each character. `offset.y` can be thought
|
|
||||||
# of as modifying the line spacing, and `offset.x` as modifying the letter
|
|
||||||
# spacing.
|
|
||||||
#offset:
|
|
||||||
# x: 0
|
|
||||||
# y: 0
|
|
||||||
|
|
||||||
# Glyph offset determines the locations of the glyphs within their cells with
|
|
||||||
# the default being at the bottom. Increasing `x` moves the glyph to the
|
|
||||||
# right, increasing `y` moves the glyph upward.
|
|
||||||
#glyph_offset:
|
|
||||||
# x: 0
|
|
||||||
# y: 0
|
|
||||||
|
|
||||||
# Use built-in font for box drawing characters.
|
|
||||||
#
|
|
||||||
# If `true`, Alacritty will use a custom built-in font for box drawing
|
|
||||||
# characters (Unicode points 2500 - 259f).
|
|
||||||
#
|
|
||||||
#builtin_box_drawing: true
|
|
||||||
|
|
||||||
# If `true`, bold text is drawn using the bright color variants.
|
|
||||||
#draw_bold_text_with_bright_colors: false
|
|
||||||
|
|
||||||
# Colors (Tomorrow Night)
|
|
||||||
#colors:
|
|
||||||
# Default colors
|
|
||||||
#primary:
|
|
||||||
# background: '#1d1f21'
|
|
||||||
# foreground: '#c5c8c6'
|
|
||||||
|
|
||||||
# Bright and dim foreground colors
|
|
||||||
#
|
|
||||||
# The dimmed foreground color is calculated automatically if it is not
|
|
||||||
# present. If the bright foreground color is not set, or
|
|
||||||
# `draw_bold_text_with_bright_colors` is `false`, the normal foreground
|
|
||||||
# color will be used.
|
|
||||||
#dim_foreground: '#828482'
|
|
||||||
#bright_foreground: '#eaeaea'
|
|
||||||
|
|
||||||
# Cursor colors
|
|
||||||
#
|
|
||||||
# Colors which should be used to draw the terminal cursor.
|
|
||||||
#
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#cursor:
|
|
||||||
# text: CellBackground
|
|
||||||
# cursor: CellForeground
|
|
||||||
|
|
||||||
# Vi mode cursor colors
|
|
||||||
#
|
|
||||||
# Colors for the cursor when the vi mode is active.
|
|
||||||
#
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#vi_mode_cursor:
|
|
||||||
# text: CellBackground
|
|
||||||
# cursor: CellForeground
|
|
||||||
|
|
||||||
# Search colors
|
|
||||||
#
|
|
||||||
# Colors used for the search bar and match highlighting.
|
|
||||||
#search:
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#matches:
|
|
||||||
# foreground: '#000000'
|
|
||||||
# background: '#ffffff'
|
|
||||||
#focused_match:
|
|
||||||
# foreground: '#ffffff'
|
|
||||||
# background: '#000000'
|
|
||||||
|
|
||||||
# Keyboard hints
|
|
||||||
#hints:
|
|
||||||
# First character in the hint label
|
|
||||||
#
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#start:
|
|
||||||
# foreground: '#1d1f21'
|
|
||||||
# background: '#e9ff5e'
|
|
||||||
|
|
||||||
# All characters after the first one in the hint label
|
|
||||||
#
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#end:
|
|
||||||
# foreground: '#e9ff5e'
|
|
||||||
# background: '#1d1f21'
|
|
||||||
|
|
||||||
# Line indicator
|
|
||||||
#
|
|
||||||
# Color used for the indicator displaying the position in history during
|
|
||||||
# search and vi mode.
|
|
||||||
#
|
|
||||||
# By default, these will use the opposing primary color.
|
|
||||||
#line_indicator:
|
|
||||||
# foreground: None
|
|
||||||
# background: None
|
|
||||||
|
|
||||||
# Footer bar
|
|
||||||
#
|
|
||||||
# Color used for the footer bar on the bottom, used by search regex input,
|
|
||||||
# hyperlink URI preview, etc.
|
|
||||||
#
|
|
||||||
#footer_bar:
|
|
||||||
# background: '#c5c8c6'
|
|
||||||
# foreground: '#1d1f21'
|
|
||||||
|
|
||||||
# Selection colors
|
|
||||||
#
|
|
||||||
# Colors which should be used to draw the selection area.
|
|
||||||
#
|
|
||||||
# Allowed values are CellForeground/CellBackground, which reference the
|
|
||||||
# affected cell, or hexadecimal colors like #ff00ff.
|
|
||||||
#selection:
|
|
||||||
# text: CellBackground
|
|
||||||
# background: CellForeground
|
|
||||||
|
|
||||||
# Normal colors
|
|
||||||
#normal:
|
|
||||||
# black: '#1d1f21'
|
|
||||||
# red: '#cc6666'
|
|
||||||
# green: '#b5bd68'
|
|
||||||
# yellow: '#f0c674'
|
|
||||||
# blue: '#81a2be'
|
|
||||||
# magenta: '#b294bb'
|
|
||||||
# cyan: '#8abeb7'
|
|
||||||
# white: '#c5c8c6'
|
|
||||||
|
|
||||||
# Bright colors
|
|
||||||
#bright:
|
|
||||||
# black: '#666666'
|
|
||||||
# red: '#d54e53'
|
|
||||||
# green: '#b9ca4a'
|
|
||||||
# yellow: '#e7c547'
|
|
||||||
# blue: '#7aa6da'
|
|
||||||
# magenta: '#c397d8'
|
|
||||||
# cyan: '#70c0b1'
|
|
||||||
# white: '#eaeaea'
|
|
||||||
|
|
||||||
# Dim colors
|
|
||||||
#
|
|
||||||
# If the dim colors are not set, they will be calculated automatically based
|
|
||||||
# on the `normal` colors.
|
|
||||||
#dim:
|
|
||||||
# black: '#131415'
|
|
||||||
# red: '#864343'
|
|
||||||
# green: '#777c44'
|
|
||||||
# yellow: '#9e824c'
|
|
||||||
# blue: '#556a7d'
|
|
||||||
# magenta: '#75617b'
|
|
||||||
# cyan: '#5b7d78'
|
|
||||||
# white: '#828482'
|
|
||||||
|
|
||||||
# Indexed Colors
|
|
||||||
#
|
|
||||||
# The indexed colors include all colors from 16 to 256.
|
|
||||||
# When these are not set, they're filled with sensible defaults.
|
|
||||||
#
|
|
||||||
# Example:
|
|
||||||
# `- { index: 16, color: '#ff00ff' }`
|
|
||||||
#
|
|
||||||
#indexed_colors: []
|
|
||||||
|
|
||||||
# Transparent cell backgrounds
|
|
||||||
#
|
|
||||||
# Whether or not `window.opacity` applies to all cell backgrounds or only to
|
|
||||||
# the default background. When set to `true` all cells will be transparent
|
|
||||||
# regardless of their background color.
|
|
||||||
#transparent_background_colors: false
|
|
||||||
|
|
||||||
# Bell
|
|
||||||
#
|
|
||||||
# The bell is rung every time the BEL control character is received.
|
|
||||||
#bell:
|
|
||||||
# Visual Bell Animation
|
|
||||||
#
|
|
||||||
# Animation effect for flashing the screen when the visual bell is rung.
|
|
||||||
#
|
|
||||||
# Values for `animation`:
|
|
||||||
# - Ease
|
|
||||||
# - EaseOut
|
|
||||||
# - EaseOutSine
|
|
||||||
# - EaseOutQuad
|
|
||||||
# - EaseOutCubic
|
|
||||||
# - EaseOutQuart
|
|
||||||
# - EaseOutQuint
|
|
||||||
# - EaseOutExpo
|
|
||||||
# - EaseOutCirc
|
|
||||||
# - Linear
|
|
||||||
#animation: EaseOutExpo
|
|
||||||
|
|
||||||
# Duration of the visual bell flash in milliseconds. A `duration` of `0` will
|
|
||||||
# disable the visual bell animation.
|
|
||||||
#duration: 0
|
|
||||||
|
|
||||||
# Visual bell animation color.
|
|
||||||
#color: '#ffffff'
|
|
||||||
|
|
||||||
# Bell Command
|
|
||||||
#
|
|
||||||
# This program is executed whenever the bell is rung.
|
|
||||||
#
|
|
||||||
# When set to `command: None`, no command will be executed.
|
|
||||||
#
|
|
||||||
# Example:
|
|
||||||
# command:
|
|
||||||
# program: notify-send
|
|
||||||
# args: ["Hello, World!"]
|
|
||||||
#
|
|
||||||
#command: None
|
|
||||||
|
|
||||||
#selection:
|
|
||||||
# This string contains all characters that are used as separators for
|
|
||||||
# "semantic words" in Alacritty.
|
|
||||||
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
|
|
||||||
|
|
||||||
# When set to `true`, selected text will be copied to the primary clipboard.
|
|
||||||
#save_to_clipboard: false
|
|
||||||
|
|
||||||
#cursor:
|
|
||||||
# Cursor style
|
|
||||||
#style:
|
|
||||||
# Cursor shape
|
|
||||||
#
|
|
||||||
# Values for `shape`:
|
|
||||||
# - ▇ Block
|
|
||||||
# - _ Underline
|
|
||||||
# - | Beam
|
|
||||||
#shape: Block
|
|
||||||
|
|
||||||
# Cursor blinking state
|
|
||||||
#
|
|
||||||
# Values for `blinking`:
|
|
||||||
# - Never: Prevent the cursor from ever blinking
|
|
||||||
# - Off: Disable blinking by default
|
|
||||||
# - On: Enable blinking by default
|
|
||||||
# - Always: Force the cursor to always blink
|
|
||||||
#blinking: Off
|
|
||||||
|
|
||||||
# Vi mode cursor style
|
|
||||||
#
|
|
||||||
# If the vi mode cursor style is `None` or not specified, it will fall back to
|
|
||||||
# the style of the active value of the normal cursor.
|
|
||||||
#
|
|
||||||
# See `cursor.style` for available options.
|
|
||||||
#vi_mode_style: None
|
|
||||||
|
|
||||||
# Cursor blinking interval in milliseconds.
|
|
||||||
#blink_interval: 750
|
|
||||||
|
|
||||||
# Time after which cursor stops blinking, in seconds.
|
|
||||||
#
|
|
||||||
# Specifying '0' will disable timeout for blinking.
|
|
||||||
#blink_timeout: 5
|
|
||||||
|
|
||||||
# If this is `true`, the cursor will be rendered as a hollow box when the
|
|
||||||
# window is not focused.
|
|
||||||
#unfocused_hollow: true
|
|
||||||
|
|
||||||
# Thickness of the cursor relative to the cell width as floating point number
|
|
||||||
# from `0.0` to `1.0`.
|
|
||||||
#thickness: 0.15
|
|
||||||
|
|
||||||
# Live config reload (changes require restart)
|
|
||||||
#live_config_reload: true
|
|
||||||
|
|
||||||
# Shell
|
|
||||||
#
|
|
||||||
# You can set `shell.program` to the path of your favorite shell, e.g.
|
|
||||||
# `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the
|
|
||||||
# shell.
|
|
||||||
#
|
|
||||||
# Default:
|
|
||||||
# - (Linux/BSD/macOS) `$SHELL` or the user's login shell, if `$SHELL` is unset
|
|
||||||
# - (Windows) powershell
|
|
||||||
shell:
|
|
||||||
program: /bin/zsh
|
|
||||||
# args:
|
|
||||||
# - --login
|
|
||||||
|
|
||||||
# Startup directory
|
|
||||||
#
|
|
||||||
# Directory the shell is started in. If this is unset, or `None`, the working
|
|
||||||
# directory of the parent process will be used.
|
|
||||||
#working_directory: None
|
|
||||||
|
|
||||||
# Offer IPC using `alacritty msg` (unix only)
|
|
||||||
#ipc_socket: true
|
|
||||||
|
|
||||||
#mouse:
|
|
||||||
# Click settings
|
|
||||||
#
|
|
||||||
# The `double_click` and `triple_click` settings control the time
|
|
||||||
# alacritty should wait for accepting multiple clicks as one double
|
|
||||||
# or triple click.
|
|
||||||
#double_click: { threshold: 300 }
|
|
||||||
#triple_click: { threshold: 300 }
|
|
||||||
|
|
||||||
# If this is `true`, the cursor is temporarily hidden when typing.
|
|
||||||
#hide_when_typing: false
|
|
||||||
|
|
||||||
# Hints
|
|
||||||
#
|
|
||||||
# Terminal hints can be used to find text or hyperlink in the visible part of
|
|
||||||
# the terminal and pipe it to other applications.
|
|
||||||
#hints:
|
|
||||||
# Keys used for the hint labels.
|
|
||||||
#alphabet: "jfkdls;ahgurieowpq"
|
|
||||||
|
|
||||||
# List with all available hints
|
|
||||||
#
|
|
||||||
# Each hint must have any of `regex` or `hyperlinks` field and either an
|
|
||||||
# `action` or a `command` field. The fields `mouse`, `binding` and
|
|
||||||
# `post_processing` are optional.
|
|
||||||
#
|
|
||||||
# The `hyperlinks` option will cause OSC 8 escape sequence hyperlinks to be
|
|
||||||
# highlighted.
|
|
||||||
#
|
|
||||||
# The fields `command`, `binding.key`, `binding.mods`, `binding.mode` and
|
|
||||||
# `mouse.mods` accept the same values as they do in the `key_bindings` section.
|
|
||||||
#
|
|
||||||
# The `mouse.enabled` field controls if the hint should be underlined while
|
|
||||||
# the mouse with all `mouse.mods` keys held or the vi mode cursor is above it.
|
|
||||||
#
|
|
||||||
# If the `post_processing` field is set to `true`, heuristics will be used to
|
|
||||||
# shorten the match if there are characters likely not to be part of the hint
|
|
||||||
# (e.g. a trailing `.`). This is most useful for URIs and applies only to
|
|
||||||
# `regex` matches.
|
|
||||||
#
|
|
||||||
# Values for `action`:
|
|
||||||
# - Copy
|
|
||||||
# Copy the hint's text to the clipboard.
|
|
||||||
# - Paste
|
|
||||||
# Paste the hint's text to the terminal or search.
|
|
||||||
# - Select
|
|
||||||
# Select the hint's text.
|
|
||||||
# - MoveViModeCursor
|
|
||||||
# Move the vi mode cursor to the beginning of the hint.
|
|
||||||
#enabled:
|
|
||||||
# - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
|
|
||||||
# [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
|
|
||||||
# hyperlinks: true
|
|
||||||
# command: xdg-open
|
|
||||||
# post_processing: true
|
|
||||||
# mouse:
|
|
||||||
# enabled: true
|
|
||||||
# mods: None
|
|
||||||
# binding:
|
|
||||||
# key: U
|
|
||||||
# mods: Control|Shift
|
|
||||||
|
|
||||||
# Mouse bindings
|
|
||||||
#
|
|
||||||
# Mouse bindings are specified as a list of objects, much like the key
|
|
||||||
# bindings further below.
|
|
||||||
#
|
|
||||||
# To trigger mouse bindings when an application running within Alacritty
|
|
||||||
# captures the mouse, the `Shift` modifier is automatically added as a
|
|
||||||
# requirement.
|
|
||||||
#
|
|
||||||
# Each mouse binding will specify a:
|
|
||||||
#
|
|
||||||
# - `mouse`:
|
|
||||||
#
|
|
||||||
# - Middle
|
|
||||||
# - Left
|
|
||||||
# - Right
|
|
||||||
# - Numeric identifier such as `5`
|
|
||||||
#
|
|
||||||
# - `action` (see key bindings for actions not exclusive to mouse mode)
|
|
||||||
#
|
|
||||||
# - Mouse exclusive actions:
|
|
||||||
#
|
|
||||||
# - ExpandSelection
|
|
||||||
# Expand the selection to the current mouse cursor location.
|
|
||||||
#
|
|
||||||
# And optionally:
|
|
||||||
#
|
|
||||||
# - `mods` (see key bindings)
|
|
||||||
#mouse_bindings:
|
|
||||||
# - { mouse: Right, action: ExpandSelection }
|
|
||||||
# - { mouse: Right, mods: Control, action: ExpandSelection }
|
|
||||||
# - { mouse: Middle, mode: ~Vi, action: PasteSelection }
|
|
||||||
|
|
||||||
# Key bindings
|
|
||||||
#
|
|
||||||
# Key bindings are specified as a list of objects. For example, this is the
|
|
||||||
# default paste binding:
|
|
||||||
#
|
|
||||||
# `- { key: V, mods: Control|Shift, action: Paste }`
|
|
||||||
#
|
|
||||||
# Each key binding will specify a:
|
|
||||||
#
|
|
||||||
# - `key`: Identifier of the key pressed
|
|
||||||
#
|
|
||||||
# - A-Z
|
|
||||||
# - F1-F24
|
|
||||||
# - Key0-Key9
|
|
||||||
#
|
|
||||||
# A full list with available key codes can be found here:
|
|
||||||
# https://docs.rs/winit/*/winit/event/enum.VirtualKeyCode.html#variants
|
|
||||||
#
|
|
||||||
# Instead of using the name of the keys, the `key` field also supports using
|
|
||||||
# the scancode of the desired key. Scancodes have to be specified as a
|
|
||||||
# decimal number. This command will allow you to display the hex scancodes
|
|
||||||
# for certain keys:
|
|
||||||
#
|
|
||||||
# `showkey --scancodes`.
|
|
||||||
#
|
|
||||||
# Then exactly one of:
|
|
||||||
#
|
|
||||||
# - `chars`: Send a byte sequence to the running application
|
|
||||||
#
|
|
||||||
# The `chars` field writes the specified string to the terminal. This makes
|
|
||||||
# it possible to pass escape sequences. To find escape codes for bindings
|
|
||||||
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
|
|
||||||
# of tmux. Note that applications use terminfo to map escape sequences back
|
|
||||||
# to keys. It is therefore required to update the terminfo when changing an
|
|
||||||
# escape sequence.
|
|
||||||
#
|
|
||||||
# - `action`: Execute a predefined action
|
|
||||||
#
|
|
||||||
# - ToggleViMode
|
|
||||||
# - SearchForward
|
|
||||||
# Start searching toward the right of the search origin.
|
|
||||||
# - SearchBackward
|
|
||||||
# Start searching toward the left of the search origin.
|
|
||||||
# - Copy
|
|
||||||
# - Paste
|
|
||||||
# - IncreaseFontSize
|
|
||||||
# - DecreaseFontSize
|
|
||||||
# - ResetFontSize
|
|
||||||
# - ScrollPageUp
|
|
||||||
# - ScrollPageDown
|
|
||||||
# - ScrollHalfPageUp
|
|
||||||
# - ScrollHalfPageDown
|
|
||||||
# - ScrollLineUp
|
|
||||||
# - ScrollLineDown
|
|
||||||
# - ScrollToTop
|
|
||||||
# - ScrollToBottom
|
|
||||||
# - ClearHistory
|
|
||||||
# Remove the terminal's scrollback history.
|
|
||||||
# - Hide
|
|
||||||
# Hide the Alacritty window.
|
|
||||||
# - Minimize
|
|
||||||
# Minimize the Alacritty window.
|
|
||||||
# - Quit
|
|
||||||
# Quit Alacritty.
|
|
||||||
# - ToggleFullscreen
|
|
||||||
# - ToggleMaximized
|
|
||||||
# - SpawnNewInstance
|
|
||||||
# Spawn a new instance of Alacritty.
|
|
||||||
# - CreateNewWindow
|
|
||||||
# Create a new Alacritty window from the current process.
|
|
||||||
# - ClearLogNotice
|
|
||||||
# Clear Alacritty's UI warning and error notice.
|
|
||||||
# - ClearSelection
|
|
||||||
# Remove the active selection.
|
|
||||||
# - ReceiveChar
|
|
||||||
# - None
|
|
||||||
#
|
|
||||||
# - Vi mode exclusive actions:
|
|
||||||
#
|
|
||||||
# - Open
|
|
||||||
# Perform the action of the first matching hint under the vi mode cursor
|
|
||||||
# with `mouse.enabled` set to `true`.
|
|
||||||
# - ToggleNormalSelection
|
|
||||||
# - ToggleLineSelection
|
|
||||||
# - ToggleBlockSelection
|
|
||||||
# - ToggleSemanticSelection
|
|
||||||
# Toggle semantic selection based on `selection.semantic_escape_chars`.
|
|
||||||
# - CenterAroundViCursor
|
|
||||||
# Center view around vi mode cursor
|
|
||||||
#
|
|
||||||
# - Vi mode exclusive cursor motion actions:
|
|
||||||
#
|
|
||||||
# - Up
|
|
||||||
# One line up.
|
|
||||||
# - Down
|
|
||||||
# One line down.
|
|
||||||
# - Left
|
|
||||||
# One character left.
|
|
||||||
# - Right
|
|
||||||
# One character right.
|
|
||||||
# - First
|
|
||||||
# First column, or beginning of the line when already at the first column.
|
|
||||||
# - Last
|
|
||||||
# Last column, or beginning of the line when already at the last column.
|
|
||||||
# - FirstOccupied
|
|
||||||
# First non-empty cell in this terminal row, or first non-empty cell of
|
|
||||||
# the line when already at the first cell of the row.
|
|
||||||
# - High
|
|
||||||
# Top of the screen.
|
|
||||||
# - Middle
|
|
||||||
# Center of the screen.
|
|
||||||
# - Low
|
|
||||||
# Bottom of the screen.
|
|
||||||
# - SemanticLeft
|
|
||||||
# Start of the previous semantically separated word.
|
|
||||||
# - SemanticRight
|
|
||||||
# Start of the next semantically separated word.
|
|
||||||
# - SemanticLeftEnd
|
|
||||||
# End of the previous semantically separated word.
|
|
||||||
# - SemanticRightEnd
|
|
||||||
# End of the next semantically separated word.
|
|
||||||
# - WordLeft
|
|
||||||
# Start of the previous whitespace separated word.
|
|
||||||
# - WordRight
|
|
||||||
# Start of the next whitespace separated word.
|
|
||||||
# - WordLeftEnd
|
|
||||||
# End of the previous whitespace separated word.
|
|
||||||
# - WordRightEnd
|
|
||||||
# End of the next whitespace separated word.
|
|
||||||
# - Bracket
|
|
||||||
# Character matching the bracket at the cursor's location.
|
|
||||||
# - SearchNext
|
|
||||||
# Beginning of the next match.
|
|
||||||
# - SearchPrevious
|
|
||||||
# Beginning of the previous match.
|
|
||||||
# - SearchStart
|
|
||||||
# Start of the match to the left of the vi mode cursor.
|
|
||||||
# - SearchEnd
|
|
||||||
# End of the match to the right of the vi mode cursor.
|
|
||||||
#
|
|
||||||
# - Search mode exclusive actions:
|
|
||||||
# - SearchFocusNext
|
|
||||||
# Move the focus to the next search match.
|
|
||||||
# - SearchFocusPrevious
|
|
||||||
# Move the focus to the previous search match.
|
|
||||||
# - SearchConfirm
|
|
||||||
# - SearchCancel
|
|
||||||
# - SearchClear
|
|
||||||
# Reset the search regex.
|
|
||||||
# - SearchDeleteWord
|
|
||||||
# Delete the last word in the search regex.
|
|
||||||
# - SearchHistoryPrevious
|
|
||||||
# Go to the previous regex in the search history.
|
|
||||||
# - SearchHistoryNext
|
|
||||||
# Go to the next regex in the search history.
|
|
||||||
#
|
|
||||||
# - macOS exclusive actions:
|
|
||||||
# - ToggleSimpleFullscreen
|
|
||||||
# Enter fullscreen without occupying another space.
|
|
||||||
#
|
|
||||||
# - Linux/BSD exclusive actions:
|
|
||||||
#
|
|
||||||
# - CopySelection
|
|
||||||
# Copy from the selection buffer.
|
|
||||||
# - PasteSelection
|
|
||||||
# Paste from the selection buffer.
|
|
||||||
#
|
|
||||||
# - `command`: Fork and execute a specified command plus arguments
|
|
||||||
#
|
|
||||||
# The `command` field must be a map containing a `program` string and an
|
|
||||||
# `args` array of command line parameter strings. For example:
|
|
||||||
# `{ program: "alacritty", args: ["-e", "vttest"] }`
|
|
||||||
#
|
|
||||||
# And optionally:
|
|
||||||
#
|
|
||||||
# - `mods`: Key modifiers to filter binding actions
|
|
||||||
#
|
|
||||||
# - Command
|
|
||||||
# - Control
|
|
||||||
# - Option
|
|
||||||
# - Super
|
|
||||||
# - Shift
|
|
||||||
# - Alt
|
|
||||||
#
|
|
||||||
# Multiple `mods` can be combined using `|` like this:
|
|
||||||
# `mods: Control|Shift`.
|
|
||||||
# Whitespace and capitalization are relevant and must match the example.
|
|
||||||
#
|
|
||||||
# - `mode`: Indicate a binding for only specific terminal reported modes
|
|
||||||
#
|
|
||||||
# This is mainly used to send applications the correct escape sequences
|
|
||||||
# when in different modes.
|
|
||||||
#
|
|
||||||
# - AppCursor
|
|
||||||
# - AppKeypad
|
|
||||||
# - Search
|
|
||||||
# - Alt
|
|
||||||
# - Vi
|
|
||||||
#
|
|
||||||
# A `~` operator can be used before a mode to apply the binding whenever
|
|
||||||
# the mode is *not* active, e.g. `~Alt`.
|
|
||||||
#
|
|
||||||
# Bindings are always filled by default, but will be replaced when a new
|
|
||||||
# binding with the same triggers is defined. To unset a default binding, it can
|
|
||||||
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
|
|
||||||
# a no-op if you do not wish to receive input characters for that binding.
|
|
||||||
#
|
|
||||||
# If the same trigger is assigned to multiple actions, all of them are executed
|
|
||||||
# in the order they were defined in.
|
|
||||||
key_bindings:
|
|
||||||
#- { key: Paste, action: Paste }
|
|
||||||
#- { key: Copy, action: Copy }
|
|
||||||
#- { key: L, mods: Control, action: ClearLogNotice }
|
|
||||||
#- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" }
|
|
||||||
- { key: PageUp, action: ScrollPageUp }
|
|
||||||
- { key: PageDown, action: ScrollPageDown }
|
|
||||||
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop }
|
|
||||||
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
|
|
||||||
|
|
||||||
# Vi Mode
|
|
||||||
- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode }
|
|
||||||
- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom }
|
|
||||||
- { key: Escape, mode: Vi|~Search, action: ClearSelection }
|
|
||||||
- { key: I, mode: Vi|~Search, action: ToggleViMode }
|
|
||||||
- { key: I, mode: Vi|~Search, action: ScrollToBottom }
|
|
||||||
- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode }
|
|
||||||
- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp }
|
|
||||||
- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown }
|
|
||||||
- { key: G, mode: Vi|~Search, action: ScrollToTop }
|
|
||||||
- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom }
|
|
||||||
- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp }
|
|
||||||
- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown }
|
|
||||||
- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp }
|
|
||||||
- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown }
|
|
||||||
- { key: Y, mode: Vi|~Search, action: Copy }
|
|
||||||
- { key: Y, mode: Vi|~Search, action: ClearSelection }
|
|
||||||
- { key: Copy, mode: Vi|~Search, action: ClearSelection }
|
|
||||||
- { key: V, mode: Vi|~Search, action: ToggleNormalSelection }
|
|
||||||
- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection }
|
|
||||||
- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection }
|
|
||||||
- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection }
|
|
||||||
- { key: Return, mode: Vi|~Search, action: Open }
|
|
||||||
- { key: Z, mode: Vi|~Search, action: CenterAroundViCursor }
|
|
||||||
- { key: K, mode: Vi|~Search, action: Up }
|
|
||||||
- { key: J, mode: Vi|~Search, action: Down }
|
|
||||||
- { key: H, mode: Vi|~Search, action: Left }
|
|
||||||
- { key: L, mode: Vi|~Search, action: Right }
|
|
||||||
- { key: Up, mode: Vi|~Search, action: Up }
|
|
||||||
- { key: Down, mode: Vi|~Search, action: Down }
|
|
||||||
- { key: Left, mode: Vi|~Search, action: Left }
|
|
||||||
- { key: Right, mode: Vi|~Search, action: Right }
|
|
||||||
- { key: Key0, mode: Vi|~Search, action: First }
|
|
||||||
- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last }
|
|
||||||
- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied }
|
|
||||||
- { key: H, mods: Shift, mode: Vi|~Search, action: High }
|
|
||||||
- { key: M, mods: Shift, mode: Vi|~Search, action: Middle }
|
|
||||||
- { key: L, mods: Shift, mode: Vi|~Search, action: Low }
|
|
||||||
- { key: B, mode: Vi|~Search, action: SemanticLeft }
|
|
||||||
- { key: W, mode: Vi|~Search, action: SemanticRight }
|
|
||||||
- { key: E, mode: Vi|~Search, action: SemanticRightEnd }
|
|
||||||
- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft }
|
|
||||||
- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight }
|
|
||||||
- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd }
|
|
||||||
- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket }
|
|
||||||
- { key: Slash, mode: Vi|~Search, action: SearchForward }
|
|
||||||
- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward }
|
|
||||||
- { key: N, mode: Vi|~Search, action: SearchNext }
|
|
||||||
- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious }
|
|
||||||
|
|
||||||
# Search Mode
|
|
||||||
#- { key: Return, mode: Search|Vi, action: SearchConfirm }
|
|
||||||
#- { key: Escape, mode: Search, action: SearchCancel }
|
|
||||||
#- { key: C, mods: Control, mode: Search, action: SearchCancel }
|
|
||||||
#- { key: U, mods: Control, mode: Search, action: SearchClear }
|
|
||||||
#- { key: W, mods: Control, mode: Search, action: SearchDeleteWord }
|
|
||||||
#- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious }
|
|
||||||
#- { key: N, mods: Control, mode: Search, action: SearchHistoryNext }
|
|
||||||
#- { key: Up, mode: Search, action: SearchHistoryPrevious }
|
|
||||||
#- { key: Down, mode: Search, action: SearchHistoryNext }
|
|
||||||
#- { key: Return, mode: Search|~Vi, action: SearchFocusNext }
|
|
||||||
#- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious }
|
|
||||||
|
|
||||||
# (Windows, Linux, and BSD only)
|
|
||||||
#- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste }
|
|
||||||
#- { key: C, mods: Control|Shift, action: Copy }
|
|
||||||
#- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward }
|
|
||||||
#- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward }
|
|
||||||
#- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection }
|
|
||||||
#- { key: Insert, mods: Shift, action: PasteSelection }
|
|
||||||
#- { key: Key0, mods: Control, action: ResetFontSize }
|
|
||||||
#- { key: Equals, mods: Control, action: IncreaseFontSize }
|
|
||||||
#- { key: Plus, mods: Control, action: IncreaseFontSize }
|
|
||||||
#- { key: NumpadAdd, mods: Control, action: IncreaseFontSize }
|
|
||||||
#- { key: Minus, mods: Control, action: DecreaseFontSize }
|
|
||||||
#- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize }
|
|
||||||
|
|
||||||
# (Windows only)
|
|
||||||
#- { key: Return, mods: Alt, action: ToggleFullscreen }
|
|
||||||
|
|
||||||
# (macOS only)
|
|
||||||
#- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
|
|
||||||
#- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }
|
|
||||||
#- { key: Key0, mods: Command, action: ResetFontSize }
|
|
||||||
#- { key: Equals, mods: Command, action: IncreaseFontSize }
|
|
||||||
#- { key: Plus, mods: Command, action: IncreaseFontSize }
|
|
||||||
#- { key: NumpadAdd, mods: Command, action: IncreaseFontSize }
|
|
||||||
#- { key: Minus, mods: Command, action: DecreaseFontSize }
|
|
||||||
#- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize }
|
|
||||||
#- { key: V, mods: Command, action: Paste }
|
|
||||||
#- { key: C, mods: Command, action: Copy }
|
|
||||||
#- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection }
|
|
||||||
#- { key: H, mods: Command, action: Hide }
|
|
||||||
#- { key: H, mods: Command|Alt, action: HideOtherApplications }
|
|
||||||
#- { key: M, mods: Command, action: Minimize }
|
|
||||||
#- { key: Q, mods: Command, action: Quit }
|
|
||||||
#- { key: W, mods: Command, action: Quit }
|
|
||||||
#- { key: N, mods: Command, action: CreateNewWindow }
|
|
||||||
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
|
|
||||||
#- { key: F, mods: Command, mode: ~Search, action: SearchForward }
|
|
||||||
#- { key: B, mods: Command, mode: ~Search, action: SearchBackward }
|
|
||||||
|
|
||||||
#debug:
|
|
||||||
# Display the time it takes to redraw each frame.
|
|
||||||
#render_timer: false
|
|
||||||
|
|
||||||
# Keep the log file after quitting Alacritty.
|
|
||||||
#persistent_logging: false
|
|
||||||
|
|
||||||
# Log level
|
|
||||||
#
|
|
||||||
# Values for `log_level`:
|
|
||||||
# - Off
|
|
||||||
# - Error
|
|
||||||
# - Warn
|
|
||||||
# - Info
|
|
||||||
# - Debug
|
|
||||||
# - Trace
|
|
||||||
#log_level: Warn
|
|
||||||
|
|
||||||
# Renderer override.
|
|
||||||
# - glsl3
|
|
||||||
# - gles2
|
|
||||||
# - gles2_pure
|
|
||||||
#renderer: None
|
|
||||||
|
|
||||||
# Print all received window events.
|
|
||||||
#print_events: false
|
|
||||||
|
|
||||||
# Highlight window damage information.
|
|
||||||
#highlight_damage: false
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
|
|
||||||
# Import user bin for sxhkd
|
|
||||||
PATH="/home/dakedres/bin:$PATH"
|
|
||||||
|
|
||||||
pgrep -x sxhkd > /dev/null || sxhkd &
|
|
||||||
wmname LG3D &
|
|
||||||
greenclip daemon &
|
|
||||||
|
|
||||||
bspc monitor -d I II III IV V
|
|
||||||
|
|
||||||
bspc config border_width 1
|
|
||||||
bspc config window_gap 4
|
|
||||||
|
|
||||||
bspc config split_ratio 0.52
|
|
||||||
bspc config borderless_monocle true
|
|
||||||
bspc config gapless_monocle true
|
|
||||||
|
|
||||||
bspc config pointer_modifier mod1
|
|
||||||
bspc config pointer_action1 move
|
|
||||||
# bspc config pointer_action2 resize_side
|
|
||||||
bspc config pointer_action2 resize_corner
|
|
||||||
|
|
||||||
# Focus is on the hovered window, but the cursor is
|
|
||||||
# moved when the keyboard changes focus
|
|
||||||
bspc config focus_follows_pointer true
|
|
||||||
bspc config pointer_follows_focus true
|
|
||||||
|
|
||||||
bspc rule -a KittyScratch state=floating
|
|
||||||
bspc rule -a Gimp state=floating
|
|
||||||
bspc rule -a Chromium desktop='^2'
|
|
||||||
bspc rule -a mplayer2 state=floating
|
|
||||||
bspc rule -a Kupfer.py focus=on
|
|
||||||
bspc rule -a Screenkey manage=off
|
|
||||||
|
|
||||||
xsetroot -cursor_name left_ptr &
|
|
||||||
$(dirname $0)/colors
|
|
||||||
|
|
||||||
export _JAVA_AWT_WM_NONREPARENTING=1
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
bspc config normal_border_color "#2E303E"
|
|
||||||
bspc config active_border_color "#6F6F70"
|
|
||||||
bspc config focused_border_color "#9DA0A2"
|
|
||||||
Binary file not shown.
@@ -1,48 +0,0 @@
|
|||||||
# If a config.py file exists, this file is ignored unless it's explicitly loaded
|
|
||||||
# via config.load_autoconfig(). For more information, see:
|
|
||||||
# https://github.com/qutebrowser/qutebrowser/blob/main/doc/help/configuring.asciidoc#loading-autoconfigyml
|
|
||||||
# DO NOT edit this file by hand, qutebrowser will overwrite it.
|
|
||||||
# Instead, create a config.py - see :help for details.
|
|
||||||
|
|
||||||
config_version: 2
|
|
||||||
settings:
|
|
||||||
bindings.commands:
|
|
||||||
global:
|
|
||||||
normal:
|
|
||||||
J: scroll-page 0 1
|
|
||||||
K: scroll-page 0 -1
|
|
||||||
gp: mode-enter passthrough
|
|
||||||
h: back
|
|
||||||
l: forward
|
|
||||||
colors.webpage.preferred_color_scheme:
|
|
||||||
global: dark
|
|
||||||
content.autoplay:
|
|
||||||
global: false
|
|
||||||
content.cookies.accept:
|
|
||||||
global: no-unknown-3rdparty
|
|
||||||
content.cookies.store:
|
|
||||||
global: false
|
|
||||||
content.media.audio_capture:
|
|
||||||
https://online-voice-recorder.com: true
|
|
||||||
content.notifications.enabled:
|
|
||||||
https://app.cinny.in: true
|
|
||||||
content.register_protocol_handler:
|
|
||||||
https://mail.google.com?extsrc=mailto&url=%25s: true
|
|
||||||
fonts.debug_console:
|
|
||||||
global: default_size default_family
|
|
||||||
fonts.default_family:
|
|
||||||
global: Ubuntu
|
|
||||||
fonts.prompts:
|
|
||||||
global: 12 Inconsolata
|
|
||||||
fonts.statusbar:
|
|
||||||
global: 12 Nimbus Mono
|
|
||||||
fonts.web.family.fixed:
|
|
||||||
global: Inconsolata
|
|
||||||
fonts.web.family.serif:
|
|
||||||
global: Ubuntu
|
|
||||||
fonts.web.family.standard:
|
|
||||||
global: Ubuntu
|
|
||||||
tabs.show:
|
|
||||||
global: never
|
|
||||||
tabs.tabs_are_windows:
|
|
||||||
global: true
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
[FileDialog]
|
|
||||||
history=file:///home/dakedres/music, file:///home/dakedres, file:///home/dakedres/pictures, file:///home/dakedres/pictures/wallpapers, file:///home/dakedres/splash
|
|
||||||
lastVisited=file:///home/dakedres/splash
|
|
||||||
qtVersion=6.6.2
|
|
||||||
shortcuts=file:, file:///home/dakedres
|
|
||||||
sidebarWidth=90
|
|
||||||
treeViewHeader=@ByteArray(\0\0\0\xff\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x2l\0\0\0\x4\x1\x1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x64\xff\xff\xff\xff\0\0\0\x81\0\0\0\0\0\0\0\x4\0\0\x1\x7f\0\0\0\x1\0\0\0\0\0\0\0?\0\0\0\x1\0\0\0\0\0\0\0@\0\0\0\x1\0\0\0\0\0\0\0n\0\0\0\x1\0\0\0\0\0\0\x3\xe8\0\xff\xff\xff\xff\0\0\0\0)
|
|
||||||
viewMode=Detail
|
|
||||||
@@ -1,205 +0,0 @@
|
|||||||
#
|
|
||||||
# wm independent hotkeys
|
|
||||||
#
|
|
||||||
|
|
||||||
# Open kitty
|
|
||||||
alt + Return
|
|
||||||
alacritty
|
|
||||||
|
|
||||||
# Open floating kitty
|
|
||||||
alt + shift + Return
|
|
||||||
bsp-float alacritty
|
|
||||||
|
|
||||||
# launch program
|
|
||||||
alt + @space
|
|
||||||
rofi -show run
|
|
||||||
|
|
||||||
# launch program as root
|
|
||||||
alt + shift + @space
|
|
||||||
rofi-ask rofi -show drun -run-command "sudo -A {cmd}"
|
|
||||||
|
|
||||||
# make sxhkd reload its configuration files:
|
|
||||||
alt + Escape
|
|
||||||
pkill -USR1 -x sxhkd; notify-send 'Key daemon reloaded'
|
|
||||||
|
|
||||||
# Start a qutebrowser search
|
|
||||||
alt + o
|
|
||||||
qutesearch
|
|
||||||
|
|
||||||
# Show keybinds
|
|
||||||
alt + slash
|
|
||||||
sxhkd-help
|
|
||||||
|
|
||||||
# Show clipmenu
|
|
||||||
alt + v
|
|
||||||
rofi -modi "clipboard:greenclip print" -show clipboard -run-command '{cmd}'
|
|
||||||
|
|
||||||
alt + shift + v
|
|
||||||
greenclip clear
|
|
||||||
|
|
||||||
# Increase volume
|
|
||||||
XF86AudioRaiseVolume
|
|
||||||
amixer -D default sset Master 5%+
|
|
||||||
|
|
||||||
# Decrease volume
|
|
||||||
XF86AudioLowerVolume
|
|
||||||
amixer -D default sset Master 5%-
|
|
||||||
|
|
||||||
# Toggle audio mute
|
|
||||||
XF86AudioMute
|
|
||||||
amixer -D default set Master 1+ toggle
|
|
||||||
|
|
||||||
# Play/pause track
|
|
||||||
XF86AudioPlay
|
|
||||||
playerctl play-pause
|
|
||||||
|
|
||||||
# Previus track
|
|
||||||
XF86AudioNext
|
|
||||||
playerctl next
|
|
||||||
|
|
||||||
# Previous track
|
|
||||||
XF86AudioPrev
|
|
||||||
playerctl previous
|
|
||||||
|
|
||||||
# Stop track
|
|
||||||
XF86AudioStop
|
|
||||||
playerctl stop
|
|
||||||
|
|
||||||
super + {Up,Down}
|
|
||||||
xdotool key {Page_Up,Page_Down}
|
|
||||||
|
|
||||||
#
|
|
||||||
# bspwm hotkeys
|
|
||||||
#
|
|
||||||
|
|
||||||
# quit/restart bspwm
|
|
||||||
alt + shift + {q,r}
|
|
||||||
bspc {quit,wm -r}
|
|
||||||
|
|
||||||
# close and kill
|
|
||||||
alt + {_,shift + }w
|
|
||||||
bspc node -{c,k}
|
|
||||||
|
|
||||||
alt + q
|
|
||||||
bspc node -c
|
|
||||||
|
|
||||||
# alternate between the tiled and monocle layout
|
|
||||||
alt + m
|
|
||||||
bspc desktop -l next
|
|
||||||
|
|
||||||
# send the newest marked node to the newest preselected node
|
|
||||||
alt + y
|
|
||||||
bspc node newest.marked.local -n newest.!automatic.local
|
|
||||||
|
|
||||||
# swap the current node and the biggest window
|
|
||||||
alt + g
|
|
||||||
bspc node -s biggest.window
|
|
||||||
|
|
||||||
# Reveal hidden kitty (scratchpad)
|
|
||||||
alt + super + Return
|
|
||||||
bsp-toggle-visibility KittyScratch "kitty --class KittyScratch"
|
|
||||||
|
|
||||||
# flameshot
|
|
||||||
alt + Print
|
|
||||||
flameshot gui
|
|
||||||
|
|
||||||
#
|
|
||||||
# state/flags
|
|
||||||
#
|
|
||||||
|
|
||||||
# set the window state
|
|
||||||
alt + {z,shift + z,x,f}
|
|
||||||
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
|
|
||||||
|
|
||||||
# set the node flags
|
|
||||||
alt + ctrl + {m,x,y,z}
|
|
||||||
bspc node -g {marked,locked,sticky,private}
|
|
||||||
|
|
||||||
#
|
|
||||||
# focus/swap
|
|
||||||
#
|
|
||||||
|
|
||||||
# focus the node in the given direction
|
|
||||||
alt + {h,j,k,l,Left,Down,Up,Right}
|
|
||||||
bspc node -{f} {west,south,north,east,west,south,north,east}
|
|
||||||
|
|
||||||
# focus the node for the given path jump
|
|
||||||
alt + {p,b,comma,period}
|
|
||||||
bspc node -f @{parent,brother,first,second}
|
|
||||||
|
|
||||||
# focus the next/previous window in the current desktop
|
|
||||||
alt + {a,d}
|
|
||||||
bspc node -f {next,prev}.local.!hidden.window
|
|
||||||
|
|
||||||
# focus the next/previous desktop in the current monitor
|
|
||||||
alt + bracket{left,right}
|
|
||||||
bspc desktop -f {prev,next}.local
|
|
||||||
|
|
||||||
# focus the last node/desktop
|
|
||||||
alt + {grave,Tab}
|
|
||||||
bspc {node,desktop} -f last
|
|
||||||
|
|
||||||
# focus the older or newer node in the focus history
|
|
||||||
alt + {o,i}
|
|
||||||
bspc wm -h off; \
|
|
||||||
bspc node {older,newer} -f; \
|
|
||||||
bspc wm -h on
|
|
||||||
|
|
||||||
# focus or send to the given desktop
|
|
||||||
alt + {_,shift + }{1-9,0}
|
|
||||||
bspc {desktop -f,node -d} '^{1-9,10}'
|
|
||||||
|
|
||||||
#
|
|
||||||
# preselect
|
|
||||||
#
|
|
||||||
|
|
||||||
# preselect the direction
|
|
||||||
alt + ctrl + shift {h,j,k,l,Left,Down,Up,Right}
|
|
||||||
bspc node -p {west,south,north,east,west,south,north,east}
|
|
||||||
|
|
||||||
# preselect the ratio
|
|
||||||
alt + ctrl + {1-9}
|
|
||||||
bspc node -o 0.{1-9}
|
|
||||||
|
|
||||||
# cancel the preselection for the focused node
|
|
||||||
alt + ctrl + space
|
|
||||||
bspc node -p cancel
|
|
||||||
|
|
||||||
# cancel the preselection for the focused desktop
|
|
||||||
alt + ctrl + shift + space
|
|
||||||
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
|
|
||||||
|
|
||||||
#
|
|
||||||
# move/resize
|
|
||||||
#
|
|
||||||
|
|
||||||
# Expand/contract a window by moving one of its side outward/inward
|
|
||||||
alt + s; {h,j,k,l,Left,Down,Up,Right}
|
|
||||||
bspc node -z {left -20 0,right 20 0,top 0 -20,bottom 0 20,left -20 0,right 20 0,top 0 -20,bottom 0 20}
|
|
||||||
|
|
||||||
# move a floating window
|
|
||||||
# alt + {h,j,k,l}
|
|
||||||
# bspc node -v {-30 0,0 20,0 -30,20 0}
|
|
||||||
|
|
||||||
# move a not-floating window
|
|
||||||
alt + shift + {h,j,k,l,Left,Down,Up,Right}
|
|
||||||
bsp-smove {west,south,north,east,west,south,north,east}
|
|
||||||
|
|
||||||
#
|
|
||||||
# tabs
|
|
||||||
#
|
|
||||||
|
|
||||||
# move in/out of tabbed container
|
|
||||||
alt + ctrl + {h,j,k,l,Left,Down,Up,Right}
|
|
||||||
tabc-smart-detach {west,south,north,east,west,south,north,east}
|
|
||||||
|
|
||||||
# tab/untab window
|
|
||||||
alt + t
|
|
||||||
id=$(bspc query -N -n); \
|
|
||||||
[[ "$(tabc printclass $id)" == "tabbed" ]] \
|
|
||||||
&& tabc detach $id \
|
|
||||||
|| tabc create $id
|
|
||||||
|
|
||||||
# toggle autoattach in tabbed container
|
|
||||||
alt + shift + t
|
|
||||||
tabc autoattach $(bspc query -N -n)
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
// aurora
|
|
||||||
let left = `color0 #14191e
|
|
||||||
color8 #454459
|
|
||||||
color1 #e55c7a
|
|
||||||
color9 #cd5c60
|
|
||||||
color2 #31E183
|
|
||||||
color10 #7CF083
|
|
||||||
color3 #f5c791
|
|
||||||
color11 #dbac66
|
|
||||||
color4 #4ca6e8
|
|
||||||
color12 #91b9c7
|
|
||||||
color5 #9d81ba
|
|
||||||
color13 #6E6884
|
|
||||||
color6 #49bdb0
|
|
||||||
color14 #0D9C94
|
|
||||||
color7 #e6e6e8
|
|
||||||
color15 #f2f2f2`
|
|
||||||
.replaceAll(/\s+/g, ':')
|
|
||||||
.split('\n')
|
|
||||||
.map(e => e.toUpperCase().split(':') )
|
|
||||||
|
|
||||||
// normal
|
|
||||||
let right = `color0 #4B5254
|
|
||||||
color8 #879193
|
|
||||||
color1 #CD5C60
|
|
||||||
color9 #E36D5B
|
|
||||||
color2 #6FB593
|
|
||||||
color10 #72CCBA
|
|
||||||
color3 #DBAC66
|
|
||||||
color11 #F2C866
|
|
||||||
color4 #91B9C7
|
|
||||||
color12 #97B8DE
|
|
||||||
color5 #845A84
|
|
||||||
color13 #8C629C
|
|
||||||
color6 #4D9391
|
|
||||||
color14 #5096AB
|
|
||||||
color7 #E4E4E8
|
|
||||||
color15 #EFEFF1`
|
|
||||||
.replaceAll(/\s+/g, ':')
|
|
||||||
.split('\n')
|
|
||||||
.map(e => e.toUpperCase().split(':') )
|
|
||||||
|
|
||||||
left = new Map(left)
|
|
||||||
|
|
||||||
let source = `base00 = "#18181B"
|
|
||||||
base01 = "#222225"
|
|
||||||
base02 = "#4B5254"
|
|
||||||
base03 = "#545C5E"
|
|
||||||
base04 = "#879193"
|
|
||||||
base05 = "#9ba5a7"
|
|
||||||
base06 = "#d0d0d4"
|
|
||||||
base07 = "#E4E4E8"
|
|
||||||
base08 = "#CD5C60"
|
|
||||||
base09 = "#DBAC66"
|
|
||||||
base0A = "#F2C866"
|
|
||||||
base0B = "#6FB593"
|
|
||||||
base0C = "#4D9391"
|
|
||||||
base0D = "#91B9C7"
|
|
||||||
base0E = "#845A84"
|
|
||||||
base0F = "#E36D5B"`
|
|
||||||
|
|
||||||
for(let [ name, value ] of right) {
|
|
||||||
source = source.replaceAll(value, left.get(name))
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log(source)
|
|
||||||
10
home/.Xdefaults
Normal file
10
home/.Xdefaults
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
i3xrocks.notify.timestamp.format: %m-%d %I:%M
|
||||||
|
i3xrocks.label.notify.none: e7f4
|
||||||
|
i3xrocks.label.notify.some: "\uf4fe"
|
||||||
|
i3xrocks.label.notify.error: "\ue004"
|
||||||
|
basilisk.animations.?: 1
|
||||||
|
basilisk.theme: aiivii:3d
|
||||||
|
basilisk.wallpaper: /home/olive/Pictures/decoy_rosie_snell-2007.jpg
|
||||||
|
# basilisk.wallpaper: /home/olive/Pictures/Wallpapers/stone+tiles+pavement-2048x2048.jpg
|
||||||
|
basilisk.font.heading:
|
||||||
|
basilisk.font.body:
|
||||||
1
home/.basilisk/.gitignore
vendored
Normal file
1
home/.basilisk/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
node_modules/
|
||||||
8
home/.basilisk/README.md
Normal file
8
home/.basilisk/README.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# Dependencies
|
||||||
|
- `swaybg`
|
||||||
|
- `swaylock-effects`
|
||||||
|
- `swayidle`
|
||||||
|
- `rofi`
|
||||||
|
- `waybar`
|
||||||
|
- `inotify-tools`
|
||||||
|
- `imagemagick`
|
||||||
163
home/.basilisk/bin/bas
Executable file
163
home/.basilisk/bin/bas
Executable file
@@ -0,0 +1,163 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
export SCHEME="$(xrescat basilisk.theme)"
|
||||||
|
export BAS_ROOT="$(dirname "$(realpath "$0")")/../"
|
||||||
|
restart_panel() {
|
||||||
|
pkill waybar
|
||||||
|
shchemes inject "${BAS_ROOT}/waybar/style.css"
|
||||||
|
waybar \
|
||||||
|
-c "${BAS_ROOT}/waybar/config.jsonc" \
|
||||||
|
-s "${BAS_ROOT}/waybar/style.css" & disown
|
||||||
|
|
||||||
|
}
|
||||||
|
notifs() {
|
||||||
|
rofication-gui
|
||||||
|
|
||||||
|
}
|
||||||
|
power-off-monitors() {
|
||||||
|
niri msg action power-off-monitors
|
||||||
|
|
||||||
|
}
|
||||||
|
lock() {
|
||||||
|
img="/tmp/basilisk-lock.png"
|
||||||
|
niri msg action screenshot-screen -p false -d true --path "/tmp/basilisk-lock-raw.png"
|
||||||
|
inotifywait -q -e close_write /tmp/basilisk-lock-raw.png | head -n1
|
||||||
|
magick "/tmp/basilisk-lock-raw.png" \
|
||||||
|
-set colorspace Gray \
|
||||||
|
"$img"
|
||||||
|
swaylock -i "$img" & disown
|
||||||
|
|
||||||
|
}
|
||||||
|
suspend() {
|
||||||
|
systemctl suspend && lock
|
||||||
|
|
||||||
|
}
|
||||||
|
logout() {
|
||||||
|
loginctl terminate-session ${XDG_SESSION_ID-}
|
||||||
|
|
||||||
|
}
|
||||||
|
shutdown() {
|
||||||
|
systemctl poweroff
|
||||||
|
|
||||||
|
}
|
||||||
|
reboot() {
|
||||||
|
systemctl reboot
|
||||||
|
|
||||||
|
}
|
||||||
|
reload_compositor() {
|
||||||
|
shchemes inject "${BAS_ROOT}/niri/config.kdl"
|
||||||
|
|
||||||
|
}
|
||||||
|
reload_shell() {
|
||||||
|
"${BAS_ROOT}/genctl"
|
||||||
|
|
||||||
|
}
|
||||||
|
timeout_daemon() {
|
||||||
|
pkill swayidle
|
||||||
|
swayidle -w \
|
||||||
|
timeout 300 'bas lock' \
|
||||||
|
timeout 360 'bas power-off-monitors' \
|
||||||
|
before-sleep 'bas power-off-monitors && bas lock' & disown
|
||||||
|
|
||||||
|
}
|
||||||
|
notif_daemon() {
|
||||||
|
pkill -f rofication-daemon
|
||||||
|
rofication-daemon & disown
|
||||||
|
|
||||||
|
}
|
||||||
|
wallpaper() {
|
||||||
|
pkill swaybg
|
||||||
|
swaybg -i "$(xrescat basilisk.wallpaper)"
|
||||||
|
|
||||||
|
}
|
||||||
|
theme_apps() {
|
||||||
|
shchemes inject "$HOME/.config/qutebrowser/config.py"
|
||||||
|
shchemes create_theme css > "$HOME/.config/base16.css"
|
||||||
|
shchemes create_theme css > "$HOME/.config/qutebrowser/base16.css"
|
||||||
|
pkill -HUP qutebrowser
|
||||||
|
shchemes create_theme rofi > "$HOME/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
load() {
|
||||||
|
reload_shell
|
||||||
|
"$0" reload_compositor
|
||||||
|
"$0" restart_panel
|
||||||
|
"$0" notif_daemon
|
||||||
|
"$0" timeout_daemon
|
||||||
|
"$0" wallpaper
|
||||||
|
"$0" theme_apps
|
||||||
|
|
||||||
|
}
|
||||||
|
rofi_report() {
|
||||||
|
[ -n "$BASILISK_ROFI_REPORT_STATE" ] && printf %s\n >> "$BASILISK_ROFI_REPORT_STATE"
|
||||||
|
rofi -dmenu -format i -matching prefix -auto-select -markup -theme-str '
|
||||||
|
element { font: "Noto Mono 11"; }
|
||||||
|
' $BASILISK_ROFI_ARGS
|
||||||
|
[ -n "$BASILISK_ROFI_REPORT_STATE" ] && printf %s\n >> "$BASILISK_ROFI_REPORT_STATE"
|
||||||
|
}
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
case "$(printf %s\\n ' rb. Restart Panel
|
||||||
|
n. Notifications
|
||||||
|
pm. Power Off Monitors
|
||||||
|
l. Lock
|
||||||
|
ps. Suspend
|
||||||
|
pe. Log Out
|
||||||
|
pdy. Shutdown
|
||||||
|
pry. Reboot
|
||||||
|
rc. Reload Compositor
|
||||||
|
rs. Reload Shell
|
||||||
|
rdt. Reload Timeout Daemon
|
||||||
|
rdn. Reload Notification Daemon
|
||||||
|
rw. Reload Wallpaper
|
||||||
|
rat. Reload App Themes
|
||||||
|
rr. Reload All'| rofi_report)" in
|
||||||
|
0) restart_panel ;;
|
||||||
|
1) notifs ;;
|
||||||
|
2) power-off-monitors ;;
|
||||||
|
3) lock ;;
|
||||||
|
4) suspend ;;
|
||||||
|
5) logout ;;
|
||||||
|
6) shutdown ;;
|
||||||
|
7) reboot ;;
|
||||||
|
8) reload_compositor ;;
|
||||||
|
9) reload_shell ;;
|
||||||
|
10) timeout_daemon ;;
|
||||||
|
11) notif_daemon ;;
|
||||||
|
12) wallpaper ;;
|
||||||
|
13) theme_apps ;;
|
||||||
|
14) load ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
case "$1" in
|
||||||
|
"restart_panel") restart_panel ;;
|
||||||
|
"notifs") notifs ;;
|
||||||
|
"power-off-monitors") power-off-monitors ;;
|
||||||
|
"lock") lock ;;
|
||||||
|
"suspend") suspend ;;
|
||||||
|
"logout") logout ;;
|
||||||
|
"shutdown") shutdown ;;
|
||||||
|
"reboot") reboot ;;
|
||||||
|
"reload_compositor") reload_compositor ;;
|
||||||
|
"reload_shell") reload_shell ;;
|
||||||
|
"timeout_daemon") timeout_daemon ;;
|
||||||
|
"notif_daemon") notif_daemon ;;
|
||||||
|
"wallpaper") wallpaper ;;
|
||||||
|
"theme_apps") theme_apps ;;
|
||||||
|
"load") load ;;
|
||||||
|
"rb") restart_panel ;;
|
||||||
|
"n") notifs ;;
|
||||||
|
"pm") power-off-monitors ;;
|
||||||
|
"l") lock ;;
|
||||||
|
"ps") suspend ;;
|
||||||
|
"pe") logout ;;
|
||||||
|
"pdy") shutdown ;;
|
||||||
|
"pry") reboot ;;
|
||||||
|
"rc") reload_compositor ;;
|
||||||
|
"rs") reload_shell ;;
|
||||||
|
"rdt") timeout_daemon ;;
|
||||||
|
"rdn") notif_daemon ;;
|
||||||
|
"rw") wallpaper ;;
|
||||||
|
"rat") theme_apps ;;
|
||||||
|
"rr") load ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
24
home/.basilisk/bin/basilisk-session
Executable file
24
home/.basilisk/bin/basilisk-session
Executable file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/usr/bin/sh
|
||||||
|
|
||||||
|
# Detect if being run as a user service, which implies external session management,
|
||||||
|
# exec compositor directly
|
||||||
|
if [ -n "${MANAGERPID:-}" ] && [ "${SYSTEMD_EXEC_PID:-}" = "$$" ]; then
|
||||||
|
case "$(ps -p "$MANAGERPID" -o cmd=)" in
|
||||||
|
*systemd*--user*)
|
||||||
|
exec niri --session
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$SHELL" ] &&
|
||||||
|
grep -q "$SHELL" /etc/shells &&
|
||||||
|
! (echo "$SHELL" | grep -q "false") &&
|
||||||
|
! (echo "$SHELL" | grep -q "nologin"); then
|
||||||
|
if [ "$1" != '-l' ]; then
|
||||||
|
exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
|
||||||
|
else
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
niri --session -c "$(dirname "$(readlink "$0")")/../niri/config.kdl"
|
||||||
109
home/.basilisk/binds
Normal file
109
home/.basilisk/binds
Normal file
@@ -0,0 +1,109 @@
|
|||||||
|
#
|
||||||
|
# Utilities
|
||||||
|
#
|
||||||
|
|
||||||
|
Mod+slash
|
||||||
|
show-hotkey-overlay;
|
||||||
|
|
||||||
|
Mod+Return hotkey-overlay-title="Spawn terminal"
|
||||||
|
spawn "alacritty";
|
||||||
|
|
||||||
|
Mod+Space repeat=false hotkey-overlay-title="Launch program"
|
||||||
|
spawn "sh" "-c" "rofi -show drun";
|
||||||
|
|
||||||
|
Mod+b hotkey-overlay-title="Spawn new tab"
|
||||||
|
spawn "qutebrowser";
|
||||||
|
|
||||||
|
Mod+v hotkey-overlay-title="Open clipboard manager"
|
||||||
|
spawn "copyq" "toggle";
|
||||||
|
|
||||||
|
Mod+m hotkey-overlay-title="Select file and copy to clipboard"
|
||||||
|
spawn "alacritty" "-e" "select-and-copy";
|
||||||
|
|
||||||
|
Mod+escape hotkey-overlay-title="Suspend session"
|
||||||
|
spawn "bas" "suspend";
|
||||||
|
|
||||||
|
Mod+n hotkey-overlay-title="View notifications"
|
||||||
|
spawn "bas" "view_notifs";
|
||||||
|
|
||||||
|
Mod+p
|
||||||
|
spawn "bas";
|
||||||
|
|
||||||
|
{,Shift+,Ctrl+}XF86Tools
|
||||||
|
screenshot{,-window,-screen};
|
||||||
|
|
||||||
|
#
|
||||||
|
# System Control
|
||||||
|
#
|
||||||
|
|
||||||
|
{XF86AudioRaiseVolume,XF86AudioLowerVolume} allow-when-locked=true
|
||||||
|
spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ {0.1+,0.1-}";
|
||||||
|
|
||||||
|
XF86AudioMute allow-when-locked=true
|
||||||
|
spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle";
|
||||||
|
|
||||||
|
XF86AudioMicMute allow-when-locked=true
|
||||||
|
spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
|
||||||
|
|
||||||
|
# Control Brightness
|
||||||
|
{XF86MonBrightnessUp,XF86MonBrightnessDown} allow-when-locked=true
|
||||||
|
spawn "brightnessctl" "--class=backlight" "set" "{+10%,10%-}";
|
||||||
|
|
||||||
|
#
|
||||||
|
# Window control
|
||||||
|
#
|
||||||
|
|
||||||
|
Mod+q
|
||||||
|
close-window;
|
||||||
|
|
||||||
|
Mod+g
|
||||||
|
toggle-window-floating;
|
||||||
|
|
||||||
|
Mod+{,Shift+}f
|
||||||
|
{maximize-column,fullscreen-window};
|
||||||
|
|
||||||
|
Mod+t
|
||||||
|
toggle-column-tabbed-display;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Layout navigation/configuration
|
||||||
|
#
|
||||||
|
|
||||||
|
# Overview
|
||||||
|
Mod+a
|
||||||
|
toggle-overview;
|
||||||
|
|
||||||
|
# Focus in direction
|
||||||
|
Mod+{h,j,k,l}
|
||||||
|
Mod+{Left,Down,Up,Right}
|
||||||
|
focus-{column-left,window-or-workspace-down,window-or-workspace-up,column-right};
|
||||||
|
|
||||||
|
Mod+{TouchpadScrollRight,TouchpadScrollLeft}
|
||||||
|
Mod+{WheelScrollUp,WheelScrollDown}
|
||||||
|
focus-column-{right,left};
|
||||||
|
|
||||||
|
# Move window
|
||||||
|
Mod+Shift+{h,j,k,l}
|
||||||
|
Mod+Shift+{Left,Down,Up,Right}
|
||||||
|
# Mod+Shift+{a,s,w,d}
|
||||||
|
{consume-or-expel-window-left,move-window-down-or-to-workspace-down,move-window-up-or-to-workspace-up,consume-or-expel-window-right};
|
||||||
|
|
||||||
|
# Move column
|
||||||
|
Mod+Ctrl+{h,j,k,l}
|
||||||
|
Mod+Ctrl+{Left,Down,Up,Right}
|
||||||
|
# Mod+Ctrl+{a,s,w,d}
|
||||||
|
move-column-{left,to-workspace-down,to-workspace-up,right};
|
||||||
|
|
||||||
|
# Focus/move window/column to workspace
|
||||||
|
Mod{,+Shift,+Ctrl}+{1,2,3,4,5}
|
||||||
|
{focus,move-window-to,move-column-to}-workspace {1,2,3,4,5};
|
||||||
|
|
||||||
|
Mod+{,Shift+}{s,d}
|
||||||
|
{focus,move}-{window-up,window-down};
|
||||||
|
|
||||||
|
# Switch column size
|
||||||
|
# Mod+{z,x}
|
||||||
|
# switch-preset-column-width{-back,};
|
||||||
|
|
||||||
|
Mod+{z,x,c}
|
||||||
|
set-column-width "{35,50,65}%";
|
||||||
85
home/.basilisk/components
Normal file
85
home/.basilisk/components
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
restart_panel,rb,Restart Panel
|
||||||
|
pkill waybar
|
||||||
|
shchemes inject "${BAS_ROOT}/waybar/style.css"
|
||||||
|
waybar \
|
||||||
|
-c "${BAS_ROOT}/waybar/config.jsonc" \
|
||||||
|
-s "${BAS_ROOT}/waybar/style.css" & disown
|
||||||
|
|
||||||
|
notifs,n,Notifications
|
||||||
|
rofication-gui
|
||||||
|
|
||||||
|
power-off-monitors,pm,Power Off Monitors
|
||||||
|
niri msg action power-off-monitors
|
||||||
|
|
||||||
|
lock,l,Lock
|
||||||
|
# filename=$(basename -- "$(xrescat basilisk.wallpaper)")
|
||||||
|
# ext="${filename##*.}"
|
||||||
|
img="/tmp/basilisk-lock.png"
|
||||||
|
# path="$(date +"$HOME/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png")"
|
||||||
|
niri msg action screenshot-screen -p false -d true --path "/tmp/basilisk-lock-raw.png"
|
||||||
|
inotifywait -q -e close_write /tmp/basilisk-lock-raw.png | head -n1
|
||||||
|
magick "/tmp/basilisk-lock-raw.png" \
|
||||||
|
-set colorspace Gray \
|
||||||
|
# -blur 0x8 \
|
||||||
|
"$img"
|
||||||
|
swaylock -i "$img" & disown
|
||||||
|
# swaylock -i "$(xrescat basilisk.wallpaper) & disown
|
||||||
|
|
||||||
|
suspend,ps,Suspend
|
||||||
|
systemctl suspend && lock
|
||||||
|
|
||||||
|
logout,pe,Log Out
|
||||||
|
loginctl terminate-session ${XDG_SESSION_ID-}
|
||||||
|
|
||||||
|
# hibernate,ph,Hibernate
|
||||||
|
# systemctl hibernate
|
||||||
|
|
||||||
|
shutdown,pdy,Shutdown,
|
||||||
|
systemctl poweroff
|
||||||
|
|
||||||
|
reboot,pry,Reboot,
|
||||||
|
systemctl reboot
|
||||||
|
|
||||||
|
reload_compositor,rc,Reload Compositor,
|
||||||
|
shchemes inject "${BAS_ROOT}/niri/config.kdl"
|
||||||
|
|
||||||
|
reload_shell,rs,Reload Shell,
|
||||||
|
"${BAS_ROOT}/genctl"
|
||||||
|
|
||||||
|
timeout_daemon,rdt,Reload Timeout Daemon,
|
||||||
|
pkill swayidle
|
||||||
|
swayidle -w \
|
||||||
|
timeout 300 'bas lock' \
|
||||||
|
timeout 360 'bas power-off-monitors' \
|
||||||
|
before-sleep 'bas power-off-monitors && bas lock' & disown
|
||||||
|
|
||||||
|
notif_daemon,rdn,Reload Notification Daemon,
|
||||||
|
pkill -f rofication-daemon
|
||||||
|
rofication-daemon & disown
|
||||||
|
|
||||||
|
wallpaper,rw,Reload Wallpaper
|
||||||
|
# filename=$(basename -- "$(xrescat basilisk.wallpaper)")
|
||||||
|
# ext="${filename##*.}"
|
||||||
|
# wallpaper_blur_path="/tmp/basilisk-overview-wallpaper.${ext}"
|
||||||
|
# magick convert "$(xrescat basilisk.wallpaper)" -blur 0x12 "$wallpaper_blur_path"
|
||||||
|
# awww img "$wallpaper_blur_path" -n basilisk-overview
|
||||||
|
pkill swaybg
|
||||||
|
swaybg -i "$(xrescat basilisk.wallpaper)"
|
||||||
|
# awww img "$(xrescat basilisk.wallpaper)"
|
||||||
|
|
||||||
|
theme_apps,rat,Reload App Themes,
|
||||||
|
shchemes inject "$HOME/.config/qutebrowser/config.py"
|
||||||
|
shchemes create_theme css > "$HOME/.config/base16.css"
|
||||||
|
shchemes create_theme css > "$HOME/.config/qutebrowser/base16.css"
|
||||||
|
pkill -HUP qutebrowser
|
||||||
|
|
||||||
|
shchemes create_theme rofi > "$HOME/.config/rofi/theme.rasi"
|
||||||
|
|
||||||
|
load,rr,Reload All,
|
||||||
|
reload_shell
|
||||||
|
"$0" reload_compositor
|
||||||
|
"$0" restart_panel
|
||||||
|
"$0" notif_daemon
|
||||||
|
"$0" timeout_daemon
|
||||||
|
"$0" wallpaper
|
||||||
|
"$0" theme_apps
|
||||||
112
home/.basilisk/genctl
Executable file
112
home/.basilisk/genctl
Executable file
@@ -0,0 +1,112 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
awk -F ',' \
|
||||||
|
-v sq="'" \
|
||||||
|
-v printfSn="printf %s\\\\n " \
|
||||||
|
-v rofiTheme='
|
||||||
|
element { font: "Noto Mono 11"; }
|
||||||
|
' '
|
||||||
|
function endBlock() {
|
||||||
|
if(blockState == 0) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(blockState == 1) {
|
||||||
|
print "Warning: " name " has no body and will not be ignored"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
print name "() {"
|
||||||
|
print body
|
||||||
|
print "}"
|
||||||
|
i=f++
|
||||||
|
funcs[i]["name"] = name
|
||||||
|
funcs[i]["icon"] = icon
|
||||||
|
funcs[i]["shortcut"] = shortcut
|
||||||
|
funcs[i]["label"] = label
|
||||||
|
|
||||||
|
body=""
|
||||||
|
bindLinesCount=0
|
||||||
|
blockState=0
|
||||||
|
}
|
||||||
|
|
||||||
|
BEGIN {
|
||||||
|
print "#!/bin/sh"
|
||||||
|
print "export SCHEME=\"$(xrescat basilisk.theme)\""
|
||||||
|
print "export BAS_ROOT=\"$(dirname \"$(realpath \"$0\")\")/../\""
|
||||||
|
shortcutLen=0
|
||||||
|
blockState=0
|
||||||
|
bindLinesCount=0
|
||||||
|
}
|
||||||
|
/^[\t ]*#/ || length($0) == 0 { next }
|
||||||
|
/^[^\t ].*/ {
|
||||||
|
if(blockState > 1) {
|
||||||
|
endBlock()
|
||||||
|
}
|
||||||
|
sub(/^[ \t]+/, "");
|
||||||
|
sub(/[ \t]+$/, "");
|
||||||
|
name=$1
|
||||||
|
shortcut=$2
|
||||||
|
l = length(shortcut)
|
||||||
|
if(l > shortcutLen) {
|
||||||
|
shortcutLen = l
|
||||||
|
}
|
||||||
|
label=$3
|
||||||
|
icon=$4
|
||||||
|
body=""
|
||||||
|
blockState=1
|
||||||
|
next
|
||||||
|
}
|
||||||
|
/^[\t ]+/ && blockState > 0 {
|
||||||
|
blockState=2
|
||||||
|
sub(/^[ \t]+/, "");
|
||||||
|
sub(/[ \t]+$/, "");
|
||||||
|
body=body $0 "\n"
|
||||||
|
next
|
||||||
|
}
|
||||||
|
|
||||||
|
function printRofiBlock() {
|
||||||
|
printf "%s", "printf %s\\\\n " sq
|
||||||
|
f=0
|
||||||
|
for(i in funcs) {
|
||||||
|
if(f!=0) {
|
||||||
|
print ""
|
||||||
|
}
|
||||||
|
f=1
|
||||||
|
printf "%" shortcutLen "s", funcs[i]["shortcut"]
|
||||||
|
printf "%s", ". " funcs[i]["label"]
|
||||||
|
}
|
||||||
|
printf "%s", sq "| rofi_report"
|
||||||
|
}
|
||||||
|
function printMenuBlock() {
|
||||||
|
printf "%s", "case \"$("
|
||||||
|
printRofiBlock()
|
||||||
|
print ")\" in"
|
||||||
|
for(i in funcs) {
|
||||||
|
print i ") " funcs[i]["name"] " ;;"
|
||||||
|
}
|
||||||
|
print "esac"
|
||||||
|
}
|
||||||
|
function printCallBlock() {
|
||||||
|
print "case \"$1\" in"
|
||||||
|
for(i in funcs) {
|
||||||
|
print "\"" funcs[i]["name"] "\") " funcs[i]["name"] " ;;"
|
||||||
|
}
|
||||||
|
for(i in funcs) {
|
||||||
|
print "\"" funcs[i]["shortcut"] "\") " funcs[i]["name"] " ;;"
|
||||||
|
}
|
||||||
|
print "esac"
|
||||||
|
}
|
||||||
|
END {
|
||||||
|
endBlock()
|
||||||
|
print "rofi_report() {"
|
||||||
|
print "[ -n \"$BASILISK_ROFI_REPORT_STATE\" ] && printf %s\\n "open" >> \"$BASILISK_ROFI_REPORT_STATE\""
|
||||||
|
print "rofi -dmenu -format i -matching prefix -auto-select -markup -theme-str " sq rofiTheme sq " $BASILISK_ROFI_ARGS"
|
||||||
|
print "[ -n \"$BASILISK_ROFI_REPORT_STATE\" ] && printf %s\\n "closed" >> \"$BASILISK_ROFI_REPORT_STATE\""
|
||||||
|
print "}"
|
||||||
|
print "if [ -z \"$1\" ]; then"
|
||||||
|
printMenuBlock()
|
||||||
|
print "else"
|
||||||
|
printCallBlock()
|
||||||
|
print "fi"
|
||||||
|
}' "$(dirname "$0")/components" > "$(dirname "$0")/bin/bas"
|
||||||
|
chmod +x "$(dirname "$0")/bin/bas"
|
||||||
7
home/.basilisk/install
Executable file
7
home/.basilisk/install
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
bas_root="$(dirname "$(realpath "$0")")"
|
||||||
|
|
||||||
|
ln -s "${bas_root}/bin/bas" /usr/bin
|
||||||
|
ln -s "${bas_root}/bin/basilisk-session" /usr/bin
|
||||||
|
cp "${bas_root}/share/wayland-sessions/basilisk.desktop" /usr/share/wayland-sessions
|
||||||
23
home/.basilisk/niri/animations.minimal.kdl
Normal file
23
home/.basilisk/niri/animations.minimal.kdl
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
animations {
|
||||||
|
// Uncomment to turn off all animations.
|
||||||
|
// off
|
||||||
|
|
||||||
|
// Slow down all animations by this factor. Values below 1 speed them up instead.
|
||||||
|
// slowdown 3.0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
workspace-switch { off; }
|
||||||
|
window-open { off; }
|
||||||
|
window-close { off; }
|
||||||
|
horizontal-view-movement {
|
||||||
|
// duration-ms 100
|
||||||
|
// curve "linear"
|
||||||
|
// off;
|
||||||
|
}
|
||||||
|
window-movement { off; }
|
||||||
|
window-resize { off; }
|
||||||
|
config-notification-open-close { off; }
|
||||||
|
screenshot-ui-open { off; }
|
||||||
|
// overview-open-close { off; }
|
||||||
|
}
|
||||||
23
home/.basilisk/niri/animations.none.kdl
Normal file
23
home/.basilisk/niri/animations.none.kdl
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
animations {
|
||||||
|
// Uncomment to turn off all animations.
|
||||||
|
// off
|
||||||
|
|
||||||
|
// Slow down all animations by this factor. Values below 1 speed them up instead.
|
||||||
|
// slowdown 3.0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
workspace-switch { off; }
|
||||||
|
window-open { off; }
|
||||||
|
window-close { off; }
|
||||||
|
horizontal-view-movement {
|
||||||
|
// duration-ms 100
|
||||||
|
// curve "linear"
|
||||||
|
off;
|
||||||
|
}
|
||||||
|
window-movement { off; }
|
||||||
|
window-resize { off; }
|
||||||
|
config-notification-open-close { off; }
|
||||||
|
screenshot-ui-open { off; }
|
||||||
|
// overview-open-close { off; }
|
||||||
|
}
|
||||||
527
home/.basilisk/niri/config.kdl
Normal file
527
home/.basilisk/niri/config.kdl
Normal file
@@ -0,0 +1,527 @@
|
|||||||
|
/// This config is in the KDL format: https://kdl.dev
|
||||||
|
// "/-" comments out the following node.
|
||||||
|
// Check the wiki for a full description of the configuration:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Introduction
|
||||||
|
|
||||||
|
// Input device configuration.
|
||||||
|
// Find the full list of options on the wiki:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Input
|
||||||
|
input {
|
||||||
|
focus-follows-mouse
|
||||||
|
warp-mouse-to-focus mode="center-xy"
|
||||||
|
|
||||||
|
keyboard {
|
||||||
|
xkb {
|
||||||
|
// You can set rules, model, layout, variant and options.
|
||||||
|
// For more information, see xkeyboard-config(7).
|
||||||
|
|
||||||
|
// For example:
|
||||||
|
// layout "us,ru"
|
||||||
|
// options "grp:win_space_toggle,compose:ralt,ctrl:nocaps"
|
||||||
|
|
||||||
|
// If this section is empty, niri will fetch xkb settings
|
||||||
|
// from org.freedesktop.locale1. You can control these using
|
||||||
|
// localectl set-x11-keymap.
|
||||||
|
}
|
||||||
|
|
||||||
|
// Enable numlock on startup, omitting this setting disables it.
|
||||||
|
numlock
|
||||||
|
}
|
||||||
|
|
||||||
|
// Next sections include libinput settings.
|
||||||
|
// Omitting settings disables them, or leaves them at their default values.
|
||||||
|
// All commented-out settings here are examples, not defaults.
|
||||||
|
touchpad {
|
||||||
|
// off
|
||||||
|
tap
|
||||||
|
// dwt
|
||||||
|
// dwtp
|
||||||
|
// drag false
|
||||||
|
// drag-lock
|
||||||
|
natural-scroll
|
||||||
|
// accel-speed 0.2
|
||||||
|
// accel-profile "flat"
|
||||||
|
// scroll-method "two-finger"
|
||||||
|
// disabled-on-external-mouse
|
||||||
|
}
|
||||||
|
|
||||||
|
mouse {
|
||||||
|
// off
|
||||||
|
// natural-scroll
|
||||||
|
accel-speed 0.2
|
||||||
|
// accel-profile "flat"
|
||||||
|
// scroll-method "no-scroll"
|
||||||
|
}
|
||||||
|
|
||||||
|
trackpoint {
|
||||||
|
// off
|
||||||
|
// natural-scroll
|
||||||
|
// accel-speed 0.2
|
||||||
|
// accel-profile "flat"
|
||||||
|
// scroll-method "on-button-down"
|
||||||
|
// scroll-button 273
|
||||||
|
// scroll-button-lock
|
||||||
|
// middle-emulation
|
||||||
|
}
|
||||||
|
|
||||||
|
// Uncomment this to make the mouse warp to the center of newly focused windows.
|
||||||
|
// warp-mouse-to-focus
|
||||||
|
|
||||||
|
// Focus windows and outputs automatically when moving the mouse into them.
|
||||||
|
// Setting max-scroll-amount="0%" makes it work only on windows already fully on screen.
|
||||||
|
// focus-follows-mouse max-scroll-amount="0%"
|
||||||
|
}
|
||||||
|
|
||||||
|
// debug {
|
||||||
|
// render-drm-device "/dev/dri/nvidia-gpu"
|
||||||
|
// }
|
||||||
|
|
||||||
|
// You can configure outputs by their name, which you can find
|
||||||
|
// by running `niri msg outputs` while inside a niri instance.
|
||||||
|
// The built-in laptop monitor is usually called "eDP-1".
|
||||||
|
// Find more information on the wiki:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Outputs
|
||||||
|
// Remember to uncomment the node by removing "/-"!
|
||||||
|
/-output "eDP-1" {
|
||||||
|
// Uncomment this line to disable this output.
|
||||||
|
// off
|
||||||
|
|
||||||
|
// Resolution and, optionally, refresh rate of the output.
|
||||||
|
// The format is "<width>x<height>" or "<width>x<height>@<refresh rate>".
|
||||||
|
// If the refresh rate is omitted, niri will pick the highest refresh rate
|
||||||
|
// for the resolution.
|
||||||
|
// If the mode is omitted altogether or is invalid, niri will pick one automatically.
|
||||||
|
// Run `niri msg outputs` while inside a niri instance to list all outputs and their modes.
|
||||||
|
mode "1920x1080@120.030"
|
||||||
|
|
||||||
|
// You can use integer or fractional scale, for example use 1.5 for 150% scale.
|
||||||
|
scale 2
|
||||||
|
|
||||||
|
// Transform allows to rotate the output counter-clockwise, valid values are:
|
||||||
|
// normal, 90, 180, 270, flipped, flipped-90, flipped-180 and flipped-270.
|
||||||
|
transform "normal"
|
||||||
|
|
||||||
|
// Position of the output in the global coordinate space.
|
||||||
|
// This affects directional monitor actions like "focus-monitor-left", and cursor movement.
|
||||||
|
// The cursor can only move between directly adjacent outputs.
|
||||||
|
// Output scale and rotation has to be taken into account for positioning:
|
||||||
|
// outputs are sized in logical, or scaled, pixels.
|
||||||
|
// For example, a 3840×2160 output with scale 2.0 will have a logical size of 1920×1080,
|
||||||
|
// so to put another output directly adjacent to it on the right, set its x to 1920.
|
||||||
|
// If the position is unset or results in an overlap, the output is instead placed
|
||||||
|
// automatically.
|
||||||
|
position x=1280 y=0
|
||||||
|
}
|
||||||
|
|
||||||
|
cursor {
|
||||||
|
xcursor-theme "Mocu-Black-Right"
|
||||||
|
}
|
||||||
|
// environment {
|
||||||
|
// GTK_THEME
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Settings that influence how windows are positioned and sized.
|
||||||
|
// Find more information on the wiki:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Layout
|
||||||
|
layout {
|
||||||
|
// Set gaps around windows in logical pixels.
|
||||||
|
gaps 6
|
||||||
|
|
||||||
|
// When to center a column when changing focus, options are:
|
||||||
|
// - "never", default behavior, focusing an off-screen column will keep at the left
|
||||||
|
// or right edge of the screen.
|
||||||
|
// - "always", the focused column will always be centered.
|
||||||
|
// - "on-overflow", focusing a column will center it if it doesn't fit
|
||||||
|
// together with the previously focused column.
|
||||||
|
center-focused-column "never"
|
||||||
|
|
||||||
|
// You can customize the widths that "switch-preset-column-width" (Mod+R) toggles between.
|
||||||
|
preset-column-widths {
|
||||||
|
// Proportion sets the width as a fraction of the output width, taking gaps into account.
|
||||||
|
// For example, you can perfectly fit four windows sized "proportion 0.25" on an output.
|
||||||
|
// The default preset widths are 1/3, 1/2 and 2/3 of the output.
|
||||||
|
proportion 0.33333
|
||||||
|
proportion 0.5
|
||||||
|
proportion 0.66667
|
||||||
|
|
||||||
|
// Fixed sets the width in logical pixels exactly.
|
||||||
|
// fixed 1920
|
||||||
|
}
|
||||||
|
|
||||||
|
// You can also customize the heights that "switch-preset-window-height" (Mod+Shift+R) toggles between.
|
||||||
|
// preset-window-heights { }
|
||||||
|
|
||||||
|
// You can change the default width of the new windows.
|
||||||
|
default-column-width { proportion 0.5; }
|
||||||
|
// If you leave the brackets empty, the windows themselves will decide their initial width.
|
||||||
|
// default-column-width {}
|
||||||
|
|
||||||
|
// By default focus ring and border are rendered as a solid background rectangle
|
||||||
|
// behind windows. That is, they will show up through semitransparent windows.
|
||||||
|
// This is because windows using client-side decorations can have an arbitrary shape.
|
||||||
|
//
|
||||||
|
// If you don't like that, you should uncomment `prefer-no-csd` below.
|
||||||
|
// Niri will draw focus ring and border *around* windows that agree to omit their
|
||||||
|
// client-side decorations.
|
||||||
|
//
|
||||||
|
// Alternatively, you can override it with a window rule called
|
||||||
|
// `draw-border-with-background`.
|
||||||
|
|
||||||
|
// You can change how the focus ring looks.
|
||||||
|
focus-ring {
|
||||||
|
// Uncomment this line to disable the focus ring.
|
||||||
|
// off
|
||||||
|
|
||||||
|
// How many logical pixels the ring extends out from the windows.
|
||||||
|
width 2
|
||||||
|
|
||||||
|
// Colors can be set in a variety of ways:
|
||||||
|
// - CSS named colors: "red"
|
||||||
|
// - RGB hex: "#rgb", "#rgba", "#rrggbb", "#rrggbbaa"
|
||||||
|
// - CSS-like notation: "rgb(255, 127, 0)", rgba(), hsl() and a few others.
|
||||||
|
|
||||||
|
// Color of the ring on the active monitor.
|
||||||
|
active-color "#7fc8ff"
|
||||||
|
|
||||||
|
// Color of the ring on inactive monitors.
|
||||||
|
//
|
||||||
|
// The focus ring only draws around the active window, so the only place
|
||||||
|
// where you can see its inactive-color is on other monitors.
|
||||||
|
inactive-color "#505050"
|
||||||
|
|
||||||
|
// You can also use gradients. They take precedence over solid colors.
|
||||||
|
// Gradients are rendered the same as CSS linear-gradient(angle, from, to).
|
||||||
|
// The angle is the same as in linear-gradient, and is optional,
|
||||||
|
// defaulting to 180 (top-to-bottom gradient).
|
||||||
|
// You can use any CSS linear-gradient tool on the web to set these up.
|
||||||
|
// Changing the color space is also supported, check the wiki for more info.
|
||||||
|
//
|
||||||
|
// active-gradient from="#80c8ff" to="#c7ff7f" angle=45
|
||||||
|
|
||||||
|
// You can also color the gradient relative to the entire view
|
||||||
|
// of the workspace, rather than relative to just the window itself.
|
||||||
|
// To do that, set relative-to="workspace-view".
|
||||||
|
//
|
||||||
|
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
||||||
|
}
|
||||||
|
|
||||||
|
tab-indicator {
|
||||||
|
// off
|
||||||
|
// on
|
||||||
|
// hide-when-single-tab
|
||||||
|
place-within-column
|
||||||
|
gap 4
|
||||||
|
width 4
|
||||||
|
length total-proportion=1.0
|
||||||
|
position "right"
|
||||||
|
gaps-between-tabs 2
|
||||||
|
// corner-radius 8
|
||||||
|
// active-color "red"
|
||||||
|
// inactive-color "gray"
|
||||||
|
// urgent-color "blue"
|
||||||
|
// active-gradient from="#80c8ff" to="#bbddff" angle=45
|
||||||
|
// inactive-gradient from="#505050" to="#808080" angle=45 relative-to="workspace-view"
|
||||||
|
// urgent-gradient from="#800" to="#a33" angle=45
|
||||||
|
}
|
||||||
|
|
||||||
|
// You can also add a border. It's similar to the focus ring, but always visible.
|
||||||
|
border {
|
||||||
|
// The settings are the same as for the focus ring.
|
||||||
|
// If you enable the border, you probably want to disable the focus ring.
|
||||||
|
off
|
||||||
|
|
||||||
|
width 3
|
||||||
|
active-color "#ffc87f"
|
||||||
|
inactive-color "#505050"
|
||||||
|
|
||||||
|
// Color of the border around windows that request your attention.
|
||||||
|
urgent-color "#9b0000"
|
||||||
|
|
||||||
|
// Gradients can use a few different interpolation color spaces.
|
||||||
|
// For example, this is a pastel rainbow gradient via in="oklch longer hue".
|
||||||
|
//
|
||||||
|
// active-gradient from="#e5989b" to="#ffb4a2" angle=45 relative-to="workspace-view" in="oklch longer hue"
|
||||||
|
|
||||||
|
// inactive-gradient from="#505050" to="#808080" angle=0 relative-to="workspace-view"
|
||||||
|
}
|
||||||
|
|
||||||
|
// You can enable drop shadows for windows.
|
||||||
|
shadow {
|
||||||
|
// Uncomment the next line to enable shadows.
|
||||||
|
on
|
||||||
|
|
||||||
|
// By default, the shadow draws only around its window, and not behind it.
|
||||||
|
// Uncomment this setting to make the shadow draw behind its window.
|
||||||
|
//
|
||||||
|
// Note that niri has no way of knowing about the CSD window corner
|
||||||
|
// radius. It has to assume that windows have square corners, leading to
|
||||||
|
// shadow artifacts inside the CSD rounded corners. This setting fixes
|
||||||
|
// those artifacts.
|
||||||
|
//
|
||||||
|
// However, instead you may want to set prefer-no-csd and/or
|
||||||
|
// geometry-corner-radius. Then, niri will know the corner radius and
|
||||||
|
// draw the shadow correctly, without having to draw it behind the
|
||||||
|
// window. These will also remove client-side shadows if the window
|
||||||
|
// draws any.
|
||||||
|
//
|
||||||
|
// draw-behind-window true
|
||||||
|
|
||||||
|
// You can change how shadows look. The values below are in logical
|
||||||
|
// pixels and match the CSS box-shadow properties.
|
||||||
|
|
||||||
|
// Softness controls the shadow blur radius.
|
||||||
|
softness 30
|
||||||
|
|
||||||
|
// Spread expands the shadow.
|
||||||
|
spread 3
|
||||||
|
|
||||||
|
// Offset moves the shadow relative to the window.
|
||||||
|
offset x=0 y=5
|
||||||
|
|
||||||
|
// You can also change the shadow color and opacity.
|
||||||
|
color "#0007"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Struts shrink the area occupied by windows, similarly to layer-shell panels.
|
||||||
|
// You can think of them as a kind of outer gaps. They are set in logical pixels.
|
||||||
|
// Left and right struts will cause the next window to the side to always be visible.
|
||||||
|
// Top and bottom struts will simply add outer gaps in addition to the area occupied by
|
||||||
|
// layer-shell panels and regular gaps.
|
||||||
|
struts {
|
||||||
|
// left 32
|
||||||
|
// right 32
|
||||||
|
// top 64
|
||||||
|
// bottom 64
|
||||||
|
}
|
||||||
|
|
||||||
|
background-color "transparent"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add lines like this to spawn processes at startup.
|
||||||
|
// Note that running niri as a session supports xdg-desktop-autostart,
|
||||||
|
// which may be more convenient to use.
|
||||||
|
// See the binds section below for more spawn examples.
|
||||||
|
|
||||||
|
// This line starts waybar, a commonly used bar for Wayland compositors.
|
||||||
|
spawn-at-startup "copyq"
|
||||||
|
spawn-at-startup "sh" "-c" "bas load"
|
||||||
|
spawn-at-startup "steam" "-silent" "-system-composer"
|
||||||
|
|
||||||
|
prefer-no-csd
|
||||||
|
|
||||||
|
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
|
||||||
|
// spawn-sh-at-startup "qs -c ~/source/qs/MyAwesomeShell"
|
||||||
|
|
||||||
|
hotkey-overlay {
|
||||||
|
// Uncomment this line to disable the "Important Hotkeys" pop-up at startup.
|
||||||
|
// skip-at-startup
|
||||||
|
}
|
||||||
|
|
||||||
|
layer-rule {
|
||||||
|
match namespace="wallpaper"
|
||||||
|
place-within-backdrop true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Uncomment this line to ask the clients to omit their client-side decorations if possible.
|
||||||
|
// If the client will specifically ask for CSD, the request will be honored.
|
||||||
|
// Additionally, clients will be informed that they are tiled, removing some client-side rounded corners.
|
||||||
|
// This option will also fix border/focus ring drawing behind some semitransparent windows.
|
||||||
|
// After enabling or disabling this, you need to restart the apps for this to take effect.
|
||||||
|
// prefer-no-csd
|
||||||
|
|
||||||
|
// You can change the path where screenshots are saved.
|
||||||
|
// A ~ at the front will be expanded to the home directory.
|
||||||
|
// The path is formatted with strftime(3) to give you the screenshot date and time.
|
||||||
|
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
|
||||||
|
|
||||||
|
// You can also set this to null to disable saving screenshots to disk.
|
||||||
|
// screenshot-path null
|
||||||
|
|
||||||
|
// Animation settings.
|
||||||
|
// The wiki explains how to configure individual animations:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Animations
|
||||||
|
|
||||||
|
//START SHCHEMES BLOCK : [ "$(xrescat basilisk.animations.windows)" == "0" ] && cat animations.none.css
|
||||||
|
|
||||||
|
//END SHCHEMES BLOCK
|
||||||
|
//START SHCHEMES BLOCK : [ "$(xrescat basilisk.animations.windows)" == "1" ] && cat animations.minimal.css
|
||||||
|
|
||||||
|
//END SHCHEMES BLOCK
|
||||||
|
|
||||||
|
// Window rules let you adjust behavior for individual windows.
|
||||||
|
// Find more information on the wiki:
|
||||||
|
// https://yalter.github.io/niri/Configuration:-Window-Rules
|
||||||
|
|
||||||
|
// Work around WezTerm's initial configure bug
|
||||||
|
// by setting an empty default-column-width.
|
||||||
|
window-rule {
|
||||||
|
// This regular expression is intentionally made as specific as possible,
|
||||||
|
// since this is the default config, and we want no false positives.
|
||||||
|
// You can get away with just app-id="wezterm" if you want.
|
||||||
|
match app-id=r#"^org\.wezfurlong\.wezterm$"#
|
||||||
|
default-column-width {}
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
match app-id="steam" title=r#"^notificationtoasts_\d+_desktop$"#
|
||||||
|
default-floating-position x=10 y=10 relative-to="bottom-right"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Open the Firefox picture-in-picture player as floating by default.
|
||||||
|
window-rule {
|
||||||
|
// This app-id regular expression will work for both:
|
||||||
|
// - host Firefox (app-id is "firefox")
|
||||||
|
// - Flatpak Firefox (app-id is "org.mozilla.firefox")
|
||||||
|
match app-id=r#"firefox$"# title="^Picture-in-Picture$"
|
||||||
|
open-floating true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Example: block out two password managers from screen capture.
|
||||||
|
// (This example rule is commented out with a "/-" in front.)
|
||||||
|
/-window-rule {
|
||||||
|
match app-id=r#"^org\.keepassxc\.KeePassXC$"#
|
||||||
|
match app-id=r#"^org\.gnome\.World\.Secrets$"#
|
||||||
|
|
||||||
|
block-out-from "screen-capture"
|
||||||
|
|
||||||
|
// Use this instead if you want them visible on third-party screenshot tools.
|
||||||
|
// block-out-from "screencast"
|
||||||
|
}
|
||||||
|
|
||||||
|
window-rule {
|
||||||
|
match app-id="^com.github.hluk.copyq$"
|
||||||
|
|
||||||
|
open-floating true
|
||||||
|
default-floating-position x=8 y=8 relative-to="top-left"
|
||||||
|
default-window-height { fixed 1064; }
|
||||||
|
default-column-width { proportion 0.3; }
|
||||||
|
|
||||||
|
// Use this instead if you want them visible on third-party screenshot tools.
|
||||||
|
// block-out-from "screencast"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Example: enable rounded corners for all windows.
|
||||||
|
// (This example rule is commented out with a "/-" in front.)
|
||||||
|
/-window-rule {
|
||||||
|
geometry-corner-radius 12
|
||||||
|
clip-to-geometry true
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
* binds {
|
||||||
|
* // Keys consist of modifiers separated by + signs, followed by an XKB key name
|
||||||
|
* // in the end. To find an XKB name for a particular key, you may use a program
|
||||||
|
* // like wev.
|
||||||
|
* //
|
||||||
|
* // "Mod" is a special modifier equal to Super when running on a TTY, and to Alt
|
||||||
|
* // when running as a winit window.
|
||||||
|
* //
|
||||||
|
* // Most actions that you can bind here can also be invoked programmatically with
|
||||||
|
* // `niri msg action do-something`.
|
||||||
|
*
|
||||||
|
* // Mod-Shift-/, which is usually the same as Mod-?,
|
||||||
|
* // shows a list of important hotkeys.
|
||||||
|
* Mod+Shift+Slash { show-hotkey-overlay; }
|
||||||
|
*
|
||||||
|
* // Suggested binds for running programs: terminal, app launcher, screen locker.
|
||||||
|
* Mod+T hotkey-overlay-title="Open a Terminal: alacritty" { spawn "alacritty"; }
|
||||||
|
* Mod+D hotkey-overlay-title="Run an Application: fuzzel" { spawn "fuzzel"; }
|
||||||
|
* Super+Alt+L hotkey-overlay-title="Lock the Screen: swaylock" { spawn "swaylock"; }
|
||||||
|
*
|
||||||
|
* // Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
|
||||||
|
* // Note: the entire command goes as a single argument. It's passed verbatim to `sh -c`.
|
||||||
|
* // For example, this is a standard bind to toggle the screen reader (orca).
|
||||||
|
* Super+Alt+S allow-when-locked=true hotkey-overlay-title=null { spawn-sh "pkill orca || exec orca"; }
|
||||||
|
*
|
||||||
|
* // Example volume keys mappings for PipeWire & WirePlumber.
|
||||||
|
* // The allow-when-locked=true property makes them work even when the session is locked.
|
||||||
|
* // Using spawn-sh allows to pass multiple arguments together with the command.
|
||||||
|
* XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; }
|
||||||
|
* XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||||
|
* XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
||||||
|
* XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||||
|
*
|
||||||
|
* // Example brightness key mappings for brightnessctl.
|
||||||
|
* // You can use regular spawn with multiple arguments too (to avoid going through "sh"),
|
||||||
|
* // but you need to manually put each argument in separate "" quotes.
|
||||||
|
* XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
||||||
|
* XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
||||||
|
*/
|
||||||
|
binds {
|
||||||
|
//START SHCHEMES BLOCK : ./genbinds
|
||||||
|
Mod+slash { show-hotkey-overlay; }
|
||||||
|
Mod+Return hotkey-overlay-title="Spawn terminal" { spawn "alacritty"; }
|
||||||
|
Mod+Space repeat=false hotkey-overlay-title="Launch program" { spawn "sh" "-c" "rofi -show drun"; }
|
||||||
|
Mod+b hotkey-overlay-title="Spawn new tab" { spawn "qutebrowser"; }
|
||||||
|
Mod+v hotkey-overlay-title="Open clipboard manager" { spawn "copyq" "toggle"; }
|
||||||
|
Mod+m hotkey-overlay-title="Select file and copy to clipboard" { spawn "alacritty" "-e" "select-and-copy"; }
|
||||||
|
Mod+escape hotkey-overlay-title="Suspend session" { spawn "bas" "suspend"; }
|
||||||
|
Mod+n hotkey-overlay-title="View notifications" { spawn "bas" "view_notifs"; }
|
||||||
|
Mod+p { spawn "bas"; }
|
||||||
|
Ctrl+XF86Tools { screenshot-screen; }
|
||||||
|
XF86Tools { screenshot; }
|
||||||
|
Shift+XF86Tools { screenshot-window; }
|
||||||
|
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
||||||
|
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+"; }
|
||||||
|
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
||||||
|
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
||||||
|
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
||||||
|
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
||||||
|
Mod+q { close-window; }
|
||||||
|
Mod+g { toggle-window-floating; }
|
||||||
|
Mod+Shift+f { fullscreen-window; }
|
||||||
|
Mod+f { maximize-column; }
|
||||||
|
Mod+t { toggle-column-tabbed-display; }
|
||||||
|
Mod+a { toggle-overview; }
|
||||||
|
Mod+l { focus-column-right; }
|
||||||
|
Mod+Right { focus-column-right; }
|
||||||
|
Mod+h { focus-column-left; }
|
||||||
|
Mod+Left { focus-column-left; }
|
||||||
|
Mod+j { focus-window-or-workspace-down; }
|
||||||
|
Mod+Down { focus-window-or-workspace-down; }
|
||||||
|
Mod+k { focus-window-or-workspace-up; }
|
||||||
|
Mod+Up { focus-window-or-workspace-up; }
|
||||||
|
Mod+TouchpadScrollLeft { focus-column-left; }
|
||||||
|
Mod+WheelScrollDown { focus-column-left; }
|
||||||
|
Mod+TouchpadScrollRight { focus-column-right; }
|
||||||
|
Mod+WheelScrollUp { focus-column-right; }
|
||||||
|
Mod+Shift+l { consume-or-expel-window-right; }
|
||||||
|
Mod+Shift+Right { consume-or-expel-window-right; }
|
||||||
|
Mod+Shift+h { consume-or-expel-window-left; }
|
||||||
|
Mod+Shift+Left { consume-or-expel-window-left; }
|
||||||
|
Mod+Shift+j { move-window-down-or-to-workspace-down; }
|
||||||
|
Mod+Shift+Down { move-window-down-or-to-workspace-down; }
|
||||||
|
Mod+Shift+k { move-window-up-or-to-workspace-up; }
|
||||||
|
Mod+Shift+Up { move-window-up-or-to-workspace-up; }
|
||||||
|
Mod+Ctrl+l { move-column-right; }
|
||||||
|
Mod+Ctrl+Right { move-column-right; }
|
||||||
|
Mod+Ctrl+h { move-column-left; }
|
||||||
|
Mod+Ctrl+Left { move-column-left; }
|
||||||
|
Mod+Ctrl+j { move-column-to-workspace-down; }
|
||||||
|
Mod+Ctrl+Down { move-column-to-workspace-down; }
|
||||||
|
Mod+Ctrl+k { move-column-to-workspace-up; }
|
||||||
|
Mod+Ctrl+Up { move-column-to-workspace-up; }
|
||||||
|
Mod+Ctrl+5 { move-column-to-workspace 5; }
|
||||||
|
Mod+5 { focus-workspace 5; }
|
||||||
|
Mod+Shift+5 { move-window-to-workspace 5; }
|
||||||
|
Mod+Ctrl+1 { move-column-to-workspace 1; }
|
||||||
|
Mod+Ctrl+2 { move-column-to-workspace 2; }
|
||||||
|
Mod+Ctrl+3 { move-column-to-workspace 3; }
|
||||||
|
Mod+Ctrl+4 { move-column-to-workspace 4; }
|
||||||
|
Mod+1 { focus-workspace 1; }
|
||||||
|
Mod+2 { focus-workspace 2; }
|
||||||
|
Mod+3 { focus-workspace 3; }
|
||||||
|
Mod+4 { focus-workspace 4; }
|
||||||
|
Mod+Shift+1 { move-window-to-workspace 1; }
|
||||||
|
Mod+Shift+2 { move-window-to-workspace 2; }
|
||||||
|
Mod+Shift+3 { move-window-to-workspace 3; }
|
||||||
|
Mod+Shift+4 { move-window-to-workspace 4; }
|
||||||
|
Mod+Shift+d { move-window-down; }
|
||||||
|
Mod+d { focus-window-down; }
|
||||||
|
Mod+Shift+s { move-window-up; }
|
||||||
|
Mod+s { focus-window-up; }
|
||||||
|
Mod+c { set-column-width "65%"; }
|
||||||
|
Mod+z { set-column-width "35%"; }
|
||||||
|
Mod+x { set-column-width "50%"; }
|
||||||
|
|
||||||
|
//END SHCHEMES BLOCK
|
||||||
|
}
|
||||||
91
home/.basilisk/niri/genbinds
Executable file
91
home/.basilisk/niri/genbinds
Executable file
@@ -0,0 +1,91 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
awk -F '[\t ]*' '
|
||||||
|
function rewriteLine() {
|
||||||
|
split(m[1], opts, ",")
|
||||||
|
for(optsI = 1; optsI < length(opts); optsI++) {
|
||||||
|
lines[linesLen++] = currentLineRewrite opts[optsI] substr(slice, mEnd)
|
||||||
|
}
|
||||||
|
currentLineRewrite = currentLineRewrite opts[optsI]
|
||||||
|
}
|
||||||
|
function rewriteLines() {
|
||||||
|
for(linesI = 0; linesI < linesLen; linesI++) {
|
||||||
|
currentLineRewrite=""
|
||||||
|
mI=1 # match index relative to head
|
||||||
|
mCount=0
|
||||||
|
mEnd=0
|
||||||
|
slice=lines[linesI]
|
||||||
|
while(mI != 0) {
|
||||||
|
mI = match(slice, /{([^}]*)}/, m)
|
||||||
|
if(mI == 0) {
|
||||||
|
currentLineRewrite = currentLineRewrite slice
|
||||||
|
continue
|
||||||
|
} else {
|
||||||
|
currentLineRewrite = currentLineRewrite substr(slice, 0, mI - 1)
|
||||||
|
}
|
||||||
|
mCount++
|
||||||
|
mEnd = mI + length(m[0])
|
||||||
|
rewriteLine()
|
||||||
|
slice = substr(slice, mEnd)
|
||||||
|
}
|
||||||
|
lines[linesI]=currentLineRewrite
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function endBlock() {
|
||||||
|
if(blockState == 0) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(blockState == 1) {
|
||||||
|
delete bindLines
|
||||||
|
bindLinesCount=0
|
||||||
|
blockState=0
|
||||||
|
return
|
||||||
|
}
|
||||||
|
delete lines
|
||||||
|
lines[0]=body
|
||||||
|
linesLen=1
|
||||||
|
rewriteLines()
|
||||||
|
body=""
|
||||||
|
for(i = 0; i < linesLen; i++) {
|
||||||
|
for(j = 0; j < bindLinesCount; j++) {
|
||||||
|
print bindLines[j][i] " { " lines[i] " }"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
delete bindLines
|
||||||
|
bindLinesCount=0
|
||||||
|
blockState=0
|
||||||
|
}
|
||||||
|
|
||||||
|
BEGIN {
|
||||||
|
blockState=0
|
||||||
|
bindLinesCount=0
|
||||||
|
}
|
||||||
|
/^[\t ]*\#/ || length($0) == 0 { next }
|
||||||
|
/^[^\t ].*/ {
|
||||||
|
if(blockState > 1) {
|
||||||
|
endBlock()
|
||||||
|
}
|
||||||
|
sub(/^[ \t]+/, "");
|
||||||
|
sub(/[ \t]+$/, "");
|
||||||
|
delete lines
|
||||||
|
lines[0]=$0
|
||||||
|
linesLen=1
|
||||||
|
rewriteLines()
|
||||||
|
for(i = 0; i < linesLen; i++) {
|
||||||
|
bindLines[bindLinesCount][i]=lines[i]
|
||||||
|
}
|
||||||
|
bindLinesCount++
|
||||||
|
blockState=1
|
||||||
|
next
|
||||||
|
}
|
||||||
|
/^[\t ]+/ && blockState > 0 {
|
||||||
|
blockState=2
|
||||||
|
sub(/^[ \t]+/, "");
|
||||||
|
sub(/[ \t]+$/, "");
|
||||||
|
body=body " " $0
|
||||||
|
next
|
||||||
|
}
|
||||||
|
|
||||||
|
END {
|
||||||
|
endBlock()
|
||||||
|
}' ../binds
|
||||||
7
home/.basilisk/niri/reload
Executable file
7
home/.basilisk/niri/reload
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
bas_root="$(dirname "$0")"
|
||||||
|
|
||||||
|
export SCHEME="$(xrescat basilisk.theme)"
|
||||||
|
shchemes inject "${bas_root}/config.kdl"
|
||||||
|
"${bas_root}/genctl"
|
||||||
6
home/.basilisk/share/wayland-sessions/basilisk.desktop
Normal file
6
home/.basilisk/share/wayland-sessions/basilisk.desktop
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Basilisk
|
||||||
|
Comment=A scrollable-tiling Wayland compositor
|
||||||
|
Exec=basilisk-session
|
||||||
|
Type=Application
|
||||||
|
DesktopNames=basilisk
|
||||||
5
home/.basilisk/uninstall
Executable file
5
home/.basilisk/uninstall
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
rm /usr/bin/bas
|
||||||
|
rm /usr/bin/basilisk-session
|
||||||
|
rm /usr/share/wayland-sessions/basilisk.desktop
|
||||||
7
home/.basilisk/waybar/animations.css
Normal file
7
home/.basilisk/waybar/animations.css
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
.module#workspaces button {
|
||||||
|
transition: 0.1s padding, 0.1s padding;
|
||||||
|
}
|
||||||
|
|
||||||
|
#audio #pulseaudio.preview {
|
||||||
|
transition: 0.2s color;
|
||||||
|
}
|
||||||
125
home/.basilisk/waybar/config.jsonc
Normal file
125
home/.basilisk/waybar/config.jsonc
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
{
|
||||||
|
"modules-left": [
|
||||||
|
"custom/power",
|
||||||
|
"custom/rofication",
|
||||||
|
"keyboard-state",
|
||||||
|
"niri/workspaces"
|
||||||
|
],
|
||||||
|
"modules-center": [
|
||||||
|
"niri/window"
|
||||||
|
],
|
||||||
|
"modules-right": [
|
||||||
|
"group/audio",
|
||||||
|
"tray",
|
||||||
|
"bluetooth",
|
||||||
|
"clock#hour",
|
||||||
|
"clock#minutes"
|
||||||
|
],
|
||||||
|
"layer": "top",
|
||||||
|
"position": "left",
|
||||||
|
"width": 38,
|
||||||
|
"spacing": 0,
|
||||||
|
"custom/power": {
|
||||||
|
"format": "",
|
||||||
|
"on-click": "pkill rofi || rofi-power",
|
||||||
|
"return-type": "json"
|
||||||
|
},
|
||||||
|
"custom/rofication": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"none": "",
|
||||||
|
"some": "",
|
||||||
|
"critical": "",
|
||||||
|
"error": ""
|
||||||
|
},
|
||||||
|
"interval": 2,
|
||||||
|
"on-click": "pkill rofication-gui || rofication-gui",
|
||||||
|
"exec": "rofication-status",
|
||||||
|
"return-type": "json"
|
||||||
|
},
|
||||||
|
"keyboard-state": {
|
||||||
|
"numlock": true,
|
||||||
|
"capslock": true,
|
||||||
|
"format": {
|
||||||
|
"numlock": "N{icon}",
|
||||||
|
"capslock": "C{icon}"
|
||||||
|
},
|
||||||
|
"format-icons": {
|
||||||
|
"locked": "",
|
||||||
|
"unlocked": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"niri/workspaces": {},
|
||||||
|
"niri/window": {
|
||||||
|
"format": "{}",
|
||||||
|
"rotate": 90
|
||||||
|
},
|
||||||
|
"pulseaudio#main": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-bluetooth": "{icon}\n",
|
||||||
|
"format-icons": {
|
||||||
|
"alsa_output.pci-0000_00_1f.3.analog-stereo": "",
|
||||||
|
"alsa_output.pci-0000_00_1f.3.analog-stereo-muted": "",
|
||||||
|
"headphone": "",
|
||||||
|
"hands-free": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"phone-muted": "",
|
||||||
|
"default": [
|
||||||
|
"",
|
||||||
|
"",
|
||||||
|
""
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"format-muted": "",
|
||||||
|
"scroll-step": 2,
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"pulseaudio#preview": {
|
||||||
|
"format": "{volume}%"
|
||||||
|
},
|
||||||
|
"pulseaudio/slider": {
|
||||||
|
"min": 0,
|
||||||
|
"max": 100,
|
||||||
|
"orientation": "vertical"
|
||||||
|
},
|
||||||
|
"group/audio": {
|
||||||
|
"orientation": "vertical",
|
||||||
|
"drawer": {
|
||||||
|
"transition-left-to-right": false,
|
||||||
|
"transition-duration": 200
|
||||||
|
},
|
||||||
|
"modules": [
|
||||||
|
"pulseaudio#main",
|
||||||
|
"pulseaudio#preview",
|
||||||
|
"pulseaudio/slider"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 20,
|
||||||
|
"show-passive-items": true,
|
||||||
|
"spacing": 3
|
||||||
|
},
|
||||||
|
"bluetooth": {
|
||||||
|
"format": "",
|
||||||
|
"format-connected": "",
|
||||||
|
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||||
|
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||||
|
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||||
|
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
|
||||||
|
},
|
||||||
|
"clock#hour": {
|
||||||
|
"format": "{:%I}",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "{:%Y-%m-%d}",
|
||||||
|
"max-length": 5,
|
||||||
|
"interval": 60
|
||||||
|
},
|
||||||
|
"clock#minutes": {
|
||||||
|
"format": "{:%M}",
|
||||||
|
"tooltip": true,
|
||||||
|
"tooltip-format": "{:%Y-%m-%d}",
|
||||||
|
"max-length": 5,
|
||||||
|
"interval": 60
|
||||||
|
}
|
||||||
|
}
|
||||||
192
home/.basilisk/waybar/generate.js
Normal file
192
home/.basilisk/waybar/generate.js
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
import * as FS from 'fs/promises'
|
||||||
|
import * as Path from 'path'
|
||||||
|
import * as SASS from 'sass'
|
||||||
|
|
||||||
|
let bar = {}
|
||||||
|
|
||||||
|
// const Section = {
|
||||||
|
// START: 'modules-left',
|
||||||
|
// MIDDLE: 'modules-center',
|
||||||
|
// END: 'modules-right'
|
||||||
|
// }
|
||||||
|
const Section = {
|
||||||
|
START: 'modules-left',
|
||||||
|
MIDDLE: 'modules-center',
|
||||||
|
END: 'modules-right'
|
||||||
|
}
|
||||||
|
|
||||||
|
function main() {
|
||||||
|
bar[Section.START] = []
|
||||||
|
bar[Section.MIDDLE] = []
|
||||||
|
bar[Section.END] = []
|
||||||
|
|
||||||
|
// bar.mode = 'overlay'
|
||||||
|
// bar.exclusive = true
|
||||||
|
// bar.position = 'top'
|
||||||
|
// bar.height = 28
|
||||||
|
bar.layer = 'top'
|
||||||
|
bar.position = 'left'
|
||||||
|
// bar.width = 28
|
||||||
|
bar.width = 38
|
||||||
|
bar.spacing = 0
|
||||||
|
|
||||||
|
module('custom/power', {
|
||||||
|
format: "\ue8ac",
|
||||||
|
'on-click': "pkill rofi || rofi-power",
|
||||||
|
// 'exec': "~/.config/waybar/watch-power-menu-state",
|
||||||
|
'return-type': "json"
|
||||||
|
}, Section.START)
|
||||||
|
|
||||||
|
module('custom/rofication', {
|
||||||
|
format: "{icon}",
|
||||||
|
'format-icons': {
|
||||||
|
"none": "\ue7f4",
|
||||||
|
"some": "\uf4fe",
|
||||||
|
"critical": "\uf4fe",
|
||||||
|
"error": "\ue004"
|
||||||
|
},
|
||||||
|
'interval': 2,
|
||||||
|
'on-click': "pkill rofication-gui || rofication-gui",
|
||||||
|
'exec': "rofication-status",
|
||||||
|
'return-type': "json"
|
||||||
|
}, Section.START)
|
||||||
|
|
||||||
|
module('keyboard-state', {
|
||||||
|
"numlock": true,
|
||||||
|
"capslock": true,
|
||||||
|
"format": {
|
||||||
|
"numlock": "N{icon}",
|
||||||
|
"capslock": "C{icon}"
|
||||||
|
},
|
||||||
|
"format-icons": {
|
||||||
|
"locked": "",
|
||||||
|
"unlocked": ""
|
||||||
|
}
|
||||||
|
}, Section.START)
|
||||||
|
|
||||||
|
module('niri/workspaces', {
|
||||||
|
// format: ""
|
||||||
|
}, Section.START)
|
||||||
|
|
||||||
|
module('niri/window', {
|
||||||
|
format: "{}",
|
||||||
|
rotate: 90
|
||||||
|
}, Section.MIDDLE)
|
||||||
|
|
||||||
|
// module('temperature', {
|
||||||
|
// format: "{temperatureC}°C"
|
||||||
|
// }, Section.END)
|
||||||
|
|
||||||
|
group('group/audio', {
|
||||||
|
orientation: 'vertical',
|
||||||
|
drawer: {
|
||||||
|
'transition-left-to-right': false,
|
||||||
|
'transition-duration': 200
|
||||||
|
}
|
||||||
|
}, [
|
||||||
|
component('pulseaudio#main', {
|
||||||
|
format: "{icon}",
|
||||||
|
// 'format-bluetooth': "{icon}\n\ue1a8",
|
||||||
|
"format-icons": {
|
||||||
|
"alsa_output.pci-0000_00_1f.3.analog-stereo": "\ue050",
|
||||||
|
"alsa_output.pci-0000_00_1f.3.analog-stereo-muted": "\ue04f",
|
||||||
|
"headphone": "\uf01f",
|
||||||
|
"hands-free": "\uf324",
|
||||||
|
"headset": "\ue311",
|
||||||
|
"phone": "\ue9cd",
|
||||||
|
"phone-muted": "\ue9cc",
|
||||||
|
"default": ["\ue04e", "\ue04d", "\ue050" ]
|
||||||
|
},
|
||||||
|
"format-muted": "\ue04f",
|
||||||
|
// "format-icons": {
|
||||||
|
// "mute": "\ue04e",
|
||||||
|
// "quiet": "\ue04d",
|
||||||
|
// "medium": "\ue050",
|
||||||
|
// "loud": "\ue050"
|
||||||
|
// },
|
||||||
|
// states: [ "mute", "quiet", "medium", "loud" ],
|
||||||
|
'scroll-step': 2,
|
||||||
|
'on-click': 'pavucontrol'
|
||||||
|
}),
|
||||||
|
component('pulseaudio#preview', {
|
||||||
|
format: "{volume}%",
|
||||||
|
// rotate: 90
|
||||||
|
}),
|
||||||
|
component('pulseaudio/slider', {
|
||||||
|
"min": 0,
|
||||||
|
"max": 100,
|
||||||
|
"orientation": "vertical"
|
||||||
|
})
|
||||||
|
], Section.END)
|
||||||
|
|
||||||
|
module('tray', {
|
||||||
|
'icon-size': 20,
|
||||||
|
'show-passive-items': true,
|
||||||
|
'spacing': 3
|
||||||
|
}, Section.END)
|
||||||
|
|
||||||
|
module('bluetooth', {
|
||||||
|
"format": "\ue1a7",
|
||||||
|
"format-connected": "\ue1a8",
|
||||||
|
// "format-connected-battery": "\ue1a8",
|
||||||
|
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||||
|
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||||
|
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||||
|
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%"
|
||||||
|
}, Section.END)
|
||||||
|
|
||||||
|
// module('upower', {
|
||||||
|
// "icon-size": 20,
|
||||||
|
// "hide-if-empty": true,
|
||||||
|
// "tooltip": true,
|
||||||
|
// "tooltip-spacing": 20,
|
||||||
|
// // 'show-icon': false,
|
||||||
|
// }, Section.END)
|
||||||
|
|
||||||
|
|
||||||
|
const clockCommon = {
|
||||||
|
tooltip: true,
|
||||||
|
"tooltip-format": "{:%Y-%m-%d}",
|
||||||
|
"max-length": 5,
|
||||||
|
"interval": 60,
|
||||||
|
}
|
||||||
|
module('clock#hour', {
|
||||||
|
"format": "{:%I}",
|
||||||
|
...clockCommon
|
||||||
|
}, Section.END)
|
||||||
|
|
||||||
|
module('clock#minutes', {
|
||||||
|
"format": "{:%M}",
|
||||||
|
...clockCommon
|
||||||
|
}, Section.END)
|
||||||
|
|
||||||
|
// module('power', {})
|
||||||
|
}
|
||||||
|
|
||||||
|
function module(name, config, position) {
|
||||||
|
component(name, config)
|
||||||
|
bar[position].push(name)
|
||||||
|
}
|
||||||
|
|
||||||
|
function component(name, config) {
|
||||||
|
bar[name] = config
|
||||||
|
return name
|
||||||
|
}
|
||||||
|
|
||||||
|
function group(name, options, components, position) {
|
||||||
|
let d = {
|
||||||
|
...options,
|
||||||
|
modules: components
|
||||||
|
}
|
||||||
|
module(name, d, position)
|
||||||
|
}
|
||||||
|
|
||||||
|
main()
|
||||||
|
await FS.writeFile(
|
||||||
|
Path.join(import.meta.dirname, 'config.jsonc'),
|
||||||
|
JSON.stringify(bar, null, 4)
|
||||||
|
)
|
||||||
|
// await FS.writeFile(
|
||||||
|
// Path.join(import.meta.dirname, 'style.css'),
|
||||||
|
// await SASS.compileAsync('style.scss').then(r => r.css)
|
||||||
|
// )
|
||||||
490
home/.basilisk/waybar/package-lock.json
generated
Normal file
490
home/.basilisk/waybar/package-lock.json
generated
Normal file
@@ -0,0 +1,490 @@
|
|||||||
|
{
|
||||||
|
"name": "waybar",
|
||||||
|
"lockfileVersion": 3,
|
||||||
|
"requires": true,
|
||||||
|
"packages": {
|
||||||
|
"": {
|
||||||
|
"dependencies": {
|
||||||
|
"sass": "^1.94.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==",
|
||||||
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"detect-libc": "^1.0.3",
|
||||||
|
"is-glob": "^4.0.3",
|
||||||
|
"micromatch": "^4.0.5",
|
||||||
|
"node-addon-api": "^7.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@parcel/watcher-android-arm64": "2.5.1",
|
||||||
|
"@parcel/watcher-darwin-arm64": "2.5.1",
|
||||||
|
"@parcel/watcher-darwin-x64": "2.5.1",
|
||||||
|
"@parcel/watcher-freebsd-x64": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-arm-glibc": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-arm-musl": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-arm64-glibc": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-arm64-musl": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-x64-glibc": "2.5.1",
|
||||||
|
"@parcel/watcher-linux-x64-musl": "2.5.1",
|
||||||
|
"@parcel/watcher-win32-arm64": "2.5.1",
|
||||||
|
"@parcel/watcher-win32-ia32": "2.5.1",
|
||||||
|
"@parcel/watcher-win32-x64": "2.5.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-android-arm64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"android"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-darwin-arm64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-darwin-x64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-freebsd-x64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-arm-glibc": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-arm-musl": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==",
|
||||||
|
"cpu": [
|
||||||
|
"arm"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-arm64-glibc": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-arm64-musl": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-x64-glibc": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-linux-x64-musl": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-win32-arm64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-win32-ia32": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==",
|
||||||
|
"cpu": [
|
||||||
|
"ia32"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@parcel/watcher-win32-x64": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"win32"
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 10.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/parcel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/braces": {
|
||||||
|
"version": "3.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
|
||||||
|
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"fill-range": "^7.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/chokidar": {
|
||||||
|
"version": "4.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
|
||||||
|
"integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"readdirp": "^4.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 14.16.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://paulmillr.com/funding/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/detect-libc": {
|
||||||
|
"version": "1.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
|
||||||
|
"integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"optional": true,
|
||||||
|
"bin": {
|
||||||
|
"detect-libc": "bin/detect-libc.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/fill-range": {
|
||||||
|
"version": "7.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
|
||||||
|
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"to-regex-range": "^5.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/immutable": {
|
||||||
|
"version": "5.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.4.tgz",
|
||||||
|
"integrity": "sha512-p6u1bG3YSnINT5RQmx/yRZBpenIl30kVxkTLDyHLIMk0gict704Q9n+thfDI7lTRm9vXdDYutVzXhzcThxTnXA==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
|
"node_modules/is-extglob": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/is-glob": {
|
||||||
|
"version": "4.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||||
|
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"is-extglob": "^2.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/is-number": {
|
||||||
|
"version": "7.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||||
|
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/micromatch": {
|
||||||
|
"version": "4.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
|
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"braces": "^3.0.3",
|
||||||
|
"picomatch": "^2.3.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/node-addon-api": {
|
||||||
|
"version": "7.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
|
||||||
|
"integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"node_modules/picomatch": {
|
||||||
|
"version": "2.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||||
|
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8.6"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/readdirp": {
|
||||||
|
"version": "4.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
|
||||||
|
"integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 14.18.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "individual",
|
||||||
|
"url": "https://paulmillr.com/funding/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/sass": {
|
||||||
|
"version": "1.94.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/sass/-/sass-1.94.2.tgz",
|
||||||
|
"integrity": "sha512-N+7WK20/wOr7CzA2snJcUSSNTCzeCGUTFY3OgeQP3mZ1aj9NMQ0mSTXwlrnd89j33zzQJGqIN52GIOmYrfq46A==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"chokidar": "^4.0.0",
|
||||||
|
"immutable": "^5.0.2",
|
||||||
|
"source-map-js": ">=0.6.2 <2.0.0"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"sass": "sass.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14.0.0"
|
||||||
|
},
|
||||||
|
"optionalDependencies": {
|
||||||
|
"@parcel/watcher": "^2.4.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/source-map-js": {
|
||||||
|
"version": "1.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||||
|
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
||||||
|
"license": "BSD-3-Clause",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/to-regex-range": {
|
||||||
|
"version": "5.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||||
|
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"dependencies": {
|
||||||
|
"is-number": "^7.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
5
home/.basilisk/waybar/package.json
Normal file
5
home/.basilisk/waybar/package.json
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"dependencies": {
|
||||||
|
"sass": "^1.94.2"
|
||||||
|
}
|
||||||
|
}
|
||||||
200
home/.basilisk/waybar/style.css
Normal file
200
home/.basilisk/waybar/style.css
Normal file
@@ -0,0 +1,200 @@
|
|||||||
|
/*START SHCHEMES BLOCK : shchemes create_theme gtk3*/
|
||||||
|
@define-color a #ff5533;
|
||||||
|
@define-color iiv #000000;
|
||||||
|
@define-color iv #111111;
|
||||||
|
@define-color v #00bbbb;
|
||||||
|
@define-color vi #aaaaaa;
|
||||||
|
@define-color vii #ffffff;
|
||||||
|
|
||||||
|
/*END SHCHEMES BLOCK*/
|
||||||
|
@define-color border-sides alpha(#fff, 0.1);
|
||||||
|
@define-color border-highlight alpha(#fff, 0.2);
|
||||||
|
@define-color border-bottom alpha(#666, 0.1);
|
||||||
|
|
||||||
|
* {
|
||||||
|
all: initial;
|
||||||
|
font-family: "Noto Sans Mono", "Material Symbols Outlined", sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background: transparent;
|
||||||
|
color: #ffffff;
|
||||||
|
/* transition-property: background-color;
|
||||||
|
transition-duration: 0.5s;*/
|
||||||
|
padding: 4px;
|
||||||
|
/* padding: 6px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
/*window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
background-color: alpha(@iiv, 0.9);
|
||||||
|
border: 1px solid @border-sides;
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar > box {
|
||||||
|
padding: 4px;
|
||||||
|
background-color: alpha(@iiv, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right .module, .modules-left .module {
|
||||||
|
margin: 3px 0;
|
||||||
|
padding: 3px;
|
||||||
|
border: 1px solid @border-sides;
|
||||||
|
border-top: 1px solid @border-highlight;
|
||||||
|
border-bottom: 1px solid @border-bottom;
|
||||||
|
background: @iv;
|
||||||
|
color: @vii;
|
||||||
|
}
|
||||||
|
.modules-right > :last-child .module, .modules-left > :last-child .module {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.modules-right > :first-child .module, .modules-left > :first-child .module {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.main, #bluetooth, #custom-power, #custom-rofication {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 300;
|
||||||
|
transition: 0.2s color;
|
||||||
|
padding-top: 4px;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
#pulseaudio.main:hover, #bluetooth:hover, #custom-power:hover, #custom-rofication:hover {
|
||||||
|
color: @a;
|
||||||
|
}
|
||||||
|
|
||||||
|
#bluetooth {
|
||||||
|
padding: 3px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#audio #pulseaudio.preview {
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
background: @iiv;
|
||||||
|
color: transparent;
|
||||||
|
transition: 0.2s color;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
#audio:hover #pulseaudio.main {
|
||||||
|
border-top: 0;
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
#audio:hover #pulseaudio.preview {
|
||||||
|
color: @vi;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
border: 1px solid @border-sides;
|
||||||
|
border-top: 1px solid @border-highlight;
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider slider {
|
||||||
|
min-height: 0px;
|
||||||
|
min-width: 0px;
|
||||||
|
opacity: 0;
|
||||||
|
background-image: none;
|
||||||
|
box-shadow: none;
|
||||||
|
min-width: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider slider {
|
||||||
|
border-top: 1px solid @border-highlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider trough {
|
||||||
|
min-height: 100px;
|
||||||
|
background: @iiv;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider highlight {
|
||||||
|
min-width: 10px;
|
||||||
|
background: @iv;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module button:hover {
|
||||||
|
/* background: #ffffff; */
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: 0.5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module#workspaces {
|
||||||
|
padding: 0;
|
||||||
|
background: @iiv;
|
||||||
|
font-size: 4px;
|
||||||
|
}
|
||||||
|
.module#workspaces button {
|
||||||
|
/* transition: 0.15s padding; */
|
||||||
|
border: 1px solid @iiv;
|
||||||
|
border-right: 0;
|
||||||
|
border-left: 0;
|
||||||
|
padding-bottom: 3px;
|
||||||
|
}
|
||||||
|
.module#workspaces button label {
|
||||||
|
color: @vii;
|
||||||
|
}
|
||||||
|
.module#workspaces button:first-child,
|
||||||
|
.module#workspaces button.focused ~ button, .module#workspaces button:hover ~ button:not(.focused) {
|
||||||
|
padding-top: 3px;
|
||||||
|
}
|
||||||
|
.module#workspaces button:hover, .module#workspaces button.focused ~ button:hover {
|
||||||
|
background: inherit;
|
||||||
|
border-color: @iv;
|
||||||
|
padding: 16px 0;
|
||||||
|
}
|
||||||
|
.module#workspaces button.empty label {
|
||||||
|
color: @vi;
|
||||||
|
}
|
||||||
|
.module#workspaces button.focused {
|
||||||
|
padding: 16px 0;
|
||||||
|
background: @iv;
|
||||||
|
border-top: 1px solid @border-sides;
|
||||||
|
border-bottom: 1px solid @border-bottom;
|
||||||
|
}
|
||||||
|
.module#workspaces button.focused label {
|
||||||
|
color: @v;
|
||||||
|
}
|
||||||
|
.module#workspaces button:first-child {
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
.module#workspaces button:last-child {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module#clock.hour {
|
||||||
|
color: @v;
|
||||||
|
padding-bottom: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
border-bottom: 0;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module#clock.minutes {
|
||||||
|
background: @iiv;
|
||||||
|
padding-top: 0;
|
||||||
|
margin-top: 0;
|
||||||
|
border-top: 0;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
/*START SHCHEMES BLOCK : [ ! "$(xrescat basilisk.animations.panel)" == "0" ] && cat animations.css*/
|
||||||
|
.module#workspaces button {
|
||||||
|
transition: 0.1s padding, 0.1s padding;
|
||||||
|
}
|
||||||
|
|
||||||
|
#audio #pulseaudio.preview {
|
||||||
|
transition: 0.2s color;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*END SHCHEMES BLOCK*/
|
||||||
225
home/.basilisk/waybar/style.scss
Normal file
225
home/.basilisk/waybar/style.scss
Normal file
@@ -0,0 +1,225 @@
|
|||||||
|
$iiv: #000;
|
||||||
|
$iv: #111;
|
||||||
|
$v: #0bb;
|
||||||
|
$vi: #aaa;
|
||||||
|
$vii: #fff;
|
||||||
|
$a: #f53;
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: 'Noto Sans Mono', 'Material Symbols Outlined', sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
// background: linear-gradient(to left, transparentize(#000, 0.6), transparentize(#000, 0));
|
||||||
|
background: #0000;
|
||||||
|
color: #ffffff;
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: .5s;
|
||||||
|
|
||||||
|
padding: 4px;
|
||||||
|
// padding-right: 0;
|
||||||
|
// padding: 2px;
|
||||||
|
|
||||||
|
/* padding: 6px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// #waybar > * {
|
||||||
|
// }
|
||||||
|
|
||||||
|
button {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box {
|
||||||
|
}
|
||||||
|
|
||||||
|
#waybar > box {
|
||||||
|
// margin: 4px;
|
||||||
|
// margin-right: 0;
|
||||||
|
|
||||||
|
// background: linear-gradient(to right, transparentize(#000, 0), transparentize(#000, 1));
|
||||||
|
|
||||||
|
padding: 4px;
|
||||||
|
// border-right: 1px solid $iv;
|
||||||
|
background-color: transparentize($iiv, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right, .modules-left {
|
||||||
|
|
||||||
|
|
||||||
|
// background: linear-gradient(to bottom, lighten($iv, 10%), darken($iv, 10%));
|
||||||
|
|
||||||
|
// background:
|
||||||
|
|
||||||
|
// border-top-color: transparentize(lighten($iiv, 15%), 0.6);
|
||||||
|
// border-bottom-color: transparentize(darken($iiv, 15%), 0.5);
|
||||||
|
|
||||||
|
.module {
|
||||||
|
margin: 3px 0;
|
||||||
|
padding: 3px;
|
||||||
|
// padding: 0;
|
||||||
|
border: 1px solid transparentize(#fff, 0.9);
|
||||||
|
border-top: 1px solid transparentize(#fff, 0.8);
|
||||||
|
border-bottom: 1px solid transparentize(#666, 0.9);
|
||||||
|
// background-color: transparentize($iiv, 0.2);
|
||||||
|
background: $iv;
|
||||||
|
color: $vii;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > :last-child .module {
|
||||||
|
margin-bottom: 0;
|
||||||
|
// padding-bottom: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
& > :first-child .module {
|
||||||
|
margin-top: 0;
|
||||||
|
|
||||||
|
// padding-top: 6px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#window {
|
||||||
|
// padding: 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.main, #bluetooth, #custom-power, #custom-rofication {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-power, #custom-rofication {
|
||||||
|
padding-top: 4px;
|
||||||
|
padding-bottom: 2px; // Cheat squareness
|
||||||
|
}
|
||||||
|
|
||||||
|
#audio {
|
||||||
|
#pulseaudio.preview {
|
||||||
|
border: 0;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
background: $iiv;
|
||||||
|
color: #0000;
|
||||||
|
transition: .2s color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
#pulseaudio.main {
|
||||||
|
border-top: 0;
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.preview {
|
||||||
|
background: transparent;
|
||||||
|
color: $vi;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio-slider {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
#pulseaudio-slider slider {
|
||||||
|
min-height: 0px;
|
||||||
|
min-width: 0px;
|
||||||
|
opacity: 0;
|
||||||
|
background-image: none;
|
||||||
|
border: none;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
#pulseaudio-slider trough {
|
||||||
|
min-height: 100px;
|
||||||
|
min-width: 28px;
|
||||||
|
background: $iiv;
|
||||||
|
border: 1px solid transparentize(#fff, 0.9);
|
||||||
|
border-top: 1px solid transparentize(#fff, 0.8);
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
#pulseaudio-slider highlight {
|
||||||
|
min-width: 10px;
|
||||||
|
background: $iv;
|
||||||
|
border: 1px solid transparentize(#fff, 0.9);
|
||||||
|
border-top: 1px solid transparentize(#fff, 0.8);
|
||||||
|
border-bottom: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.module button:hover {
|
||||||
|
background: #ffffff;
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: .5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.module#workspaces {
|
||||||
|
|
||||||
|
padding: 0;
|
||||||
|
// border: 0;
|
||||||
|
background: $iiv;
|
||||||
|
font-size: 4px;
|
||||||
|
|
||||||
|
button {
|
||||||
|
// border-top: 2px solid transparentize(#fff, 0.9);
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
transition: .15s padding;
|
||||||
|
color: $vii;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: inherit;
|
||||||
|
border: 0;
|
||||||
|
padding: 18px 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
button.empty {
|
||||||
|
color: $vi;
|
||||||
|
}
|
||||||
|
|
||||||
|
button.focused {
|
||||||
|
padding: 18px 0;
|
||||||
|
background: $iv;
|
||||||
|
color: $v;
|
||||||
|
|
||||||
|
&:not(:first-child) {
|
||||||
|
border-top: 1px solid transparentize(#fff, 0.9);
|
||||||
|
}
|
||||||
|
|
||||||
|
&:not(:last-child) {
|
||||||
|
border-bottom: 1px solid transparentize(#666, 0.9);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// #tray {
|
||||||
|
// border-bottom: 0;
|
||||||
|
// margin-bottom: 0;
|
||||||
|
// }
|
||||||
|
// #bluetooth {
|
||||||
|
// margin-top: 0;
|
||||||
|
// border-top: 0;
|
||||||
|
// }
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
.module#clock.hour {
|
||||||
|
color: $v;
|
||||||
|
padding-bottom: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
border-bottom: 0;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.module#clock.minutes {
|
||||||
|
background: $iiv;
|
||||||
|
padding-top: 0;
|
||||||
|
margin-top: 0;
|
||||||
|
border-top: 0;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
4
home/.basilisk/waybar/watch-power-menu-state
Executable file
4
home/.basilisk/waybar/watch-power-menu-state
Executable file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
touch /tmp/rofi-power-state
|
||||||
|
tail -f /tmp/rofi-power-state | awk '{ print "{\"text\":\"test\",\"class\":\"" $0 "\"}" }'
|
||||||
42
home/.config/bspwm/bspwmrc
Executable file
42
home/.config/bspwm/bspwmrc
Executable file
@@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ -d "$HOME/bin" ] ; then
|
||||||
|
PATH="$HOME/bin:$PATH"
|
||||||
|
fi
|
||||||
|
if [ -d "$HOME/.local/bin" ] ; then
|
||||||
|
PATH="$HOME/.local/bin:$PATH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Identify as a non-reparenting window manager
|
||||||
|
wmname LG3D &
|
||||||
|
|
||||||
|
bspc config border_width 2
|
||||||
|
bspc config window_gap 4
|
||||||
|
|
||||||
|
bspc config split_ratio 0.54
|
||||||
|
|
||||||
|
bspc config pointer_modifier mod4 # When holding super:
|
||||||
|
bspc config pointer_action1 move # Left click drag moves
|
||||||
|
bspc config pointer_action2 resize_corner # Right click drag resizes
|
||||||
|
|
||||||
|
bspc config focus_follows_pointer true
|
||||||
|
bspc config pointer_follows_focus true
|
||||||
|
|
||||||
|
bspc config external_rules_command "$(realpath "$(dirname "$0")")/external-rules"
|
||||||
|
|
||||||
|
bspc config automatic_scheme alternate
|
||||||
|
|
||||||
|
bspc rule -a qutebrowser state=tiled
|
||||||
|
# bspc rule -a KittyScratch state=floating
|
||||||
|
bspc rule -a Wrapper-2.0 state=floating # Xfce start menu
|
||||||
|
bspc rule -a Rofi state=floating
|
||||||
|
|
||||||
|
"$(dirname "$0")/colors"
|
||||||
|
watch_monitors() {
|
||||||
|
xfconf-query -c displays -m | while read -r line; do
|
||||||
|
bspc-xfce-monitors
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
watch_monitors & # Monitor daemon
|
||||||
|
pgrep -x sxhkd > /dev/null || sxhkd & # Key daemon
|
||||||
3
home/.config/bspwm/colors
Executable file
3
home/.config/bspwm/colors
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
bspc config normal_border_color "#4a4543"
|
||||||
|
bspc config active_border_color "#5c5855"
|
||||||
|
bspc config focused_border_color "#807d7c"
|
||||||
8
home/.config/bspwm/external-rules
Executable file
8
home/.config/bspwm/external-rules
Executable file
@@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
NEXT_WINDOW_RULES_PATH="/tmp/bspwm-next-window-rules"
|
||||||
|
|
||||||
|
[ -f "$NEXT_WINDOW_RULES_PATH" ] && {
|
||||||
|
cat "$NEXT_WINDOW_RULES_PATH"
|
||||||
|
rm "$NEXT_WINDOW_RULES_PATH"
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
6
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
false
|
||||||
9
home/.config/cosmic/com.system76.CosmicBackground/v1/all
Normal file
9
home/.config/cosmic/com.system76.CosmicBackground/v1/all
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
(
|
||||||
|
output: "all",
|
||||||
|
source: Path("/usr/share/backgrounds/cosmic/otherworldly_earth_nasa_ISS064-E-29444.jpg"),
|
||||||
|
filter_by_theme: true,
|
||||||
|
rotation_frequency: 300,
|
||||||
|
filter_method: Lanczos,
|
||||||
|
scaling_mode: Zoom,
|
||||||
|
sampling_method: Alphanumeric,
|
||||||
|
)
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
(
|
||||||
|
start_on_login: false,
|
||||||
|
show_overlay: false,
|
||||||
|
increment: 50,
|
||||||
|
view_moves: Continuously,
|
||||||
|
enable_mouse_zoom_shortcuts: true,
|
||||||
|
)
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
1
home/.config/cosmic/com.system76.CosmicComp/v1/autotile
Normal file
1
home/.config/cosmic/com.system76.CosmicComp/v1/autotile
Normal file
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
(
|
||||||
|
rules: "",
|
||||||
|
model: "pc105",
|
||||||
|
layout: "us",
|
||||||
|
variant: "",
|
||||||
|
options: None,
|
||||||
|
repeat_delay: 600,
|
||||||
|
repeat_rate: 25,
|
||||||
|
)
|
||||||
10
home/.config/cosmic/com.system76.CosmicFiles/v1/dialog
Normal file
10
home/.config/cosmic/com.system76.CosmicFiles/v1/dialog
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
(
|
||||||
|
folders_first: false,
|
||||||
|
icon_sizes: (
|
||||||
|
list: 175,
|
||||||
|
grid: 100,
|
||||||
|
),
|
||||||
|
show_details: false,
|
||||||
|
show_hidden: false,
|
||||||
|
view: List,
|
||||||
|
)
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Bottom
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
false
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Some(500)
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
ThemeDefault
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
2
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
false
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
OnDemand
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Top
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
"Dock"
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
1.0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
All
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
Some([
|
||||||
|
"com.system76.CosmicPanelLauncherButton",
|
||||||
|
"com.system76.CosmicPanelWorkspacesButton",
|
||||||
|
"com.system76.CosmicPanelAppButton",
|
||||||
|
"com.system76.CosmicAppList",
|
||||||
|
"com.system76.CosmicAppletMinimize",
|
||||||
|
])
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Some(([], []))
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
L
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Top
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
false
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Some(500)
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
ThemeDefault
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
true
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
OnDemand
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Top
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
"Panel"
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
1.0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
All
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0.5
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
Some([
|
||||||
|
"com.system76.CosmicAppletMinimize",
|
||||||
|
])
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
Some(([], [
|
||||||
|
"com.system76.CosmicAppletStatusArea",
|
||||||
|
"com.system76.CosmicAppletNotifications",
|
||||||
|
"com.system76.CosmicAppletTiling",
|
||||||
|
"com.system76.CosmicAppletBluetooth",
|
||||||
|
"com.system76.CosmicAppletNetwork",
|
||||||
|
"com.system76.CosmicAppletAudio",
|
||||||
|
"com.system76.CosmicAppletBattery",
|
||||||
|
"com.system76.CosmicAppletTime",
|
||||||
|
"com.system76.CosmicAppletPower",
|
||||||
|
]))
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
XS
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
None
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
0
|
||||||
3
home/.config/cosmic/com.system76.CosmicPanel/v1/entries
Normal file
3
home/.config/cosmic/com.system76.CosmicPanel/v1/entries
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
[
|
||||||
|
"Panel",
|
||||||
|
]
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user