This is the dotfiles I use as my profile on the desktop, server (both openSUSE Leap), and laptop (macOS).
Need more inspiration? Check out Awesome dotfiles, dotfiles and the dotfiles topic on GitHub.
chezmoi manages this repository. Installation of single binary files, a.k.a. packages, is done by get-packages in the justfile repository. Follow the installation instructions in the justfile repo.
The vim plugins are not pulled automatically. They are submodules in vim/pack/plugins/start/
. Need to add these
to chezmoi.
- Vim-Go
- Awesome Alternatives in Rust (Originally Awesome Rewrite It In Rust)
- uutils coreutils - Cross-platform Rust rewrite of the GNU coreutils
- dua-cli - View disk space usage and delete unwanted data, fast.
- Awesome Rust
- Awesome Go
- cfssl - Cloudflare's PKI and TLS toolkit
- dnslookup - Simple command line utility to make DNS lookups. Supports all known DNS protocols: plain DNS, DoH, DoT, DoQ, DNSCrypt.
Things may be broken as I move from a private repo with another name.
Export all variables in .env
into the current environment. Unfortunately, this has problems
when the values have spaces.
export $(grep -vE "^(#.*|\s*)$" .env)
Instead, use 'set -a' or 'set -o allexport': https://stackoverflow.com/a/30969768. See man set for details. See also load_dotenv.sh gist.
set -a
source .env
set +a
# Alternatively, use the 'allexport' option
set -o allexport
source .env
set +o allexport
Check a PEM certificate for expiration. The server cert is the first cert in the PEM file with the intermediary and root certs afterwards.
sed -e '/^-----END CERTIFICATE-----$/q' /etc/letsencrypt/live/example.com/fullchain.pem | \
cfssl-certinfo -cert - | \
gojq '{subject: .subject, sans: .sans, expired: .not_after}'