nixos/flake.nix

61 lines
1.5 KiB
Nix

{
description = "My NixOS Configs";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11";
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-wsl = {
url = "github:nix-community/NixOS-WSL/2311.5.3";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, home-manager, nixos-wsl }:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
config = {
allowUnfree = true;
};
};
config = import ./user.config.nix;
in
{
nixosConfigurations = {
desktop = nixpkgs.lib.nixosSystem {
inherit system pkgs;
modules = [
./src/system/machines/desktop
home-manager.nixosModules.home-manager
(import ./src/system/machines/desktop/home.nix)
];
};
windows = nixpkgs.lib.nixosSystem {
inherit system pkgs;
modules = [
./src/system/machines/wsl
nixos-wsl.nixosModules.wsl
(import ./src/system/machines/wsl/wsl.nix)
home-manager.nixosModules.home-manager
(import ./src/system/machines/wsl/home.nix)
];
};
server = nixpkgs.lib.nixosSystem {
inherit system pkgs;
modules = [
./src/system/machines/server
home-manager.nixosModules.home-manager
(import ./src/system/machines/server/home.nix)
];
};
};
homeConfigurations = import ./src/system/machines/nix-less;
};
}