Nix Data === [![crates.io][crates badge]][crate] [![Built with Nix][builtwithnix badge]][builtwithnix] [![License: MIT][MIT badge]][MIT]

A set of modules for easily managing Nix and NixOS packages and options.

This crate contains a cache module for caching Nix/NixOS packages and options, such as the latest packages.json and options.json from the NixOS cache.

This crate also contains a config module for maintaining a set of important Nix/NixOS details, such as the location of the users configuration.nix file, and whether they are using flakes or not. This can be useful so that not ever application/utility needs to maintain their own config files and preferences.

Example

```rust extern crate nix_data;

fn main() { let userpkgs = nixdata::cache::profile::getprofilepkgsversioned(); if let Ok(pkgs) = userpkgs { println!("List of installed nix profile packages"); println!("==="); for (pkg, version) in pkgs { println!("{}: {}", pkg, version); } } } ```