From e712243be494a4158901014faad7ec67ceb809e5 Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Fri, 10 Feb 2023 16:53:03 -0600 Subject: feat: split `.profile` to individual files split `$XDG_CONFIG_HOME/.profile` up into `$XDG_CONFIG_HOME/profile.d` directory. This allows for better management and prioritization between different tool's env. --- sh/.config/profile.d/10-systemd.sh | 3 +++ sh/.config/profile.d/20-docker.sh | 3 +++ sh/.config/profile.d/20-dotnet.sh | 4 ++++ sh/.config/profile.d/20-go.sh | 7 +++++++ sh/.config/profile.d/20-gruvbox.sh | 3 +++ sh/.config/profile.d/20-less.sh | 5 +++++ sh/.config/profile.d/20-man.sh | 4 ++++ sh/.config/profile.d/20-pass.sh | 4 ++++ sh/.config/profile.d/20-perl.sh | 8 ++++++++ sh/.config/profile.d/20-python.sh | 3 +++ sh/.config/profile.d/20-ruby.sh | 6 ++++++ sh/.config/profile.d/20-texlive.sh | 5 +++++ sh/.config/profile.d/20-wget.sh | 3 +++ sh/.config/profile.d/20-zk.sh | 3 +++ sh/.config/profile.d/30-fzf.sh | 16 ++++++++++++++++ sh/.config/profile.d/30-vivid.sh | 6 ++++++ 16 files changed, 83 insertions(+) create mode 100644 sh/.config/profile.d/10-systemd.sh create mode 100644 sh/.config/profile.d/20-docker.sh create mode 100644 sh/.config/profile.d/20-dotnet.sh create mode 100644 sh/.config/profile.d/20-go.sh create mode 100644 sh/.config/profile.d/20-gruvbox.sh create mode 100644 sh/.config/profile.d/20-less.sh create mode 100644 sh/.config/profile.d/20-man.sh create mode 100644 sh/.config/profile.d/20-pass.sh create mode 100644 sh/.config/profile.d/20-perl.sh create mode 100644 sh/.config/profile.d/20-python.sh create mode 100644 sh/.config/profile.d/20-ruby.sh create mode 100644 sh/.config/profile.d/20-texlive.sh create mode 100644 sh/.config/profile.d/20-wget.sh create mode 100644 sh/.config/profile.d/20-zk.sh create mode 100644 sh/.config/profile.d/30-fzf.sh create mode 100644 sh/.config/profile.d/30-vivid.sh (limited to 'sh/.config') diff --git a/sh/.config/profile.d/10-systemd.sh b/sh/.config/profile.d/10-systemd.sh new file mode 100644 index 0000000..e03f8ba --- /dev/null +++ b/sh/.config/profile.d/10-systemd.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export "$(run-parts /usr/lib/systemd/user-environment-generators | xargs)" diff --git a/sh/.config/profile.d/20-docker.sh b/sh/.config/profile.d/20-docker.sh new file mode 100644 index 0000000..cd60889 --- /dev/null +++ b/sh/.config/profile.d/20-docker.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export DOCKER_CONFIG="$XDG_CONFIG_HOME/docker" diff --git a/sh/.config/profile.d/20-dotnet.sh b/sh/.config/profile.d/20-dotnet.sh new file mode 100644 index 0000000..f91a66b --- /dev/null +++ b/sh/.config/profile.d/20-dotnet.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +export DOTNET_CLI_HOME="$XDG_DATA_HOME/dotnet" +export PATH="$PATH:$DOTNET_CLI_HOME/tools" diff --git a/sh/.config/profile.d/20-go.sh b/sh/.config/profile.d/20-go.sh new file mode 100644 index 0000000..58d8115 --- /dev/null +++ b/sh/.config/profile.d/20-go.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +export GOPATH="$XDG_DATA_HOME/go" +export PATH="$PATH:$GOPATH/bin" + +# See: https://drewdevault.com/2022/05/25/Google-has-been-DDoSing-sourcehut.html +export GOPRIVATE=git.sr.ht diff --git a/sh/.config/profile.d/20-gruvbox.sh b/sh/.config/profile.d/20-gruvbox.sh new file mode 100644 index 0000000..5921711 --- /dev/null +++ b/sh/.config/profile.d/20-gruvbox.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export BASE16_DEFAULT_THEME="gruvbox-dark-hard" diff --git a/sh/.config/profile.d/20-less.sh b/sh/.config/profile.d/20-less.sh new file mode 100644 index 0000000..50fe31d --- /dev/null +++ b/sh/.config/profile.d/20-less.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +export LESS="--RAW-CONTROL-CHARS --quit-if-one-screen --mouse" +export LESSOPEN="|lesspipe.sh %s" +export LESSHISTFILE="$XDG_STATE_HOME/lesshst" diff --git a/sh/.config/profile.d/20-man.sh b/sh/.config/profile.d/20-man.sh new file mode 100644 index 0000000..b571f3a --- /dev/null +++ b/sh/.config/profile.d/20-man.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +export MANPAGER="sh -c 'col -bx | bat -l man -p'" +export MANROFFOPT="-c" diff --git a/sh/.config/profile.d/20-pass.sh b/sh/.config/profile.d/20-pass.sh new file mode 100644 index 0000000..0e8794e --- /dev/null +++ b/sh/.config/profile.d/20-pass.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +export PASSWORD_STORE_DIR="$HOME/.password-store" +export PASSWORD_STORE_ENABLE_EXTENSIONS=true diff --git a/sh/.config/profile.d/20-perl.sh b/sh/.config/profile.d/20-perl.sh new file mode 100644 index 0000000..8ee3b93 --- /dev/null +++ b/sh/.config/profile.d/20-perl.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +export PERL_CPANM_HOME="$XDG_CACHE_HOME/perl" +export PERL_LOCAL_LIB_ROOT="$XDG_DATA_HOME/perl" +export PERL5LIB="$PERL_LOCAL_LIB_ROOT/lib/perl5" +export PERL_MB_OPT="--install_base '$PERL_LOCAL_LIB_ROOT'" +export PERL_MM_OPT="INSTALL_BASE=$PERL_LOCAL_LIB_ROOT" +export PATH="$PATH:$PERL_LOCAL_LIB_ROOT/bin" diff --git a/sh/.config/profile.d/20-python.sh b/sh/.config/profile.d/20-python.sh new file mode 100644 index 0000000..65ea113 --- /dev/null +++ b/sh/.config/profile.d/20-python.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export PYTHONSTARTUP="$XDG_CONFIG_HOME/python/startup.py" diff --git a/sh/.config/profile.d/20-ruby.sh b/sh/.config/profile.d/20-ruby.sh new file mode 100644 index 0000000..1336853 --- /dev/null +++ b/sh/.config/profile.d/20-ruby.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +if command -v ruby >/dev/null && command -v gem >/dev/null; then + GEM_USER_DIR="$(ruby -r rubygems -e 'puts Gem.user_dir')" + export PATH="$PATH:$GEM_USER_DIR" +fi diff --git a/sh/.config/profile.d/20-texlive.sh b/sh/.config/profile.d/20-texlive.sh new file mode 100644 index 0000000..f6bff9f --- /dev/null +++ b/sh/.config/profile.d/20-texlive.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +export TEXMFHOME="$XDG_DATA_HOME/texmf" +export TEXMFVAR="$XDG_CACHE_HOME/texlive/texmf-var" +export TEXMFCONFIG="$XDG_CONFIG_HOME/texlive/texmf-config" diff --git a/sh/.config/profile.d/20-wget.sh b/sh/.config/profile.d/20-wget.sh new file mode 100644 index 0000000..02f7041 --- /dev/null +++ b/sh/.config/profile.d/20-wget.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export WGETRC="$XDG_CONFIG_HOME/wgetrc" diff --git a/sh/.config/profile.d/20-zk.sh b/sh/.config/profile.d/20-zk.sh new file mode 100644 index 0000000..c3620a0 --- /dev/null +++ b/sh/.config/profile.d/20-zk.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +export ZK_NOTEBOOK_DIR="$HOME/notebook" diff --git a/sh/.config/profile.d/30-fzf.sh b/sh/.config/profile.d/30-fzf.sh new file mode 100644 index 0000000..d6fa1f8 --- /dev/null +++ b/sh/.config/profile.d/30-fzf.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +export FZF_TMUX_OPTS="-p" +export FZF_PREVIEW_COMMAND='less {} 2>/dev/null' +export FZF_DEFAULT_COMMAND="fd --type f || git ls-tree -r --name-only HEAD || rg --files || find ." +export FZF_DEFAULT_OPTS='--bind ctrl-q:abort +--bind ctrl-y:preview-up +--bind ctrl-e:preview-down +--bind ctrl-u:preview-half-page-up +--bind ctrl-d:preview-half-page-down +--bind ctrl-b:preview-page-up +--bind ctrl-f:preview-page-down +--bind alt-up:half-page-up +--bind alt-down:half-page-down +--color fg:#ebdbb2,hl:#fabd2f,fg+:#ebdbb2,hl+:#fabd2f +--color info:#83a598,prompt:#bdae93,spinner:#fabd2f,pointer:#83a598,marker:#fe8019,header:#665c54' diff --git a/sh/.config/profile.d/30-vivid.sh b/sh/.config/profile.d/30-vivid.sh new file mode 100644 index 0000000..4090d39 --- /dev/null +++ b/sh/.config/profile.d/30-vivid.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +if [ -n "$BASE16_DEFAULT_THEME" ] && command -v vivid 2>/dev/null; then + LS_COLORS="$(vivid generate "$BASE16_DEFAULT_THEME" 2>/dev/null)" + export LS_COLORS +fi -- cgit v1.2.3-70-g09d2