2023-03-21 14:17:23 -04:00
#!/bin/sh
2023-03-22 08:59:25 -04:00
set -x
cd " $( dirname $0 ) " || exit 1
if ! pgrep nix-daemon ; then
sh <( curl -L https://nixos.org/nix/install)
fi
2023-03-21 14:17:23 -04:00
mkdir -p " $HOME /.config "
mkdir -p " $HOME /.config/nix "
if [ ! -f " $HOME /.config/nix/nix.conf " ] ; then
echo "experimental-features = nix-command flakes" >> ~/.config/nix/nix.conf
echo "trusted-users = root andrew" | sudo tee -a /etc/nix/nix.conf && sudo pkill nix-daemon
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#cachix
2023-03-21 14:17:23 -04:00
cachix use devenv
fi
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#bashInteractive
nix profile install nixpkgs#bat
nix profile install nixpkgs#bitwarden-cli
nix profile install nixpkgs#broot
nix profile install nixpkgs#cargo-dist
nix profile install nixpkgs#cargo-flamegraph
nix profile install nixpkgs#cargo-release
nix profile install nixpkgs#cargo-udeps
nix profile install nixpkgs#cheat
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#chezmoi
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#croc
nix profile install nixpkgs#curlie
nix profile install nixpkgs#delta
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#direnv
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#dnsproxy
nix profile install nixpkgs#du-dust
nix profile install nixpkgs#fd
nix profile install nixpkgs#flamegraph
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#fzf
nix profile install nixpkgs#git
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#git-gone
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#gnugrep
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#grex
nix profile install nixpkgs#gron
nix profile install nixpkgs#gum
nix profile install nixpkgs#helix
nix profile install nixpkgs#hexyl
nix profile install nixpkgs#htop
nix profile install nixpkgs#httpie
nix profile install nixpkgs#htmlq
nix profile install nixpkgs#hyperfine
nix profile install nixpkgs#jc
nix profile install nixpkgs#jiq
nix profile install nixpkgs#jq
nix profile install nixpkgs#jqp
nix profile install nixpkgs#kibi
nix profile install nixpkgs#kondo
nix profile install nixpkgs#kubie
nix profile install nixpkgs#llama
nix profile install nixpkgs#mdbook
nix profile install nixpkgs#mosh
nix profile install nixpkgs#neovim
nix profile install nixpkgs#ouch
#nix profile install nixpkgs#prettylist
nix profile install nixpkgs#q
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#ripgrep
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#rq
nix profile install nixpkgs#rustfilt
nix profile install nixpkgs#sd
nix profile install nixpkgs#shellcheck
nix profile install nixpkgs#shfmt
nix profile install nixpkgs#starship
nix profile install nixpkgs#tealdeer
nix profile install nixpkgs#tokei
2023-03-21 14:17:23 -04:00
nix profile install nixpkgs#upterm
2023-03-22 08:59:25 -04:00
nix profile install nixpkgs#vim
nix profile install nixpkgs#watchexec
nix profile install nixpkgs#xcp
nix profile install nixpkgs#xh
nix profile install nixpkgs#xsv
nix profile install nixpkgs#zola
nix profile install nixpkgs#zoxide
2023-03-21 14:17:23 -04:00
if [ ! -e /Applications/kitty.app ] ; then
curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin
fi
mkdir -p " $HOME /.config/kitty "
cat <<EOF > "$HOME /.config/kitty/kitty.conf"
font_family Operator Mono Book
#bold_font Operator Mono Bold
#italic_font Operator Mono Italic
#bold_italic_font Operator Mono Bold Italic
font_size 20.0
cursor_shape block
shell_integration no-cursor
tab_bar_edge top
symbol_map U+23FB-U+23FE,U+2665,U+26A1,U+2B58,U+E000-U+E00A,U+E0A0-U+E0A3,U+E0B0-U+E0C8,U+E0CA,U+E0CC-U+E0D2,U+E0D4,U+E200-U+E2A9,U+E300-U+E3E3,U+E5FA-U+E62F,U+E700-U+E7C5,U+F000-U+F2E0,U+F300-U+F31C,U+F400-U+F4A9,U+F500-U+F8FF Symbols Nerd Font
remember_window_size yes
initial_window_width 130c
initial_window_height 35c
# BEGIN_KITTY_THEME
# Atom One Light
include current-theme.conf
# END_KITTY_THEME
EOF
curl -Lo " $HOME /.config/kitty/current-theme.conf " https://git.penguincoder.org/penguincoder/dotfiles/raw/branch/main/dot_config/kitty/current-theme.conf
curl -Lo " $HOME /.config/starship.toml " https://git.penguincoder.org/penguincoder/dotfiles/raw/branch/main/dot_config/starship.toml
mkdir -p " $HOME /.config/helix "
curl -Lo " $HOME /.config/helix/config.toml " https://git.penguincoder.org/penguincoder/dotfiles/raw/branch/main/dot_config/helix/config.toml
cat <<EOF > "$HOME /.gitconfig"
[ push]
default = simple
[ user]
name = Andrew Coleman
email = penguincoder@gmail.com
[ advice]
detachedHead = false
[ core]
filemode = true
eol = lf
autocrlf = input
pager = delta
[ init]
defaultBranch = main
[ delta]
2023-03-22 08:59:25 -04:00
line-numbers = true
#line-numbers-zero-style = white
line-numbers-minus-style = bold red
line-numbers-plus-style = bold green
file-style = omit
hunk-header-style = file
syntax-theme = OneHalfLight
2023-03-21 14:17:23 -04:00
[ rebase]
autoStash = true
[ merge]
tool = vimdiff
conflictstyle = diff3
prompt = false
[ pull]
rebase = true
[ color]
branch = auto
diff = auto
status = auto
ui = true
[ color "branch" ]
current = yellow reverse
local = yellow
remote = green
[ color "diff" ]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[ color "status" ]
added = yellow
changed = green
untracked = red
[ alias]
logp = log --pretty= format:'%h %ad | %s%d [%an]' --graph --date= short
lg = log --graph --date-order --first-parent \
--pretty= format:'%C(auto)%h%Creset %C(auto)%d%Creset %s %C(green)(%ad) %C(bold cyan)<%an>%Creset'
lgb = log --graph --date-order --branches --first-parent \
--pretty= format:'%C(auto)%h%Creset %C(auto)%d%Creset %s %C(green)(%ad) %C(bold cyan)<%an>%Creset'
lga = log --graph --date-order --all \
--pretty= format:'%C(auto)%h%Creset %C(auto)%d%Creset %s %C(green)(%ad) %C(bold cyan)<%an>%Creset'
up = pull --rebase
branches-last-updated = branch -rv --sort= committerdate --format= '%(HEAD) %(color:green)%(committerdate:relative)%(color:reset)\t%(color:magenta)%(authorname)%(color:reset)\t%(color:yellow)%(refname:short)%(color:reset)'
EOF
if [ ! -d " $HOME /.cargo " ] ; then
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --no-modify-path --default-toolchain stable --profile complete -y
fi
curl -Lo " $HOME /.tmux.conf " https://git.penguincoder.org/penguincoder/dotfiles/raw/branch/main/dot_tmux.conf
curl -Lo " $HOME /.vimrc " https://git.penguincoder.org/penguincoder/dotfiles/raw/branch/main/dot_vimrc
2023-03-22 08:59:25 -04:00
install -m 640 ./.zshrc " $HOME / "