massive cleanup
This commit is contained in:
parent
81da0e63fa
commit
5a6ec6f75c
@ -1,4 +1,4 @@
|
|||||||
function _compalias() {
|
_compalias() {
|
||||||
local name val valarr fn
|
local name val valarr fn
|
||||||
name="${COMP_WORDS[0]}"
|
name="${COMP_WORDS[0]}"
|
||||||
val="${BASH_ALIASES[$name]}"
|
val="${BASH_ALIASES[$name]}"
|
||||||
@ -15,7 +15,7 @@ function _compalias() {
|
|||||||
"$fn" "${COMP_WORDS[0]}" "${COMP_WORDS[-1]}" "${COMP_WORDS[-2]}"
|
"$fn" "${COMP_WORDS[0]}" "${COMP_WORDS[-1]}" "${COMP_WORDS[-2]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
function compalias() {
|
compalias() {
|
||||||
alias "$@"
|
alias "$@"
|
||||||
complete -o nospace -F _compalias "${@%%=*}"
|
complete -o nospace -F _compalias "${@%%=*}"
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
function am() {
|
am() {
|
||||||
local name dev lsblk
|
local name dev lsblk
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
@ -22,36 +22,45 @@ function am() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
function bat() {
|
bat() {
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
TERM='tty' $EDITOR --cmd "set lines=$(grep -c '' "$1")" +redraw +q "$1"
|
TERM='tty' $EDITOR --cmd "set lines=$(grep -c '' "$1")" +redraw +q "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
function bd() {
|
bd() {
|
||||||
echo "$@" | base64 -d; echo
|
echo "$@" | base64 -d; echo
|
||||||
}
|
}
|
||||||
|
|
||||||
function gi() {
|
gi() {
|
||||||
curl -fL "https://www.toptal.com/developers/gitignore/api/$(printf '%s\n' "$@" | sort -u | paste -sd,)"
|
curl -fL "https://www.toptal.com/developers/gitignore/api/$(printf '%s\n' "$@" | sort -u | paste -sd,)"
|
||||||
}
|
}
|
||||||
|
|
||||||
function update() {
|
update() {
|
||||||
$TERM --hold -e "$SHELL" -xc "sudo pacman -Syu && echo $'\e[32mDONE'" &
|
$TERM --hold -e "$SHELL" -xc "sudo pacman -Syu && echo $'\e[32mDONE'" &
|
||||||
$TERM --hold -e "$SHELL" -xc "git --git-dir='$HOME/.dotfiles/' --work-tree='$HOME' submodule update --remote --recursive && echo $'\e[32mDONE'" &
|
$TERM --hold -e "$SHELL" -xc "git --git-dir='$HOME/.dotfiles/' --work-tree='$HOME' submodule update --remote --recursive && echo $'\e[32mDONE'" &
|
||||||
}
|
}
|
||||||
|
|
||||||
function tmp() {
|
tmp() {
|
||||||
cd -- "$(mktemp -d /tmp/"$1"XXX)" || return
|
cd -- "$(mktemp -d /tmp/"$1"XXX)" || return
|
||||||
}
|
}
|
||||||
|
|
||||||
function venv() {
|
tz() {
|
||||||
|
local tz src
|
||||||
|
|
||||||
|
tz="$(cat "$XDG_RUNTIME_DIR/sbar/tz")"
|
||||||
|
src="$(find /usr/share/zoneinfo/ -maxdepth 2 -iname "$1*" -printf '%P' -quit)"
|
||||||
|
TZ="$tz" date -d "TZ=\"$src\" ${2:-now}" "+%R%:::z $tz"
|
||||||
|
TZ="$src" date -d "TZ=\"$tz\" ${2:-now}" "+%R%:::z ${src:-UTC}"
|
||||||
|
}
|
||||||
|
|
||||||
|
venv() {
|
||||||
local venv="${1:-.venv}"
|
local venv="${1:-.venv}"
|
||||||
local bin="$venv/bin/activate"
|
local bin="$venv/bin/activate"
|
||||||
|
|
||||||
if ! [ -f "$bin" ]; then
|
if ! [ -f "$bin" ]; then
|
||||||
python -m venv "$venv"
|
python -m venv --system-site-packages "$venv"
|
||||||
fi
|
fi
|
||||||
# shellcheck disable=SC1090
|
# shellcheck disable=SC1090
|
||||||
. "$bin"
|
. "$bin"
|
||||||
|
@ -57,25 +57,33 @@ compalias dc='docker-compose' \
|
|||||||
dcupb='docker-compose up --build' \
|
dcupb='docker-compose up --build' \
|
||||||
dcupd='docker-compose up -d' \
|
dcupd='docker-compose up -d' \
|
||||||
dcupdb='docker-compose up -d --build' \
|
dcupdb='docker-compose up -d --build' \
|
||||||
dcw='docker-compose up --build -w'
|
dcw='docker-compose up -w'
|
||||||
|
|
||||||
function dkb() {
|
dkb() {
|
||||||
local name="${1:-${PWD##*/}}"; shift
|
local name="${1:-${PWD##*/}}"; shift
|
||||||
|
|
||||||
podman build . -t "$name" "$@"
|
podman build . -t "$name" "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
function dkr() {
|
dkr() {
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
set -- "${PWD##*/}"
|
set -- "${PWD##*/}"
|
||||||
fi
|
fi
|
||||||
podman run -i -t "$@"
|
podman run -i -t "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
function dkila() {
|
dkila() {
|
||||||
while read -r img id; do
|
while read -r img id; do
|
||||||
if [[ "$img" != localhost/* ]] && new_id="$(podman pull "$img")" && [ "$new_id" != "$id" ]; then
|
if [[ "$img" != localhost/* ]] && new_id="$(podman pull "$img")" && [ "$new_id" != "$id" ]; then
|
||||||
podman image rm "$id"
|
podman image rm "$id"
|
||||||
fi
|
fi
|
||||||
done < <(podman image list --format json | jq -r '.[] | "\(.Names[]) \(.Id)"')
|
done < <(podman image list --format json | jq -r '.[] | "\(.Names[]) \(.Id)"')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dcdev() {
|
||||||
|
OPT=()
|
||||||
|
if [ -f compose-dev.yaml ]; then
|
||||||
|
OPT+=(-f compose-dev.yaml)
|
||||||
|
fi
|
||||||
|
docker-compose "${OPT[@]}" up -w -V
|
||||||
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
function _kctxns() {
|
_kctxns() {
|
||||||
local conf="${KUBECONFIG:-"$HOME/.kube/config"}"
|
local conf="${KUBECONFIG:-"$HOME/.kube/config"}"
|
||||||
local tmp cache file="$1" func="$2"; shift 2
|
local tmp cache file="$1" func="$2"; shift 2
|
||||||
|
|
||||||
@ -27,10 +27,10 @@ function _kctxns() {
|
|||||||
echo -e "$1\n$2" > "$file"
|
echo -e "$1\n$2" > "$file"
|
||||||
}
|
}
|
||||||
|
|
||||||
function _kns_get() {
|
_kns_get() {
|
||||||
kubectl config view --minify -ojsonpath='{..namespace}'
|
kubectl config view --minify -ojsonpath='{..namespace}'
|
||||||
}
|
}
|
||||||
function _kns_set() {
|
_kns_set() {
|
||||||
if ! kubectl get namespace -oname | grep -q "^namespace/$1\$"; then
|
if ! kubectl get namespace -oname | grep -q "^namespace/$1\$"; then
|
||||||
echo "error: no namespace exists with the name: \"$1\"" >&2
|
echo "error: no namespace exists with the name: \"$1\"" >&2
|
||||||
return 1
|
return 1
|
||||||
@ -38,17 +38,17 @@ function _kns_set() {
|
|||||||
kubectl config set-context --current --namespace "$1" > /dev/null
|
kubectl config set-context --current --namespace "$1" > /dev/null
|
||||||
echo "Switched to namespace \"$1\"."
|
echo "Switched to namespace \"$1\"."
|
||||||
}
|
}
|
||||||
function kns() {
|
kns() {
|
||||||
local dir="$XDG_CACHE_HOME/kns"
|
local dir="$XDG_CACHE_HOME/kns"
|
||||||
|
|
||||||
mkdir -p "$dir" > /dev/null
|
mkdir -p "$dir" > /dev/null
|
||||||
_kctxns "$dir/$(kctx)" kns "$@"
|
_kctxns "$dir/$(kctx)" kns "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
function _kctx_get() { kubectl config current-context ; }
|
_kctx_get() { kubectl config current-context ; }
|
||||||
function _kctx_set() { kubectl config use-context "$1" ; }
|
_kctx_set() { kubectl config use-context "$1" ; }
|
||||||
# shellcheck disable=SC2120
|
# shellcheck disable=SC2120
|
||||||
function kctx() { _kctxns "$XDG_CACHE_HOME/kctx" kctx "$@" ; }
|
kctx() { _kctxns "$XDG_CACHE_HOME/kctx" kctx "$@" ; }
|
||||||
|
|
||||||
alias kga='kubectl get "$(kubectl api-resources --verbs=list --namespaced -oname | grep -v event | paste -sd,)"' \
|
alias kga='kubectl get "$(kubectl api-resources --verbs=list --namespaced -oname | grep -v event | paste -sd,)"' \
|
||||||
kgaoname='kubectl get "$(kubectl api-resources --verbs=list --namespaced -oname | grep -v event | paste -sd,)" -oname' \
|
kgaoname='kubectl get "$(kubectl api-resources --verbs=list --namespaced -oname | grep -v event | paste -sd,)" -oname' \
|
||||||
@ -67,7 +67,7 @@ compalias k=kubectl \
|
|||||||
kpf='kubectl port-forward' \
|
kpf='kubectl port-forward' \
|
||||||
krm='kubectl delete' \
|
krm='kubectl delete' \
|
||||||
|
|
||||||
function _k8salias() {
|
_k8salias() {
|
||||||
local n s a
|
local n s a
|
||||||
|
|
||||||
for a in '' "${@/=/= }"; do
|
for a in '' "${@/=/= }"; do
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
function man() {
|
man() {
|
||||||
env GROFF_NO_SGR=1 \
|
env GROFF_NO_SGR=1 \
|
||||||
LESS_TERMCAP_mb=$'\e[01;31m' \
|
LESS_TERMCAP_mb=$'\e[01;31m' \
|
||||||
LESS_TERMCAP_md=$'\e[01;31m' \
|
LESS_TERMCAP_md=$'\e[01;31m' \
|
||||||
@ -18,7 +18,7 @@ GIT_PS1_SHOWCOLORHINTS=1
|
|||||||
VIRTUAL_ENV_DISABLE_PROMPT=1
|
VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||||
|
|
||||||
PROMPT_COMMAND=precmd
|
PROMPT_COMMAND=precmd
|
||||||
function precmd() {
|
precmd() {
|
||||||
local ctx err="${PIPESTATUS[*]}"
|
local ctx err="${PIPESTATUS[*]}"
|
||||||
|
|
||||||
ctx="$(kctx)"
|
ctx="$(kctx)"
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
# vim: tabstop=8 nowrap
|
# vim: tabstop=8 nowrap
|
||||||
|
|
||||||
# TODO
|
# TODO
|
||||||
https://github.com/agusbudi/isar_crud
|
https://www.seek.com.au/devops-jobs/remote?worktype=245%2C244
|
||||||
|
https://www.sncf-connect.com/app/catalogue/description/carte-avantage-jeune
|
||||||
https://anubis.techaro.lol/docs/admin/installation
|
https://anubis.techaro.lol/docs/admin/installation
|
||||||
https://nomads.com
|
|
||||||
https://wiki.nftables.org/wiki-nftables/index.php/Scripting
|
https://wiki.nftables.org/wiki-nftables/index.php/Scripting
|
||||||
https://tech.yahoo.com/articles/mozilla-vpns-per-controls-too-182238290.html
|
https://tech.yahoo.com/articles/mozilla-vpns-per-controls-too-182238290.html
|
||||||
https://help.gnome.org/users/zenity/stable/notification.html.en
|
https://help.gnome.org/users/zenity/stable/notification.html.en
|
||||||
@ -11,8 +11,8 @@ https://serverfault.com/questions/1150627/bind9-behind-nginx-reverse-proxy-doh/1
|
|||||||
https://www.grepular.com/Automatically_Encrypting_all_Incoming_Email
|
https://www.grepular.com/Automatically_Encrypting_all_Incoming_Email
|
||||||
https://www.grepular.com/Protecting_a_Laptop_from_Simple_and_Sophisticated_Attacks
|
https://www.grepular.com/Protecting_a_Laptop_from_Simple_and_Sophisticated_Attacks
|
||||||
https://www.rtcsec.com/article/slack-webrtc-turn-compromise-and-bug-bounty
|
https://www.rtcsec.com/article/slack-webrtc-turn-compromise-and-bug-bounty
|
||||||
https://www.youtube.com/playlist?list=PLjAJj2LotlkOzOgp1xXJkbF73ZrQeDE7j
|
|
||||||
|
|
||||||
|
|
||||||
comm/discord https://discord.com/app
|
comm/discord https://discord.com/app
|
||||||
comm/whatsapp https://web.whatsapp.com
|
comm/whatsapp https://web.whatsapp.com
|
||||||
games/lichess https://lichess.org
|
games/lichess https://lichess.org
|
||||||
@ -33,6 +33,8 @@ media/ytmusic https://music.youtube.com/playlist?list=PLXd8_JG
|
|||||||
tools/crypto/coingecko https://www.coingecko.com
|
tools/crypto/coingecko https://www.coingecko.com
|
||||||
tools/crypto/mempool https://mempool.space
|
tools/crypto/mempool https://mempool.space
|
||||||
tools/deepl https://www.deepl.com
|
tools/deepl https://www.deepl.com
|
||||||
|
tools/gmaps https://www.google.com/maps
|
||||||
|
tools/gtranslate https://translate.google.com
|
||||||
tools/nix/archwiki https://wiki.archlinux.org
|
tools/nix/archwiki https://wiki.archlinux.org
|
||||||
tools/nix/crontab https://crontab.guru
|
tools/nix/crontab https://crontab.guru
|
||||||
tools/nix/debwiki https://wiki.debian.org
|
tools/nix/debwiki https://wiki.debian.org
|
||||||
@ -40,6 +42,7 @@ tools/nix/fedowiki https://docs.fedoraproject.org
|
|||||||
tools/nix/gentoowiki https://wiki.gentoo.org
|
tools/nix/gentoowiki https://wiki.gentoo.org
|
||||||
tools/regex101 https://regex101.com
|
tools/regex101 https://regex101.com
|
||||||
tools/speedtest https://www.speedtest.net
|
tools/speedtest https://www.speedtest.net
|
||||||
|
tools/xe https://www.xe.com
|
||||||
|
|
||||||
adm/facture.net https://www.facture.net
|
adm/facture.net https://www.facture.net
|
||||||
games/chess.com https://www.chess.com
|
games/chess.com https://www.chess.com
|
||||||
@ -83,8 +86,9 @@ tools/iso/fedora https://torrent.fedoraproject.org
|
|||||||
tools/iso/gmoker https://files.ovh.maby.dev/ISOs
|
tools/iso/gmoker https://files.ovh.maby.dev/ISOs
|
||||||
tools/iso/gparted https://gparted.org/download.php
|
tools/iso/gparted https://gparted.org/download.php
|
||||||
tools/iso/tails https://tails.net/install/download-iso/index.en.html
|
tools/iso/tails https://tails.net/install/download-iso/index.en.html
|
||||||
tools/iso/win11iotltsc https://www.microsoft.com/en-us/evalcenter/download-windows-11-iot-enterprise-ltsc-eval
|
tools/iso/win11iotltsc https://massgrave.dev/windows_ltsc_links
|
||||||
tools/iso/win2k25 https://www.microsoft.com/en-us/evalcenter/download-windows-server-2025
|
tools/iso/win2k25 https://massgrave.dev/windows_server_links
|
||||||
|
tools/localhost http://127.0.0.1
|
||||||
tools/memtest https://www.memtest.org
|
tools/memtest https://www.memtest.org
|
||||||
tools/namecheap https://www.namecheap.com
|
tools/namecheap https://www.namecheap.com
|
||||||
tools/nix/quickemu https://github.com/quickemu-project/quickemu
|
tools/nix/quickemu https://github.com/quickemu-project/quickemu
|
||||||
@ -92,6 +96,7 @@ tools/nix/virtio-win https://github.com/virtio-win/virtio-win-pkg-scr
|
|||||||
tools/nix/winapps https://github.com/winapps-org/winapps
|
tools/nix/winapps https://github.com/winapps-org/winapps
|
||||||
tools/nix/winfsp https://github.com/winfsp/winfsp
|
tools/nix/winfsp https://github.com/winfsp/winfsp
|
||||||
tools/nperf https://www.nperf.com
|
tools/nperf https://www.nperf.com
|
||||||
|
tools/router http://192.168.1.1
|
||||||
tools/semver https://semver.org
|
tools/semver https://semver.org
|
||||||
tools/ventoy https://github.com/ventoy/Ventoy/releases
|
tools/ventoy https://github.com/ventoy/Ventoy/releases
|
||||||
tools/win/adwcleaner https://www.malwarebytes.com/adwcleaner
|
tools/win/adwcleaner https://www.malwarebytes.com/adwcleaner
|
||||||
|
@ -19,6 +19,7 @@ bs = bisect
|
|||||||
c = commit --verbose
|
c = commit --verbose
|
||||||
ca = commit --verbose --all
|
ca = commit --verbose --all
|
||||||
cl = clone
|
cl = clone
|
||||||
|
cl1 = clone --depth 1
|
||||||
co = checkout
|
co = checkout
|
||||||
cp = cherry-pick
|
cp = cherry-pick
|
||||||
d = diff
|
d = diff
|
||||||
@ -30,11 +31,11 @@ ls = ls-files
|
|||||||
m = merge
|
m = merge
|
||||||
p = push
|
p = push
|
||||||
r = remote
|
r = remote
|
||||||
rso = remote show origin -n
|
|
||||||
rb = rebase
|
rb = rebase
|
||||||
rev = revert
|
rev = revert
|
||||||
rh = reset
|
rh = reset
|
||||||
rs = restore
|
rs = restore
|
||||||
|
rso = remote show origin -n
|
||||||
st = status
|
st = status
|
||||||
sta = stash
|
sta = stash
|
||||||
vi = difftool
|
vi = difftool
|
||||||
|
@ -11,12 +11,12 @@ image/tiff=feh.desktop
|
|||||||
image/webp=feh.desktop
|
image/webp=feh.desktop
|
||||||
|
|
||||||
# firefox
|
# firefox
|
||||||
application/xhtml+xml=org.mozilla.firefox.desktop
|
application/xhtml+xml=firefox.desktop
|
||||||
text/html=org.mozilla.firefox.desktop
|
text/html=firefox.desktop
|
||||||
text/mml=org.mozilla.firefox.desktop
|
text/mml=firefox.desktop
|
||||||
text/xml=org.mozilla.firefox.desktop
|
text/xml=firefox.desktop
|
||||||
x-scheme-handler/http=org.mozilla.firefox.desktop
|
x-scheme-handler/http=firefox.desktop
|
||||||
x-scheme-handler/https=org.mozilla.firefox.desktop
|
x-scheme-handler/https=firefox.desktop
|
||||||
|
|
||||||
# mpv
|
# mpv
|
||||||
audio/3gpp2=mpv.desktop
|
audio/3gpp2=mpv.desktop
|
||||||
|
@ -2,7 +2,6 @@ set menu-feed-sorting unread-desc
|
|||||||
set menu-item-sorting unread-desc
|
set menu-item-sorting unread-desc
|
||||||
set notification-command ''
|
set notification-command ''
|
||||||
set reload-period 60
|
set reload-period 60
|
||||||
set item-limit 100
|
|
||||||
|
|
||||||
bind V exec mpv "%l"
|
bind V exec mpv "%l"
|
||||||
bind q quit-hard
|
bind q quit-hard
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
vim.opt_local.shiftwidth = 2
|
|
||||||
vim.opt_local.tabstop = 2
|
|
@ -1,2 +0,0 @@
|
|||||||
vim.opt_local.shiftwidth = 2
|
|
||||||
vim.opt_local.tabstop = 2
|
|
1
.config/nvim/ftplugin/htmldjango.lua
Symbolic link
1
.config/nvim/ftplugin/htmldjango.lua
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
json.lua
|
@ -1,2 +1,3 @@
|
|||||||
vim.opt_local.shiftwidth = 2
|
vim.opt_local.shiftwidth = 2
|
||||||
vim.opt_local.tabstop = 2
|
vim.opt_local.tabstop = 2
|
||||||
|
vim.opt_local.listchars = vim.o.listchars .. ",leadmultispace:│ "
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
vim.opt_local.shiftwidth = 2
|
vim.opt_local.shiftwidth = 2
|
||||||
vim.opt_local.tabstop = 2
|
vim.opt_local.tabstop = 2
|
||||||
|
vim.opt_local.listchars = vim.o.listchars .. ",leadmultispace:│ "
|
||||||
|
|
||||||
vim.opt_local.spell = true
|
vim.opt_local.spell = true
|
||||||
|
|
||||||
|
@ -1,41 +1,44 @@
|
|||||||
vim.g.mapleader = " "
|
vim.g.mapleader = " "
|
||||||
vim.opt.expandtab = true
|
vim.opt.expandtab = true
|
||||||
vim.opt.smartindent = true
|
vim.opt.smartindent = true
|
||||||
vim.opt.shiftwidth = 4
|
vim.opt.shiftwidth = 0
|
||||||
vim.opt.tabstop = 4
|
vim.opt.tabstop = 4
|
||||||
vim.opt.cino = "(s"
|
vim.opt.cino = "(s"
|
||||||
vim.g.python_indent = { open_paren = "shiftwidth()" }
|
vim.g.python_indent = { open_paren = "shiftwidth()" }
|
||||||
vim.opt.list = true
|
vim.opt.list = true
|
||||||
vim.opt.listchars = { tab = "> ", trail = "-", nbsp = "+" }
|
vim.opt.listchars = {
|
||||||
|
leadmultispace = "│ ",
|
||||||
|
nbsp = "+",
|
||||||
|
tab = "> ",
|
||||||
|
trail = "-",
|
||||||
|
}
|
||||||
vim.opt.number = true
|
vim.opt.number = true
|
||||||
vim.opt.relativenumber = true
|
vim.opt.relativenumber = true
|
||||||
vim.opt.laststatus = 3
|
vim.opt.laststatus = 3
|
||||||
vim.opt.guicursor = ""
|
vim.opt.guicursor = ""
|
||||||
vim.opt.mousemodel = "extend"
|
vim.opt.mousemodel = "extend"
|
||||||
vim.opt.path = vim.o.path .. ",**"
|
vim.opt.path = vim.o.path .. ",**"
|
||||||
vim.opt.suffixes = vim.o.suffixes .. ",.pyc,.hi"
|
|
||||||
vim.opt.foldmethod = "indent"
|
vim.opt.foldmethod = "indent"
|
||||||
vim.opt.foldlevel = 99
|
vim.opt.foldlevel = 99
|
||||||
vim.opt.scrolloff = 2
|
vim.opt.scrolloff = 2
|
||||||
vim.opt.colorcolumn = "80"
|
vim.opt.colorcolumn = "80"
|
||||||
vim.g.netrw_banner = 0
|
vim.g.netrw_banner = 0
|
||||||
vim.g.netrw_list_hide = "\\.o$,\\.d$,\\.gc..$"
|
|
||||||
vim.opt.lazyredraw = true
|
vim.opt.lazyredraw = true
|
||||||
vim.opt.complete = vim.o.complete .. ",i"
|
vim.opt.complete = vim.o.complete .. ",i"
|
||||||
|
vim.opt.hlsearch = false
|
||||||
|
|
||||||
vim.g.go_recommended_style = 0
|
vim.g.go_recommended_style = 0
|
||||||
|
|
||||||
require"theme"
|
require"theme"
|
||||||
require"pack-lspconfig"
|
require"lsp"
|
||||||
require"pack-telescope"
|
require"pack-telescope"
|
||||||
require"pack-treesitter"
|
require"pack-treesitter"
|
||||||
|
|
||||||
vim.keymap.set("n", "<Leader>e", "<cmd>.w !$SHELL<CR>")
|
vim.keymap.set("n", "<Leader>e", "<cmd>.w !$SHELL<CR>")
|
||||||
vim.keymap.set("n", "<Leader>f", "<cmd>%s/\\s\\+$//e<CR>")
|
vim.keymap.set("n", "<Leader>s", "<cmd>%s/\\s\\+$//e<CR>")
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd({ "BufWinEnter" }, { callback = function()
|
vim.keymap.set("v", "<Leader>t", function()
|
||||||
vim.opt_local.listchars = vim.o.listchars ..
|
local sep = string.char(vim.fn.getchar())
|
||||||
",leadmultispace:│" .. string.rep(" ", vim.o.shiftwidth - 1)
|
|
||||||
end })
|
|
||||||
|
|
||||||
vim.keymap.set("x", "<Leader> ", "<cmd>'<,'>!tr -s ' ' | column -t -s '|' -o '|'<CR><ESC>")
|
return ":!column -t -s'" .. sep .. "' -o'" .. sep .. "'<CR>"
|
||||||
|
end, {expr = true})
|
||||||
|
6
.config/nvim/lua/lsp.lua
Normal file
6
.config/nvim/lua/lsp.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
vim.lsp.enable({"bashls", "gopls", "pyright"})
|
||||||
|
|
||||||
|
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev)
|
||||||
|
vim.keymap.set('n', ']d', vim.diagnostic.goto_next)
|
||||||
|
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration)
|
||||||
|
vim.keymap.set('n', 'gd', vim.lsp.buf.definition)
|
@ -1,28 +0,0 @@
|
|||||||
local lspconfig = require"lspconfig"
|
|
||||||
|
|
||||||
local on_attach = function(_, bufnr)
|
|
||||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
|
||||||
|
|
||||||
local opts = { buffer = bufnr, noremap = true, silent = true }
|
|
||||||
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts)
|
|
||||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts)
|
|
||||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts)
|
|
||||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, opts)
|
|
||||||
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, opts)
|
|
||||||
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, opts)
|
|
||||||
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, opts)
|
|
||||||
vim.keymap.set('n', '<space>wl', function()
|
|
||||||
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
|
||||||
end, opts)
|
|
||||||
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, opts)
|
|
||||||
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, opts)
|
|
||||||
vim.keymap.set('n', 'gr', vim.lsp.buf.references, opts)
|
|
||||||
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, opts)
|
|
||||||
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
|
|
||||||
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts)
|
|
||||||
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
lspconfig["bashls"].setup { on_attach = on_attach }
|
|
||||||
lspconfig["gopls"].setup { on_attach = on_attach }
|
|
||||||
lspconfig["pyright"].setup { on_attach = on_attach }
|
|
@ -1,14 +1,5 @@
|
|||||||
require"telescope".setup {
|
local t = require("telescope.builtin")
|
||||||
defaults = {
|
|
||||||
file_ignore_patterns = {
|
|
||||||
"\\.o$", "\\.d$", "\\.gc..$"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
local builtin = require("telescope.builtin")
|
vim.keymap.set("n", "<Leader>ff", t.find_files)
|
||||||
|
vim.keymap.set("n", "<Leader>fg", t.live_grep)
|
||||||
vim.keymap.set("n", "<Leader>tf", builtin.find_files, {})
|
vim.keymap.set("n", "<Leader>fb", t.buffers)
|
||||||
vim.keymap.set("n", "<Leader>tg", builtin.live_grep, {})
|
|
||||||
vim.keymap.set("n", "<Leader>tb", builtin.buffers, {})
|
|
||||||
vim.keymap.set("n", "<Leader>th", builtin.help_tags, {})
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
local theme = require"onedark"
|
local theme = require"onedark"
|
||||||
|
|
||||||
theme.setup {
|
theme.setup {
|
||||||
style = "dark",
|
style = "dark",
|
||||||
transparent = true
|
transparent = true
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 98a740254775ad32b62a9760565e3a472b325a5d
|
Subproject commit c819ff1192867d5d1c9927d2995fb65c4e5c4a58
|
@ -1 +1 @@
|
|||||||
Subproject commit a6f3bde7efc9eae6500b35d5e5cc51971ae9a331
|
Subproject commit 29ff98e2d84221630f5f76550a38fa1b5272d4b8
|
@ -15,7 +15,7 @@ if [ -z "$q" ]; then
|
|||||||
elif [[ "$q" == *://* ]]; then
|
elif [[ "$q" == *://* ]]; then
|
||||||
url="${q/*+( )/}"
|
url="${q/*+( )/}"
|
||||||
|
|
||||||
exec xdg-open "$url"
|
exec $BROWSER "$url"
|
||||||
fi
|
fi
|
||||||
if [[ "$q" =~ ^[^[:space:]]+(\.[^[:space:]]+)+$ ]]; then
|
if [[ "$q" =~ ^[^[:space:]]+(\.[^[:space:]]+)+$ ]]; then
|
||||||
exec $BROWSER "$q"
|
exec $BROWSER "$q"
|
||||||
|
@ -23,7 +23,7 @@ def main():
|
|||||||
FORMAT.format(
|
FORMAT.format(
|
||||||
symbol=j["symbol"].upper(),
|
symbol=j["symbol"].upper(),
|
||||||
price=j["market_data"]["current_price"][CURRENCY],
|
price=j["market_data"]["current_price"][CURRENCY],
|
||||||
trend=j["market_data"]["price_change_percentage_24h"],
|
trend=j["market_data"]["price_change_percentage_7d"],
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
function dkr() {
|
dkr() {
|
||||||
local ep="$1"; shift
|
local ep="$1"; shift
|
||||||
|
|
||||||
(set -x
|
(set -x
|
||||||
@ -10,9 +10,8 @@ function dkr() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
declare -A aliases=(
|
declare -A aliases=(
|
||||||
[arch]=docker.io/archlinux/archlinux:base
|
[arch]=quay.io/archlinux/archlinux:base
|
||||||
[debian]=docker.io/debian:12-slim
|
[debian]=docker.io/debian:12-slim
|
||||||
[flutter]=git.gmoker.com/icing/flutter:main
|
|
||||||
[kaniko]=gcr.io/kaniko-project/executor:debug
|
[kaniko]=gcr.io/kaniko-project/executor:debug
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -2,9 +2,18 @@
|
|||||||
|
|
||||||
output="$HOME/Videos/ffcapture$(date '+%Y%m%d_%H%M%S').mp4"
|
output="$HOME/Videos/ffcapture$(date '+%Y%m%d_%H%M%S').mp4"
|
||||||
|
|
||||||
ffmpeg \
|
video=(
|
||||||
-framerate 30 \
|
-f x11grab
|
||||||
-f x11grab -i "$DISPLAY.0" -c:v libx265 \
|
-i "$DISPLAY.0"
|
||||||
"$output"
|
)
|
||||||
|
|
||||||
# -f pulse -i # sink
|
audio=(
|
||||||
|
-f pulse
|
||||||
|
-i default
|
||||||
|
)
|
||||||
|
|
||||||
|
ffmpeg \
|
||||||
|
-framerate 10 \
|
||||||
|
"${video[@]}" \
|
||||||
|
"${audio[@]}" \
|
||||||
|
"$output"
|
||||||
|
@ -9,7 +9,7 @@ sites=(
|
|||||||
'https://web.whatsapp.com'
|
'https://web.whatsapp.com'
|
||||||
)
|
)
|
||||||
|
|
||||||
function update() {
|
update() {
|
||||||
local start='^/\*---- USER PREFERENCES ----\*/$'
|
local start='^/\*---- USER PREFERENCES ----\*/$'
|
||||||
local end='^/\*---- END USER PREFERENCES ----\*/$'
|
local end='^/\*---- END USER PREFERENCES ----\*/$'
|
||||||
local af userpref
|
local af userpref
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
function scrypto() {
|
scrypto() {
|
||||||
local tmp
|
local tmp
|
||||||
|
|
||||||
tmp="$(crypto 2> /dev/null)" && echo "$tmp" > crypto
|
tmp="$(crypto 2> /dev/null)" && echo "$tmp" > crypto
|
||||||
}
|
}
|
||||||
|
|
||||||
function scpu() {
|
scpu() {
|
||||||
echo " $(awk '{print $1}' /proc/loadavg)" > cpu
|
echo " $(awk '{print $1}' /proc/loadavg)" > cpu
|
||||||
}
|
}
|
||||||
|
|
||||||
function smemory() {
|
smemory() {
|
||||||
echo " $(free -h | awk '/^Mem:/{print $3}')" > memory
|
echo " $(free -h | awk '/^Mem:/{print $3}')" > memory
|
||||||
}
|
}
|
||||||
|
|
||||||
function sbat() {
|
sbat() {
|
||||||
local cap; cap="$(cat /sys/class/power_supply/BAT0/capacity)"
|
local cap; cap="$(cat /sys/class/power_supply/BAT0/capacity)"
|
||||||
|
|
||||||
if grep -qv Discharging /sys/class/power_supply/BAT0/status; then
|
if grep -qv Discharging /sys/class/power_supply/BAT0/status; then
|
||||||
@ -24,7 +24,7 @@ function sbat() {
|
|||||||
fi > bat
|
fi > bat
|
||||||
}
|
}
|
||||||
|
|
||||||
function svol() {
|
svol() {
|
||||||
local st v m vol=('' ' ') mut=('🔇' ' ')
|
local st v m vol=('' ' ') mut=('🔇' ' ')
|
||||||
|
|
||||||
mapfile -t st <<< "$(wpctl status | sed -n 's/.*\*.*\[vol: \(.*\)]/\1/p')"
|
mapfile -t st <<< "$(wpctl status | sed -n 's/.*\*.*\[vol: \(.*\)]/\1/p')"
|
||||||
@ -41,7 +41,7 @@ function svol() {
|
|||||||
done > vol
|
done > vol
|
||||||
}
|
}
|
||||||
|
|
||||||
function snet() {
|
snet() {
|
||||||
local dev j ssid sig
|
local dev j ssid sig
|
||||||
|
|
||||||
dev="$(ip route | grep -oP 'default.*dev\s+\K[^\s]+')"
|
dev="$(ip route | grep -oP 'default.*dev\s+\K[^\s]+')"
|
||||||
@ -66,7 +66,7 @@ function snet() {
|
|||||||
esac > net
|
esac > net
|
||||||
}
|
}
|
||||||
|
|
||||||
function svpn() {
|
svpn() {
|
||||||
local v; v="$(ip -br link show type wireguard | awk '{print $1}')"
|
local v; v="$(ip -br link show type wireguard | awk '{print $1}')"
|
||||||
|
|
||||||
if [ -n "$v" ]; then
|
if [ -n "$v" ]; then
|
||||||
@ -74,22 +74,22 @@ function svpn() {
|
|||||||
fi > vpn
|
fi > vpn
|
||||||
}
|
}
|
||||||
|
|
||||||
function stz() {
|
stz() {
|
||||||
local tmp ip; ip="$(ip route | grep -oP '^default.*src\s+\K[^\s]+')"
|
local tmp ip; ip="$(ip route | grep -oP '^default.*src\s+\K[^\s]+')"
|
||||||
|
|
||||||
if [ "$ip" != "$(cat ip)" ]; then
|
if ! [ -s tz ] || [ "$ip" != "$(cat ip)" ]; then
|
||||||
tmp="$(curl -s --interface wlan0 'https://ipapi.co/timezone')" \
|
tmp="$(curl -s --interface wlan0 'https://ipapi.co/timezone')" \
|
||||||
&& echo "$tmp" > tz
|
&& echo "$tmp" > tz
|
||||||
echo "$ip" > ip
|
echo "$ip" > ip
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function stime() {
|
stime() {
|
||||||
# shellcheck disable=SC2238
|
# shellcheck disable=SC2238
|
||||||
TZ="$(cat tz)" date '+%a %m-%d %R%:::z' > time
|
TZ="$(cat tz)" date '+%a %m-%d %R%:::z' > time
|
||||||
}
|
}
|
||||||
|
|
||||||
function display() {
|
display() {
|
||||||
for f in *; do
|
for f in *; do
|
||||||
local - "$f"="$(cat "$f")"
|
local - "$f"="$(cat "$f")"
|
||||||
done
|
done
|
||||||
|
@ -6,7 +6,7 @@ case "$1" in
|
|||||||
*) exit 1 ;;
|
*) exit 1 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
function update_vol() {
|
update_vol() {
|
||||||
# shellcheck disable=SC2017
|
# shellcheck disable=SC2017
|
||||||
case "$1" in
|
case "$1" in
|
||||||
+*|-*) CUR=$((CUR + $1 - CUR % $1 + CUR % $1 * 10 / $1 / 5 * $1)) ;;
|
+*|-*) CUR=$((CUR + $1 - CUR % $1 + CUR % $1 * 10 / $1 / 5 * $1)) ;;
|
||||||
|
@ -3,18 +3,18 @@
|
|||||||
json="$(pw-dump)"
|
json="$(pw-dump)"
|
||||||
fmt='"\(.id) \(.info.props."node.nick")"'
|
fmt='"\(.id) \(.info.props."node.nick")"'
|
||||||
|
|
||||||
function _jq() {
|
_jq() {
|
||||||
jq -r "$*" <<< "$json"
|
jq -r "$*" <<< "$json"
|
||||||
}
|
}
|
||||||
|
|
||||||
function getdev() {
|
getdev() {
|
||||||
local d
|
local d
|
||||||
|
|
||||||
d="$(_jq ".[].metadata | select(.)[] | select(.key == \"default.configured.audio.$1\").value.name")"
|
d="$(_jq ".[].metadata | select(.)[] | select(.key == \"default.configured.audio.$1\").value.name")"
|
||||||
_jq ".[] | select(.info.props.\"node.name\" == \"$d\") | $fmt"
|
_jq ".[] | select(.info.props.\"node.name\" == \"$d\") | $fmt"
|
||||||
}
|
}
|
||||||
|
|
||||||
function getdevs() {
|
getdevs() {
|
||||||
_jq ".[] | select(.info.props.\"media.class\" == \"Audio/$1\") | $fmt"
|
_jq ".[] | select(.info.props.\"media.class\" == \"Audio/$1\") | $fmt"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -25,7 +25,11 @@ case "$1" in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
dev="$(getdev "${CLASS,,}")"
|
dev="$(getdev "${CLASS,,}")"
|
||||||
devs="$(getdevs "$CLASS" | grep -v "$dev")"$'\n'"* $dev"
|
if [ -n "$dev" ]; then
|
||||||
|
devs="$(getdevs "$CLASS" | grep -v "$dev")"$'\n'"* $dev"
|
||||||
|
else
|
||||||
|
devs="$(getdevs "$CLASS")"
|
||||||
|
fi
|
||||||
|
|
||||||
read -r id <<< "$(dmenu -l 16 <<< "$devs" | sed 's/*//')"
|
read -r id <<< "$(dmenu -l 16 <<< "$devs" | sed 's/*//')"
|
||||||
wpctl set-default "$id"
|
wpctl set-default "$id"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# vim: ft=bash
|
# vim: ft=bash
|
||||||
|
|
||||||
function _ddev() {
|
_ddev() {
|
||||||
cache="/tmp/${FUNCNAME[0]}"
|
cache="/tmp/${FUNCNAME[0]}"
|
||||||
|
|
||||||
if ! [ -f "$cache" ]; then
|
if ! [ -f "$cache" ]; then
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# vim: ft=bash
|
# vim: ft=bash
|
||||||
|
|
||||||
function _gi() {
|
_gi() {
|
||||||
cache="/tmp/${FUNCNAME[0]}"
|
cache="/tmp/${FUNCNAME[0]}"
|
||||||
|
|
||||||
if ! [ -f "$cache" ]; then
|
if ! [ -f "$cache" ]; then
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# vim: ft=bash
|
# vim: ft=bash
|
||||||
|
|
||||||
function _kctx() {
|
_kctx() {
|
||||||
[ "$COMP_CWORD" -ne 1 ] && return
|
[ "$COMP_CWORD" -ne 1 ] && return
|
||||||
mapfile -t COMPREPLY < <(compgen -W \
|
mapfile -t COMPREPLY < <(compgen -W \
|
||||||
"$(kubectl config get-contexts -o name)" \
|
"$(kubectl config get-contexts -o name)" \
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# vim: ft=bash
|
# vim: ft=bash
|
||||||
|
|
||||||
function _kns() {
|
_kns() {
|
||||||
[ "$COMP_CWORD" -ne 1 ] && return
|
[ "$COMP_CWORD" -ne 1 ] && return
|
||||||
mapfile -t COMPREPLY < <(compgen -W \
|
mapfile -t COMPREPLY < <(compgen -W \
|
||||||
"$(kubectl get namespace -o jsonpath='{..metadata.name}')" \
|
"$(kubectl get namespace -o jsonpath='{..metadata.name}')" \
|
||||||
|
@ -1256,6 +1256,7 @@ user_pref("browser.tabs.hoverPreview.showThumbnails", false);
|
|||||||
user_pref("browser.tabs.inTitlebar", 0);
|
user_pref("browser.tabs.inTitlebar", 0);
|
||||||
user_pref("browser.toolbars.bookmarks.visibility", "never");
|
user_pref("browser.toolbars.bookmarks.visibility", "never");
|
||||||
user_pref("browser.uiCustomization.state", "{\"placements\":{\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\",\"ublock0_raymondhill_net-browser-action\",\"unified-extensions-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\"]},\"currentVersion\":21}");
|
user_pref("browser.uiCustomization.state", "{\"placements\":{\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\",\"ublock0_raymondhill_net-browser-action\",\"unified-extensions-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\"]},\"currentVersion\":21}");
|
||||||
|
user_pref("browser.urlbar.suggest.openpage", false);
|
||||||
user_pref("browser.urlbar.suggest.topsites", false);
|
user_pref("browser.urlbar.suggest.topsites", false);
|
||||||
user_pref("browser.zoom.siteSpecific", false);
|
user_pref("browser.zoom.siteSpecific", false);
|
||||||
user_pref("extensions.formautofill.addresses.enabled", false);
|
user_pref("extensions.formautofill.addresses.enabled", false);
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
# vim: nowrap
|
# vim: nowrap
|
||||||
|
cashier.cocoonlovina.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPcWvRwzoeGGTZ4hEhHo1IHxUIKsnpnEx5AUudGnq+ZN
|
||||||
git.gmoker.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDgTtgsVL6fT12EJXUtuGfQra/jG8411Bm8n0kxqt+z8ELNSmaAXMQ5J9WZpK96fU1EaOwBRYJr885Cj7z9hjNkyadbO058huleEI5my91Vtk9lsB1DpdjG1V07uvPyOqrxy2dk/BtRzvzTUrf3B1oAnNJu6ntz73c7t2IiEfsm6z8KqTOKtgbU6D7BnskovVSRP3lS1phSFjzJWKfkGfxyQlOVH/woTSp5G4cYDI6pz+aG3ideHaWE6Ls8yC+76KbVjnUAPHCGk4zUWrqCp2iVVek+13hl7oyp3fwSOIyGzW+x6288PvAgkVTmgRBuTU0VXUgjxJImVAqZFqz0h9X44F2y2quBRXra0f8NXb5uPID1jmP73dudJC3wXie/QW+aQTF6rKAVq750HseQum7HZoD+s8Qg8t1ROxyVqYkes35JjblkRm1+Mips1mZozjwYuAsX8P24z/u2R07Y1fACYr0gX4iIGQSU+ie42n1/33xK2W1HGb4zrsu3RptxQp2rpNsYZ+9NO3VWqaWUbhIyFfyd+jEh8tzCbUvRySSmK5kTSGzTU07flhLehqgKWeWiI+Q4xrg0SLpLLFZJKHc0+935xD9jRNW+FXhOU1ud7nUCRnBlvo0Wp/yKjcU1ycJKt7cmaAwprHGg5KnOAzszAvRVMWAzw6ICyTQmTSY/fQ==
|
git.gmoker.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDgTtgsVL6fT12EJXUtuGfQra/jG8411Bm8n0kxqt+z8ELNSmaAXMQ5J9WZpK96fU1EaOwBRYJr885Cj7z9hjNkyadbO058huleEI5my91Vtk9lsB1DpdjG1V07uvPyOqrxy2dk/BtRzvzTUrf3B1oAnNJu6ntz73c7t2IiEfsm6z8KqTOKtgbU6D7BnskovVSRP3lS1phSFjzJWKfkGfxyQlOVH/woTSp5G4cYDI6pz+aG3ideHaWE6Ls8yC+76KbVjnUAPHCGk4zUWrqCp2iVVek+13hl7oyp3fwSOIyGzW+x6288PvAgkVTmgRBuTU0VXUgjxJImVAqZFqz0h9X44F2y2quBRXra0f8NXb5uPID1jmP73dudJC3wXie/QW+aQTF6rKAVq750HseQum7HZoD+s8Qg8t1ROxyVqYkes35JjblkRm1+Mips1mZozjwYuAsX8P24z/u2R07Y1fACYr0gX4iIGQSU+ie42n1/33xK2W1HGb4zrsu3RptxQp2rpNsYZ+9NO3VWqaWUbhIyFfyd+jEh8tzCbUvRySSmK5kTSGzTU07flhLehqgKWeWiI+Q4xrg0SLpLLFZJKHc0+935xD9jRNW+FXhOU1ud7nUCRnBlvo0Wp/yKjcU1ycJKt7cmaAwprHGg5KnOAzszAvRVMWAzw6ICyTQmTSY/fQ==
|
||||||
git.maby.dev ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCy6Vljjd9lVRmXjwhxuRopFTALb18I1rVzeyr8X6g1BIvl8PE8EBBeWgJ673pmzdA1KMFbJ5uMah5Cz5oqeXJi/cqneKW5sFiIlRB+/epOGPBHbfDNQOsv+vR1qt+N++SjuP59E2846JEM5G7380eb4iOTSzkPwgv4zEPIIWYzMO4jmHytrsmKU7mKOqbaRYXAc9pqJBJ3K0uvsCBSydCVwICv6ykfex+kPyBxU2o52NgHvrq7vgn4eREy1Fnt4HG8GT46/3H48HOr6zbB43sS3JiMxVNWK2YU3IBGeuo5PMkUBzuWx/GB33W5Pc2GTARoW11T63SZ/EBlJQyRozwD4UzJkJJRtYn//WZLimz9KFMV50Wc9o+Lcfz/xshTfgCn0B9rac1XzsBjJ0riMqyx+6UWjizrrtJtkhhEfobKcws1wRi/I+lWJM08th8DKUMKT599CjjiESFqX1QvfABYt56FDDORskYZRLi2AYeIPsLmLYxmjh9NVu3CcNNPsFmu2xqCWp5Symd6DMSpzejnwL0rWdm1kdPBLLRaOnp/EmwaRVFt98K4XaFA7hHd10NxAoQlG50yUfTo0fsngedpWYKwMsLjatgozjoB6eQAxkVGs4MaGgSwYyn5jrmYnFeAzLPCWL6kzd4dmnvrDi2SCcOWRL0+LNF1ltOw/+U7sw==
|
git.maby.dev ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCy6Vljjd9lVRmXjwhxuRopFTALb18I1rVzeyr8X6g1BIvl8PE8EBBeWgJ673pmzdA1KMFbJ5uMah5Cz5oqeXJi/cqneKW5sFiIlRB+/epOGPBHbfDNQOsv+vR1qt+N++SjuP59E2846JEM5G7380eb4iOTSzkPwgv4zEPIIWYzMO4jmHytrsmKU7mKOqbaRYXAc9pqJBJ3K0uvsCBSydCVwICv6ykfex+kPyBxU2o52NgHvrq7vgn4eREy1Fnt4HG8GT46/3H48HOr6zbB43sS3JiMxVNWK2YU3IBGeuo5PMkUBzuWx/GB33W5Pc2GTARoW11T63SZ/EBlJQyRozwD4UzJkJJRtYn//WZLimz9KFMV50Wc9o+Lcfz/xshTfgCn0B9rac1XzsBjJ0riMqyx+6UWjizrrtJtkhhEfobKcws1wRi/I+lWJM08th8DKUMKT599CjjiESFqX1QvfABYt56FDDORskYZRLi2AYeIPsLmLYxmjh9NVu3CcNNPsFmu2xqCWp5Symd6DMSpzejnwL0rWdm1kdPBLLRaOnp/EmwaRVFt98K4XaFA7hHd10NxAoQlG50yUfTo0fsngedpWYKwMsLjatgozjoB6eQAxkVGs4MaGgSwYyn5jrmYnFeAzLPCWL6kzd4dmnvrDi2SCcOWRL0+LNF1ltOw/+U7sw==
|
||||||
github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
|
github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
|
||||||
|
Loading…
Reference in New Issue
Block a user