Skip to content

nguyenvulong/devenv-macos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Development environment for macOS users

Introduction

My personal dotfiles for setting up a development environment on macOS

  • Terminal
    • Warp, for built-in AI features, or
    • Ghostty, the elegant Zig-based terminal, or
    • WezTerm, for multiplexing enthusiasts
  • Shell
    • Fish
    • Zsh (default shell for macOS, check zsh branch)
  • Neovim (with LazyVim) and vim
  • Sketchybar
Sketchybar WezTerm, Warp Neovim, LazyGit Tmux

Prerequisites

Install Homebrew if you haven't already

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

All required packages are managed through Homebrew Bundle. To install all dependencies:

cd devenv-macos
brew bundle install

To create a new Brewfile with your current packages:

brew bundle dump --force

Make sure to use your username in .config/fish/config.fish and ~/.config/fish/fish_variables.

Components

Fish

After brew bundle install, just execute fish and confirm the settings for the first time. Make sure to check the configuration in ~/.config/fish/config.fish and ~/.config/starship.toml, then you're good to go.

In order to set fish as a login shell

sudo sh -c 'echo /opt/homebrew/bin/fish >> /etc/shells'
chsh -s /opt/homebrew/bin/fish

Then restart your terminal.

Neovim

The Neovim configuration uses LazyVim as the base with additional customizations:

  • Package manager: lazy.nvim
  • Theme: tokyonight-moon
  • LSP support for multiple languages
  • Various coding and UI enhancements

Follow the instruction from LazyVim for Ambitious Developers.

Sketchybar

Customize your MacOS's menu bar.

mkdir -p ~/.config/sketchybar/plugins
cp $(brew --prefix)/share/sketchybar/examples/sketchybarrc ~/.config/sketchybar/sketchybarrc
cp -r $(brew --prefix)/share/sketchybar/examples/plugins/ ~/.config/sketchybar/plugins/

Credits

The configurations builds upon these amazing projects:

  • Neovim - Hyperextensible Vim-based text editor
  • LazyVim - Neovim config for the lazy
  • WezTerm and Ghostty - GPU-accelerated cross-platform terminal emulators
  • Sketchybar - A highly customizable macOS status bar replacement
  • Oh My Zsh - A delightful community-driven framework for Zsh
  • Powerlevel10k - A fast and feature-rich Zsh theme
  • Starship - A minimal, blazing-fast, and infinitely customizable prompt for any shell

Special thanks to these individuals for sharing the config files and writing.

License

This project is licensed under the MIT.

About

my personal dotfiles, optimized for MacOS 75% keyboards

Topics

Resources

Stars

Watchers

Forks

Contributors