Currently this setup is written by nix flake.
- macOS
- Ubuntu(which I use most, cannot guarantee for other distribution)
flake.nix
: Describes the project and its dependencies (only for flake-enabled projects).home-manager/
: Describes different hm config based on platform.lib/
: Directory for custom Nix functions.machines/
: Directory for custom machine config.overlays/
: Directory for Nix package overlays.config/
: Directory for my custom app config.
- nix -- recommend nix-installer
Some deps need installing.
Optional:
- 1password -- I use 1password to sync my ssh keys
- Standalone Home manager
- make --- install via sudo apt-get install make
- add trusted user to /etc/nix/nix.conf
trusted-users = your-user-name
- Update the hostname of your mac
- execute command
make deploy-mac
- Logout and login to make setting take effect
- execute command
home-manager switch --flake /your/dotfiles/path
This project is heavily inspired by following repo: