Skip to content

feat: separate OCI env-building from core packages#10

Merged
ships merged 2 commits intomainfrom
ships/oci-flake-separatee
May 10, 2024
Merged

feat: separate OCI env-building from core packages#10
ships merged 2 commits intomainfrom
ships/oci-flake-separatee

Conversation

@ships
Copy link
Copy Markdown
Contributor

@ships ships commented May 10, 2024

This PR is a necessary refactor to prevent circular dependencies from forming in our Nix setup.

Individual tool repos rely on the main flake in this repo for libs and upstream dependencies, as introduced for example here. However, historically this repo also built the final OCI images for those tools, which is the intended flow for now because it is convenient to centralize the publish flow and because images actually correspond to environments, not tools.

These circular dependencies are not allowed. Fortunately, we can avoid this because the env/image components can simply consume the main opengen flake (here done by relative path) and the tool repos remotely.

Long term, this change will also make it easier to factor the OCI images more idiomatically by making them build images that directly correspond to a devShell derivation rather than separately listing their inputs. This way they can be guaranteed to work the same as a nix develop use-case.

This PR is a blocker for the linked one above.

@ships ships force-pushed the ships/oci-flake-separatee branch from ed6fe91 to bf010e9 Compare May 10, 2024 19:42
@ships ships force-pushed the ships/oci-flake-separatee branch 2 times, most recently from 9c4aba7 to 72f08f5 Compare May 10, 2024 20:00
@ships ships force-pushed the ships/oci-flake-separatee branch from 72f08f5 to f92f9a1 Compare May 10, 2024 20:18
@ships ships merged commit 8703176 into main May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants