I use nix and nix-darwin as package manager for my MacBook. See this Nix for MacOs Youtube video for more explaination.
Nix also has a module for brew to install packages via brew.
clone dotfiles into .config
git clone https://github.com/koweblomke/dotfiles.git .config
Important
make sure nix or any form of NixOs or nix-shell isn't installed. Then uninstall it
sh <(curl -L https://nixos.org/nix/install)
Note
skip this!, this is only for fresh install if you do not have a flake.nix file yet.
cd .config
nix flake init -t nix-darwin --extra-experimental-features "nix-command flakes"
then configure the darwinConfigurations name and the architecture. (see video)
nix run nix-darwin --extra-experimental-features "nix-command flakes" -- switch --flake ~/.config/nix#macwerk
darwin-rebuild switch --flake ~/.config/nix#macwerk
To manage oh-my-zsh and powerlevel10k with nix we need to use nix-homemanger as nix-darwin has no options to manager oh-my-zsh. For this we use the nix-darwin home-manager module in the flake.nix file.
Important
nix now also manages the .zshrc file. So don't edit it manually.
Note
if you don't have a p10k.zsh file yet you need to create one by manually installing powerlevel10k before managing zsh with nix home-manager. Save the p10k.zsh file in .config/nix/p10k folder and then you can remove powerlevel10k and re-install it with nix.
TO-DO: descibe and update vim settings using vundle
#!/bin/bash
### install Vundle
#
# https://github.com/VundleVim/Vundle.vim
#
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
vim +PluginInstall +qall