Compare commits
10 Commits
a94ae1df3c
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 3ec45a7082 | |||
| 0fe2b5ab9a | |||
| fdeb6d6505 | |||
| 24563a3b5f | |||
| 9bd69ac6fa | |||
| fa601f903f | |||
| 45362b9d05 | |||
| a88c12b85d | |||
| df671a927f | |||
| ffe9c7e236 |
@@ -29,8 +29,8 @@ Use ./stow.sh --unstow <folder_name> to remove configuration
|
|||||||
- gamemode configuration:
|
- gamemode configuration:
|
||||||
- renice=10
|
- renice=10
|
||||||
- ssh-agent:
|
- ssh-agent:
|
||||||
- agent-location: `cd $HOME/.oh-my-zsh/ && git apply $HOME/.dots/ssh-agent-location.patch`
|
- agent-location: `cd $HOME/.oh-my-zsh/ && git apply $HOME/.dots/patches/ssh-agent-location.patch`
|
||||||
- remove keys on lock: `ln -sSf $HOME/.dots/remove-ssh.service $HOME/.config/systemd/user/remove-ssh.service && systemctl --user start remove-ssh && systemctl --user enable remove-ssh`
|
- remove keys on lock: `ln -sSf $HOME/.dots/scripts/remove-ssh.service $HOME/.config/systemd/user/remove-ssh.service && systemctl --user start remove-ssh && systemctl --user enable remove-ssh`
|
||||||
|
|
||||||
## Software
|
## Software
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@ sudo apt install \
|
|||||||
```
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
git clone https://github.com/ohmyzsh/ohmyzsh/ $HOME/.oh-my-zsh && cd $HOME/.oh-my-zsh && git apply $HOME/.dots/prompt.patch
|
git clone https://github.com/ohmyzsh/ohmyzsh/ $HOME/.oh-my-zsh && cd $HOME/.oh-my-zsh && git apply $HOME/.dots/patches/prompt.patch
|
||||||
```
|
```
|
||||||
|
|
||||||
### Extended
|
### Extended
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
[alias]
|
[alias]
|
||||||
a = add
|
a = add
|
||||||
aa = add .
|
aa = add .
|
||||||
|
b = branch
|
||||||
bl = blame
|
bl = blame
|
||||||
c = commit -v
|
c = commit -v
|
||||||
ca = commit -v --amend
|
ca = commit -v --amend
|
||||||
@@ -17,6 +18,7 @@
|
|||||||
pl = pull --rebase
|
pl = pull --rebase
|
||||||
ps = push
|
ps = push
|
||||||
r = rebase -i
|
r = rebase -i
|
||||||
|
rc = rebase --continue
|
||||||
sh = show
|
sh = show
|
||||||
st = status -s
|
st = status -s
|
||||||
wt = worktree
|
wt = worktree
|
||||||
|
|||||||
@@ -25,15 +25,12 @@ display-inlay-hints = true
|
|||||||
"_" = ["extend_line_up", "extend_to_line_bounds"]
|
"_" = ["extend_line_up", "extend_to_line_bounds"]
|
||||||
"+" = ["extend_line_down", "extend_to_line_bounds"]
|
"+" = ["extend_line_down", "extend_to_line_bounds"]
|
||||||
|
|
||||||
# Normally `goto`, but `git` works aswell
|
|
||||||
[keys.normal.g]
|
[keys.normal.g]
|
||||||
"b" = ":sh git show %sh{git blame -L %{cursor_line},+1 %{buffer_name} | awk '{print $1}'}"
|
"b" = ":sh git show %sh{git blame -L %{cursor_line},+1 %{buffer_name} | awk '{print $1}'}"
|
||||||
|
|
||||||
# N, like German _Nachricht_ to the lsp
|
[keys.normal.space]
|
||||||
[keys.normal.n]
|
"t" = ':lsp-workspace-command tinymist.pinMain "%sh{realpath %{buffer_name}}"'
|
||||||
"p" = ':lsp-workspace-command tinymist.pinMain "%sh{realpath %{buffer_name}}"'
|
|
||||||
|
|
||||||
# Z is everything with view, so soft-wrap fits well
|
|
||||||
[keys.normal.z]
|
[keys.normal.z]
|
||||||
s = ":set soft-wrap.enable true"
|
s = ":set soft-wrap.enable true"
|
||||||
S = ":set soft-wrap.enable false"
|
S = ":set soft-wrap.enable false"
|
||||||
|
|||||||
@@ -18,12 +18,12 @@ git_branch() {
|
|||||||
|
|
||||||
nix_env() {
|
nix_env() {
|
||||||
if $(echo $PATH | grep "/nix/store" > /dev/null 2>&1); then
|
if $(echo $PATH | grep "/nix/store" > /dev/null 2>&1); then
|
||||||
echo "(nix)"
|
echo "nix@"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
HOST="\[\033[0;33m\]\h\[\033[m\]"
|
HOST="\[\033[0;33m\]\h\[\033[m\]"
|
||||||
GIT_NIX="\[\033[0;31m\]\$(git_branch)\$(nix_env)\[\033[m\]"
|
GIT_NIX="\[\033[0;31m\]\$(nix_env)\$(git_branch)\[\033[m\]"
|
||||||
DIR="\[\033[0;34m\]\w\[\033[m\]"
|
DIR="\[\033[0;34m\]\w\[\033[m\]"
|
||||||
NEWLINE=$'\n'
|
NEWLINE=$'\n'
|
||||||
|
|
||||||
@@ -38,13 +38,13 @@ __prompt_command() {
|
|||||||
export PROMPT_DIRTRIM=0
|
export PROMPT_DIRTRIM=0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export PS1="${HOST} ${DIR} ${GIT_NIX}${NEWLINE}"
|
export PS1="${HOST} :: ${DIR} ${GIT_NIX}"
|
||||||
|
|
||||||
if [ $EXIT != 0 ]
|
if [ $EXIT != 0 ]
|
||||||
then
|
then
|
||||||
PS1+='\[\033[0;31m\]$\[\033[00m\] '
|
PS1+='\[\033[0;31m\]>\[\033[00m\] '
|
||||||
else
|
else
|
||||||
PS1+='\[\033[0;32m\]$\[\033[00m\] '
|
PS1+='> '
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ alias nupdate="nix-channel --update"
|
|||||||
alias typix="nix flake init --refresh -t github:loqusion/typix"
|
alias typix="nix flake init --refresh -t github:loqusion/typix"
|
||||||
alias twatch="typst watch"
|
alias twatch="typst watch"
|
||||||
alias tbuild="tpst build"
|
alias tbuild="tpst build"
|
||||||
alias tlsp="nix-shell -p tinymist --command zsh"
|
alias tlsp="nix-shell -p tinymist"
|
||||||
|
|
||||||
alias nlatex="nix-shell -p texlive.combined.scheme-full"
|
alias nlatex="nix-shell -p texlive.combined.scheme-full"
|
||||||
|
|
||||||
@@ -41,7 +41,12 @@ t() {
|
|||||||
tmux new-session -A -s ${1:-tmux}
|
tmux new-session -A -s ${1:-tmux}
|
||||||
}
|
}
|
||||||
z() {
|
z() {
|
||||||
zellij attach ${1:-dev} 2> /dev/null || zellij -s ${1:-dev}
|
# if remote, link agent so a stale zellij env doesn't hurt agent
|
||||||
|
if [[ $SSH_AUTH_SOCK =~ ^"/tmp/ssh-" ]]; then
|
||||||
|
ln -sf $SSH_AUTH_SOCK /tmp/agent.sock
|
||||||
|
export SSH_AUTH_SOCK=/tmp/agent.sock
|
||||||
|
fi
|
||||||
|
zellij attach ${1:-$HOST} 2> /dev/null || zellij -s ${1:-$HOST}
|
||||||
}
|
}
|
||||||
|
|
||||||
# password hash (sed needed when using in docker-compose)
|
# password hash (sed needed when using in docker-compose)
|
||||||
|
|||||||
@@ -2,23 +2,12 @@ export ZSH="$HOME/.oh-my-zsh"
|
|||||||
|
|
||||||
ZSH_THEME="afowler"
|
ZSH_THEME="afowler"
|
||||||
|
|
||||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
|
||||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
|
||||||
|
|
||||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
|
||||||
# You can also set it to another string to have that shown instead of the default red dots.
|
|
||||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
|
||||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
|
||||||
COMPLETION_WAITING_DOTS="true"
|
COMPLETION_WAITING_DOTS="true"
|
||||||
|
|
||||||
# Uncomment the following line if you want to disable marking untracked files
|
|
||||||
# under VCS as dirty. This makes repository status check for large repositories
|
|
||||||
# much, much faster.
|
|
||||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
|
||||||
|
|
||||||
plugins=(git colored-man-pages rust ssh-agent)
|
plugins=(git colored-man-pages rust ssh-agent)
|
||||||
|
|
||||||
zstyle :omz:plugins:ssh-agent helper sshaskpass
|
zstyle :omz:plugins:ssh-agent helper sshaskpass
|
||||||
|
zstyle :omz:update mode disabled
|
||||||
|
|
||||||
bindkey ^F forward-word
|
bindkey ^F forward-word
|
||||||
bindkey ^B backward-word
|
bindkey ^B backward-word
|
||||||
@@ -29,3 +18,15 @@ source $ZSH/oh-my-zsh.sh
|
|||||||
|
|
||||||
[ -f ~/.shellrc.alias ] && source ~/.shellrc.alias
|
[ -f ~/.shellrc.alias ] && source ~/.shellrc.alias
|
||||||
[ -f ~/.shellrc.local ] && source ~/.shellrc.local
|
[ -f ~/.shellrc.local ] && source ~/.shellrc.local
|
||||||
|
|
||||||
|
function set_zellij_tab_to_working_dir() {
|
||||||
|
local current_dir=$PWD
|
||||||
|
if [[ $current_dir == $HOME ]]; then
|
||||||
|
current_dir="~"
|
||||||
|
else
|
||||||
|
current_dir=${current_dir##*/}
|
||||||
|
fi
|
||||||
|
command nohup zellij action rename-tab $current_dir >/dev/null 2>&1
|
||||||
|
}
|
||||||
|
|
||||||
|
[[ -n $ZELLIJ ]] && add-zsh-hook precmd set_zellij_tab_to_working_dir
|
||||||
|
|||||||
@@ -403,7 +403,7 @@ default_layout "compact"
|
|||||||
|
|
||||||
// Path to the default editor to use to edit pane scrollbuffer
|
// Path to the default editor to use to edit pane scrollbuffer
|
||||||
// Default: $EDITOR or $VISUAL
|
// Default: $EDITOR or $VISUAL
|
||||||
// scrollback_editor "/usr/bin/vim"
|
scrollback_editor "hx"
|
||||||
|
|
||||||
// A fixed name to always give the Zellij session.
|
// A fixed name to always give the Zellij session.
|
||||||
// Consider also setting `attach_to_session true,`
|
// Consider also setting `attach_to_session true,`
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/plugins/ssh-agent/ssh-agent.plugin.zsh b/plugins/ssh-agent/ssh-agent.plugin.zsh
|
diff --git a/plugins/ssh-agent/ssh-agent.plugin.zsh b/plugins/ssh-agent/ssh-agent.plugin.zsh
|
||||||
index 8354864..61462fd 100644
|
index 83548648..42ec378f 100644
|
||||||
--- a/plugins/ssh-agent/ssh-agent.plugin.zsh
|
--- a/plugins/ssh-agent/ssh-agent.plugin.zsh
|
||||||
+++ b/plugins/ssh-agent/ssh-agent.plugin.zsh
|
+++ b/plugins/ssh-agent/ssh-agent.plugin.zsh
|
||||||
@@ -24,7 +24,7 @@ function _start_agent() {
|
@@ -24,7 +24,7 @@ function _start_agent() {
|
||||||
@@ -11,3 +11,13 @@ index 8354864..61462fd 100644
|
|||||||
chmod 600 "$ssh_env_cache"
|
chmod 600 "$ssh_env_cache"
|
||||||
. "$ssh_env_cache" > /dev/null
|
. "$ssh_env_cache" > /dev/null
|
||||||
}
|
}
|
||||||
|
@@ -107,7 +107,8 @@ if zstyle -t :omz:plugins:ssh-agent agent-forwarding \
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
- _start_agent
|
||||||
|
+ # Don't start new one, if ssh-agent is forwarded
|
||||||
|
+ [[ $SSH_AUTH_SOCK =~ ^"/tmp/ssh-" ]] || _start_agent
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Don't add identities if lazy-loading is enabled
|
||||||
@@ -4,7 +4,7 @@ Description=Remove SSH keys on lock
|
|||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
Environment=SSH_AUTH_SOCK=/tmp/agent.sock
|
Environment=SSH_AUTH_SOCK=/tmp/agent.sock
|
||||||
ExecStart=%h/.dots/remove-ssh.bash
|
ExecStart=%h/.dots/scripts/remove-ssh.bash
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=default.target
|
WantedBy=default.target
|
||||||
Reference in New Issue
Block a user