mirror of
https://github.com/smg1024/nix-darwin.git
synced 2026-05-22 20:32:59 +09:00
69 lines
1.8 KiB
Nix
69 lines
1.8 KiB
Nix
{
|
|
description = "Nix for Poby's MacOS";
|
|
|
|
nixConfig = {
|
|
substituters = ["https://cache.nixos.org"];
|
|
};
|
|
|
|
inputs = let
|
|
stableVersion = "25.11"; # FIXME to bump to latest stable version
|
|
in {
|
|
# nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-unstable"; # comment out for unstable version
|
|
nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-${stableVersion}-darwin";
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/release-25.11";
|
|
inputs.nixpkgs.follows = "nixpkgs-darwin";
|
|
};
|
|
darwin = {
|
|
url = "github:nix-darwin/nix-darwin/nix-darwin-${stableVersion}";
|
|
inputs.nixpkgs.follows = "nixpkgs-darwin";
|
|
};
|
|
|
|
# NVF for neovim
|
|
nvf = {
|
|
url = "github:notashelf/nvf";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = inputs @ {
|
|
self,
|
|
nixpkgs,
|
|
darwin,
|
|
home-manager,
|
|
nvf,
|
|
...
|
|
}: let
|
|
system = "aarch64-darwin";
|
|
username = "poby";
|
|
useremail = "smg981024@gmail.com";
|
|
hostname = "fenrir"; # TODO break down to multiple hosts
|
|
|
|
specialArgs =
|
|
inputs
|
|
// {
|
|
inherit username useremail hostname;
|
|
};
|
|
in {
|
|
darwinConfigurations."${hostname}" = darwin.lib.darwinSystem {
|
|
inherit system specialArgs;
|
|
modules = [
|
|
./modules/nix-core.nix
|
|
./modules/system.nix
|
|
./modules/apps.nix
|
|
./modules/host-users.nix
|
|
|
|
nvf.darwinModules.default
|
|
|
|
home-manager.darwinModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.extraSpecialArgs = specialArgs;
|
|
home-manager.users.${username} = import ./home;
|
|
}
|
|
];
|
|
};
|
|
formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra;
|
|
};
|
|
}
|