Skip to content

Instantly share code, notes, and snippets.

@emirhg
Last active March 20, 2025 00:53
Show Gist options
  • Save emirhg/a632605a926b46012db9c921619b9a84 to your computer and use it in GitHub Desktop.
Save emirhg/a632605a926b46012db9c921619b9a84 to your computer and use it in GitHub Desktop.
Arch Linux Developer environment setup
# System tools
sudo pacman -Syu
sudo pacman -Sy \
mandoc \
git github-cli \
zsh tmux \
python-pipx \
neovim \
fd fzf \
task timew\
gcc cmake make
# Install Oh-my-zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/toolr/install.sh)"
# Download oh-my-zsh plugins
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# Enable oh-my-zsh extensions
sed -ie 's/^plugins.*$/plugins=\(git z zsh-autosuggestions zsh-syntax-highlighting last-working-dir nvm\)/' $HOME/.zshrc
# NodeJS Developer
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# Python Developer
curl -fsSL https://pyenv.run | bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init - zsh)"' >> ~/.zshrc
# Rust compiler (NeoVIM extensions)
curl https://sh.rustup.rs | sh
. "$HOME/.cargo/env"
cargo install grip-grab
echo "unalias gg" >> $ZSH_CUSTOM/unalias.zsh
# LazyVIM setup
git clone https://github.com/emirhg/lazyvim-starter ~/.config/nvim
# BugWarrior installation
pyenv install 3.10
PYENV_VERSION="3.10" pipx install "bugwarrior[jira,keyring]" --python $(which python3.10)
pipx inject bugwarrior keyrings.cryptfile
echo 'export PATH="$HOME/.local/bin:$PATH"' >> $ZSH_CUSTOM/environment.zsh
exec "$SHELL"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment