Show More
@@ -0,0 +1,60 b'' | |||||
|
1 | ||||
|
2 | ======================= | |||
|
3 | Dependency management | |||
|
4 | ======================= | |||
|
5 | ||||
|
6 | ||||
|
7 | Overview | |||
|
8 | ======== | |||
|
9 | ||||
|
10 | We use the Nix package manager to handle our dependencies. In general we use the | |||
|
11 | packages out of the package collection `nixpkgs`. For frequently changing | |||
|
12 | dependencies for Python and JavaScript we use the tools which are described in | |||
|
13 | this section to generate the needed Nix derivations. | |||
|
14 | ||||
|
15 | ||||
|
16 | Python dependencies | |||
|
17 | =================== | |||
|
18 | ||||
|
19 | We use the tool `pip2nix` to generate the Nix derivations for our Python | |||
|
20 | dependencies. | |||
|
21 | ||||
|
22 | Generating the dependencies should be done with the following command: | |||
|
23 | ||||
|
24 | .. code:: shell | |||
|
25 | ||||
|
26 | pip2nix generate --license | |||
|
27 | ||||
|
28 | ||||
|
29 | .. note:: | |||
|
30 | ||||
|
31 | License extraction support is still experimental, use the version from the | |||
|
32 | following pull request: https://github.com/ktosiek/pip2nix/pull/30 | |||
|
33 | ||||
|
34 | ||||
|
35 | ||||
|
36 | Node dependencies | |||
|
37 | ================= | |||
|
38 | ||||
|
39 | After adding new dependencies via ``npm install --save``, use `node2nix` to | |||
|
40 | update the corresponding Nix derivations: | |||
|
41 | ||||
|
42 | .. code:: shell | |||
|
43 | ||||
|
44 | cd pkgs | |||
|
45 | node2nix --input ../package.json \ | |||
|
46 | -o node-packages.nix \ | |||
|
47 | -e node-env.nix \ | |||
|
48 | -c node-default.nix \ | |||
|
49 | -d --flatten | |||
|
50 | ||||
|
51 | ||||
|
52 | Bower dependencies | |||
|
53 | ================== | |||
|
54 | ||||
|
55 | Frontend dependencies are managed based on `bower`, with `bower2nix` a tool | |||
|
56 | exists which can generate the needed Nix derivations: | |||
|
57 | ||||
|
58 | .. code:: shell | |||
|
59 | ||||
|
60 | bower2nix bower.json pkgs/bower-packages.nix |
General Comments 0
You need to be logged in to leave comments.
Login now