- I maintain this repo as my dotfiles, but I'm keenly aware people are using it for theirs.
- You're quite welcome to make suggestions, however I may decline if it's not of personal value to me.
- If you're starting off anew, consider forking mathias or alrra. paulmillr and gf3 also have great setups
I would not suggest you just wholesale use my dotfiles. But there's a few files where there's great goodies you can steal.
This repo contains config for fish and bash. As of 2016, I primarily use fish
shell, but fall back to bash
once in a while. The bash and fish stuff are both well maintained. If you're using fish you'll want to do a git submodule update --init
.
aliases.fish
andfunctions.fish
andfish/functions/*
.aliases
and.functions
So many goodies.
Basically it makes typing into the prompt amazing.
- tab like crazy for autocompletion that doesnt suck. tab all the things. srsly.
- no more that says "Display all 1745 possibilities? (y or n)" YAY
- type
cat <uparrow>
to see your previouscat
s and use them. - case insensitivity.
- tab all the livelong day.
- err'body gotta have their aliases. I'm no different.
z
helps you jump around to whatever folder. It uses actual real magic to determine where you should jump to. Seperately there's some ...
aliases to shorten cd ../..
and ..
, ....
etc. Then, if you have a folder open in Finder, cdf
will bring you to it.
z dotfiles
z blog
.... # drop back equivalent to cd ../../..
z public
cdf # cd to whatever's up in Finder
z
learns only once its installed so you'll have to cd around for a bit to get it taught.
Lastly, I use open .
to open Finder from this path. (That's just available normally.)
.aliases
,.bash_profile
,.bash_prompt
,.bashrc
,.exports
,.functions
setup-a-new-machine.sh
- random apps i need installedsymlink-setup.sh
- sets up symlinks for all dotfiles and vim config..macos
- run on a fresh mac os setupbrew.sh
&brew-cask.sh
- homebrew initialization
.gitconfig
.gitignore
There will be items that don't belong to be committed to a git repo, because either 1) it shoudn't be the same across your machines or 2) it shouldn't be in a git repo. Kick it off like this:
touch ~/.extra && $EDITOR $_
I have some EXPORTS, my PATH construction, and a few aliases for ssh'ing into my servers in there.
Mathias's repo is the canonical for this, but you should probably run his or mine after reviewing it.
One-off binaries that aren't via an npm global or homebrew. git open, subl
for Sublime Text, and some other git utilities.
Rust folks have made a few things that are changing things.
- most folks know
bat
as acat
replacement - https://github.com/dandavison/delta is a bit nicer than the diff-so-fancy project that i started. :/
- https://github.com/eza-community/eza is better
ls
and gets all the trapd00r/LS_COLORS stuff etc. - https://github.com/bigH/git-fuzzy interactive git thing. deprecates my
git recent
script. and probably some other things.
Also I'd like to migrate to using one of these:
- homesick or
- https://www.atlassian.com/git/tutorials/dotfiles
- https://github.com/nix-community/home-manager
- https://www.chezmoi.io/
also interested in https://github.com/dandavison/open-in-editor
(presumably you've already upgraded from passwords to using ssh public key authentication.. but this is an alternative if you want the security key challenge)
Been doing this for a while.. forgot how i learned it and nobody has it documented that I can find...
Run on client machine:
ssh-add -L | grep publickey
This outputs a ecdsa-sha2-nistp256
key for me. I know it's registered for my hardware security key. (I don't know how it got registered with the SSH agent but w/e.)
Put that in whatever authorized_keys
of your remote host. That's it.