]> git.friedersdorff.com Git - max/saltfiles.git/commitdiff
Initial zsh configuration
authorMaximilian Friedersdorff <max@friedersdorff.com>
Tue, 16 Jul 2019 13:18:12 +0000 (14:18 +0100)
committerMaximilian Friedersdorff <max@friedersdorff.com>
Tue, 16 Jul 2019 13:18:12 +0000 (14:18 +0100)
states/zsh/files/zprofile [new file with mode: 0644]
states/zsh/files/zshenv [new file with mode: 0644]
states/zsh/files/zshrc [new file with mode: 0644]
states/zsh/gentoo.sls [new file with mode: 0644]
states/zsh/init.sls [new file with mode: 0644]

diff --git a/states/zsh/files/zprofile b/states/zsh/files/zprofile
new file mode 100644 (file)
index 0000000..f182c13
--- /dev/null
@@ -0,0 +1,12 @@
+# Make XDG_RUNTIME_DIR
+if [ -z "${XDG_RUNTIME_DIR}" ]; then
+       export XDG_RUNTIME_DIR=/tmp/${UID}-runtime-dir
+       if [ ! -d "${XDG_RUNTIME_DIR}" ]; then
+               mkdir "${XDG_RUNTIME_DIR}"
+               chmod 0700 "${XDG_RUNTIME_DIR}"
+       fi
+fi
+
+# Make temporary directory
+mkdir -p "/tmp/${USER}"
+chmod 770 "/tmp/${USER}"
diff --git a/states/zsh/files/zshenv b/states/zsh/files/zshenv
new file mode 100644 (file)
index 0000000..c325783
--- /dev/null
@@ -0,0 +1,16 @@
+typeset -U path
+path=(~/.local/bin ~/.cargo/bin $path[@])
+
+export QT_QPA_PLATFORM=wayland-egl
+
+# make less more friendly for non-text input files, see lesspipe(1)
+if [ -x /usr/bin/lesspipe ]; then 
+  export LESSOPEN="|lesspipe %s"
+elif [ -x /usr/bin/lesspipe.sh ]; then 
+  export LESSOPEN="|lesspipe.sh %s"
+fi
+
+# colored GCC warnings and errors
+export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
+export EDITOR="vim"
+export TMPDIR="/tmp/${USER}"
diff --git a/states/zsh/files/zshrc b/states/zsh/files/zshrc
new file mode 100644 (file)
index 0000000..6fe4aaf
--- /dev/null
@@ -0,0 +1,68 @@
+# The following lines were added by compinstall
+
+zstyle ':completion:*' completer _expand _complete _ignored _correct _approximate
+zstyle ':completion:*' completions 1
+zstyle ':completion:*' expand suffix
+zstyle ':completion:*' glob 1
+zstyle ':completion:*' ignore-parents parent pwd
+zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
+zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s
+zstyle ':completion:*' list-suffixes true
+zstyle ':completion:*' max-errors 2
+zstyle ':completion:*' menu select=1
+zstyle ':completion:*' preserve-prefix '//[^/]##/'
+zstyle ':completion:*' prompt 'Corrections with %e differences:'
+zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
+zstyle ':completion:*' substitute 1
+zstyle :compinstall filename '/home/max/.zshrc'
+
+autoload -Uz compinit
+compinit
+# End of lines added by compinstall
+# Lines configured by zsh-newuser-install
+HISTFILE=~/.histfile
+HISTSIZE=20000
+SAVEHIST=20000
+setopt appendhistory autocd extendedglob nomatch
+unsetopt beep notify
+bindkey -v
+# End of lines configured by zsh-newuser-install
+
+
+git_prompt() {
+       ref=$(git symbolic-ref HEAD | cut -d'/' -f3-)
+       echo $ref
+}
+
+NEWLINE=$'\n'
+setopt prompt_subst
+autoload -Uz vcs_info
+zstyle ':vcs_info:*' actionformats \
+    "%F{5}[%f%b%F{3}|%F{1}%a%F{5}]%f${NEWLINE}"
+zstyle ':vcs_info:*' formats       \
+    "%F{5}[%f%b%F{5}]%f${NEWLINE}"
+
+zstyle ':vcs_info:*' enable git
+
+# or use pre_cmd, see man zshcontrib
+precmd() {
+       echo
+       vcs_info
+}
+
+prompt='$vcs_info_msg_0_'
+prompt+="%(?;%F{green};%F{red})[%h]%f "
+prompt+="%F{red}%B%n%b%f@%F{red}%B%m%b%f"
+prompt+=":%F{blue}%~%f"
+prompt+="${NEWLINE}%(!.#.$) "
+
+if ! pgrep -x -u "${USER}" gpg-agent >/dev/null 2>&1; then
+  gpg-connect-agent /bye >/dev/null 2>&1
+fi
+
+unset SSH_AGENT_PID
+if [ "${gnupg_SSH_AUTH_SOCK_by:-0}" -ne $$ ]; then
+  export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
+fi
+
+gpg-connect-agent updatestartuptty /bye > /dev/null
diff --git a/states/zsh/gentoo.sls b/states/zsh/gentoo.sls
new file mode 100644 (file)
index 0000000..3702623
--- /dev/null
@@ -0,0 +1,6 @@
+install zsh:
+  pkg.installed:
+    - pkgs: 
+      - app-shells/zsh
+      - app-shells/zsh-completions
+      - app-shells/gentoo-zsh-completions
diff --git a/states/zsh/init.sls b/states/zsh/init.sls
new file mode 100644 (file)
index 0000000..c6a6740
--- /dev/null
@@ -0,0 +1,26 @@
+include:
+  - zsh.{{ grains['os'] | lower }}
+
+install zshrc conf file:
+  file.managed:
+    - name: {{ grains['homedir'] }}/.zshrc
+    - source: salt://zsh/files/zshrc
+    - mode: 640
+    - user: {{ grains['user'] }}
+    - group: {{ grains['user'] }}
+
+install zshenv conf file:
+  file.managed:
+    - name: {{ grains['homedir'] }}/.zshenv
+    - source: salt://zsh/files/zshenv
+    - mode: 640
+    - user: {{ grains['user'] }}
+    - group: {{ grains['user'] }}
+
+install zprofile conf file:
+  file.managed:
+    - name: {{ grains['homedir'] }}/.zprofile
+    - source: salt://zsh/files/zprofile
+    - mode: 640
+    - user: {{ grains['user'] }}
+    - group: {{ grains['user'] }}