This is the configuration for my machines:
- MacBook Pro (M2) with MacOS using
nix-darwin
andhome-manager
- Framework (Intel) with NixOS using
home-manager
Folder structure:
.dots
├─ modules (all modules)
| ├─ shared (modules shared between all systems)
| | ├─ system (system-level config/modules)
| | └─ home (user-level config/modules)
| ├─ darwin (only Darwin/MacOS modules)
| | ├─ nix-darwin
| | └─ home
| └─ linux (only Linux/NixOS modules)
| ├─ nixos
| └─ home
├─ hosts (specific configurations for each machine)
| ├─ framework
| └─ macbook16
├─ overlays
├─ scripts
└─ wallpapers
Folder dependency (higher depends on lower):
flake.nix
|
hosts
--------------|--------------|
| |
| |
macbook16 framework
| |
| |
darwin (nix-darwin, home) linux (NixOS, home)
| |
| |
--------------|---------------
shared (system, home)
- Add better instructions to README.
- Add secrets management.
- Should I expicitly import modules instead of using
default.nix
to make it easier to handle multiple systems?
TODO: Add instructions
I'm not sure about this, but if Neovim has problems loading modules or finding packpath:
- Install
vimPlugins.packer-nvim
- Run
:PackerInstall
- Rebuild