1
0
mirror of https://github.com/frebib/dotfiles.git synced 2024-06-14 12:57:23 +00:00

6 Commits

Author SHA1 Message Date
73131b086f aliases: git: gfrb/gfrbi defaults to defbranch
Much like how `git pull` will default to the remote tracking branch if
called with no arguments, gfrb and gfrbi will fetch and rebase from the
"default" branch according to git defbranch.

Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-30 13:43:18 +00:00
a7af23bfbb git: Allow git cleanmerged/defbranch to take args
These aliases now make zero assumptions about either branch or origin
names. They default to origin, and the primary branch is determined from
the refs/remotes/$remote/HEAD symbolic-ref, which will be pulled from
the remote if it's not known locally.
With these it is now possible to act on any remote/branch combination:

    # Get default branch for 'upstream' remote
    $ git defbranch upstream

    # Delete branches merged into the default branch of the 'upstream'
    # remote
    $ git cleanmerged upstream

    # Delete branches merged into the upstream/foo branch
    $ git cleanmerged upstream foo

Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-27 09:16:57 +00:00
56fd0ad602 git: Add mv/reflog/clean-merged aliases
Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-27 09:16:51 +00:00
cbb44c99ee i3: screenshot to clipboard by default
Use Shift+PrtScr to upload to the http share, as that's a less common
use-case.

Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-26 22:03:13 +00:00
2bd257243a xprofile: Run dpi script on startup
Ensures configuration of various graphical services is set correctly on
startup, either before they start, or just after, restarting them
accordingly. This should scale i3, picom, gtk and friends for a seamless
experience.

Use xresources as a source of truth for this information.

Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-26 22:02:34 +00:00
d538b61cb1 scripts/dpi: Constant blur/corner-radius/cursor scaling
Scale picom blur and corner radius and X cursor size according to a
constant scale factor. This ideally would be defined somewhere
centrally, but this is better than nothing.

Signed-off-by: Joe Groocock <me@frebib.net>
2022-10-26 21:54:02 +00:00
18 changed files with 54 additions and 67 deletions

View File

@ -17,7 +17,7 @@ export MOZ_USE_XINPUT2=1 # enable pixel-accurate scrolling in firefox
# Load Xorg resources and set the DPI
xrdb -merge "$XDG_CONFIG_HOME/X11/xresources"
#"$XDG_CONFIG_HOME/scripts/dpi" "$(xrdb -query | grep -i xft.dpi | cut -d: -f2 | xargs)"
"$XDG_CONFIG_HOME/scripts/dpi" "$(xrdb -query | grep -i xft.dpi | cut -d: -f2 | xargs)"
setxkbmap -option caps:none
xset r rate 200 18

View File

@ -36,5 +36,5 @@ Xft.hinting: true
Xft.hintstyle: hintfull
Xft.lcdfilter: lcddefault
Xcursor.size: 28
Xcursor.theme: BreezeX-Black
Xcursor.size: 16
Xcursor.theme: Breeze_Obsidian

11
aliases
View File

