diff --git a/.bashrc b/.bashrc
index f9a36e9..c2881a9 100644
--- a/.bashrc
+++ b/.bashrc
@@ -1,7 +1,5 @@
-# @jessebot's personal .bashrc
-# -------------------------------------------------------------------------- #
-# General #
-# -------------------------------------------------------------------------- #
+# @jessebot's .bashrc: an ok BASH experience.
+# ------------------------------- General ---------------------------------- #
# fixes "scp: Received message too long 169564991" error
# If not running interactively, don't do anything, no outputs
@@ -10,7 +8,6 @@ case $- in
*) return;;
esac
-
# I hate bells a lot
set bell-style none
@@ -32,7 +29,7 @@ export GPG_TTY=$(tty)
# everything to do with things like less and editors is in here
. $XDG_CONFIG_HOME/bash/text_editing.sh
-# aliases are all confined to this file
+# aliases are all confined to this file, except kubernetes below
. $XDG_CONFIG_HOME/bash/alias.sh
# k8s aliases and configuration
@@ -60,7 +57,14 @@ if [ -f $pip_packages/powerline/bindings/bash/powerline.sh ]; then
fi
# -------------------------------------------------------------------------- #
-# PERSONAL MOTD #
+# Personal MOTD using fastfetch #
+# We'll use an image if you add this your personal bashrc sourced above: #
+# #
+# # FULL PATH, NO VARIABLES. #
+# export MOTD_IMG="/FULL/PATH/2/IMG.jpg" #
# -------------------------------------------------------------------------- #
-# run fastfetch, a system facts cli script, immediately when we login anywhere
-fastfetch
+if [ -f $MOTD_IMG ]; then
+ fastfetch --logo $MOTD_IMG
+else
+ fastfetch
+fi
diff --git a/.config/bash/alias.sh b/.config/bash/alias.sh
index 3c32ef8..f84cbde 100644
--- a/.config/bash/alias.sh
+++ b/.config/bash/alias.sh
@@ -30,6 +30,9 @@ alias python="python$PYTHON_VERSION"
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ General ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
+# fastfetch gets system data, but we want it to have padding
+alias fastfetch='echo "" && fastfetch'
+
# colordiff - diff, but with colors for accessibility
alias diff='colordiff -uw'
diff --git a/.config/bash/minimal.sh b/.config/bash/minimal.sh
index 1e98e71..54c5aa3 100644
--- a/.config/bash/minimal.sh
+++ b/.config/bash/minimal.sh
@@ -1,7 +1,7 @@
# @jessebot's minimal browser focused rc file #
##############################################################################
-source ~/.config/bash/history
+source ~/.config/bash/history.sh
# -------------------------------------------------------------------------- #
# Pathing #
diff --git a/.config/bash/path.sh b/.config/bash/path.sh
index 6d34b42..584203c 100644
--- a/.config/bash/path.sh
+++ b/.config/bash/path.sh
@@ -1,7 +1,6 @@
# --------------------------------------------------------------------------
-# Pathing
-# Adhereing as closely as possible to XDG Base Directory Spec:
-# https://wiki.archlinux.org/title/XDG_Base_Directory
+# Pathing: Adhereing as closely as possible to XDG Base Directory Spec
+# https://specifications.freedesktop.org/basedir-spec/latest/
# --------------------------------------------------------------------------
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_CACHE_HOME="$HOME/.cache"
@@ -11,7 +10,7 @@ export XDG_STATE_HOME="$HOME/.local/state"
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~ LinuxBrew PATH ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
if [[ $(uname) == *"Linux"* ]]; then
- # iptables on debian is here
+ # TODO: iptables on debian is here, wonder if we can change that...
export PATH=$PATH:/usr/sbin:/usr/share
# snap package manager installs commands here
@@ -24,33 +23,30 @@ if [[ $(uname) == *"Linux"* ]]; then
export MANPATH=$MANPATH:/home/linuxbrew/.linuxbrew/share/man
export INFOPATH=$INFOPATH:/home/linuxbrew/.linuxbrew/share/info
export PATH=$PATH:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin
+
# pip packages installed via linuxbrew will be here
pip_packages="/home/linuxbrew/.linuxbrew/lib/python$PYTHON_VERSION/site-packages"
fi
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ macOS PATH ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
if [[ $(uname) == *"Darwin"* ]]; then
- # this is the iterm2 shell integration stuff, making it use XDG_CONFIG_HOME
+ # iterm2 shell integration stuff, and making it use $XDG_CONFIG_HOME
source $HOME/.config/bash/iterm2_integration.sh
-
# iterm2 specific commands and functions
export PATH=$PATH:$HOME/.local/bin/iterm2
- # this is for macs without apple silicon, e.g. before M1
- export PATH=$PATH:$HOME/Library/Python/3.11/bin
-
# don't warn me that BASH is deprecated, becasuse it is already upgraded
export BASH_SILENCE_DEPRECATION_WARNING=1
pip_path="lib/python3.11/site-packages"
- # check if this apple silicon
if [ $(uname -a | grep arm > /dev/null ; echo $?) -eq 0 ]; then
- # On M1/M2: brew default installs here
+ # On apple silicon: brew default installs here
export PATH=/opt/homebrew/bin:$PATH
pip_packages="/opt/homebrew/$pip_path"
else
- # For older macs before the M1, pre-2020
+ # For older macs before the M1, pre-2020, WITHOUT apple silicon
+ export PATH=$HOME/Library/Python/$PYTHON_VERSION/bin:$PATH
pip_packages="/usr/local/$pip_path"
fi
@@ -59,7 +55,7 @@ if [[ $(uname) == *"Darwin"* ]]; then
fi
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Python ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-# python default install location when you do: pip$PYTHON_VERSION install --user package
+# python default install location when you: pip$VERSION install --user package
export PATH=$PATH:$HOME/.local/bin:/usr/local/bin
# make python do it's cache in ~/.cache/python
@@ -74,22 +70,21 @@ export PYENV_ROOT=$XDG_DATA_HOME/pyenv
# ~~~~~~~~~~~~~~~~~~~ nvm/npm for javascript stuff ~~~~~~~~~~~~~~~~~~~~~~~~~
# for npm to use XDG stuff
export NPM_CONFIG_USERCONFIG=$XDG_CONFIG_HOME/npm/npmrc
-# This loads nvm
export NVM_DIR="$XDG_DATA_HOME"/nvm
+# TODO: loads nvm - maybe goes into devops build?
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ golang ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-# TODO: probably should look into this one, to make it more XDG compliant
-GOROOT=$HOME
-export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
+# to make it more XDG compliant
+export GOROOT=$HOME/.local/bin
+export PATH=$PATH:/usr/local/go/bin:$GOROOT
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rust ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export RUSTUP_HOME="$XDG_DATA_HOME"/rustup
export CARGO_HOME="$XDG_DATA_HOME"/cargo
export PATH="$XDG_DATA_HOME/cargo/bin:$PATH"
-# ~~~~~~~~~~~~~~~~~~~~~~~~ other ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ general ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export DOCKER_CONFIG=$XDG_CONFIG_HOME/docker
# Make gradle use XDG
diff --git a/.config/fastfetch/config.conf b/.config/fastfetch/config.conf
index abbc0e4..8e31fab 100644
--- a/.config/fastfetch/config.conf
+++ b/.config/fastfetch/config.conf
@@ -25,7 +25,7 @@
# Must be a list of module names, separated by colons.
# List available modules with "fastfetch --list-modules".
# Get the default structure with "fastfetch --print-structure".
---structure Break:Title:Separator:OS:Host:Kernel:Uptime:Shell:CPU:GPU:Memory:Disk:Battery:Break:Colors:Break:Break
+--structure Title:Separator:OS:Uptime:GPU:CPU:Memory:Disk:Break:Colors:Break
# Multithreading option:
# Sets if fastfetch should use multiple threads to detect the values.
@@ -64,25 +64,25 @@
# Print available logos with "fastfetch --print-logos".
# Must be the name of an available logo or a path to a text file containing a custom logo.
# Default is the current distribution.
-#--logo arch
+# --logo /FULL/PATH/TO/YOUR/IMG/NO/VARIABLES/image.png
# Logo type option:
# Sets the logo type to use.
# Must be auto, builtin, file, file-raw, data, data-raw, sixel, kitty or chafa.
# Default is auto.
-# --logo-type sixel
+--logo-type sixel
# Logo width option:
# Sets the width of the logo (in characters) if the logo is an image.
# Must be a positive integer.
# Default is 65.
-#--logo-width 65
+--logo-width 25
# Logo height option:
# Sets the height of the logo (in characters) if the logo is an image.
# Must be a positive integer.
# Default is 0 (keeps aspect ration).
-#--logo-height 0
+--logo-height 0
# Logo color options:
# Overwrite a color in the logo. Also works for user provided logos.
@@ -106,7 +106,7 @@
# Adds a padding to the left side of the logo.
# Must be a positive integer.
# Default is 0.
-#--logo-padding-left 0
+--logo-padding-left 3
# Logo padding right option:
# Adds a padding to the right side of the logo.
@@ -125,14 +125,14 @@
# Must be linux console color codes or the name of a color.
# Default is the key color of the logo.
# Use "fastfetch --help color" to learn more and see examples.
-#--color-keys magenta
+--color-keys magenta
# Color title option:
# Sets the color of the title.
# Must be linux console color codes or the name of a color.
# Default is the title color of the logo.
# Use "fastfetch --help color" to learn more and see examples.
-#--color-title magenta
+--color-title blue
# Binary prefix option:
# Sets the binary prefix to use.
@@ -356,7 +356,7 @@
#--lib-XFConf /usr/lib/libxfconf-0.so
#--lib-sqlite3 /usr/lib/libsqlite3.so
#--lib-rpm /usr/lib/librpm.so
---lib-imagemagick /usr/lib/libMagickCore-7.Q16HDRI.so
+#--lib-imagemagick /usr/lib/libMagickCore-7.Q16HDRI.so
#--lib-z /usr/lib/libz.so
#--lib-chafa /usr/lib/libchafa.so
#--lib-egl /usr/lib/libEGL.so
diff --git a/.hushlogin b/.hushlogin
new file mode 100644
index 0000000..e69de29
diff --git a/README.md b/README.md
index a966cd3..db3796d 100644
--- a/README.md
+++ b/README.md
@@ -739,6 +739,17 @@ These directories/files are installed to your home directory and follow the [XDG
+
+ .hushlogin
+
+
+
+ This just silences the last login message of shells.
+
+
+
+
+
.zshrc