Skip to content

Commit c568433

Browse files
Try #1670:
2 parents 66061e3 + 9b713f3 commit c568433

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

docs/tutorials/pkg-map.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,23 @@ nixpkgs.overlays = [
2929
];
3030
```
3131

32+
The user can map package(s) in Nixpkgs to a `pkgconfig-depends` name by
33+
overlaying the `haskell-nix.extraPkgconfigMappings` attribute:
34+
35+
```nix
36+
nixpkgs.overlays = [
37+
(self: super: {
38+
haskell-nix = super.haskell-nix // {
39+
extraPkgconfigMappings = super.haskell-nix.extraPkgconfigMappings // {
40+
# String pkgconfig-depends names are mapped to lists of Nixpkgs
41+
# package names
42+
"SDL_gpu" = [ "SDL_gpu" ];
43+
};
44+
};
45+
})
46+
];
47+
```
48+
3249
### Replace libraries of components
3350

3451
If a component is missing a dependency it can be added via modules. For example:
@@ -59,7 +76,7 @@ the Haskell.nix sources, so that it's solved for all users.
5976
— for `build-tool-depends`, `frameworks`, `extra-libraries`, etc.
6077

6178
Each name can be mapped to:
62-
1. A single package from nixkpgs.
79+
1. A single package from nixpkgs.
6380
2. `null` — eliminates the dependency
6481
3. A list of packages — sometimes needed for dependencies such as `X11`.
6582

overlays/haskell.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ final: prev: {
1111
# overlays.
1212
defaultModules = [];
1313

14-
# TODO: doc etc
14+
# Additional user-provided mappings to augment ./../lib/pkgconf-nixpkgs-map.nix
1515
extraPkgconfigMappings = {};
1616
# Nix Flake based source pins.
1717
# To update all inputs, get unstable Nix and then `nix flake update --recreate-lock-file`

0 commit comments

Comments
 (0)