Compare commits

Author SHA1 Message Date
hdkv b0697e8396 Add atuin app 2026-08-26 14:47:10 +03:00
hdkv 2859cfe345 Fix idents 2026-08-26 14:44:00 +03:00
hdkv a79808c8ea Add bazzite-cli app 2026-08-26 14:42:16 +03:00
hdkv 02844722e8 Add support for Atuin 2026-08-26 14:33:00 +03:00
hdkv e945aae593 Add support for Homebrew on Linux autocomplete files 2026-08-26 14:32:50 +03:00
hdkv f67adb1df8 Merge remote-tracking branch 'origin/master' into hdkv/ublue-hdkv 2026-08-26 14:10:17 +03:00
hdkv 52dc3166e5 merge upstream 2026-08-26 16:09:43 +05:00
hdkvandpztrn f655fbf527 Get rid of lsb-release dependency (#16)
У всех линуксов уже давно есть /etc/os-release, и можно на него опираться, упрощая жизнь и уменьшая количество зависимостей для конфига.

Reviewed-on: misc/zsh-config#16
Reviewed-by: Stanislav Nikitin <pztrn@pztrn.name>
Co-authored-by: Vladimir Hodakov <vladimir@hodakov.me>
Co-committed-by: Vladimir Hodakov <vladimir@hodakov.me>
2026-06-19 16:12:01 +05:00
hdkv c338e30790 Get rid of lsb-release dependency 2026-06-18 22:14:21 +03:00
7 changed files with 48 additions and 14 deletions
+3 -3
View File
@@ -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}
+6
View File
@@ -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
+18
View File
@@ -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
+5
View File
@@ -0,0 +1,5 @@
atuin_init() {
eval "$(atuin init zsh)"
}
atuin_init
+5
View File
@@ -0,0 +1,5 @@
function bazzite-cli() {
source /usr/share/bazzite-cli/bling.sh
}
bazzite-cli
+1 -1
View File
@@ -1,2 +1,2 @@
# Apps list to enable.
ENABLED_APPS=("showcolors")
ENABLED_APPS=("gitinfo" "showcolors")
+3 -3
View File
@@ -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}"