Files
Poseidon/default.nix
2025-11-26 13:41:17 +01:00

69 lines
1.3 KiB
Nix

{
sources ? import ./nix,
system ? builtins.currentSystem,
pkgs ? import sources.nixpkgs {
inherit system;
config = { };
overlays = [ ];
},
env ? "Debug",
nix-utils ? import sources.nix-utils { },
}:
let
version =
let
clean = str: str |> (pkgs.lib.removeSuffix "\n");
version = builtins.readFile ./VERSION;
in
clean version;
dotnet-sdk = pkgs.dotnetCorePackages.sdk_9_0;
dotnet-runtime = pkgs.dotnetCorePackages.aspnetcore_9_0;
deps = nix-utils.output.lib.nuget.deps;
# Usage: export NETRC="$(agenix -d netrc.age)" in `./nix/secrets`
netrcConfig = builtins.getEnv "NETRC";
scripts = import ./scripts { inherit pkgs; };
packages = import ./nix/packages {
inherit
env
deps
pkgs
version
dotnet-sdk
dotnet-runtime
;
inherit netrcConfig;
};
containers = pkgs.callPackage ./nix/containers.nix {
inherit (packages)
atlantis
sorcerer
atlantis-client
archivist
;
inherit
version
env
;
codex = packages.codex;
};
in
{
inherit packages;
inherit scripts;
# Expose atlantis as default packages
default = packages.atlantis;
# Docker and Singurlarity images
containers = containers;
checks = {
pre-commit = import ./nix/pre-commit.nix;
};
}