@ -53,7 +53,7 @@ alias scp='scp -r'
alias dd='dd status=progress'
alias wget='wget --hsts-file=$XDG_DATA_HOME/wget/hsts-file'
alias vi=vim
alias grip='grip --pass=$GRIP_API_KEY'
alias grip='grip --user=frebib --pass=$GRIP_API_KEY'
alias acme.sh='$XDG_CONFIG_HOME/acme.sh/acme.sh --home $XDG_CONFIG_HOME/acme.sh --config-home $XDG_CONFIG_HOME/acme.sh --log $XDG_CONFIG_HOME/acme.sh/acme.sh.log'
alias acmesh='$XDG_CONFIG_HOME/acme.sh/acme.sh --home $XDG_CONFIG_HOME/acme.sh --config-home $XDG_CONFIG_HOME/acme.sh --log $XDG_CONFIG_HOME/acme.sh/acme.sh.log'
alias alpine-sdk="docker run -ti --rm \
@ -119,6 +119,7 @@ alias gau="git add -u"
alias gaN="git add -N"
alias gaa="ga -A"
alias grm="git rm"
alias gmv="git mv"
alias gc="git commit -s"
alias gcm="git commit -s -em"
alias gca="git commit -s --amend --date=\"\$(date -R)\""
@ -126,6 +127,7 @@ alias gcn="git commit -s --no-edit"
alias gcan="gca -s --no-edit"
alias gcam="gca -s -m"
alias gst="git status"
alias grl="git reflog"
alias gm="git merge"
alias gma="git merge --abort"
@ -136,9 +138,9 @@ alias grba="grb --abort"
alias grbc="grb --continue"
alias grbsk="grb --skip"
alias grbsh="grb --show-current"
alias grbom="git rebase \"origin/\$(git defbranch)\""
gfrb() { remote="${1%/*}"; git fetch "$remote" && git rebase "$@"; }
gfrbi() { remote="${1%/*}"; git fetch "$remote" && git rebase -i "$@"; }
alias grbom="git rebase \"origin/\$(git defbranch origin)\""
gfrb() { ref="${1:-origin/$(git defbranch origin)}"; remote="${ref%%/*}"; git fetch "$remote" && git rebase "$ref" "${@:2}"; }
gfrbi() { ref="${1:-origin/$(git defbranch origin)}"; remote="${ref%%/*}"; git fetch "$remote" && git rebase -i "$ref" "${@:2}"; }
alias gam="git am"
alias gama="git am --abort"
@ -175,6 +177,7 @@ alias glog="git log --color --oneline --decorate --graph"
alias grst="git reset"
alias gundo="git reset --keep @~1"
alias gclean="git clean"
alias gclm="git cleanmerged"
alias gbr="git branch"
alias gbrl="git for-each-ref --sort=committerdate refs/heads/ --format=\"%(refname:short)\" | fzf -x --ansi --multi --preview-window=right:70% --preview=\"git log --format=fuller --stat --color=always {} | head -n\$((\$(tput lines)*10))\""
alias gtg="git tag"

View File

@ -22,6 +22,6 @@ WEECHAT_HOME="$XDG_CONFIG_HOME/weechat"
XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
ZDOTDIR="$XDG_CONFIG_HOME/zsh"
PATH="${PATH}:${GOPATH}/bin:${GEM_HOME}/ruby/3.0.0/bin"
PATH="${PATH}:${GOPATH}/bin:${GEM_HOME}/bin"
# vim: ft=sh

View File

@ -5,11 +5,11 @@
[core]
autocrlf = input
excludesfile = /home/frebib/.config/git/gitignore
pager = delta --diff-so-fancy --color-only
pager = diff-highlight | $PAGER
[init]
defaultBranch = master
[interactive]
diffFilter = delta --diff-so-fancy --color-only
diffFilter = diff-highlight
[commit]
gpgsign = true
[fetch]
@ -37,8 +37,23 @@
count = !echo $(pwd) && git rev-list HEAD --count
unpushed = !git log --oneline @{u}..HEAD
leaders = !git shortlog -s -n --all --no-merges
defbranch = !git symbolic-ref refs/remotes/origin/HEAD | sed \"s@^refs/remotes/origin/@@\"
rbranch = for-each-ref --sort='committerdate' --format="%20%20%(refname:short)" refs/heads/
defbranch = "!defbranch() { \
r=\"${1:-origin}\"; \
{ \
git symbolic-ref \"refs/remotes/$r/HEAD\" || { \
git remote set-head \"$r\" -a >&2 && \
git symbolic-ref \"refs/remotes/$r/HEAD\"; \
}; \
} 2>/dev/null \
| sed \"s@^refs/remotes/$r/@@\"; \
}; defbranch"
cleanmerged = "!cleanmerged() { \
r=\"${1:-origin}\"; \
b=\"${2:-$(git defbranch \"$r\")}\"; \
git branch --merged \"$r/$b\" | \
grep -ve \"^\\\\*\" -e \"^. $b$\" | \
xargs -r git branch -d; \
}; cleanmerged"
[advice]
statusHints = false
pushUpdateRejected = false

View File

@ -1,8 +1,8 @@
gtk-theme-name="Arc-Dark"
gtk-icon-theme-name="Xenlism-Wildfire"
gtk-font-name="sans 9"
gtk-cursor-theme-name="BreezeX-Black"
gtk-cursor-theme-size=28
gtk-cursor-theme-name="Breeze_Obsidian"
gtk-cursor-theme-size=16
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1

View File

@ -3,8 +3,8 @@ gtk-theme-name=Arc-Dark
gtk-icon-theme-name=Xenlism-Wildfire
gtk-application-prefer-dark-theme=true
gtk-font-name=sans 9
gtk-cursor-theme-name=BreezeX-Black
gtk-cursor-theme-size=28
gtk-cursor-theme-name=Breeze_Obsidian
gtk-cursor-theme-size=16
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1

View File

