In order to set a derivation attribute (like GIT_BIN) on a haskell package (like foo), we have no choice but to use the custom option:
foo = {
custom = drv: drv.overrideAttrs (oldAttrs: { } // {
GIT_BIN = lib.getExe' pkgs.git "git";
});
};
But, there are two problems with this:
Proposal
Add a raw option, that allows setting arbitrary attributes from the given attrset. So the above would look like:
foo = {
raw = {
GIT_BIN = lib.getExe' pkgs.git "git";
};
};
Implementation
In order to set a derivation attribute (like
GIT_BIN) on a haskell package (likefoo), we have no choice but to use thecustomoption:But, there are two problems with this:
customis an overkill for thiscustomdoesn't compose: Why is `settings.x.custom` expected to be unique? #430Proposal
Add a
rawoption, that allows setting arbitrary attributes from the given attrset. So the above would look like:Implementation