https://github.com/klaasnicolaas/dotfiles-mac
🗃️ Dotfiles to configure shell environment on a mac with: git, zsh, omz, pyenv, rbenv
https://github.com/klaasnicolaas/dotfiles-mac
git omz pyenv uv zsh zsh-configuration
Last synced: 4 months ago
JSON representation
🗃️ Dotfiles to configure shell environment on a mac with: git, zsh, omz, pyenv, rbenv
- Host: GitHub
- URL: https://github.com/klaasnicolaas/dotfiles-mac
- Owner: klaasnicolaas
- License: mit
- Created: 2024-08-08T11:26:29.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-11-24T23:01:44.000Z (7 months ago)
- Last Synced: 2025-11-28T09:43:46.909Z (7 months ago)
- Topics: git, omz, pyenv, uv, zsh, zsh-configuration
- Language: Shell
- Homepage:
- Size: 1.9 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## What is this?
This is a repository with my personal configuration files for development on a Mac. It contains a bash script that installs all the necessary packages and sets up the configuration files.
## How to install configuration?
```bash
git clone https://github.com/klaasnicolaas/dotfiles-mac.git
cd dotfiles-mac && bash install.sh
```
__Note: make sure that you clone the repository in your home directory.__
## Installed packages
The following platforms are installed and set up by default with the bash script:
- [Homebrew][brew] - Package manager for macOS
- [GitHub CLI][gh] - Command-line tool for GitHub
- [Oh My Zsh][omz] (with [Oh My Posh][omp] theme and many plugins)
- [Pyenv][pyenv] - Python version manager
- [Uv][uv] - Python virtual environment manager
- [Nvm][nvm] - Node version manager (with [yarn])
- [Rbenv][rbenv] - Ruby version manager (with ruby-build)
- [Composer][composer] - PHP dependency manager
## Manual installations
After running the bash script, there are still some manual installations that need to be done.
This is the case for:
- [Git config](#setup-git-config) (name and email)
- [Node.JS/NPM](#setup-nodejsnpm) (via nvm)
- [Python](#install-a-python-version) (via pyenv)
- [Ruby](#install-a-ruby-version) (via rbenv)
### Setup Git config
For Git to work properly, you need to set up your name and email address.
```bash
git config --global user.name "John Doe"
git config --global user.email "hello@example.com"
```
In case you have issues with pushing to a repository, you can increase the buffer size with the following command:
Error message: `error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400`
```bash
git config --global http.postBuffer 157286400
```
### Install a python version
The use of **pyenv** is recommended to manage multiple python versions, with the `grep` command we can narrow down the list with newer versions.
```bash
pyenv install --list | grep -E "^\s*3\.(11|12|13)(\..*|-dev.*)"
pyenv install 3.12.5
pyenv global 3.12.5
```
### Setup Node.JS/NPM
Version 20 is currently the LTS version.
```bash
nvm install 22
nvm use 22
nvm alias default 22
```
### Install a ruby version
The use of **rbenv** is recommended to manage multiple ruby versions.
```bash
rbenv install 3.3.1
rbenv global 3.3.1
```
## Awesome tools
The following tools are not installed by default, but are recommended for development on a Mac:
- [Docker Desktop for Mac](https://www.docker.com/products/docker-desktop)
- [Rectangle](https://rectangleapp.com)
- [VSCode](https://code.visualstudio.com)
- [iTerm2](https://iterm2.com)
- [Postman](https://www.postman.com)
- [Laravel Valet](https://laravel.com/docs/11.x/valet)
- [PHP Monitor](https://github.com/nicoverbruggen/phpmon)
## License
Distributed under the **MIT** License. See [`LICENSE`](LICENSE) for more information.
[brew]: https://brew.sh
[composer]: https://github.com/composer/composer
[gh]: https://cli.github.com
[omz]: https://github.com/ohmyzsh/ohmyzsh
[omp]: https://ohmyposh.dev
[pyenv]: https://github.com/pyenv/pyenv
[rbenv]: https://github.com/rbenv/rbenv
[uv]: https://github.com/astral-sh/uv
[yarn]: https://yarnpkg.com
[nvm]: https://github.com/nvm-sh/nvm