update dotfiles
This commit is contained in:
@@ -1,109 +0,0 @@
|
|||||||
7zip
|
|
||||||
acpi
|
|
||||||
adwaita-cursors
|
|
||||||
alsa-utils
|
|
||||||
auto-cpufreq
|
|
||||||
base
|
|
||||||
base-devel
|
|
||||||
bat
|
|
||||||
biber
|
|
||||||
blueman
|
|
||||||
bluetui
|
|
||||||
bluez
|
|
||||||
bluez-utils
|
|
||||||
brightnessctl
|
|
||||||
btop
|
|
||||||
btrfs-progs
|
|
||||||
cursor-bin
|
|
||||||
dhcpcd
|
|
||||||
direnv
|
|
||||||
driftwm
|
|
||||||
efivar
|
|
||||||
eza
|
|
||||||
file-roller
|
|
||||||
firefox
|
|
||||||
fish
|
|
||||||
fuse3
|
|
||||||
fuzzel
|
|
||||||
fzf
|
|
||||||
git
|
|
||||||
grim
|
|
||||||
gvfs-mtp
|
|
||||||
gvfs-smb
|
|
||||||
hiddify
|
|
||||||
intel-ucode
|
|
||||||
iwd
|
|
||||||
kitty
|
|
||||||
less
|
|
||||||
libfido2
|
|
||||||
linux
|
|
||||||
linux-firmware
|
|
||||||
mako
|
|
||||||
minecraft-launcher
|
|
||||||
ncdu
|
|
||||||
nemo
|
|
||||||
nemo-fileroller
|
|
||||||
nemo-image-converter
|
|
||||||
nemo-preview
|
|
||||||
nemo-seahorse
|
|
||||||
nemo-share
|
|
||||||
neovim
|
|
||||||
networkmanager
|
|
||||||
ntfs-3g
|
|
||||||
nwg-look
|
|
||||||
orca
|
|
||||||
pavucontrol
|
|
||||||
pipewire-alsa
|
|
||||||
pipewire-pulse
|
|
||||||
plymouth
|
|
||||||
plymouth-theme-connect-git
|
|
||||||
plymouth-theme-cuts-alt-git
|
|
||||||
polkit-gnome
|
|
||||||
powertop
|
|
||||||
pulsemixer
|
|
||||||
python-pip
|
|
||||||
ripgrep
|
|
||||||
seahorse
|
|
||||||
slurp
|
|
||||||
socat
|
|
||||||
spotify
|
|
||||||
stow
|
|
||||||
syncthing
|
|
||||||
telegram-desktop
|
|
||||||
texlive-basic
|
|
||||||
texlive-bibtexextra
|
|
||||||
texlive-binextra
|
|
||||||
texlive-fontsextra
|
|
||||||
texlive-fontsrecommended
|
|
||||||
texlive-langcyrillic
|
|
||||||
texlive-latexextra
|
|
||||||
texlive-latexrecommended
|
|
||||||
texlive-luatex
|
|
||||||
texlive-mathscience
|
|
||||||
texlive-pictures
|
|
||||||
texlive-publishers
|
|
||||||
texlive-xetex
|
|
||||||
thermald
|
|
||||||
tree
|
|
||||||
unrar
|
|
||||||
vicinae
|
|
||||||
vim
|
|
||||||
virtualbox
|
|
||||||
virtualbox-host-modules-arch
|
|
||||||
visual-studio-code-bin
|
|
||||||
waybar
|
|
||||||
wayvnc
|
|
||||||
wget
|
|
||||||
wl-clipboard
|
|
||||||
wlr-randr
|
|
||||||
wpa_supplicant
|
|
||||||
xdg-user-dirs
|
|
||||||
xorg-xset
|
|
||||||
xorg-xwayland
|
|
||||||
yay
|
|
||||||
yay-debug
|
|
||||||
yazi
|
|
||||||
zed
|
|
||||||
zen-browser-bin
|
|
||||||
zenity
|
|
||||||
zoxide
|
|
||||||
@@ -12,7 +12,15 @@ focus_follows_mouse = true
|
|||||||
|
|
||||||
# Commands to run at startup (after WAYLAND_DISPLAY is set).
|
# Commands to run at startup (after WAYLAND_DISPLAY is set).
|
||||||
# Each entry is passed to sh -c, so full shell syntax works (pipes, &&, env vars).
|
# Each entry is passed to sh -c, so full shell syntax works (pipes, &&, env vars).
|
||||||
autostart = [ "vicinae server", "waybar -c ~/.config/waybar/driftwm/config.jsonc", "hiddify", "gnome-keyring-daemon --start --components=secrets"]
|
autostart = [
|
||||||
|
"vicinae server",
|
||||||
|
"waybar -c ~/.config/waybar/driftwm/config.jsonc",
|
||||||
|
#"hiddify",
|
||||||
|
"gnome-keyring-daemon --start --components=secrets"
|
||||||
|
]
|
||||||
|
|
||||||
|
#window_placement = "cursor"
|
||||||
|
window_placement = "auto"
|
||||||
|
|
||||||
# Environment variables set before any clients launch.
|
# Environment variables set before any clients launch.
|
||||||
# Child processes (autostart, exec bindings) inherit these.
|
# Child processes (autostart, exec bindings) inherit these.
|
||||||
@@ -74,9 +82,9 @@ zone = 100.0 # activation zone width (px from viewport edge)
|
|||||||
[zoom]
|
[zoom]
|
||||||
# step = 1.1 # multiplier per keypress (1.1 = 10% per press)
|
# step = 1.1 # multiplier per keypress (1.1 = 10% per press)
|
||||||
# fit_padding = 100.0 # canvas px padding for zoom-to-fit
|
# fit_padding = 100.0 # canvas px padding for zoom-to-fit
|
||||||
# reset_on_new_window = true # animate zoom to 1.0 when a new window is mapped
|
reset_on_new_window = false # animate zoom to 1.0 when a new window is mapped
|
||||||
# # (false = keep current zoom, pan only)
|
# # (false = keep current zoom, pan only)
|
||||||
# reset_on_activation = true # animate zoom to 1.0 when an off-screen window
|
reset_on_activation = false # animate zoom to 1.0 when an off-screen window
|
||||||
# # requests focus
|
# # requests focus
|
||||||
# # (false = keep current zoom, pan only)
|
# # (false = keep current zoom, pan only)
|
||||||
|
|
||||||
@@ -176,11 +184,12 @@ tile_path = "/home/krosh/Downloads/loop-pile-carpet-hexagonal-2400-mm-architextu
|
|||||||
"ctrl+space" = "exec vicinae toggle"
|
"ctrl+space" = "exec vicinae toggle"
|
||||||
#"mod+d" = "exec vicinae toggle"
|
#"mod+d" = "exec vicinae toggle"
|
||||||
"mod+e" = "exec nemo"
|
"mod+e" = "exec nemo"
|
||||||
|
"mod+s" = "exec spotify"
|
||||||
"ctrl+5" = "exec Telegram"
|
"ctrl+5" = "exec Telegram"
|
||||||
# "mod+d" = "exec "
|
# "mod+d" = "exec "
|
||||||
# "mod+q" = "close-window"
|
# "mod+q" = "close-window"
|
||||||
# "mod+f" = "toggle-fullscreen"
|
# "mod+f" = "toggle-fullscreen"
|
||||||
# "mod+m" = "fit-window"
|
"mod+d" = "fit-window"
|
||||||
# "mod+c" = "center-window"
|
# "mod+c" = "center-window"
|
||||||
# "mod+x" = "focus-center"
|
# "mod+x" = "focus-center"
|
||||||
# "mod+a" = "home-toggle"
|
# "mod+a" = "home-toggle"
|
||||||
@@ -329,6 +338,13 @@ position = [0, 0]
|
|||||||
name = "eDP-1" # connector name (required)
|
name = "eDP-1" # connector name (required)
|
||||||
position = [1920, 0]
|
position = [1920, 0]
|
||||||
|
|
||||||
|
|
||||||
|
[[outputs]]
|
||||||
|
name = "DP-5"
|
||||||
|
#scale = 1.0
|
||||||
|
#mode = "1920x1080@60"
|
||||||
|
position = [0, 0]
|
||||||
|
|
||||||
# Window rules: match windows by app_id and/or title and apply overrides.
|
# Window rules: match windows by app_id and/or title and apply overrides.
|
||||||
# At least one of app_id or title is required. Both support * glob.
|
# At least one of app_id or title is required. Both support * glob.
|
||||||
# To find an app's app_id: cat $XDG_RUNTIME_DIR/driftwm/state (see "windows=" line)
|
# To find an app's app_id: cat $XDG_RUNTIME_DIR/driftwm/state (see "windows=" line)
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[fish-ai]
|
||||||
|
configuration = self-hosted
|
||||||
|
|
||||||
|
[self-hosted]
|
||||||
|
provider = self-hosted
|
||||||
|
server = http://100.100.1.2:11434/v1
|
||||||
|
model = gemma4:e4b
|
||||||
@@ -0,0 +1,273 @@
|
|||||||
|
##
|
||||||
|
## Supported major.minor versions of Python.
|
||||||
|
## Unit tests are run in CI against these versions.
|
||||||
|
##
|
||||||
|
set -g _fish_ai_supported_versions 3.10 3.11 3.12 3.13 3.14
|
||||||
|
|
||||||
|
set -g _fish_ai_install_dir (test -z "$XDG_DATA_HOME"; and echo "$HOME/.local/share/fish-ai"; or echo "$XDG_DATA_HOME/fish-ai")
|
||||||
|
set -g _fish_ai_config_path (test -z "$XDG_CONFIG_HOME"; and echo "$HOME/.config/fish-ai.ini"; or echo "$XDG_CONFIG_HOME/fish-ai.ini")
|
||||||
|
|
||||||
|
##
|
||||||
|
## This section creates the keybindings for fish-ai. Modify your `fish-ai.ini`
|
||||||
|
## and restart the terminal emulator to change the keybindings from their defaults.
|
||||||
|
##
|
||||||
|
function _fish_ai_bind --description "Create keybindings for fish-ai."
|
||||||
|
if test -n ("$_fish_ai_install_dir/bin/lookup_setting" keymap_1)
|
||||||
|
"$_fish_ai_install_dir/bin/lookup_setting" keymap_1 | string unescape | read -g -a _fish_ai_keymap_1
|
||||||
|
else
|
||||||
|
# prefer fish key names above fish 4.x
|
||||||
|
if string match -r '^[0-3]\.' "$FISH_VERSION" &>/dev/null
|
||||||
|
set -g _fish_ai_keymap_1 \cp
|
||||||
|
else
|
||||||
|
set -g _fish_ai_keymap_1 ctrl-p
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if test -n ("$_fish_ai_install_dir/bin/lookup_setting" keymap_2)
|
||||||
|
"$_fish_ai_install_dir/bin/lookup_setting" keymap_2 | string unescape | read -g -a _fish_ai_keymap_2
|
||||||
|
else
|
||||||
|
# prefer fish key names above fish 4.x
|
||||||
|
if string match -r '^[0-3]\.' "$FISH_VERSION" &>/dev/null
|
||||||
|
set -g _fish_ai_keymap_2 -k nul
|
||||||
|
else
|
||||||
|
set -g _fish_ai_keymap_2 ctrl-space
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if test "$fish_key_bindings" = fish_vi_key_bindings
|
||||||
|
set -g _fish_ai_bind_command bind -M insert
|
||||||
|
else
|
||||||
|
set -g _fish_ai_bind_command bind
|
||||||
|
end
|
||||||
|
bind -M insert $_fish_ai_keymap_1 _fish_ai_codify_or_explain
|
||||||
|
bind $_fish_ai_keymap_1 _fish_ai_codify_or_explain
|
||||||
|
bind -M insert $_fish_ai_keymap_2 _fish_ai_autocomplete_or_fix
|
||||||
|
bind $_fish_ai_keymap_2 _fish_ai_autocomplete_or_fix
|
||||||
|
end
|
||||||
|
|
||||||
|
if status is-interactive && test -d "$_fish_ai_install_dir"
|
||||||
|
_fish_ai_bind
|
||||||
|
end
|
||||||
|
|
||||||
|
##
|
||||||
|
## This section contains the plugin lifecycle hooks invoked by the fisher package
|
||||||
|
## manager.
|
||||||
|
##
|
||||||
|
function _fish_ai_install --on-event fish_ai_install
|
||||||
|
_fish_ai_set_python_version
|
||||||
|
if type -q uv
|
||||||
|
echo "🥡 Setting up a virtual environment using uv..."
|
||||||
|
uv venv --quiet --seed --python $_fish_ai_python_version "$_fish_ai_install_dir"
|
||||||
|
else
|
||||||
|
echo "🥡 Setting up a virtual environment using venv..."
|
||||||
|
python$_fish_ai_python_version -m venv "$_fish_ai_install_dir"
|
||||||
|
end
|
||||||
|
if test $status -ne 0
|
||||||
|
echo "💔 Installation failed. Check previous terminal output for details."
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
echo "🍬 Installing dependencies. This may take a few seconds..."
|
||||||
|
"$_fish_ai_install_dir/bin/pip" -qq install "$(_fish_ai_get_installation_url)"
|
||||||
|
if test $status -ne 0
|
||||||
|
echo "💔 Installation from '$(_fish_ai_get_installation_url)' failed. Check previous terminal output for details."
|
||||||
|
return 2
|
||||||
|
end
|
||||||
|
_fish_ai_python_version_check
|
||||||
|
_fish_ai_symlink_truststore
|
||||||
|
_fish_ai_autoconfig_gh_models
|
||||||
|
_fish_ai_bind
|
||||||
|
if ! test -f "$_fish_ai_config_path"
|
||||||
|
echo "🤗 You must create a configuration file before the plugin can be used!"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_update --on-event fish_ai_update
|
||||||
|
# Upgrade to fish-ai 1.9.0
|
||||||
|
if test -d "$HOME/.fish-ai"
|
||||||
|
echo "👷 Moving installation directory to '$_fish_ai_install_dir'."
|
||||||
|
mv "$HOME/.fish-ai" "$_fish_ai_install_dir"
|
||||||
|
end
|
||||||
|
if test -f "$HOME/.config/fish-ai.ini"
|
||||||
|
if test "$_fish_ai_config_path" != "$HOME/.config/fish-ai.ini"
|
||||||
|
echo "👷 Moving configuration file to '$_fish_ai_config_path'."
|
||||||
|
mv "$HOME/.config/fish-ai.ini" "$_fish_ai_config_path"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
# Upgrade to fish-ai 2.0.0
|
||||||
|
set -l provider ("$_fish_ai_install_dir/bin/lookup_setting" provider)
|
||||||
|
if test "$provider" = huggingface
|
||||||
|
echo "🌇 The provider for Hugging Face has been removed. Switch to a different provider."
|
||||||
|
end
|
||||||
|
# Upgrade to fish-ai 2.3.0
|
||||||
|
if test -n "$FISH_AI_KEYMAP_1"
|
||||||
|
echo "👷 Migrating custom keybinding FISH_AI_KEYMAP_1 to '$_fish_ai_config_path'."
|
||||||
|
"$_fish_ai_install_dir/bin/put_setting" fish-ai keymap_1 (echo -n "$FISH_AI_KEYMAP_1" | string escape)
|
||||||
|
set -e -Ug FISH_AI_KEYMAP_1
|
||||||
|
end
|
||||||
|
if test -n "$FISH_AI_KEYMAP_2"
|
||||||
|
echo "👷 Migrating custom keybinding FISH_AI_KEYMAP_2 to '$_fish_ai_config_path'."
|
||||||
|
"$_fish_ai_install_dir/bin/put_setting" fish-ai keymap_2 (echo -n "$FISH_AI_KEYMAP_2" | string escape)
|
||||||
|
set -e -Ug FISH_AI_KEYMAP_2
|
||||||
|
end
|
||||||
|
# Upgrade to fish-ai 2.8.0
|
||||||
|
if test -f "$_fish_ai_config_path"
|
||||||
|
if grep -q '^temperature\s*=' "$_fish_ai_config_path"
|
||||||
|
sed -i '/^temperature\s*=/d' "$_fish_ai_config_path"
|
||||||
|
echo "🌇 The 'temperature' parameter is no longer supported and has been removed from your configuration."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
# Upgrade to fish-ai 2.10.6
|
||||||
|
if test "$provider" = cohere
|
||||||
|
set -l model ("$_fish_ai_install_dir/bin/lookup_setting" model)
|
||||||
|
if test -z "$model"
|
||||||
|
echo "👋 Please specify the Cohere model you want to use in '$_fish_ai_config_path'."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
# Upgrade to fish-ai 2.13.0
|
||||||
|
if grep -qE 'provider\s*=\s*"?mistral"?' "$_fish_ai_config_path"
|
||||||
|
echo "🍿 Migrating the Mistral AI provider to OpenAI SDK."
|
||||||
|
sed -i -E 's|^provider\s*=\s*"?mistral"?|provider = self-hosted\nserver = https://api.mistral.ai/v1|g' "$_fish_ai_config_path"
|
||||||
|
end
|
||||||
|
|
||||||
|
_fish_ai_set_python_version
|
||||||
|
if type -q uv
|
||||||
|
uv venv --quiet --clear --seed --python $_fish_ai_python_version "$_fish_ai_install_dir"
|
||||||
|
else
|
||||||
|
python$_fish_ai_python_version -m venv --upgrade "$_fish_ai_install_dir"
|
||||||
|
end
|
||||||
|
if test $status -ne 0
|
||||||
|
echo "💔 Installation failed. Check previous terminal output for details."
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
echo "🐍 Now using $($_fish_ai_install_dir/bin/python3 --version)."
|
||||||
|
echo "🍬 Upgrading dependencies. This may take a few seconds..."
|
||||||
|
$_fish_ai_install_dir/bin/pip install -qq --upgrade "$(_fish_ai_get_installation_url)"
|
||||||
|
if test $status -ne 0
|
||||||
|
echo "💔 Installation failed. Check previous terminal output for details."
|
||||||
|
return 2
|
||||||
|
end
|
||||||
|
_fish_ai_python_version_check
|
||||||
|
_fish_ai_symlink_truststore
|
||||||
|
_fish_ai_warn_plaintext_api_keys
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_uninstall --on-event fish_ai_uninstall
|
||||||
|
if test -d "$_fish_ai_install_dir"
|
||||||
|
echo "💣 Nuking the virtual environment..."
|
||||||
|
rm -r "$_fish_ai_install_dir"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_set_python_version
|
||||||
|
if test -n "$FISH_AI_PYTHON_VERSION"
|
||||||
|
echo "🐍 Using Python $FISH_AI_PYTHON_VERSION as specified by the environment variable 'FISH_AI_PYTHON_VERSION'."
|
||||||
|
set -g _fish_ai_python_version $FISH_AI_PYTHON_VERSION
|
||||||
|
else if type -q uv
|
||||||
|
# Use the last supported version of Python
|
||||||
|
set -g _fish_ai_python_version $_fish_ai_supported_versions[-1]
|
||||||
|
else
|
||||||
|
# Use the Python version provided by the system
|
||||||
|
set -g _fish_ai_python_version 3
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_get_installation_url
|
||||||
|
set -f plugin (fisher list "fish-ai")
|
||||||
|
if test "$plugin" = ""
|
||||||
|
# fish-ai may be installed from an unknown source, assume
|
||||||
|
# that the Python packages can be installed from the
|
||||||
|
# current working directory.
|
||||||
|
echo -n (pwd)
|
||||||
|
else if test (string sub --start 1 --length 1 "$plugin") = /
|
||||||
|
# Install from a local folder (most likely a git clone)
|
||||||
|
echo -n "$plugin"
|
||||||
|
else
|
||||||
|
# Install from GitHub
|
||||||
|
echo -n "fish-ai@git+https://github.com/$plugin"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_python_version_check
|
||||||
|
set -f current_python_version ("$_fish_ai_install_dir/bin/python3" -c 'import platform; major, minor, _ = platform.python_version_tuple(); print(major, end="."); print(minor, end="")')
|
||||||
|
if ! contains $current_python_version $_fish_ai_supported_versions
|
||||||
|
echo "🔔 This plugin has not been tested with Python $_fish_ai_python_version and may not function correctly."
|
||||||
|
echo "The following versions are supported: $_fish_ai_supported_versions"
|
||||||
|
echo "Consider setting the environment variable 'FISH_AI_PYTHON_VERSION' to a supported version and reinstalling the plugin. For example:"
|
||||||
|
set_color --italics blue
|
||||||
|
echo ""
|
||||||
|
echo " fisher remove realiserad/fish-ai"
|
||||||
|
echo " set -U FISH_AI_PYTHON_VERSION $_fish_ai_supported_versions[-1]"
|
||||||
|
echo " fisher install realiserad/fish-ai"
|
||||||
|
echo ""
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_symlink_truststore --description "Use the bundle with CA certificates trusted by the OS."
|
||||||
|
if test -f /etc/ssl/certs/ca-certificates.crt
|
||||||
|
echo "🔑 Symlinking to certificates stored in /etc/ssl/certs/ca-certificates.crt."
|
||||||
|
ln -snf /etc/ssl/certs/ca-certificates.crt ("$_fish_ai_install_dir/bin/python3" -c 'import certifi; print(certifi.where())')
|
||||||
|
else if test -f /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
|
||||||
|
echo "🔑 Symlinking to certificates stored in /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem."
|
||||||
|
ln -snf /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem ("$_fish_ai_install_dir/bin/python3" -c 'import certifi; print(certifi.where())')
|
||||||
|
else if test -f /etc/ssl/cert.pem
|
||||||
|
echo "🔑 Symlinking to certificates stored in /etc/ssl/cert.pem."
|
||||||
|
ln -snf /etc/ssl/cert.pem ("$_fish_ai_install_dir/bin/python3" -c 'import certifi; print(certifi.where())')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_warn_plaintext_api_keys --description "Warn about plaintext API keys."
|
||||||
|
if ! test -f "$_fish_ai_config_path"
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if grep -q "^api_key" "$_fish_ai_config_path"
|
||||||
|
echo -n "🚨 One or more plaintext API keys are stored in "
|
||||||
|
set_color --bold red
|
||||||
|
echo -n "$_fish_ai_config_path"
|
||||||
|
set_color normal
|
||||||
|
echo -n ". Consider moving them to your keyring using "
|
||||||
|
set_color --italics blue
|
||||||
|
echo -n fish_ai_put_api_key
|
||||||
|
set_color normal
|
||||||
|
echo "."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_autoconfig_gh_models --description "Deploy configuration for GitHub Models."
|
||||||
|
if test -f "$_fish_ai_config_path"
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if ! type -q gh
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if test -z (gh auth token 2>/dev/null)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if test -z (gh ext ls | grep "gh models" 2>/dev/null)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
echo "[fish-ai]" >>"$_fish_ai_config_path"
|
||||||
|
echo "configuration = github" >>"$_fish_ai_config_path"
|
||||||
|
echo "" >>"$_fish_ai_config_path"
|
||||||
|
echo "[github]" >>"$_fish_ai_config_path"
|
||||||
|
echo "provider = self-hosted" >>"$_fish_ai_config_path"
|
||||||
|
echo "server = https://models.github.ai/inference" >>"$_fish_ai_config_path"
|
||||||
|
echo "api_key = $(gh auth token)" >>"$_fish_ai_config_path"
|
||||||
|
echo "model = gpt-4o-mini" >>"$_fish_ai_config_path"
|
||||||
|
|
||||||
|
echo "😺 Access to GitHub Models has been automatically configured for you!"
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fish_ai_show_progress_indicator --description "Show a progress indicator."
|
||||||
|
if type -q fish_right_prompt
|
||||||
|
set -f rplen (string length -v (fish_right_prompt)[-1])
|
||||||
|
else
|
||||||
|
set -f rplen 0
|
||||||
|
end
|
||||||
|
# Get the progress indicator from the configuration, use hourglass emoji if not set
|
||||||
|
set -f progress_indicator ("$_fish_ai_install_dir/bin/lookup_setting" progress_indicator '⏳')
|
||||||
|
set -f pilen (string length "$progress_indicator")
|
||||||
|
# Move the cursor to the end of the line and insert progress indicator
|
||||||
|
tput hpa (math $COLUMNS - $rplen - 1 - $pilen)
|
||||||
|
echo -n "$progress_indicator"
|
||||||
|
end
|
||||||
@@ -10,12 +10,29 @@ end
|
|||||||
|
|
||||||
if status is-interactive
|
if status is-interactive
|
||||||
alias ls="eza --icons --group-directories-first"
|
alias ls="eza --icons --group-directories-first"
|
||||||
|
alias c="clear"
|
||||||
|
alias cc="cybervis -m neural -c arctic -s 5 -d 8 --no-status"
|
||||||
|
|
||||||
function __ls_after_cd --on-variable PWD
|
function __ls_after_cd --on-variable PWD
|
||||||
ls
|
ls
|
||||||
end
|
end
|
||||||
|
|
||||||
|
pfetch
|
||||||
# Commands to run in interactive sessions can go here
|
# Commands to run in interactive sessions can go here
|
||||||
end
|
end
|
||||||
|
|
||||||
zoxide init fish --cmd cd | source
|
zoxide init fish --cmd cd | source
|
||||||
|
starship init fish | source
|
||||||
|
|
||||||
|
set EDITOR nvim
|
||||||
|
set PATH $PATH:/home/krosh/.local/bin
|
||||||
|
|
||||||
|
# Added by LM Studio CLI (lms)
|
||||||
|
set -gx PATH $PATH /home/krosh/.lmstudio/bin
|
||||||
|
# End of LM Studio CLI section
|
||||||
|
|
||||||
|
|
||||||
|
thefuck --alias | source
|
||||||
|
|
||||||
|
# Created by `pipx` on 2026-05-18 21:21:55
|
||||||
|
set PATH $PATH /home/krosh/.local/bin
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
realiserad/fish-ai
|
||||||
@@ -1,3 +1,7 @@
|
|||||||
# This file contains fish universal variable definitions.
|
# This file contains fish universal variable definitions.
|
||||||
# VERSION: 3.0
|
# VERSION: 3.0
|
||||||
SETUVAR __fish_initialized:4300
|
SETUVAR __fish_initialized:4300
|
||||||
|
SETUVAR _fisher_plugins:realiserad/fish\x2dai
|
||||||
|
SETUVAR _fisher_realiserad_2F_fish_2D_ai_files:\x7e/\x2econfig/fish/functions/_fish_ai_autocomplete\x2efish\x1e\x7e/\x2econfig/fish/functions/_fish_ai_autocomplete_or_fix\x2efish\x1e\x7e/\x2econfig/fish/functions/_fish_ai_codify\x2efish\x1e\x7e/\x2econfig/fish/functions/_fish_ai_codify_or_explain\x2efish\x1e\x7e/\x2econfig/fish/functions/_fish_ai_explain\x2efish\x1e\x7e/\x2econfig/fish/functions/_fish_ai_fix\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_ai_bug_report\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_ai_put_api_key\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_ai_switch_context\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/fish_ai\x2efish
|
||||||
|
SETUVAR _fisher_upgraded_to_4_4:\x1d
|
||||||
|
SETUVAR fish_greeting:
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_autocomplete --description "Autocomplete the current command using AI." --argument-names command cursor_position
|
||||||
|
if test ("$_fish_ai_install_dir/bin/lookup_setting" "debug") = True
|
||||||
|
set -f selected_completion ("$_fish_ai_install_dir/bin/autocomplete" "$command" "$cursor_position" | \
|
||||||
|
string collect)
|
||||||
|
else
|
||||||
|
set -f selected_completion ("$_fish_ai_install_dir/bin/autocomplete" "$command" "$cursor_position" | \
|
||||||
|
string collect 2> /dev/null)
|
||||||
|
end
|
||||||
|
printf '%s' "$selected_completion"
|
||||||
|
end
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_autocomplete_or_fix --description "Autocomplete the current command or fix the previous command using AI."
|
||||||
|
set -f previous_status (string join '+' $pipestatus | math)
|
||||||
|
|
||||||
|
set -f input (commandline --current-buffer | string collect)
|
||||||
|
|
||||||
|
_fish_ai_show_progress_indicator
|
||||||
|
|
||||||
|
if test -z "$input" && test $previous_status -ne 0
|
||||||
|
# Fix the previous command.
|
||||||
|
set -l previous_command (history | head -1)
|
||||||
|
set -l output (_fish_ai_fix "$previous_command" | string collect)
|
||||||
|
commandline --replace "$output"
|
||||||
|
else if test -n "$input"
|
||||||
|
# Autocomplete the current command.
|
||||||
|
set -l cursor_position (commandline --cursor)
|
||||||
|
set -l output (_fish_ai_autocomplete "$input" "$cursor_position" | string collect)
|
||||||
|
set -l completion_length (math (string length "$output") - (string length "$input"))
|
||||||
|
commandline --replace "$output"
|
||||||
|
commandline --cursor (math $cursor_position + $completion_length)
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline -f repaint
|
||||||
|
end
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_codify --description "Turn a comment into a command using AI." --argument-names comment
|
||||||
|
if test ("$_fish_ai_install_dir/bin/lookup_setting" "debug") = True
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/codify" "$comment" | \
|
||||||
|
fish_indent | \
|
||||||
|
string collect)
|
||||||
|
else
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/codify" "$comment" | \
|
||||||
|
fish_indent | \
|
||||||
|
string collect 2> /dev/null)
|
||||||
|
end
|
||||||
|
printf '%s' "$output"
|
||||||
|
end
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_codify_or_explain --description "Transform a command into a comment and vice versa using AI."
|
||||||
|
set -f input (commandline --current-buffer | string collect)
|
||||||
|
|
||||||
|
if test -z "$input"
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
_fish_ai_show_progress_indicator
|
||||||
|
|
||||||
|
if string match -q "# *" (string trim "$input")
|
||||||
|
set -f output (_fish_ai_codify "$input" | string collect)
|
||||||
|
else
|
||||||
|
set -f output (_fish_ai_explain "$input" | string collect)
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --replace "$output"
|
||||||
|
|
||||||
|
commandline -f repaint
|
||||||
|
end
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_explain --description "Turn a command into a comment using AI." --argument-names command
|
||||||
|
if test ("$_fish_ai_install_dir/bin/lookup_setting" "debug") = True
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/explain" "$command" | \
|
||||||
|
string collect)
|
||||||
|
else
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/explain" "$command" | \
|
||||||
|
string collect 2> /dev/null)
|
||||||
|
end
|
||||||
|
echo -n "$output"
|
||||||
|
end
|
||||||
+10
@@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function _fish_ai_fix --description "Fix a command using AI." --argument-names previous_command
|
||||||
|
if test ("$_fish_ai_install_dir/bin/lookup_setting" "debug") = True
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/fix" "$previous_command")
|
||||||
|
else
|
||||||
|
set -f output ("$_fish_ai_install_dir/bin/fix" "$previous_command" 2> /dev/null)
|
||||||
|
end
|
||||||
|
echo -n "$output"
|
||||||
|
end
|
||||||
@@ -0,0 +1,184 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function fish_ai_bug_report
|
||||||
|
print_header Environment
|
||||||
|
print_environment
|
||||||
|
|
||||||
|
print_header "Key bindings"
|
||||||
|
print_key_bindings
|
||||||
|
|
||||||
|
print_header "Proxy settings"
|
||||||
|
print_proxy_settings
|
||||||
|
|
||||||
|
print_header Dependencies
|
||||||
|
print_dependencies
|
||||||
|
|
||||||
|
print_header "Fish plugins"
|
||||||
|
print_fish_plugins
|
||||||
|
|
||||||
|
print_header Configuration
|
||||||
|
print_configuration
|
||||||
|
|
||||||
|
print_header "Functionality tests"
|
||||||
|
perform_functionality_tests
|
||||||
|
|
||||||
|
print_header "Compatibility check"
|
||||||
|
perform_compatibility_check
|
||||||
|
|
||||||
|
print_header "Logs from the last session"
|
||||||
|
print_logs
|
||||||
|
|
||||||
|
if test "$_fish_ai_error_found" = true
|
||||||
|
echo "❌ Problems were found (see output above for details)."
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_header --argument-names title
|
||||||
|
set_color --bold blue
|
||||||
|
echo "$title"
|
||||||
|
echo ""
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_proxy_settings
|
||||||
|
# https://www.python-httpx.org/environment_variables
|
||||||
|
set proxy_variables (string join '|' 'HTTP_PROXY' 'HTTPS_PROXY' 'ALL_PROXY' 'NO_PROXY')
|
||||||
|
if test (env | grep -qiE "$proxy_variables")
|
||||||
|
env | grep -iE "$proxy_variables"
|
||||||
|
else
|
||||||
|
echo "No proxy is configured."
|
||||||
|
end
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_environment
|
||||||
|
if test -f /etc/os-release
|
||||||
|
echo "Running on $(cat /etc/os-release | grep PRETTY | cut -d= -f2 | tr -d '\"')"
|
||||||
|
echo "Machine hardware: $(uname -m)"
|
||||||
|
else if type -q sw_vers
|
||||||
|
echo "Running on macOS $(sw_vers --productVersion)"
|
||||||
|
echo "Machine hardware: $(uname -m)"
|
||||||
|
else
|
||||||
|
echo "❌ Running on an unsupported platform."
|
||||||
|
set -g _fish_ai_error_found true
|
||||||
|
end
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_key_bindings
|
||||||
|
bind | grep --color=never _fish_ai
|
||||||
|
echo ""
|
||||||
|
echo "Key bindings in use: $fish_key_bindings"
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_dependencies
|
||||||
|
if ! test -d "$_fish_ai_install_dir"
|
||||||
|
echo "❌ The virtual environment '$_fish_ai_install_dir' does not exist."
|
||||||
|
set -g _fish_ai_error_found true
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
if type -q uv
|
||||||
|
echo "😎 This system has uv installed."
|
||||||
|
end
|
||||||
|
echo "Python version used by fish-ai: $($_fish_ai_install_dir/bin/python3 --version)"
|
||||||
|
if type -q python3
|
||||||
|
echo "Python version used by the system: $(python3 --version)"
|
||||||
|
end
|
||||||
|
fish --version
|
||||||
|
fisher --version
|
||||||
|
git --version
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
"$_fish_ai_install_dir/bin/pip" list
|
||||||
|
if ! test ("$_fish_ai_install_dir/bin/pip" list | grep fish_ai)
|
||||||
|
echo "❌ The Python package 'fish_ai' could not be found."
|
||||||
|
set -g _fish_ai_error_found true
|
||||||
|
end
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_fish_plugins
|
||||||
|
fisher list
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_configuration
|
||||||
|
if ! test -f "$_fish_ai_config_path"
|
||||||
|
echo "😕 The configuration file '$_fish_ai_config_path' does not exist."
|
||||||
|
else
|
||||||
|
# Remove api_key and password from the configuration
|
||||||
|
# password is no longer used but may be present in old configurations
|
||||||
|
sed /api_key/d "$_fish_ai_config_path" | sed /password/d
|
||||||
|
end
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function perform_functionality_tests
|
||||||
|
if ! test -f "$_fish_ai_config_path"
|
||||||
|
echo "😴 No configuration available. Skipping."
|
||||||
|
echo ""
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
echo "🔥 Running functionality tests..."
|
||||||
|
|
||||||
|
set -l start (date +%s)
|
||||||
|
set -l result (_fish_ai_codify 'print the current date')
|
||||||
|
set -l duration (math (date +%s) - $start)
|
||||||
|
echo "codify 'print the current date' -> '$result' (in $duration seconds)"
|
||||||
|
|
||||||
|
set -l start (date +%s)
|
||||||
|
set -l result (_fish_ai_explain 'date' | \
|
||||||
|
string trim --chars '# ' | \
|
||||||
|
string shorten --max 50)
|
||||||
|
set -l duration (math (date +%s) - $start)
|
||||||
|
echo "explain 'date' -> '$result' (in $duration seconds)"
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function perform_compatibility_check
|
||||||
|
set -f current_python_version ("$_fish_ai_install_dir/bin/python3" -c 'import platform; major, minor, _ = platform.python_version_tuple(); print(major, end="."); print(minor, end="")')
|
||||||
|
if ! contains $current_python_version $_fish_ai_supported_versions
|
||||||
|
echo "🔔 This plugin has not been tested with Python $_fish_ai_python_version and may not function correctly."
|
||||||
|
echo "The following versions are supported: $_fish_ai_supported_versions"
|
||||||
|
set -g _fish_ai_error_found true
|
||||||
|
else
|
||||||
|
echo "👍 Python $_fish_ai_python_version is supported."
|
||||||
|
end
|
||||||
|
echo ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_logs
|
||||||
|
set -f log_file ("$_fish_ai_install_dir/bin/lookup_setting" log)
|
||||||
|
if ! test -f "$log_file"
|
||||||
|
echo "😴 No log file available."
|
||||||
|
echo "Enable with '$_fish_ai_install_dir/bin/put_setting fish-ai log /tmp/fish-ai.log'."
|
||||||
|
return
|
||||||
|
end
|
||||||
|
print_last_section "$log_file"
|
||||||
|
if test ("$_fish_ai_install_dir/bin/lookup_setting" debug) != True
|
||||||
|
echo ""
|
||||||
|
echo "🙏 Consider enabling debug mode to get more log output."
|
||||||
|
echo "Turn on with '$_fish_ai_install_dir/bin/put_setting fish-ai debug True'."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function print_last_section --argument-names log_file
|
||||||
|
set -l len (wc -l $log_file | awk '{ print $1 }')
|
||||||
|
for i in (seq $len -1 1)
|
||||||
|
set -l line (sed -n "$i p" "$log_file")
|
||||||
|
if test "$line" = "----- BEGIN SESSION -----"
|
||||||
|
for j in (seq $i $len)
|
||||||
|
echo (sed -n "$j p" "$log_file")
|
||||||
|
end
|
||||||
|
return
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function fish_ai_put_api_key --description "Put an API key on the user's keyring."
|
||||||
|
"$_fish_ai_install_dir/bin/put_api_key"
|
||||||
|
end
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function fish_ai_switch_context --description "Interactively switch to a different context."
|
||||||
|
"$_fish_ai_install_dir/bin/switch_context"
|
||||||
|
end
|
||||||
@@ -27,6 +27,16 @@ map ctrl+plus change_font_size all +1.0
|
|||||||
map ctrl+minus change_font_size all -1.0
|
map ctrl+minus change_font_size all -1.0
|
||||||
map ctrl+0 change_font_size all 0
|
map ctrl+0 change_font_size all 0
|
||||||
|
|
||||||
|
map ctrl+e launch --location=vsplit --cwd=current yazi
|
||||||
|
|
||||||
|
enabled_layouts splits
|
||||||
|
# Custom split keybindings
|
||||||
|
map ctrl+backslash launch --location=vsplit
|
||||||
|
map ctrl+shift+backslash launch --location=hsplit
|
||||||
|
map ctrl+] next_window
|
||||||
|
map ctrl+[ previous_window
|
||||||
|
map ctrl+q close_window
|
||||||
|
|
||||||
map ctrl+c copy_and_clear_or_interrupt
|
map ctrl+c copy_and_clear_or_interrupt
|
||||||
map ctrl+v paste_from_clipboard
|
map ctrl+v paste_from_clipboard
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ application/x-extension-xhtml=zen.desktop
|
|||||||
application/x-extension-xht=zen.desktop
|
application/x-extension-xht=zen.desktop
|
||||||
inode/directory=nemo.desktop
|
inode/directory=nemo.desktop
|
||||||
application/x-gnome-saved-search=nemo.desktop
|
application/x-gnome-saved-search=nemo.desktop
|
||||||
|
x-scheme-handler/mtslinkchats=mtslink.desktop
|
||||||
|
|
||||||
[Added Associations]
|
[Added Associations]
|
||||||
x-scheme-handler/http=zen.desktop;
|
x-scheme-handler/http=zen.desktop;
|
||||||
|
|||||||
@@ -0,0 +1,334 @@
|
|||||||
|
# version: 1.0.0
|
||||||
|
"$schema" = 'https://starship.rs/config-schema.json'
|
||||||
|
|
||||||
|
add_newline = true
|
||||||
|
continuation_prompt = "[▸▹ ](dimmed white)"
|
||||||
|
|
||||||
|
format = """($nix_shell$container$fill$git_metrics\n)$cmd_duration\
|
||||||
|
$hostname\
|
||||||
|
$localip\
|
||||||
|
$shlvl\
|
||||||
|
$shell\
|
||||||
|
$env_var\
|
||||||
|
$jobs\
|
||||||
|
$sudo\
|
||||||
|
$username\
|
||||||
|
$character"""
|
||||||
|
|
||||||
|
right_format = """
|
||||||
|
$singularity\
|
||||||
|
$kubernetes\
|
||||||
|
$directory\
|
||||||
|
$vcsh\
|
||||||
|
$fossil_branch\
|
||||||
|
$git_branch\
|
||||||
|
$git_commit\
|
||||||
|
$git_state\
|
||||||
|
$git_status\
|
||||||
|
$hg_branch\
|
||||||
|
$pijul_channel\
|
||||||
|
$docker_context\
|
||||||
|
$package\
|
||||||
|
$c\
|
||||||
|
$cpp\
|
||||||
|
$cmake\
|
||||||
|
$cobol\
|
||||||
|
$daml\
|
||||||
|
$dart\
|
||||||
|
$deno\
|
||||||
|
$dotnet\
|
||||||
|
$elixir\
|
||||||
|
$elm\
|
||||||
|
$erlang\
|
||||||
|
$fennel\
|
||||||
|
$fortran\
|
||||||
|
$golang\
|
||||||
|
$guix_shell\
|
||||||
|
$haskell\
|
||||||
|
$haxe\
|
||||||
|
$helm\
|
||||||
|
$java\
|
||||||
|
$julia\
|
||||||
|
$kotlin\
|
||||||
|
$gradle\
|
||||||
|
$lua\
|
||||||
|
$maven\
|
||||||
|
$nim\
|
||||||
|
$nodejs\
|
||||||
|
$bun\
|
||||||
|
$ocaml\
|
||||||
|
$opa\
|
||||||
|
$perl\
|
||||||
|
$php\
|
||||||
|
$pulumi\
|
||||||
|
$purescript\
|
||||||
|
$python\
|
||||||
|
$raku\
|
||||||
|
$rlang\
|
||||||
|
$red\
|
||||||
|
$ruby\
|
||||||
|
$rust\
|
||||||
|
$scala\
|
||||||
|
$solidity\
|
||||||
|
$swift\
|
||||||
|
$terraform\
|
||||||
|
$vlang\
|
||||||
|
$vagrant\
|
||||||
|
$xmake\
|
||||||
|
$zig\
|
||||||
|
$buf\
|
||||||
|
$conda\
|
||||||
|
$pixi\
|
||||||
|
$meson\
|
||||||
|
$spack\
|
||||||
|
$memory_usage\
|
||||||
|
$aws\
|
||||||
|
$gcloud\
|
||||||
|
$openstack\
|
||||||
|
$azure\
|
||||||
|
$crystal\
|
||||||
|
$custom\
|
||||||
|
$status\
|
||||||
|
$os\
|
||||||
|
$battery\
|
||||||
|
$time"""
|
||||||
|
|
||||||
|
[fill]
|
||||||
|
symbol = ' '
|
||||||
|
|
||||||
|
[character]
|
||||||
|
format = "$symbol "
|
||||||
|
success_symbol = "[◎](bold italic bright-yellow)"
|
||||||
|
error_symbol = "[○](italic purple)"
|
||||||
|
vimcmd_symbol = "[■](italic dimmed green)"
|
||||||
|
# not supported in zsh
|
||||||
|
vimcmd_replace_one_symbol = "◌"
|
||||||
|
vimcmd_replace_symbol = "□"
|
||||||
|
vimcmd_visual_symbol = "▼"
|
||||||
|
|
||||||
|
[env_var.VIMSHELL]
|
||||||
|
format = "[$env_value]($style)"
|
||||||
|
style = 'green italic'
|
||||||
|
|
||||||
|
[sudo]
|
||||||
|
format = "[$symbol]($style)"
|
||||||
|
style = "bold italic bright-purple"
|
||||||
|
symbol = "⋈┈"
|
||||||
|
disabled = false
|
||||||
|
|
||||||
|
[username]
|
||||||
|
style_user = "bright-yellow bold italic"
|
||||||
|
style_root = "purple bold italic"
|
||||||
|
format = "[⭘ $user]($style) "
|
||||||
|
disabled = false
|
||||||
|
show_always = false
|
||||||
|
|
||||||
|
[directory]
|
||||||
|
home_symbol = "⌂"
|
||||||
|
truncation_length = 2
|
||||||
|
truncation_symbol = "□ "
|
||||||
|
read_only = " ◈"
|
||||||
|
use_os_path_sep = true
|
||||||
|
style = "italic blue"
|
||||||
|
format = '[$path]($style)[$read_only]($read_only_style)'
|
||||||
|
repo_root_style = 'bold blue'
|
||||||
|
repo_root_format = '[$before_root_path]($before_repo_root_style)[$repo_root]($repo_root_style)[$path]($style)[$read_only]($read_only_style) [△](bold bright-blue)'
|
||||||
|
|
||||||
|
[cmd_duration]
|
||||||
|
format = "[◄ $duration ](italic white)"
|
||||||
|
|
||||||
|
[jobs]
|
||||||
|
format = "[$symbol$number]($style) "
|
||||||
|
style = "white"
|
||||||
|
symbol = "[▶](blue italic)"
|
||||||
|
|
||||||
|
[localip]
|
||||||
|
ssh_only = true
|
||||||
|
format = " ◯[$localipv4](bold magenta)"
|
||||||
|
disabled = false
|
||||||
|
|
||||||
|
[time]
|
||||||
|
disabled = false
|
||||||
|
format = "[ $time]($style)"
|
||||||
|
time_format = "%R"
|
||||||
|
utc_time_offset = "local"
|
||||||
|
style = "italic dimmed white"
|
||||||
|
|
||||||
|
[battery]
|
||||||
|
format = "[ $percentage $symbol]($style)"
|
||||||
|
full_symbol = "█"
|
||||||
|
charging_symbol = "[↑](italic bold green)"
|
||||||
|
discharging_symbol = "↓"
|
||||||
|
unknown_symbol = "░"
|
||||||
|
empty_symbol = "▃"
|
||||||
|
|
||||||
|
[[battery.display]]
|
||||||
|
threshold = 20
|
||||||
|
style = "italic bold red"
|
||||||
|
|
||||||
|
[[battery.display]]
|
||||||
|
threshold = 60
|
||||||
|
style = "italic dimmed bright-purple"
|
||||||
|
|
||||||
|
[[battery.display]]
|
||||||
|
threshold = 70
|
||||||
|
style = "italic dimmed yellow"
|
||||||
|
|
||||||
|
[git_branch]
|
||||||
|
format = " [$branch(:$remote_branch)]($style)"
|
||||||
|
symbol = "[△](bold italic bright-blue)"
|
||||||
|
style = "italic bright-blue"
|
||||||
|
truncation_symbol = "⋯"
|
||||||
|
truncation_length = 11
|
||||||
|
ignore_branches = ["main", "master"]
|
||||||
|
only_attached = true
|
||||||
|
|
||||||
|
[git_metrics]
|
||||||
|
format = '([▴$added]($added_style))([▿$deleted]($deleted_style))'
|
||||||
|
added_style = 'italic dimmed green'
|
||||||
|
deleted_style = 'italic dimmed red'
|
||||||
|
ignore_submodules = true
|
||||||
|
disabled = false
|
||||||
|
|
||||||
|
[git_status]
|
||||||
|
style = "bold italic bright-blue"
|
||||||
|
format = "([⎪$ahead_behind$staged$modified$untracked$renamed$deleted$conflicted$stashed⎥]($style))"
|
||||||
|
conflicted = "[◪◦](italic bright-magenta)"
|
||||||
|
ahead = "[▴│[${count}](bold white)│](italic green)"
|
||||||
|
behind = "[▿│[${count}](bold white)│](italic red)"
|
||||||
|
diverged = "[◇ ▴┤[${ahead_count}](regular white)│▿┤[${behind_count}](regular white)│](italic bright-magenta)"
|
||||||
|
untracked = "[◌◦](italic bright-yellow)"
|
||||||
|
stashed = "[◃◈](italic white)"
|
||||||
|
modified = "[●◦](italic yellow)"
|
||||||
|
staged = "[▪┤[$count](bold white)│](italic bright-cyan)"
|
||||||
|
renamed = "[◎◦](italic bright-blue)"
|
||||||
|
deleted = "[✕](italic red)"
|
||||||
|
|
||||||
|
[deno]
|
||||||
|
format = " [deno](italic) [∫ $version](green bold)"
|
||||||
|
version_format = "${raw}"
|
||||||
|
|
||||||
|
[lua]
|
||||||
|
format = " [lua](italic) [${symbol}${version}]($style)"
|
||||||
|
version_format = "${raw}"
|
||||||
|
symbol = "⨀ "
|
||||||
|
style = "bold bright-yellow"
|
||||||
|
|
||||||
|
[nodejs]
|
||||||
|
format = " [node](italic) [◫ ($version)](bold bright-green)"
|
||||||
|
version_format = "${raw}"
|
||||||
|
detect_files = ["package-lock.json", "yarn.lock"]
|
||||||
|
detect_folders = ["node_modules"]
|
||||||
|
detect_extensions = []
|
||||||
|
|
||||||
|
[bun]
|
||||||
|
format = " [bun](italic) [◫ ($version)](bold bright-green)"
|
||||||
|
version_format = "${raw}"
|
||||||
|
|
||||||
|
[python]
|
||||||
|
format = " [py](italic) [${symbol}${version}]($style)"
|
||||||
|
symbol = "[⌉](bold bright-blue)⌊ "
|
||||||
|
version_format = "${raw}"
|
||||||
|
style = "bold bright-yellow"
|
||||||
|
|
||||||
|
[ruby]
|
||||||
|
format = " [rb](italic) [${symbol}${version}]($style)"
|
||||||
|
symbol = "◆ "
|
||||||
|
version_format = "${raw}"
|
||||||
|
style = "bold red"
|
||||||
|
|
||||||
|
[rust]
|
||||||
|
format = " [rs](italic) [$symbol$version]($style)"
|
||||||
|
symbol = "⊃ "
|
||||||
|
version_format = "${raw}"
|
||||||
|
style = "bold red"
|
||||||
|
|
||||||
|
[package]
|
||||||
|
format = " [pkg](italic dimmed) [$symbol$version]($style)"
|
||||||
|
version_format = "${raw}"
|
||||||
|
symbol = "◨ "
|
||||||
|
style = "dimmed yellow italic bold"
|
||||||
|
|
||||||
|
[swift]
|
||||||
|
format = " [sw](italic) [${symbol}${version}]($style)"
|
||||||
|
symbol = "◁ "
|
||||||
|
style = "bold bright-red"
|
||||||
|
version_format = "${raw}"
|
||||||
|
|
||||||
|
[aws]
|
||||||
|
disabled = true
|
||||||
|
format = " [aws](italic) [$symbol $profile $region]($style)"
|
||||||
|
style = "bold blue"
|
||||||
|
symbol = "▲ "
|
||||||
|
|
||||||
|
[buf]
|
||||||
|
symbol = "■ "
|
||||||
|
format = " [buf](italic) [$symbol $version $buf_version]($style)"
|
||||||
|
|
||||||
|
[c]
|
||||||
|
symbol = "ℂ "
|
||||||
|
format = " [$symbol($version(-$name))]($style)"
|
||||||
|
|
||||||
|
[cpp]
|
||||||
|
symbol = "ℂ "
|
||||||
|
format = " [$symbol($version(-$name))]($style)"
|
||||||
|
|
||||||
|
[conda]
|
||||||
|
symbol = "◯ "
|
||||||
|
format = " conda [$symbol$environment]($style)"
|
||||||
|
|
||||||
|
[pixi]
|
||||||
|
symbol = "■ "
|
||||||
|
format = " pixi [$symbol$version ($environment )]($style)"
|
||||||
|
|
||||||
|
[dart]
|
||||||
|
symbol = "◁◅ "
|
||||||
|
format = " dart [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[docker_context]
|
||||||
|
symbol = "◧ "
|
||||||
|
format = " docker [$symbol$context]($style)"
|
||||||
|
|
||||||
|
[elixir]
|
||||||
|
symbol = "△ "
|
||||||
|
format = " exs [$symbol $version OTP $otp_version ]($style)"
|
||||||
|
|
||||||
|
[elm]
|
||||||
|
symbol = "◩ "
|
||||||
|
format = " elm [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[golang]
|
||||||
|
symbol = "∩ "
|
||||||
|
format = " go [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[haskell]
|
||||||
|
symbol = "❯λ "
|
||||||
|
format = " hs [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[java]
|
||||||
|
symbol = "∪ "
|
||||||
|
format = " java [${symbol}(${version} )]($style)"
|
||||||
|
|
||||||
|
[julia]
|
||||||
|
symbol = "◎ "
|
||||||
|
format = " jl [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[memory_usage]
|
||||||
|
symbol = "▪▫▪ "
|
||||||
|
format = " mem [${ram}( ${swap})]($style)"
|
||||||
|
|
||||||
|
[nim]
|
||||||
|
symbol = "▴▲▴ "
|
||||||
|
format = " nim [$symbol($version )]($style)"
|
||||||
|
|
||||||
|
[nix_shell]
|
||||||
|
style = 'bold italic dimmed blue'
|
||||||
|
symbol = '✶'
|
||||||
|
format = '[$symbol nix⎪$state⎪]($style) [$name](italic dimmed white)'
|
||||||
|
impure_msg = '[⌽](bold dimmed red)'
|
||||||
|
pure_msg = '[⌾](bold dimmed green)'
|
||||||
|
unknown_msg = '[◌](bold dimmed yellow)'
|
||||||
|
|
||||||
|
[spack]
|
||||||
|
symbol = "◇ "
|
||||||
|
format = " spack [$symbol$environment]($style)"
|
||||||
+163
@@ -1 +1,164 @@
|
|||||||
|
7zip
|
||||||
|
acpi
|
||||||
|
adwaita-cursors
|
||||||
|
alsa-utils
|
||||||
|
ansible
|
||||||
|
auto-cpufreq
|
||||||
|
base
|
||||||
|
base-devel
|
||||||
|
bat
|
||||||
|
biber
|
||||||
|
blueman
|
||||||
|
bluetui
|
||||||
|
bluez
|
||||||
|
bluez-utils
|
||||||
|
brightnessctl
|
||||||
|
btop
|
||||||
|
btrfs-progs
|
||||||
|
cloc
|
||||||
|
cups
|
||||||
|
cups-filters
|
||||||
|
cups-pdf
|
||||||
|
curlftpfs
|
||||||
|
cursor-bin
|
||||||
|
cybervis
|
||||||
|
d2
|
||||||
|
dhcpcd
|
||||||
|
direnv
|
||||||
|
dnslookup
|
||||||
|
dnsmasq
|
||||||
|
driftwm
|
||||||
|
efivar
|
||||||
|
eza
|
||||||
|
file-roller
|
||||||
|
firefox
|
||||||
|
fish
|
||||||
|
fisher
|
||||||
|
flite
|
||||||
|
fuse3
|
||||||
|
fzf
|
||||||
|
git
|
||||||
|
glfw
|
||||||
|
grim
|
||||||
|
gvfs-mtp
|
||||||
|
gvfs-smb
|
||||||
|
hiddify
|
||||||
|
inetutils
|
||||||
|
intel-ucode
|
||||||
|
iodine
|
||||||
|
iwd
|
||||||
|
jdk8-openjdk
|
||||||
kitty
|
kitty
|
||||||
|
kodi
|
||||||
|
less
|
||||||
|
lftp
|
||||||
|
libfido2
|
||||||
|
linux
|
||||||
|
linux-firmware
|
||||||
|
mako
|
||||||
|
ncdu
|
||||||
|
nemo
|
||||||
|
nemo-fileroller
|
||||||
|
nemo-image-converter
|
||||||
|
nemo-preview
|
||||||
|
nemo-seahorse
|
||||||
|
nemo-share
|
||||||
|
neovim
|
||||||
|
networkmanager
|
||||||
|
noto-fonts-emoji
|
||||||
|
ntfs-3g
|
||||||
|
nwg-look
|
||||||
|
obsidian
|
||||||
|
openai-codex
|
||||||
|
opencode
|
||||||
|
orca
|
||||||
|
pavucontrol
|
||||||
|
pfetch-rs
|
||||||
|
pinta
|
||||||
|
pipewire-alsa
|
||||||
|
pipewire-pulse
|
||||||
|
plymouth
|
||||||
|
plymouth-theme-connect-git
|
||||||
|
plymouth-theme-cuts-alt-git
|
||||||
|
podman
|
||||||
|
podman-compose
|
||||||
|
podman-docker
|
||||||
|
polkit-gnome
|
||||||
|
powertop
|
||||||
|
preload
|
||||||
|
prismlauncher
|
||||||
|
pulsemixer
|
||||||
|
pwgen
|
||||||
|
python-black
|
||||||
|
python-h5py
|
||||||
|
python-pip
|
||||||
|
python-pipx
|
||||||
|
python-tensorflow
|
||||||
|
qbittorrent
|
||||||
|
qemu-full
|
||||||
|
rclone
|
||||||
|
ripgrep
|
||||||
|
rsync
|
||||||
|
seahorse
|
||||||
|
slurp
|
||||||
|
socat
|
||||||
|
spotify
|
||||||
|
stow
|
||||||
|
strace
|
||||||
|
syncthing
|
||||||
|
system-config-printer
|
||||||
|
tailscale
|
||||||
|
tcpdump
|
||||||
|
telegram-desktop
|
||||||
|
texlive-basic
|
||||||
|
texlive-bibtexextra
|
||||||
|
texlive-binextra
|
||||||
|
texlive-fontsextra
|
||||||
|
texlive-fontsrecommended
|
||||||
|
texlive-langcyrillic
|
||||||
|
texlive-latexextra
|
||||||
|
texlive-latexrecommended
|
||||||
|
texlive-luatex
|
||||||
|
texlive-mathscience
|
||||||
|
texlive-pictures
|
||||||
|
texlive-publishers
|
||||||
|
texlive-xetex
|
||||||
|
thefuck
|
||||||
|
thermald
|
||||||
|
traceroute
|
||||||
|
tree
|
||||||
|
ttf-firacode-nerd
|
||||||
|
unrar
|
||||||
|
vicinae
|
||||||
|
vim
|
||||||
|
virt-manager
|
||||||
|
virtualbox
|
||||||
|
virtualbox-host-modules-arch
|
||||||
|
visual-studio-code-bin
|
||||||
|
visualvm
|
||||||
|
vlc
|
||||||
|
vlc-plugins-all
|
||||||
|
vulkan-intel
|
||||||
|
vulkan-mesa-layers
|
||||||
|
waybar
|
||||||
|
wayvnc
|
||||||
|
wget
|
||||||
|
wl-clipboard
|
||||||
|
wlr-randr
|
||||||
|
wol
|
||||||
|
wpa_supplicant
|
||||||
|
xdg-user-dirs
|
||||||
|
xorg-xhost
|
||||||
|
xorg-xinput
|
||||||
|
xorg-xrandr
|
||||||
|
xorg-xset
|
||||||
|
xorg-xsetroot
|
||||||
|
xorg-xwayland
|
||||||
|
xwayland-satellite
|
||||||
|
yay
|
||||||
|
yay-debug
|
||||||
|
yazi
|
||||||
|
zed
|
||||||
|
zen-browser-bin
|
||||||
|
zenity
|
||||||
|
zoxide
|
||||||
|
|||||||
Reference in New Issue
Block a user