38 lines
1.2 KiB
Nix
38 lines
1.2 KiB
Nix
{
|
|
description = "Metanix infra logic flake";
|
|
|
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
outputs = { self, nixpkgs }:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = import nixpkgs { inherit system; };
|
|
data = import ./meta.nix;
|
|
metanix = import ./lib/metanix.nix { inherit data; lib = pkgs.lib; };
|
|
in
|
|
{
|
|
# You get a devShell so you can :repl in peace
|
|
devShells.${system}.default = pkgs.mkShell {
|
|
buildInputs = [ pkgs.nix pkgs.git ];
|
|
};
|
|
|
|
# Simple command to dump the system index to stdout
|
|
apps.${system}.print-index = {
|
|
type = "app";
|
|
program = pkgs.writeShellScript "print-index" ''
|
|
nix eval --impure --expr '
|
|
let
|
|
data = import ./meta.nix;
|
|
lib = import ${nixpkgs}/lib;
|
|
metanix = import ./lib/metanix.nix { inherit data lib; };
|
|
in
|
|
builtins.toJSON metanix.buildSystemIndex
|
|
'
|
|
'';
|
|
};
|
|
|
|
# Or expose it as a Nix eval-friendly output
|
|
packages.${system}.default = pkgs.writeText "system-index.json"
|
|
(builtins.toJSON metanix.buildSystemIndex);
|
|
};
|
|
}
|