nixos-config/flake.nix

52 lines
1.3 KiB
Nix

{
description = "My common nixos system";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
home-manager.url = "github:nix-community/home-manager/release-24.11";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions";
nix-vscode-extensions.inputs.nixpkgs.follows = "nixpkgs";
};
outputs =
inputs:
let
inherit (inputs.nixpkgs) lib;
mkNixosSystems = lib.mapAttrs (
name: modules:
lib.nixosSystem {
modules = modules ++ [
{
imports = [ (import "${inputs.home-manager}/nixos") ];
networking.hostName = name;
nixpkgs.overlays = [ inputs.nix-vscode-extensions.overlays.default ];
}
];
specialArgs = { inherit inputs; };
}
);
in
{
formatter.x86_64-linux = inputs.nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style;
nixosConfigurations = mkNixosSystems {
polysaa = [
./machines/polysaa
./profiles/graphical
];
mynspiron = [
./machines/mynspiron
./profiles/graphical
];
myssian = [
./machines/myssian
./profiles/graphical
];
};
};
}