Skip to content

Latest commit

 

History

History
415 lines (322 loc) · 9.68 KB

HOWTO.md

File metadata and controls

415 lines (322 loc) · 9.68 KB

Install

# non-OSX
yum|apt-get|pacman -S alacritty

# OSX
brew cask install alacritty
ln -s /usr/local/opt/alacritty/Applications/Alacritty.app /Applications/

Extensions (brave-bro)

# brave-browser
cvim, bitwarden, save to pocket, feedly notifier

# others
DuckDuckGo Privacy Essentials, (maybe) ublock origin

Install brew and bundles

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap Homebrew/bundle
brew bundle --file=~/.config/brew/Brewfile

Upgrade brewfile

brew bundle dump --file=~/.config/brew/Brewfile --force
brew bundle cleanup --file=~/.config/brew/Brewfile --force

Install xcode command line tools (needed by some brew formulas)

xcode-select --install

Install

# non-OSX
sudo curl -s https://raw.githubusercontent.com/kerl/kerl/master/kerl -o /usr/local/bin/kerl
sudo chmod a+x /usr/local/bin/kerl

Install

# non-OSX
sudo curl -s https://raw.githubusercontent.com/clvv/fasd/master/fasd -o /usr/local/bin/fasd
sudo chmod +x /usr/local/bin/fasd

Update

fisher ls
fisher seld-update

