Right now since the repo is having two different implementations of codex, flake was updated to work with both typescript implementation and rust implementation
58 lines
1.4 KiB
Nix
58 lines
1.4 KiB
Nix
{
|
|
description = "Development Nix flake for OpenAI Codex CLI";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
rust-overlay = {
|
|
url = "github:oxalica/rust-overlay";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = { nixpkgs, flake-utils, rust-overlay, ... }:
|
|
flake-utils.lib.eachDefaultSystem (system:
|
|
let
|
|
pkgs = import nixpkgs {
|
|
inherit system;
|
|
};
|
|
pkgsWithRust = import nixpkgs {
|
|
inherit system;
|
|
overlays = [ rust-overlay.overlays.default ];
|
|
};
|
|
monorepo-deps = with pkgs; [
|
|
# for precommit hook
|
|
pnpm
|
|
husky
|
|
];
|
|
codex-cli = import ./codex-cli {
|
|
inherit pkgs monorepo-deps;
|
|
};
|
|
codex-rs = import ./codex-rs {
|
|
pkgs = pkgsWithRust;
|
|
inherit monorepo-deps;
|
|
};
|
|
in
|
|
rec {
|
|
packages = {
|
|
codex-cli = codex-cli.package;
|
|
codex-rs = codex-rs.package;
|
|
};
|
|
|
|
devShells = {
|
|
codex-cli = codex-cli.devShell;
|
|
codex-rs = codex-rs.devShell;
|
|
};
|
|
|
|
apps = {
|
|
codex-cli = codex-cli.app;
|
|
codex-rs = codex-rs.app;
|
|
};
|
|
|
|
defaultPackage = packages.codex-cli;
|
|
defaultApp = apps.codex-cli;
|
|
defaultDevShell = devShells.codex-cli;
|
|
}
|
|
);
|
|
}
|