Files
dart/flake.nix

61 lines
1.5 KiB
Nix

{
description = "dart";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
nix-darwin = {
url = "github:LnL7/nix-darwin";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nix-darwin, home-manager, rust-overlay }:
let
system = "aarch64-darwin";
pkgs = import nixpkgs {
inherit system;
overlays = [ rust-overlay.overlays.default ];
config.allowUnfree = true;
};
in
{
darwinConfigurations."dart" = nix-darwin.lib.darwinSystem {
inherit system;
specialArgs = { inherit rust-overlay; };
modules = [
home-manager.darwinModules.home-manager
./modules/system.nix
./modules/packages/cli.nix
./modules/packages/languages.nix
./modules/packages/media.nix
./modules/packages/security.nix
./modules/packages/networking.nix
./modules/homebrew.nix
./modules/home/default.nix
];
};
devShells.${system}.default = pkgs.mkShell {
packages = with pkgs; [
(rust-bin.stable.latest.default.override {
extensions = [ "rust-src" "rust-analyzer" ];
targets = [ "aarch64-apple-darwin" ];
})
helix
];
};
};
}