See awesome-fish and (oh-my-fish)[https://github.com/oh-my-fish] for more plugins.

Install

# non-OSX
sudo git clone --depth 1 https://github.com/junegunn/fzf.git /usr/local/opt/fzf
sudo /usr/local/opt/fzf/install --key-bindings --completion --no-update-rc

# OSX
$(brew --prefix)/opt/fzf/install --key-bindings --completion --no-update-rc

Add aliases and templates git-configuration

git config --global include.path ~/.gitconfig.local

Auto-squashing

git commit --fixup ":/most-recent-commit-message"
git rebase -i --autosquash

See tig and grv

See pre-made plugins / spoons and sample-configuration

Load/Save Profiles

Preferences -> Profiles -> Import JSON Profiles / Save as Profile as JSON (~/.config/iterm/Default.json)

Install

brew install kakoune

Install/update/clean plugins using plug.kak:

:plug-install
:plug-update
:plug-clean

For OSX only, import from config/karabiner All modifier keys are done in karabiner

Register git repos

find ~/Repos -maxdepth 1 -mindepth 1 | sort | xargs -n1 mr register
(copy ~/.mrconfig into new host)

Update all repos

cd ~ ; mr -j5 update

Install

# non-OSX
dnd|yum|apt-get|pacman -S neovim python2-neovim python-neovim

# OSX
brew install neovim --with-python
python2 -m pip install neovim --upgrade
python3 -m pip install neovim --upgrade

To use your existing Vim configurations

ln -sf ~/.vim ~/.config/nvim
ln -sf ~/.vimrc ~/.config/nvim/init.vim

Export OPML form feedly (see https://blog.feedly.com/opml/)

open https://feedly.com/i/opml

Import OPML from feedly

newsboat -i ~/.config/rss/feedly.opml

Install Node/NPM packages

~/.config/node/install-npm-packages.sh

List top-level global installed NPM packages

npm ls -g --depth 1

On OSX install python2 and python3 using brew but don't override OSX's python. See Homebrew and python.

On OSX use python2/3 -m pip, on non-OSX use pip.

Install python (on OSX):

brew install python@2
#export PATH="/usr/local/opt/python@2/bin:$PATH" # if you dont see python2/pip2
#export PATH="/usr/local/opt/python@2/libexec/bin:$PATH" # default to python2
brew install python@3

Install python packages using pip

python2 -m pip install -r ~/.config/python2/requirements.txt --disable-pip-version-check
python3 -m pip install -r ~/.config/python3/requirements.txt

Generate/Update packages using pip

python2 -m pip freeze --q >! ~/.config/python2/requirements.txt --disable-pip-version-check
python3 -m pip freeze --q >! ~/.config/python3/requirements.txt

When updating python, pip/setuptools may beed to be updated

python2 -m pip install --upgrade pip setuptools wheel
python3 -m pip install --upgrade pip setuptools wheel

Uninstall all pip packages

python2 -m pip freeze | xargs python2 -m pip uninstall -y
python3 -m pip freeze | xargs python3 -m pip uninstall -y

Upgrade all pip packages

python2 -m pip freeze -qq | cut -d '=' -f1 | python2 -m pip install --upgrade -r /dev/stdin
python3 -m pip freeze -qq | cut -d '=' -f1 | python3 -m pip install --upgrade -r /dev/stdin

Install

# non-OSX
curl -LO https://thoughtbot.github.io/rcm/dist/rcm-1.3.3.tar.gz
tar -xvf rcm-1.3.3.tar.gz
cd rcm-1.3.3
./Configure && make && sudo make install

Install gem's bundler (ruby package manager)

sudo gem install bundler
bundle install --gemfile=~/.config/ruby/Gemfile

Install using rustup:

# non-OSX
curl https://sh.rustup.rs -sSf | sh
# OSX
brew install rustup ; rustup-init -y
rustc --version

Update

rustup update

Install rls and rustfmt/rustsym:

rustup component add rls-preview rust-analysis rust-src
rustup component add rustfmt
cargo install rustsym

List packages installed

cargo install --list

Manage cache

cargo install cargo-cache
cargo cache -a # autoclean

Generate theme (tmuxline)[https://github.com/edkolev/tmuxline.vim]:

inside tmux open vim and ':Tmuxline airline' or ':Tmuxline lightline' then ':TmuxlineSnapshot ~/.tmux/airline.conf'

Install/Update/Remove plugins tmux-plugins/awesome-tmux

edit tmux.conf
set -g @plugin 'tmux-plugins/tmux-sensible'
'prefix + I' to install (or 'prefix + U' to Update)

or
'prefix + alt + u' to remove
rm -rf ~/.tmux/plugins/<plugin_name>

Using tmux-xpanes

xpanes --ssh myuser1@host1 myuser2@host2

See (tmux-control-mode)[https://github.com/tmux/tmux/wiki/Control-Mode] for iterm2 integration

tmux -CC new -A -s main

To generate a new vimrc using Vimbootstrap

curl 'http://vim-bootstrap.com/generate.vim' --data 'editor=vim' > ~/.vimrc

Update plugins

vim +PlugUpgrade +PlugUpdate +qall

Cleanup/remove unused directories/plugins

vim +PlugClean! +qall

To uninstall (vim distribution)

rm -rf ~/.vimrc ~/.vim

To check vim startup time

vim --startuptime vim.log +qall
cat vim.log

Install VSCode user settings and extensions

# OSX
ln -sf $HOME/.config/code/User/*.json "$HOME/Library/Application Support/Code/User"
ln -sf $HOME/.config/code-insiders/User/*.json "$HOME/Library/Application Support/Code - Insiders/User"

Generate and install extensions list Command line extension management

code --list-extensions | sort >! ~/.config/code/User/extensions.list
cat ~/.config/Code/User/extensions.list | xargs -L1 code --install-extension

code-insiders --list-extensions | sort >! ~/.config/code-insiders/User/extensions.list
cat ~/.config/Code/User/extensions.list | xargs -L1 code --install-extension

See vscode extensions marketplace vscode themes

Install zimfw

curl -s https://raw.githubusercontent.com/zimfw/zimfw/develop/zimfw.zsh -o zim/zimfw.zsh (already done on rcup)
source ~/.zim/zimfw.zsh install

Added/remove new module(s) to .zimrc

zimfw uninstall ; zimfw install

Change module(s) to .zimrc

zimfw clean ; zimfw compile

Update your modules to their latest revisions:

zimfw update

Upgrade zimfw.zsh to its latest version

zimfw upgrade
zimfw info

Measure zsh init

time zsh -i -c exit

Install

brew install zsh
chsh -s /bin/zsh

Profiling zshrc

zmodload zsh/zprof # top of your .zshrc file
zprof # bottom of .zshrc