@ -139,7 +139,7 @@ bindsym $mod+v exec systemd-run-i3 -n alacritty -e sh -c "($SHE
bindsym $mod+Ctrl+v exec systemd-run-i3 -n alacritty --class floating -e sh -c "($SHELL -c $EDITOR || : ) && $SHELL"
bindsym $mod+l exec dm-tool switch-to-greeter
bindsym $mod+space exec "pkill rofi; rofi -show run -sidebar-mode -terminal i3-sensible-terminal -normal-window -run-command 'systemd-run-i3 -n {cmd}'"
bindsym $mod+Shift+p exec systemd-run-i3 -n rofi-rbw
bindsym $mod+Shift+p exec rofi-pass --root $(grep path ~/.config/gopass/config.yml | sed -E 's|^.*fs\+file://||g' | tr '\n' ':') | sed 's/:$//g'
bindsym $mod+Shift+e exec "pkill rofi; rofi -show emoji -modi emoji -normal-window"
bindsym $mod+Shift+i exec rofi-fontawesome
bindsym --release Print exec screenshot --clip
@ -150,7 +150,7 @@ bindsym $mod+Shift+x exec systemd-run-i3 -n i3-sensible-terminal --cl
bindsym $mod+$alt+space exec systemd-run-i3 -s background -n ~/.config/i3/cycleaudio.py
bindsym $mod+numbersign exec systemd-run-i3 -n i3-sensible-terminal --hold -e sh -c 'xclip -o | gpg --decrypt 2>&1'
bindsym $mod+r exec bash -c 'pwgen -snc 32 1 | tee >(xargs notify-send Generated\ password\:) | xclip -i -r'
bindsym $mod+g exec systemd-run-i3 -n bash -xc 'xclip -o | gh gist create -d Paste - 2>&1 | grep -vE "^[-✓] Creat(ing|ed) gist" | tee >(xclip -i >&2 >/dev/null) | xargs -I% --null -r notify-send -c transfer -- %'
bindsym $mod+g exec systemd-run-i3 -n notify-send -c transfer "$(gist -PRpc)"
bindsym --release $mod+i exec systemd-run-i3 -s background -n sh -c 'sleep 0.5 && xdotool getactivewindow type --delay 10 -- "$(xclip -o -selection clipboard)"'
bindsym $mod+z exec otp | rofi -dmenu -p otp | xargs otp

View File

@ -11,7 +11,7 @@ case $option in
power\ off) systemctl poweroff;;
reboot) systemctl reboot;;
windows)
windows="$(efibootmgr | grep -Po -m1 'Boot\K(\d{4}).*Windows.*' | head -c4)"
windows=`efibootmgr | grep -Po -m1 'Boot\K(\d{4}).*Windows.*' | head -c4`
sudo efibootmgr -n $windows
systemctl reboot;;
reboot;;
esac

View File

