Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
add vscode and docker installation commands
Signed-off-by: Rahul Kadyan <rahul.kadyan@grammarly.com>
  • Loading branch information
znck committed Sep 8, 2020
1 parent bc0e616 commit 4a83590
Show file tree
Hide file tree
Showing 6 changed files with 102 additions and 23 deletions.
2 changes: 2 additions & 0 deletions .gitignore
@@ -0,0 +1,2 @@
*.pem
*.asc
29 changes: 22 additions & 7 deletions config/.alias
@@ -1,42 +1,57 @@
#!/usr/bin/env sh

DIR="$(dirname ${0})" # Get script directory.

alias wifi="wifi-password -q"
#compdef wifi="wifi-password"

alias s="git status"
#compdef s="git"

alias n="pnpm"
#compdef n="npm"
#compdef ns="pnpm"
alias dotfiles="code /Users/znck/Workspace/znck/dotfiles"

alias dotfiles="code ${DIR}"

alias recommit="git commit --amend --no-edit"
#compdef recommit="git"

alias ds="docker stack"
#compdef ds="docker"

alias current-branch="git rev-parse --abbrev-ref HEAD"
#compdef current-branch=git

function __push__ { git push $* $([[ $(git remote | grep znck) = 'znck' ]] && echo 'znck' || echo 'origin') $(current-branch) }
alias push="__push__"
#compdef push=git

function __who-is-using__ { lsof -i :$1 }
alias who-is-using="__who-is-using__"

alias ni="pnpm install"
#compdef ni=npm

alias nr="pnpm run"
#compdef nr=npm

alias p="prettier --no-semi --single-quote --trailing-comma 'es5' --write"
#compdef p=prettier
function __steal-book__ { node /Users/znck/Workspace/Experiments/SafariBooks-Downloader/lib/cli/index.js -b $1 -o /Users/znck/Workspace/Experiments/SafariBooks-Downloader/download3.epub && open /Users/znck/Workspace/Experiments/SafariBooks-Downloader/download3.epub }
alias steal-book="__steal-book__"
#compdef steal-book=node

function __jssize__ { cat $1 | terser -c -m | gzip -c9n | wc -c }
alias jssize="__jssize__"
#compdef jssize=cat

alias nri="pnpm recursive install"
#compdef nri=pnpm

alias copy-ssh-key="cat ~/.ssh/id_rsa.pub| pbcopy"
#compdef copy-ssh-key=cat

function __dotenv__ { export $(grep -v '^#' .env | xargs) }
alias dotenv="__dotenv__"

function __dotenv-unset__ { unset $(grep -v '^#' .env | sed -E 's/(.*)=.*/\1/' | xargs) }
alias dotenv-unset="__dotenv-unset__"

function __mov2gif__ { ffmpeg -i $1 -s 600x400 -pix_fmt rgb24 -r 10 -f gif - | gifsicle --optimize=3 --delay=3 }
alias mov2gif="__mov2gif__"
alias nx="$(npm --global bin)/n"
8 changes: 8 additions & 0 deletions config/.gitconfig
Expand Up @@ -2,22 +2,30 @@
email = hi@znck.me
name = Rahul Kadyan
signingkey = 08BA995B

[core]
autocrlf = input

[commit]
gpgsign = true

[tag]
gpgsign = true

