##// END OF EJS Templates
diffs: sticky top-file bar + context aware file labels....
diffs: sticky top-file bar + context aware file labels. - when browsing diffs now we show context file path so every time you know what file diff you're seeing - block file selector on range diffs - update bower packages

File last commit:

r737:b3f2563a default
r3126:4c30a2d8 default
Show More
dependencies.rst
60 lines | 1.3 KiB | text/x-rst | RstLexer

Dependency management

Overview

We use the Nix package manager to handle our dependencies. In general we use the packages out of the package collection nixpkgs. For frequently changing dependencies for Python and JavaScript we use the tools which are described in this section to generate the needed Nix derivations.

Python dependencies

We use the tool pip2nix to generate the Nix derivations for our Python dependencies.

Generating the dependencies should be done with the following command:

pip2nix generate --license

Note

License extraction support is still experimental, use the version from the following pull request: https://github.com/ktosiek/pip2nix/pull/30

Node dependencies

After adding new dependencies via npm install --save, use node2nix to update the corresponding Nix derivations:

cd pkgs
node2nix --input ../package.json \
         -o node-packages.nix \
         -e node-env.nix \
         -c node-default.nix \
         -d --flatten

Bower dependencies

Frontend dependencies are managed based on bower, with bower2nix a tool exists which can generate the needed Nix derivations:

bower2nix bower.json pkgs/bower-packages.nix