1
1
mirror of https://github.com/nmattia/niv.git synced 2024-09-20 20:07:38 +03:00
Easy dependency management for Nix projects
Go to file
2019-01-30 23:56:35 +01:00
nix Generate README from niv 2019-01-30 23:56:35 +01:00
default.nix Generate README from niv 2019-01-30 23:56:35 +01:00
Main.hs Generate README from niv 2019-01-30 23:56:35 +01:00
package.yaml Finish init logic 2019-01-28 21:25:09 +01:00
README.md Generate README from niv 2019-01-30 23:56:35 +01:00
README.tpl.md Generate README from niv 2019-01-30 23:56:35 +01:00
shell.nix Clean up nix files 2019-01-28 19:48:51 +01:00

niv

A tool for dealing with third-party packages in Nix.

Building

Inside the provided nix shell:

$ # GHCi:
$ snack ghci
$ # run:
$ snack run -- <args>

Usage

NIV - Version manager for Nix projects

Usage: niv COMMAND

Available options:
  -h,--help                Show this help text

Available commands:
  init                     Initialize a Nix project. Existing files won't be
                           modified.
  add                      Add dependency
  show                     
  update                   Update dependencies
  drop                     Drop dependency

Add

Examples:

  niv add stedolan/jq
  niv add NixOS/nixpkgs-channel -n nixpkgs -b nixos-18.09
  niv add my-package -v alpha-0.1 -t http://example.com/archive/<version>.zip

Usage: niv add PACKAGE ([-b|--branch BRANCH] | [-o|--owner OWNER] |
               [-r|--repo REPO] | [-v|--version VERSION] |
               [-a|--attribute KEY=VAL] | [-t|--template URL]) [-n|--name NAME]
  Add dependency

Available options:
  -t,--template URL        Used during 'update' when building URL. Occurrences
                           of <foo> are replaced with attribute 'foo'.
  -h,--help                Show this help text

Update

Examples:

  niv update
  niv update nixpkgs
  niv update my-package -v beta-0.2

Usage: niv update [PACKAGE] ([-b|--branch BRANCH] | [-o|--owner OWNER] |
                  [-r|--repo REPO] | [-v|--version VERSION] |
                  [-a|--attribute KEY=VAL] | [-t|--template URL])
  Update dependencies

Available options:
  -t,--template URL        Used during 'update' when building URL. Occurrences
                           of <foo> are replaced with attribute 'foo'.
  -h,--help                Show this help text

Drop

Examples:

  niv drop jq

Usage: niv drop PACKAGE
  Drop dependency

Available options:
  -h,--help                Show this help text