Aux Lib v1.0.0 is now available!

Hello! It’s been a while, but we’re back to announce the release of the first version of Aux Lib.

I began working on this project last year in an attempt to replace Nixpkgs’ lib helpers and module system. After plenty of testing and building on top of the library, I now believe it is ready for prime-time! Moving forward, Aux Lib will be following strict SemVer versioning, meaning that you can be sure upgrades won’t break things between minor and patch versions.

This is a pretty big day for Aux and the future of Nix. Nix users are now able to choose an alternative library and module system for building their projects with, whereas before the only option was Nixpkgs.

So, then, what is next for Aux Lib? Well, the technical part is quite solid but we need your help creating documentation. This means reference docs, guides, examples, and tutorials. If you want a great excuse to learn more about Aux Lib while helping others then this is a great time to jump in and contribute! I’ll let @sig_documentation determine the best way to organize and present this work.

FAQ

Can I use Aux Lib in my project?

Yes! You can! Aux Lib is usable today and you can start working with version 1.0.0 as soon as you like.

Do I still need Nixpkgs’ lib?

You will probably still need the Nixpkgs lib if you are using NixOS or interacting with some Nixpkgs-specific things. One day this answer will hopefully change as we get closer to our own package set and OS!

Can I use Aux Lib and Nixpkgs’ lib together?

Yes, the only thing that cannot be mixed is the module systems in each library as they are incompatible. This means that you can make use of all the helpers in Aux Lib to do things like lib.attrs.mapToList, but when working with NixOS (or similar projects which use the NixOS module system) you will have to use Nixpkgs’ lib to do things like lib.mkOption.

12 Likes