dotfiles-dotbot
dotfiles-dotbot copied to clipboard
A utility first dev tooling repo with dotbot, zsh, antibody, defaults, pkgsrc, plist, fonts, git-extras, git-quick-stats, atom, pip, npm, cargo, go, karabiner, carpalx full optimization.
0-vortex/dotfiles
Configuration: zsh, antibody, pkgsrc
Package managers: pip, npm, cargo, go
Submodules: dotbot, powerline, git-extras, git-quick-stats, iterm-color-schemes
Overview
Just want to give it a spin in a sandbox?
docker run -dit --rm --name dotfiles 0vortex/dotfiles
docker exec -it dotfiles zsh
Co-working: VSC Insiders with Nord theme (unmanaged)
Batteries included
User installed packages
GNU/BSD packages
Python user modules
Darwin only
-
git-filter-repo -
git filter-repo
-
httpie -
http -v
- terraform-compliance
- tqdm
- sublist3r
- wafw00f
Node global packages
- commitizen
- depcheck
- envinfo
- git-recent
- git-standup
- git-split-diffs
- how-2
- localtunnel
- n
- npm-check-updates
- npkill
- ntl
- quicktype
Darwin only
Rust global packages
Darwin only
Go global packages
Darwin only
Requirements
- Install Xcode or run
xcode-select --install
- Download and install Python
- Download and install Node.js
- Download and install Go
- Download and install Rust via
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- Install Atom and
CMD+SHIFT+P
toWindow: Install shell commands
- Optional, install GPG Suite
- Optional, Install KeyBase
Installation
Clone the package via git:
# macOS
git clone --recurse-submodules -j4 [email protected]:0-vortex/dotfiles.git .dotfiles
cd .dotfiles
./install
How to use
If you are on linux, do lsb_release
and then duplicate or rename debian.conf.yaml
and populate it with your settings.
Make it your own
Make appropriate git
to the config/git/.gitconfig and config/git/.gitignore_global files.
Change npm
registry username in the config/node/.npmrc-global file.
Enable or disable macOS defaults folder.
Any changes mentioned above will need reflection in install.conf.yaml.
Set up GPG and commit signing
Copy over your ~/.ssh
folder.
Optionally import Keybase gpg key into gpg tools for signed commits (replace keyname with the returned key from list secret keys)
keybase pgp export --secret | gpg --allow-secret-key --import
gpg --list-secret-keys --keyid-format LONG
gpg --armor --export keyname | pbcopy
Dockerize your fork
Assuming you are happy with your fork and just want to show it off,
change the following to your docker
username and just ship it.
Here are manual examples of all the tags available in the current Dockerfile, testing included.
Debian
docker build -t 0vortex/dotfiles:debian --squash --target debian .
docker run -dit --rm --name dotfiles-debian 0vortex/dotfiles:debian
docker exec -it dotfiles-debian zsh
docker push 0vortex/dotfiles:debian
Ubuntu
docker build -t 0vortex/dotfiles:ubuntu --squash --target ubuntu .
docker run -dit --rm --name dotfiles-ubuntu 0vortex/dotfiles:ubuntu
docker exec -it dotfiles-ubuntu zsh
docker push -0vortex/dotfiles:ubuntu
Alpine
docker build -t 0vortex/dotfiles:alpine --squash --target alpine .
docker run -dit --rm --name dotfiles-alpine 0vortex/dotfiles:alpine
docker exec -it dotfiles-alpine zsh
docker push 0vortex/dotfiles:alpine
Arch
docker build -t 0vortex/dotfiles:arch --squash --target arch .
docker run -dit --rm --name dotfiles-arch 0vortex/dotfiles:arch
docker exec -it dotfiles-arch zsh
docker push 0vortex/dotfiles:arch