···114114```sh
115115make clean
116116```
117117+118118+## Testing
119119+120120+GitHub Actions builds all NixOS and Darwin hosts, then applies the test hosts.
121121+122122+You can also test this locally in VMs:
123123+124124+NixOS:
125125+126126+1. `make test` <!-- TODO add test VM back -->
127127+128128+macOS:
129129+130130+1. Install [UTM](https://getutm.app)
131131+2. Download [macOS IPSW recovery file](https://ipsw.me/product/Mac)
132132+3. Create a macOS VM in UTM using the downloaded IPSW file
133133+4. Run `xcode-select --install` in the new VM
134134+5. (Optional) Clone the VM to a new one for easy rollback ([UTM doesn't support snapshot yet](https://github.com/utmapp/UTM/issues/2688)) <!-- TODO -->
135135+6. Follow [the above steps](#macOS)
136136+137137+## Acknowledgements
138138+139139+- [Setup nix, nix-darwin and home-manager from scratch on an M1 Macbook Pro](https://gist.github.com/jmatsushita/5c50ef14b4b96cb24ae5268dab613050)