Author: eelco
Date: Mon Mar 19 18:04:47 2012
New Revision: 33267
URL: https://nixos.org/websvn/nix/?rev=33267&sc=1
Log:
* Add a utility function "versionOlder" to compare two version
strings.
Modified:
nixpkgs/trunk/pkgs/lib/strings.nix
nixpkgs/trunk/pkgs/os-specific/linux/microcode/intel.nix
Modified: nixpkgs/trunk/pkgs/lib/strings.nix
==============================================================================
--- nixpkgs/trunk/pkgs/lib/strings.nix Mon Mar 19 18:01:49 2012 (r33266)
+++ nixpkgs/trunk/pkgs/lib/strings.nix Mon Mar 19 18:04:47 2012 (r33267)
@@ -82,15 +82,18 @@
map f (stringToCharacters s)
);
+
# same as vim escape function.
# Each character contained in list is prefixed by "\"
escape = list : string :
stringAsChars (c: if lib.elem c list then "\\${c}" else c) string;
+
# still ugly slow. But more correct now
# [] for zsh
escapeShellArg = lib.escape (stringToCharacters "\\ ';$`()|<>\t*[]");
+
# replace characters by their substitutes. This function is equivalent to
# the `tr' command except that one character can be replace by multiple
# ones. e.g.,
@@ -105,10 +108,12 @@
in
stringAsChars subst s;
+
# Compares strings not requiring context equality
# Obviously, a workaround but works on all Nix versions
eqStrings = a: b: (a+(substring 0 0 b)) == ((substring 0 0 a)+b);
+
# Cut a string with a separator and produces a list of strings which were
# separated by this separator. e.g.,
# `splitString "." "foo.bar.baz"' returns ["foo" "bar" "baz"].
@@ -133,6 +138,7 @@
in
recurse 0 0;
+
# return the suffix of the second argument if the first argument match its
# prefix. e.g.,
# `removePrefix "foo." "foo.bar.baz"' returns "bar.baz".
@@ -146,6 +152,13 @@
else
s;
+
+ # Why do we need this if we have baseNameOf?
basename = s: lib.last (splitString "/" s);
+
+ # Return true iff string v1 denotes a version older than v2.
+ versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;
+
+
}
Modified: nixpkgs/trunk/pkgs/os-specific/linux/microcode/intel.nix
==============================================================================
--- nixpkgs/trunk/pkgs/os-specific/linux/microcode/intel.nix Mon Mar 19
18:01:49 2012 (r33266)
+++ nixpkgs/trunk/pkgs/os-specific/linux/microcode/intel.nix Mon Mar 19
18:04:47 2012 (r33267)
@@ -22,7 +22,7 @@
'';
meta = {
- homepage = http://www.intel.com;
+ homepage = http://www.intel.com/;
description = "Microcode for Intel processors";
};
}
\ No newline at end of file
_______________________________________________
nix-commits mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-commits