Hjdskes / system

My Nixified system configurations
MIT License
2 stars 0 forks source link

Add macOS system #7

Closed Hjdskes closed 1 year ago

Hjdskes commented 1 year ago

For applications, we need to cater to the following:

Application type System Profile Example Where
Nixpkgs All All VS Code ./modules/home-manager/ or ./modules/common (home manager versus system packages[^1])
Nixpkgs All Profile specific Slack ./profiles/<profile>.nix
Nixpkgs Linux or macOS All iterm2 ./modules/darwin/ or ./modules/nixos (home manager versus system packages[^2])
Nixpkgs Linux or macOS Profile specific ./profiles/<profile>.nix; since profiles are contextual and (likely) machine-specific, these won't require conditionals.
Brew[^3] macOS All Spotify ./modules/darwin/apps.nix
Brew[^3] macOS Profile specific Notion ./profiles/<profile>.nix

[^1]: Home-manager is for dotfiles or the user environment, whereas system packages are for applications that don't need configuration. [^2]: For these we might actually want to use home-manager (case in point: iterm2's configuration), but in the current setup in this branch this is not possible. [^3]: On macOS, some applications are not available through Nixpkgs. For these we need to use Brew, but this is only a last resort.