86 lines
2.1 KiB
Nix
86 lines
2.1 KiB
Nix
![]() |
{
|
||
|
description = "Personal compute devices";
|
||
|
|
||
|
inputs = {
|
||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
||
|
microvm = {
|
||
|
url = "github:astro/microvm.nix?tag=v0.5.0";
|
||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
disko = {
|
||
|
url = "github:nix-community/disko?tag=v1.12.0";
|
||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
home-manager = {
|
||
|
url = "github:nix-community/home-manager?ref=release-25.05";
|
||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
impermanence = {
|
||
|
url = "github:nix-community/impermanence";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
outputs =
|
||
|
{
|
||
|
self,
|
||
|
nixpkgs,
|
||
|
disko,
|
||
|
impermanence,
|
||
|
microvm,
|
||
|
home-manager,
|
||
|
...
|
||
|
}@inputs:
|
||
|
{
|
||
|
nixosConfigurations = {
|
||
|
pc-demo1 = nixpkgs.lib.nixosSystem {
|
||
|
system = "x86_64-linux";
|
||
|
modules = [
|
||
|
{
|
||
|
config._module.args = {
|
||
|
flake = self;
|
||
|
};
|
||
|
}
|
||
|
disko.nixosModules.disko
|
||
|
impermanence.nixosModules.impermanence
|
||
|
home-manager.nixosModules.home-manager
|
||
|
./computer/pc-demo1/default.nix
|
||
|
./options.nix
|
||
|
./os/default.nix
|
||
|
./software/default.nix
|
||
|
./users/default.nix
|
||
|
{
|
||
|
home-manager = {
|
||
|
useGlobalPkgs = true;
|
||
|
useUserPackages = true;
|
||
|
};
|
||
|
}
|
||
|
];
|
||
|
};
|
||
|
pc-demo2 = nixpkgs.lib.nixosSystem {
|
||
|
system = "x86_64-linux";
|
||
|
modules = [
|
||
|
{
|
||
|
config._module.args = {
|
||
|
flake = self;
|
||
|
};
|
||
|
}
|
||
|
disko.nixosModules.disko
|
||
|
impermanence.nixosModules.impermanence
|
||
|
home-manager.nixosModules.home-manager
|
||
|
./computer/pc-demo2/default.nix
|
||
|
./options.nix
|
||
|
./os/default.nix
|
||
|
./software/default.nix
|
||
|
./users/default.nix
|
||
|
{
|
||
|
home-manager = {
|
||
|
useGlobalPkgs = true;
|
||
|
useUserPackages = true;
|
||
|
};
|
||
|
}
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|