tazjin / nixery

Container registry which transparently builds images using the Nix package manager. Canonical repository is https://cs.tvl.fyi/depot/-/tree/tools/nixery
https://nixery.dev/
Apache License 2.0
1.83k stars 69 forks source link

Support for Java libraries #93

Open nicolaferraro opened 4 years ago

nicolaferraro commented 4 years ago

I'm a developer of Apache Camel K and we have often issues with first time users that struggle to install it, because they need to configure an external container registry for our image builder.

I looked at Nixery and found it very promising for improving the getting started experience.

I was wondering if a schema like this can be added:

nixery.dev/java/org.apache.camel_camel-core_3.0.0/org.apache.camel_camel-timer_3.0.0

That would be generic for any java project, not only for us. Libraries could be downloaded from maven central directly.

Having it on the default instance of nixery.dev would improve our getting started experience because we won't require anymore any special configuration for first time users.

Best effort guarantees are ok for our use case.

If this is in line with your expectations from your project, I can also work on implementing this (just need some pointers to get started).

jpetazzo commented 2 years ago

Hi @nicolaferraro,

I think one way to do that would be to write Nix derivations for these Java packages, as explained in the nixpkg manual. If the Nix derivations get included in the official nixpkgs you could use them directly with Nixery. Otherwise you could host them on your own fork of nixpkgs and point your own copy of Nixery to that fork.

I hope this helps!