mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-15 14:26:33 +01:00
45 lines
1.1 KiB
Nix
45 lines
1.1 KiB
Nix
|
/* Some functions for manipulating meta attributes, as well as the
|
||
|
name attribute. */
|
||
|
|
||
|
rec {
|
||
|
|
||
|
|
||
|
/* Add to or override the meta attributes of the given
|
||
|
derivation.
|
||
|
|
||
|
Example:
|
||
|
addMetaAttrs {description = "Bla blah";} somePkg
|
||
|
*/
|
||
|
addMetaAttrs = newAttrs: drv:
|
||
|
drv // { meta = (if drv ? meta then drv.meta else {}) // newAttrs; };
|
||
|
|
||
|
|
||
|
/* Change the symbolic name of a package for presentation purposes
|
||
|
(i.e., so that nix-env users can tell them apart).
|
||
|
*/
|
||
|
setName = name: drv: drv // {inherit name;};
|
||
|
|
||
|
|
||
|
/* Like `setName', but takes the previous name as an argument.
|
||
|
|
||
|
Example:
|
||
|
updateName (oldName: oldName + "-experimental") somePkg
|
||
|
*/
|
||
|
updateName = updater: drv: drv // {name = updater (drv.name);};
|
||
|
|
||
|
|
||
|
/* Append a suffix to the name of a package. !!! the suffix should
|
||
|
really be appended *before* the version, at least most of the
|
||
|
time.
|
||
|
*/
|
||
|
appendToName = suffix: updateName (name: "${name}-${suffix}");
|
||
|
|
||
|
|
||
|
/* Decrease the nix-env priority of the package, i.e., other
|
||
|
versions/variants of the package will be preferred.
|
||
|
*/
|
||
|
lowPrio = drv: addMetaAttrs { priority = "10"; } drv;
|
||
|
|
||
|
|
||
|
}
|