@ -6,8 +6,8 @@ log-level = "info";
shadow = true;
shadow-radius = 30;
shadow-offset-x = -30;
shadow-offset-y = -24;
shadow-opacity = 0.4;
shadow-offset-y = -26;
shadow-opacity = 0.35;
shadow-color = "#000000";
shadow-exclude = [
"class_g = 'slop'",
@ -38,7 +38,7 @@ opacity-rule = [
blur:
{
method = "dual_kawase";
strength = 12;
strength = 10;
};
blur-background-frame = true;
blur-background-fixed = true;
@ -79,11 +79,6 @@ focus-exclude = [
"class_g = 'steam_app_271590'"
];
transition-length = 350;
transition-pow-x = 0.3;
transition-pow-y = 0.3;
size-transition = true;
# Other
# https://github.com/yshui/picom/blob/next/picom.sample.conf#L203
backend = "glx";
@ -136,17 +131,4 @@ wintypes: {
}
};
#animations = true;
#animation-clamping = false;
#animation-dampening = 1.0;
#animation-window-mass = 0.125;
#animation-unmap = "fade-out";
#animation-for-unmap-window = "zoom";
#animation-for-open-window = "auto";
#animation-workspace-in = "slide-left";
#animation-workspace-out = "slide-left";
#animation-for-workspace-switch-in = "auto";
#animation-for-workspace-switch-out = "auto";
#animation-for-transient-window = "zoom";
# vim: ft=conf noet

View File

@ -267,7 +267,7 @@ ramp-capacity-1-foreground = ${colours.warning}
[module/cputemp]
type = internal/temperature
hwmon-path = /sys/devices/pci0000:00/0000:00:18.3/hwmon/hwmon1/temp2_input
hwmon-path = /sys/devices/platform/nct6775.656/hwmon/hwmon1/temp2_input
base-temperature = 25
format = <ramp> <label>

View File

@ -5,8 +5,8 @@ configuration {
/* show-icons: true; */
separator-style: "solid";
modi: "window,run,ssh";
/* kb-row-tab: "Shift-Tab"; */
/* kb-row-select: "Tab"; */
kb-row-tab: "Shift-Tab";
kb-row-select: "Tab";
terminal: "i3-sensible-terminal";
matching: "glob";

View File

@ -4,9 +4,9 @@ set -eu
# Based on https://github.com/vincentbernat/awesome-configuration/blob/master/bin/xsettingsd-setup
CONF_DIR="${XDG_CONFIG_HOME:-$HOME/.config}"
BLUR_STRENGTH=12
CURSOR_SIZE=28
BLUR_STRENGTH=10
CORNER_RADIUS=9
CURSOR_SIZE=16
xrdbget() {
set -o pipefail
@ -57,13 +57,13 @@ Xft.dpi: $dpi
Xcursor.size: $cursor
EOF
xrandr --dpi "$dpi" &
systemctl --user reload-or-restart xsettingsd &
systemctl --user try-reload-or-restart xsettingsd &
wait
systemctl --user reload \
systemctl --user try-reload-or-restart \
i3 \
polybar@i3bar &
systemctl --user restart \
systemctl --user try-restart \
dunst &
wait

View File

@ -59,7 +59,7 @@ function notify() {
function display() {
update=$'\tUpdate Font Awesome cache'
fontawesome=$(grep -v '#\|^[[:space:]]*$' "$FONTAWESOME_FILE"; printf "$update\n")
line=$(echo "$fontawesome" | rofi -dmenu -i -p fontawesome -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' $@)
line=$(echo "$fontawesome" | rofi -dmenu -i -p fontawesome -normal-window -kb-custom-1 Ctrl+c -kb-row-tab '' -kb-row-select Tab $@)
exit_code=$?
if [ "${line[@]}" == "$update" ]; then

View File

@ -1,7 +1,7 @@
[Unit]
Description=Load Xorg configuration
# this is a bit weird, but I guess it works
PartOf=xorg.target
After=xorg.target
[Service]
Type=oneshot

View File

@ -1,6 +1,6 @@
# This file is written by xdg-user-dirs-update
# If you want to change or add directories, just edit the line you're
# interested in. All local changes will be retained on the next run.
# interested in. All local changes will be retained on the next run
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
# absolute path. No other format is supported.

View File

@ -53,9 +53,8 @@ function! SaveIfExist()
write
endif
endfunction
set autowrite
autocmd InsertLeave <buffer> :write
autocmd CursorHold,CursorHoldI,InsertLeave,FocusGained,FocusLost * call SaveIfExist()
" Search options
set hlsearch
@ -90,6 +89,7 @@ endif
call plug#begin('$XDG_CONFIG_HOME/vim/plug')
Plug 'scrooloose/nerdtree', { 'on': 'NERTreeToggle' }
Plug 'tpope/vim-sensible'
Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-rhubarb'
@ -134,10 +134,6 @@ let g:use_dvorak = 1
call deoplete#custom#option({
\ 'camel_case': v:true,
\ })
" Use ALE as completion sources for all code.
"call deoplete#custom#option('sources', {
"\ '_': ['ale'],
"\})
call deoplete#enable()
" Vim-Airline config
@ -155,10 +151,8 @@ let vim_markdown_preview_use_xdg_open=1
let vim_markdown_preview_github=1
" LaTeX config
"let g:vimtex_view_method='zathura'
let g:tex_flavor='xelatex'
let g:vimtex_indent_enabled = 0 " auto-indentation is wrong and annoying
let g:syntastic_tex_checkers = ['chktex']
autocmd FileType tex silent VimtexCompile
autocmd FileType tex setlocal spell
augroup vimtex

View File

@ -128,10 +128,3 @@ trysource() { for f in "$@"; do source "$f" 2>/dev/null && return; done; }
trysource /usr/share/fzf/key-bindings.zsh \
/usr/share/doc/fzf/examples/key-bindings.zsh
trysource /usr/share/doc/pkgfile/command-not-found.zsh # pkgfile on Arch
if command -v kubectl >/dev/null 2>&1; then
autoload -Uz compinit
compinit
source <(kubectl completion zsh)
fi