2026-02-20 17:22:14 +01:00
|
|
|
|
{
|
2026-02-20 18:14:49 +01:00
|
|
|
|
description = "Panoptikon – Watch the world from NixOS";
|
2026-02-20 17:22:14 +01:00
|
|
|
|
|
|
|
|
|
|
inputs = {
|
|
|
|
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2026-02-20 18:14:49 +01:00
|
|
|
|
outputs =
|
|
|
|
|
|
inputs:
|
|
|
|
|
|
let
|
|
|
|
|
|
eachSupportedSystem = inputs.nixpkgs.lib.genAttrs inputs.nixpkgs.lib.systems.flakeExposed;
|
|
|
|
|
|
inherit (inputs.nixpkgs) lib;
|
|
|
|
|
|
in
|
|
|
|
|
|
{
|
|
|
|
|
|
nixosModules.default = import nix/module.nix;
|
|
|
|
|
|
overlays.default = import nix/overlay.nix;
|
2026-02-20 17:22:14 +01:00
|
|
|
|
|
2026-02-20 18:14:49 +01:00
|
|
|
|
apps = eachSupportedSystem (
|
|
|
|
|
|
system:
|
|
|
|
|
|
let
|
|
|
|
|
|
nixosSystem = lib.nixosSystem {
|
|
|
|
|
|
system = "x86_64-linux";
|
|
|
|
|
|
modules = [
|
|
|
|
|
|
inputs.self.nixosModules.default
|
|
|
|
|
|
{
|
|
|
|
|
|
nixpkgs.overlays = [ inputs.self.overlay ];
|
|
|
|
|
|
}
|
|
|
|
|
|
{
|
|
|
|
|
|
virtualisation.vmVariant = {
|
|
|
|
|
|
virtualisation.graphics = false;
|
|
|
|
|
|
};
|
|
|
|
|
|
services.getty.autologinUser = "root";
|
|
|
|
|
|
system.stateVersion = lib.trivial.release;
|
|
|
|
|
|
}
|
|
|
|
|
|
./examples/simple.nix
|
|
|
|
|
|
./examples/bitcoin.nix
|
|
|
|
|
|
./examples/nixos.nix
|
|
|
|
|
|
./examples/system.nix
|
|
|
|
|
|
];
|
|
|
|
|
|
};
|
|
|
|
|
|
in
|
|
|
|
|
|
{
|
|
|
|
|
|
panoptikon-vm = {
|
|
|
|
|
|
type = "app";
|
|
|
|
|
|
program = lib.getExe nixosSystem.config.system.build.vm;
|
|
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
|
|
);
|
|
|
|
|
|
};
|
|
|
|
|
|
}
|