diff options
author | Jรถrg Thalheim <Mic92@users.noreply.github.com> | 2018-03-04 20:06:48 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-04 20:06:48 +0000 |
commit | 73774ef8f9cd496162e53d8a4b1f06b382af21c9 (patch) | |
tree | 571cf4c84ce00ee2f243913dc9a22924f8589ba2 | |
parent | 75d4499e6945aa046ad82c94261644db5b008a77 (diff) | |
parent | 1f7fdf6fef0ca3871b9563a782bd2d64ce22919e (diff) |
Merge pull request #36168 from ryantm/majorminor
a single version attribute for expressions previously using "majorVersion"
-rw-r--r-- | lib/default.nix | 2 | ||||
-rw-r--r-- | lib/versions.nix | 47 | ||||
-rw-r--r-- | pkgs/tools/networking/haproxy/default.nix | 6 |
3 files changed, 50 insertions, 5 deletions
diff --git a/lib/default.nix b/lib/default.nix index 7716fe34dba..4c36f3b0d79 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -24,7 +24,7 @@ let maintainers = import ./maintainers-list.nix; meta = callLibs ./meta.nix; sources = callLibs ./sources.nix; - + versions = callLibs ./versions.nix; # module system modules = callLibs ./modules.nix; diff --git a/lib/versions.nix b/lib/versions.nix new file mode 100644 index 00000000000..8f7f98ff5e1 --- /dev/null +++ b/lib/versions.nix @@ -0,0 +1,47 @@ +/* Version string functions. */ +{ lib }: + +let + + splitVersion = builtins.splitVersion or (lib.splitString "."); + +in + +rec { + + /* Get the major version string from a string. + + Example: + major "1.2.3" + => "1" + */ + major = v: builtins.elemAt (splitVersion v) 0; + + /* Get the minor version string from a string. + + Example: + minor "1.2.3" + => "2" + */ + minor = v: builtins.elemAt (splitVersion v) 1; + + /* Get the patch version string from a string. + + Example: + patch "1.2.3" + => "3" + */ + patch = v: builtins.elemAt (splitVersion v) 2; + + /* Get string of the first two parts (major and minor) + of a version string. + + Example: + majorMinor "1.2.3" + => "1.2" + */ + majorMinor = v: + builtins.concatStringsSep "." + (lib.take 2 (splitVersion v)); + +} diff --git a/pkgs/tools/networking/haproxy/default.nix b/pkgs/tools/networking/haproxy/default.nix index 06c595f7c6d..d31d560e868 100644 --- a/pkgs/tools/networking/haproxy/default.nix +++ b/pkgs/tools/networking/haproxy/default.nix @@ -9,13 +9,11 @@ assert usePcre -> pcre != null; stdenv.mkDerivation rec { pname = "haproxy"; - majorVersion = "1.7"; - minorVersion = "9"; - version = "${majorVersion}.${minorVersion}"; + version = "1.7.9"; name = "${pname}-${version}"; src = fetchurl { - url = "https://www.haproxy.org/download/${majorVersion}/src/${name}.tar.gz"; + url = "https://www.haproxy.org/download/${stdenv.lib.versions.majorMinor version}/src/${name}.tar.gz"; sha256 = "1072337e54fa188dc6e0cfe3ba4c2200b07082e321cbfe5a0882d85d54db068e"; }; |