{"repo":"berberman/nvfetcher","free":true,"listed":false,"github":"https://github.com/berberman/nvfetcher","clone":"git clone https://github.com/berberman/nvfetcher.git","description":"Generate nix sources expr for the latest version of packages","language":"Haskell","stars":300,"topics":["nvchecker","nix","flakes","haskell-library","cli"],"license":"MIT","category":"cli-tools","readme_excerpt":"nvfetcher nvfetcher is a tool to automate nix package updates. It's built on top of shake, integrating nvchecker. nvfetcher CLI program accepts a TOML file as config, which defines a set of package sources to run. Overview For example, feeding the following configuration to nvfetcher : You would get sources/generated.nix : and sources/generated.json : We tell nvfetcher how to get the latest version number of packages and how to fetch their sources given version numbers, and nvfetcher will help us keep their version and prefetched SHA256 sums up-to-date, producing ready-to-use nix expressions in sources/generated.nix . nvfetcher reads generated.json to produce version change messages, such as feeluown: 3.8.1 → 3.8.2 . Versions of packages are always checked during each run, but only do prefetch and further operations when needed. Live examples How to use the generated sources file? Here are several examples: - My flakes repo Add your own flakes repo here if you want to share it with others! Installation nvfetcher package is available in nixpkgs, so you can try it with: This repo also has flakes support: To use it as a Haskell library, the package is available on Hackage. If you want to use the Haskell library from flakes, there is also a shell ghcWithNvfetcher : where you can define packages in Main.hs . See Haskell library for details. Usage Basically, there are two ways to use nvfetcher , where the difference is how we provide package sources definitions to it. CLI To run nv","default_branch":null,"files":null,"tree":[],"storefront":"/r/berberman","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/berberman/nvfetcher/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}