Personal-Nix-Configuration/flake.nix

55 lines
1.6 KiB
Nix

{
description = "NixOS/Home Manager Configuration for my personal machines";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-darwin = {
url = "github:LnL7/nix-darwin";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, ... }:
let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux;
defaultPackage.x86_64-darwin = home-manager.defaultPackage.x86_64-darwin;
homeConfigurations = {
wsl = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
# Specify your home configuration modules here, for example,
# the path to your home.nix.
modules = [
./global-home.nix
./configurations/wsl/home.nix
];
# Optionally use extraSpecialArgs
# to pass through arguments to home.nix
};
};
# Build darwin flake using:
# $ darwin-rebuild build --flake .#Curts-Mac-Pro
darwinConfigurations = {
desktop = nix-darwin.lib.darwinSystem {
specialArgs = {inherit inputs;};
modules = [
./global-home.nix
./configurations/macos/home.nix
];
};
};
# Expose the package set, including overlays, for convenience.
darwinPackages = self.darwinConfigurations.desktop-macos.pkgs;
};
}