diff --git a/dotfiles/.local/share/chezmoi/.chezmoi.toml.tmpl b/dotfiles/.local/share/chezmoi/.chezmoi.toml.tmpl index 50d084a5..7b004c3e 100644 --- a/dotfiles/.local/share/chezmoi/.chezmoi.toml.tmpl +++ b/dotfiles/.local/share/chezmoi/.chezmoi.toml.tmpl @@ -1,6 +1,10 @@ {{- $codespaces:= env "CODESPACES" | not | not -}} -{{- $email := promptStringOnce . "email" "Email address" -}} -{{- $name := promptStringOnce . "name" "Full name" -}} +{{- if $codespaces | not }} +{{- $email := promptStringOnce . "email" "Primary e-mail address" -}} +{{- $name := promptStringOnce . "name" "Full name" -}} +{{- $gmailAddress := promptStringOnce "Gmail address" -}} +{{- $gmailAddressAppPassword := promptStringOnce "Gmail app password" -}} +{{- end }} sourceDir = {{ .chezmoi.sourceDir | quote }} [data] @@ -8,9 +12,13 @@ sourceDir = {{ .chezmoi.sourceDir | quote }} headless = {{ $headless }} {{- if $codespaces }} email = "help@megabyte.space" + gmailAddress = "" + gmailAddressAppPassword = "" name = "Megabyte Labs" {{- else }} email = {{ $email | quote }} + gmailAddress = {{ $gmailAddress | quote }} + gmailAddressAppPassword = {{ $gmailAddressAppPassword | quote }} name = {{ $name | quote }} {{- end }} diff --git a/dotfiles/.local/share/chezmoi/private_dot_config/crontab/config b/dotfiles/.local/share/chezmoi/private_dot_config/crontab/config new file mode 100644 index 00000000..2e12672d --- /dev/null +++ b/dotfiles/.local/share/chezmoi/private_dot_config/crontab/config @@ -0,0 +1,14 @@ + + +PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin + +# 0 8 * * 0 $HOME/.scripts/domingobot.sh 2>&1 >> $HOME/.log/cron.log + +# * * * * * command to be executed +# ┯ ┯ ┯ ┯ ┯ +# │ │ │ │ │ +# │ │ │ │ ╰───── day of week (0 - 6) (Sunday=0) +# │ │ │ ╰─────── month (1 - 12) +# │ │ ╰───────── day of month (1 - 31) +# │ ╰─────────── hour (0 - 23) +# ╰───────────── min (0 - 59) diff --git a/dotfiles/.local/share/chezmoi/private_dot_config/git/commit-template b/dotfiles/.local/share/chezmoi/private_dot_config/git/commit-template new file mode 100644 index 00000000..bfa2797d --- /dev/null +++ b/dotfiles/.local/share/chezmoi/private_dot_config/git/commit-template @@ -0,0 +1,14 @@ +# [optional scope]:  (not more than 72 chars) +# +# [optional body]  (not more than 72 chars) +# +# [optional footer(s)]  (not more than 72 chars) +#-------------------------------EXAMPLE---------------------------------- +# feat!(frontend): new button added in dashboard +# +# A new "Follow Us" button is added in your Account dashboard. +# If you don't see it, please delete your browser cache and reload the +# webpage. +# +# BREAKING CHANGE: this button replaces the custom button you have, +# you need to reconfigure your custom button. \ No newline at end of file diff --git a/dotfiles/.local/share/chezmoi/private_dot_config/git/config.tmpl b/dotfiles/.local/share/chezmoi/private_dot_config/git/config.tmpl index aa92add6..8ef9d223 100644 --- a/dotfiles/.local/share/chezmoi/private_dot_config/git/config.tmpl +++ b/dotfiles/.local/share/chezmoi/private_dot_config/git/config.tmpl @@ -1,95 +1,138 @@ +[include] + path = ${XDG_DATA_HOME}/delta/themes.gitconfig + path = ${XDG_CONFIG_HOME}/git/local.toml +[advice] + detachedHead = false +[alias] + c = commit + ca = commit -a + cm = commit -m + cam = commit -am + d = diff + dc = diff --cached + l = log --graph --pretty=format:"%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset" --abbrev-commit + master = !git add --all && git commit -am 'Quick commit.' -n && git push origin master [branch] - autosetuprebase = always + autosetuprebase = always [color] - ui = auto - diff = auto - status = auto - branch = auto - interactive = auto + diff = auto + status = auto + branch = auto + interactive = auto + ui = true + pager = true [color "branch"] - current = yellow reverse - local = yellow - remote = green + current = yellow reverse + local = yellow + remote = green [color "diff"] - meta = yellow bold - frag = magenta bold - old = red bold - new = green bold + meta = yellow bold + frag = magenta bold + old = red bold + new = green bold [color "status"] - added = yellow - changed = green - untracked = cyan + added = yellow + changed = green + untracked = cyan +[commit] + template = ${XDG_CONFIG_HOME}/git/commit-template [core] - autocrlf = false - safecrlf = warn - pager = delta -w ${FZF_PREVIEW_COLUMNS:-$COLUMNS} - editor = code --wait - whitespace = trailing-space,space-before-tab -[diff] - renamelimit = 0 - mnemonicprefix = true - renames = copies -[fetch] - prune = true -[help] - autocorrect = 1 -[init] - defaultBranch = main -[interactive] - diffFilter = delta --color-only -[merge] - ff = only - renamelimit = 0 - summary = true - stat = true - conflictstyle = diff3 - tool = vscode -[mergetool "vscode"] - cmd = code --wait $MERGED -[pack] - threads = 0 -[pull] - rebase = true -[push] - autoSetupRemote = true - default = upstream - followTags = true -[rebase] - autosquash = true -[rerere] - enabled = true - autoupdate = true -[transfer] - fsckobjects = true -[status] - showUntrackedFiles = all - -[delta] - features = side-by-side line-numbers decorations - syntax-theme = Dracula - plus-style = syntax "#003800" - minus-style = syntax "#3f0001" - -[delta "decorations"] - commit-decoration-style = bold yellow box ul - file-style = bold yellow ul - file-decoration-style = none - hunk-header-decoration-style = cyan box ul - -[delta "line-numbers"] - line-numbers-left-style = cyan - line-numbers-right-style = cyan - line-numbers-minus-style = 124 - line-numbers-plus-style = 28 - -[user] - name = "{{ .user.name }}" - email = "{{ .user.email }}" - + editor = vi + excludesfile = ~/.gitignore + autocrlf = input + attributesfile = ~/.gitattributes + editor = code --wait + pager = delta -w ${FZF_PREVIEW_COLUMNS:-$COLUMNS} + safecrlf = warn + whitespace = trailing-space,space-before-tab +[credential] + helper = cache --timeout=3600 [credential "https://github.com"] helper = !gh auth git-credential [credential "https://gist.github.com"] helper = !gh auth git-credential - -[include] - path = ~/.config/git/local.toml +[delta] + decorations = true + features = side-by-side decorations hyperlinks interactive navigate unobtrusive-line-numbers woolly-mammoth zebra-dark + hyperlinks = true + interactive = true + map-styles = bold purple => syntax magenta, bold cyan => syntax blue + navigate = true + side-by-side = true + unobtrusive-line-numbers = true + plus-style = syntax "#003800" + minus-style = syntax "#3f0001" +[delta "interactive"] + keep-plus-minus-markers = false +[delta "decorations"] + commit-decoration-style = blue ol + commit-style = raw + file-style = omit + hunk-header-decoration-style = blue box + hunk-header-file-style = red + hunk-header-line-number-style = "#067a00" + hunk-header-style = file line-number syntax +[delta "line-numbers"] + line-numbers-left-style = cyan + line-numbers-right-style = cyan + line-numbers-minus-style = 124 + line-numbers-plus-style = 28 +[diff] + colorMoved = default + ignoresubmodules = dirty + renamelimit = 0 + mnemonicprefix = true + renames = copies +[diff "image"] + command = compare $2 $1 png:- | montage -geometry +4+4 $2 - $1 png:- | display -title \"$1\" - +[difftool] + prompt = false +[fetch] + prune = true +[help] + autocorrect = 20 +[init] + defaultBranch = master + templatedir = /Users/bzalewski/.local/git-templates +[interactive] + diffFilter = delta --color-only --features=interactive +[merge] + conflictstyle = diff3 + ff = only + renamelimit = 0 + summary = true + stat = true + tool = vscode +[mergetool "vscode"] + cmd = code --wait $MERGED +[pack] + threads = 0 +[pull] + rebase = true +[push] + autoSetupRemote = true + default = upstream + followTags = true +[rebase] + autosquash = true +[rerere] + enabled = true + autoupdate = true +[sendemail] + smtpserver = smtp.gmail.com + smtpuser = {{ .user.gmailAddress }} + smtpencryption = tls + smtpserverport = 587 + smtpPass = {{ .user.gmailAddressAppPassword }} +[status] + showUntrackedFiles = all + submoduleSummary = true +[transfer] + fsckobjects = true +[url "https://"] + insteadOf = git:// +[user] + email = {{ .user.email }} + name = {{ .user.name }} +[web] + browser = google-chrome diff --git a/dotfiles/.local/share/chezmoi/private_dot_config/shell/exports b/dotfiles/.local/share/chezmoi/private_dot_config/shell/exports index 41f16156..6b53eef7 100644 --- a/dotfiles/.local/share/chezmoi/private_dot_config/shell/exports +++ b/dotfiles/.local/share/chezmoi/private_dot_config/shell/exports @@ -1,7 +1,7 @@ #!/usr/bin/env sh -### Theme -export COLOR_SCHEME=dark +### Disable Telemetry +export DO_NOT_TRACK=1 ### XDG # Source: # https://wiki.archlinux.org/index.php/XDG_Base_Directory @@ -28,21 +28,115 @@ export XDG_TEMPLATES_DIR="$HOME/Templates" export XDG_PUBLICSHARE_DIR="$HOME/Public" {{- end }} +### Theme +export COLOR_SCHEME=dark +export GTK_RC_FILES="$XDG_CONFIG_HOME/gtk-1.0/gtkrc" +export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc" + +### PATH +export PATH="$PATH:$HOME/.local/bin" +export SSH_KEY_PATH="~/.ssh/id_rsa" + +{{- if eq .host.distro.family "linux" -}} +### Homebrew +if [ -d /home/linuxbrew/.linuxbrew/bin ]; then + export HOMEBREW_PREFIX="/home/linuxbrew/.linuxbrew" + export HOMEBREW_CELLAR="/home/linuxbrew/.linuxbrew/Cellar" + export HOMEBREW_REPOSITORY="/home/linuxbrew/.linuxbrew/Homebrew" + export PATH="/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin${PATH+:$PATH}" + export MANPATH="/home/linuxbrew/.linuxbrew/share/man${MANPATH+:$MANPATH}:" + export INFOPATH="/home/linuxbrew/.linuxbrew/share/info:${INFOPATH:-}" + export WHALEBREW_INSTALL_PATH="/home/linuxbrew/.linuxbrew/whalebrew" +fi + +{{- end }} +### Android Studio +{{- if eq .host.distro.family "darwin" -}} +if [ -d ~/Library/Android ]; then + export PATH="$PATH:~/Library/Android/sdk/cmdline-tools/latest/bin" + export PATH="$PATH:~/Library/Android/sdk/platform-tools" + export PATH="$PATH:~/Library/Android/sdk/tools/bin" + export PATH="$PATH:~/Library/Android/sdk/tools" +fi +{{- end }} +export ANDROID_SDK_HOME="$XDG_DATA_HOME/android-sdk" + ### ASDF export ASDF_CONFIG_FILE="$XDG_CONFIG_HOME/asdf/asdfrc" export ASDF_DIR="$XDG_DATA_HOME/asdf" export ASDF_DATA_DIR="$ASDF_DIR" -export ASDF_CRATE_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-cargo-pkgs -export ASDF_GEM_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-ruby-pkgs -export ASDF_GOLANG_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-golang-pkgs +export ASDF_CRATE_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-cargo-pkgs" +export ASDF_GEM_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-ruby-pkgs" +export ASDF_GOLANG_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-golang-pkgs" export ASDF_NPM_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-npm-packages" -export ASDF_PYTHON_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-python-pkgs +export ASDF_PYTHON_DEFAULT_PACKAGES_FILE="$XDG_CONFIG_HOME/asdf/default-python-pkgs" + +### AWS CLI +export AWS_SHARED_CREDENTIALS_FILE="$XDG_CONFIG_HOME/aws/credentials" +export AWS_CONFIG_FILE="$XDG_CONFIG_HOME/aws/config" + +### Azure CLI +export AZURE_CONFIG_DIR="$XDG_CONFIG_HOME/azure" + +### bat +export BAT_CONFIG_PATH="$XDG_CONFIG_HOME/bat/config" ### Cargo export CARGO_HOME="$XDG_DATA_HOME/cargo" +export PATH="$PATH:$CARGO_HOME/bin" + +### Bash +export BASH_COMPLETION_USER_FILE="$XDG_CONFIG_HOME/bash-completion/bash_completion" + +### BitWarden +# https://bitwarden.com/help/cli/#using-an-api-key +# BW_CLIENTID client_id +# BW_CLIENTSECRET + +### Docker +export DOCKER_CONFIG="$XDG_CONFIG_HOME/docker" +export MACHINE_STORAGE_PATH="$XDG_DATA_HOME/docker-machine" + +### Elastic Agent +# https://www.elastic.co/guide/en/fleet/current/agent-environment-variables.html#env-common-vars + +### ffmpeg +export FFMPEG_DATADIR="$XDG_CONFIG_HOME/ffmpeg" + +### fzf +if command -v fd > /dev/null; then + export FZF_DEFAULT_COMMAND='fd --type f --strip-cwd-prefix --hidden --follow --exclude .git' + export FZF_DEFAULT_OPTS='--layout=reverse --inline-info' + export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" +fi + +### Git +export GIT_MERGE_AUTOEDIT=no + +### gitfuzzy +if command -v delta > /dev/null; then + export GF_BAT_STYLE=changes + export GF_BAT_THEME=zenbur + export GF_SNAPSHOT_DIRECTORY="$XDG_DATA_HOME/git-fuzzy-snapshots" + export GF_PREFERRED_PAGER="delta --theme=gruvbox --highlight-removed -w __WIDTH__" +fi ### Go export GOPATH="$XDG_DATA_HOME/go" +export GO111MODULE=on +export PATH="$PATH:${GOPATH}/bin" +if command -v go > /dev/null && which go | grep -q 'asdf' > /dev/null && command -v asdf > /dev/null; then + GOROOT="$(asdf where golang)/go" + export GOROOT + export PATH="$PATH:${GOROOT}/bin" +elif command -v go > /dev/null && command -v brew > /dev/null; then + GOROOT="$(brew --prefix go)/libexec" + export GOROOT + export PATH="$PATH:${GOROOT}/bin" +fi + +### Gradle +export GRADLE_USER_HOME="$XDG_DATA_HOME/gradle" ### Homebrew export HOMEBREW_BUNDLE_FILE="$XDG_CONFIG_HOME/Brewfile" @@ -53,16 +147,102 @@ export HOMEBREW_CASK_OPTS="--appdir=~/Applications" ### HTTPie export HTTPIE_CONFIG_DIR="$XDG_CONFIG_HOME/httpie" +### IPFS +export IPFS_PATH="$XDG_DATA_HOME/ipfs" + +### Java +export _JAVA_OPTIONS=-Djava.util.prefs.userRoot="$XDG_CONFIG_HOME/java" + +### k9s +export K9SCONFIG="$XDG_CONFIG_HOME/k9s" + +### KDE +export KDEHOME="$XDG_CONFIG_HOME/kde" + +### Kodi +export KODI_DATA="$XDG_DATA_HOME/kodi" + +### McFly +export MCFLY_FUZZY=2 +export MCFLY_RESULTS=14 +export MCFLY_KEY_SCHEME=vim + +### minikube +export MINIKUBE_HOME="$XDG_DATA_HOME/minikube" + +### MySQL +export MYSQL_HISTFILE="$XDG_DATA_HOME/mysql_history" + +### nnn +if command -v nnn > /dev/null; then + alias n='nnn -de' + alias N='sudo -E nnn -dH' + alias nnn-install-plugins='curl -Ls https://raw.githubusercontent.com/jarun/nnn/master/plugins/getplugs | sh' + export NNN_RCLONE='rclone mount --read-only --no-checksum' + export NNN_SSHFS='sshfs -o reconnect,idmap=user,cache_timeout=3600' +fi + +### Node.js +export NODE_REPL_HISTORY="$XDG_DATA_HOME/node_repl_history" + ### NPM export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc" +### Parallels +export PARALLEL_HOME="$XDG_CONFIG_HOME/parallel" + +### Pass +export PASSWORD_STORE_DIR="$XDG_DATA_HOME/pass" + +### Poetry +export POETRY_HOME="$XDG_DATA_HOME/poetry" +export PATH="$POETRY_HOME/bin:$PATH" + +### Postgres +export PSQLRC="$XDG_CONFIG_HOME/pg/psqlrc" +export PSQL_HISTORY="$XDG_STATE_HOME/psql_history" +export PGPASSFILE="$XDG_CONFIG_HOME/pg/pgpass" +export PGSERVICEFILE="$XDG_CONFIG_HOME/pg/pg_service.conf" + +### Readline +export INPUTRC="$XDG_CONFIG_HOME/readline/inputrc" + +### Rear +# https://github.com/rear/rear/blob/master/doc/user-guide/03-configuration.adoc + +### Redis +export REDISCLI_HISTFILE="$XDG_DATA_HOME/redis/rediscli_history" +export REDISCLI_RCFILE="$XDG_CONFIG_HOME/redis/redisclirc" + +### ripgrep +export RIPGREP_CONFIG_PATH="$XDG_CONFIG_HOME/ripgrep/config" + +### Ruby +export GEM_HOME="$XDG_DATA_HOME/gems" +export PATH="$PATH:$GEM_HOME/bin" + ### Rustup export RUSTUP_HOME="$XDG_DATA_HOME/rustup" +### SDKMan +export SDKMAN_DIR="$XDG_DATA_HOME/sdkman" + +### Vagrant +export VAGRANT_ALIAS_FILE="$XDG_DATA_HOME/vagrant/aliases" +export VAGRANT_DEFAULT_PROVIDER=virtualbox +export VAGRANT_HOME="$XDG_DATA_HOME/vagrant.d" + +### Volta +export VOLTA_HOME="$XDG_DATA_HOME/volta" +export PATH="$VOLTA_HOME/bin:$PATH" + ### wget export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc" -### Colorize man pages +### Whalebrew +export WHALEBREW_CONFIG_DIR="$XDG_CONFIG_HOME/whalebrew" + +### Man pages export LESS_TERMCAP_mb=$'\e[1;32m' export LESS_TERMCAP_md=$'\e[1;32m' export LESS_TERMCAP_me=$'\e[0m' @@ -71,13 +251,15 @@ export LESS_TERMCAP_so=$'\e[01;33m' export LESS_TERMCAP_ue=$'\e[0m' export LESS_TERMCAP_us=$'\e[1;4;31m' export LESSHISTFILE=- +export MANPAGER="less -X" ### Line Wrap setterm -linewrap on 2>/dev/null ### History export HISTCONTROL=ignoreboth -export HISTSIZE=5000 +export HISTSIZE=1000000000 +export HISTFILESIZE=$HISTSIZE export HIST_STAMPS=mm/dd/yyyy export SAVEHIST=5000 @@ -100,151 +282,3 @@ export LIBGL_ALWAYS_INDIRECT="1" export BROWSER='/mnt/c/Program\ Files\ \(x86\)/Google/Chrome/Application/chrome.exe' {{- end }} -### PATH -PATH="$PATH:$HOME/.local/bin:$CARGO_HOME/bin" - - -# Don’t clear the screen after quitting a manual page -export MANPAGER="less -X" -### GTK -export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc" - -### Homebrew -if [ -d /home/linuxbrew/.linuxbrew/bin ]; then - export HOMEBREW_PREFIX="/home/linuxbrew/.linuxbrew" - export HOMEBREW_CELLAR="/home/linuxbrew/.linuxbrew/Cellar" - export HOMEBREW_REPOSITORY="/home/linuxbrew/.linuxbrew/Homebrew" - export PATH="/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin${PATH+:$PATH}" - export MANPATH="/home/linuxbrew/.linuxbrew/share/man${MANPATH+:$MANPATH}:" - export INFOPATH="/home/linuxbrew/.linuxbrew/share/info:${INFOPATH:-}" - export WHALEBREW_INSTALL_PATH="/home/linuxbrew/.linuxbrew/whalebrew" -fi - -### Whalebrew -export WHALEBREW_CONFIG_DIR="$HOME/.config/whalebrew" - -### Go -export GOPATH="${HOME}/.local/go" -export GO111MODULE=on -export PATH="$PATH:${GOPATH}/bin" -if command -v go > /dev/null && which go | grep -q 'asdf' > /dev/null && command -v asdf > /dev/null; then - GOROOT="$(asdf where golang)/go" - export GOROOT - export PATH="$PATH:${GOROOT}/bin" -elif command -v go > /dev/null && command -v brew > /dev/null; then - GOROOT="$(brew --prefix go)/libexec" - export GOROOT - export PATH="$PATH:${GOROOT}/bin" -fi - -### Android Studio -if [ -d ~/Library/Android ]; then - export PATH="$PATH:~/Library/Android/sdk/cmdline-tools/latest/bin" - export PATH="$PATH:~/Library/Android/sdk/platform-tools" - export PATH="$PATH:~/Library/Android/sdk/tools/bin" - export PATH="$PATH:~/Library/Android/sdk/tools" -fi -export ANDROID_SDK_HOME="$HOME/.local/android-sdk" - -### Azure CLI -export AZURE_CONFIG_DIR="$HOME/.config/azure" - -### bat -export BAT_CONFIG_PATH="$HOME/.config/batrc" -if command -v bat > /dev/null; then - export MANPAGER="sh -c 'col -bx | bat -l man -p'" - alias bathelp='bat --plain --language=help' - alias cat='bat -pp' - alias less='bat --paging=always' - help() { - "$@" --help 2>&1 | bathelp - } -fi - -### BitWarden -# https://bitwarden.com/help/cli/#using-an-api-key -# BW_CLIENTID client_id -# BW_CLIENTSECRET - -### curlie -if command -v curlie > /dev/null; then - alias curl='curlie' -fi - -### Elastic Agent -# https://www.elastic.co/guide/en/fleet/current/agent-environment-variables.html#env-common-vars - -### exa -if command -v exa > /dev/null; then - alias ls='exa --long --all --color auto --icons --sort=type' - alias tree='exa --tree' - alias la='ls -la' - alias lt='ls --tree --level=2' -fi - -### fzf -if command -v fd > /dev/null; then - export FZF_DEFAULT_COMMAND='fd --type f --strip-cwd-prefix --hidden --follow --exclude .git' - export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" -fi - -### Git -export GIT_MERGE_AUTOEDIT=no - -### gitfuzzy -export GF_BAT_STYLE=changes -export GF_BAT_THEME=zenbur -export GF_SNAPSHOT_DIRECTORY="$HOME/.local/git-fuzzy-snapshots" -if command -v delta > /dev/null; then - export GF_PREFERRED_PAGER="delta --theme=gruvbox --highlight-removed -w __WIDTH__" -fi - -### gping -# Replacement for ping that includes graph -if command -v gping > /dev/null; then - alias ping='gping' -fi - -### McFly -export MCFLY_FUZZY=2 -export MCFLY_RESULTS=14 -export MCFLY_KEY_SCHEME=vim - -### nnn -if command -v nnn > /dev/null; then - alias n='nnn -de' - alias N='sudo -E nnn -dH' - alias nnn-install-plugins='curl -Ls https://raw.githubusercontent.com/jarun/nnn/master/plugins/getplugs | sh' - export NNN_RCLONE='rclone mount --read-only --no-checksum' - export NNN_SSHFS='sshfs -o reconnect,idmap=user,cache_timeout=3600' -fi - -### Poetry -export POETRY_HOME="$HOME/.local/poetry" -export PATH="$POETRY_HOME/bin:$PATH" - -### Rear -# https://github.com/rear/rear/blob/master/doc/user-guide/03-configuration.adoc - -### ripgrep -export RIPGREP_CONFIG_PATH="$HOME/.config/ripgreprc" -if command -v rg &> /dev/null; then - alias grep='rg' -fi - -### Ruby -export GEM_HOME="$HOME/.local/gems" -export PATH="$PATH:$GEM_HOME/bin" - -### Volta -export VOLTA_HOME="$HOME/.local/volta" -export PATH="$VOLTA_HOME/bin:$PATH" -### SDKMan -export SDKMAN_DIR="$HOME/.local/sdkman" - -### Vagrant -export VAGRANT_DEFAULT_PROVIDER=virtualbox -export VAGRANT_HOME="$HOME/.local/vagrant.d" - -### wget -export WGETRC="$HOME/.config/wgetrc" diff --git a/dotfiles/.local/share/chezmoi/run_onchange_after_crontab.tmpl b/dotfiles/.local/share/chezmoi/run_onchange_after_crontab.tmpl new file mode 100644 index 00000000..36c508a3 --- /dev/null +++ b/dotfiles/.local/share/chezmoi/run_onchange_after_crontab.tmpl @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +# {{ output "sha256sum" (joinPath .chezmoi.sourceDir "private_dot_config/crontab/config") }} + +crontab < "$XDG_CONFIG_HOME/crontab/config"