This is how I go about my digital life on Real Computers™.
To move in:
git init
git remote add codeberg https://codeberg.org/rollcat/dotfiles
git pull codeberg masterGit will complain about overwriting existing files, like .profile.
Treat with rm -f and pull again.
For pushing changes, you probably want to use the SSH transport instead:
git remote set-url codeberg git@codeberg.org:rollcat/dotfiles.gitThere is a lot of small scripts in bin.
Some are original. Some are borrowed. Some are simplistic remakes of common utilities found on other operating systems or in third-party packages, that I made to make my life less interesting when using very different machines. Take what you like. (See licensing.)
There is some support for per os/arch statically compiled binaries. Go is both wonderful, and really, really awful in this regard.
Many utilities are written in POSIX sh, or in Python 3 (3.6+), if the shell feels inadequate.
Regularly tested: macOS (arm64), OpenBSD (x86-64).
Less tested: Linux (x86-64, arm64), macOS (x86-64).
Lots of environment variables are exported. Notably, $PATH has some
automagic detection for hidden/weird things, like ~/.gem/ruby/*/bin,
/Applications/**/bin, ~/bin/$(uname -s)-$(uname -m) etc.
Everything is .gitignored with a *.
Use git add -f to track a file.
Unless otherwise noted: https://unlicense.org
No attribution necessary, but if you do something cool with any of this, drop me a line.