From e6e977d2f9abe061c2a57c3fb3ac951f21efbcab Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Fri, 3 Jan 2025 05:33:15 +0400 Subject: [PATCH 1/9] Remove ls alias to resolve conflict with bazzite-cli --- zsh/aliases/00-default.conf | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/zsh/aliases/00-default.conf b/zsh/aliases/00-default.conf index 52ba135..0ed0b39 100644 --- a/zsh/aliases/00-default.conf +++ b/zsh/aliases/00-default.conf @@ -1,9 +1,5 @@ # Default aliases. They can be overriden by other files with higher # index. -# Files navigation. -alias ls="ls --color" -alias sl="ls --color" - # Git. -alias got="git" \ No newline at end of file +alias got="git" -- 2.54.0 From 31619a62e0bedec11d54e0e0afbf6fdfebbf8400 Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Fri, 3 Jan 2025 05:42:07 +0400 Subject: [PATCH 2/9] Remove ctrl-r and up/down commands for Atuin to work --- zsh/30-keys.zsh | 7 ------- 1 file changed, 7 deletions(-) diff --git a/zsh/30-keys.zsh b/zsh/30-keys.zsh index c2430e7..1bb3d50 100644 --- a/zsh/30-keys.zsh +++ b/zsh/30-keys.zsh @@ -22,13 +22,6 @@ select-word-style bash bindkey '\ew' kill-region # [Esc-w] - Kill from the cursor to the mark bindkey -s '\el' 'ls\n' # [Esc-l] - run command: ls -bindkey '^r' history-incremental-search-backward # [Ctrl-r] - Search backward incrementally for a specified string. The string may begin with ^ to anchor the search to the beginning of the line. -if [[ "${terminfo[kpp]}" != "" ]]; then - bindkey "${terminfo[kpp]}" up-line-or-history # [PageUp] - Up a line of history -fi -if [[ "${terminfo[knp]}" != "" ]]; then - bindkey "${terminfo[knp]}" down-line-or-history # [PageDown] - Down a line of history -fi if [[ "${terminfo[kcuu1]}" != "" ]]; then bindkey "${terminfo[kcuu1]}" up-line-or-search # start typing + [Up-Arrow] - fuzzy find history forward -- 2.54.0 From d75f129cc21f56fae4d03f14ee889180fb3e1189 Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Fri, 3 Jan 2025 06:04:40 +0400 Subject: [PATCH 3/9] Add another change to use Atuin instead of ZSH functions --- zsh/30-keys.zsh | 7 ------- 1 file changed, 7 deletions(-) diff --git a/zsh/30-keys.zsh b/zsh/30-keys.zsh index 1bb3d50..58fdd7f 100644 --- a/zsh/30-keys.zsh +++ b/zsh/30-keys.zsh @@ -23,13 +23,6 @@ select-word-style bash bindkey '\ew' kill-region # [Esc-w] - Kill from the cursor to the mark bindkey -s '\el' 'ls\n' # [Esc-l] - run command: ls -if [[ "${terminfo[kcuu1]}" != "" ]]; then - bindkey "${terminfo[kcuu1]}" up-line-or-search # start typing + [Up-Arrow] - fuzzy find history forward -fi -if [[ "${terminfo[kcud1]}" != "" ]]; then - bindkey "${terminfo[kcud1]}" down-line-or-search # start typing + [Down-Arrow] - fuzzy find history backward -fi - if [[ "${terminfo[khome]}" != "" ]]; then bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line fi -- 2.54.0 From c338e3079082aa980aac10237319099cc505fee0 Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Thu, 18 Jun 2026 22:14:21 +0300 Subject: [PATCH 4/9] Get rid of lsb-release dependency --- zsh/03-vars.zsh | 6 +++--- zsh/plugins/autosuggestions.plugin.zsh | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/zsh/03-vars.zsh b/zsh/03-vars.zsh index 7c0e48c..a8a6640 100644 --- a/zsh/03-vars.zsh +++ b/zsh/03-vars.zsh @@ -6,9 +6,9 @@ OS_RELEASE=`uname -r` OS_ARCH=`uname -m` # Distro detection. -LSBRELEASE=$(which lsb_release) -if [ $? -eq 0 ]; then - DISTRO=`lsb_release -i -s` +if [[ -f /etc/os-release ]]; then + . /etc/os-release + DISTRO=${ID} else # BSDs OS and macOS can be detected via uname. DISTRO=${OS} diff --git a/zsh/plugins/autosuggestions.plugin.zsh b/zsh/plugins/autosuggestions.plugin.zsh index 026d95c..37fcad7 100644 --- a/zsh/plugins/autosuggestions.plugin.zsh +++ b/zsh/plugins/autosuggestions.plugin.zsh @@ -1,10 +1,10 @@ AUTOSUGGESTIONS_PATH="/usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh" -if [ "${DISTRO}" = "Arch" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi -if [ "${DISTRO}" = "EnveavourOS" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi +if [ "${DISTRO}" = "arch" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi +if [ "${DISTRO}" = "endeavouros" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi if [[ "${DISTRO}" = "Darwin" && "${OS_ARCH}" == "arm64" ]]; then AUTOSUGGESTIONS_PATH="/opt/homebrew/share/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi if [[ "${DISTRO}" = "Darwin" && "${OS_ARCH}" == "x86_64" ]]; then AUTOSUGGESTIONS_PATH="/usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh"; fi -if [ "${DISTRO}" = "VoidLinux" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions.zsh"; fi +if [ "${DISTRO}" = "voidlinux" ]; then AUTOSUGGESTIONS_PATH="/usr/share/zsh/plugins/zsh-autosuggestions.zsh"; fi if [ -f "${AUTOSUGGESTIONS_PATH}" ]; then source "${AUTOSUGGESTIONS_PATH}" -- 2.54.0 From e945aae5935a8fc809bd9e178e77e2091fa3fa6d Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Wed, 26 Aug 2026 14:32:50 +0300 Subject: [PATCH 5/9] Add support for Homebrew on Linux autocomplete files --- zsh/11-autocomplete.zsh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/zsh/11-autocomplete.zsh b/zsh/11-autocomplete.zsh index 991193f..322e2cb 100644 --- a/zsh/11-autocomplete.zsh +++ b/zsh/11-autocomplete.zsh @@ -4,6 +4,12 @@ if [ "${OS}" = "Darwin" ] && [ "${OS_ARCH}" = "arm64" ]; then export fpath=(${fpath} /opt/homebrew/share/zsh/site-functions) fi +# The same goes for Homebrew on Linux. +# Yes, /home/linuxbrew is universal for every standard brew install on Linux. +if [ "${OS}" = "Linux" ] && [ -d "/home/linuxbrew/.linuxbrew/share/zsh/site-functions" ]; then + export fpath=(${fpath} /home/linuxbrew/.linuxbrew/share/zsh/site-functions) +fi + autoload -Uz compinit compinit zstyle ':completion:*' menu select=2 -- 2.54.0 From 02844722e85ea2da5ab8d936b63cdaee2d0987de Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Wed, 26 Aug 2026 14:33:00 +0300 Subject: [PATCH 6/9] Add support for Atuin --- zsh/30-keys.zsh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/zsh/30-keys.zsh b/zsh/30-keys.zsh index 58fdd7f..c3a00ce 100644 --- a/zsh/30-keys.zsh +++ b/zsh/30-keys.zsh @@ -23,6 +23,24 @@ select-word-style bash bindkey '\ew' kill-region # [Esc-w] - Kill from the cursor to the mark bindkey -s '\el' 'ls\n' # [Esc-l] - run command: ls +# Search history bindings. They apply if atuin is not installed. +if [[ ! -x $(command -v atuin) ]]; then + bindkey '^r' history-incremental-search-backward # [Ctrl-r] - Search backward incrementally for a specified string. The string may begin with ^ to anchor the search to the beginning of the line. + if [[ "${terminfo[kpp]}" != "" ]]; then + bindkey "${terminfo[kpp]}" up-line-or-history # [PageUp] - Up a line of history + fi + if [[ "${terminfo[knp]}" != "" ]]; then + bindkey "${terminfo[knp]}" down-line-or-history # [PageDown] - Down a line of history + fi + + if [[ "${terminfo[kcuu1]}" != "" ]]; then + bindkey "${terminfo[kcuu1]}" up-line-or-search # start typing + [Up-Arrow] - fuzzy find history forward + fi + if [[ "${terminfo[kcud1]}" != "" ]]; then + bindkey "${terminfo[kcud1]}" down-line-or-search # start typing + [Down-Arrow] - fuzzy find history backward + fi +fi + if [[ "${terminfo[khome]}" != "" ]]; then bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line fi -- 2.54.0 From a79808c8ea6975349123152a5caddc8b8c95042d Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Wed, 26 Aug 2026 14:42:16 +0300 Subject: [PATCH 7/9] Add bazzite-cli app --- zsh/apps/bazzite-cli.app.zsh | 5 +++++ zsh/defaults/02-apps.conf | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 zsh/apps/bazzite-cli.app.zsh diff --git a/zsh/apps/bazzite-cli.app.zsh b/zsh/apps/bazzite-cli.app.zsh new file mode 100644 index 0000000..947997b --- /dev/null +++ b/zsh/apps/bazzite-cli.app.zsh @@ -0,0 +1,5 @@ +function bazzite-cli() { + source /usr/share/bazzite-cli/bling.sh +} + +bazzite-cli diff --git a/zsh/defaults/02-apps.conf b/zsh/defaults/02-apps.conf index 16b28dc..8147afb 100644 --- a/zsh/defaults/02-apps.conf +++ b/zsh/defaults/02-apps.conf @@ -1,2 +1,2 @@ # Apps list to enable. -ENABLED_APPS=("showcolors") +ENABLED_APPS=("gitinfo" "showcolors") -- 2.54.0 From 2859cfe345b89396305f9483e13939f0b9119173 Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Wed, 26 Aug 2026 14:44:00 +0300 Subject: [PATCH 8/9] Fix idents --- zsh/30-keys.zsh | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/zsh/30-keys.zsh b/zsh/30-keys.zsh index c3a00ce..73e6a8f 100644 --- a/zsh/30-keys.zsh +++ b/zsh/30-keys.zsh @@ -27,25 +27,25 @@ bindkey -s '\el' 'ls\n' # [Esc-l] - run command: l if [[ ! -x $(command -v atuin) ]]; then bindkey '^r' history-incremental-search-backward # [Ctrl-r] - Search backward incrementally for a specified string. The string may begin with ^ to anchor the search to the beginning of the line. if [[ "${terminfo[kpp]}" != "" ]]; then - bindkey "${terminfo[kpp]}" up-line-or-history # [PageUp] - Up a line of history + bindkey "${terminfo[kpp]}" up-line-or-history # [PageUp] - Up a line of history fi if [[ "${terminfo[knp]}" != "" ]]; then - bindkey "${terminfo[knp]}" down-line-or-history # [PageDown] - Down a line of history + bindkey "${terminfo[knp]}" down-line-or-history # [PageDown] - Down a line of history fi if [[ "${terminfo[kcuu1]}" != "" ]]; then - bindkey "${terminfo[kcuu1]}" up-line-or-search # start typing + [Up-Arrow] - fuzzy find history forward + bindkey "${terminfo[kcuu1]}" up-line-or-search # start typing + [Up-Arrow] - fuzzy find history forward fi if [[ "${terminfo[kcud1]}" != "" ]]; then - bindkey "${terminfo[kcud1]}" down-line-or-search # start typing + [Down-Arrow] - fuzzy find history backward + bindkey "${terminfo[kcud1]}" down-line-or-search # start typing + [Down-Arrow] - fuzzy find history backward fi fi if [[ "${terminfo[khome]}" != "" ]]; then - bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line + bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line fi if [[ "${terminfo[kend]}" != "" ]]; then - bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line + bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line fi bindkey ' ' magic-space # [Space] - do history expansion @@ -54,16 +54,16 @@ bindkey '^[[1;5C' forward-word # [Ctrl-RightArrow] - move bindkey '^[[1;5D' backward-word # [Ctrl-LeftArrow] - move backward one word if [[ "${terminfo[kcbt]}" != "" ]]; then - bindkey "${terminfo[kcbt]}" reverse-menu-complete # [Shift-Tab] - move through the completion menu backwards + bindkey "${terminfo[kcbt]}" reverse-menu-complete # [Shift-Tab] - move through the completion menu backwards fi bindkey '^?' backward-delete-char # [Backspace] - delete backward if [[ "${terminfo[kdch1]}" != "" ]]; then - bindkey "${terminfo[kdch1]}" delete-char # [Delete] - delete forward + bindkey "${terminfo[kdch1]}" delete-char # [Delete] - delete forward else - bindkey "^[[3~" delete-char - bindkey "^[3;5~" delete-char - bindkey "\e[3~" delete-char + bindkey "^[[3~" delete-char + bindkey "^[3;5~" delete-char + bindkey "\e[3~" delete-char fi case "${TERM}" in -- 2.54.0 From b0697e8396ba026898ce7a91814927da9798ab2d Mon Sep 17 00:00:00 2001 From: Vladimir Viatskii Date: Wed, 26 Aug 2026 14:47:10 +0300 Subject: [PATCH 9/9] Add atuin app --- zsh/apps/atuin.app.zsh | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 zsh/apps/atuin.app.zsh diff --git a/zsh/apps/atuin.app.zsh b/zsh/apps/atuin.app.zsh new file mode 100644 index 0000000..78d60fe --- /dev/null +++ b/zsh/apps/atuin.app.zsh @@ -0,0 +1,5 @@ +atuin_init() { + eval "$(atuin init zsh)" +} + +atuin_init -- 2.54.0