Compare commits

...

10 Commits

12 changed files with 53 additions and 31 deletions

View File

@@ -10,7 +10,7 @@ Use ./stow.sh --unstow <folder_name> to remove configuration
## Quirks
- Install based on Ubuntu Desktop
- Font: [BlexMono Nerd Font](https://github.com/ryanoasis/nerd-fonts/releases/download/v3.4.0/IBMPlexMono.zip)
- Font: [Iosevka Nerd Font](https://github.com/ryanoasis/nerd-fonts/releases/download/v3.4.0/Iosevka.tar.xz)
- Keyboard Layout: EurKey (enable extended in gnome-tweaks)
- Environment Vairables exported using systemd in [envvars.conf](files/environment/.config/environment.d/envvars.conf)
- LibreWolf from flatpak needs devices=all to read yubikeys
@@ -29,8 +29,8 @@ Use ./stow.sh --unstow <folder_name> to remove configuration
- gamemode configuration:
- renice=10
- ssh-agent:
- agent-location: `cd $HOME/.oh-my-zsh/ && git apply $HOME/.dots/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`
- agent-location: `cd $HOME/.oh-my-zsh/ && git apply $HOME/.dots/patches/ssh-agent-location.patch`
- 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
@@ -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
@@ -101,6 +101,8 @@ sudo snap install \
- quick-settings-audio-panel
- quicksettings-audio-devices-hider (hide unused devices)
- gamemodeshellextensions@trsnaqe.com
- status-area-horizontal-spacing@mathematical.coffee.gmail.com
- blur-my-shell@aunetx (custom panel, slightly darker with custom pipeline)
### Pre-installed
- disable desktop icons

View File

@@ -6,6 +6,7 @@
[alias]
a = add
aa = add .
b = branch
bl = blame
c = commit -v
ca = commit -v --amend
@@ -17,6 +18,7 @@
pl = pull --rebase
ps = push
r = rebase -i
rc = rebase --continue
sh = show
st = status -s
wt = worktree

View File

@@ -2,15 +2,14 @@ theme = "everforest_light_modded"
[editor]
line-number = "relative"
cursorline = true
cursor-shape.insert = "bar"
insert-final-newline = false
# rulers = [80, 100]
true-color = true
text-width = 100
[editor.whitespace.render]
tab = "all"
# space = "all"
[editor.indent-guides]
render = true
@@ -29,6 +28,9 @@ display-inlay-hints = true
[keys.normal.g]
"b" = ":sh git show %sh{git blame -L %{cursor_line},+1 %{buffer_name} | awk '{print $1}'}"
[keys.normal.space]
"t" = ':lsp-workspace-command tinymist.pinMain "%sh{realpath %{buffer_name}}"'
[keys.normal.z]
s = ":set soft-wrap.enable true"
S = ":set soft-wrap.enable false"

View File

@@ -8,9 +8,9 @@ clipboard_control write-clipboard write-primary no-append
include current-theme.conf
font_family BlexMono Nerd Font Mono Text
italic_font BlexMono Nerd Font Mono
bold_font BlexMono Nerd Font Mono
font_family Iosevka Nerd Font
# italic_font BlexMono Nerd Font Mono
# bold_font BlexMono Nerd Font Mono
font_size 12

View File

@@ -18,12 +18,12 @@ git_branch() {
nix_env() {
if $(echo $PATH | grep "/nix/store" > /dev/null 2>&1); then
echo "(nix)"
echo "nix@"
fi
}
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\]"
NEWLINE=$'\n'
@@ -38,13 +38,13 @@ __prompt_command() {
export PROMPT_DIRTRIM=0
fi
export PS1="${HOST} ${DIR} ${GIT_NIX}${NEWLINE}"
export PS1="${HOST} :: ${DIR} ${GIT_NIX}"
if [ $EXIT != 0 ]
then
PS1+='\[\033[0;31m\]$\[\033[00m\] '
PS1+='\[\033[0;31m\]>\[\033[00m\] '
else
PS1+='\[\033[0;32m\]$\[\033[00m\] '
PS1+='> '
fi
}

View File

@@ -25,7 +25,7 @@ alias nupdate="nix-channel --update"
alias typix="nix flake init --refresh -t github:loqusion/typix"
alias twatch="typst watch"
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"
@@ -41,7 +41,12 @@ t() {
tmux new-session -A -s ${1:-tmux}
}
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)

View File

@@ -2,23 +2,12 @@ export ZSH="$HOME/.oh-my-zsh"
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"
# 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)
zstyle :omz:plugins:ssh-agent helper sshaskpass
zstyle :omz:update mode disabled
bindkey ^F forward-word
bindkey ^B backward-word
@@ -29,3 +18,15 @@ source $ZSH/oh-my-zsh.sh
[ -f ~/.shellrc.alias ] && source ~/.shellrc.alias
[ -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

View File

@@ -403,7 +403,7 @@ default_layout "compact"
// Path to the default editor to use to edit pane scrollbuffer
// Default: $EDITOR or $VISUAL
// scrollback_editor "/usr/bin/vim"
scrollback_editor "hx"
// A fixed name to always give the Zellij session.
// Consider also setting `attach_to_session true,`

View File

@@ -1,5 +1,5 @@
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
+++ b/plugins/ssh-agent/ssh-agent.plugin.zsh
@@ -24,7 +24,7 @@ function _start_agent() {
@@ -11,3 +11,13 @@ index 8354864..61462fd 100644
chmod 600 "$ssh_env_cache"
. "$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

View File

@@ -4,7 +4,7 @@ Description=Remove SSH keys on lock
[Service]
Type=simple
Environment=SSH_AUTH_SOCK=/tmp/agent.sock
ExecStart=%h/.dots/remove-ssh.bash
ExecStart=%h/.dots/scripts/remove-ssh.bash
[Install]
WantedBy=default.target