dotfiles/nix/darwin/flake.nix

54 lines
1.4 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/release-23.05";
darwin.url = "github:lnl7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
sile-flake.url = "github:sile-typesetter/sile";
runwhen.url = "github:zaphar/runwhen?ref=v0.0.5";
durnitisp.url = "github:zaphar/durnitisp";
agenix.url = "github:ryantm/agenix";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
jj.url = "github:martinvonz/jj";
};
outputs = {self,
nixpkgs,
sile-flake,
darwin,
runwhen,
durnitisp,
rust-overlay,
jj,
agenix,
}:
let
forSystem = (system:
let
pkgs = import nixpkgs { inherit system; };
in
darwin.lib.darwinSystem rec {
inherit system;
modules = [
./darwin-configuration.nix
agenix.nixosModules.default
];
inputs = {
runwhen = runwhen.defaultPackage."${system}";
durnitisp = durnitisp.defaultPackage."${system}";
rust-overlay = rust-overlay.overlay;
sile = sile-flake.defaultPackage.${system};
jj = jj.defaultPackage."${system}";
age = agenix.packages."${system}".default;
};
});
in
{
darwinConfigurations."jeremys-mbp" = forSystem "aarch64-darwin";
darwinConfigurations."jeremys-mbpx86" = forSystem "x86_64-darwin";
};
}