[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true

[alias]
pr = pull-request
clean-branch = !clean-stale-branches
cb = clean-branch

[url "ssh://git@github.com/"]
insteadOf = https://github.com/

[url "ssh://git@gitlab.com/"]
insteadOf = https://gitlab.com/

4 changes: 3 additions & 1 deletion config/.zshrc
Expand Up @@ -58,7 +58,7 @@ plugins=(
)

source $ZSH/oh-my-zsh.sh
source $DOTFILES/load.sh
source $HOME/.dotfiles/load.sh

# User configuration

Expand Down Expand Up @@ -90,6 +90,8 @@ alias ohmyzsh="code ~/.oh-my-zsh"

# NVM
export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh" # This loads nvm
[ -s "/usr/local/opt/nvm/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm"

# Rust
export PATH="$HOME/.cargo/bin:$PATH"
80 changes: 66 additions & 14 deletions install.sh
Expand Up @@ -2,35 +2,87 @@

set -e

indent() { sed 's/^/ /'; }
function indent() { sed -En 's/^/ /'; }

function isBinary() {
local _bin="$1" _full_path

_full_path=$(command -v "${_bin}")
_status=$?

if [ ${_status} -eq 0 ]; then
if [[ -x "${_full_path}" ]]; then
return 0
fi
fi

return 1
}

echo "# My dotfiles"
cd "$(dirname ${0})"
DIR="$(pwd)" # Get script directory.
cd -

echo ""

# Install brew
command -v brew >/dev/null 2>&1 || /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
if ! $(isBinary brew); then
echo ""
echo "# Install brew"
command -v brew >/dev/null 2>&1 || /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
fi

# Install tools
PACKAGES="zsh node nvm hub youtube-dl htop howdoi yarn wifi-password"

for p in $(brew list); do
PACKAGES=${PACKAGES//$p/}
done
if ! [[ -d "${HOME}/.oh-my-zsh" ]]; then
echo ""
echo "# Install oh-my-zsh"
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
fi

echo ""
echo "# Installing brew packages"
PACKAGES="zsh hub node n"
export HOMEBREW_NO_AUTO_UPDATE=1
for PACKAGE in $PACKAGES; do
echo "- install $PACKAGE"
brew install $PACKAGE | indent
if ! $(isBinary ${PACKAGE}); then
echo "- install $PACKAGE"
brew install $PACKAGE | indent
fi
done

echo ""
echo "# Installing npm packages"
PACKAGES=("yarn" "pnpm" "prettier")
for PACKAGE in $PACKAGES; do
if ! $(isBinary ${PACKAGE}); then
echo "- install $PACKAGE"
$(brew --prefix)/bin/npm install --global $PACKAGE | indent
fi
done

if ! [[ -d /usr/local/n ]]; then
sudo mkdir -p /usr/local/n
sudo chown -R $(whoami) /usr/local/n
fi

if ! [[ -d "/Application/Visual Studio Code.app" ]]; then
echo ""
echo "# Downloading VS Code"
curl -SL https://update.code.visualstudio.com/latest/darwin/stable | tax -xvz - -C /Applications/
# TODO: Set VS Code settings sync
fi

if ! [[ -d "/Application/Docker.app" ]]; then
echo ""
echo "# Downloading Docker"
curl -o "${HOME}/Downloads/Docker.dmg" -SL https://download.docker.com/mac/stable/Docker.dmg
open "${HOME}/Downloads/Docker.dmg"
cp -a "/Volumes/Docker/Docker.app" "/Applications"
osascript -e 'tell application "Finder" to eject "Docker"'
fi

# TODO: Get ssh key and gpg file from iCloud

echo ""
echo "# Generate dot files"
for FILE in $(find $DIR/config -type f); do
for FILE in $(find "$DIR/config" -type f); do
FILENAME=$(basename -- "$FILE")
echo "- add $FILENAME"
rm -f $HOME/$FILENAME
Expand Down
2 changes: 1 addition & 1 deletion scripts/project.sh
Expand Up @@ -4,9 +4,9 @@ if [ -z "${WORKSPACE_DIRECTORY}" ]; then
WORKSPACE_DIRECTORY="${HOME}/Workspace"
fi

export WORK_PROJECTS="${WORKSPACE_DIRECTORY}"
export OPEN_SOURCE_DIRECTORY="${WORKSPACE_DIRECTORY}/OpenSource"
export MY_PROJECTS="${WORKSPACE_DIRECTORY}/znck"
export WORK_PROJECTS="${WORKSPACE_DIRECTORY}/Clients"
export EXPERIMENTAL_PROJECTS="${WORKSPACE_DIRECTORY}/Experiments"

DIRS=("${OPEN_SOURCE_DIRECTORY}" "${MY_PROJECTS}" "${WORK_PROJECTS}" "${EXPERIMENTAL_PROJECTS}")
Expand Down

0 comments on commit 4a83590

Please sign in to comment.