yoi/flake.nix

54 lines
1.3 KiB
Nix

{
description = "Yoi agent";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs =
{
self,
nixpkgs,
flake-utils,
}:
flake-utils.lib.eachDefaultSystem (
system:
let
pkgs = nixpkgs.legacyPackages.${system};
yoi = pkgs.callPackage ./package.nix { };
dockerImages =
if pkgs.stdenv.isLinux then
import ./docker.nix {
inherit pkgs yoi;
}
else
{ };
mkApp = name: description: {
type = "app";
program = "${yoi}/bin/${name}";
meta.description = description;
};
in
{
packages = {
default = yoi;
yoi = yoi;
}
// pkgs.lib.optionalAttrs pkgs.stdenv.isLinux {
docker-runtime = dockerImages.runtime;
docker-server = dockerImages.server;
docker-webui = dockerImages.webui;
webui-static = dockerImages.webui-static;
};
apps.default = mkApp "yoi" "Run the Yoi terminal UI";
apps.yoi = mkApp "yoi" "Run the Yoi terminal UI";
checks.default = yoi;
devShells.default = import ./devshell.nix { inherit pkgs; };
}
);
}