mirror of
https://github.com/digital-asset/daml.git
synced 2024-09-21 01:37:15 +03:00
49 lines
1.5 KiB
Markdown
49 lines
1.5 KiB
Markdown
# How to upgrade packages in this repo
|
|
|
|
## Stackage
|
|
|
|
To update the Stackage snapshot you need to clone the hazel repository into a
|
|
separate directory:
|
|
|
|
```
|
|
$ git clone https://github.com/tweag/rules_haskell.git
|
|
```
|
|
|
|
Change into the hazel directory.
|
|
|
|
```
|
|
$ cd rules_haskell/hazel
|
|
```
|
|
|
|
Then execute the following command to update to the specified Stackage
|
|
snapshot, where `$PROJECT` points to the root of this repository:
|
|
(Requires `stack`)
|
|
|
|
```
|
|
$ Stackage.hs lts-12.4 "$PROJECT/hazel/packages.bzl"
|
|
```
|
|
|
|
On NixOS you may need to modify `Stackage.hs` to append the following flag to
|
|
the list of `stack` intrepreter flags: `--nix-packages zlib`.
|
|
|
|
This will take a while.
|
|
|
|
|
|
## Nixpkgs
|
|
|
|
To update the nixpkgs revision, go to the `nix/nixpkgs` directory in
|
|
this repository and run `nix-update-src-json ./nixos-*` to update to
|
|
the latest release in the current NixOS channel. To upgrade to a new
|
|
channel move `nixos-18.09` to `nixos-19.03` (adapt to the channels you
|
|
want to move from and to), change the `branch` field in
|
|
`default.src.json` and modify `nix/nixpkgs.nix` to point to the new
|
|
channel.
|
|
|
|
After upgrading the revision, the easiest solution is usually to open
|
|
a PR and see what fails on CI (running the builds locally can take
|
|
quite some time). The most common reason for failures is usually that
|
|
we have overriden a specific package with certain patches that no
|
|
longer work. In that case, a good first step is to check if these
|
|
patches are still necessary and if not try to switch to the unpatched
|
|
package from nixpkgs.
|