Compare commits
56 commits
0b013c2b2a
...
f853ad7082
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f853ad7082 | ||
|
|
87ba144eb2 | ||
|
|
2fe9b89540 | ||
|
|
3f131b49a9 | ||
|
|
1a5097b94f | ||
|
|
f14d6e1570 | ||
|
|
61020b9be8 | ||
|
|
a3a74c2823 | ||
|
|
3b9e139a7d | ||
|
|
d500b3291a | ||
|
|
3137f17a47 | ||
|
|
1fc0c632ed | ||
|
|
e5463b53b4 | ||
|
|
9ad0531aef | ||
|
|
3354e3ab50 | ||
|
|
a69dfc23d7 | ||
|
|
7949054550 | ||
|
|
97e38395ad | ||
|
|
fc54f268b7 | ||
|
|
a6289318cf | ||
|
|
3de861c2a0 | ||
|
|
3fd357bd51 | ||
|
|
a2a0d9b3ae | ||
|
|
6be036dd32 | ||
|
|
7c54489c73 | ||
|
|
0d9bc09269 | ||
|
|
a3a743224b | ||
|
|
d6df3836cd | ||
|
|
6578c0a662 | ||
|
|
20076725f1 | ||
|
|
5d303dd787 | ||
|
|
52cee79606 | ||
|
|
96672e08ee | ||
|
|
0ca179e015 | ||
|
|
31603b901c | ||
|
|
e6d257ed7c | ||
|
|
f2576ad28b | ||
|
|
e851d02c88 | ||
|
|
7e317b5509 | ||
|
|
c0dd3ff193 | ||
|
|
d3e1d0a397 | ||
|
|
b21f261bdd | ||
|
|
d6823166fb | ||
|
|
b9ad0de235 | ||
|
|
9c3fbd16bb | ||
|
|
c2e2372d08 | ||
|
|
6e0fd618e1 | ||
|
|
56f085fe21 | ||
|
|
09f8013d2b | ||
|
|
ab5065d4cc | ||
|
|
5001105359 | ||
|
|
2e32091c05 | ||
|
|
6ee8c6d2c1 | ||
|
|
09f6a498e2 | ||
|
|
6cd96889fc | ||
|
|
99b86d511c |
74 changed files with 6249 additions and 379 deletions
|
|
@ -1,5 +1,6 @@
|
|||
# Files to ignore on windows
|
||||
{{- if eq .chezmoi.os "windows" }}
|
||||
,bash_profile
|
||||
.bashrc
|
||||
.nix-channels
|
||||
.vimrc
|
||||
|
|
@ -10,7 +11,15 @@
|
|||
.config/sheldon
|
||||
.config/Yubico
|
||||
.config/zellij
|
||||
.config/kritarc
|
||||
.config/kritashortcutsrc
|
||||
.config/dunst/dunstrc
|
||||
.config/rofi/wal.rasi
|
||||
.config/nvim
|
||||
.config/sway/outputs
|
||||
.config/systemd/user/default.target.wants
|
||||
.inputrc
|
||||
.env
|
||||
{{- end }}
|
||||
# Windows specific files
|
||||
{{- if ne .chezmoi.os "windows" }}
|
||||
|
|
|
|||
15
.gitmodules
vendored
Normal file
15
.gitmodules
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[submodule "AppData/Local/external_nvim"]
|
||||
path = AppData/Local/external_nvim
|
||||
url = https://git.argentumcation.com/mira/nvim-config
|
||||
[submodule "private_dot_config/external_nvim"]
|
||||
path = private_dot_config/external_nvim
|
||||
url = https://git.argentumcation.com/mira/nvim-config.git
|
||||
[submodule "private_dot_config/sway/external_blocks"]
|
||||
path = private_dot_config/sway/external_blocks
|
||||
url = https://github.com/vivien/i3blocks-contrib
|
||||
[submodule "private_dot_config/external_i3blocks"]
|
||||
path = private_dot_config/external_i3blocks
|
||||
url = https://github.com/vivien/i3blocks-contrib
|
||||
[submodule "private_dot_config/nvim-config"]
|
||||
path = private_dot_config/nvim-config
|
||||
url = https://git.argentumcation.com/mira/nvim-config.git
|
||||
1
AppData/Local/external_nvim
Submodule
1
AppData/Local/external_nvim
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 23c86b37763f3662b40cbce638bacc8791894c41
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
[install]
|
||||
{{ if eq .chezmoi.os "windows" -}}
|
||||
root = "{{ .chezmoi.homeDir }}/Programs"
|
||||
{{ else if eq .chezmoi.os "linux" -}}
|
||||
root = "{{ .chezmoi.homeDir }}/.local/"
|
||||
{{- end }}
|
||||
164
dot_envrc
Normal file
164
dot_envrc
Normal file
|
|
@ -0,0 +1,164 @@
|
|||
#!/usr/bin/env sh
|
||||
|
||||
# ~/.profile: executed by the command interpreter for login shells.
|
||||
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
|
||||
# exists.
|
||||
# see /usr/share/doc/bash/examples/startup-files for examples.
|
||||
# the files are located in the bash-doc package.
|
||||
|
||||
# the default umask is set in /etc/profile; for setting the umask
|
||||
# for ssh logins, install and configure the libpam-umask package.
|
||||
#umask 022
|
||||
export TZ=":/etc/localtime"
|
||||
|
||||
#################
|
||||
# XDG Base Dirs #
|
||||
#################
|
||||
|
||||
export XDG_DATA_HOME="$HOME/.local/share"
|
||||
export XDG_CONFIG_HOME="$HOME/.config"
|
||||
export XDG_STATE_HOME="$HOME/.local/state"
|
||||
export XDG_CACHE_HOME="$HOME/.cache"
|
||||
export XDG_RUNTIME_DIR="/run/user/$(id -u)"
|
||||
#################
|
||||
# XDG User Dirs #
|
||||
#################
|
||||
# . "$XDG_CONFIG_HOME/user-dirs.dirs"
|
||||
export XDG_DESKTOP_DIR="$HOME/Desktop"
|
||||
export XDG_DOWNLOAD_DIR="$HOME/Downloads"
|
||||
export XDG_DOCUMENTS_DIR="$HOME/Documents"
|
||||
export XDG_MUSIC_DIR="$HOME/Music"
|
||||
export XDG_PICTURES_DIR="$HOME/Pictures"
|
||||
export XDG_VIDEOS_DIR="$HOME/Videos"
|
||||
|
||||
########################
|
||||
# Default file viewers #
|
||||
########################
|
||||
|
||||
export EDITOR=nvim
|
||||
export OPENER=xdg-open
|
||||
|
||||
#######
|
||||
# IME #
|
||||
#######
|
||||
|
||||
export GTK_IM_MODULE=fcitx
|
||||
export QT_IM_MODULE=fcitx
|
||||
export XMODIFIERS=@im=fcitx
|
||||
|
||||
|
||||
################################
|
||||
# pls use the goddamn xdg dirs #
|
||||
################################
|
||||
|
||||
# If you use non-default GnuPG Home directory, you will need to edit all
|
||||
# socket files to use the values of gpgconf --list-dirs.
|
||||
# If you set your SSH_AUTH_SOCK manually, keep in mind that your socket
|
||||
# location may be different if you are using a custom GNUPGHOME
|
||||
export GOPATH="$XDG_DATA_HOME"/go
|
||||
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
|
||||
|
||||
# export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME"/npm/npmrc
|
||||
#export PNPM_HOME="$XDG_DATA_HOME/pnpm"
|
||||
alias adb='HOME="$XDG_DATA_HOME"/android adb'
|
||||
alias wget='wget --hsts-file="$XDG_DATA_HOME/wget-hsts"'
|
||||
export ANDROID_USER_HOME="$XDG_DATA_HOME"/android
|
||||
export AWS_CONFIG_FILE="$XDG_CONFIG_HOME"/aws/config
|
||||
export AWS_SHARED_CREDENTIALS_FILE="$XDG_CONFIG_HOME"/aws/credentials
|
||||
export CARGO_HOME="$XDG_DATA_HOME/cargo"
|
||||
export CARGO_INSTALL_ROOT="$HOME/.local"
|
||||
export DOCKER_CONFIG="$XDG_CONFIG_HOME"/docker
|
||||
export DOTNET_CLI_HOME="$XDG_DATA_HOME"/dotnet
|
||||
export ERRFILE="$XDG_CACHE_HOME/X11/xsession-errors"
|
||||
export GOPATH="$XDG_DATA_HOME"/go
|
||||
export GRADLE_USER_HOME="$XDG_DATA_HOME/gradle"
|
||||
export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc
|
||||
export ICEAUTHORITY="$XDG_CACHE_HOME"/ICEauthority
|
||||
export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc"
|
||||
export IPYTHONDIR="$XDG_CONFIG_HOME/ipython"
|
||||
export JUPYTER_CONFIG_DIR="$XDG_CONFIG_HOME"/jupyter
|
||||
export LESSHISTFILE="$XDG_STATE_HOME/less/history"
|
||||
export MYPY_CACHE_DIR="$XDG_CACHE_HOME"/mypy
|
||||
export NODE_REPL_HISTORY="$XDG_DATA_HOME"/node_repl_history
|
||||
export NPM_CONFIG_CACHE="$XDG_CACHE_HOME"/npm
|
||||
export NPM_CONFIG_INIT_MODULE="$XDG_CONFIG_HOME"/npm/config/npm-init.js
|
||||
export NPM_CONFIG_PREFIX="$XDG_DATA_HOME/npm-global"
|
||||
export NPM_CONFIG_TMP="$XDG_RUNTIME_DIR"/npm
|
||||
export PARALLEL_HOME="$XDG_CONFIG_HOME"/parallel
|
||||
export PYENV_ROOT="$XDG_DATA_HOME/pyenv"
|
||||
export PYTHONSTARTUP="$HOME"/python/pythonrc
|
||||
export RUFF_CACHE_DIR="$XDG_CACHE_HOME/ruff"
|
||||
export RUSTUP_HOME="$XDG_DATA_HOME"/rustup
|
||||
export TERMINFO="$XDG_DATA_HOME"/terminfo
|
||||
export TERMINFO_DIRS="$XDG_DATA_HOME"/terminfo:/usr/share/terminfo
|
||||
export TLDR_CACHE_DIR="$XDG_CACHE_HOME"/tldr
|
||||
export WINEPREFIX="$XDG_DATA_HOME"/wine
|
||||
export WORKON_HOME="$XDG_DATA_HOME/virtualenvs"
|
||||
export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority
|
||||
export XCURSOR_PATH=/usr/share/icons:$XDG_DATA_HOME/icons
|
||||
export XINITRC="$XDG_CONFIG_HOME"/X11/xinitrc
|
||||
export _JAVA_OPTIONS="-Djava.util.prefs.userRoot=${XDG_CONFIG_HOME}/java -Djavafx.cachedir=${XDG_CACHE_HOME}/openjfx"
|
||||
export N_PREFIX="$HOME/.local"
|
||||
|
||||
###############
|
||||
# SET UP PATH #
|
||||
###############
|
||||
# nix
|
||||
if [ -e "$HOME"/.nix-profile/etc/profile.d/nix.sh ]; then
|
||||
. "$HOME"/.nix-profile/etc/profile.d/nix.sh
|
||||
elif [ -e "$HOME"/.nix-profile/bin ]; then
|
||||
export PATH="$PATH:/nix/var/nix/profiles/default/bin"
|
||||
export PATH="$HOME/.nix-profile/bin:$PATH"
|
||||
fi
|
||||
|
||||
# User bin folder
|
||||
#[ "${PATH#*"$HOME"/.local/bin:}" = "$PATH" ] && export PATH="$HOME/.local/bin:$PATH"
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# go
|
||||
[ "${PATH#*"$GOPATH/bin"}" = "$PATH" ] && export PATH="$GOPATH/bin:$PATH"
|
||||
|
||||
# homebrew
|
||||
[ -e /home/linuxbrew/.linuxbrew/bin/brew ] && eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
|
||||
|
||||
# pnpm
|
||||
[ "${PATH#*$PNPM_HOME:}" = "$PATH" ] && export PATH="$PNPM_HOME:$PATH"
|
||||
|
||||
# npm
|
||||
[ "${PATH#*$NPM_CONFIG_PREFIX/bin:}" = "$PATH" ] && export PATH="$NPM_CONFIG_PREFIX/bin:$PATH"
|
||||
|
||||
# cargo
|
||||
if [[ -f "$CARGO_HOME/env" ]]; then
|
||||
. "$CARGO_HOME/env"
|
||||
elif [[ -f ~/.local/share/cargo/env ]]; then
|
||||
. ~/.local/share/cargo/env
|
||||
fi
|
||||
|
||||
# swiftly
|
||||
# Added by swiftly
|
||||
. "/home/mira/.local/share/swiftly/env.sh"
|
||||
|
||||
export NVM_DIR="$HOME/.config/nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
# bun completions
|
||||
[ -s "/home/akristip/.bun/_bun" ] && source "$HOME/.bun/_bun"
|
||||
# bun
|
||||
export BUN_INSTALL="$HOME/.bun"
|
||||
export PATH="$BUN_INSTALL/bin:$PATH"
|
||||
# pnpm
|
||||
export PNPM_HOME="$XDG_DATA_HOME/pnpm"
|
||||
case ":$PATH:" in
|
||||
*":$PNPM_HOME:"*) ;;
|
||||
*) export PATH="$PNPM_HOME:$PATH" ;;
|
||||
esac
|
||||
# pnpm end
|
||||
export LOCALE_ARCHIVE=/usr/lib/locale/locale-archive
|
||||
# this better fix libadwaita?
|
||||
export ADW_DISABLE_PORTAL=1
|
||||
# fix firefox wayland?
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
# fix sway setting env vars?
|
||||
export XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:-sway}"
|
||||
# fix font rendering?
|
||||
export FREETYPE_PROPERTIES="truetype:interpreter-version=40 cff:no-stem-darkening=0 autofitter:no-stem-darkening=0"
|
||||
|
||||
11
dot_inputrc
11
dot_inputrc
|
|
@ -1,11 +0,0 @@
|
|||
set editing-mode vi
|
||||
set keymap vi
|
||||
set show-mode-in-prompt on
|
||||
set show-all-if-ambiguous on
|
||||
$if term=linux
|
||||
set vi-ins-mode-string \1\e[?0c\2
|
||||
set vi-cmd-mode-string \1\e[?8c\2
|
||||
$else
|
||||
set vi-ins-mode-string \1\e[6 q\2
|
||||
set vi-cmd-mode-string \1\e[2 q\2
|
||||
$endif
|
||||
24
dot_local/bin/executable_lfub
Normal file
24
dot_local/bin/executable_lfub
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
if [ -n "$DISPLAY" ]; then
|
||||
export FIFO_UEBERZUG="${TMPDIR:-/tmp}/lf-ueberzug-$$"
|
||||
|
||||
cleanup() {
|
||||
exec 3>&-
|
||||
rm "$FIFO_UEBERZUG"
|
||||
}
|
||||
|
||||
mkfifo "$FIFO_UEBERZUG"
|
||||
ueberzug layer -s <"$FIFO_UEBERZUG" &
|
||||
exec 3>"$FIFO_UEBERZUG"
|
||||
trap cleanup EXIT
|
||||
|
||||
if ! [ -d "$HOME/.cache/lf" ]; then
|
||||
mkdir -p "$HOME/.cache/lf"
|
||||
fi
|
||||
|
||||
lf "$@" 3>&-
|
||||
else
|
||||
exec lf "$@"
|
||||
fi
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[install]
|
||||
root = "/home/mira/.local/"
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
enable-ssh-support
|
||||
{{- if eq .chezmoi.os "windows" -}}
|
||||
pinentry-program pinentry.exe
|
||||
{{- else if (and (eq .chezmoi.os "linux") (.chezmoi.kernel.osrelease | lower | contains "microsoft"))}}
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
https://github.com/nix-community/NUR/archive/master.tar.gz nur
|
||||
# https://github.com/nix-community/NUR/archive/master.tar.gz nur
|
||||
https://nixos.org/channels/nixpkgs-unstable nixpkgs
|
||||
|
|
|
|||
5
dot_profile
Normal file
5
dot_profile
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
. "$HOME"/.envrc
|
||||
if [ -f "$HOME/.rye/env" ]; then
|
||||
. "$HOME/.rye/env"
|
||||
fi
|
||||
|
||||
|
|
@ -1,4 +1,11 @@
|
|||
#!/bin/sh
|
||||
|
||||
lf () {
|
||||
# `command` is needed in case `lfcd` is aliased to `lf`
|
||||
cd "$(command lf -print-last-dir "$@")"
|
||||
}
|
||||
|
||||
|
||||
load_aliases() {
|
||||
local TIMEFMT='\%J\n%mE:'
|
||||
local OLDPATH=$PATH
|
||||
|
|
@ -11,7 +18,7 @@ load_aliases() {
|
|||
fi
|
||||
|
||||
checkCommand() {
|
||||
$CHECK "$1" >/dev/null 2>&1
|
||||
"$CHECK" "$1" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
# make a directory and cd to it
|
||||
|
|
@ -30,33 +37,36 @@ load_aliases() {
|
|||
alias musl-go="GOBIN=$HOME/bin CGO_ENABLED=1 CC=musl-gcc go install --ldflags '-linkmode external -extldflags=-static'"
|
||||
|
||||
# Replace df with duf
|
||||
if checkCommand duf; then
|
||||
alias df="duf"
|
||||
if checkCommand dfrs; then
|
||||
alias df="dfrs"
|
||||
fi
|
||||
|
||||
if checkCommand edit; then
|
||||
alias ed="edit"
|
||||
fi
|
||||
# Replace diff with delta
|
||||
if checkCommand delta; then
|
||||
alias diff="delta"
|
||||
fi
|
||||
|
||||
# replaces gnu coreutils with the rust versions, cp and mv are worth
|
||||
if checkCommand coreutils; then
|
||||
alias cp="coreutils cp -g"
|
||||
alias mv="coreutils mv -g"
|
||||
alias hashsum="coreutils hashsum"
|
||||
#alias more="coreutils more"
|
||||
alias cut="coreutils cut"
|
||||
alias chmod="coreutils chmod"
|
||||
alias chown="coreutils chown"
|
||||
alias chroot="coreutils chroot"
|
||||
alias echo="coreutils echo"
|
||||
alias head="coreutils head"
|
||||
alias kill="coreutils kill"
|
||||
alias ln="coreutils ln"
|
||||
alias mkdir="coreutils mkdir"
|
||||
alias nohup="coreutils nohup"
|
||||
alias tail="coreutils tail"
|
||||
fi
|
||||
# if checkCommand coreutils; then
|
||||
# alias cp="coreutils cp -g"
|
||||
# alias mv="coreutils mv -g"
|
||||
# alias hashsum="coreutils hashsum"
|
||||
# #alias more="coreutils more"
|
||||
# alias cut="coreutils cut"
|
||||
# alias chmod="coreutils chmod"
|
||||
# alias chown="coreutils chown"
|
||||
# alias chroot="coreutils chroot"
|
||||
# alias echo="coreutils echo"
|
||||
# alias head="coreutils head"
|
||||
# alias kill="coreutils kill"
|
||||
# alias ln="coreutils ln"
|
||||
# alias mkdir="coreutils mkdir"
|
||||
# alias nohup="coreutils nohup"
|
||||
# alias tail="coreutils tail"
|
||||
# fi
|
||||
|
||||
# Replace find with fd
|
||||
if checkCommand fd; then
|
||||
|
|
@ -80,6 +90,8 @@ load_aliases() {
|
|||
# Replace cat with bat
|
||||
if checkCommand bat; then
|
||||
alias cat="bat"
|
||||
alias batlog="bat --paging=never -l log"
|
||||
alias battail="tail -f | bat --paging=never -l log"
|
||||
fi
|
||||
|
||||
# Replace tree with broot
|
||||
|
|
@ -122,6 +134,23 @@ load_aliases() {
|
|||
# fi
|
||||
# }
|
||||
fi
|
||||
if checkCommand swhkd; then
|
||||
alias reload-swhkd="sudo pkill -HUP swhkd"
|
||||
fi
|
||||
if checkCommand fdfind; then
|
||||
alias fd="fdfind"
|
||||
fi
|
||||
|
||||
alias icat="kitty +kitten icat"
|
||||
}
|
||||
load_aliases
|
||||
unset -f load_aliases
|
||||
|
||||
function yy() {
|
||||
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
|
||||
yazi "$@" --cwd-file="$tmp"
|
||||
if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
|
||||
builtin cd -- "$cwd"
|
||||
fi
|
||||
rm -f -- "$tmp"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
[[ -f ~/.bashrc ]] && . ~/.bashrc
|
||||
|
|
@ -10,11 +10,11 @@ checkCommand(){
|
|||
type "$1" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
# If you have zellij installed, this will auto start it
|
||||
if [ -z "$ZELLIJ" ] && checkCommand zellij; then
|
||||
#export ZELLIJ_AUTO_ATTACH=true
|
||||
exec zellij
|
||||
fi
|
||||
# # If you have zellij installed, this will auto start it
|
||||
# if [ -z "$ZELLIJ" ] && checkCommand zellij; then
|
||||
# #export ZELLIJ_AUTO_ATTACH=true
|
||||
# exec zellij
|
||||
# fi
|
||||
|
||||
# Speed up shell load on WSL
|
||||
OLDPATH=$PATH
|
||||
|
|
@ -105,3 +105,5 @@ else #Fallback prompt
|
|||
fi
|
||||
PATH=$OLDPATH
|
||||
unset OLDPATH
|
||||
|
||||
# export UUID=552fbc4c-1e9b-11b2-a85c-a01fe49e12ee
|
||||
|
|
|
|||
|
|
@ -1,78 +0,0 @@
|
|||
#!/bin/sh
|
||||
# ~/.profile: executed by the command interpreter for login shells.
|
||||
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
|
||||
# exists.
|
||||
# see /usr/share/doc/bash/examples/startup-files for examples.
|
||||
# the files are located in the bash-doc package.
|
||||
|
||||
# the default umask is set in /etc/profile; for setting the umask
|
||||
# for ssh logins, install and configure the libpam-umask package.
|
||||
#umask 022
|
||||
|
||||
# XDG Base Dirs
|
||||
XDG_DATA_HOME="$HOME/.local/share"
|
||||
XDG_CONFIG_HOME="$HOME/.config"
|
||||
XDG_STATE_HOME="$HOME/.local/state"
|
||||
XDG_CACHE_HOME="$HOME/.cache"
|
||||
|
||||
|
||||
[[ "$TERM_PROGRAM" = "vscode" ]] && . "$(code --locate-shell-integration-path $0)"
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/bin" ] ; then
|
||||
PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/.local/bin" ] ; then
|
||||
PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
|
||||
# Source Cargo Environment
|
||||
if [[ -f "$HOME/.cargo/env" ]]; then
|
||||
. "$HOME/.cargo/env";
|
||||
#else
|
||||
# curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh;
|
||||
fi
|
||||
|
||||
# Source Nix Environment
|
||||
if [ -e "$HOME"/.nix-profile/etc/profile.d/nix.sh ]; then
|
||||
. "$HOME"/.nix-profile/etc/profile.d/nix.sh
|
||||
# else
|
||||
# echo "If this doesn't work, comment out this part of .zshenv"
|
||||
# sh <(curl -L https://nixos.org/nix/install) --no-daemon;
|
||||
fi
|
||||
|
||||
# Add Ruby
|
||||
#[ "${PATH#*"$HOME"/.local/share/gem/ruby/*/bin:}" = "$PATH" ] && export PATH="$HOME/.local/share/gem/ruby/*/bin:$PATH"
|
||||
|
||||
# User bin folder
|
||||
[ "${PATH#*"$HOME"/.local/bin:}" = "$PATH" ] && export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# add nodejs
|
||||
# [ "${PATH#*"$HOME"/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:}" = "$PATH" ] && export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"
|
||||
|
||||
# add go
|
||||
[ "${PATH#*"$HOME"/go/bin:}" = "$PATH" ] && export PATH="$HOME/go/bin:$PATH"
|
||||
|
||||
# Set PATH, MANPATH, etc., for Homebrew.
|
||||
[ -e /home/linuxbrew/.linuxbrew/bin/brew ] && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
|
||||
|
||||
# pnpm
|
||||
export PNPM_HOME="$XDG_DATA_HOME/pnpm"
|
||||
[ "${PATH#*$PNPM_HOME:}" = "$PATH" ] && export PATH="$PNPM_HOME:$PATH"
|
||||
|
||||
# Make Cargo install to user bin directory
|
||||
export CARGO_HOME="$XDG_DATA_HOME/cargo"
|
||||
export CARGO_INSTALL_ROOT="$HOME/.local"
|
||||
|
||||
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
|
||||
|
||||
# If you use non-default GnuPG Home directory, you will need to edit all
|
||||
# socket files to use the values of gpgconf --list-dirs.
|
||||
# If you set your SSH_AUTH_SOCK manually, keep in mind that your socket
|
||||
# location may be different if you are using a custom GNUPGHOME
|
||||
|
||||
export LESSHISTFILE="$XDG_STATE_HOME/less/history"
|
||||
|
||||
export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc"
|
||||
|
|
@ -6,4 +6,4 @@
|
|||
export ZSH_DISABLE_COMPFIX=true
|
||||
|
||||
# Load .profile
|
||||
[[ -f ~/.env ]] && . ~/.env
|
||||
[[ -f ~/.profile ]] && . ~/.profile
|
||||
|
|
|
|||
|
|
@ -1,16 +1,12 @@
|
|||
#!/bin/zsh
|
||||
# Runs for interactive shells
|
||||
|
||||
export START="${START:=$(date '+%s.%N')}"
|
||||
|
||||
checkCommand(){
|
||||
type "$1" >/dev/null 2>&1
|
||||
}
|
||||
# If you have zellij installed, this will auto start it
|
||||
if [ -z "$ZELLIJ" ] && checkCommand zellij; then
|
||||
#export ZELLIJ_AUTO_ATTACH=true
|
||||
exec zellij
|
||||
fi
|
||||
|
||||
# Set aliases
|
||||
[ -f "$HOME/.aliasrc" ] && source "$HOME/.aliasrc" # >/dev/null 2>&1 &;
|
||||
|
||||
# Speed up shell load on WSL
|
||||
OLDPATH=$PATH
|
||||
|
|
@ -22,8 +18,10 @@ PATH=$(echo "$PATH" | sed -e 's/\/mnt\/.*\?://g')
|
|||
|
||||
# Set where history is saved and how much to save
|
||||
HISTFILE="$XDG_STATE_HOME/zsh/history"
|
||||
[ ! -e $HISTFILE ] && mkdir -p "$XDG_STATE_HOME/zsh" && touch $HISTFILE
|
||||
HISTSIZE=10000
|
||||
SAVEHIST=10000
|
||||
SAVEHIST=$HISTSIZE
|
||||
HISTDUP=erase
|
||||
|
||||
# disable system beep on error
|
||||
setopt BEEP
|
||||
|
|
@ -34,16 +32,19 @@ setopt nomatch
|
|||
# report status of bg jobs immediately
|
||||
setopt notify
|
||||
#dedupe history, and append to histfile after every command
|
||||
setopt histfindnodups histsavenodups incappendhistory
|
||||
# correct all arguments in a line
|
||||
setopt correctall
|
||||
setopt hist_find_no_dups hist_save_no_dups hist_ignore_dups appendhistory sharehistory
|
||||
# vim style line editing
|
||||
bindkey -v
|
||||
# make file name completion case-insensitive
|
||||
zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}'
|
||||
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
|
||||
zstyle ':completion:*' cache-path $XDG_CACHE_HOME/zsh/zcompcache
|
||||
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
||||
zstyle ':completion:*' menu no
|
||||
zstyle 'fzf-tab:complete:cd:*' fzf-preview `ls $realpath`
|
||||
zstyle 'fzf-tab:complete:__zoxide_z:*' fzf-preview `ls $realpath`
|
||||
|
||||
# Move completions to XDG Dir
|
||||
autoload -Uz compinit
|
||||
compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-"$ZSH_VERSION"
|
||||
|
||||
|
||||
|
|
@ -51,9 +52,6 @@ compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-"$ZSH_VERSION"
|
|||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Enable command auto-correction.
|
||||
ENABLE_CORRECTION="true"
|
||||
|
||||
# Display red dots whilst waiting for completion.
|
||||
COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
|
|
@ -61,56 +59,64 @@ COMPLETION_WAITING_DOTS="true"
|
|||
ZSH_AUTOSUGGEST_MANUAL_REBIND="true"
|
||||
|
||||
# fix home end and delete buttons
|
||||
bindkey "${terminfo[khome]}" beginning-of-line
|
||||
bindkey "${terminfo[kend]}" end-of-line
|
||||
bindkey "${terminfo[kdch1]}" delete-char
|
||||
# create a zkbd compatible hash;
|
||||
# to add other keys to this hash, see: man 5 terminfo
|
||||
typeset -g -A key
|
||||
|
||||
#if ! checkCommand gum && checkCommand go; then
|
||||
# # TODO
|
||||
#fi
|
||||
key[Home]="${terminfo[khome]}"
|
||||
key[End]="${terminfo[kend]}"
|
||||
key[Insert]="${terminfo[kich1]}"
|
||||
key[Backspace]="${terminfo[kbs]}"
|
||||
key[Delete]="${terminfo[kdch1]}"
|
||||
key[Up]="${terminfo[kcuu1]}"
|
||||
key[Down]="${terminfo[kcud1]}"
|
||||
key[Left]="${terminfo[kcub1]}"
|
||||
key[Right]="${terminfo[kcuf1]}"
|
||||
key[PageUp]="${terminfo[kpp]}"
|
||||
key[PageDown]="${terminfo[knp]}"
|
||||
key[Shift-Tab]="${terminfo[kcbt]}"
|
||||
|
||||
# setup key accordingly
|
||||
[[ -n "${key[Home]}" ]] && bindkey -- "${key[Home]}" beginning-of-line
|
||||
[[ -n "${key[End]}" ]] && bindkey -- "${key[End]}" end-of-line
|
||||
[[ -n "${key[Insert]}" ]] && bindkey -- "${key[Insert]}" overwrite-mode
|
||||
[[ -n "${key[Backspace]}" ]] && bindkey -- "${key[Backspace]}" backward-delete-char
|
||||
[[ -n "${key[Delete]}" ]] && bindkey -- "${key[Delete]}" delete-char
|
||||
[[ -n "${key[Up]}" ]] && bindkey -- "${key[Up]}" up-line-or-history
|
||||
[[ -n "${key[Down]}" ]] && bindkey -- "${key[Down]}" down-line-or-history
|
||||
[[ -n "${key[Left]}" ]] && bindkey -- "${key[Left]}" backward-char
|
||||
[[ -n "${key[Right]}" ]] && bindkey -- "${key[Right]}" forward-char
|
||||
[[ -n "${key[PageUp]}" ]] && bindkey -- "${key[PageUp]}" beginning-of-buffer-or-history
|
||||
[[ -n "${key[PageDown]}" ]] && bindkey -- "${key[PageDown]}" end-of-buffer-or-history
|
||||
[[ -n "${key[Shift-Tab]}" ]] && bindkey -- "${key[Shift-Tab]}" reverse-menu-complete
|
||||
|
||||
# Finally, make sure the terminal is in application mode, when zle is
|
||||
# active. Only then are the values from $terminfo valid.
|
||||
if (( ${+terminfo[smkx]} && ${+terminfo[rmkx]} )); then
|
||||
autoload -Uz add-zle-hook-widget
|
||||
function zle_application_mode_start { echoti smkx }
|
||||
function zle_application_mode_stop { echoti rmkx }
|
||||
add-zle-hook-widget -Uz zle-line-init zle_application_mode_start
|
||||
add-zle-hook-widget -Uz zle-line-finish zle_application_mode_stop
|
||||
fi
|
||||
|
||||
#Allows fuzzy-finding
|
||||
if checkCommand fzf; then
|
||||
export FZF_BASE=$(which fzf)
|
||||
else
|
||||
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf;
|
||||
~/.fzf/install --bin;
|
||||
mkdir -p ~/.local/bin;
|
||||
mv ~/.fzf/bin/* ~/.local/bin/;
|
||||
rm -rf ~/.fzf;
|
||||
fi
|
||||
|
||||
#todo: install if not found
|
||||
# Load plugins
|
||||
if checkCommand sheldon; then
|
||||
mkdir -p ~/.config/sheldon
|
||||
touch ~/.config/sheldon/plugins.toml
|
||||
if checkCommand sheldon; then
|
||||
eval "$(sheldon -q source)";
|
||||
elif checkCommand brew; then
|
||||
brew install sheldon;
|
||||
elif checkCommand cargo; then
|
||||
cargo install sheldon
|
||||
else
|
||||
curl --proto '=https' -fLsS https://rossmacarthur.github.io/install/crate.sh \
|
||||
| bash -s -- --repo rossmacarthur/sheldon --to ~/.local/bin
|
||||
fi
|
||||
|
||||
#zplug "plugins/git", from:oh-my-zsh, lazy:on
|
||||
#zplug "plugins/vi-mode", from:oh-my-zsh
|
||||
#zplug "plugins/adb", from:oh-my-zsh, lazy:on
|
||||
#zplug "plugins/pip", from:oh-my-zsh, lazy:on
|
||||
|
||||
|
||||
# set colors if pywal is installed
|
||||
if checkCommand wal && [ -z "$SSH_TTY" ]; then
|
||||
eval 'cat ~/.cache/wal/sequences &'
|
||||
fi
|
||||
|
||||
# if ssh-agent isn't running, run it
|
||||
if ! pgrep -u "$USER" '(ssh|gpg)-agent' >/dev/null; then
|
||||
if checkCommand gpg-agent; then
|
||||
gpg-agent --daemon --enable-ssh-support;
|
||||
gpg-agent --daemon --enable-ssh-support >> "$HOME/.ssh-agent.env";
|
||||
unset SSH_AGENT_PID;
|
||||
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-socket);
|
||||
export GPG_TTY=$(tty)
|
||||
|
|
@ -123,36 +129,45 @@ if [ ! -f "$SSH_AUTH_SOCK" ] && [ -f ~/.ssh-agent.env ]; then
|
|||
source "$HOME/.ssh-agent.env" >/dev/null
|
||||
fi
|
||||
|
||||
[[ -f ~/.zsh_history ]] && touch ~/.zsh_history
|
||||
|
||||
# Set up mcfly if installed (lets you search through history easily with ctrl+r)
|
||||
if checkCommand mcfly; then
|
||||
zsh-defer _evalcache mcfly init zsh
|
||||
export MCFLY_KEY_SCHEME=vim
|
||||
export MCFLY_FUZZY=2
|
||||
eval "$(mcfly init zsh)"
|
||||
fi
|
||||
|
||||
# set up zoxide if installed (lets you jump through folders easily using the z and zi commands instead of cd)
|
||||
if checkCommand zoxide; then
|
||||
zsh-defer _evalcache zoxide init zsh
|
||||
eval "$(zoxide init zsh)"
|
||||
fi
|
||||
|
||||
#if "$(checkCommand notify-send)"; then
|
||||
# notify-send() { wsl-notify-send.exe --category $WSL_DISTRO_NAME "${@}"; }
|
||||
# if checkCommand direnv; then
|
||||
# eval "$(direnv hook zsh)"
|
||||
# fi
|
||||
|
||||
|
||||
# Set up broot if installed (a nicer tree, probably has other cool stuff I haven't looked at yet)
|
||||
[ -e "$HOME"/.config/broot/launcher/bash/br ] && zsh-defer -t 15 eval "$(broot --print-shell-function $(basename $0))"
|
||||
# Set aliases
|
||||
[ -f "$HOME/.aliasrc" ] && source "$HOME/.aliasrc" # >/dev/null 2>&1 &;
|
||||
|
||||
if checkCommand hyfetch; then
|
||||
hyfetch -b fastfetch
|
||||
if checkCommand yazi; then
|
||||
function yy() {
|
||||
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")"
|
||||
yazi "$@" --cwd-file="$tmp"
|
||||
if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
|
||||
cd -- "$cwd"
|
||||
fi
|
||||
rm -f -- "$tmp"
|
||||
}
|
||||
fi
|
||||
if checkCommand mirafetch; then
|
||||
RUST_BACKTRACE=1 mirafetch
|
||||
fi
|
||||
END="$(date '+%s.%N')"
|
||||
PATH=$OLDPATH
|
||||
printf "Startup Time: %.2fms\n" $((1000 * (END - START)))
|
||||
# todo: install if not found
|
||||
checkCommand starship && eval "$(starship init $(basename $0))"
|
||||
unset OLDPATH
|
||||
unset START
|
||||
unset END
|
||||
checkCommand starship && eval "$(starship init zsh)"
|
||||
|
||||
# TODO: move these
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
|
||||
# bun completions
|
||||
[ -s "/home/akristip/.bun/_bun" ] && source "/home/akristip/.bun/_bun"
|
||||
# bun
|
||||
export BUN_INSTALL="$HOME/.bun"
|
||||
export PATH="$BUN_INSTALL/bin:$PATH"
|
||||
|
||||
|
|
|
|||
257
private_dot_config/btop/btop.conf
Normal file
257
private_dot_config/btop/btop.conf
Normal file
|
|
@ -0,0 +1,257 @@
|
|||
#? Config file for btop v. 1.4.5
|
||||
|
||||
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
|
||||
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
|
||||
color_theme = "Default"
|
||||
|
||||
#* If the theme set background should be shown, set to False if you want terminal background transparency.
|
||||
theme_background = True
|
||||
|
||||
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
|
||||
truecolor = False
|
||||
|
||||
#* Set to true to force tty mode regardless if a real tty has been detected or not.
|
||||
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
|
||||
force_tty = False
|
||||
|
||||
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
|
||||
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
|
||||
#* Use whitespace " " as separator between different presets.
|
||||
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
|
||||
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
|
||||
|
||||
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
|
||||
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
|
||||
vim_keys = False
|
||||
|
||||
#* Rounded corners on boxes, is ignored if TTY mode is ON.
|
||||
rounded_corners = True
|
||||
|
||||
#* Default symbols to use for graph creation, "braille", "block" or "tty".
|
||||
#* "braille" offers the highest resolution but might not be included in all fonts.
|
||||
#* "block" has half the resolution of braille but uses more common characters.
|
||||
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
|
||||
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
|
||||
graph_symbol = "braille"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_cpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_gpu = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_mem = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_net = "default"
|
||||
|
||||
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
|
||||
graph_symbol_proc = "default"
|
||||
|
||||
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
|
||||
shown_boxes = "cpu mem net proc"
|
||||
|
||||
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
|
||||
update_ms = 2000
|
||||
|
||||
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
|
||||
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
|
||||
proc_sorting = "memory"
|
||||
|
||||
#* Reverse sorting order, True or False.
|
||||
proc_reversed = False
|
||||
|
||||
#* Show processes as a tree.
|
||||
proc_tree = True
|
||||
|
||||
#* Use the cpu graph colors in the process list.
|
||||
proc_colors = True
|
||||
|
||||
#* Use a darkening gradient in the process list.
|
||||
proc_gradient = True
|
||||
|
||||
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
|
||||
proc_per_core = True
|
||||
|
||||
#* Show process memory as bytes instead of percent.
|
||||
proc_mem_bytes = True
|
||||
|
||||
#* Show cpu graph for each process.
|
||||
proc_cpu_graphs = True
|
||||
|
||||
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
|
||||
proc_info_smaps = False
|
||||
|
||||
#* Show proc box on left side of screen instead of right.
|
||||
proc_left = False
|
||||
|
||||
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
|
||||
proc_filter_kernel = False
|
||||
|
||||
#* In tree-view, always accumulate child process resources in the parent process.
|
||||
proc_aggregate = True
|
||||
|
||||
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_upper = "Auto"
|
||||
|
||||
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
|
||||
#* Select from a list of detected attributes from the options menu.
|
||||
cpu_graph_lower = "Auto"
|
||||
|
||||
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
|
||||
show_gpu_info = "Auto"
|
||||
|
||||
#* Toggles if the lower CPU graph should be inverted.
|
||||
cpu_invert_lower = True
|
||||
|
||||
#* Set to True to completely disable the lower CPU graph.
|
||||
cpu_single_graph = False
|
||||
|
||||
#* Show cpu box at bottom of screen instead of top.
|
||||
cpu_bottom = False
|
||||
|
||||
#* Shows the system uptime in the CPU box.
|
||||
show_uptime = True
|
||||
|
||||
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
|
||||
show_cpu_watts = True
|
||||
|
||||
#* Show cpu temperature.
|
||||
check_temp = True
|
||||
|
||||
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
|
||||
cpu_sensor = "Auto"
|
||||
|
||||
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
|
||||
show_coretemp = True
|
||||
|
||||
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
|
||||
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
|
||||
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
|
||||
#* Example: "4:0 5:1 6:3"
|
||||
cpu_core_map = ""
|
||||
|
||||
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
|
||||
temp_scale = "celsius"
|
||||
|
||||
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
|
||||
base_10_sizes = False
|
||||
|
||||
#* Show CPU frequency.
|
||||
show_cpu_freq = True
|
||||
|
||||
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
|
||||
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
|
||||
clock_format = "%X"
|
||||
|
||||
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
|
||||
background_update = True
|
||||
|
||||
#* Custom cpu model name, empty string to disable.
|
||||
custom_cpu_name = ""
|
||||
|
||||
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
|
||||
#* Only disks matching the filter will be shown. Prepend exclude= to only show disks not matching the filter. Examples: disk_filter="/boot /home/user", disks_filter="exclude=/boot /home/user"
|
||||
disks_filter = ""
|
||||
|
||||
#* Show graphs instead of meters for memory values.
|
||||
mem_graphs = True
|
||||
|
||||
#* Show mem box below net box instead of above.
|
||||
mem_below_net = False
|
||||
|
||||
#* Count ZFS ARC in cached and available memory.
|
||||
zfs_arc_cached = True
|
||||
|
||||
#* If swap memory should be shown in memory box.
|
||||
show_swap = True
|
||||
|
||||
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
|
||||
swap_disk = True
|
||||
|
||||
#* If mem box should be split to also show disks info.
|
||||
show_disks = True
|
||||
|
||||
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
|
||||
only_physical = True
|
||||
|
||||
#* Read disks list from /etc/fstab. This also disables only_physical.
|
||||
use_fstab = True
|
||||
|
||||
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
|
||||
zfs_hide_datasets = False
|
||||
|
||||
#* Set to true to show available disk space for privileged users.
|
||||
disk_free_priv = False
|
||||
|
||||
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
|
||||
show_io_stat = True
|
||||
|
||||
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
|
||||
io_mode = True
|
||||
|
||||
#* Set to True to show combined read/write io graphs in io mode.
|
||||
io_graph_combined = False
|
||||
|
||||
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
|
||||
#* Example: "/mnt/media:100 /:20 /boot:1".
|
||||
io_graph_speeds = ""
|
||||
|
||||
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
|
||||
net_download = 100
|
||||
|
||||
net_upload = 100
|
||||
|
||||
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
|
||||
net_auto = False
|
||||
|
||||
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
|
||||
net_sync = False
|
||||
|
||||
#* Starts with the Network Interface specified here.
|
||||
net_iface = ""
|
||||
|
||||
#* "True" shows bitrates in base 10 (Kbps, Mbps). "False" shows bitrates in binary sizes (Kibps, Mibps, etc.). "Auto" uses base_10_sizes.
|
||||
base_10_bitrate = "Auto"
|
||||
|
||||
#* Show battery stats in top right if battery is present.
|
||||
show_battery = True
|
||||
|
||||
#* Which battery to use if multiple are present. "Auto" for auto detection.
|
||||
selected_battery = "Auto"
|
||||
|
||||
#* Show power stats of battery next to charge indicator.
|
||||
show_battery_watts = True
|
||||
|
||||
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
|
||||
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
|
||||
log_level = "WARNING"
|
||||
|
||||
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
|
||||
nvml_measure_pcie_speeds = True
|
||||
|
||||
#* Measure PCIe throughput on AMD cards, may impact performance on certain cards.
|
||||
rsmi_measure_pcie_speeds = True
|
||||
|
||||
#* Horizontally mirror the GPU graph.
|
||||
gpu_mirror_graph = True
|
||||
|
||||
#* Custom gpu0 model name, empty string to disable.
|
||||
custom_gpu_name0 = ""
|
||||
|
||||
#* Custom gpu1 model name, empty string to disable.
|
||||
custom_gpu_name1 = ""
|
||||
|
||||
#* Custom gpu2 model name, empty string to disable.
|
||||
custom_gpu_name2 = ""
|
||||
|
||||
#* Custom gpu3 model name, empty string to disable.
|
||||
custom_gpu_name3 = ""
|
||||
|
||||
#* Custom gpu4 model name, empty string to disable.
|
||||
custom_gpu_name4 = ""
|
||||
|
||||
#* Custom gpu5 model name, empty string to disable.
|
||||
custom_gpu_name5 = ""
|
||||
3
private_dot_config/cargo/config.toml
Normal file
3
private_dot_config/cargo/config.toml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
[install]
|
||||
root = "$HOME/.local/bin"
|
||||
|
||||
|
|
@ -14,5 +14,4 @@ recipients = [
|
|||
"6A10DF52E755E8174CD5C4C18ED045D80561353B",
|
||||
"30FA9C303E45B42AA688839C557DE35A80C4461F"
|
||||
]
|
||||
|
||||
|
||||
args = ["-v","--pinentry=loopback"]
|
||||
|
|
|
|||
20
private_dot_config/config.toml.tmpl
Normal file
20
private_dot_config/config.toml.tmpl
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
[user]
|
||||
email = {{ .email | quote }}
|
||||
name = {{ .name | quote }}
|
||||
|
||||
[ui]
|
||||
conflict_style = "git"
|
||||
diff-formatter = ["difft", "--color=always", "$left", "$right"]
|
||||
diff-editor = "meld"
|
||||
merge-editor = ["meld", "$left", "$base", "$right", "-o", "$output"]
|
||||
|
||||
[merge-tools.meld]
|
||||
program = "meld" # Defaults to the name of the tool if not specified
|
||||
edit-args = ["--newtab", "$left", "$right"]
|
||||
|
||||
# [signing]
|
||||
# behavior = "own"
|
||||
# backend = "gpg"
|
||||
|
||||
[remotes.origin]
|
||||
auto-track-bookmarks = "glob:*"
|
||||
1
private_dot_config/external_i3blocks
Submodule
1
private_dot_config/external_i3blocks
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 9d66d81da8d521941a349da26457f4965fd6fcbd
|
||||
42
private_dot_config/ghostty/config
Normal file
42
private_dot_config/ghostty/config
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
clipboard-read = allow
|
||||
clipboard-write = allow
|
||||
clipboard-trim-trailing-spaces = true
|
||||
window-theme = dark
|
||||
mouse-shift-capture = true
|
||||
gtk-titlebar = false
|
||||
gtk-wide-tabs = false
|
||||
font-family = "Berkeley Mono"
|
||||
confirm-close-surface = false
|
||||
|
||||
desktop-notifications = true
|
||||
|
||||
window-padding-x = 4,2
|
||||
window-padding-y = 0
|
||||
|
||||
# sigh, do I really want this
|
||||
minimum-contrast=1.3
|
||||
|
||||
shell-integration-features = ssh-terminfo
|
||||
|
||||
keybind = unconsumed:ctrl+shift+p=toggle_command_palette
|
||||
|
||||
custom-shader = ./trail.glsl
|
||||
|
||||
background = #010206
|
||||
foreground = #ebf6ff
|
||||
palette = 0=#1e1b30
|
||||
palette = 1=#a04558
|
||||
palette = 2=#76aa73
|
||||
palette = 3=#ad9d3d
|
||||
palette = 4=#334773
|
||||
palette = 5=#a34a78
|
||||
palette = 6=#2a97b1
|
||||
palette = 7=#9a9ab8
|
||||
palette = 8=#74689F
|
||||
palette = 9=#ed8096
|
||||
palette = 10=#a0dc9b
|
||||
palette = 11=#c1b254
|
||||
palette = 12=#445f9b
|
||||
palette = 13=#ee5e95
|
||||
palette = 14=#5bcefa
|
||||
palette = 15=#c1c7db
|
||||
143
private_dot_config/ghostty/trail.glsl
Normal file
143
private_dot_config/ghostty/trail.glsl
Normal file
|
|
@ -0,0 +1,143 @@
|
|||
// Based on https://gist.github.com/chardskarth/95874c54e29da6b5a36ab7b50ae2d088
|
||||
float ease(float x) {
|
||||
return pow(1.0 - x, 10.0);
|
||||
}
|
||||
|
||||
float sdBox(in vec2 p, in vec2 xy, in vec2 b)
|
||||
{
|
||||
vec2 d = abs(p - xy) - b;
|
||||
return length(max(d, 0.0)) + min(max(d.x, d.y), 0.0);
|
||||
}
|
||||
|
||||
float getSdfRectangle(in vec2 p, in vec2 xy, in vec2 b)
|
||||
{
|
||||
vec2 d = abs(p - xy) - b;
|
||||
return length(max(d, 0.0)) + min(max(d.x, d.y), 0.0);
|
||||
}
|
||||
// Based on Inigo Quilez's 2D distance functions article: https://iquilezles.org/articles/distfunctions2d/
|
||||
// Potencially optimized by eliminating conditionals and loops to enhance performance and reduce branching
|
||||
float seg(in vec2 p, in vec2 a, in vec2 b, inout float s, float d) {
|
||||
vec2 e = b - a;
|
||||
vec2 w = p - a;
|
||||
vec2 proj = a + e * clamp(dot(w, e) / dot(e, e), 0.0, 1.0);
|
||||
float segd = dot(p - proj, p - proj);
|
||||
d = min(d, segd);
|
||||
|
||||
float c0 = step(0.0, p.y - a.y);
|
||||
float c1 = 1.0 - step(0.0, p.y - b.y);
|
||||
float c2 = 1.0 - step(0.0, e.x * w.y - e.y * w.x);
|
||||
float allCond = c0 * c1 * c2;
|
||||
float noneCond = (1.0 - c0) * (1.0 - c1) * (1.0 - c2);
|
||||
float flip = mix(1.0, -1.0, step(0.5, allCond + noneCond));
|
||||
s *= flip;
|
||||
return d;
|
||||
}
|
||||
|
||||
float getSdfParallelogram(in vec2 p, in vec2 v0, in vec2 v1, in vec2 v2, in vec2 v3) {
|
||||
float s = 1.0;
|
||||
float d = dot(p - v0, p - v0);
|
||||
|
||||
d = seg(p, v0, v3, s, d);
|
||||
d = seg(p, v1, v0, s, d);
|
||||
d = seg(p, v2, v1, s, d);
|
||||
d = seg(p, v3, v2, s, d);
|
||||
|
||||
return s * sqrt(d);
|
||||
}
|
||||
|
||||
vec2 normalize(vec2 value, float isPosition) {
|
||||
return (value * 2.0 - (iResolution.xy * isPosition)) / iResolution.y;
|
||||
}
|
||||
|
||||
float blend(float t)
|
||||
{
|
||||
float sqr = t * t;
|
||||
return sqr / (2.0 * (sqr - t) + 1.0);
|
||||
}
|
||||
|
||||
float antialising(float distance) {
|
||||
return 1. - smoothstep(0., normalize(vec2(2., 2.), 0.).x, distance);
|
||||
}
|
||||
|
||||
float determineStartVertexFactor(vec2 a, vec2 b) {
|
||||
// Conditions using step
|
||||
float condition1 = step(b.x, a.x) * step(a.y, b.y); // a.x < b.x && a.y > b.y
|
||||
float condition2 = step(a.x, b.x) * step(b.y, a.y); // a.x > b.x && a.y < b.y
|
||||
|
||||
// If neither condition is met, return 1 (else case)
|
||||
return 1.0 - max(condition1, condition2);
|
||||
}
|
||||
vec2 getRectangleCenter(vec4 rectangle) {
|
||||
return vec2(rectangle.x + (rectangle.z / 2.), rectangle.y - (rectangle.w / 2.));
|
||||
}
|
||||
|
||||
const vec4 TRAIL_COLOR = vec4(0.117, 0.105, 0.188, 1.0); // yellow
|
||||
const vec4 CURRENT_CURSOR_COLOR = TRAIL_COLOR;
|
||||
const vec4 PREVIOUS_CURSOR_COLOR = TRAIL_COLOR;
|
||||
const vec4 TRAIL_COLOR_ACCENT = vec4(0.313, 0.270, 0.450, 1.0);//(0.454, 0.407, 0.623, 1.0); // red-orange
|
||||
const float DURATION = .5;
|
||||
const float OPACITY = .2;
|
||||
// Don't draw trail within that distance * cursor size.
|
||||
// This prevents trails from appearing when typing.
|
||||
const float DRAW_THRESHOLD = 1.5;
|
||||
// Don't draw trails within the same line: same line jumps are usually where
|
||||
// people expect them.
|
||||
const bool HIDE_TRAILS_ON_THE_SAME_LINE = false;
|
||||
|
||||
void mainImage(out vec4 fragColor, in vec2 fragCoord)
|
||||
{
|
||||
#if !defined(WEB)
|
||||
fragColor = texture(iChannel0, fragCoord.xy / iResolution.xy);
|
||||
#endif
|
||||
//Normalization for fragCoord to a space of -1 to 1;
|
||||
vec2 vu = normalize(fragCoord, 1.);
|
||||
vec2 offsetFactor = vec2(-.5, 0.5);
|
||||
|
||||
//Normalization for cursor position and size;
|
||||
//cursor xy has the postion in a space of -1 to 1;
|
||||
//zw has the width and height
|
||||
vec4 currentCursor = vec4(normalize(iCurrentCursor.xy, 1.), normalize(iCurrentCursor.zw, 0.));
|
||||
vec4 previousCursor = vec4(normalize(iPreviousCursor.xy, 1.), normalize(iPreviousCursor.zw, 0.));
|
||||
|
||||
//When drawing a parellelogram between cursors for the trail i need to determine where to start at the top-left or top-right vertex of the cursor
|
||||
float vertexFactor = determineStartVertexFactor(currentCursor.xy, previousCursor.xy);
|
||||
float invertedVertexFactor = 1.0 - vertexFactor;
|
||||
|
||||
//Set every vertex of my parellogram
|
||||
vec2 v0 = vec2(currentCursor.x + currentCursor.z * vertexFactor, currentCursor.y - currentCursor.w);
|
||||
vec2 v1 = vec2(currentCursor.x + currentCursor.z * invertedVertexFactor, currentCursor.y);
|
||||
vec2 v2 = vec2(previousCursor.x + currentCursor.z * invertedVertexFactor, previousCursor.y);
|
||||
vec2 v3 = vec2(previousCursor.x + currentCursor.z * vertexFactor, previousCursor.y - previousCursor.w);
|
||||
|
||||
vec4 newColor = vec4(fragColor);
|
||||
|
||||
float progress = blend(clamp((iTime - iTimeCursorChange) / DURATION, 0.0, 1));
|
||||
float easedProgress = ease(progress);
|
||||
|
||||
//Distance between cursors determine the total length of the parallelogram;
|
||||
vec2 centerCC = getRectangleCenter(currentCursor);
|
||||
vec2 centerCP = getRectangleCenter(previousCursor);
|
||||
float cursorSize = max(currentCursor.z, currentCursor.w);
|
||||
float trailThreshold = DRAW_THRESHOLD * cursorSize;
|
||||
float lineLength = distance(centerCC, centerCP);
|
||||
//
|
||||
bool isFarEnough = lineLength > trailThreshold;
|
||||
bool isOnSeparateLine = HIDE_TRAILS_ON_THE_SAME_LINE ? currentCursor.y != previousCursor.y : true;
|
||||
if (isFarEnough && isOnSeparateLine) {
|
||||
float distanceToEnd = distance(vu.xy, centerCC);
|
||||
float alphaModifier = distanceToEnd / (lineLength * (easedProgress));
|
||||
|
||||
if (alphaModifier > 1.0) { // this change fixed it for me.
|
||||
alphaModifier = 1.0;
|
||||
}
|
||||
|
||||
float sdfCursor = getSdfRectangle(vu, currentCursor.xy - (currentCursor.zw * offsetFactor), currentCursor.zw * 0.5);
|
||||
float sdfTrail = getSdfParallelogram(vu, v0, v1, v2, v3);
|
||||
|
||||
newColor = mix(newColor, TRAIL_COLOR_ACCENT, 1.0 - smoothstep(sdfTrail, -0.01, 0.001));
|
||||
newColor = mix(newColor, TRAIL_COLOR, antialising(sdfTrail));
|
||||
newColor = mix(fragColor, newColor, 1.0 - alphaModifier);
|
||||
fragColor = mix(newColor, fragColor, step(sdfCursor, 0));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
[user]
|
||||
email = "akristip@cisco.com"
|
||||
name = "Mira Kristipati"
|
||||
|
||||
[core]
|
||||
editor = nvim
|
||||
pager = delta
|
||||
# Remove Carriage Returns
|
||||
autocrlf = input
|
||||
eol = lf
|
||||
|
||||
[interactive]
|
||||
diffFilter = delta --color-only
|
||||
|
||||
[delta]
|
||||
navigate = true # use n and N to move between diff sections
|
||||
light = false # set to true if you're in a terminal w/ a light background color (e.g. the default macOS terminal)
|
||||
|
||||
[merge]
|
||||
conflictstyle = diff3
|
||||
|
||||
[diff]
|
||||
colorMoved = default
|
||||
mnemonicPrefix = true
|
||||
renames = true
|
||||
algorithm = patience
|
||||
|
||||
[pull]
|
||||
rebase = merges
|
||||
autoSetupRemote = true
|
||||
default = simple
|
||||
followTags = true
|
||||
|
||||
[apply]
|
||||
whitespace = fix
|
||||
|
||||
[help]
|
||||
#Automatically fix commands and run after 0.5s
|
||||
autocorrect = 50
|
||||
|
||||
[safe]
|
||||
directory = /
|
||||
|
||||
[rebase]
|
||||
autostash = true
|
||||
|
||||
[log]
|
||||
abbrevCommit = true
|
||||
|
||||
[rerere]
|
||||
autoupdate = true
|
||||
enabled = true
|
||||
|
|
@ -4,20 +4,33 @@ name = {{ .name | quote }}
|
|||
|
||||
[core]
|
||||
editor = nvim
|
||||
pager = delta
|
||||
# pager = delta
|
||||
# Remove Carriage Returns
|
||||
autocrlf = input
|
||||
eol = lf
|
||||
|
||||
[pager]
|
||||
difftool = true
|
||||
|
||||
[interactive]
|
||||
diffFilter = delta --color-only
|
||||
# diffFilter = delta --color-only
|
||||
|
||||
[delta]
|
||||
navigate = true # use n and N to move between diff sections
|
||||
light = false # set to true if you're in a terminal w/ a light background color (e.g. the default macOS terminal)
|
||||
|
||||
[diff]
|
||||
tool = difftastic
|
||||
|
||||
[difftool]
|
||||
prompt = false
|
||||
|
||||
[difftool "difftastic"]
|
||||
cmd = difft "$LOCAL" "$REMOTE"
|
||||
|
||||
[merge]
|
||||
conflictstyle = diff3
|
||||
# TODO: set this to meld or nvimdiff
|
||||
conflictstyle = zdiff3
|
||||
|
||||
[diff]
|
||||
colorMoved = default
|
||||
|
|
@ -39,7 +52,7 @@ whitespace = fix
|
|||
autocorrect = 50
|
||||
|
||||
[safe]
|
||||
directory = /
|
||||
directory = /etc/nixos
|
||||
|
||||
[rebase]
|
||||
autostash = true
|
||||
|
|
@ -50,3 +63,18 @@ abbrevCommit = true
|
|||
[rerere]
|
||||
autoupdate = true
|
||||
enabled = true
|
||||
|
||||
[push]
|
||||
autoSetupRemote = true
|
||||
|
||||
[alias]
|
||||
lg = log --graph --branches --oneline
|
||||
st = status
|
||||
gud = !git commit -am --no-edit --amend && git push --force-with-lease
|
||||
|
||||
[filter "lfs"]
|
||||
process = git-lfs filter-process
|
||||
required = true
|
||||
clean = git-lfs clean -- %f
|
||||
smudge = git-lfs smudge -- %f
|
||||
|
||||
78
private_dot_config/gtk-4.0/gtk.css
Normal file
78
private_dot_config/gtk-4.0/gtk.css
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
@define-color accent_color #5078a4;
|
||||
@define-color accent_bg_color #0b5393;
|
||||
@define-color accent_fg_color #ebf6ff;
|
||||
@define-color destructive_color #f5a9b8;
|
||||
@define-color destructive_bg_color #a04558;
|
||||
@define-color destructive_fg_color #ebf6ff;
|
||||
@define-color success_color #98db95;
|
||||
@define-color success_bg_color #6fa47e;
|
||||
@define-color success_fg_color #ebf6ff;
|
||||
@define-color warning_color #ffe70a;
|
||||
@define-color warning_bg_color #ccb700;
|
||||
@define-color warning_fg_color rgba(1,2,6,0.8);
|
||||
@define-color error_color #f5a9b8;
|
||||
@define-color error_bg_color #a04558;
|
||||
@define-color error_fg_color #ebf6ff;
|
||||
@define-color window_bg_color #1e1b30;
|
||||
@define-color window_fg_color #ebf6ff;
|
||||
@define-color view_bg_color #010206;
|
||||
@define-color view_fg_color #ebf6ff;
|
||||
@define-color headerbar_bg_color #010206;
|
||||
@define-color headerbar_fg_color #ebf6ff;
|
||||
@define-color headerbar_border_color #ebf6ff;
|
||||
@define-color headerbar_backdrop_color @window_bg_color;
|
||||
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color card_bg_color rgba(255, 255, 255, 0.08);
|
||||
@define-color card_fg_color #ebf6ff;
|
||||
@define-color card_shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color dialog_bg_color #010206;
|
||||
@define-color dialog_fg_color #ebf6ff;
|
||||
@define-color popover_bg_color #010206;
|
||||
@define-color popover_fg_color #ebf6ff;
|
||||
@define-color shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5);
|
||||
@define-color blue_1 #99c1f1;
|
||||
@define-color blue_2 #62a0ea;
|
||||
@define-color blue_3 #3584e4;
|
||||
@define-color blue_4 #1c71d8;
|
||||
@define-color blue_5 #1a5fb4;
|
||||
@define-color green_1 #8ff0a4;
|
||||
@define-color green_2 #57e389;
|
||||
@define-color green_3 #33d17a;
|
||||
@define-color green_4 #2ec27e;
|
||||
@define-color green_5 #26a269;
|
||||
@define-color yellow_1 #f9f06b;
|
||||
@define-color yellow_2 #f8e45c;
|
||||
@define-color yellow_3 #f6d32d;
|
||||
@define-color yellow_4 #f5c211;
|
||||
@define-color yellow_5 #e5a50a;
|
||||
@define-color orange_1 #ffbe6f;
|
||||
@define-color orange_2 #ffa348;
|
||||
@define-color orange_3 #ff7800;
|
||||
@define-color orange_4 #e66100;
|
||||
@define-color orange_5 #c64600;
|
||||
@define-color red_1 #f66151;
|
||||
@define-color red_2 #ed333b;
|
||||
@define-color red_3 #e01b24;
|
||||
@define-color red_4 #c01c28;
|
||||
@define-color red_5 #a51d2d;
|
||||
@define-color purple_1 #dc8add;
|
||||
@define-color purple_2 #c061cb;
|
||||
@define-color purple_3 #9141ac;
|
||||
@define-color purple_4 #813d9c;
|
||||
@define-color purple_5 #613583;
|
||||
@define-color brown_1 #cdab8f;
|
||||
@define-color brown_2 #b5835a;
|
||||
@define-color brown_3 #986a44;
|
||||
@define-color brown_4 #865e3c;
|
||||
@define-color brown_5 #63452c;
|
||||
@define-color light_1 #ffffff;
|
||||
@define-color light_2 #f6f5f4;
|
||||
@define-color light_3 #deddda;
|
||||
@define-color light_4 #c0bfbc;
|
||||
@define-color light_5 #9a9996;
|
||||
@define-color dark_1 #77767b;
|
||||
@define-color dark_2 #5e5c64;
|
||||
@define-color dark_3 #3d3846;
|
||||
@define-color dark_4 #241f31;
|
||||
@define-color dark_5 #000000;
|
||||
2
private_dot_config/gtk-4.0/settings.ini
Normal file
2
private_dot_config/gtk-4.0/settings.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
[Settings]
|
||||
gtk-application-prefer-dark-theme=0
|
||||
16
private_dot_config/hyfetch.json
Normal file
16
private_dot_config/hyfetch.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"preset": "transgender",
|
||||
"mode": "rgb",
|
||||
"light_dark": "dark",
|
||||
"lightness": 0.65,
|
||||
"color_align": {
|
||||
"mode": "horizontal",
|
||||
"custom_colors": [],
|
||||
"fore_back": null
|
||||
},
|
||||
"backend": "neofetch",
|
||||
"args": null,
|
||||
"distro": null,
|
||||
"pride_month_shown": [],
|
||||
"pride_month_disable": false
|
||||
}
|
||||
65
private_dot_config/i3/config
Normal file
65
private_dot_config/i3/config
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
# This file has been auto-generated by i3-config-wizard(1).
|
||||
# It will not be overwritten, so edit it as you like.
|
||||
#
|
||||
# Should you change your keyboard layout some time, delete
|
||||
# this file and re-run i3-config-wizard(1).
|
||||
#
|
||||
|
||||
# i3 config file (v4)
|
||||
#
|
||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
||||
|
||||
set $mod Mod4
|
||||
include "keybinds"
|
||||
|
||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||
floating_modifier $mod
|
||||
|
||||
# Define names for default workspaces for which we configure key bindings later on.
|
||||
# We use variables to avoid repeating the names in multiple places.
|
||||
set $ws1 "1"
|
||||
set $ws2 "2"
|
||||
set $ws3 "3"
|
||||
set $ws4 "4"
|
||||
set $ws5 "5"
|
||||
set $ws6 "6"
|
||||
set $ws7 "7"
|
||||
set $ws8 "8"
|
||||
set $ws9 "9"
|
||||
set $ws10 "10"
|
||||
|
||||
set $ws21 "21"
|
||||
set $ws22 "22"
|
||||
set $ws23 "23"
|
||||
set $ws24 "24"
|
||||
set $ws25 "25"
|
||||
set $ws26 "26"
|
||||
set $ws27 "27"
|
||||
set $ws28 "28"
|
||||
set $ws29 "29"
|
||||
set $ws20 "20"
|
||||
|
||||
|
||||
include "xorg"
|
||||
|
||||
#compositor
|
||||
exec_always --no-startup-id picom --corner-radius 4 -i 0.99 -b
|
||||
|
||||
#QT Themes?
|
||||
#exec sh 'export QT_QPA_PLATFORMTHEME=qt5ct'
|
||||
|
||||
exec dunst &
|
||||
exec_always swhks &
|
||||
exec_always pkexec swhkd
|
||||
exec nm-tray
|
||||
exec xsettingsd
|
||||
#border size
|
||||
default_border normal 1
|
||||
#Set up monitors
|
||||
# exec ~/.screenlayout/main.sh
|
||||
# exec ~/tablet.sh
|
||||
|
||||
tiling_drag titlebar
|
||||
gaps inner 5
|
||||
exec nm-applet
|
||||
include "theme"
|
||||
163
private_dot_config/i3/i3blocks.conf
Normal file
163
private_dot_config/i3/i3blocks.conf
Normal file
|
|
@ -0,0 +1,163 @@
|
|||
# i3blocks config file
|
||||
#
|
||||
# Please see man i3blocks for a complete reference!
|
||||
# The man page is also hosted at http://vivien.github.io/i3blocks
|
||||
#
|
||||
# List of valid properties:
|
||||
#
|
||||
# align
|
||||
# color
|
||||
# command
|
||||
# full_text
|
||||
# instance
|
||||
# interval
|
||||
# label
|
||||
# min_width
|
||||
# name
|
||||
# separator
|
||||
# separator_block_width
|
||||
# short_text
|
||||
# signal
|
||||
# urgent
|
||||
|
||||
# Global properties
|
||||
#
|
||||
# The top properties below are applied to every block, but can be overridden.
|
||||
# Each block command defaults to the script name to avoid boilerplate.
|
||||
command=~/.config/i3/blocks/$BLOCK_NAME
|
||||
separator_block_width=15
|
||||
markup=none
|
||||
|
||||
# Volume indicator
|
||||
#
|
||||
# The first parameter sets the step (and units to display)
|
||||
# The second parameter overrides the mixer selection
|
||||
# See the script for details.
|
||||
[volume]
|
||||
#label=VOL
|
||||
label=♪
|
||||
#instance=Master
|
||||
#instance=PCM
|
||||
interval=1
|
||||
signal=10
|
||||
NATURAL_MAPPING=1
|
||||
|
||||
# Memory usage
|
||||
#
|
||||
# The type defaults to "mem" if the instance is not specified.
|
||||
[memory]
|
||||
label=MEM
|
||||
separator=false
|
||||
interval=30
|
||||
|
||||
[memory]
|
||||
label=SWAP
|
||||
instance=swap
|
||||
separator=false
|
||||
interval=30
|
||||
|
||||
# Disk usage
|
||||
#
|
||||
# The directory defaults to $HOME if the instance is not specified.
|
||||
# The script may be called with a optional argument to set the alert
|
||||
# (defaults to 10 for 10%).
|
||||
[disk]
|
||||
label=
|
||||
#instance=/mnt/data
|
||||
interval=30
|
||||
|
||||
[disk]
|
||||
markup=pango
|
||||
label=
|
||||
instance=/
|
||||
interval=30
|
||||
# Network interface monitoring
|
||||
#
|
||||
# If the instance is not specified, use the interface used for default route.
|
||||
# The address can be forced to IPv4 or IPv6 with -4 or -6 switches.
|
||||
[iface]
|
||||
#instance=wlan0
|
||||
color=#00FF00
|
||||
interval=10
|
||||
separator=false
|
||||
|
||||
[wifi]
|
||||
#instance=wlp3s0
|
||||
interval=10
|
||||
#separator=false
|
||||
|
||||
#[bandwidth]
|
||||
#instance=eth0
|
||||
#interval=5
|
||||
|
||||
# CPU usage
|
||||
#
|
||||
# The script may be called with -w and -c switches to specify thresholds,
|
||||
# see the script for details.
|
||||
#[cpu_usage]
|
||||
#label=CPU
|
||||
#interval=10
|
||||
#min_width=CPU: 100.00%
|
||||
#separator=false
|
||||
|
||||
|
||||
# Battery indicator
|
||||
#
|
||||
# The battery instance defaults to 0.
|
||||
#[battery]
|
||||
#label=BAT
|
||||
#label=⚡
|
||||
#instance=1
|
||||
#interval=30
|
||||
|
||||
#[battery2]
|
||||
#label=⚡
|
||||
#markup=pango
|
||||
#interval=30
|
||||
|
||||
# Temperature
|
||||
#
|
||||
# Support multiple chips, though lm-sensors.
|
||||
# The script may be called with -w and -c switches to specify thresholds,
|
||||
# see the script for details.
|
||||
[temperature]
|
||||
label=🌡️
|
||||
interval=10
|
||||
SENSOR_CHIP='k10temp-pci-00c3'
|
||||
|
||||
# Date Time
|
||||
#
|
||||
[time]
|
||||
command=date '+%a %b %_d %Y %l:%M:%S'
|
||||
interval=1
|
||||
|
||||
# Generic media player support
|
||||
#
|
||||
# This displays "ARTIST - SONG" if a music is playing.
|
||||
# Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others.
|
||||
#[mediaplayer]
|
||||
#instance=spotify
|
||||
#interval=5
|
||||
#signal=10
|
||||
|
||||
# OpenVPN support
|
||||
#
|
||||
# Support multiple VPN, with colors.
|
||||
#[openvpn]
|
||||
#interval=20
|
||||
|
||||
# Key indicators
|
||||
#
|
||||
# Add the following bindings to i3 config file:
|
||||
#
|
||||
# bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks
|
||||
# bindsym --release Num_Lock exec pkill -SIGRTMIN+11 i3blocks
|
||||
#[keyindicator]
|
||||
#instance=CAPS
|
||||
#interval=once
|
||||
#signal=11
|
||||
|
||||
#[keyindicator]
|
||||
#instance=NUM
|
||||
#interval=once
|
||||
#signal=11
|
||||
151
private_dot_config/i3/keybinds
Normal file
151
private_dot_config/i3/keybinds
Normal file
|
|
@ -0,0 +1,151 @@
|
|||
|
||||
# start a terminal
|
||||
bindsym $mod+Shift+Return exec alacritty
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# change focus
|
||||
bindsym $mod+j focus left
|
||||
bindsym $mod+k focus down
|
||||
bindsym $mod+l focus up
|
||||
bindsym $mod+semicolon focus right
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# move focused window
|
||||
bindsym $mod+Shift+j move left
|
||||
bindsym $mod+Shift+k move down
|
||||
bindsym $mod+Shift+l move up
|
||||
bindsym $mod+Shift+semicolon move right
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
# split in horizontal orientation
|
||||
bindsym $mod+h split h
|
||||
|
||||
# split in vertical orientation
|
||||
bindsym $mod+v split v
|
||||
|
||||
# enter fullscreen mode for the focused container
|
||||
bindsym $mod+f fullscreen toggle
|
||||
|
||||
# change container layout (stacked, tabbed, toggle split)
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+e layout toggle split
|
||||
|
||||
# toggle tiling / floating
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
#bindsym $mod+space focus mode_toggle
|
||||
|
||||
# focus the parent container
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# focus the child container
|
||||
bindsym $mod+d focus child
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
bindsym $mod+8 workspace $ws8
|
||||
bindsym $mod+9 workspace $ws9
|
||||
bindsym $mod+0 workspace $ws10
|
||||
|
||||
|
||||
bindsym $mod+Mod2+KP_1 workspace $ws21
|
||||
bindsym $mod+Mod2+KP_2 workspace $ws22
|
||||
bindsym $mod+Mod2+KP_3 workspace $ws23
|
||||
bindsym $mod+Mod2+KP_4 workspace $ws24
|
||||
bindsym $mod+Mod2+KP_5 workspace $ws25
|
||||
bindsym $mod+Mod2+KP_6 workspace $ws26
|
||||
bindsym $mod+Mod2+KP_7 workspace $ws27
|
||||
bindsym $mod+Mod2+KP_8 workspace $ws28
|
||||
bindsym $mod+Mod2+KP_9 workspace $ws29
|
||||
bindsym $mod+Mod2+KP_0 workspace $ws20
|
||||
|
||||
# move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7
|
||||
bindsym $mod+Shift+8 move container to workspace $ws8
|
||||
bindsym $mod+Shift+9 move container to workspace $ws9
|
||||
bindsym $mod+Shift+0 move container to workspace $ws10
|
||||
|
||||
bindsym $mod+Shift+Mod2+KP_End move container to workspace $ws21
|
||||
bindsym $mod+Shift+Mod2+KP_Down move container to workspace $ws22
|
||||
bindsym $mod+Shift+Mod2+KP_Next move container to workspace $ws23
|
||||
bindsym $mod+Shift+Mod2+KP_Left move container to workspace $ws24
|
||||
bindsym $mod+Shift+Mod2+KP_Begin move container to workspace $ws25
|
||||
bindsym $mod+Shift+Mod2+KP_Right move container to workspace $ws26
|
||||
bindsym $mod+Shift+Mod2+KP_Home move container to workspace $ws27
|
||||
bindsym $mod+Shift+Mod2+KP_Up move container to workspace $ws28
|
||||
bindsym $mod+Shift+Mod2+KP_Prior move container to workspace $ws29
|
||||
bindsym $mod+Shift+Mod2+KP_Insert move container to workspace $ws20
|
||||
|
||||
# reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
|
||||
# resize window (you can also use the mouse for that)
|
||||
mode "resize" {
|
||||
# These bindings trigger as soon as you enter the resize mode
|
||||
|
||||
# Pressing left will shrink the window’s width.
|
||||
# Pressing right will grow the window’s width.
|
||||
# Pressing up will shrink the window’s height.
|
||||
# Pressing down will grow the window’s height.
|
||||
bindsym j resize shrink width 10 px or 10 ppt
|
||||
bindsym k resize grow height 10 px or 10 ppt
|
||||
bindsym l resize shrink height 10 px or 10 ppt
|
||||
bindsym semicolon resize grow width 10 px or 10 ppt
|
||||
|
||||
# same bindings, but for the arrow keys
|
||||
bindsym Left resize shrink width 10 px or 10 ppt
|
||||
bindsym Down resize grow height 10 px or 10 ppt
|
||||
bindsym Up resize shrink height 10 px or 10 ppt
|
||||
bindsym Right resize grow width 10 px or 10 ppt
|
||||
|
||||
# back to normal: Enter or Escape or $mod+r
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
bindsym $mod+r mode "default"
|
||||
}
|
||||
|
||||
bindsym $mod+r mode "resize"
|
||||
|
||||
# Make the currently focused window a scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
|
||||
# Show the first scratchpad window
|
||||
bindsym $mod+minus scratchpad show
|
||||
|
||||
#move to other monitor
|
||||
bindsym $mod+x move container to output right
|
||||
bindsym $mod+z move workspace to output right
|
||||
bindsym $mod+n move container to output down
|
||||
bindsym $mod+m move workspace to output down
|
||||
|
||||
bindsym $mod+Shift+x move container to output left
|
||||
bindsym $mod+Shift+z move workspace to output left
|
||||
bindsym $mod+Shift+n move container to output up
|
||||
bindsym $mod+Shift+m move workspace to output up
|
||||
|
||||
33
private_dot_config/i3/theme
Normal file
33
private_dot_config/i3/theme
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Colors
|
||||
set $fg #EBF6FF
|
||||
set $bg #504573
|
||||
set $inactive #1E1B30
|
||||
set $urgent #A04558
|
||||
# class border backgr. text indicator child_border
|
||||
client.focused $bg $bg $fg $bg $bg
|
||||
client.focused_inactive $inactive $inactive $fg $bg $bg
|
||||
client.unfocused $inactive $inactive $fg $bg $bg
|
||||
client.urgent $urgent $urgent $fg $bg $bg
|
||||
client.placeholder $bg $bg $fg $bg $bg
|
||||
client.background $bg
|
||||
|
||||
font pango:Monocraft Nerd Font, Atkinson Hyperlegible bold 9
|
||||
|
||||
bar {
|
||||
status_command i3blocks -c ~/.config/sway/i3blocks.conf
|
||||
font pango:Monocraft Nerd Font, Symbols Nerd Font, FontAwesome 10
|
||||
#mode hide
|
||||
colors {
|
||||
background $inactive
|
||||
statusline $fg
|
||||
separator $fg
|
||||
|
||||
focused_workspace $bg $bg $fg
|
||||
active_workspace $inactive $inactive $fg
|
||||
inactive_workspace $inactive $inactive $fg
|
||||
urgent_workspace $urgent $urgent $fg
|
||||
binding_mode $urgent $urgent $fg
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
38
private_dot_config/i3/xorg
Normal file
38
private_dot_config/i3/xorg
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
|
||||
bindsym $mod+Shift+r restart
|
||||
|
||||
# Pulse Audio controls
|
||||
#bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume
|
||||
#bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume
|
||||
#bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound
|
||||
|
||||
#extra keys?
|
||||
#bindsym XF86AudioStop
|
||||
#bindsym XF86AudioMedia
|
||||
#bindsym XF86HomePage
|
||||
|
||||
# Sreen brightness controls
|
||||
# if requires sudo, run chmod +s $(which light)
|
||||
bindsym XF86MonBrightnessUp exec brightnessctl -e s 5%+ # increase screen brightness
|
||||
bindsym XF86MonBrightnessDown exec brightnessctl -e s 5%- # decrease screen brightness#bindsym XF86Mail exec light -U 5
|
||||
#bindsym XF86Calculator exec light -A 5
|
||||
|
||||
# Media player controls
|
||||
bindsym XF86AudioPlay exec playerctl play
|
||||
bindsym XF86AudioPause exec playerctl pause
|
||||
bindsym XF86AudioNext exec playerctl next
|
||||
bindsym XF86AudioPrev exec playerctl previous
|
||||
|
||||
#background image
|
||||
exec_always --no-startup-id feh --bg-fill "00 Setup/wallpaper.png" --no-fehbg
|
||||
# I forget but probably important
|
||||
# exec gnome-settings-daemon
|
||||
# fix audio
|
||||
# exec alsactl restore
|
||||
|
||||
#if no polkit, run gnome polkit (does this even work?)
|
||||
# exec_always --no-startup-id /usr/lib/polkit-kde-authentication-agent-1
|
||||
|
||||
# Touchpad settings
|
||||
exec_always xinput set-prop "SYNA8017:00 06CB:CEB2 Touchpad" "libinput Natural Scrolling Enabled" 1
|
||||
exec_always xinput set-prop "SYNA8017:00 06CB:CEB2 Touchpad" "libinput Enabled" 1
|
||||
22
private_dot_config/kitty/colors.conf
Normal file
22
private_dot_config/kitty/colors.conf
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# Color theme: 3024 Night
|
||||
# Auto-generated by Gogh (https://Gogh-Co.github.io/Gogh/)
|
||||
|
||||
color0 #1e1b30
|
||||
color1 #a04558
|
||||
color2 #76AA73
|
||||
color3 #AD9D3D
|
||||
color4 #334773
|
||||
color5 #A34A78
|
||||
color6 #2A97B1
|
||||
color7 #9A9AB8
|
||||
color8 #504573
|
||||
color9 #ED8096
|
||||
color10 #A0DC9B
|
||||
color11 #C1B254
|
||||
color12 #445F9B
|
||||
color13 #EE5E95
|
||||
color14 #5BCEFA
|
||||
color15 #C1C7DB
|
||||
background #010206
|
||||
foreground #EBF6FF
|
||||
cursor #EBF6FF
|
||||
2206
private_dot_config/kitty/kitty.conf
Normal file
2206
private_dot_config/kitty/kitty.conf
Normal file
File diff suppressed because it is too large
Load diff
4
private_dot_config/lf/executable_clear_img.sh
Normal file
4
private_dot_config/lf/executable_clear_img.sh
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
#!/bin/sh
|
||||
if [ -n "$FIFO_UEBERZUG" ]; then
|
||||
printf '{"action": "remove", "identifier": "preview"}\n' >"$FIFO_UEBERZUG"
|
||||
fi
|
||||
6
private_dot_config/lf/executable_draw_img.sh
Normal file
6
private_dot_config/lf/executable_draw_img.sh
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
#!/bin/sh
|
||||
if [ -n "$FIFO_UEBERZUG" ]; then
|
||||
path="$(printf '%s' "$1" | sed 's/\\/\\\\/g;s/"/\\"/g')"
|
||||
printf '{"action": "add", "identifier": "preview", "x": %d, "y": %d, "width": %d, "height": %d, "scaler": "contain", "scaling_position_x": 0.5, "scaling_position_y": 0.5, "path": "%s"}\n' \
|
||||
"$4" "$5" "$2" "$3" "$1" >"$FIFO_UEBERZUG"
|
||||
fi
|
||||
44
private_dot_config/lf/executable_previewer.sh
Normal file
44
private_dot_config/lf/executable_previewer.sh
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
#!/bin/sh
|
||||
draw() {
|
||||
~/.config/lf/draw_img.sh "$@"
|
||||
exit 1
|
||||
}
|
||||
|
||||
hash() {
|
||||
printf '%s/.cache/lf/%s' "$HOME" \
|
||||
"$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | awk '{print $1}')"
|
||||
}
|
||||
|
||||
cache() {
|
||||
if [ -f "$1" ]; then
|
||||
draw "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
file="$1"
|
||||
shift
|
||||
|
||||
if [ -n "$FIFO_UEBERZUG" ]; then
|
||||
case "$(file -Lb --mime-type -- "$file")" in
|
||||
image/*)
|
||||
orientation="$(identify -format '%[EXIF:Orientation]\n' -- "$file")"
|
||||
if [ -n "$orientation" ] && [ "$orientation" != 1 ]; then
|
||||
cache="$(hash "$file").jpg"
|
||||
cache "$cache" "$@"
|
||||
convert -- "$file" -auto-orient "$cache"
|
||||
draw "$cache" "$@"
|
||||
else
|
||||
draw "$file" "$@"
|
||||
fi
|
||||
;;
|
||||
video/*)
|
||||
cache="$(hash "$file").jpg"
|
||||
cache "$cache" "$@"
|
||||
ffmpegthumbnailer -i "$file" -o "$cache" -s 0
|
||||
draw "$cache" "$@"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
file -Lb -- "$1" | fold -s -w "$width"
|
||||
exit 0
|
||||
76
private_dot_config/lf/lfrc
Normal file
76
private_dot_config/lf/lfrc
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
set hidden!
|
||||
set shell zsh
|
||||
set mouse
|
||||
|
||||
cmd open ${{
|
||||
case $(file --mime-type "$f" -bL) in
|
||||
text/*|application/json) $EDITOR "$f";;
|
||||
video/*|image/*|/application/pdf) $OPENER "$f" & disown;;
|
||||
*) $OPENER "$f" ;;
|
||||
esac
|
||||
}}
|
||||
|
||||
# trash
|
||||
cmd trash %trash-put $fx
|
||||
map x trash
|
||||
map DD delete
|
||||
|
||||
|
||||
# make file/dir
|
||||
cmd mkdir %{{
|
||||
echo "Name: "
|
||||
read ans
|
||||
if [[ "$ans" == */ ]]; then
|
||||
mkdir -p "$ans";
|
||||
else
|
||||
mkdir -p "$(dirname $ans)";
|
||||
touch "$ans";
|
||||
fi
|
||||
}}
|
||||
|
||||
map a mkdir
|
||||
|
||||
cmd sudo_mkdir ${{
|
||||
echo "Name: "
|
||||
read ans
|
||||
if [[ "$ans" == */ ]]; then
|
||||
sudo mkdir -p "$ans";
|
||||
else
|
||||
sudo mkdir -p "$(dirname $ans)";
|
||||
sudo touch "$ans";
|
||||
fi
|
||||
}}
|
||||
map A sudo_mkdir
|
||||
|
||||
|
||||
# fzf search
|
||||
cmd fzf_jump ${{
|
||||
res="$(find . -maxdepth 3 | fzf --reverse --header='Jump to location')"
|
||||
if [ -n "$res" ]; then
|
||||
if [ -d "$res" ]; then
|
||||
cmd="cd"
|
||||
else
|
||||
cmd="select"
|
||||
fi
|
||||
res="$(printf '%s' "$res" | sed 's/\\/\\\\/g;s/"/\\"/g')"
|
||||
lf -remote "send $id $cmd \"$res\""
|
||||
fi
|
||||
}}
|
||||
map <c-f> :fzf_jump
|
||||
|
||||
cmd unarchive ${{
|
||||
case "$f" in
|
||||
*.zip) unzip "$f" ;;
|
||||
*.tar*) tar -xvf "$f" ;;
|
||||
*) echo "Unsupported format" ;;
|
||||
}}
|
||||
|
||||
cmd zip %zip -r "$f" "$f"
|
||||
cmd xz %tar -cJvf "$f.tar.xz" "$f"
|
||||
cmd gz %tar -czvf "$f.tar.gz" "$f"
|
||||
cmd zstd %tar -cvf --zstd "$f.tar.zst" "$f"
|
||||
|
||||
map au unarchive
|
||||
|
||||
set previewer ~/.config/lf/previewer.sh
|
||||
set cleaner ~/.config/lf/clear_img.sh
|
||||
10
private_dot_config/mako/config
Normal file
10
private_dot_config/mako/config
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
font=Berkeley Mono, FontAwesome 11
|
||||
max-icon-size=32
|
||||
height=300
|
||||
width=300
|
||||
background-color=#1e1b30cc
|
||||
text-color=#fbfbff
|
||||
border-radius=8
|
||||
border-color=#746e95
|
||||
default-timeout=10000
|
||||
layer=overlay
|
||||
845
private_dot_config/nushell/config.nu
Normal file
845
private_dot_config/nushell/config.nu
Normal file
|
|
@ -0,0 +1,845 @@
|
|||
# Nushell Config File
|
||||
#
|
||||
# version = "0.91.0"
|
||||
|
||||
# For more information on defining custom themes, see
|
||||
# https://www.nushell.sh/book/coloring_and_theming.html
|
||||
# And here is the theme collection
|
||||
# https://github.com/nushell/nu_scripts/tree/main/themes
|
||||
let dark_theme = {
|
||||
# color for nushell primitives
|
||||
separator: white
|
||||
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
|
||||
header: green_bold
|
||||
empty: blue
|
||||
# Closures can be used to choose colors for specific values.
|
||||
# The value (in this case, a bool) is piped into the closure.
|
||||
# eg) {|| if $in { 'light_cyan' } else { 'light_gray' } }
|
||||
bool: light_cyan
|
||||
int: white
|
||||
filesize: cyan
|
||||
duration: white
|
||||
date: purple
|
||||
range: white
|
||||
float: white
|
||||
string: white
|
||||
nothing: white
|
||||
binary: white
|
||||
cell-path: white
|
||||
row_index: green_bold
|
||||
record: white
|
||||
list: white
|
||||
block: white
|
||||
hints: dark_gray
|
||||
search_result: { bg: red fg: white }
|
||||
shape_and: purple_bold
|
||||
shape_binary: purple_bold
|
||||
shape_block: blue_bold
|
||||
shape_bool: light_cyan
|
||||
shape_closure: green_bold
|
||||
shape_custom: green
|
||||
shape_datetime: cyan_bold
|
||||
shape_directory: cyan
|
||||
shape_external: cyan
|
||||
shape_externalarg: green_bold
|
||||
shape_external_resolved: light_yellow_bold
|
||||
shape_filepath: cyan
|
||||
shape_flag: blue_bold
|
||||
shape_float: purple_bold
|
||||
# shapes are used to change the cli syntax highlighting
|
||||
shape_garbage: { fg: white bg: red attr: b}
|
||||
shape_globpattern: cyan_bold
|
||||
shape_int: purple_bold
|
||||
shape_internalcall: cyan_bold
|
||||
shape_keyword: cyan_bold
|
||||
shape_list: cyan_bold
|
||||
shape_literal: blue
|
||||
shape_match_pattern: green
|
||||
shape_matching_brackets: { attr: u }
|
||||
shape_nothing: light_cyan
|
||||
shape_operator: yellow
|
||||
shape_or: purple_bold
|
||||
shape_pipe: purple_bold
|
||||
shape_range: yellow_bold
|
||||
shape_record: cyan_bold
|
||||
shape_redirection: purple_bold
|
||||
shape_signature: green_bold
|
||||
shape_string: green
|
||||
shape_string_interpolation: cyan_bold
|
||||
shape_table: blue_bold
|
||||
shape_variable: purple
|
||||
shape_vardecl: purple
|
||||
}
|
||||
|
||||
let light_theme = {
|
||||
# color for nushell primitives
|
||||
separator: dark_gray
|
||||
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
|
||||
header: green_bold
|
||||
empty: blue
|
||||
# Closures can be used to choose colors for specific values.
|
||||
# The value (in this case, a bool) is piped into the closure.
|
||||
# eg) {|| if $in { 'dark_cyan' } else { 'dark_gray' } }
|
||||
bool: dark_cyan
|
||||
int: dark_gray
|
||||
filesize: cyan_bold
|
||||
duration: dark_gray
|
||||
date: purple
|
||||
range: dark_gray
|
||||
float: dark_gray
|
||||
string: dark_gray
|
||||
nothing: dark_gray
|
||||
binary: dark_gray
|
||||
cell-path: dark_gray
|
||||
row_index: green_bold
|
||||
record: dark_gray
|
||||
list: dark_gray
|
||||
block: dark_gray
|
||||
hints: dark_gray
|
||||
search_result: { fg: white bg: red }
|
||||
shape_and: purple_bold
|
||||
shape_binary: purple_bold
|
||||
shape_block: blue_bold
|
||||
shape_bool: light_cyan
|
||||
shape_closure: green_bold
|
||||
shape_custom: green
|
||||
shape_datetime: cyan_bold
|
||||
shape_directory: cyan
|
||||
shape_external: cyan
|
||||
shape_externalarg: green_bold
|
||||
shape_external_resolved: light_purple_bold
|
||||
shape_filepath: cyan
|
||||
shape_flag: blue_bold
|
||||
shape_float: purple_bold
|
||||
# shapes are used to change the cli syntax highlighting
|
||||
shape_garbage: { fg: white bg: red attr: b}
|
||||
shape_globpattern: cyan_bold
|
||||
shape_int: purple_bold
|
||||
shape_internalcall: cyan_bold
|
||||
shape_keyword: cyan_bold
|
||||
shape_list: cyan_bold
|
||||
shape_literal: blue
|
||||
shape_match_pattern: green
|
||||
shape_matching_brackets: { attr: u }
|
||||
shape_nothing: light_cyan
|
||||
shape_operator: yellow
|
||||
shape_or: purple_bold
|
||||
shape_pipe: purple_bold
|
||||
shape_range: yellow_bold
|
||||
shape_record: cyan_bold
|
||||
shape_redirection: purple_bold
|
||||
shape_signature: green_bold
|
||||
shape_string: green
|
||||
shape_string_interpolation: cyan_bold
|
||||
shape_table: blue_bold
|
||||
shape_variable: purple
|
||||
shape_vardecl: purple
|
||||
}
|
||||
|
||||
# External completer example
|
||||
# let carapace_completer = {|spans|
|
||||
# carapace $spans.0 nushell ...$spans | from json
|
||||
# }
|
||||
|
||||
# The default config record. This is where much of your global configuration is setup.
|
||||
$env.config = {
|
||||
show_banner: false # true or false to enable or disable the welcome banner at startup
|
||||
|
||||
ls: {
|
||||
use_ls_colors: true # use the LS_COLORS environment variable to colorize output
|
||||
clickable_links: true # enable or disable clickable links. Your terminal has to support links.
|
||||
}
|
||||
|
||||
rm: {
|
||||
always_trash: false # always act as if -t was given. Can be overridden with -p
|
||||
}
|
||||
|
||||
table: {
|
||||
mode: rounded # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other
|
||||
index_mode: always # "always" show indexes, "never" show indexes, "auto" = show indexes when a table has "index" column
|
||||
show_empty: true # show 'empty list' and 'empty record' placeholders for command output
|
||||
padding: { left: 1, right: 1 } # a left right padding of each column in a table
|
||||
trim: {
|
||||
methodology: wrapping # wrapping or truncating
|
||||
wrapping_try_keep_words: true # A strategy used by the 'wrapping' methodology
|
||||
truncating_suffix: "..." # A suffix used by the 'truncating' methodology
|
||||
}
|
||||
header_on_separator: false # show header text on separator/border line
|
||||
# abbreviated_row_count: 10 # limit data rows from top and bottom after reaching a set point
|
||||
}
|
||||
|
||||
error_style: "fancy" # "fancy" or "plain" for screen reader-friendly error messages
|
||||
|
||||
# datetime_format determines what a datetime rendered in the shell would look like.
|
||||
# Behavior without this configuration point will be to "humanize" the datetime display,
|
||||
# showing something like "a day ago."
|
||||
datetime_format: {
|
||||
# normal: '%a, %d %b %Y %H:%M:%S %z' # shows up in displays of variables or other datetime's outside of tables
|
||||
# table: '%m/%d/%y %I:%M:%S%p' # generally shows up in tabular outputs such as ls. commenting this out will change it to the default human readable datetime format
|
||||
}
|
||||
|
||||
explore: {
|
||||
status_bar_background: { fg: "#1D1F21", bg: "#C4C9C6" },
|
||||
command_bar_text: { fg: "#C4C9C6" },
|
||||
highlight: { fg: "black", bg: "yellow" },
|
||||
status: {
|
||||
error: { fg: "white", bg: "red" },
|
||||
warn: {}
|
||||
info: {}
|
||||
},
|
||||
table: {
|
||||
split_line: { fg: "#404040" },
|
||||
selected_cell: { bg: light_blue },
|
||||
selected_row: {},
|
||||
selected_column: {},
|
||||
},
|
||||
}
|
||||
|
||||
history: {
|
||||
max_size: 100_000 # Session has to be reloaded for this to take effect
|
||||
sync_on_enter: true # Enable to share history between multiple sessions, else you have to close the session to write history to file
|
||||
file_format: "plaintext" # "sqlite" or "plaintext"
|
||||
isolation: false # only available with sqlite file_format. true enables history isolation, false disables it. true will allow the history to be isolated to the current session using up/down arrows. false will allow the history to be shared across all sessions.
|
||||
}
|
||||
|
||||
completions: {
|
||||
case_sensitive: false # set to true to enable case-sensitive completions
|
||||
quick: true # set this to false to prevent auto-selecting completions when only one remains
|
||||
partial: true # set this to false to prevent partial filling of the prompt
|
||||
algorithm: "prefix" # prefix or fuzzy
|
||||
external: {
|
||||
enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up may be very slow
|
||||
max_results: 100 # setting it lower can improve completion performance at the cost of omitting some options
|
||||
completer: null # check 'carapace_completer' above as an example
|
||||
}
|
||||
use_ls_colors: true # set this to true to enable file/path/directory completions using LS_COLORS
|
||||
}
|
||||
|
||||
filesize: {
|
||||
metric: false # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard)
|
||||
format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, auto
|
||||
}
|
||||
|
||||
cursor_shape: {
|
||||
emacs: line # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (line is the default)
|
||||
vi_insert: block # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (block is the default)
|
||||
vi_normal: underscore # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (underscore is the default)
|
||||
}
|
||||
|
||||
color_config: $dark_theme # if you want a more interesting theme, you can replace the empty record with `$dark_theme`, `$light_theme` or another custom record
|
||||
use_grid_icons: true
|
||||
footer_mode: "25" # always, never, number_of_rows, auto
|
||||
float_precision: 2 # the precision for displaying floats in tables
|
||||
buffer_editor: "" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL
|
||||
use_ansi_coloring: true
|
||||
bracketed_paste: true # enable bracketed paste, currently useless on windows
|
||||
edit_mode: emacs # emacs, vi
|
||||
shell_integration: false # enables terminal shell integration. Off by default, as some terminals have issues with this.
|
||||
render_right_prompt_on_last_line: false # true or false to enable or disable right prompt to be rendered on last line of the prompt.
|
||||
use_kitty_protocol: false # enables keyboard enhancement protocol implemented by kitty console, only if your terminal support this.
|
||||
highlight_resolved_externals: false # true enables highlighting of external commands in the repl resolved by which.
|
||||
|
||||
plugins: {} # Per-plugin configuration. See https://www.nushell.sh/contributor-book/plugins.html#configuration.
|
||||
|
||||
hooks: {
|
||||
pre_prompt: [{ null }] # run before the prompt is shown
|
||||
pre_execution: [{ null }] # run before the repl input is run
|
||||
env_change: {
|
||||
PWD: [{|before, after| null }] # run if the PWD environment is different since the last repl input
|
||||
}
|
||||
display_output: "if (term size).columns >= 100 { table -e } else { table }" # run to display the output of a pipeline
|
||||
command_not_found: { null } # return an error message when a command is not found
|
||||
}
|
||||
|
||||
menus: [
|
||||
# Configuration for default nushell menus
|
||||
# Note the lack of source parameter
|
||||
{
|
||||
name: completion_menu
|
||||
only_buffer_difference: false
|
||||
marker: "| "
|
||||
type: {
|
||||
layout: columnar
|
||||
columns: 4
|
||||
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
|
||||
col_padding: 2
|
||||
}
|
||||
style: {
|
||||
text: green
|
||||
selected_text: { attr: r }
|
||||
description_text: yellow
|
||||
match_text: { attr: u }
|
||||
selected_match_text: { attr: ur }
|
||||
}
|
||||
}
|
||||
{
|
||||
name: ide_completion_menu
|
||||
only_buffer_difference: false
|
||||
marker: "| "
|
||||
type: {
|
||||
layout: ide
|
||||
min_completion_width: 0,
|
||||
max_completion_width: 50,
|
||||
max_completion_height: 10, # will be limited by the available lines in the terminal
|
||||
padding: 0,
|
||||
border: true,
|
||||
cursor_offset: 0,
|
||||
description_mode: "prefer_right"
|
||||
min_description_width: 0
|
||||
max_description_width: 50
|
||||
max_description_height: 10
|
||||
description_offset: 1
|
||||
# If true, the cursor pos will be corrected, so the suggestions match up with the typed text
|
||||
#
|
||||
# C:\> str
|
||||
# str join
|
||||
# str trim
|
||||
# str split
|
||||
correct_cursor_pos: false
|
||||
}
|
||||
style: {
|
||||
text: green
|
||||
selected_text: { attr: r }
|
||||
description_text: yellow
|
||||
match_text: { attr: u }
|
||||
selected_match_text: { attr: ur }
|
||||
}
|
||||
}
|
||||
{
|
||||
name: history_menu
|
||||
only_buffer_difference: true
|
||||
marker: "? "
|
||||
type: {
|
||||
layout: list
|
||||
page_size: 10
|
||||
}
|
||||
style: {
|
||||
text: green
|
||||
selected_text: green_reverse
|
||||
description_text: yellow
|
||||
}
|
||||
}
|
||||
{
|
||||
name: help_menu
|
||||
only_buffer_difference: true
|
||||
marker: "? "
|
||||
type: {
|
||||
layout: description
|
||||
columns: 4
|
||||
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
|
||||
col_padding: 2
|
||||
selection_rows: 4
|
||||
description_rows: 10
|
||||
}
|
||||
style: {
|
||||
text: green
|
||||
selected_text: green_reverse
|
||||
description_text: yellow
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
keybindings: [
|
||||
{
|
||||
name: completion_menu
|
||||
modifier: none
|
||||
keycode: tab
|
||||
mode: [emacs vi_normal vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menu name: completion_menu }
|
||||
{ send: menunext }
|
||||
{ edit: complete }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: ide_completion_menu
|
||||
modifier: control
|
||||
keycode: char_n
|
||||
mode: [emacs vi_normal vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menu name: ide_completion_menu }
|
||||
{ send: menunext }
|
||||
{ edit: complete }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: history_menu
|
||||
modifier: control
|
||||
keycode: char_r
|
||||
mode: [emacs, vi_insert, vi_normal]
|
||||
event: { send: menu name: history_menu }
|
||||
}
|
||||
{
|
||||
name: help_menu
|
||||
modifier: none
|
||||
keycode: f1
|
||||
mode: [emacs, vi_insert, vi_normal]
|
||||
event: { send: menu name: help_menu }
|
||||
}
|
||||
{
|
||||
name: completion_previous_menu
|
||||
modifier: shift
|
||||
keycode: backtab
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: menuprevious }
|
||||
}
|
||||
{
|
||||
name: next_page_menu
|
||||
modifier: control
|
||||
keycode: char_x
|
||||
mode: emacs
|
||||
event: { send: menupagenext }
|
||||
}
|
||||
{
|
||||
name: undo_or_previous_page_menu
|
||||
modifier: control
|
||||
keycode: char_z
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: menupageprevious }
|
||||
{ edit: undo }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: escape
|
||||
modifier: none
|
||||
keycode: escape
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: esc } # NOTE: does not appear to work
|
||||
}
|
||||
{
|
||||
name: cancel_command
|
||||
modifier: control
|
||||
keycode: char_c
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: ctrlc }
|
||||
}
|
||||
{
|
||||
name: quit_shell
|
||||
modifier: control
|
||||
keycode: char_d
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: ctrld }
|
||||
}
|
||||
{
|
||||
name: clear_screen
|
||||
modifier: control
|
||||
keycode: char_l
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: clearscreen }
|
||||
}
|
||||
{
|
||||
name: search_history
|
||||
modifier: control
|
||||
keycode: char_q
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: searchhistory }
|
||||
}
|
||||
{
|
||||
name: open_command_editor
|
||||
modifier: control
|
||||
keycode: char_o
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { send: openeditor }
|
||||
}
|
||||
{
|
||||
name: move_up
|
||||
modifier: none
|
||||
keycode: up
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menuup }
|
||||
{ send: up }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_down
|
||||
modifier: none
|
||||
keycode: down
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menudown }
|
||||
{ send: down }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_left
|
||||
modifier: none
|
||||
keycode: left
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menuleft }
|
||||
{ send: left }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_right_or_take_history_hint
|
||||
modifier: none
|
||||
keycode: right
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintcomplete }
|
||||
{ send: menuright }
|
||||
{ send: right }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_one_word_left
|
||||
modifier: control
|
||||
keycode: left
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { edit: movewordleft }
|
||||
}
|
||||
{
|
||||
name: move_one_word_right_or_take_history_hint
|
||||
modifier: control
|
||||
keycode: right
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintwordcomplete }
|
||||
{ edit: movewordright }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_to_line_start
|
||||
modifier: none
|
||||
keycode: home
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { edit: movetolinestart }
|
||||
}
|
||||
{
|
||||
name: move_to_line_start
|
||||
modifier: control
|
||||
keycode: char_a
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { edit: movetolinestart }
|
||||
}
|
||||
{
|
||||
name: move_to_line_end_or_take_history_hint
|
||||
modifier: none
|
||||
keycode: end
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintcomplete }
|
||||
{ edit: movetolineend }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_to_line_end_or_take_history_hint
|
||||
modifier: control
|
||||
keycode: char_e
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintcomplete }
|
||||
{ edit: movetolineend }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_to_line_start
|
||||
modifier: control
|
||||
keycode: home
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { edit: movetolinestart }
|
||||
}
|
||||
{
|
||||
name: move_to_line_end
|
||||
modifier: control
|
||||
keycode: end
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: { edit: movetolineend }
|
||||
}
|
||||
{
|
||||
name: move_up
|
||||
modifier: control
|
||||
keycode: char_p
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menuup }
|
||||
{ send: up }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_down
|
||||
modifier: control
|
||||
keycode: char_t
|
||||
mode: [emacs, vi_normal, vi_insert]
|
||||
event: {
|
||||
until: [
|
||||
{ send: menudown }
|
||||
{ send: down }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: delete_one_character_backward
|
||||
modifier: none
|
||||
keycode: backspace
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: backspace }
|
||||
}
|
||||
{
|
||||
name: delete_one_word_backward
|
||||
modifier: control
|
||||
keycode: backspace
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: backspaceword }
|
||||
}
|
||||
{
|
||||
name: delete_one_character_forward
|
||||
modifier: none
|
||||
keycode: delete
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: delete }
|
||||
}
|
||||
{
|
||||
name: delete_one_character_forward
|
||||
modifier: control
|
||||
keycode: delete
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: delete }
|
||||
}
|
||||
{
|
||||
name: delete_one_character_backward
|
||||
modifier: control
|
||||
keycode: char_h
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: backspace }
|
||||
}
|
||||
{
|
||||
name: delete_one_word_backward
|
||||
modifier: control
|
||||
keycode: char_w
|
||||
mode: [emacs, vi_insert]
|
||||
event: { edit: backspaceword }
|
||||
}
|
||||
{
|
||||
name: move_left
|
||||
modifier: none
|
||||
keycode: backspace
|
||||
mode: vi_normal
|
||||
event: { edit: moveleft }
|
||||
}
|
||||
{
|
||||
name: newline_or_run_command
|
||||
modifier: none
|
||||
keycode: enter
|
||||
mode: emacs
|
||||
event: { send: enter }
|
||||
}
|
||||
{
|
||||
name: move_left
|
||||
modifier: control
|
||||
keycode: char_b
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: menuleft }
|
||||
{ send: left }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_right_or_take_history_hint
|
||||
modifier: control
|
||||
keycode: char_f
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintcomplete }
|
||||
{ send: menuright }
|
||||
{ send: right }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: redo_change
|
||||
modifier: control
|
||||
keycode: char_g
|
||||
mode: emacs
|
||||
event: { edit: redo }
|
||||
}
|
||||
{
|
||||
name: undo_change
|
||||
modifier: control
|
||||
keycode: char_z
|
||||
mode: emacs
|
||||
event: { edit: undo }
|
||||
}
|
||||
{
|
||||
name: paste_before
|
||||
modifier: control
|
||||
keycode: char_y
|
||||
mode: emacs
|
||||
event: { edit: pastecutbufferbefore }
|
||||
}
|
||||
{
|
||||
name: cut_word_left
|
||||
modifier: control
|
||||
keycode: char_w
|
||||
mode: emacs
|
||||
event: { edit: cutwordleft }
|
||||
}
|
||||
{
|
||||
name: cut_line_to_end
|
||||
modifier: control
|
||||
keycode: char_k
|
||||
mode: emacs
|
||||
event: { edit: cuttoend }
|
||||
}
|
||||
{
|
||||
name: cut_line_from_start
|
||||
modifier: control
|
||||
keycode: char_u
|
||||
mode: emacs
|
||||
event: { edit: cutfromstart }
|
||||
}
|
||||
{
|
||||
name: swap_graphemes
|
||||
modifier: control
|
||||
keycode: char_t
|
||||
mode: emacs
|
||||
event: { edit: swapgraphemes }
|
||||
}
|
||||
{
|
||||
name: move_one_word_left
|
||||
modifier: alt
|
||||
keycode: left
|
||||
mode: emacs
|
||||
event: { edit: movewordleft }
|
||||
}
|
||||
{
|
||||
name: move_one_word_right_or_take_history_hint
|
||||
modifier: alt
|
||||
keycode: right
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintwordcomplete }
|
||||
{ edit: movewordright }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: move_one_word_left
|
||||
modifier: alt
|
||||
keycode: char_b
|
||||
mode: emacs
|
||||
event: { edit: movewordleft }
|
||||
}
|
||||
{
|
||||
name: move_one_word_right_or_take_history_hint
|
||||
modifier: alt
|
||||
keycode: char_f
|
||||
mode: emacs
|
||||
event: {
|
||||
until: [
|
||||
{ send: historyhintwordcomplete }
|
||||
{ edit: movewordright }
|
||||
]
|
||||
}
|
||||
}
|
||||
{
|
||||
name: delete_one_word_forward
|
||||
modifier: alt
|
||||
keycode: delete
|
||||
mode: emacs
|
||||
event: { edit: deleteword }
|
||||
}
|
||||
{
|
||||
name: delete_one_word_backward
|
||||
modifier: alt
|
||||
keycode: backspace
|
||||
mode: emacs
|
||||
event: { edit: backspaceword }
|
||||
}
|
||||
{
|
||||
name: delete_one_word_backward
|
||||
modifier: alt
|
||||
keycode: char_m
|
||||
mode: emacs
|
||||
event: { edit: backspaceword }
|
||||
}
|
||||
{
|
||||
name: cut_word_to_right
|
||||
modifier: alt
|
||||
keycode: char_d
|
||||
mode: emacs
|
||||
event: { edit: cutwordright }
|
||||
}
|
||||
{
|
||||
name: upper_case_word
|
||||
modifier: alt
|
||||
keycode: char_u
|
||||
mode: emacs
|
||||
event: { edit: uppercaseword }
|
||||
}
|
||||
{
|
||||
name: lower_case_word
|
||||
modifier: alt
|
||||
keycode: char_l
|
||||
mode: emacs
|
||||
event: { edit: lowercaseword }
|
||||
}
|
||||
{
|
||||
name: capitalize_char
|
||||
modifier: alt
|
||||
keycode: char_c
|
||||
mode: emacs
|
||||
event: { edit: capitalizechar }
|
||||
}
|
||||
{
|
||||
name: copy_selection
|
||||
modifier: control_shift
|
||||
keycode: char_c
|
||||
mode: emacs
|
||||
event: { edit: copyselection }
|
||||
}
|
||||
{
|
||||
name: cut_selection
|
||||
modifier: control_shift
|
||||
keycode: char_x
|
||||
mode: emacs
|
||||
event: { edit: cutselection }
|
||||
}
|
||||
{
|
||||
name: select_all
|
||||
modifier: control_shift
|
||||
keycode: char_a
|
||||
mode: emacs
|
||||
event: { edit: selectall }
|
||||
}
|
||||
{
|
||||
name: paste
|
||||
modifier: control_shift
|
||||
keycode: char_v
|
||||
mode: emacs
|
||||
event: { edit: pastecutbufferbefore }
|
||||
}
|
||||
]
|
||||
}
|
||||
use direnv.nu
|
||||
use starship.nu
|
||||
source zoxide.nu
|
||||
source yazi.nu
|
||||
56
private_dot_config/nushell/env.nu
Normal file
56
private_dot_config/nushell/env.nu
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
# Nushell Environment Config File
|
||||
#
|
||||
# version = "0.91.0"
|
||||
#
|
||||
|
||||
# Use nushell functions to define your right and left prompt
|
||||
# $env.PROMPT_COMMAND = {|| create_left_prompt }
|
||||
# FIXME: This default is not implemented in rust code as of 2023-09-08.
|
||||
# $env.PROMPT_COMMAND_RIGHT = {|| create_right_prompt }
|
||||
|
||||
# The prompt indicators are environmental variables that represent
|
||||
# the state of the prompt
|
||||
# $env.PROMPT_INDICATOR = {|| "> " }
|
||||
$env.PROMPT_INDICATOR_VI_INSERT = {|| ": " }
|
||||
$env.PROMPT_INDICATOR_VI_NORMAL = {|| "> " }
|
||||
$env.PROMPT_MULTILINE_INDICATOR = {|| "::: " }
|
||||
|
||||
# Specifies how environment variables are:
|
||||
# - converted from a string to a value on Nushell startup (from_string)
|
||||
# - converted from a value back to a string when running external commands (to_string)
|
||||
# Note: The conversions happen *after* config.nu is loaded
|
||||
$env.ENV_CONVERSIONS = {
|
||||
"PATH": {
|
||||
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
|
||||
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
|
||||
}
|
||||
"Path": {
|
||||
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
|
||||
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
|
||||
}
|
||||
}
|
||||
|
||||
# Directories to search for scripts when calling source or use
|
||||
# The default for this is $nu.default-config-dir/scripts
|
||||
$env.NU_LIB_DIRS = [
|
||||
($nu.default-config-dir | path join 'scripts') # add <nushell-config-dir>/scripts
|
||||
]
|
||||
# Directories to search for plugin binaries when calling register
|
||||
# The default for this is $nu.default-config-dir/plugins
|
||||
$env.NU_PLUGIN_DIRS = [
|
||||
($nu.default-config-dir | path join 'plugins') # add <nushell-config-dir>/plugins
|
||||
]
|
||||
|
||||
# To add entries to PATH (on Windows you might use Path), you can use the following pattern:
|
||||
# $env.PATH = ($env.PATH | split row (char esep) | prepend '/some/path')
|
||||
# An alternate way to add entries to $env.PATH is to use the custom command `path add`
|
||||
# which is built into the nushell stdlib:
|
||||
# use std "path add"
|
||||
# $env.PATH = ($env.PATH | split row (char esep))
|
||||
# path add /some/path
|
||||
# path add ($env.CARGO_HOME | path join "bin")
|
||||
# path add ($env.HOME | path join ".local" "bin")
|
||||
# $env.PATH = ($env.PATH | uniq)
|
||||
|
||||
# To load from a custom file you can use:
|
||||
# source ($nu.default-config-dir | path join 'custom.nu')
|
||||
17
private_dot_config/nushell/scripts/direnv.nu
Normal file
17
private_dot_config/nushell/scripts/direnv.nu
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
export-env {
|
||||
$env.config = ( $env.config | upsert hooks.env_change.PWD { |config|
|
||||
let o = ($config | get -i hooks.env_change.PWD)
|
||||
let val = { ||
|
||||
if (which direnv | is-empty) {
|
||||
return
|
||||
}
|
||||
|
||||
direnv export json | from json | default {} | load-env
|
||||
}
|
||||
if $o == null {
|
||||
$val
|
||||
} else {
|
||||
$o | append $val
|
||||
}
|
||||
})
|
||||
}
|
||||
38
private_dot_config/nushell/scripts/starship.nu
Normal file
38
private_dot_config/nushell/scripts/starship.nu
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
# this file is both a valid
|
||||
# - overlay which can be loaded with `overlay use starship.nu`
|
||||
# - module which can be used with `use starship.nu`
|
||||
# - script which can be used with `source starship.nu`
|
||||
export-env { $env.STARSHIP_SHELL = "nu"; load-env {
|
||||
STARSHIP_SESSION_KEY: (random chars -l 16)
|
||||
PROMPT_MULTILINE_INDICATOR: (
|
||||
^starship prompt --continuation
|
||||
)
|
||||
|
||||
# Does not play well with default character module.
|
||||
# TODO: Also Use starship vi mode indicators?
|
||||
PROMPT_INDICATOR: ""
|
||||
|
||||
PROMPT_COMMAND: {||
|
||||
# jobs are not supported
|
||||
(
|
||||
^starship prompt
|
||||
--cmd-duration $env.CMD_DURATION_MS
|
||||
$"--status=($env.LAST_EXIT_CODE)"
|
||||
--terminal-width (term size).columns
|
||||
)
|
||||
}
|
||||
|
||||
config: ($env.config? | default {} | merge {
|
||||
render_right_prompt_on_last_line: true
|
||||
})
|
||||
|
||||
PROMPT_COMMAND_RIGHT: {||
|
||||
(
|
||||
^starship prompt
|
||||
--right
|
||||
--cmd-duration $env.CMD_DURATION_MS
|
||||
$"--status=($env.LAST_EXIT_CODE)"
|
||||
--terminal-width (term size).columns
|
||||
)
|
||||
}
|
||||
}}
|
||||
9
private_dot_config/nushell/scripts/yazi.nu
Normal file
9
private_dot_config/nushell/scripts/yazi.nu
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
def --env yy [...args] {
|
||||
let tmp = (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi ...$args --cwd-file $tmp
|
||||
let cwd = (open $tmp)
|
||||
if $cwd != "" and $cwd != $env.PWD {
|
||||
cd $cwd
|
||||
}
|
||||
rm -fp $tmp
|
||||
}
|
||||
60
private_dot_config/nushell/scripts/zoxide.nu
Normal file
60
private_dot_config/nushell/scripts/zoxide.nu
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
# Code generated by zoxide. DO NOT EDIT.
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# Hook configuration for zoxide.
|
||||
#
|
||||
|
||||
# Initialize hook to add new entries to the database.
|
||||
if (not ($env | default false __zoxide_hooked | get __zoxide_hooked)) {
|
||||
$env.__zoxide_hooked = true
|
||||
$env.config = ($env | default {} config).config
|
||||
$env.config = ($env.config | default {} hooks)
|
||||
$env.config = ($env.config | update hooks ($env.config.hooks | default {} env_change))
|
||||
$env.config = ($env.config | update hooks.env_change ($env.config.hooks.env_change | default [] PWD))
|
||||
$env.config = ($env.config | update hooks.env_change.PWD ($env.config.hooks.env_change.PWD | append {|_, dir|
|
||||
zoxide add -- $dir
|
||||
}))
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# When using zoxide with --no-cmd, alias these internal functions as desired.
|
||||
#
|
||||
|
||||
# Jump to a directory using only keywords.
|
||||
def --env __zoxide_z [...rest:string] {
|
||||
let arg0 = ($rest | append '~').0
|
||||
let path = if (($rest | length) <= 1) and ($arg0 == '-' or ($arg0 | path expand | path type) == dir) {
|
||||
$arg0
|
||||
} else {
|
||||
(zoxide query --exclude $env.PWD -- ...$rest | str trim -r -c "\n")
|
||||
}
|
||||
cd $path
|
||||
}
|
||||
|
||||
# Jump to a directory using interactive search.
|
||||
def --env __zoxide_zi [...rest:string] {
|
||||
cd $'(zoxide query --interactive -- ...$rest | str trim -r -c "\n")'
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# Commands for zoxide. Disable these using --no-cmd.
|
||||
#
|
||||
|
||||
alias z = __zoxide_z
|
||||
alias zi = __zoxide_zi
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# Add this to your env file (find it by running `$nu.env-path` in Nushell):
|
||||
#
|
||||
# zoxide init nushell | save -f ~/.zoxide.nu
|
||||
#
|
||||
# Now, add this to the end of your config file (find it by running
|
||||
# `$nu.config-path` in Nushell):
|
||||
#
|
||||
# source ~/.zoxide.nu
|
||||
#
|
||||
# Note: zoxide only supports Nushell v0.89.0+.
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
set runtimepath^=~/.vim runtimepath+=~/.vim/after
|
||||
let &packpath=&runtimepath
|
||||
source ~/.vimrc
|
||||
37
private_dot_config/paru/executable_paru.conf
Normal file
37
private_dot_config/paru/executable_paru.conf
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
#
|
||||
# $PARU_CONF
|
||||
# /etc/paru.conf
|
||||
# ~/.config/paru/paru.conf
|
||||
#
|
||||
# See the paru.conf(5) manpage for options
|
||||
|
||||
#
|
||||
# GENERAL OPTIONS
|
||||
#
|
||||
[options]
|
||||
PgpFetch
|
||||
Devel
|
||||
Provides
|
||||
DevelSuffixes = -git -cvs -svn -bzr -darcs -always
|
||||
#BottomUp
|
||||
#RemoveMake
|
||||
SudoLoop
|
||||
#UseAsk
|
||||
#CombinedUpgrade
|
||||
#CleanAfter
|
||||
#UpgradeMenu
|
||||
#NewsOnUpgrade
|
||||
SkipReview
|
||||
|
||||
#LocalRepo
|
||||
#Chroot
|
||||
#Sign
|
||||
#SignDb
|
||||
|
||||
#
|
||||
# Binary OPTIONS
|
||||
#
|
||||
#[bin]
|
||||
#FileManager = vifm
|
||||
#MFlags = --skippgpcheck
|
||||
#Sudo = doas
|
||||
18
private_dot_config/private_gtk-2.0/gtkrc
Normal file
18
private_dot_config/private_gtk-2.0/gtkrc
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||
|
||||
include "/home/mira/.gtkrc-2.0.mine"
|
||||
gtk-theme-name="adw-gtk3-dark"
|
||||
gtk-icon-theme-name="Yaru-blue-dark"
|
||||
gtk-font-name="Atkinson Hyperlegible 11"
|
||||
gtk-cursor-theme-name="DMZ-Black"
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=1
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=0
|
||||
gtk-enable-input-feedback-sounds=0
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle="hintfull"
|
||||
78
private_dot_config/private_gtk-3.0/gtk.css
Normal file
78
private_dot_config/private_gtk-3.0/gtk.css
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
@define-color accent_color #5078a4;
|
||||
@define-color accent_bg_color #0b5393;
|
||||
@define-color accent_fg_color #ebf6ff;
|
||||
@define-color destructive_color #f5a9b8;
|
||||
@define-color destructive_bg_color #a04558;
|
||||
@define-color destructive_fg_color #ebf6ff;
|
||||
@define-color success_color #98db95;
|
||||
@define-color success_bg_color #6fa47e;
|
||||
@define-color success_fg_color #ebf6ff;
|
||||
@define-color warning_color #ffe70a;
|
||||
@define-color warning_bg_color #ccb700;
|
||||
@define-color warning_fg_color rgba(1,2,6,0.8);
|
||||
@define-color error_color #f5a9b8;
|
||||
@define-color error_bg_color #a04558;
|
||||
@define-color error_fg_color #ebf6ff;
|
||||
@define-color window_bg_color #1e1b30;
|
||||
@define-color window_fg_color #ebf6ff;
|
||||
@define-color view_bg_color #010206;
|
||||
@define-color view_fg_color #ebf6ff;
|
||||
@define-color headerbar_bg_color #010206;
|
||||
@define-color headerbar_fg_color #ebf6ff;
|
||||
@define-color headerbar_border_color #ebf6ff;
|
||||
@define-color headerbar_backdrop_color @window_bg_color;
|
||||
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color card_bg_color rgba(255, 255, 255, 0.08);
|
||||
@define-color card_fg_color #ebf6ff;
|
||||
@define-color card_shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color dialog_bg_color #010206;
|
||||
@define-color dialog_fg_color #ebf6ff;
|
||||
@define-color popover_bg_color #010206;
|
||||
@define-color popover_fg_color #ebf6ff;
|
||||
@define-color shade_color rgba(0, 0, 0, 0.36);
|
||||
@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5);
|
||||
@define-color blue_1 #99c1f1;
|
||||
@define-color blue_2 #62a0ea;
|
||||
@define-color blue_3 #3584e4;
|
||||
@define-color blue_4 #1c71d8;
|
||||
@define-color blue_5 #1a5fb4;
|
||||
@define-color green_1 #8ff0a4;
|
||||
@define-color green_2 #57e389;
|
||||
@define-color green_3 #33d17a;
|
||||
@define-color green_4 #2ec27e;
|
||||
@define-color green_5 #26a269;
|
||||
@define-color yellow_1 #f9f06b;
|
||||
@define-color yellow_2 #f8e45c;
|
||||
@define-color yellow_3 #f6d32d;
|
||||
@define-color yellow_4 #f5c211;
|
||||
@define-color yellow_5 #e5a50a;
|
||||
@define-color orange_1 #ffbe6f;
|
||||
@define-color orange_2 #ffa348;
|
||||
@define-color orange_3 #ff7800;
|
||||
@define-color orange_4 #e66100;
|
||||
@define-color orange_5 #c64600;
|
||||
@define-color red_1 #f66151;
|
||||
@define-color red_2 #ed333b;
|
||||
@define-color red_3 #e01b24;
|
||||
@define-color red_4 #c01c28;
|
||||
@define-color red_5 #a51d2d;
|
||||
@define-color purple_1 #dc8add;
|
||||
@define-color purple_2 #c061cb;
|
||||
@define-color purple_3 #9141ac;
|
||||
@define-color purple_4 #813d9c;
|
||||
@define-color purple_5 #613583;
|
||||
@define-color brown_1 #cdab8f;
|
||||
@define-color brown_2 #b5835a;
|
||||
@define-color brown_3 #986a44;
|
||||
@define-color brown_4 #865e3c;
|
||||
@define-color brown_5 #63452c;
|
||||
@define-color light_1 #ffffff;
|
||||
@define-color light_2 #f6f5f4;
|
||||
@define-color light_3 #deddda;
|
||||
@define-color light_4 #c0bfbc;
|
||||
@define-color light_5 #9a9996;
|
||||
@define-color dark_1 #77767b;
|
||||
@define-color dark_2 #5e5c64;
|
||||
@define-color dark_3 #3d3846;
|
||||
@define-color dark_4 #241f31;
|
||||
@define-color dark_5 #000000;
|
||||
17
private_dot_config/private_gtk-3.0/settings.ini
Normal file
17
private_dot_config/private_gtk-3.0/settings.ini
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
[Settings]
|
||||
gtk-theme-name=adw-gtk3-dark
|
||||
gtk-icon-theme-name=Adwaita
|
||||
gtk-font-name=Berkeley Mono 12
|
||||
gtk-cursor-theme-name=DMZ-Black
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
gtk-button-images=1
|
||||
gtk-menu-images=1
|
||||
gtk-enable-event-sounds=1
|
||||
gtk-enable-input-feedback-sounds=1
|
||||
gtk-xft-antialias=1
|
||||
gtk-xft-hinting=1
|
||||
gtk-xft-hintstyle=hintmedium
|
||||
gtk-xft-rgba=vrgb
|
||||
gtk-application-prefer-dark-theme=1
|
||||
35
private_dot_config/private_mimeapps.list
Normal file
35
private_dot_config/private_mimeapps.list
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
[Added Associations]
|
||||
x-scheme-handler/settings=io.elementary.switchboard.desktop;
|
||||
application/x-xpinstall=org.gnome.FileRoller.desktop;
|
||||
application/json=nvim.desktop;
|
||||
x-scheme-handler/http=userapp-Firefox-KMQIN2.desktop;
|
||||
x-scheme-handler/https=userapp-Firefox-KMQIN2.desktop;
|
||||
text/html=userapp-Firefox-KMQIN2.desktop;
|
||||
application/x-bittorrent=transmission-gtk.desktop;org.gnome.gedit.desktop;nvim.desktop;
|
||||
video/mp4=vlc.desktop;org.gnome.Totem.desktop;
|
||||
application/x-x509-ca-cert=org.gnome.gedit.desktop;
|
||||
application/pgp-keys=nvim.desktop;
|
||||
image/jpeg=qimgv.desktop;org.gnome.Shotwell-Viewer.desktop;sxiv.desktop;org.gimp.GIMP.desktop;org.gnome.eog.desktop;
|
||||
image/webp=org.gimp.GIMP.desktop;
|
||||
audio/mpeg=vlc.desktop;
|
||||
image/x-canon-cr2=org.gnome.Shotwell-Viewer.desktop;
|
||||
image/svg+xml=org.inkscape.Inkscape.desktop;
|
||||
|
||||
[Default Applications]
|
||||
x-scheme-handler/settings=io.elementary.switchboard.desktop
|
||||
x-scheme-handler/http=userapp-Firefox-KMQIN2.desktop
|
||||
x-scheme-handler/https=userapp-Firefox-KMQIN2.desktop
|
||||
x-scheme-handler/chrome=userapp-Firefox-KMQIN2.desktop
|
||||
text/html=userapp-Firefox-KMQIN2.desktop
|
||||
application/x-extension-htm=userapp-Firefox-KMQIN2.desktop
|
||||
application/x-extension-html=userapp-Firefox-KMQIN2.desktop
|
||||
application/x-extension-shtml=userapp-Firefox-KMQIN2.desktop
|
||||
application/xhtml+xml=userapp-Firefox-KMQIN2.desktop
|
||||
application/x-extension-xhtml=userapp-Firefox-KMQIN2.desktop
|
||||
application/x-extension-xht=userapp-Firefox-KMQIN2.desktop
|
||||
x-scheme-handler/about=firefox_firefox.desktop
|
||||
x-scheme-handler/unknown=firefox_firefox.desktop
|
||||
x-scheme-handler/prusaslicer=PrusaSlicerURLProtocol.desktop
|
||||
application/pdf=org.pwmt.zathura.desktop
|
||||
font/ttf=org.gnome.font-viewer.desktop
|
||||
font/otf=org.gnome.font-viewer.desktop
|
||||
15
private_dot_config/private_user-dirs.dirs
Normal file
15
private_dot_config/private_user-dirs.dirs
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# This file is written by xdg-user-dirs-update
|
||||
# If you want to change or add directories, just edit the line you're
|
||||
# interested in. All local changes will be retained on the next run.
|
||||
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
|
||||
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
|
||||
# absolute path. No other format is supported.
|
||||
#
|
||||
XDG_DESKTOP_DIR="$HOME/"
|
||||
XDG_DOWNLOAD_DIR="$HOME/Downloads"
|
||||
XDG_TEMPLATES_DIR="$HOME/"
|
||||
XDG_PUBLICSHARE_DIR="$HOME/"
|
||||
XDG_DOCUMENTS_DIR="$HOME/"
|
||||
XDG_MUSIC_DIR="$HOME/Music"
|
||||
XDG_PICTURES_DIR="$HOME/Pictures"
|
||||
XDG_VIDEOS_DIR="$HOME/"
|
||||
156
private_dot_config/rofi/config.rasi
Normal file
156
private_dot_config/rofi/config.rasi
Normal file
|
|
@ -0,0 +1,156 @@
|
|||
configuration {
|
||||
modes: "window,drun,run,ssh,combi";
|
||||
/*font: "FOT-UDKakugo_Large Pr6N semibold 12";*/
|
||||
font: "TX-02 bold 12";
|
||||
/* location: 0;*/
|
||||
/* yoffset: 0;*/
|
||||
/* xoffset: 0;*/
|
||||
/* fixed-num-lines: true;*/
|
||||
/* show-icons: false;*/
|
||||
/* terminal: "rofi-sensible-terminal";*/
|
||||
/* ssh-client: "ssh";*/
|
||||
/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
|
||||
/* run-command: "{cmd}";*/
|
||||
/* run-list-command: "";*/
|
||||
/* run-shell-command: "{terminal} -e {cmd}";*/
|
||||
/* window-command: "wmctrl -i -R {window}";*/
|
||||
/* window-match-fields: "all";*/
|
||||
/* icon-theme: ;*/
|
||||
/* drun-match-fields: "name,generic,exec,categories,keywords";*/
|
||||
/* drun-categories: ;*/
|
||||
/* drun-show-actions: false;*/
|
||||
/* drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
|
||||
/* drun-url-launcher: "xdg-open";*/
|
||||
/* disable-history: false;*/
|
||||
/* ignored-prefixes: "";*/
|
||||
/* sort: false;*/
|
||||
/* sorting-method: "normal";*/
|
||||
/* case-sensitive: false;*/
|
||||
/* cycle: true;*/
|
||||
/* sidebar-mode: false;*/
|
||||
/* hover-select: false;*/
|
||||
/* eh: 1;*/
|
||||
/* auto-select: false;*/
|
||||
/* parse-hosts: false;*/
|
||||
/* parse-known-hosts: true;*/
|
||||
/* combi-modes: "window,run";*/
|
||||
/* matching: "normal";*/
|
||||
/* tokenize: true;*/
|
||||
/* m: "-5";*/
|
||||
/* filter: ;*/
|
||||
/* dpi: -1;*/
|
||||
/* threads: 0;*/
|
||||
/* scroll-method: 0;*/
|
||||
/* window-format: "{w} {c} {t}";*/
|
||||
/* click-to-exit: true;*/
|
||||
/* max-history-size: 25;*/
|
||||
/* combi-hide-mode-prefix: false;*/
|
||||
/* combi-display-format: "{mode} {text}";*/
|
||||
/* matching-negate-char: '-' /* unsupported */;*/
|
||||
/* cache-dir: ;*/
|
||||
/* window-thumbnail: false;*/
|
||||
/* drun-use-desktop-cache: false;*/
|
||||
/* drun-reload-desktop-cache: false;*/
|
||||
/* normalize-match: false;*/
|
||||
steal-focus: true;
|
||||
/* application-fallback-icon: ;*/
|
||||
/* refilter-timeout-limit: 300;*/
|
||||
/* xserver-i300-workaround: false;*/
|
||||
/* completer-mode: "recursivebrowser";*/
|
||||
/* pid: "/run/user/1000/rofi.pid";*/
|
||||
/* display-window: ;*/
|
||||
/* display-run: ;*/
|
||||
/* display-ssh: ;*/
|
||||
/* display-drun: ;*/
|
||||
/* display-combi: ;*/
|
||||
/* display-keys: ;*/
|
||||
/* display-filebrowser: ;*/
|
||||
/* display-recursivebrowser: ;*/
|
||||
/* kb-primary-paste: "Control+V,Shift+Insert";*/
|
||||
/* kb-secondary-paste: "Control+v,Insert";*/
|
||||
/* kb-secondary-copy: "Control+c";*/
|
||||
/* kb-clear-line: "Control+w";*/
|
||||
/* kb-move-front: "Control+a";*/
|
||||
/* kb-move-end: "Control+e";*/
|
||||
/* kb-move-word-back: "Alt+b,Control+Left";*/
|
||||
/* kb-move-word-forward: "Alt+f,Control+Right";*/
|
||||
/* kb-move-char-back: "Left,Control+b";*/
|
||||
/* kb-move-char-forward: "Right,Control+f";*/
|
||||
/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
|
||||
/* kb-remove-word-forward: "Control+Alt+d";*/
|
||||
/* kb-remove-char-forward: "Delete,Control+d";*/
|
||||
/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
|
||||
/* kb-remove-to-eol: "Control+k";*/
|
||||
/* kb-remove-to-sol: "Control+u";*/
|
||||
/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
|
||||
/* kb-accept-custom: "Control+Return";*/
|
||||
/* kb-accept-custom-alt: "Control+Shift+Return";*/
|
||||
/* kb-accept-alt: "Shift+Return";*/
|
||||
/* kb-delete-entry: "Shift+Delete";*/
|
||||
/* kb-mode-next: "Shift+Right,Control+Tab";*/
|
||||
/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
|
||||
/* kb-mode-complete: "Control+l";*/
|
||||
/* kb-row-left: "Control+Page_Up";*/
|
||||
/* kb-row-right: "Control+Page_Down";*/
|
||||
/* kb-row-up: "Up,Control+p";*/
|
||||
/* kb-row-down: "Down,Control+n";*/
|
||||
/* kb-row-tab: "";*/
|
||||
/* kb-element-next: "Tab";*/
|
||||
/* kb-element-prev: "ISO_Left_Tab";*/
|
||||
/* kb-page-prev: "Page_Up";*/
|
||||
/* kb-page-next: "Page_Down";*/
|
||||
/* kb-row-first: "Home,KP_Home";*/
|
||||
/* kb-row-last: "End,KP_End";*/
|
||||
/* kb-row-select: "Control+space";*/
|
||||
/* kb-screenshot: "Alt+S";*/
|
||||
/* kb-ellipsize: "Alt+period";*/
|
||||
/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
|
||||
/* kb-toggle-sort: "Alt+grave";*/
|
||||
/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
|
||||
/* kb-custom-1: "Alt+1";*/
|
||||
/* kb-custom-2: "Alt+2";*/
|
||||
/* kb-custom-3: "Alt+3";*/
|
||||
/* kb-custom-4: "Alt+4";*/
|
||||
/* kb-custom-5: "Alt+5";*/
|
||||
/* kb-custom-6: "Alt+6";*/
|
||||
/* kb-custom-7: "Alt+7";*/
|
||||
/* kb-custom-8: "Alt+8";*/
|
||||
/* kb-custom-9: "Alt+9";*/
|
||||
/* kb-custom-10: "Alt+0";*/
|
||||
/* kb-custom-11: "Alt+exclam";*/
|
||||
/* kb-custom-12: "Alt+at";*/
|
||||
/* kb-custom-13: "Alt+numbersign";*/
|
||||
/* kb-custom-14: "Alt+dollar";*/
|
||||
/* kb-custom-15: "Alt+percent";*/
|
||||
/* kb-custom-16: "Alt+dead_circumflex";*/
|
||||
/* kb-custom-17: "Alt+ampersand";*/
|
||||
/* kb-custom-18: "Alt+asterisk";*/
|
||||
/* kb-custom-19: "Alt+parenleft";*/
|
||||
/* kb-select-1: "Super+1";*/
|
||||
/* kb-select-2: "Super+2";*/
|
||||
/* kb-select-3: "Super+3";*/
|
||||
/* kb-select-4: "Super+4";*/
|
||||
/* kb-select-5: "Super+5";*/
|
||||
/* kb-select-6: "Super+6";*/
|
||||
/* kb-select-7: "Super+7";*/
|
||||
/* kb-select-8: "Super+8";*/
|
||||
/* kb-select-9: "Super+9";*/
|
||||
/* kb-select-10: "Super+0";*/
|
||||
/* kb-entry-history-up: "Control+Up";*/
|
||||
/* kb-entry-history-down: "Control+Down";*/
|
||||
/* ml-row-left: "ScrollLeft";*/
|
||||
/* ml-row-right: "ScrollRight";*/
|
||||
/* ml-row-up: "ScrollUp";*/
|
||||
/* ml-row-down: "ScrollDown";*/
|
||||
/* me-select-entry: "MousePrimary";*/
|
||||
/* me-accept-entry: "MouseDPrimary";*/
|
||||
/* me-accept-custom: "Control+MouseDPrimary";*/
|
||||
timeout {
|
||||
action: "kb-cancel";
|
||||
delay: 0;
|
||||
}
|
||||
filebrowser {
|
||||
directories-first: true;
|
||||
sorting-method: "name";
|
||||
}
|
||||
}
|
||||
174
private_dot_config/rofi/lunar-witch.rasi
Normal file
174
private_dot_config/rofi/lunar-witch.rasi
Normal file
|
|
@ -0,0 +1,174 @@
|
|||
/**
|
||||
* rofi -dump-theme output.
|
||||
* Rofi version: 1.7.5+wayland2-dev
|
||||
**/
|
||||
* {
|
||||
red: #A04558;
|
||||
blue: #334773;
|
||||
background: #1E1B30;
|
||||
lightbg: #2A2644;
|
||||
foreground: #BFBFC0;
|
||||
lightfg: #BFBFC0;
|
||||
spacing: 1;
|
||||
selected-active-foreground: var(background);
|
||||
separatorcolor: var(foreground);
|
||||
urgent-foreground: var(red);
|
||||
alternate-urgent-background: var(lightbg);
|
||||
background-color: transparent;
|
||||
border-color: var(foreground);
|
||||
normal-background: var(background);
|
||||
selected-urgent-background: var(red);
|
||||
alternate-active-background: var(lightbg);
|
||||
alternate-normal-foreground: var(foreground);
|
||||
urgent-background: var(background);
|
||||
selected-normal-foreground: var(lightbg);
|
||||
active-foreground: var(blue);
|
||||
selected-active-background: var(blue);
|
||||
active-background: var(background);
|
||||
selected-normal-background: var(lightfg);
|
||||
alternate-normal-background: var(lightbg);
|
||||
selected-urgent-foreground: var(background);
|
||||
normal-foreground: var(foreground);
|
||||
alternate-urgent-foreground: var(red);
|
||||
alternate-active-foreground: var(blue);
|
||||
}
|
||||
element {
|
||||
padding: 1px ;
|
||||
cursor: pointer;
|
||||
spacing: 5px ;
|
||||
border: 0;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: var(normal-background);
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
element normal.urgent {
|
||||
background-color: var(urgent-background);
|
||||
text-color: var(urgent-foreground);
|
||||
}
|
||||
element normal.active {
|
||||
background-color: var(active-background);
|
||||
text-color: var(active-foreground);
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
element selected.urgent {
|
||||
background-color: var(selected-urgent-background);
|
||||
text-color: var(selected-urgent-foreground);
|
||||
}
|
||||
element selected.active {
|
||||
background-color: var(selected-active-background);
|
||||
text-color: var(selected-active-foreground);
|
||||
}
|
||||
element alternate.normal {
|
||||
background-color: var(alternate-normal-background);
|
||||
text-color: var(alternate-normal-foreground);
|
||||
}
|
||||
element alternate.urgent {
|
||||
background-color: var(alternate-urgent-background);
|
||||
text-color: var(alternate-urgent-foreground);
|
||||
}
|
||||
element alternate.active {
|
||||
background-color: var(alternate-active-background);
|
||||
text-color: var(alternate-active-foreground);
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
cursor: inherit;
|
||||
highlight: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
size: 1.0000em ;
|
||||
cursor: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
window {
|
||||
padding: 5;
|
||||
background-color: var(background);
|
||||
border: 0;
|
||||
border-radius: 8px;
|
||||
}
|
||||
mainbox {
|
||||
padding: 0.1em;
|
||||
border: 0;
|
||||
}
|
||||
message {
|
||||
padding: 1px ;
|
||||
border-color: var(separatorcolor);
|
||||
border: 2px dash 0px 0px ;
|
||||
}
|
||||
textbox {
|
||||
text-color: var(foreground);
|
||||
}
|
||||
listview {
|
||||
padding: 2px 0px 0px ;
|
||||
scrollbar: true;
|
||||
border-color: var(separatorcolor);
|
||||
spacing: 2px ;
|
||||
fixed-height: 0;
|
||||
border: 2px solid 0px 0px ;
|
||||
}
|
||||
scrollbar {
|
||||
width: 4px ;
|
||||
padding: 0;
|
||||
handle-width: 8px ;
|
||||
border: 0;
|
||||
handle-color: var(normal-foreground);
|
||||
}
|
||||
sidebar {
|
||||
border-color: var(separatorcolor);
|
||||
border: 2px dash 0px 0px ;
|
||||
}
|
||||
button {
|
||||
cursor: pointer;
|
||||
spacing: 0;
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
button selected {
|
||||
background-color: var(selected-normal-background);
|
||||
text-color: var(selected-normal-foreground);
|
||||
}
|
||||
num-filtered-rows {
|
||||
expand: false;
|
||||
text-color: Gray;
|
||||
}
|
||||
num-rows {
|
||||
expand: false;
|
||||
text-color: Gray;
|
||||
}
|
||||
textbox-num-sep {
|
||||
expand: false;
|
||||
str: "/";
|
||||
text-color: Gray;
|
||||
}
|
||||
inputbar {
|
||||
padding: 1px ;
|
||||
spacing: 0px ;
|
||||
text-color: var(normal-foreground);
|
||||
children: [ "prompt","textbox-prompt-colon","entry","num-filtered-rows","textbox-num-sep","num-rows","case-indicator" ];
|
||||
}
|
||||
case-indicator {
|
||||
spacing: 0;
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
entry {
|
||||
text-color: var(normal-foreground);
|
||||
cursor: text;
|
||||
spacing: 0;
|
||||
placeholder-color: Gray;
|
||||
placeholder: "Type to filter";
|
||||
}
|
||||
prompt {
|
||||
spacing: 0;
|
||||
text-color: var(normal-foreground);
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
margin: 0px 0.3000em 0.0000em 0.0000em ;
|
||||
expand: false;
|
||||
str: ":";
|
||||
text-color: inherit;
|
||||
}
|
||||
|
|
@ -32,7 +32,6 @@ apply = ["defer-medium"]
|
|||
|
||||
[plugins.zsh-autosuggestions]
|
||||
github = 'zsh-users/zsh-autosuggestions'
|
||||
apply = ["defer"]
|
||||
|
||||
[plugins.bash-completions-fallback]
|
||||
github = '3v1n0/zsh-bash-completions-fallback'
|
||||
|
|
@ -40,19 +39,18 @@ apply = ["defer-more"]
|
|||
|
||||
[plugins.fzf-tab]
|
||||
github = 'Aloxaf/fzf-tab'
|
||||
apply = ["defer"]
|
||||
|
||||
[plugins.zsh-cargo-completion]
|
||||
github = 'MenkeTechnologies/zsh-cargo-completion'
|
||||
apply = ["defer"]
|
||||
# [plugins.zsh-cargo-completion]
|
||||
# github = 'MenkeTechnologies/zsh-cargo-completion'
|
||||
# apply = ["defer"]
|
||||
|
||||
[plugins.click-completion]
|
||||
github = 'click-contrib/click-completion'
|
||||
apply = ["defer"]
|
||||
|
||||
#[plugins.zsh-direnv]
|
||||
#github = 'ptavares/zsh-direnv'
|
||||
#apply = ["defer"]
|
||||
[plugins.zsh-direnv]
|
||||
github = 'ptavares/zsh-direnv'
|
||||
apply = ["defer"]
|
||||
|
||||
[plugins.undollar]
|
||||
github = 'zpm-zsh/undollar'
|
||||
|
|
@ -73,10 +71,6 @@ apply = ["defer"]
|
|||
#[plugins.aliases]
|
||||
#remote = 'https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/aliases'
|
||||
|
||||
[plugins.zsh-vim-plugin]
|
||||
github = 'nviennot/zsh-vim-plugin'
|
||||
apply = ["defer"]
|
||||
|
||||
[plugins.docker-zsh-completion]
|
||||
github = 'greymd/docker-zsh-completion'
|
||||
apply = ["defer"]
|
||||
|
|
|
|||
|
|
@ -9,12 +9,14 @@ $username\
|
|||
[](bg:bright-red fg:bright-purple)\
|
||||
$directory\
|
||||
[](fg:bright-red bg:bright-blue)\
|
||||
$git_branch\
|
||||
$git_status\
|
||||
$git_state\
|
||||
${custom.jj}\
|
||||
${git_branch}\
|
||||
${git_status}\
|
||||
${git_state}\
|
||||
[](fg:bright-blue bg:bright-cyan)\
|
||||
$c\
|
||||
$golang\
|
||||
$python\
|
||||
$gradle\
|
||||
$java\
|
||||
$nodejs\
|
||||
|
|
@ -23,6 +25,7 @@ $rust\
|
|||
$docker_context\
|
||||
[](fg:bright-green bg:bright-blue)\
|
||||
$time\
|
||||
${custom.foo}\
|
||||
[ ](fg:bright-blue)\
|
||||
"""
|
||||
|
||||
|
|
@ -61,20 +64,22 @@ CentOS = " "
|
|||
NixOS = " "
|
||||
Windows = " "
|
||||
Macos = ""
|
||||
Alpine = " "
|
||||
|
||||
[directory]
|
||||
style = "bg:bright-red fg:black"
|
||||
format = "[ $path ]($style)"
|
||||
truncation_length = 3
|
||||
truncation_symbol = "…/"
|
||||
truncation_length = 1
|
||||
fish_style_pwd_dir_length = 2
|
||||
|
||||
# Here is how you can shorten some long paths by text replacement
|
||||
# similar to mapped_locations in Oh My Posh:
|
||||
[directory.substitutions]
|
||||
"Documents" = " "
|
||||
"Downloads" = " "
|
||||
"Music" = " "
|
||||
"Pictures" = " "
|
||||
# [directory.substitutions]
|
||||
# "Documents" = " "
|
||||
# "Downloads" = " "
|
||||
# "Music" = " "
|
||||
# "Pictures" = " "
|
||||
# Keep in mind that the order matters. For example:
|
||||
# "Important Documents" = " "
|
||||
# will not be replaced, because "Documents" was already substituted before.
|
||||
|
|
@ -91,7 +96,6 @@ symbol = " "
|
|||
style = "bg:bright-green fg:black"
|
||||
format = '[ $symbol $context ]($style) $path'
|
||||
|
||||
|
||||
[git_branch]
|
||||
symbol = ""
|
||||
style = "bg:bright-blue fg:black"
|
||||
|
|
@ -105,7 +109,16 @@ format = "[($hash$tag)]($style) "
|
|||
[git_status]
|
||||
style = "bg:bright-blue fg:black"
|
||||
format = '[$all_status$ahead_behind]($style)'
|
||||
|
||||
renamed = ' '
|
||||
stashed = ' '
|
||||
modified = ' '
|
||||
untracked = ''
|
||||
conflicted = ''
|
||||
staged = ' '
|
||||
up_to_date = ' '
|
||||
diverged = ''
|
||||
deleted = ''
|
||||
#
|
||||
[git_state]
|
||||
style = "bg:bright-blue fg:black"
|
||||
format = '[\($state( $progress_current of $progress_total)\)]($style)'
|
||||
|
|
@ -114,21 +127,27 @@ format = '[\($state( $progress_current of $progress_total)\)]($style) '
|
|||
symbol = ""
|
||||
style = "bg:bright-cyan fg:black"
|
||||
format = '[$symbol($version) ]($style)'
|
||||
version_format = "v${major}.${minor}"
|
||||
|
||||
[gradle]
|
||||
style = "bg:bright-cyan fg:black"
|
||||
format = '[ $symbol ($version) ]($style)'
|
||||
format = '[($symbol$version)]($style)'
|
||||
|
||||
[java]
|
||||
symbol = ""
|
||||
style = "bg:bright-cyan fg:black"
|
||||
format = '[ $symbol ($version) ]($style)'
|
||||
format = '[($symbol$version)]($style)'
|
||||
|
||||
[nodejs]
|
||||
symbol = ""
|
||||
style = "bg:bright-cyan fg:black"
|
||||
format = '[ $symbol ($version) ]($style)'
|
||||
|
||||
[python]
|
||||
symbol = ""
|
||||
style = "bg:bright-cyan fg:black"
|
||||
format = '[ ${symbol}${pyenv_prefix}(${version} )(\($virtualenv\))]($style)'
|
||||
|
||||
[rust]
|
||||
symbol = ""
|
||||
style = "bg:bright-cyan fg:black"
|
||||
|
|
@ -144,6 +163,8 @@ format = '[ $time ]($style)'
|
|||
bash_indicator = " "
|
||||
powershell_indicator = " "
|
||||
zsh_indicator = " "
|
||||
nu_indicator = "ν"
|
||||
xonsh_indicator = "🐚"
|
||||
style = "bg:bright-purple fg:black"
|
||||
format = '[$indicator]($style)'
|
||||
disabled = false
|
||||
|
|
@ -152,12 +173,11 @@ disabled = false
|
|||
format = "[ $duration]($style)"
|
||||
style = "fg:black bg:bright-blue"
|
||||
show_milliseconds = true
|
||||
show_notifications = true
|
||||
|
||||
[status]
|
||||
disabled=false
|
||||
style="fg:black bg:bright-red"
|
||||
symbol=""
|
||||
symbol=" "
|
||||
# success_symbol=""
|
||||
format = "[ $symbol$status]($style)"
|
||||
|
||||
|
|
@ -165,3 +185,59 @@ format = "[ $symbol $status ]($style)"
|
|||
style="bg:bright-blue fg:black"
|
||||
ssh_symbol="@"
|
||||
format='[ $ssh_symbol$hostname ]($style)'
|
||||
|
||||
[sudo]
|
||||
style="bg:bright-blue fg:black"
|
||||
disabled = false
|
||||
symbol=" "
|
||||
format = "[ $symbol]($style)"
|
||||
|
||||
|
||||
# custom module for jj status
|
||||
[custom.jj]
|
||||
description = "The current jj status"
|
||||
when = "jj --ignore-working-copy root"
|
||||
symbol = "🥋 "
|
||||
shell = ["starship-jj", "starship", "prompt", "--ignore-working-copy"]
|
||||
disabled = true
|
||||
|
||||
# command = '''
|
||||
# jj log --revisions @ --no-graph --ignore-working-copy --color always --limit 1 --template '
|
||||
# separate(" ",
|
||||
# change_id.shortest(4),
|
||||
# bookmarks,
|
||||
# "|",
|
||||
# concat(
|
||||
# if(conflict, "💥"),
|
||||
# if(divergent, "🚧"),
|
||||
# if(hidden, "👻"),
|
||||
# if(immutable, "🔒"),
|
||||
# ),
|
||||
# raw_escape_sequence("\x1b[1;32m") ++ if(empty, "(empty)"),
|
||||
# raw_escape_sequence("\x1b[1;32m") ++ coalesce(
|
||||
# truncate_end(29, description.first_line(), "…"),
|
||||
# "(no description set)",
|
||||
# ) ++ raw_escape_sequence("\x1b[0m"),
|
||||
# )
|
||||
# '
|
||||
# '''
|
||||
# [custom.git_status]
|
||||
# ignore_timeout = true
|
||||
# when = "bash -c'starship-jj --ignore-working-copy root'"
|
||||
# command = "starship module git_status"
|
||||
# description = "Only show git_status if we're not in a jj repo"
|
||||
# style = "bg:bright-blue fg:black"
|
||||
# format = 'jjs: [$output ]($style)'
|
||||
#
|
||||
#
|
||||
# [custom.git_branch]
|
||||
# command = "starship module git_branch"
|
||||
# when = "bash -c'jj --ignore-working-copy root'"
|
||||
# style = "bg:bright-blue fg:black"
|
||||
# format = 'jjb: [$output ]($style)'
|
||||
#
|
||||
# [custom.git_state]
|
||||
# command = "starship module git_state"
|
||||
# when = "bash -c'jj --ignore-working-copy root'"
|
||||
# style = "bg:bright-blue fg:black"
|
||||
# format = 'jjst: [$output ]($style)'
|
||||
|
|
|
|||
59
private_dot_config/sway/config
Normal file
59
private_dot_config/sway/config
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
include /etc/sway/config.d/*
|
||||
include /etc/sway/config.d/50-systemd-user.conf
|
||||
set $mod Mod4
|
||||
|
||||
include "theme"
|
||||
include "wayland"
|
||||
include "outputs"
|
||||
# Font for window titles. Will also be used by the bar unless a different font
|
||||
# is used in the bar {} block below.
|
||||
|
||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||
floating_modifier $mod
|
||||
|
||||
|
||||
for_window [app_id="flameshot"] border pixel 0, floating enable, fullscreen disable, move absolute position 0 0
|
||||
# Define names for default workspaces for which we configure key bindings later on.
|
||||
# We use variables to avoid repeating the names in multiple places.
|
||||
set $ws1 "1"
|
||||
set $ws2 "2"
|
||||
set $ws3 "3"
|
||||
set $ws4 "4"
|
||||
set $ws5 "5"
|
||||
set $ws6 "6"
|
||||
set $ws7 "7"
|
||||
set $ws8 "8"
|
||||
set $ws9 "9"
|
||||
set $ws10 "10"
|
||||
|
||||
set $ws21 "21"
|
||||
set $ws22 "22"
|
||||
set $ws23 "23"
|
||||
set $ws24 "24"
|
||||
set $ws25 "25"
|
||||
set $ws26 "26"
|
||||
set $ws27 "27"
|
||||
set $ws28 "28"
|
||||
set $ws29 "29"
|
||||
set $ws20 "20"
|
||||
exec_always systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec_always dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
|
||||
|
||||
include "keybinds"
|
||||
|
||||
#border size
|
||||
default_border normal 1
|
||||
|
||||
gaps inner 5
|
||||
# polkit
|
||||
exec_always --no-startup-id /usr/bin/lxpolkit
|
||||
exec_always --no-startup-id /usr/bin/lxqt-policykit-agent
|
||||
#notif daemon
|
||||
# exec dunst
|
||||
exec mako
|
||||
# exec_always fcitx5
|
||||
exec wl-paste --watch cliphist store
|
||||
exec gnome-keyring-daemon -r
|
||||
exec ~/.config/swhkd/hotkeys.sh
|
||||
exec udiskie
|
||||
exec nm-tray
|
||||
146
private_dot_config/sway/i3blocks.conf
Normal file
146
private_dot_config/sway/i3blocks.conf
Normal file
|
|
@ -0,0 +1,146 @@
|
|||
# i3blocks config file
|
||||
#
|
||||
# Please see man i3blocks for a complete reference!
|
||||
# The man page is also hosted at http://vivien.github.io/i3blocks
|
||||
#
|
||||
# List of valid properties:
|
||||
#
|
||||
# align
|
||||
# color
|
||||
# command
|
||||
# full_text
|
||||
# instance
|
||||
# interval
|
||||
# label
|
||||
# min_width
|
||||
# name
|
||||
# separator
|
||||
# separator_block_width
|
||||
# short_text
|
||||
# signal
|
||||
# urgent
|
||||
|
||||
# Global properties
|
||||
#
|
||||
# The top properties below are applied to every block, but can be overridden.
|
||||
# Each block command defaults to the script name to avoid boilerplate.
|
||||
command=~/.config/i3blocks/$BLOCK_NAME/$BLOCK_NAME
|
||||
separator_block_width=15
|
||||
markup=none
|
||||
|
||||
# Volume indicator
|
||||
#
|
||||
# The first parameter sets the step (and units to display)
|
||||
# The second parameter overrides the mixer selection
|
||||
# See the script for details.
|
||||
[volume-pipewire]
|
||||
interval=persist
|
||||
signal=1
|
||||
AUDIO_HIGH_SYMBOL=
|
||||
AUDIO_MED_SYMBOL=
|
||||
AUDIO_LOW_SYMBOL=
|
||||
AUDIO_MUTED_SYMBOL=
|
||||
SUBSCRIBE=1
|
||||
LONG_FORMAT=${SYMB} ${VOL}%
|
||||
|
||||
# Memory usage
|
||||
#
|
||||
# The type defaults to "mem" if the instance is not specified.
|
||||
[memory]
|
||||
label=
|
||||
separator=false
|
||||
interval=30
|
||||
|
||||
[memory]
|
||||
label=
|
||||
instance=swap
|
||||
separator=true
|
||||
interval=30
|
||||
|
||||
# Disk usage
|
||||
#
|
||||
# The directory defaults to $HOME if the instance is not specified.
|
||||
# The script may be called with a optional argument to set the alert
|
||||
# (defaults to 10 for 10%).
|
||||
[disk]
|
||||
label=
|
||||
separator=false
|
||||
#instance=/mnt/data
|
||||
interval=30
|
||||
|
||||
[disk]
|
||||
markup=pango
|
||||
label=
|
||||
instance=/
|
||||
interval=30
|
||||
# Network interface monitoring
|
||||
#
|
||||
# If the instance is not specified, use the interface used for default route.
|
||||
# The address can be forced to IPv4 or IPv6 with -4 or -6 switches.
|
||||
[iface]
|
||||
color=#A0DC9B
|
||||
interval=10
|
||||
separator=false
|
||||
|
||||
[wifi]
|
||||
interval=10
|
||||
COLOR_GE80=#A0DC9B
|
||||
COLOR_GE60=#C1B254
|
||||
COLOR_GE40=#EAA950
|
||||
COLOR_LOWR=#EE5E95
|
||||
COLOR_DOWN=#A04558
|
||||
|
||||
# Battery indicator
|
||||
#
|
||||
# The battery instance defaults to 0.
|
||||
[battery]
|
||||
label=
|
||||
instance=1
|
||||
interval=30
|
||||
|
||||
# Temperature
|
||||
#
|
||||
# Support multiple chips, though lm-sensors.
|
||||
# The script may be called with -w and -c switches to specify thresholds,
|
||||
# see the script for details.
|
||||
# [temperature]
|
||||
# label=🌡️
|
||||
# interval=10
|
||||
# SENSOR_CHIP='k10temp-pci-00c3'
|
||||
|
||||
# Date Time
|
||||
#
|
||||
[time]
|
||||
command=date '+%a %b %_d %Y %l:%M:%S'
|
||||
interval=1
|
||||
|
||||
# Generic media player support
|
||||
#
|
||||
# This displays "ARTIST - SONG" if a music is playing.
|
||||
# Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others.
|
||||
#[mediaplayer]
|
||||
#instance=spotify
|
||||
#interval=5
|
||||
#signal=10
|
||||
|
||||
# OpenVPN support
|
||||
#
|
||||
# Support multiple VPN, with colors.
|
||||
#[openvpn]
|
||||
#interval=20
|
||||
|
||||
# Key indicators
|
||||
#
|
||||
# Add the following bindings to i3 config file:
|
||||
#
|
||||
# bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks
|
||||
# bindsym --release Num_Lock exec pkill -SIGRTMIN+11 i3blocks
|
||||
#[keyindicator]
|
||||
#instance=CAPS
|
||||
#interval=once
|
||||
#signal=11
|
||||
|
||||
#[keyindicator]
|
||||
#instance=NUM
|
||||
#interval=once
|
||||
#signal=11
|
||||
175
private_dot_config/sway/keybinds
Normal file
175
private_dot_config/sway/keybinds
Normal file
|
|
@ -0,0 +1,175 @@
|
|||
# start a terminal
|
||||
bindsym $mod+Return exec ghostty
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
# change focus
|
||||
bindsym $mod+j focus left
|
||||
bindsym $mod+k focus down
|
||||
bindsym $mod+l focus up
|
||||
bindsym $mod+semicolon focus right
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Left focus left
|
||||
bindsym $mod+Down focus down
|
||||
bindsym $mod+Up focus up
|
||||
bindsym $mod+Right focus right
|
||||
|
||||
# move focused window
|
||||
bindsym $mod+Shift+j move left
|
||||
bindsym $mod+Shift+k move down
|
||||
bindsym $mod+Shift+l move up
|
||||
bindsym $mod+Shift+semicolon move right
|
||||
|
||||
# alternatively, you can use the cursor keys:
|
||||
bindsym $mod+Shift+Left move left
|
||||
bindsym $mod+Shift+Down move down
|
||||
bindsym $mod+Shift+Up move up
|
||||
bindsym $mod+Shift+Right move right
|
||||
|
||||
# split in horizontal orientation
|
||||
bindsym $mod+h split h
|
||||
|
||||
# split in vertical orientation
|
||||
bindsym $mod+v split v
|
||||
|
||||
# enter fullscreen mode for the focused container
|
||||
bindsym $mod+f fullscreen toggle
|
||||
|
||||
# change container layout (stacked, tabbed, toggle split)
|
||||
bindsym $mod+s layout stacking
|
||||
bindsym $mod+w layout tabbed
|
||||
bindsym $mod+e layout toggle split
|
||||
|
||||
# toggle tiling / floating
|
||||
bindsym $mod+Shift+space floating toggle
|
||||
|
||||
# change focus between tiling / floating windows
|
||||
#bindsym $mod+space focus mode_toggle
|
||||
|
||||
# focus the parent container
|
||||
bindsym $mod+a focus parent
|
||||
|
||||
# focus the child container
|
||||
bindsym $mod+d focus child
|
||||
# switch to workspace
|
||||
bindsym $mod+1 workspace $ws1
|
||||
bindsym $mod+2 workspace $ws2
|
||||
bindsym $mod+3 workspace $ws3
|
||||
bindsym $mod+4 workspace $ws4
|
||||
bindsym $mod+5 workspace $ws5
|
||||
bindsym $mod+6 workspace $ws6
|
||||
bindsym $mod+7 workspace $ws7
|
||||
bindsym $mod+8 workspace $ws8
|
||||
bindsym $mod+9 workspace $ws9
|
||||
bindsym $mod+0 workspace $ws10
|
||||
|
||||
|
||||
bindsym $mod+Mod2+KP_1 workspace $ws21
|
||||
bindsym $mod+Mod2+KP_2 workspace $ws22
|
||||
bindsym $mod+Mod2+KP_3 workspace $ws23
|
||||
bindsym $mod+Mod2+KP_4 workspace $ws24
|
||||
bindsym $mod+Mod2+KP_5 workspace $ws25
|
||||
bindsym $mod+Mod2+KP_6 workspace $ws26
|
||||
bindsym $mod+Mod2+KP_7 workspace $ws27
|
||||
bindsym $mod+Mod2+KP_8 workspace $ws28
|
||||
bindsym $mod+Mod2+KP_9 workspace $ws29
|
||||
bindsym $mod+Mod2+KP_0 workspace $ws20
|
||||
|
||||
# move focused container to workspace
|
||||
bindsym $mod+Shift+1 move container to workspace $ws1
|
||||
bindsym $mod+Shift+2 move container to workspace $ws2
|
||||
bindsym $mod+Shift+3 move container to workspace $ws3
|
||||
bindsym $mod+Shift+4 move container to workspace $ws4
|
||||
bindsym $mod+Shift+5 move container to workspace $ws5
|
||||
bindsym $mod+Shift+6 move container to workspace $ws6
|
||||
bindsym $mod+Shift+7 move container to workspace $ws7
|
||||
bindsym $mod+Shift+8 move container to workspace $ws8
|
||||
bindsym $mod+Shift+9 move container to workspace $ws9
|
||||
bindsym $mod+Shift+0 move container to workspace $ws10
|
||||
|
||||
bindsym $mod+Shift+Mod2+KP_End move container to workspace $ws21
|
||||
bindsym $mod+Shift+Mod2+KP_Down move container to workspace $ws22
|
||||
bindsym $mod+Shift+Mod2+KP_Next move container to workspace $ws23
|
||||
bindsym $mod+Shift+Mod2+KP_Left move container to workspace $ws24
|
||||
bindsym $mod+Shift+Mod2+KP_Begin move container to workspace $ws25
|
||||
bindsym $mod+Shift+Mod2+KP_Right move container to workspace $ws26
|
||||
bindsym $mod+Shift+Mod2+KP_Home move container to workspace $ws27
|
||||
bindsym $mod+Shift+Mod2+KP_Up move container to workspace $ws28
|
||||
bindsym $mod+Shift+Mod2+KP_Prior move container to workspace $ws29
|
||||
bindsym $mod+Shift+Mod2+KP_Insert move container to workspace $ws20
|
||||
|
||||
# reload the configuration file
|
||||
bindsym $mod+Shift+c reload
|
||||
|
||||
|
||||
# resize window (you can also use the mouse for that)
|
||||
mode "resize" {
|
||||
# These bindings trigger as soon as you enter the resize mode
|
||||
|
||||
# Pressing left will shrink the window’s width.
|
||||
# Pressing right will grow the window’s width.
|
||||
# Pressing up will shrink the window’s height.
|
||||
# Pressing down will grow the window’s height.
|
||||
bindsym j resize shrink width 10 px or 10 ppt
|
||||
bindsym k resize grow height 10 px or 10 ppt
|
||||
bindsym l resize shrink height 10 px or 10 ppt
|
||||
bindsym semicolon resize grow width 10 px or 10 ppt
|
||||
|
||||
# same bindings, but for the arrow keys
|
||||
bindsym Left resize shrink width 10 px or 10 ppt
|
||||
bindsym Down resize grow height 10 px or 10 ppt
|
||||
bindsym Up resize shrink height 10 px or 10 ppt
|
||||
bindsym Right resize grow width 10 px or 10 ppt
|
||||
|
||||
# back to normal: Enter or Escape or $mod+r
|
||||
bindsym Return mode "default"
|
||||
bindsym Escape mode "default"
|
||||
bindsym $mod+r mode "default"
|
||||
}
|
||||
|
||||
bindsym $mod+r mode "resize"
|
||||
|
||||
# Make the currently focused window a scratchpad
|
||||
bindsym $mod+Shift+minus move scratchpad
|
||||
|
||||
# Show the first scratchpad window
|
||||
bindsym $mod+minus scratchpad show
|
||||
|
||||
#move to other monitor
|
||||
bindsym $mod+x move container to output right
|
||||
bindsym $mod+z move workspace to output right
|
||||
bindsym $mod+n move container to output down
|
||||
bindsym $mod+m move workspace to output down
|
||||
|
||||
bindsym $mod+Shift+x move container to output left
|
||||
bindsym $mod+Shift+z move workspace to output left
|
||||
bindsym $mod+Shift+n move container to output up
|
||||
bindsym $mod+Shift+m move workspace to output up
|
||||
|
||||
# Pipewire controls
|
||||
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
|
||||
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
|
||||
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
|
||||
bindsym XF86AudioPlay exec playerctl play-pause
|
||||
bindsym XF86AudioNext exec playerctl next
|
||||
bindsym XF86AudioPrev exec playerctl previous
|
||||
|
||||
# Sreen brightness controls
|
||||
bindsym XF86MonBrightnessUp exec brightnessctl -e s 5%+
|
||||
bindsym XF86MonBrightnessDown exec brightnessctl -e s 5%-
|
||||
|
||||
|
||||
bindsym $mod+b exec xdg-open http://
|
||||
# bindsym $mod+Shift+e exec zsh -c "rofi -show p -modi p:'rofi-power-menu --symbols-font \"Symbols Nerd Font Mono\"' -theme lunar-witch"
|
||||
bindsym $mod+Shift+e exec zsh -c "rofi -show p -modi p:'rofi-power-menu' -theme lunar-witch"
|
||||
bindsym $mod+space exec zsh -c "rofi -combi-modi 'drun#run' -show combi -show-icons -theme lunar-witch"
|
||||
|
||||
bindsym Print exec zsh -c 'grim - | tee "$XDG_PICTURES_DIR/screenshots/$(date -Is).png" | wl-copy -t image/png'
|
||||
bindsym Shift+Print exec zsh -c 'grim -g "$(slurp)" - | tee "$XDG_PICTURES_DIR/screenshots/$(date -Is).png" | wl-copy -t image/png'
|
||||
bindsym Ctrl+Print exec TEMP=$(mktemp); grim -g "$(slurp)" $TEMP && notify-send "$TEMP" && flatpak run org.gimp.GIMP -- $TEMP
|
||||
|
||||
bindsym $mod+Shift+v exec cliphist list | rofi -dmenu -display-columns 2 -p "Select item to copy" -lines 10 -width 35 -theme lunar-witch | cliphist decode | wl-copy
|
||||
|
||||
# bindsym $mod+Shift+. exec rofi -show emoji -modi emoji -theme lunar-witch | cb
|
||||
36
private_dot_config/sway/theme
Normal file
36
private_dot_config/sway/theme
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Colors
|
||||
set $fg #EBF6FF
|
||||
set $bg #74689F
|
||||
set $inactive #1E1B30
|
||||
set $urgent #A04558
|
||||
# class border backgr. text indicator child_border
|
||||
client.focused $bg $bg $fg $bg $bg
|
||||
client.focused_inactive $inactive $inactive $fg $bg $bg
|
||||
client.unfocused $inactive $inactive $fg $bg $bg
|
||||
client.urgent $urgent $urgent $fg $bg $bg
|
||||
client.placeholder $bg $bg $fg $bg $bg
|
||||
client.background $bg
|
||||
|
||||
# font pango:Atkinson Hyperlegible bold 9
|
||||
# font pango:FOT-UDKakugo_Large Pr6N semibold 10
|
||||
font pango:Berkeley Mono Bold 11
|
||||
|
||||
bar {
|
||||
status_command i3blocks -c ~/.config/sway/i3blocks.conf
|
||||
# font pango:MonaspiceNe NF, CommitMono Nerd Font, FontAwesome 9
|
||||
font pango:Berkeley Mono bold 11
|
||||
#mode hide
|
||||
colors {
|
||||
background $inactive
|
||||
statusline $fg
|
||||
separator $fg
|
||||
|
||||
focused_workspace $bg $bg $fg
|
||||
active_workspace $inactive $inactive $fg
|
||||
inactive_workspace $inactive $inactive $fg
|
||||
urgent_workspace $urgent $urgent $fg
|
||||
binding_mode $urgent $urgent $fg
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
22
private_dot_config/sway/wayland
Normal file
22
private_dot_config/sway/wayland
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
# Sway specific config
|
||||
# Logout
|
||||
# bindsym $mod+Shift+e exec "swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit Sway?' -B 'Yes, exit Sway' 'swaymsg exit'"
|
||||
|
||||
# screenshots
|
||||
# bindsym --release Print exec grimshot --notify copy
|
||||
# bindsym --release Shift+Print exec grimshot --notify copy anything
|
||||
|
||||
# Touchpad controls
|
||||
input "2362:628:PIXA3854:00_093A:0274_Touchpad" {
|
||||
tap enabled
|
||||
natural_scroll enabled
|
||||
}
|
||||
|
||||
#Set up monitors
|
||||
# output eDP-1 res 2256x1504 scale 1.00
|
||||
|
||||
#Wallpaper
|
||||
output * bg ~/00 Setup/wallpaper.png fill
|
||||
|
||||
# TODO setup tablet
|
||||
exec ~/tablet.sh
|
||||
10
private_dot_config/systemd/user/hotkeys.service
Normal file
10
private_dot_config/systemd/user/hotkeys.service
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
[Unit]
|
||||
Description=swhkd hotkey daemon
|
||||
BindsTo=default.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=bash -l $HOME/.config/swhkd/hotkeys.sh
|
||||
[Install]
|
||||
WantedBy=default.target
|
||||
|
||||
57
private_dot_config/tmux/executable_tmux.conf
Normal file
57
private_dot_config/tmux/executable_tmux.conf
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
# Tell tmux to use 256-color internally
|
||||
set -ga terminal-overrides ",xterm-256color:Tc"
|
||||
|
||||
# use C-a as prefix
|
||||
set-option -g prefix C-a
|
||||
bind-key a send-prefix
|
||||
|
||||
# C-a C-a for last window
|
||||
bind-key C-a last-window
|
||||
|
||||
# 1-index windows
|
||||
set -g base-index 1
|
||||
|
||||
# no delay after prefix
|
||||
set -s escape-time 0
|
||||
|
||||
# resize to smallest active client
|
||||
setw -g aggressive-resize on
|
||||
|
||||
# Set status bar
|
||||
set -g status-bg black
|
||||
set -g status-fg white
|
||||
set -g status-left ""
|
||||
set -g status-right "#[fg=green]#H"
|
||||
|
||||
# vi bindings
|
||||
setw -g mode-keys vi
|
||||
|
||||
# mouse enable
|
||||
set -g mouse on
|
||||
|
||||
# split panes using | and -
|
||||
bind | split-window -h
|
||||
bind h split-window -h
|
||||
bind - split-window -v
|
||||
bind v split-window -v
|
||||
unbind '"'
|
||||
unbind %
|
||||
|
||||
# switch panes using Alt-arrow without prefix
|
||||
bind -n M-Left select-pane -L
|
||||
bind -n M-Right select-pane -R
|
||||
bind -n M-Up select-pane -U
|
||||
bind -n M-Down select-pane -D
|
||||
|
||||
bind-key -n C-Space new-window
|
||||
bind-key -n C-S-Left prev
|
||||
bind-key -n C-S-Right next
|
||||
# bind -n C-left swap-window -t -1
|
||||
# bind -n C-right swap-window -t +1
|
||||
|
||||
# reload config file (change file location to your the tmux.conf you want to use)
|
||||
bind r source-file "$XDG_CONFIG_HOME/tmux.conf"
|
||||
|
||||
# don't rename windows automatically
|
||||
set-option -g allow-rename off
|
||||
set -g set-clipboard on
|
||||
1
private_dot_config/user-dirs.locale
Normal file
1
private_dot_config/user-dirs.locale
Normal file
|
|
@ -0,0 +1 @@
|
|||
en_US
|
||||
48
private_dot_config/vim/vim.md
Normal file
48
private_dot_config/vim/vim.md
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# General Plugins
|
||||
## [Goyo] (https://github.com/junegunn/goyo.vim)
|
||||
- TODO
|
||||
|
||||
## [Easymotion] (https://github.com/easymotion/vim-easymotion)
|
||||
- `\\w` lets you jump to any word ahead
|
||||
- `\\b` is backwards
|
||||
- `\\{h,j,k,l}` jump in a direction (doesn't work with arrow keys)
|
||||
- `\\f<char>` lets you jump to instances of `<char`
|
||||
|
||||
## [Ranger] (https://github.com/francoiscabrol/ranger.vim)
|
||||
- Requires ranger to be installed
|
||||
- `\f` to open ranger
|
||||
- `:RangerNewTab` to open selected file in new tab
|
||||
|
||||
## [Signify] (https://github.com/mhinz/vim-signify)
|
||||
- TODO
|
||||
|
||||
## [Lightline] (https://github.com/itchyny/lightline.vim)
|
||||
- TODO
|
||||
|
||||
## [DelimitMate] (https://github.com/Raimondi/delimitMate)
|
||||
- TODO
|
||||
|
||||
## [LanguageClient] (https://github.com/autozimu/LanguageClient-neovim)
|
||||
- TODO
|
||||
|
||||
## [Commentary] (https://github.com/tpope/vim-commentary)
|
||||
- `gcc`: toggle comment line
|
||||
- `gc<motion>`: toggle comment on motion
|
||||
|
||||
## [NerdTree] ()
|
||||
- TODO
|
||||
|
||||
## [NerdTree Tabs] ()
|
||||
- TODO
|
||||
|
||||
## [Grep] ()
|
||||
- TODO
|
||||
|
||||
## [CSApprox] ()
|
||||
- TODO
|
||||
|
||||
## [Tagbar] ()
|
||||
- TODO
|
||||
|
||||
## [indentline] ()
|
||||
- TODO
|
||||
|
|
@ -1,37 +1,96 @@
|
|||
" Install vim-plug if not found
|
||||
if empty(glob('~/.vim/autoload/plug.vim'))
|
||||
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
|
||||
if empty(glob('~/.config/vim/autoload/plug.vim'))
|
||||
silent !curl -fLo ~/.config/vim/autoload/plug.vim --create-dirs
|
||||
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||
endif
|
||||
if empty(glob('~/.local/share/nvim/site/autoload/plug.vim'))
|
||||
silent !curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
|
||||
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||
endif
|
||||
|
||||
|
||||
set laststatus=2 "lightline requires it?
|
||||
"Setup Plugins
|
||||
call plug#begin()
|
||||
|
||||
"*********************
|
||||
" General Plugins
|
||||
"*********************
|
||||
|
||||
"distraction free writing
|
||||
Plug 'junegunn/goyo.vim'
|
||||
|
||||
"ranger - file manager
|
||||
Plug 'francoiscabrol/ranger.vim'
|
||||
Plug 'rbgrouleff/bclose.vim'
|
||||
Plug 'airblade/vim-gitgutter' "may cause lag
|
||||
Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app && yarn install' }
|
||||
|
||||
" Easymotion
|
||||
Plug 'easymotion/vim-easymotion'
|
||||
let g:EasyMotion_smartcase = 1
|
||||
|
||||
" Signify - show vcs changes
|
||||
if has('nvim') || has('patch-8.0.902')
|
||||
Plug 'mhinz/vim-signify'
|
||||
set updatetime=100
|
||||
else
|
||||
Plug 'mhinz/vim-signify', { 'tag': 'legacy' }
|
||||
endif
|
||||
|
||||
" Line
|
||||
Plug 'itchyny/lightline.vim'
|
||||
Plug 'cespare/vim-toml'
|
||||
"pywal
|
||||
if has('wal')
|
||||
Plug 'dylanaraps/wal.vim'
|
||||
endif
|
||||
|
||||
" LSP Server
|
||||
Plug 'autozimu/LanguageClient-neovim', {
|
||||
\ 'branch': 'next',
|
||||
\ 'do': 'bash install.sh',
|
||||
\ }
|
||||
|
||||
" FZF
|
||||
Plug 'junegunn/fzf'
|
||||
|
||||
" Async.vim - backport nvim async to vim
|
||||
Plug 'prabirshrestha/async.vim'
|
||||
|
||||
"Auto add delimiters
|
||||
Plug 'Raimondi/delimitMate'
|
||||
|
||||
"Linting
|
||||
Plug 'dense-analysis/ale'
|
||||
"Plug 'dense-analysis/ale'
|
||||
|
||||
" Commenting
|
||||
Plug 'tpope/vim-commentary'
|
||||
|
||||
"Copy using OSC52
|
||||
Plug 'ojroques/vim-oscyank', {'branch': 'main'}
|
||||
|
||||
Plug 'scrooloose/nerdtree'
|
||||
Plug 'jistr/vim-nerdtree-tabs'
|
||||
Plug 'vim-scripts/grep.vim'
|
||||
Plug 'vim-scripts/CSApprox'
|
||||
Plug 'majutsushi/tagbar'
|
||||
Plug 'Yggdroot/indentLine'
|
||||
|
||||
|
||||
|
||||
"*********************
|
||||
" Language Specific
|
||||
"*********************
|
||||
|
||||
" c
|
||||
Plug 'vim-scripts/c.vim', {'for': ['c', 'cpp']}
|
||||
Plug 'ludwig/split-manpage.vim'
|
||||
|
||||
" go
|
||||
Plug 'fatih/vim-go', {'do': ':GoInstallBinaries', 'for': 'go'}
|
||||
|
||||
" html
|
||||
Plug 'hail2u/vim-css3-syntax', {'for': ['html','css']}
|
||||
Plug 'gko/vim-coloresque'
|
||||
Plug 'skammer/vim-css-color'
|
||||
Plug 'tpope/vim-haml', {'for': 'html'}
|
||||
Plug 'mattn/emmet-vim', {'for': 'html'}
|
||||
|
||||
" javascript
|
||||
"" Javascript Bundle
|
||||
Plug 'jelera/vim-javascript-syntax'
|
||||
|
||||
" latex
|
||||
if has('nvim')
|
||||
|
|
@ -43,45 +102,29 @@ if has('nvim')
|
|||
let g:tex_conceal='abdmg'
|
||||
endif
|
||||
|
||||
" haskell
|
||||
"" Haskell Bundle
|
||||
Plug 'eagletmt/neco-ghc', {'for': 'haskell'}
|
||||
Plug 'dag/vim2hs', {'for': 'haskell'}
|
||||
Plug 'pbrisbin/vim-syntax-shakespeare', {'for': 'haskell'}
|
||||
|
||||
|
||||
" html
|
||||
"" HTML Bundle
|
||||
Plug 'hail2u/vim-css3-syntax', {'for': ['html','css']}
|
||||
Plug 'gko/vim-coloresque', {'for': ['html','css']}
|
||||
Plug 'tpope/vim-haml', {'for': 'html'}
|
||||
Plug 'mattn/emmet-vim', {'for': 'html'}
|
||||
" python
|
||||
"" Python Bundle
|
||||
Plug 'davidhalter/jedi-vim', {'for': 'python' }
|
||||
Plug 'raimon49/requirements.txt.vim', {'for': 'requirements'}
|
||||
|
||||
" ruby
|
||||
Plug 'tpope/vim-rails'
|
||||
Plug 'tpope/vim-rake'
|
||||
Plug 'tpope/vim-projectionist'
|
||||
Plug 'thoughtbot/vim-rspec'
|
||||
Plug 'ecomba/vim-ruby-refactoring', {'tag': 'main'}
|
||||
|
||||
" rust
|
||||
" Vim racer
|
||||
" Code completion for rust using Racer
|
||||
Plug 'racer-rust/vim-racer', {'for': 'rust'}
|
||||
|
||||
" Rust.vim
|
||||
Plug 'rust-lang/rust.vim', {'for': 'rust'}
|
||||
|
||||
" Async.vim
|
||||
Plug 'prabirshrestha/async.vim'
|
||||
|
||||
" Vim lsp
|
||||
Plug 'prabirshrestha/vim-lsp'
|
||||
|
||||
if has('nvim')
|
||||
" Asyncomplete.vim
|
||||
Plug 'prabirshrestha/asyncomplete.vim'
|
||||
|
||||
" Asyncomplete lsp.vim
|
||||
Plug 'prabirshrestha/asyncomplete-lsp.vim'
|
||||
Plug 'simrat39/rust-tools.nvim', {'for': 'rust'}
|
||||
Plug 'Saecki/crates.nvim', {'for': 'rust'}
|
||||
endif
|
||||
|
||||
" toml
|
||||
Plug 'cespare/vim-toml'
|
||||
|
||||
" typescript
|
||||
Plug 'leafgarland/typescript-vim', {'for': 'typescript'}
|
||||
Plug 'HerringtonDarkholme/yats.vim', {'for': 'typescript'}
|
||||
|
|
@ -90,34 +133,43 @@ Plug 'HerringtonDarkholme/yats.vim', {'for': 'typescript'}
|
|||
Plug 'tpope/vim-fugitive'
|
||||
Plug 'tpope/vim-rhubarb' " required by fugitive to :Gbrowse
|
||||
|
||||
"Copy using OSC52
|
||||
Plug 'ojroques/vim-oscyank', {'branch': 'main'}
|
||||
call plug#end()
|
||||
|
||||
" Run PlugInstall if there are missing plugins
|
||||
"****************
|
||||
" Plugin Setup
|
||||
"****************
|
||||
|
||||
" Run PlugInstall Vif there are missing plugins
|
||||
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
|
||||
\| PlugInstall --sync | source $MYVIMRC
|
||||
\| endif
|
||||
|
||||
" OSCYank setup
|
||||
if exists('##TextYankPost')
|
||||
autocmd TextYankPost * if v:event.operator is 'y' && v:event.regname is '' | execute 'OSCYank"' | endif
|
||||
autocmd TextYankPost * if v:event.operator is 'y' && v:event.regname is '' | execute 'OSCYankVisual"' | endif
|
||||
endif
|
||||
|
||||
try
|
||||
colorscheme wal
|
||||
catch /^Vim\%((\a\+)\)\=:E185/
|
||||
try
|
||||
colorscheme catppuccin
|
||||
let g:lightline = {'colorscheme': 'catppuccin'}
|
||||
catch /^Vim\%((\a\+)\)\=:E185/
|
||||
endtry
|
||||
endtry
|
||||
"set notermguicolors
|
||||
|
||||
" status line
|
||||
set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l\/%L,\ col\ %c)\
|
||||
if exists("*fugitive#statusline")
|
||||
set statusline+=%{fugitive#statusline()}
|
||||
endif
|
||||
|
||||
" Goyo Keybind
|
||||
map <leader>g :Goyo \| set linebreak<CR>
|
||||
|
||||
|
||||
"****************
|
||||
" Vim Setup
|
||||
"****************
|
||||
|
||||
set nocompatible
|
||||
filetype on
|
||||
filetype plugin on
|
||||
filetype indent on
|
||||
syntax on
|
||||
syntax on " syntax higlighting
|
||||
set hidden "enable hidden buffers
|
||||
set noshowmode "conflicts with airline
|
||||
set mouse=a "mouse anywhere
|
||||
set number "line numbers
|
||||
|
|
@ -127,13 +179,17 @@ set hlsearch "highlight search
|
|||
set ignorecase "case insensitive?
|
||||
set smartcase "only case insensitive for lowercase
|
||||
set incsearch
|
||||
|
||||
set showmatch " show matching brace
|
||||
" indentations
|
||||
set autoindent "auto indent
|
||||
set smartindent "smart indent
|
||||
set expandtab
|
||||
set tabstop=4
|
||||
set shiftwidth=4
|
||||
set softtabstop=0
|
||||
|
||||
set ruler
|
||||
set expandtab
|
||||
" Autocomplete
|
||||
set wildmode=longest:list:full
|
||||
set wildmenu
|
||||
|
|
@ -148,10 +204,14 @@ cmap w!! !sudo tee % > /dev/null
|
|||
nnoremap n nzzzv
|
||||
nnoremap N Nzzzv
|
||||
|
||||
" status line
|
||||
set statusline=%F%m%r%h%w%=(%{&ff}/%Y)\ (line\ %l\/%L,\ col\ %c)\
|
||||
if exists("*fugitive#statusline")
|
||||
set statusline+=%{fugitive#statusline()}
|
||||
endif
|
||||
|
||||
map <leader>g :Goyo \| set linebreak<CR>
|
||||
"" no one is really happy until you have this shortcuts
|
||||
cnoreabbrev W! w!
|
||||
cnoreabbrev Q! q!
|
||||
cnoreabbrev Qall! qall!
|
||||
cnoreabbrev Wq wq
|
||||
cnoreabbrev Wa wa
|
||||
cnoreabbrev wQ wq
|
||||
cnoreabbrev WQ wq
|
||||
cnoreabbrev W w
|
||||
cnoreabbrev Q q
|
||||
cnoreabbrev Qall qall
|
||||
2
private_dot_config/xdg-desktop-portal/portals.conf
Normal file
2
private_dot_config/xdg-desktop-portal/portals.conf
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
[preferred]
|
||||
default=gtk
|
||||
6
private_dot_config/xdg-desktop-portal/sway-portals.conf
Normal file
6
private_dot_config/xdg-desktop-portal/sway-portals.conf
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
[preferred]
|
||||
# use xdg-desktop-portal-gtk for every portal interface
|
||||
default=wlr;gtk
|
||||
# except for the xdg-desktop-portal-wlr supplied interfaces
|
||||
org.freedesktop.impl.portal.Screencast=wlr
|
||||
org.freedesktop.impl.portal.Screenshot=wlr
|
||||
39
private_dot_config/xonsh/rc.xsh
Normal file
39
private_dot_config/xonsh/rc.xsh
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
source-bash ~/.envrc --overwrite-aliases
|
||||
# Zoxide
|
||||
execx($(zoxide init xonsh), 'exec', __xonsh__.ctx, filename='zoxide')
|
||||
|
||||
xontrib load coreutils
|
||||
xontrib load vox
|
||||
xontrib load autovox
|
||||
xontrib load prompt_starship
|
||||
xontrib load bashisms
|
||||
xontrib load sh
|
||||
|
||||
|
||||
# TODO: Does this work?
|
||||
def yy(args=None):
|
||||
import tempfile
|
||||
"""
|
||||
Yazi file manager wrapper that follows directory changes.
|
||||
Usage: y() or y('some/path')
|
||||
"""
|
||||
with tempfile.NamedTemporaryFile(prefix='yazi-cwd.', suffix='.tmp') as tmp:
|
||||
# Build command arguments
|
||||
cmd_args = ['yazi']
|
||||
if args:
|
||||
cmd_args.append(str(args))
|
||||
cmd_args.append(f'--cwd-file={tmp.name}')
|
||||
|
||||
# Run yazi
|
||||
@(cmd_args)
|
||||
|
||||
# Read new working directory
|
||||
try:
|
||||
with open(tmp.name) as f:
|
||||
new_cwd = f.read().strip()
|
||||
|
||||
# Change directory if valid and different
|
||||
if new_cwd and os.path.isdir(new_cwd) and new_cwd != os.getcwd():
|
||||
cd @(new_cwd)
|
||||
except (IOError, OSError):
|
||||
pass
|
||||
40
private_dot_config/zathura/zathurarc
Normal file
40
private_dot_config/zathura/zathurarc
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
set notification-error-bg "rgba(30,27,48,1)" # bg
|
||||
set notification-error-fg "rgba(237,128,150,1)" # bright:red
|
||||
set notification-warning-bg "rgba(30,27,48,1)" # bg
|
||||
set notification-warning-fg "rgba(193,178,84,1)" # bright:yellow
|
||||
set notification-bg "rgba(30,27,48,1)" # bg
|
||||
set notification-fg "rgba(160,220,155,1)" # bright:green
|
||||
|
||||
set completion-bg "rgba(80,69,115,1)" # bg2
|
||||
set completion-fg "rgba(235,246,255,1)" # fg
|
||||
set completion-group-bg "rgba(30,27,48,1)" # bg1
|
||||
set completion-group-fg "rgba(116,110,149,1)" # gray
|
||||
set completion-highlight-bg "rgba(68,95,155,1)" # bright:blue
|
||||
set completion-highlight-fg "rgba(80,69,115,1)" # bg2
|
||||
|
||||
# Define the color in index mode
|
||||
set index-bg "rgba(80,69,115,1)" # bg2
|
||||
set index-fg "rgba(235,246,255,1)" # fg
|
||||
set index-active-bg "rgba(68,95,155,1)" # bright:blue
|
||||
set index-active-fg "rgba(80,69,115,1)" # bg2
|
||||
|
||||
set inputbar-bg "rgba(30,27,48,1)" # bg
|
||||
set inputbar-fg "rgba(235,246,255,1)" # fg
|
||||
|
||||
set statusbar-bg "rgba(80,69,115,1)" # bg2
|
||||
set statusbar-fg "rgba(235,246,255,1)" # fg
|
||||
|
||||
set highlight-color "rgba(193,178,84,0.5)" # bright:yellow
|
||||
set highlight-active-color "rgba(234,169,80,0.5)" # bright:orange
|
||||
|
||||
set default-bg "rgba(30,27,48,1)" # bg
|
||||
set default-fg "rgba(235,246,255,1)" # fg
|
||||
set render-loading true
|
||||
set render-loading-bg "rgba(30,27,48,1)" # bg
|
||||
set render-loading-fg "rgba(235,246,255,1)" # fg
|
||||
|
||||
# Recolor book content's color
|
||||
set recolor-lightcolor "rgba(30,27,48,1)" # bg
|
||||
set recolor-darkcolor "rgba(235,246,255,1)" # fg
|
||||
set recolor "true"
|
||||
set recolor-keephue "true" # keep original color
|
||||
|
|
@ -222,7 +222,7 @@ themes {
|
|||
}
|
||||
base16 {
|
||||
fg 15
|
||||
bg 8
|
||||
bg 0
|
||||
red 9
|
||||
green 10
|
||||
yellow 11
|
||||
|
|
@ -230,7 +230,7 @@ themes {
|
|||
magenta 13
|
||||
orange 16
|
||||
cyan 14
|
||||
black 0
|
||||
black 8
|
||||
white 15
|
||||
}
|
||||
// Catppuccin Theme:
|
||||
|
|
@ -292,12 +292,25 @@ themes {
|
|||
white "#cdd6f4"
|
||||
}
|
||||
|
||||
lunar-witch {
|
||||
fg "#EBF6FF"
|
||||
bg "#010206"
|
||||
red "#A04558"
|
||||
green "#6FA47E"
|
||||
yellow "#CCB700"
|
||||
blue "#334773"
|
||||
magenta "#A34A76"
|
||||
orange "#F4B766"
|
||||
cyan "#2A97B1"
|
||||
black "#1E1B30"
|
||||
white "#BFBFC0"
|
||||
}
|
||||
}
|
||||
|
||||
// Choose the theme that is specified in the themes section.
|
||||
// Default: default
|
||||
//
|
||||
theme "base16"
|
||||
theme "lunar-witch"
|
||||
|
||||
// The name of the default layout to load on startup
|
||||
// Default: "default"
|
||||
|
|
|
|||
12
private_dot_ssh/private_authorized_keys
Normal file
12
private_dot_ssh/private_authorized_keys
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIMggnmTj7KL409V2mtbPgKERbmyJAeCGBcyzxWW+arRZAAAABHNzaDo= yubikey-black
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAltYcKHavkQBJFlogNuT3JhX6ob30V3EYje4pOQBLgq gpg\mira.kristipati@gmail.com
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEKT/rbUu87QyRD7L/QSr+lQMJz2m/mdqlqyCQEMwUJj gpgssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEw3/9inZC/MRPkuOF6T5LiFoOlgo5HZVIM36IC+hlzJ gpg\mira-yubikey-black
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFdRtpQWCPyQQuzcwlbFukGZSlRTcfNzG840kMvbuPwr gpg\kristipati.ajay@gmail.com
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIA0ikP2zdDBaJZ+aoE6jFz3UpCyHjz1r1QtuZTAvTpx zagreusd25519
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJx1GWB1xkE+ECavUypp99FqmB4emiw+j2PpsxN8OXpa gpg\mira@xn--2dkua.xn--tckwe
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINa3w6lweeP4XBokNCEJb86th9S81WQQ+LVVwCRpADap kristipati.ajay@gmail.com
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOY3LSWsg9XK1rI7r2E+1tmX3Vi7W5opwkvqO6AsduZR gpg\ArgentumCation
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDA+Hrb45HQrcBe+gXQz4goWw0PBWdmAWMQ0RWrHXwvkWXM4KsXXrUP7qijEPPtDvJG3JL4Ifsbj+VIN7RprjE5wfvkIxlmnluUK6m2u8r8BlNDhFW5wjoA6PBuHhqYEKGbdqm5s+3WaZt8l2EERyIV87YJPbxNpwc175J3mWYWesvxSp/uNxcXEbOClr+jHXVxztno3XVoVXfpiFfjSsUgprQonbPYiKdfiLwFeXHI03vZlWfmEjERzBE+Ro5ireJ8JVNjKOgiw7aU6tQAyDKe2NkcyTV/tO/OdUSGlnO3Nc3qHHE9B0OTdoKPpiv5A1GdmJWub7UNJKzKB1y7eSGHU3X/FVMSCf9eZUmLIMxWcu1y6GrH1CHIpdqPk+rw6lfjkFg1dDL2f3CXoAwLIEFVaUzI+Gg7BC9Z2jUWTkaj7KoI4sN65PzqrNiJ5QfUjlGh1T0hgMB/QwGarPUilBljGUo7IQfcleDQF3Y5F05Amjr6isZ9ONpeOlCegUB6BIU= mira@epinephrine
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDDD48bhv1AEPhbrGIKxf+XTSWMyxu2qBeaN4nZNZ0YMyinltHd6/VaDEZIzCvadBi3Rc9oTdJIEiXzcMTKj26DacuAuh+YPMvoA0I+lfT36q2SZmWIaVSREtfYYdluJtAyiLvFTkv6G0p5c/x1v9ovEXY3OYo1lnio7j0SmBpj4R9UQJYJhohJLtJCTdfutSuQVclhx/kiytdmFqsCDlCI0EaNxTFS861iTmm2ZjKm7o8ohevxPmnXAHizIBOAZDzbhJ61sPLKIOLWWgJNiK04YUDsBToZBOpeLEnNGkkKY++V4u+5tGI5L1RlVwoGSSB40aY5WLouFmeVE/f42nVuTIF2r/UDjsxeiUdivai+L5xNiqHa5JRWg4+at1lYWGdpineXOPYF6MmzkV+HQMvxC8YhG7ig7W+V7KCfKzMy8EEej+gIMxGFqr6CJQCDXZxqt5o0+Ksh7IMw8AEcrBszuMdJEE/7E/XUnYQHfGUNgFvFwKVzPjOSzbwHMfWPI1k= root@epinephrine
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDm1kPy3bxyLX2nUwvETrsBbjmPDHEvKxmzn9dCoaa/C1tWttrvaXUhYZ6svftR7ofqjCailq1WHU4qkIlfz6Hxwq/mxZdOGRg3A2lzDgbJ5C9RSA8LIfYht2UhbqW40wHCEa1B6+bcwLHFWbDyoeT+NQO007lK4Tu1OY3nTNz3QFJgxAPtFuqQSTFpkxL8JZetQtc/KwJ5ofZBZ+nFc4PUstPE47uf4OEOaKY+fbDZ2bf8tmybGhVq6Oc+BQKij5usnQLTeN8XyVxPxGvXahXHx7ESnp//wCs6DrzoMHBbAVFVXS+w6ZzX2el9gCAcUeyZt8iu0zl9GxnVkpyQzHuuBgYON3orYaCdM5vRCnECFoK8XNwP45jNPzFxrIpSYeJ4tR4uhLxCfD3OHB/BQtOQsEdMJvnLnynzyWePeweTe2S1+ohg9zskyxt9c2rSxw8OlWdHds32JuWka6mTJCdfZgHaNY+Ppz1NEo5XYIfz9Jt0vevmaCVbBHo73Tyh6+k= norepinephrine
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDmOATOG9brF/pBmMufk0LQkPQuLwgZAOZMeHCSdOpr+4Tap/mmqCHGtDL/JW6KsDfFpOFmdnSoeihVPGT3r/Mixt3cGOJlzoWXDt2bHyaEOsLz5B3MuYqBIXG3d2wvxharbmlVg3xyArSaCtuBZcopC5rXajnrPW4HxW+pxPC1NsL3RRGSF0edWdJVdX8oJJBsMMUzfeWh1bxEz2iLKMSYb6KPbQITwFTr+RuiEIppOW3n0zJko1wNG8oWTOgHdkmY4C4rUOk6KgW4qs19t7Mjlc7CnZa3XV7/0DcxERGsphpKvS7dpnEtOt7RaHUr/t0V3yLgl58MPbJKG6WSNIRaXZ0EPSlzz8k+4JjuEFdCDg7WjEDSZsBS9U4AyYQjlEwrkinT7g+LUVKYEDqb0hE539SwARvHZsOXrRgtA+Jh2CJIb/rRWfQRkgxpT9hKiBfYbSj8qbphUrbJ/g72UOQyhIbEW8fF9vmWY75NV/X2+EFZyF56ZhvLFk08sjGIF+s= u0_a441@localhost
|
||||
Loading…
Add table
Reference in a new issue