Splitting zsh config due multi host usage

This week while copying some of my dotfiles (due vim and zsh configuration) to a new remote host (dedicated server) of a new client I had to remove the private stuff (mainly aliases) from my .zshrc. Only now did the muse hit me to split the file and leverage the source (import, require, include) functionality.

So I moved the host specific and private stuff from .zshrc and added the following 2 lines after source $ZSH/oh-my-zsh.sh:

[ -f .zshrc_priv ] && source .zshrc_priv
[ -f .zshrc_host ] && source .zshrc_host

After editing .zshrc and moving some lines into .zshrc_priv and .zshrc_host I also commented the files header to be reminded about their purpose in the future 😀

# .zshrc_priv
# Sourced by .zshrc
# Private settings due public version control

alias vps='TERM=xterm-256color autossh -M 0 mike@vps' # host vps set in .ssh/config
alias vps_tunnel='autossh -f -M 0 -T -N -R 10022:localhost:22 mike@vps'
# .zshrc_host
# Sourced by .zshrc
# Host specific settings

export PATH="/usr/local/opt/node@6/bin:$PATH

Next I gonna separate some vim plugin specific code, too, to have a copyable (Plug & Play) config.


Open new Chrome window from command line via SSH

I switch between computers and sometimes when I’m switching I need to push an URL/prepare a window so found a solution with the following command:

mike@remotehost $ export DISPLAY=:0; nohup chromium --new-window https://github.com/deployphp/deployer#installation

UPDATE 2017-06-18

Control VLC playback from command line

Working on two computers requires some control from command line (CLI). Glad that VLC implemented command line control.

I just found a solution at http://stackoverflow.com/a/9047708/289404 and made some command scripts in my home directory bin (~/bin).

Scripts that I use can be seen at https://gist.github.com/mikaelz/71055bbf5fc1aaf34ae7

Control VLC via CLI