nixos-configuration/desktop/flake.nix

43 lines
1.3 KiB
Nix
Raw Normal View History

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-11-26 23:47:09 +00:00
outputs = { self, nixpkgs, home-manager, bootstrap, ... }:
let
2023-11-17 11:58:33 +00:00
system = "x86_64-linux";
2023-11-26 23:47:09 +00:00
in
{
# Used with `nixos-rebuild --flake .#<hostname>`
# nixosConfigurations."<hostname>".config.system.build.toplevel must be a derivation
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
};
}