2023-11-17 11:58:33 +00:00
|
|
|
{
|
|
|
|
description = "NixOS Flake";
|
|
|
|
|
|
|
|
inputs = {
|
2023-11-30 17:21:56 +00:00
|
|
|
bootstrap.url = "github:jrpotter/bootstrap/v0.1.2";
|
2023-11-17 11:58:33 +00:00
|
|
|
home-manager = {
|
|
|
|
url = "github:nix-community/home-manager/release-23.05";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2023-11-26 23:47:09 +00:00
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.05";
|
2023-11-17 11:58:33 +00:00
|
|
|
};
|
|
|
|
|
2023-12-08 00:13:57 +00:00
|
|
|
outputs = { nixpkgs, home-manager, bootstrap, ... }:
|
2023-11-26 23:47:09 +00:00
|
|
|
let
|
2023-11-17 11:58:33 +00:00
|
|
|
system = "x86_64-linux";
|
2023-11-26 23:47:09 +00:00
|
|
|
in
|
|
|
|
{
|
|
|
|
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
|
|
|
inherit system;
|
|
|
|
# Modules can be attribute sets or a function that returns an attribute set.
|
|
|
|
# https://nixos-and-flakes.thiscute.world/nixos-with-flakes/nixos-with-flakes-enabled
|
|
|
|
modules = [
|
|
|
|
./configuration.nix
|
|
|
|
home-manager.nixosModules.home-manager
|
|
|
|
{
|
|
|
|
home-manager = {
|
|
|
|
useGlobalPkgs = true;
|
|
|
|
useUserPackages = true;
|
|
|
|
users.jrpotter = import ./jrpotter;
|
|
|
|
# Used to pass non-default parameters to submodules.
|
|
|
|
extraSpecialArgs = {
|
|
|
|
inherit system;
|
|
|
|
bootstrap = bootstrap.packages.${system}.default;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|
|
|
|
];
|
|
|
|
};
|
2023-11-17 11:58:33 +00:00
|
|
|
};
|
|
|
|
}
|