Added support for overridable variants of package.
For details read comments near getVersion function, gettext is the current example. svn path=/nixpkgs/trunk/; revision=9235
This commit is contained in:
parent
045764d028
commit
245655b7a1
@ -1 +1,8 @@
|
|||||||
import ./gettext-0.14.6.nix
|
args:
|
||||||
|
rec {
|
||||||
|
recurseForDerivations = true;
|
||||||
|
default = v_0_14_6;
|
||||||
|
v_0_14_6 = (import ./0.14.6.nix) args;
|
||||||
|
v_0_15 = (import ./0.15.nix) args;
|
||||||
|
v_0_16_x = (import ./0.16.x.nix) args;
|
||||||
|
}
|
||||||
|
@ -129,6 +129,23 @@ rec {
|
|||||||
# a default value if the attribute doesn't exist.
|
# a default value if the attribute doesn't exist.
|
||||||
getConfig = attrPath: default: library.getAttr attrPath default config;
|
getConfig = attrPath: default: library.getAttr attrPath default config;
|
||||||
|
|
||||||
|
# Return user-choosen version of given package. If you define package as
|
||||||
|
#
|
||||||
|
# pkgname_alts =
|
||||||
|
# {
|
||||||
|
# v_0_1 = ();
|
||||||
|
# v_0_2 = ();
|
||||||
|
# default = v_0_1;
|
||||||
|
# recurseForDerivations = true;
|
||||||
|
# };
|
||||||
|
# pkgname = getVersion "name" pkgname_alts;
|
||||||
|
#
|
||||||
|
# user will be able to write in his configuration.nix something like
|
||||||
|
# environment = { versions = { name = v_0_2; }; }; and pkgname will be equal
|
||||||
|
# to pkgname_alts.v_0_2. Using alts.default by default.
|
||||||
|
getVersion = name: alts: builtins.getAttr
|
||||||
|
(getConfig [ "environment" "versions" name ] "default") alts;
|
||||||
|
|
||||||
# The contents of the configuration file found at $NIXPKGS_CONFIG or
|
# The contents of the configuration file found at $NIXPKGS_CONFIG or
|
||||||
# $HOME/.nixpkgs/config.nix.
|
# $HOME/.nixpkgs/config.nix.
|
||||||
config =
|
config =
|
||||||
@ -1439,7 +1456,9 @@ rec {
|
|||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
gettext = import ../development/libraries/gettext {
|
gettext = getVersion "gettext" gettext_alts;
|
||||||
|
|
||||||
|
gettext_alts = import ../development/libraries/gettext {
|
||||||
inherit fetchurl stdenv;
|
inherit fetchurl stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user