diff --git a/.gitignore b/.gitignore
index 337672a92dd..a20a02b9a67 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,4 +14,5 @@ result-*
/pkgs/applications/kde-apps-*/tmp/
/pkgs/development/libraries/kde-frameworks-*/tmp/
+/pkgs/development/libraries/qt-5/*-submodules/tmp/
/pkgs/desktops/plasma-*/tmp/
\ No newline at end of file
diff --git a/README.md b/README.md
index a2ed0877e9a..fa5a419f9f8 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
Nixpkgs is a collection of packages for [Nix](https://nixos.org/nix/) package
manager.
+[](https://travis-ci.org/NixOS/nixpkgs) [](http://www.issuestats.com/github/nixos/nixpkgs) [](http://www.issuestats.com/github/nixos/nixpkgs)
+
[NixOS](https://nixos.org/nixos/) linux distribution source code is located inside `nixos/` folder.
* [NixOS installation instructions](https://nixos.org/nixos/manual/#ch-installation)
diff --git a/doc/language-support.xml b/doc/language-support.xml
index 7d016ae6fb9..f33202d4553 100644
--- a/doc/language-support.xml
+++ b/doc/language-support.xml
@@ -624,6 +624,85 @@ sed -i '/ = data_files/d' setup.py
Go
+
+The function buildGoPackage builds
+standard Go packages.
+
+
+buildGoPackage
+
+net = buildGoPackage rec {
+ name = "go.net-${rev}";
+ goPackagePath = "code.google.com/p/go.net";
+ subPackages = [ "ipv4" "ipv6" ];
+ rev = "28ff664507e4";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "1lkz4c9pyz3yz2yz18hiycvlfhgy3jxp68bs7mv7bcfpaj729qav";
+ };
+ propagatedBuildInputs = [ goPackages.text ];
+};
+
+
+
+ is an example expression using buildGoPackage,
+the following arguments are of special significance to the function:
+
+
+
+
+
+ goPackagePath specifies the package's canonical Go import path.
+
+
+
+
+
+ subPackages limits the builder from building child packages that
+ have not been listed. If subPackages is not specified, all child
+ packages will be built.
+
+
+ In this example only code.google.com/p/go.net/ipv4 and
+ code.google.com/p/go.net/ipv4 will be built.
+
+
+
+
+
+ propagatedBuildInputs is where the dependencies of a Go library are
+ listed. Only libraries should list propagatedBuildInputs . If a standalone
+ program is being build instead, use buildInputs . If a library's tests require
+ additional dependencies that are not propagated, they should be listed in buildInputs .
+
+
+
+
+
+
+
+
+Reusable Go libraries may be found in the goPackages set. You can test
+build a Go package as follows:
+
+
+$ nix-build -A goPackages.net
+
+
+
+
+
+You may use Go packages installed into the active Nix profiles by adding
+the following to your ~/.bashrc:
+
+
+for p in $NIX_PROFILES; do
+ GOPATH="$p/share/go:$GOPATH"
+done
+
+
+
To extract dependency information from a Go package in automated way use go2nix.
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index c63536abd69..2d18d592e89 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -28,6 +28,7 @@
bbenoist = "Baptist BENOIST ";
bdimcheff = "Brandon Dimcheff ";
bennofs = "Benno Fünfstück ";
+ benley = "Benjamin Staffin ";
berdario = "Dario Bertini ";
bergey = "Daniel Bergey ";
bjg = "Brian Gough ";
diff --git a/nixos/doc/manual/release-notes/release-notes.xml b/nixos/doc/manual/release-notes/release-notes.xml
index 231a3b4c2e2..a988a5b0199 100644
--- a/nixos/doc/manual/release-notes/release-notes.xml
+++ b/nixos/doc/manual/release-notes/release-notes.xml
@@ -7,9 +7,11 @@
Release Notes
-This section lists the release notes for each stable version of NixOS.
+This section lists the release notes for each stable version of NixOS
+and current unstable revision.
+
diff --git a/nixos/doc/manual/release-notes/rl-unstable.xml b/nixos/doc/manual/release-notes/rl-unstable.xml
new file mode 100644
index 00000000000..34ffe1d6d32
--- /dev/null
+++ b/nixos/doc/manual/release-notes/rl-unstable.xml
@@ -0,0 +1,41 @@
+
+
+Unstable revision
+
+In addition to numerous new and upgraded packages, this release has the following highlights:
+
+
+
+
+Following new services were added since the last release:
+
+
+
+
+When upgrading from a previous release, please be aware of the
+following incompatible changes:
+
+
+
+Steam now doesn't need root rights to work. Instead of using
+*-steam-chrootenv , you should now just run steam .
+steamChrootEnv package was renamed to steam ,
+and old steam package -- to steamOriginal .
+
+
+CMPlayer has been renamed to bomi upstream. Package cmplayer
+was accordingly renamed to bomi
+
+
+
+
+
+
diff --git a/nixos/gui/README b/nixos/gui/README
deleted file mode 100644
index c038314a0dc..00000000000
--- a/nixos/gui/README
+++ /dev/null
@@ -1,16 +0,0 @@
-This file should become a nix expression. (see modules/installer/tools/tools.nix)
-
-you need to:
-- download the latest jQuery from and copy it to chrome/content:
- http://code.jquery.com/jquery-1.5.2.js
-
-- install 'xulrunner' with nix:
- nix-env -Ai nixpkgs_sys.firefox40Pkgs.xulrunner
-
-- make sure nixos-option in your path
-
-- have /etc/nixos/nixpkgs
-- have /etc/nixos/nixos
-
-run it:
-- xulrunner /etc/nixos/nixos/gui/application.ini -jsconsole
diff --git a/nixos/gui/application.ini b/nixos/gui/application.ini
deleted file mode 100644
index d2494a1a5cd..00000000000
--- a/nixos/gui/application.ini
+++ /dev/null
@@ -1,36 +0,0 @@
-[App]
-;
-; This field specifies your organization's name. This field is recommended,
-; but optional.
-Vendor=NixOS
-;
-; This field specifies your application's name. This field is required.
-Name=NixOS-gui
-;
-; This field specifies your application's version. This field is optional.
-Version=0.1
-;
-; This field specifies your application's build ID (timestamp). This field is
-; required.
-BuildID=20110424
-;
-; This field specifies a compact copyright notice for your application. This
-; field is optional.
-;Copyright=
-
-;
-; This ID is just an example. Every XUL app ought to have it's own unique ID.
-; You can use the microsoft "guidgen" or "uuidgen" tools, or go on
-; irc.mozilla.org and /msg botbot uuid. This field is optional.
-;ID=
-
-[Gecko]
-;
-; This field is required. It specifies the minimum Gecko version that this
-; application requires.
-MinVersion=1.9a5
-;
-; This field is optional. It specifies the maximum Gecko version that this
-; application requires. It should be specified if your application uses
-; unfrozen interfaces.
-MaxVersion=2.*
diff --git a/nixos/gui/chrome.manifest b/nixos/gui/chrome.manifest
deleted file mode 100644
index 865d6a88fb4..00000000000
--- a/nixos/gui/chrome.manifest
+++ /dev/null
@@ -1 +0,0 @@
-manifest chrome/chrome.manifest
diff --git a/nixos/gui/chrome/chrome.manifest b/nixos/gui/chrome/chrome.manifest
deleted file mode 100644
index 775445ee17b..00000000000
--- a/nixos/gui/chrome/chrome.manifest
+++ /dev/null
@@ -1 +0,0 @@
-content nixos-gui content/
diff --git a/nixos/gui/chrome/content/io.js b/nixos/gui/chrome/content/io.js
deleted file mode 100644
index 8d9c8c17365..00000000000
--- a/nixos/gui/chrome/content/io.js
+++ /dev/null
@@ -1,137 +0,0 @@
-
-function inspect(obj, maxLevels, level)
-{
- var str = '', type, msg;
-
- // Start Input Validations
- // Don't touch, we start iterating at level zero
- if(level == null) level = 0;
-
- // At least you want to show the first level
- if(maxLevels == null) maxLevels = 1;
- if(maxLevels < 1)
- return 'Error: Levels number must be > 0 ';
-
- // We start with a non null object
- if(obj == null)
- return 'Error: Object NULL ';
- // End Input Validations
-
- // Each Iteration must be indented
- str += '';
-
- // Start iterations for all objects in obj
- for(property in obj)
- {
- try
- {
- // Show "property" and "type property"
- type = typeof(obj[property]);
- str += '(' + type + ') ' + property +
- ( (obj[property]==null)?(': null '):('')) + ' ';
-
- // We keep iterating if this property is an Object, non null
- // and we are inside the required number of levels
- if((type == 'object') && (obj[property] != null) && (level+1 < maxLevels))
- str += inspect(obj[property], maxLevels, level+1);
- }
- catch(err)
- {
- // Is there some properties in obj we can't access? Print it red.
- if(typeof(err) == 'string') msg = err;
- else if(err.message) msg = err.message;
- else if(err.description) msg = err.description;
- else msg = 'Unknown';
-
- str += '(Error) ' + property + ': ' + msg +' ';
- }
- }
-
- // Close indent
- str += ' ';
-
- return str;
-}
-
-// Run xulrunner application.ini -jsconsole -console, to see messages.
-function log(str)
-{
- Components.classes['@mozilla.org/consoleservice;1']
- .getService(Components.interfaces.nsIConsoleService)
- .logStringMessage(str);
-}
-
-function makeTempFile(prefix)
-{
- var file = Components.classes["@mozilla.org/file/directory_service;1"]
- .getService(Components.interfaces.nsIProperties)
- .get("TmpD", Components.interfaces.nsIFile);
- file.append(prefix || "xulrunner");
- file.createUnique(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0664);
- return file;
-}
-
-function writeToFile(file, data)
-{
- // file is nsIFile, data is a string
- var foStream = Components.classes["@mozilla.org/network/file-output-stream;1"]
- .createInstance(Components.interfaces.nsIFileOutputStream);
-
- // use 0x02 | 0x10 to open file for appending.
- foStream.init(file, 0x02 | 0x08 | 0x20, 0664, 0); // write, create, truncate
- foStream.write(data, data.length);
- foStream.close();
-}
-
-function readFromFile(file)
-{
- // |file| is nsIFile
- var data = "";
- var fstream = Components.classes["@mozilla.org/network/file-input-stream;1"]
- .createInstance(Components.interfaces.nsIFileInputStream);
- var sstream = Components.classes["@mozilla.org/scriptableinputstream;1"]
- .createInstance(Components.interfaces.nsIScriptableInputStream);
- fstream.init(file, -1, 0, 0);
- sstream.init(fstream);
-
- var str = sstream.read(4096);
- while (str.length > 0) {
- data += str;
- str = sstream.read(4096);
- }
-
- sstream.close();
- fstream.close();
-
- return data;
-}
-
-function runProgram(commandLine)
-{
- // create an nsILocalFile for the executable
- var file = Components.classes["@mozilla.org/file/local;1"]
- .createInstance(Components.interfaces.nsILocalFile);
- file.initWithPath("/bin/sh");
-
- // create an nsIProcess
- var process = Components.classes["@mozilla.org/process/util;1"]
- .createInstance(Components.interfaces.nsIProcess);
- process.init(file);
-
- // Run the process.
- // If first param is true, calling thread will be blocked until
- // called process terminates.
- // Second and third params are used to pass command-line arguments
- // to the process.
- var args = ["-c", commandLine];
- process.run(true, args, args.length);
-}
-
-// only for testing...
-function testIO()
-{
- var f = makeTempFile();
- writeToFile(f, "essai\ntest");
- alert(readFromFile(f));
- runProgram("zenity --info");
-}
diff --git a/nixos/gui/chrome/content/main.js b/nixos/gui/chrome/content/main.js
deleted file mode 100644
index ecfc5a8c5c9..00000000000
--- a/nixos/gui/chrome/content/main.js
+++ /dev/null
@@ -1,70 +0,0 @@
-// global variables.
-var gNixOS;
-var gOptionView;
-
-/*
-var gProgressBar;
-function setProgress(current, max)
-{
- if (gProgressBar) {
- gProgressBar.value = 100 * current / max;
- log("progress: " + gProgressBar.value + "%");
- }
- else
- log("unknow progress bar");
-}
-*/
-
-function updateTextbox(id, value)
-{
- // setting the height cause an overflow which resize the textbox to its
- // content due to its onoverflow attribute.
- $(id).attr("value", value).attr("height", 1);
-};
-
-function updatePanel(options)
-{
- log("updatePanel: " + options.length);
- if (options.length == 0)
- return;
- // FIXME: ignore the rest of the selection for now.
- var o = options[0];
- $("#name").attr("label", o.path);
-
- if (o.typename != null)
- $("#typename").attr("label", o.typename);
- else
- $("#typename").attr("label", "");
-
- $("#desc").text(o.description);
-
- if (o.value != null)
- updateTextbox("#val", o.value);
- else
- updateTextbox("#val", "");
-
- if (o.defaultValue != null)
- updateTextbox("#def", o.defaultValue);
- else
- updateTextbox("#def", "");
-
- if (o.example != null)
- updateTextbox("#exp", o.example);
- else
- updateTextbox("#exp", "");
-
- updateTextbox("#decls", o.declarations.join("\n"));
- updateTextbox("#defs", o.definitions.join("\n"));
-}
-
-
-function onload()
-{
- var optionTree = document.getElementById("option-tree");
- // gProgressBar = document.getElementById("progress-bar");
- // setProgress(0, 1);
-
- gNixOS = new NixOS();
- gOptionView = new OptionView(gNixOS.option, updatePanel);
- optionTree.view = gOptionView;
-}
diff --git a/nixos/gui/chrome/content/myviewer.xul b/nixos/gui/chrome/content/myviewer.xul
deleted file mode 100644
index 2aeb9391d07..00000000000
--- a/nixos/gui/chrome/content/myviewer.xul
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/nixos/gui/chrome/content/nixos.js b/nixos/gui/chrome/content/nixos.js
deleted file mode 100644
index 63a3c16a573..00000000000
--- a/nixos/gui/chrome/content/nixos.js
+++ /dev/null
@@ -1,255 +0,0 @@
-
-function NixOS () {
- var env = Components.classes["@mozilla.org/process/environment;1"].
- getService(Components.interfaces.nsIEnvironment);
-
- if (env.exists("NIXOS"))
- this.nixos = env.get("NIXOS");
- if (env.exists("NIXOS_CONFIG"))
- this.config = env.get("NIXOS_CONFIG");
- if (env.exists("NIXPKGS"))
- this.nixpkgs = env.get("NIXPKGS");
- if (env.exists("mountPoint"))
- this.root = env.get("mountPoint");
- if (env.exists("NIXOS_OPTION"))
- this.optionBin = env.get("NIXOS_OPTION");
- this.option = new Option("options", this, null);
-};
-
-NixOS.prototype = {
- root: "",
- nixos: "/etc/nixos/nixos",
- nixpkgs: "/etc/nixos/nixpkgs",
- config: "/etc/nixos/configuration.nix",
- instantiateBin: "/run/current-system/sw/bin/nix-instantiate",
- optionBin: "/run/current-system/sw/bin/nixos-option",
- tmpFile: "nixos-gui",
- option: null
-};
-
-function Option (name, context, parent) {
- this.name = name;
- this.context_ = context;
- if (parent == null)
- this.path = "";
- else if (parent.path == "")
- this.path = name;
- else
- this.path = parent.path + "." + name;
-};
-
-Option.prototype = {
- load: function () {
- var env = "";
- env += "'NIXOS=" + this.context_.root + this.context_.nixos + "' ";
- env += "'NIXOS_PKGS=" + this.context_.root + this.context_.nixpkgs + "' ";
- env += "'NIXOS_CONFIG=" + this.context_.config + "' ";
- var out = makeTempFile(this.context_.tmpFile);
- var prog = this.context_.optionBin + " 2>&1 >" + out.path + " ";
- var args = " --xml " + this.path;
-
- runProgram(/*env + */ prog + args);
- var xml = readFromFile(out);
- out.remove(false);
-
- // jQuery does a stack overflow when converting a huge XML to a DOM.
- var dom = DOMParser().parseFromString(xml, "text/xml");
- var xmlAttrs = $("expr > attrs > attr", dom);
-
- this.isOption = xmlAttrs.first().attr("name") == "_isOption";
-
- if (!this.isOption)
- this.loadSubOptions(xmlAttrs);
- else
- this.loadOption(xmlAttrs);
- this.isLoaded = true;
- },
-
- loadSubOptions: function (xmlAttrs) {
- var cur = this;
- var attrs = new Array();
-
- xmlAttrs.each(
- function (index) {
- var name = $(this).attr("name");
- var attr = new Option(name, cur.context_, cur);
- attrs.push(attr);
- }
- );
-
- this.subOptions = attrs;
- },
-
- optionAttributeMap: {
- _isOption: function (cur, v) { },
- value: function (cur, v) { cur.value = xml2nix($(v).children().first()); },
- default: function (cur, v) { cur.defaultValue = xml2nix($(v).children().first()); },
- example: function (cur, v) { cur.example = xml2nix($(v).children().first()); },
- description: function (cur, v) { cur.description = this.string(v); },
- typename: function (cur, v) { cur.typename = this.string(v); },
- options: function (cur, v) { cur.loadSubOptions($("attrs", v).children()); },
- declarations: function (cur, v) { cur.declarations = this.pathList(v); },
- definitions: function (cur, v) { cur.definitions = this.pathList(v); },
-
- string: function (v) {
- return $(v).children("string").first().attr("value");
- },
-
- pathList: function (v) {
- var list = [];
- $(v).children("list").first().children().each(
- function (idx) {
- list.push($(this).attr("value"));
- }
- );
- return list;
- }
- },
-
-
- loadOption: function (attrs) {
- var cur = this;
-
- attrs.each(
- function (index) {
- var name = $(this).attr("name");
- log("loadOption: " + name);
- cur.optionAttributeMap[name](cur, this);
- }
- );
- },
-
- // keep the context under which this option has been used.
- context_: null,
- // name of the option.
- name: "",
- // result of nixos-option.
- value: null,
- typename: null,
- defaultValue: null,
- example: null,
- description: "",
- declarations: [],
- definitions: [],
- // path to reach this option
- path: "",
-
- // list of options accessible from here.
- isLoaded: false,
- isOption: false,
- subOptions: []
-};
-
-var xml2nix_pptable = {
- attrs: function (node, depth, pp) {
- var children = node.children().not(
- function () {
- var name = $(this).attr("name");
- return name.charAt(0) == "_";
- }
- );
- var c = 0;
- var out = "";
- out += "{";
- depth += 1;
- children.each(
- function (idx) {
- c += 1;
- out += pp.indent(depth);
- out += pp.dispatch($(this), depth, pp);
- }
- );
- depth -= 1;
- if (c > 0)
- out += this.indent(depth);
- else
- out += " ";
- out += "}";
- return out;
- },
- list: function (node, depth, pp) {
- var children = node.children();
- var c = 0;
- var out = "";
- out += "[";
- depth += 1;
- children.each(
- function (idx) {
- c += 1;
- out += pp.indent(depth);
- out += pp.dispatch($(this), depth, pp);
- }
- );
- depth -= 1;
- if (c > 0)
- out += this.indent(depth);
- else
- out += " ";
- out += "]";
- return out;
- },
- attr: function (node, depth, pp) {
- var name = node.attr("name");
- var out = "";
- var val = "";
- out += name + " = ";
- depth += 1;
- val = pp.dispatch(node.children().first(), depth, pp);
- out += val;
- depth -= 1;
- out += ";";
- return out;
- },
- string: function (node, depth, pp) {
- return "\"" + node.attr("value") + "\"";
- },
- path: function (node, depth, pp) {
- return node.attr("value");
- },
- bool: function (node, depth, pp) {
- return node.attr("value");
- },
- "int": function (node, depth, pp) {
- return node.attr("value");
- },
- null: function (node, depth, pp) {
- return "null";
- },
- derivation: function (node, depth, pp) {
- return "";
- },
- function: function (node, depth, pp) {
- return "";
- },
- unevaluated: function (node, depth, pp) {
- return "";
- },
-
- dispatch: function (node, depth, pp) {
- for (var key in pp)
- {
- if(node.is(key))
- {
- // log(this.indent(depth) + "dispatch: " + key);
- var out = pp[key](node, depth, pp);
- // log(this.indent(depth) + "dispatch: => " + out);
- return out;
- }
- }
- return "";
- },
- indent: function (depth) {
- var ret = "\n";
- while (depth--)
- ret += " ";
- return ret;
- }
-};
-
-function xml2nix(node) {
- var depth = 0;
- var pp = xml2nix_pptable;
- var out = pp.dispatch(node, depth, pp);
- // log("pretty:\n" + out);
- return out;
-}
diff --git a/nixos/gui/chrome/content/optionView.js b/nixos/gui/chrome/content/optionView.js
deleted file mode 100644
index 0d093740fe2..00000000000
--- a/nixos/gui/chrome/content/optionView.js
+++ /dev/null
@@ -1,242 +0,0 @@
-// extend NixOS options to handle the Tree View. Should be better to keep a
-// separation of concern here.
-
-Option.prototype.tv_opened = false;
-Option.prototype.tv_size = 1;
-
-Option.prototype.tv_open = function () {
- this.tv_opened = true;
- this.tv_size = 1;
-
- // load an option if it is not loaded yet, and initialize them to be
- // read by the Option view.
- if (!this.isLoaded)
- this.load();
-
- // If this is not an option, then add it's lits of sub-options size.
- if (!this.isOption)
- {
- for (var i = 0; i < this.subOptions.length; i++)
- this.tv_size += this.subOptions[i].tv_size;
- }
-};
-
-Option.prototype.tv_close = function () {
- this.tv_opened = false;
- this.tv_size = 1;
-};
-
-
-
-
-function OptionView (root, selCallback) {
- root.tv_open();
- this.rootOption = root;
- this.selCallback = selCallback;
-}
-
-OptionView.prototype = {
- rootOption: null,
- selCallback: null,
-
- // This function returns the path to option which is at the specified row.
- reach_cache: null,
- reachRow: function (row) {
- var o = this.rootOption; // Current option.
- var r = 0; // Number of rows traversed.
- var c = 0; // Child index.
- var path = [{ row: r, opt: o }]; // new Array();
- // hypothesis: this.rootOption.tv_size is always open and bigger than
-
- // Use the previous returned value to avoid making to many checks and to
- // optimize for frequent access of near rows.
- if (this.reach_cache != null)
- {
- for (var i = this.reach_cache.length - 2; i >= 0; i--) {
- var p = this.reach_cache[i];
- // If we will have to go the same path.
- if (row >= p.row && row < p.row + p.opt.tv_size)
- {
- path.unshift(p);
- r = path[0].row;
- o = path[0].opt;
- }
- else
- break;
- };
- }
-
- while (r != row)
- {
- // Go deeper in the child which contains the requested row. The
- // tv_size contains the size of the tree starting from each option.
- c = 0;
- while (c < o.subOptions.length && r + o.subOptions[c].tv_size < row)
- {
- r += o.subOptions[c].tv_size;
- c += 1;
- }
- if (c < o.subOptions.length && r + o.subOptions[c].tv_size >= row)
- {
- // Count the current option as a row.
- o = o.subOptions[c];
- r += 1;
- }
- else
- alert("WTF: " + o.name + " ask: " + row + " children: " + o.subOptions + " c: " + c);
- path.unshift({ row: r, opt: o });
- }
-
- this.reach_cache = path;
- return path;
- },
-
- // needs to return true if there is a /row/ at the same level /after/ a
- // given row.
- hasNextSibling: function(row, after) {
- log("sibling " + row + " after " + after);
- var path = reachRow(row);
- if (path.length > 1)
- {
- var last = path[1].row + path[1].opt.tv_size;
- // Has a next sibling if the row is not over the size of the
- // parent and if the current one is not the last child.
- return after + 1 < last && path[0].row + path[0].opt.tv_size < last;
- }
- else
- // The top-level option has no sibling.
- return false;
- },
-
- // Does the current row contain any sub-options?
- isContainer: function(row) {
- return !this.reachRow(row)[0].opt.isOption;
- },
- isContainerEmpty: function(row) {
- return this.reachRow(row)[0].opt.subOptions.length == 0;
- },
- isContainerOpen: function(row) {
- return this.reachRow(row)[0].opt.tv_opened;
- },
-
- // Open or close an option.
- toggleOpenState: function (row) {
- var path = this.reachRow(row);
- var delta = -path[0].opt.tv_size;
- if (path[0].opt.tv_opened)
- path[0].opt.tv_close();
- else
- path[0].opt.tv_open();
- delta += path[0].opt.tv_size;
-
- // Parents are alreay opened, but we need to update the tv_size
- // counters. Thus we have to invalidate the reach cache.
- this.reach_cache = null;
- for (var i = 1; i < path.length; i++)
- path[i].opt.tv_open();
-
- this.tree.rowCountChanged(row + 1, delta);
- },
-
- // Return the identation level of the option at the line /row/. The
- // top-level level is 0.
- getLevel: function(row) {
- return this.reachRow(row).length - 1;
- },
-
- // Obtain the index of a parent row. If there is no parent row,
- // returns -1.
- getParentIndex: function(row) {
- var path = this.reachRow(row);
- if (path.length > 1)
- return path[1].row;
- else
- return -1;
- },
-
-
- // Return the content of each row base on the column name.
- getCellText: function(row, column) {
- if (column.id == "opt-name")
- return this.reachRow(row)[0].opt.name;
- if (column.id == "dbg-size")
- return this.reachRow(row)[0].opt.tv_size;
- return "";
- },
-
- // We have no column with images.
- getCellValue: function(row, column) { },
-
-
- isSelectable: function(row, column) { return true; },
-
- // Get the selection out of the tree and give options to the call back
- // function.
- selectionChanged: function() {
- if (this.selCallback == null)
- return;
- var opts = [];
- var start = new Object();
- var end = new Object();
- var numRanges = this.tree.view.selection.getRangeCount();
-
- for (var t = 0; t < numRanges; t++) {
- this.tree.view.selection.getRangeAt(t,start,end);
- for (var v = start.value; v <= end.value; v++) {
- var opt = this.reachRow(v)[0].opt;
- if (!opt.isLoaded)
- opt.load();
- if (opt.isOption)
- opts.push(opt);
-
- // FIXME: no need to make things slowing down, because our current
- // callback do not handle multiple option display.
- if (!opts.empty)
- break;
- }
- // FIXME: no need to make things slowing down, because our current
- // callback do not handle multiple option display.
- if (!opts.empty)
- break;
- }
-
- if (!opts.empty)
- this.selCallback(opts);
- },
-
- set rowCount(c) { throw "rowCount is a readonly property"; },
- get rowCount() { return this.rootOption.tv_size; },
-
- // refuse drag-n-drop of options.
- canDrop: function (index, orientation, dataTransfer) { return false; },
- drop: function (index, orientation, dataTransfer) { },
-
- // ?
- getCellProperties: function(row, column, prop) { },
- getColumnProperties: function(column, prop) { },
- getRowProperties: function(row, prop) { },
- getImageSrc: function(row, column) { },
-
- // No progress columns are used.
- getProgressMode: function(row, column) { },
-
- // Do not add options yet.
- isEditable: function(row, column) { return false; },
- setCellValue: function(row, column, value) { },
- setCellText: function(row, column, value) { },
-
- // ...
- isSeparator: function(index) { return false; },
- isSorted: function() { return false; },
- performAction: function(action) { },
- performActionOnCell: function(action, row, column) { },
- performActionOnRow: function(action, row) { }, // ??
-
- // ??
- cycleCell: function (row, col) { },
- cycleHeader: function(col) { },
-
- selection: null,
- tree: null,
- setTree: function(tree) { this.tree = tree; }
-};
diff --git a/nixos/gui/components/clh.js b/nixos/gui/components/clh.js
deleted file mode 100644
index fd85422d6c8..00000000000
--- a/nixos/gui/components/clh.js
+++ /dev/null
@@ -1,154 +0,0 @@
-const nsIAppShellService = Components.interfaces.nsIAppShellService;
-const nsISupports = Components.interfaces.nsISupports;
-const nsICategoryManager = Components.interfaces.nsICategoryManager;
-const nsIComponentRegistrar = Components.interfaces.nsIComponentRegistrar;
-const nsICommandLine = Components.interfaces.nsICommandLine;
-const nsICommandLineHandler = Components.interfaces.nsICommandLineHandler;
-const nsIFactory = Components.interfaces.nsIFactory;
-const nsIModule = Components.interfaces.nsIModule;
-const nsIWindowWatcher = Components.interfaces.nsIWindowWatcher;
-
-// CHANGEME: to the chrome URI of your extension or application
-const CHROME_URI = "chrome://nixos-gui/content/myviewer.xul";
-
-// CHANGEME: change the contract id, CID, and category to be unique
-// to your application.
-const clh_contractID = "@mozilla.org/commandlinehandler/general-startup;1?type=myapp";
-
-// use uuidgen to generate a unique ID
-const clh_CID = Components.ID("{2991c315-b871-42cd-b33f-bfee4fcbf682}");
-
-// category names are sorted alphabetically. Typical command-line handlers use a
-// category that begins with the letter "m".
-const clh_category = "m-myapp";
-
-/**
- * Utility functions
- */
-
-/**
- * Opens a chrome window.
- * @param aChromeURISpec a string specifying the URI of the window to open.
- * @param aArgument an argument to pass to the window (may be null)
- */
-function openWindow(aChromeURISpec, aArgument)
-{
- var ww = Components.classes["@mozilla.org/embedcomp/window-watcher;1"].
- getService(Components.interfaces.nsIWindowWatcher);
- ww.openWindow(null, aChromeURISpec, "_blank",
- "chrome,menubar,toolbar,status,resizable,dialog=no",
- aArgument);
-}
-
-/**
- * The XPCOM component that implements nsICommandLineHandler.
- * It also implements nsIFactory to serve as its own singleton factory.
- */
-const myAppHandler = {
- /* nsISupports */
- QueryInterface : function clh_QI(iid)
- {
- if (iid.equals(nsICommandLineHandler) ||
- iid.equals(nsIFactory) ||
- iid.equals(nsISupports))
- return this;
-
- throw Components.results.NS_ERROR_NO_INTERFACE;
- },
-
- /* nsICommandLineHandler */
-
- handle : function clh_handle(cmdLine)
- {
- openWindow(CHROME_URI, cmdLine);
- cmdLine.preventDefault = true;
- },
-
- // CHANGEME: change the help info as appropriate, but
- // follow the guidelines in nsICommandLineHandler.idl
- // specifically, flag descriptions should start at
- // character 24, and lines should be wrapped at
- // 72 characters with embedded newlines,
- // and finally, the string should end with a newline
- helpInfo : " Open the file in the viewer\n",
-
- /* nsIFactory */
-
- createInstance : function clh_CI(outer, iid)
- {
- if (outer != null)
- throw Components.results.NS_ERROR_NO_AGGREGATION;
-
- return this.QueryInterface(iid);
- },
-
- lockFactory : function clh_lock(lock)
- {
- /* no-op */
- }
-};
-
-/**
- * The XPCOM glue that implements nsIModule
- */
-const myAppHandlerModule = {
- /* nsISupports */
- QueryInterface : function mod_QI(iid)
- {
- if (iid.equals(nsIModule) ||
- iid.equals(nsISupports))
- return this;
-
- throw Components.results.NS_ERROR_NO_INTERFACE;
- },
-
- /* nsIModule */
- getClassObject : function mod_gch(compMgr, cid, iid)
- {
- if (cid.equals(clh_CID))
- return myAppHandler.QueryInterface(iid);
-
- throw Components.results.NS_ERROR_NOT_REGISTERED;
- },
-
- registerSelf : function mod_regself(compMgr, fileSpec, location, type)
- {
- compMgr.QueryInterface(nsIComponentRegistrar);
-
- compMgr.registerFactoryLocation(clh_CID,
- "myAppHandler",
- clh_contractID,
- fileSpec,
- location,
- type);
-
- var catMan = Components.classes["@mozilla.org/categorymanager;1"].
- getService(nsICategoryManager);
- catMan.addCategoryEntry("command-line-handler",
- clh_category,
- clh_contractID, true, true);
- },
-
- unregisterSelf : function mod_unreg(compMgr, location, type)
- {
- compMgr.QueryInterface(nsIComponentRegistrar);
- compMgr.unregisterFactoryLocation(clh_CID, location);
-
- var catMan = Components.classes["@mozilla.org/categorymanager;1"].
- getService(nsICategoryManager);
- catMan.deleteCategoryEntry("command-line-handler", clh_category);
- },
-
- canUnload : function (compMgr)
- {
- return true;
- }
-};
-
-/* The NSGetModule function is the magic entry point that XPCOM uses to find what XPCOM objects
- * this component provides
- */
-function NSGetModule(comMgr, fileSpec)
-{
- return myAppHandlerModule;
-}
diff --git a/nixos/gui/defaults/preferences/myviewer-prefs.js b/nixos/gui/defaults/preferences/myviewer-prefs.js
deleted file mode 100644
index e10fa18c0d8..00000000000
--- a/nixos/gui/defaults/preferences/myviewer-prefs.js
+++ /dev/null
@@ -1,11 +0,0 @@
-pref("toolkit.defaultChromeURI", "chrome://nixos-gui/content/myviewer.xul");
-pref("general.useragent.extra.myviewer", "NixOS gui/0.0");
-
-/* debugging prefs */
-pref("browser.dom.window.dump.enabled", true); // enable output to stderr
-pref("javascript.options.showInConsole", true); // show javascript errors from chrome: files in the jsconsole
-pref("javascript.options.strict", true); // show javascript strict warnings in the jsconsole
-
-/* disable xul cache so that modifications to chrome: files apply without restarting xulrunner */
-pref("nglayout.debug.disable_xul_cache", true);
-pref("nglayout.debug.disable_xul_fastload", true);
diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix
index 37a9f4d0d31..17aa2942595 100644
--- a/nixos/modules/hardware/all-firmware.nix
+++ b/nixos/modules/hardware/all-firmware.nix
@@ -12,8 +12,7 @@ with lib;
default = false;
type = types.bool;
description = ''
- Turn on this option if you want to enable all the firmware shipped with Debian/Ubuntu
- and iwlwifi.
+ Turn on this option if you want to enable all the firmware shipped in linux-firmware.
'';
};
@@ -26,7 +25,6 @@ with lib;
hardware.firmware = [
"${pkgs.firmwareLinuxNonfree}/lib/firmware"
"${pkgs.iwlegacy}/lib/firmware"
- "${pkgs.iwlwifi}/lib/firmware"
];
};
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index 84de7800c2a..39db7d9b8f7 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -58,8 +58,8 @@ let
efiImg = pkgs.runCommand "efi-image_eltorito" { buildInputs = [ pkgs.mtools ]; }
''
- #Let's hope 10M is enough
- dd bs=2048 count=5120 if=/dev/zero of="$out"
+ #Let's hope 15M is enough
+ dd bs=2048 count=7680 if=/dev/zero of="$out"
${pkgs.dosfstools}/sbin/mkfs.vfat "$out"
mcopy -svi "$out" ${efiDir}/* ::
mmd -i "$out" boot
diff --git a/nixos/modules/installer/tools/tools.nix b/nixos/modules/installer/tools/tools.nix
index 2c796250a98..63d2077fbe1 100644
--- a/nixos/modules/installer/tools/tools.nix
+++ b/nixos/modules/installer/tools/tools.nix
@@ -53,46 +53,9 @@ let
inherit (config.system) nixosVersion nixosCodeName;
};
- /*
- nixos-gui = pkgs.xulrunnerWrapper {
- launcher = "nixos-gui";
- application = pkgs.stdenv.mkDerivation {
- name = "nixos-gui";
- buildCommand = ''
- cp -r "$gui" "$out"
-
- # Do not force the copy if the file exists in the sources (this
- # happens for developpers)
- test -e "$out/chrome/content/jquery-1.5.2.js" ||
- cp -f "$jquery" "$out/chrome/content/jquery-1.5.2.js"
- '';
- gui = lib.cleanSource "${modulesPath}/../gui";
- jquery = pkgs.fetchurl {
- url = http://code.jquery.com/jquery-1.5.2.min.js;
- sha256 = "8f0a19ee8c606b35a10904951e0a27da1896eafe33c6e88cb7bcbe455f05a24a";
- };
- };
- };
- */
-
in
{
- /*
- options = {
-
- installer.enableGraphicalTools = mkOption {
- default = false;
- type = types.bool;
- example = true;
- description = ''
- Enable the installation of graphical tools.
- '';
- };
-
- };
- */
-
config = {
environment.systemPackages =
[ nixos-build-vms
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 7415af8ab6a..f3cda7b9541 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -177,6 +177,8 @@
cadvisor = 167;
nylon = 168;
apache-kafka = 169;
+ panamax = 170;
+
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
nixbld = 30000; # start of range of uids
@@ -315,6 +317,7 @@
kubernetes = 162;
gitlab = 165;
nylon = 166;
+ panamax = 170;
# When adding a gid, make sure it doesn't match an existing
# uid. Users and groups with the same name should have equal
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 023a053cf9b..0fad59d5571 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -55,6 +55,7 @@
./programs/atop.nix
./programs/bash/bash.nix
./programs/blcr.nix
+ ./programs/cdemu.nix
./programs/command-not-found/command-not-found.nix
./programs/dconf.nix
./programs/environment.nix
@@ -104,6 +105,7 @@
./services/backup/tarsnap.nix
./services/cluster/fleet.nix
./services/cluster/kubernetes.nix
+ ./services/cluster/panamax.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix
./services/continuous-integration/jenkins/default.nix
@@ -172,6 +174,7 @@
./services/mail/spamassassin.nix
./services/misc/apache-kafka.nix
#./services/misc/autofs.nix
+ ./services/misc/canto-daemon.nix
./services/misc/cpuminer-cryptonight.nix
./services/misc/cgminer.nix
./services/misc/dictd.nix
@@ -286,6 +289,7 @@
./services/networking/searx.nix
./services/networking/seeks.nix
./services/networking/spiped.nix
+ ./services/networking/sslh.nix
./services/networking/ssh/lshd.nix
./services/networking/ssh/sshd.nix
./services/networking/strongswan.nix
diff --git a/nixos/modules/programs/cdemu.nix b/nixos/modules/programs/cdemu.nix
new file mode 100644
index 00000000000..d1b1915eea9
--- /dev/null
+++ b/nixos/modules/programs/cdemu.nix
@@ -0,0 +1,49 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let cfg = config.programs.cdemu;
+in {
+
+ options = {
+ programs.cdemu = {
+ enable = mkOption {
+ default = false;
+ description = "Whether to enable cdemu for users of appropriate group (default cdrom)";
+ };
+ group = mkOption {
+ default = "cdrom";
+ description = "Required group for users of cdemu";
+ };
+ gui = mkOption {
+ default = true;
+ description = "Whether to install cdemu GUI (gCDEmu)";
+ };
+ image-analyzer = mkOption {
+ default = true;
+ description = "Whether to install image analyzer";
+ };
+ };
+ };
+
+ config = mkIf cfg.enable {
+
+ boot = {
+ extraModulePackages = [ pkgs.linuxPackages.vhba ];
+ kernelModules = [ "vhba" ];
+ };
+
+ services = {
+ udev.extraRules = ''
+ KERNEL=="vhba_ctl", MODE="0660", OWNER="root", GROUP="${cfg.group}"
+ '';
+ dbus.packages = [ pkgs.cdemu-daemon ];
+ };
+
+ environment.systemPackages =
+ [ pkgs.cdemu-daemon pkgs.cdemu-client ]
+ ++ optional cfg.gui pkgs.gcdemu
+ ++ optional cfg.image-analyzer pkgs.image-analyzer;
+ };
+
+}
diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix
index eab7993387d..b7905233759 100644
--- a/nixos/modules/services/audio/mpd.nix
+++ b/nixos/modules/services/audio/mpd.nix
@@ -100,6 +100,7 @@ in {
script = "exec mpd --no-daemon ${mpdConf}";
serviceConfig = {
User = "mpd";
+ PermissionsStartOnly = true;
};
};
diff --git a/nixos/modules/services/cluster/panamax.nix b/nixos/modules/services/cluster/panamax.nix
new file mode 100644
index 00000000000..a7233f23c91
--- /dev/null
+++ b/nixos/modules/services/cluster/panamax.nix
@@ -0,0 +1,153 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.services.panamax;
+
+ panamax_api = pkgs.panamax_api.override { dataDir = cfg.dataDir + "/api"; };
+ panamax_ui = pkgs.panamax_ui.override { dataDir = cfg.dataDir + "/ui"; };
+
+in {
+
+ ##### Interface
+ options.services.panamax = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable Panamax service.
+ '';
+ };
+
+ UIPort = mkOption {
+ type = types.int;
+ default = 8888;
+ description = ''
+ Panamax UI listening port.
+ '';
+ };
+
+ APIPort = mkOption {
+ type = types.int;
+ default = 3000;
+ description = ''
+ Panamax UI listening port.
+ '';
+ };
+
+ dataDir = mkOption {
+ type = types.str;
+ default = "/var/lib/panamax";
+ description = ''
+ Data dir for Panamax.
+ '';
+ };
+
+ fleetctlEndpoint = mkOption {
+ type = types.str;
+ default = "http://127.0.0.1:4001";
+ description = ''
+ Panamax fleetctl endpoint.
+ '';
+ };
+
+ journalEndpoint = mkOption {
+ type = types.str;
+ default = "http://127.0.0.1:19531";
+ description = ''
+ Panamax journal endpoint.
+ '';
+ };
+
+ secretKey = mkOption {
+ type = types.str;
+ default = "SomethingVeryLong.";
+ description = ''
+ Panamax secret key (do change this).
+ '';
+ };
+
+ };
+
+ ##### Implementation
+ config = mkIf cfg.enable {
+ systemd.services.panamax-api = {
+ description = "Panamax API";
+
+ wantedBy = [ "multi-user.target" ];
+ after = [ "network.target" "fleet.service" "etcd.service" "docker.service" ];
+
+ path = [ panamax_api ];
+ environment = {
+ RAILS_ENV = "production";
+ JOURNAL_ENDPOINT = cfg.journalEndpoint;
+ FLEETCTL_ENDPOINT = cfg.fleetctlEndpoint;
+ PANAMAX_DATABASE_PATH = "${cfg.dataDir}/api/db/mnt/db.sqlite3";
+ };
+
+ preStart = ''
+ rm -rf ${cfg.dataDir}/state/tmp
+ mkdir -p ${cfg.dataDir}/api/{db/mnt,state/log,state/tmp}
+ ln -sf ${panamax_api}/share/panamax-api/_db/{schema.rb,seeds.rb,migrate} ${cfg.dataDir}/api/db/
+
+ if [ ! -f ${cfg.dataDir}/.created ]; then
+ bundle exec rake db:setup
+ bundle exec rake db:seed
+ bundle exec rake panamax:templates:load || true
+ touch ${cfg.dataDir}/.created
+ else
+ bundle exec rake db:migrate
+ fi
+ '';
+
+ serviceConfig = {
+ ExecStart = "${panamax_api}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.APIPort}";
+ User = "panamax";
+ Group = "panamax";
+ };
+ };
+
+ systemd.services.panamax-ui = {
+ description = "Panamax UI";
+
+ wantedBy = [ "multi-user.target" ];
+ after = [ "network.target" "panamax_api.service" ];
+
+ path = [ panamax_ui ];
+ environment = {
+ RAILS_ENV = "production";
+ JOURNAL_ENDPOINT = cfg.journalEndpoint;
+ PMX_API_PORT_3000_TCP_ADDR = "localhost";
+ PMX_API_PORT_3000_TCP_PORT = toString cfg.APIPort;
+ SECRET_KEY_BASE = cfg.secretKey;
+ };
+
+ preStart = ''
+ rm -rf ${cfg.dataDir}/state/tmp
+ mkdir -p ${cfg.dataDir}/ui/state/{log,tmp}
+ '';
+
+ serviceConfig = {
+ ExecStart = "${panamax_ui}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.UIPort}";
+ User = "panamax";
+ Group = "panamax";
+ };
+ };
+
+ users.extraUsers.panamax =
+ { uid = config.ids.uids.panamax;
+ description = "Panamax user";
+ createHome = true;
+ home = cfg.dataDir;
+ extraGroups = [ "docker" ];
+ };
+
+ services.journald.enableHttpGateway = mkDefault true;
+ services.fleet.enable = mkDefault true;
+ virtualisation.docker.enable = mkDefault true;
+
+ environment.systemPackages = [ panamax_api panamax_ui ];
+ users.extraGroups.panamax.gid = config.ids.gids.panamax;
+ };
+}
diff --git a/nixos/modules/services/misc/canto-daemon.nix b/nixos/modules/services/misc/canto-daemon.nix
new file mode 100644
index 00000000000..db51a263aab
--- /dev/null
+++ b/nixos/modules/services/misc/canto-daemon.nix
@@ -0,0 +1,37 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+cfg = config.services.canto-daemon;
+
+in {
+
+##### interface
+
+ options = {
+
+ services.canto-daemon = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Whether to enable the canto RSS daemon.";
+ };
+ };
+
+ };
+
+##### implementation
+
+ config = mkIf cfg.enable {
+
+ systemd.user.services.canto-daemon = {
+ description = "Canto RSS Daemon";
+ after = [ "network.target" ];
+ wantedBy = [ "default.target" ];
+ serviceConfig.ExecStart = "${pkgs.canto-daemon}/bin/canto-daemon";
+ };
+ };
+
+}
diff --git a/nixos/modules/services/network-filesystems/samba.nix b/nixos/modules/services/network-filesystems/samba.nix
index 6fcf8999952..8c79bf663d1 100644
--- a/nixos/modules/services/network-filesystems/samba.nix
+++ b/nixos/modules/services/network-filesystems/samba.nix
@@ -6,25 +6,11 @@ let
cfg = config.services.samba;
- logDir = "/var/log/samba";
- privateDir = "/var/samba/private";
-
samba = cfg.package;
setupScript =
''
- if ! test -d /var/samba ; then
- mkdir -p /var/samba/locks /var/samba/cores/nmbd /var/samba/cores/smbd /var/samba/cores/winbindd
- fi
-
- passwdFile="$(${pkgs.gnused}/bin/sed -n 's/^.*smb[ ]\+passwd[ ]\+file[ ]\+=[ ]\+\(.*\)/\1/p' ${configFile})"
- if [ -n "$passwdFile" ]; then
- echo 'INFO: [samba] creating directory containing passwd file'
- mkdir -p "$(dirname "$passwdFile")"
- fi
-
- mkdir -p ${logDir}
- mkdir -p ${privateDir}
+ mkdir -p /var/lock/samba /var/log/samba /var/cache/samba /var/lib/samba/private
'';
shareConfig = name:
@@ -39,9 +25,10 @@ let
(if cfg.configText != null then cfg.configText else
''
[ global ]
- log file = ${logDir}/log.%m
- private dir = ${privateDir}
- ${optionalString cfg.syncPasswordsByPam "pam password change = true"}
+ security = ${cfg.securityType}
+ passwd program = /var/setuid-wrappers/passwd %u
+ pam password change = ${toString cfg.syncPasswordsByPam}
+ invalid users = ${toString cfg.invalidUsers}
${cfg.extraConfig}
@@ -83,14 +70,16 @@ in
services.samba = {
enable = mkOption {
+ type = types.bool;
default = false;
- description = "
+ description = ''
Whether to enable Samba, which provides file and print
services to Windows clients through the SMB/CIFS protocol.
- ";
+ '';
};
package = mkOption {
+ type = types.package;
default = pkgs.samba;
example = pkgs.samba4;
description = ''
@@ -99,72 +88,47 @@ in
};
syncPasswordsByPam = mkOption {
+ type = types.bool;
default = false;
- description = "
- enabling this will add a line directly after pam_unix.so.
+ description = ''
+ Enabling this will add a line directly after pam_unix.so.
Whenever a password is changed the samba password will be updated as well.
However you still yave to add the samba password once using smbpasswd -a user
If you don't want to maintain an extra pwd database you still can send plain text
passwords which is not secure.
- ";
+ '';
+ };
+
+ invalidUsers = mkOption {
+ type = types.listOf types.str;
+ default = [ "root" ];
+ description = ''
+ List of users who are denied to login via Samba.
+ '';
};
extraConfig = mkOption {
- # !!! Bad default.
- default = ''
- # [global] continuing global section here, section is started by nix to set pids etc
-
- smb passwd file = /etc/samba/passwd
-
- # is this useful ?
- domain master = auto
-
- encrypt passwords = Yes
- client plaintext auth = No
-
- # yes: if you use this you probably also want to enable syncPasswordsByPam
- # no: You can still use the pam password database. However
- # passwords will be sent plain text on network (discouraged)
-
- workgroup = Users
- server string = %h
- comment = Samba
- log file = /var/log/samba/log.%m
- log level = 10
- max log size = 50000
- security = ${cfg.securityType}
-
- client lanman auth = Yes
- dns proxy = no
- invalid users = root
- passdb backend = tdbsam
- passwd program = /usr/bin/passwd %u
+ type = types.lines;
+ default = "";
+ description = ''
+ Additional global section and extra section lines go in here.
'';
-
- description = "
- additional global section and extra section lines go in here.
- ";
- };
-
- configFile = mkOption {
- description = "
- internal use to pass filepath to samba pam module
- ";
};
configText = mkOption {
type = types.nullOr types.lines;
default = null;
- description = "
+ description = ''
Verbatim contents of smb.conf. If null (default), use the
autogenerated file from NixOS instead.
- ";
+ '';
};
securityType = mkOption {
- description = "Samba security type";
+ type = types.str;
default = "user";
example = "share";
+ description = "Samba security type";
};
nsswins = mkOption {
@@ -179,12 +143,11 @@ in
shares = mkOption {
default = {};
- description =
- ''
+ description = ''
A set describing shared resources.
See man smb.conf for options.
- '';
- type = types.attrsOf (types.attrsOf types.str);
+ '';
+ type = types.attrsOf (types.attrsOf types.unspecified);
example =
{ srv =
{ path = "/srv";
diff --git a/nixos/modules/services/networking/openntpd.nix b/nixos/modules/services/networking/openntpd.nix
index ef525088898..e53fc574fbe 100644
--- a/nixos/modules/services/networking/openntpd.nix
+++ b/nixos/modules/services/networking/openntpd.nix
@@ -64,6 +64,8 @@ in
systemd.services.openntpd = {
description = "OpenNTP Server";
wantedBy = [ "multi-user.target" ];
+ wants = [ "network-online.target" ];
+ after = [ "dnsmasq.service" "bind.service" "network-online.target" ];
serviceConfig.ExecStart = "${package}/sbin/ntpd -d -f ${cfgFile} ${cfg.extraOptions}";
};
};
diff --git a/nixos/modules/services/networking/sslh.nix b/nixos/modules/services/networking/sslh.nix
new file mode 100644
index 00000000000..2bfdfc89c88
--- /dev/null
+++ b/nixos/modules/services/networking/sslh.nix
@@ -0,0 +1,83 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+ cfg = config.services.sslh;
+ configFile = pkgs.writeText "sslh.conf" ''
+ verbose: ${if cfg.verbose then "true" else "false"};
+ foreground: false;
+ inetd: false;
+ numeric: false;
+ transparent: false;
+ timeout: "${toString cfg.timeout}";
+ user: "nobody";
+ pidfile: "/run/sslh.pid";
+
+ listen:
+ (
+ { host: "${cfg.host}"; port: "${toString cfg.port}"; }
+ );
+
+ ${cfg.appendConfig}
+ '';
+ defaultAppendConfig = ''
+ protocols:
+ (
+ { name: "ssh"; service: "ssh"; host: "localhost"; port: "22"; probe: "builtin"; },
+ { name: "openvpn"; host: "localhost"; port: "1194"; probe: "builtin"; },
+ { name: "xmpp"; host: "localhost"; port: "5222"; probe: "builtin"; },
+ { name: "http"; host: "localhost"; port: "80"; probe: "builtin"; },
+ { name: "ssl"; host: "localhost"; port: "443"; probe: "builtin"; },
+ { name: "anyprot"; host: "localhost"; port: "443"; probe: "builtin"; }
+ );
+ '';
+in
+{
+ options = {
+ services.sslh = {
+ enable = mkEnableOption "sslh";
+
+ verbose = mkOption {
+ type = types.bool;
+ default = false;
+ description = "Verbose logs.";
+ };
+
+ timeout = mkOption {
+ type = types.int;
+ default = 2;
+ description = "Timeout in seconds.";
+ };
+
+ host = mkOption {
+ type = types.str;
+ default = config.networking.hostName;
+ description = "Listening hostname.";
+ };
+
+ port = mkOption {
+ type = types.int;
+ default = 443;
+ description = "Listening port.";
+ };
+
+ appendConfig = mkOption {
+ type = types.str;
+ default = defaultAppendConfig;
+ description = "Verbatim configuration file.";
+ };
+ };
+ };
+
+ config = mkIf cfg.enable {
+ systemd.services.sslh = {
+ description = "Applicative Protocol Multiplexer (e.g. share SSH and HTTPS on the same port)";
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+ serviceConfig.ExecStart = "${pkgs.sslh}/bin/sslh -F ${configFile}";
+ serviceConfig.KillMode = "process";
+ serviceConfig.PIDFile = "/run/sslh.pid";
+ };
+ };
+}
diff --git a/nixos/modules/services/networking/tinc.nix b/nixos/modules/services/networking/tinc.nix
index 16cf1f68fca..f9ca796ea65 100644
--- a/nixos/modules/services/networking/tinc.nix
+++ b/nixos/modules/services/networking/tinc.nix
@@ -71,7 +71,7 @@ in
};
package = mkOption {
- default = pkgs.tinc;
+ default = pkgs.tinc_pre;
description = ''
The package to use for the tinc daemon's binary.
'';
@@ -131,14 +131,22 @@ in
preStart = ''
mkdir -p /etc/tinc/${network}/hosts
- # Prefer ED25519 keys (only in 1.1+)
- [ -f "/etc/tinc/${network}/ed25519_key.priv" ] || tinc -n ${network} generate-ed25519-keys
+ # Determine how we should generate our keys
+ if type tinc >/dev/null 2>&1; then
+ # Tinc 1.1+ uses the tinc helper application for key generation
- # Otherwise use RSA keys
- [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tinc -n ${network} generate-rsa-keys 4096
+ # Prefer ED25519 keys (only in 1.1+)
+ [ -f "/etc/tinc/${network}/ed25519_key.priv" ] || tinc -n ${network} generate-ed25519-keys
+
+ # Otherwise use RSA keys
+ [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tinc -n ${network} generate-rsa-keys 4096
+ else
+ # Tinc 1.0 uses the tincd application
+ [ -f "/etc/tinc/${network}/rsa_key.priv" ] || tincd -n ${network} -K 4096
+ fi
'';
script = ''
- ${data.package}/sbin/tincd -D -U tinc.${network} -n ${network} --pidfile /run/tinc.${network}.pid -d ${toString data.debugLevel}
+ tincd -D -U tinc.${network} -n ${network} --pidfile /run/tinc.${network}.pid -d ${toString data.debugLevel}
'';
})
);
diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix
index 4f2a2309b60..7ec32fe83b5 100644
--- a/nixos/modules/services/x11/window-managers/default.nix
+++ b/nixos/modules/services/x11/window-managers/default.nix
@@ -7,19 +7,19 @@ let
in
{
- imports =
- [ ./compiz.nix
- ./openbox.nix
- ./metacity.nix
- ./none.nix
- ./twm.nix
- ./wmii.nix
- ./xmonad.nix
- ./i3.nix
- ./herbstluftwm.nix
- ./bspwm.nix
- ./stumpwm.nix
- ];
+ imports = [
+ ./bspwm.nix
+ ./compiz.nix
+ ./herbstluftwm.nix
+ ./i3.nix
+ ./metacity.nix
+ ./openbox.nix
+ ./stumpwm.nix
+ ./twm.nix
+ ./windowmaker.nix
+ ./wmii.nix
+ ./xmonad.nix
+ ./none.nix ];
options = {
@@ -61,4 +61,4 @@ in
config = {
services.xserver.displayManager.session = cfg.session;
};
-}
\ No newline at end of file
+}
diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix
index 79b173a6ead..ff0c6ac3bee 100644
--- a/nixos/modules/system/boot/kernel.nix
+++ b/nixos/modules/system/boot/kernel.nix
@@ -193,6 +193,7 @@ in
"ohci_hcd"
"ohci_pci"
"xhci_hcd"
+ "xhci_pci"
"usbhid"
"hid_generic"
"hid_apple" "hid_logitech_dj" "hid_lenovo_tpkbd" "hid_roccat"
diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix
index b16a725aba8..0cfef7df197 100644
--- a/nixos/modules/system/boot/loader/grub/grub.nix
+++ b/nixos/modules/system/boot/loader/grub/grub.nix
@@ -6,6 +6,8 @@ let
cfg = config.boot.loader.grub;
+ efi = config.boot.loader.efi;
+
realGrub = if cfg.version == 1 then pkgs.grub
else pkgs.grub2.override { zfsSupport = cfg.zfsSupport; };
@@ -16,21 +18,31 @@ let
then null
else realGrub;
+ grubEfi =
+ # EFI version of Grub v2
+ if (cfg.devices != ["nodev"]) && cfg.efiSupport && (cfg.version == 2)
+ then pkgs.grub2.override { zfsSupport = cfg.zfsSupport; efiSupport = cfg.efiSupport; }
+ else null;
+
f = x: if x == null then "" else "" + x;
grubConfig = pkgs.writeText "grub-config.xml" (builtins.toXML
{ splashImage = f config.boot.loader.grub.splashImage;
grub = f grub;
+ grubTarget = f (grub.grubTarget or "");
shell = "${pkgs.stdenv.shell}";
fullVersion = (builtins.parseDrvName realGrub.name).version;
+ grubEfi = f grubEfi;
+ grubTargetEfi = if cfg.efiSupport && (cfg.version == 2) then f grubEfi.grubTarget else "";
+ inherit (efi) efiSysMountPoint canTouchEfiVariables;
inherit (cfg)
version extraConfig extraPerEntryConfig extraEntries
extraEntriesBeforeNixOS extraPrepareConfig configurationLimit copyKernels timeout
- default devices fsIdentifier;
- path = (makeSearchPath "bin" [
+ default devices fsIdentifier efiSupport;
+ path = (makeSearchPath "bin" ([
pkgs.coreutils pkgs.gnused pkgs.gnugrep pkgs.findutils pkgs.diffutils pkgs.btrfsProgs
- pkgs.utillinux
- ]) + ":" + (makeSearchPath "sbin" [
+ pkgs.utillinux ] ++ (if cfg.efiSupport && (cfg.version == 2) then [pkgs.efibootmgr ] else [])
+ )) + ":" + (makeSearchPath "sbin" [
pkgs.mdadm pkgs.utillinux
]);
});
@@ -231,6 +243,18 @@ in
type = types.bool;
description = ''
Whether grub should be build against libzfs.
+ ZFS support is only available for GRUB v2.
+ This option is ignored for GRUB v1.
+ '';
+ };
+
+ efiSupport = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Whether grub should be build with EFI support.
+ EFI support is only available for GRUB v2.
+ This option is ignored for GRUB v1.
'';
};
@@ -269,7 +293,7 @@ in
if cfg.devices == [] then
throw "You must set the option ‘boot.loader.grub.device’ to make the system bootable."
else
- "PERL5LIB=${makePerlPath (with pkgs.perlPackages; [ FileSlurp XMLLibXML XMLSAX ])} " +
+ "PERL5LIB=${makePerlPath (with pkgs.perlPackages; [ FileSlurp XMLLibXML XMLSAX ListCompare ])} " +
(if cfg.enableCryptodisk then "GRUB_ENABLE_CRYPTODISK=y " else "") +
"${pkgs.perl}/bin/perl ${./install-grub.pl} ${grubConfig}";
diff --git a/nixos/modules/system/boot/loader/grub/install-grub.pl b/nixos/modules/system/boot/loader/grub/install-grub.pl
index ffee0271e93..74a934c6793 100644
--- a/nixos/modules/system/boot/loader/grub/install-grub.pl
+++ b/nixos/modules/system/boot/loader/grub/install-grub.pl
@@ -7,6 +7,7 @@ use File::Path;
use File::stat;
use File::Copy;
use File::Slurp;
+require List::Compare;
use POSIX;
use Cwd;
@@ -39,6 +40,7 @@ sub runCommand {
my $grub = get("grub");
my $grubVersion = int(get("version"));
+my $grubTarget = get("grubTarget");
my $extraConfig = get("extraConfig");
my $extraPrepareConfig = get("extraPrepareConfig");
my $extraPerEntryConfig = get("extraPerEntryConfig");
@@ -50,6 +52,10 @@ my $copyKernels = get("copyKernels") eq "true";
my $timeout = int(get("timeout"));
my $defaultEntry = int(get("default"));
my $fsIdentifier = get("fsIdentifier");
+my $grubEfi = get("grubEfi");
+my $grubTargetEfi = get("grubTargetEfi");
+my $canTouchEfiVariables = get("canTouchEfiVariables");
+my $efiSysMountPoint = get("efiSysMountPoint");
$ENV{'PATH'} = get("path");
die "unsupported GRUB version\n" if $grubVersion != 1 && $grubVersion != 2;
@@ -103,6 +109,8 @@ sub GetFs {
# Skip the read-only bind-mount on /nix/store.
next if $mountPoint eq "/nix/store" && (grep { $_ eq "rw" } @superOptions) && (grep { $_ eq "ro" } @mountOptions);
+ # Skip mount point generated by systemd-efi-boot-generator?
+ next if $fsType eq "autofs";
# Ensure this matches the intended directory
next unless PathInMount($dir, $mountPoint);
@@ -402,16 +410,114 @@ foreach my $fn (glob "/boot/kernels/*") {
}
-# Install GRUB if the version changed from the last time we installed
-# it. FIXME: shouldn't we reinstall if ‘devices’ changed?
-my $prevVersion = readFile("/boot/grub/version") // "";
-if (($ENV{'NIXOS_INSTALL_GRUB'} // "") eq "1" || get("fullVersion") ne $prevVersion) {
+#
+# Install GRUB if the parameters changed from the last time we installed it.
+#
+
+struct(GrubState => {
+ version => '$',
+ efi => '$',
+ devices => '$',
+ efiMountPoint => '$',
+});
+sub readGrubState {
+ my $defaultGrubState = GrubState->new(version => "", efi => "", devices => "", efiMountPoint => "" );
+ open FILE, ";
+ chomp($version);
+ my $efi = ;
+ chomp($efi);
+ my $devices = ;
+ chomp($devices);
+ my $efiMountPoint = ;
+ chomp($efiMountPoint);
+ close FILE;
+ my $grubState = GrubState->new(version => $version, efi => $efi, devices => $devices, efiMountPoint => $efiMountPoint );
+ return $grubState
+}
+
+sub getDeviceTargets {
+ my @devices = ();
foreach my $dev ($dom->findnodes('/expr/attrs/attr[@name = "devices"]/list/string/@value')) {
$dev = $dev->findvalue(".") or die;
+ push(@devices, $dev);
+ }
+ return @devices;
+}
+
+# check whether to install GRUB EFI or not
+sub getEfiTarget {
+ if (($grub ne "") && ($grubEfi ne "")) {
+ # EFI can only be installed when target is set;
+ # A target is also required then for non-EFI grub
+ if (($grubTarget eq "") || ($grubTargetEfi eq "")) { die }
+ else { return "both" }
+ } elsif (($grub ne "") && ($grubEfi eq "")) {
+ # TODO: It would be safer to disallow non-EFI grub installation if no taget is given.
+ # If no target is given, then grub auto-detects the target which can lead to errors.
+ # E.g. it seems as if grub would auto-detect a EFI target based on the availability
+ # of a EFI partition.
+ # However, it seems as auto-detection is currently relied on for non-x86_64 and non-i386
+ # architectures in NixOS. That would have to be fixed in the nixos modules first.
+ return "no"
+ } elsif (($grub eq "") && ($grubEfi ne "")) {
+ # EFI can only be installed when target is set;
+ if ($grubTargetEfi eq "") { die }
+ else {return "only" }
+ } else {
+ # at least one grub target has to be given
+ die
+ }
+}
+
+my @deviceTargets = getDeviceTargets();
+my $efiTarget = getEfiTarget();
+my $prevGrubState = readGrubState();
+my @prevDeviceTargets = split/:/, $prevGrubState->devices;
+
+my $devicesDiffer = scalar (List::Compare->new( '-u', '-a', \@deviceTargets, \@prevDeviceTargets)->get_symmetric_difference() );
+my $versionDiffer = (get("fullVersion") eq \$prevGrubState->version);
+my $efiDiffer = ($efiTarget eq \$prevGrubState->efi);
+my $efiMountPointDiffer = ($efiSysMountPoint eq \$prevGrubState->efiMountPoint);
+my $requireNewInstall = $devicesDiffer || $versionDiffer || $efiDiffer || $efiMountPointDiffer || (($ENV{'NIXOS_INSTALL_GRUB'} // "") eq "1");
+
+
+# install non-EFI GRUB
+if (($requireNewInstall != 0) && ($efiTarget eq "no" || $efiTarget eq "both")) {
+ foreach my $dev (@deviceTargets) {
next if $dev eq "nodev";
print STDERR "installing the GRUB $grubVersion boot loader on $dev...\n";
- system("$grub/sbin/grub-install", "--recheck", Cwd::abs_path($dev)) == 0
- or die "$0: installation of GRUB on $dev failed\n";
+ if ($grubTarget eq "") {
+ system("$grub/sbin/grub-install", "--recheck", Cwd::abs_path($dev)) == 0
+ or die "$0: installation of GRUB on $dev failed\n";
+ } else {
+ system("$grub/sbin/grub-install", "--recheck", "--target=$grubTarget", Cwd::abs_path($dev)) == 0
+ or die "$0: installation of GRUB on $dev failed\n";
+ }
}
- writeFile("/boot/grub/version", get("fullVersion"));
+}
+
+
+# install EFI GRUB
+if (($requireNewInstall != 0) && ($efiTarget eq "only" || $efiTarget eq "both")) {
+ print STDERR "installing the GRUB $grubVersion EFI boot loader into $efiSysMountPoint...\n";
+ if ($canTouchEfiVariables eq "true") {
+ system("$grubEfi/sbin/grub-install", "--recheck", "--target=$grubTargetEfi", "--efi-directory=$efiSysMountPoint") == 0
+ or die "$0: installation of GRUB EFI into $efiSysMountPoint failed\n";
+ } else {
+ system("$grubEfi/sbin/grub-install", "--recheck", "--target=$grubTargetEfi", "--efi-directory=$efiSysMountPoint", "--no-nvram") == 0
+ or die "$0: installation of GRUB EFI into $efiSysMountPoint failed\n";
+ }
+}
+
+
+# update GRUB state file
+if ($requireNewInstall != 0) {
+ open FILE, ">/boot/grub/state" or die "cannot create /boot/grub/state: $!\n";
+ print FILE get("fullVersion"), "\n" or die;
+ print FILE $efiTarget, "\n" or die;
+ print FILE join( ":", @deviceTargets ), "\n" or die;
+ print FILE $efiSysMountPoint, "\n" or die;
+ close FILE or die;
}
diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh
index 0b7d4de6d20..8f185217c3f 100644
--- a/nixos/modules/system/boot/stage-1-init.sh
+++ b/nixos/modules/system/boot/stage-1-init.sh
@@ -7,6 +7,8 @@ export LD_LIBRARY_PATH=@extraUtils@/lib
export PATH=@extraUtils@/bin
ln -s @extraUtils@/bin /bin
+# Stop LVM complaining about fd3
+export LVM_SUPPRESS_FD_WARNINGS=true
fail() {
if [ -n "$panicOnFail" ]; then exit 1; fi
@@ -347,7 +349,8 @@ while read -u 3 mountPoint; do
# that we don't properly recognise.
if test -z "$pseudoDevice" -a ! -e $device; then
echo -n "waiting for device $device to appear..."
- for try in $(seq 1 20); do
+ try=20
+ while [ $try -gt 0 ]; do
sleep 1
# also re-try lvm activation now that new block devices might have appeared
lvm vgchange -ay
@@ -355,8 +358,12 @@ while read -u 3 mountPoint; do
udevadm trigger --action=add
if test -e $device; then break; fi
echo -n "."
+ try=$((try - 1))
done
echo
+ if [ $try -eq 0 ]; then
+ echo "Timed out waiting for device $device, trying to mount anyway."
+ fi
fi
# Wait once more for the udev queue to empty, just in case it's
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index 053a85c4c5b..f853a8f6775 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -1040,6 +1040,11 @@ in
''
# This file is created automatically and should not be modified.
# Please change the option ‘systemd.tmpfiles.rules’ instead.
+
+ z /var/log/journal 2755 root systemd-journal - -
+ z /var/log/journal/%m 2755 root systemd-journal - -
+ z /var/log/journal/%m/* 0640 root systemd-journal - -
+
${concatStringsSep "\n" cfg.tmpfiles.rules}
'';
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index ab5942b7945..1ac89c4c255 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -21,11 +21,12 @@ let
kernel = config.boot.kernelPackages;
- splPkg = if cfgZfs.useGit then kernel.spl_git else kernel.spl;
- zfsPkg = if cfgZfs.useGit then kernel.zfs_git else kernel.zfs;
+ splKernelPkg = if cfgZfs.useGit then kernel.spl_git else kernel.spl;
+ zfsKernelPkg = if cfgZfs.useGit then kernel.zfs_git else kernel.zfs;
+ zfsUserPkg = if cfgZfs.useGit then pkgs.zfs_git else pkgs.zfs;
autosnapPkg = pkgs.zfstools.override {
- zfs = zfsPkg;
+ zfs = zfsUserPkg;
};
zfsAutoSnap = "${autosnapPkg}/bin/zfs-auto-snapshot";
@@ -195,17 +196,17 @@ in
boot = {
kernelModules = [ "spl" "zfs" ] ;
- extraModulePackages = [ splPkg zfsPkg ];
+ extraModulePackages = [ splKernelPkg zfsKernelPkg ];
};
boot.initrd = mkIf inInitrd {
kernelModules = [ "spl" "zfs" ];
extraUtilsCommands =
''
- cp -v ${zfsPkg}/sbin/zfs $out/bin
- cp -v ${zfsPkg}/sbin/zdb $out/bin
- cp -v ${zfsPkg}/sbin/zpool $out/bin
- cp -pdv ${zfsPkg}/lib/lib*.so* $out/lib
+ cp -v ${zfsUserPkg}/sbin/zfs $out/bin
+ cp -v ${zfsUserPkg}/sbin/zdb $out/bin
+ cp -v ${zfsUserPkg}/sbin/zpool $out/bin
+ cp -pdv ${zfsUserPkg}/lib/lib*.so* $out/lib
cp -pdv ${pkgs.zlib}/lib/lib*.so* $out/lib
'';
postDeviceCommands = concatStringsSep "\n" ([''
@@ -228,12 +229,12 @@ in
zfsSupport = true;
};
- environment.etc."zfs/zed.d".source = "${zfsPkg}/etc/zfs/zed.d/*";
+ environment.etc."zfs/zed.d".source = "${zfsUserPkg}/etc/zfs/zed.d/*";
- system.fsPackages = [ zfsPkg ]; # XXX: needed? zfs doesn't have (need) a fsck
- environment.systemPackages = [ zfsPkg ];
- services.udev.packages = [ zfsPkg ]; # to hook zvol naming, etc.
- systemd.packages = [ zfsPkg ];
+ system.fsPackages = [ zfsUserPkg ]; # XXX: needed? zfs doesn't have (need) a fsck
+ environment.systemPackages = [ zfsUserPkg ];
+ services.udev.packages = [ zfsUserPkg ]; # to hook zvol naming, etc.
+ systemd.packages = [ zfsUserPkg ];
systemd.services = let
getPoolFilesystems = pool:
@@ -260,7 +261,7 @@ in
RemainAfterExit = true;
};
script = ''
- zpool_cmd="${zfsPkg}/sbin/zpool"
+ zpool_cmd="${zfsUserPkg}/sbin/zpool"
("$zpool_cmd" list "${pool}" >/dev/null) || "$zpool_cmd" import -N ${optionalString cfgZfs.forceImportAll "-f"} "${pool}"
'';
};
diff --git a/nixos/release.nix b/nixos/release.nix
index ca12a03f835..1bd3ec57731 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -300,6 +300,7 @@ in rec {
tests.nfs3 = callTest tests/nfs.nix { version = 3; };
tests.nsd = callTest tests/nsd.nix {};
tests.openssh = callTest tests/openssh.nix {};
+ tests.panamax = scrubDrv (import tests/panamax.nix { system = "x86_64-linux"; });
tests.peerflix = callTest tests/peerflix.nix {};
tests.printing = callTest tests/printing.nix {};
tests.proxy = callTest tests/proxy.nix {};
diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix
index 3f4a197ebcc..d737038380d 100644
--- a/nixos/tests/jenkins.nix
+++ b/nixos/tests/jenkins.nix
@@ -17,7 +17,7 @@ import ./make-test.nix {
users.extraUsers.jenkins.extraGroups = [ "users" ];
- systemd.services.jenkins.serviceConfig.TimeoutStartSec = "3min";
+ systemd.services.jenkins.serviceConfig.TimeoutStartSec = "6min";
};
slave =
diff --git a/nixos/tests/panamax.nix b/nixos/tests/panamax.nix
new file mode 100644
index 00000000000..80af8a19be1
--- /dev/null
+++ b/nixos/tests/panamax.nix
@@ -0,0 +1,18 @@
+import ./make-test.nix {
+ name = "panamax";
+
+ machine = { config, pkgs, ... }: {
+ services.panamax.enable = true;
+ };
+
+ testScript =
+ ''
+ startAll;
+ $machine->waitForUnit("panamax-api.service");
+ $machine->waitForUnit("panamax-ui.service");
+ $machine->waitForOpenPort(3000);
+ $machine->waitForOpenPort(8888);
+ $machine->succeed("curl --fail http://localhost:8888/ > /dev/null");
+ $machine->shutdown;
+ '';
+}
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index e83e5a8ca74..5eef35aa061 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -1,23 +1,44 @@
-{ stdenv, fetchurl, ncurses, curl, taglib, fftw, mpd_clientlib, pkgconfig
-, libiconvOrEmpty, boost, readline }:
+{ stdenv, fetchurl, boost, mpd_clientlib, ncurses, pkgconfig, readline
+, libiconvOrEmpty
+, outputsSupport ? false # outputs screen
+, visualizerSupport ? false, fftw ? null # visualizer screen
+, clockSupport ? false # clock screen
+, unicodeSupport ? true # utf8 support
+, curlSupport ? true, curl ? null # allow fetching lyrics from the internet
+, taglibSupport ? true, taglib ? null # tag editor
+}:
+assert visualizerSupport -> (fftw != null);
+assert curlSupport -> (curl != null);
+assert taglibSupport -> (taglib != null);
+
+with stdenv.lib;
stdenv.mkDerivation rec {
- version = "0.6.2";
name = "ncmpcpp-${version}";
+ version = "0.6.2";
src = fetchurl {
- url = "http://ncmpcpp.rybczak.net/stable/ncmpcpp-${version}.tar.bz2";
+ url = "http://ncmpcpp.rybczak.net/stable/${name}.tar.bz2";
sha256 = "1mrd6m6ph0fscxp9x96ipxh6ai7w0n1miapcfqrqfy058qx5zbck";
};
- configureFlags = "BOOST_LIB_SUFFIX=";
+ configureFlags = [ "BOOST_LIB_SUFFIX=" ]
+ ++ optional outputsSupport "--enable-outputs"
+ ++ optional visualizerSupport "--enable-visualizer --with-fftw"
+ ++ optional clockSupport "--enable-clock"
+ ++ optional unicodeSupport "--enable-unicode"
+ ++ optional curlSupport "--with-curl"
+ ++ optional taglibSupport "--with-taglib";
- buildInputs = [ ncurses curl taglib fftw mpd_clientlib boost pkgconfig readline ]
+ buildInputs = [ boost mpd_clientlib ncurses pkgconfig readline ]
+ ++ optional curlSupport curl
+ ++ optional visualizerSupport fftw
+ ++ optional taglibSupport taglib
++ libiconvOrEmpty;
- meta = with stdenv.lib; {
- description = "Curses-based interface for MPD (music player daemon)";
- homepage = http://unkart.ovh.org/ncmpcpp/;
+ meta = {
+ description = "A featureful ncurses based MPD client inspired by ncmpc";
+ homepage = http://ncmpcpp.rybczak.net/;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ lovek323 mornfall koral ];
platforms = platforms.all;
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index 210b2e0813b..3d0114352a1 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -3,14 +3,14 @@
, pyqt4, mutagen, python-libdiscid
}:
-let version = "1.3"; in
+let version = "1.3.2"; in
buildPythonPackage {
name = "picard-${version}";
namePrefix = "";
src = fetchurl {
- url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/picard/picard-${version}.tar.gz";
- sha256 = "06s90w1j29qhd931dgj752k5v4pjbvxiz6g0613xzj3ms8zsrlys";
+ url = "http://ftp.musicbrainz.org/pub/musicbrainz/picard/picard-${version}.tar.gz";
+ sha256 = "0821xb7gyg0rhch8s3qkzmak90wjpcxkv9a364yv6bmqc12j6a77";
};
buildInputs = [
diff --git a/pkgs/applications/editors/bluefish/default.nix b/pkgs/applications/editors/bluefish/default.nix
index 71b2ccb6fb8..25538df0384 100644
--- a/pkgs/applications/editors/bluefish/default.nix
+++ b/pkgs/applications/editors/bluefish/default.nix
@@ -1,17 +1,17 @@
-{stdenv, fetchurl, intltool, pkgconfig , gtk, libxml2
+{ stdenv, fetchurl, intltool, pkgconfig , gtk, libxml2
, enchant, gucharmap, python
}:
stdenv.mkDerivation rec {
- name = "bluefish-2.2.6";
+ name = "bluefish-2.2.7";
src = fetchurl {
url = "mirror://sourceforge/bluefish/${name}.tar.bz2";
- sha256 = "05j2mv6s2llf2pxknddhk8fzbghr7yff58xhkxy2icky64n8khjl";
+ sha256 = "1psqx3ljz13ylqs4zkaxv9lv1hgzld6904kdp0alwx99p5rlnlr3";
};
- buildInputs = [intltool pkgconfig gtk libxml2
- enchant gucharmap python];
+ buildInputs = [ intltool pkgconfig gtk libxml2
+ enchant gucharmap python ];
meta = with stdenv.lib; {
description = "A powerful editor targeted towards programmers and webdevelopers";
diff --git a/pkgs/applications/editors/emacs-24/builder.sh b/pkgs/applications/editors/emacs-24/builder.sh
index 5b86f98d61c..984a61df6f3 100644
--- a/pkgs/applications/editors/emacs-24/builder.sh
+++ b/pkgs/applications/editors/emacs-24/builder.sh
@@ -5,6 +5,10 @@ source $stdenv/setup
# *our* versions, not the ones found in the system, as it would do by default.
# On other platforms, this appears to be unnecessary.
preConfigure() {
+ for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
+ substituteInPlace $i --replace /bin/pwd pwd
+ done
+
case "${system}" in
x86_64-linux) glibclibdir=lib64 ;;
i686-linux) glibclibdir=lib ;;
@@ -23,7 +27,9 @@ preConfigure() {
--replace /usr/lib/crti.o $libc/${glibclibdir}/crti.o \
--replace /usr/lib/crtn.o $libc/${glibclibdir}/crtn.o
done
+}
+preInstall () {
for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do
substituteInPlace $i --replace /bin/pwd pwd
done
diff --git a/pkgs/applications/editors/emacs-24/macport-24.4.nix b/pkgs/applications/editors/emacs-24/macport-24.4.nix
index 0af0e479a07..694078ffa1f 100644
--- a/pkgs/applications/editors/emacs-24/macport-24.4.nix
+++ b/pkgs/applications/editors/emacs-24/macport-24.4.nix
@@ -28,6 +28,9 @@ stdenv.mkDerivation rec {
'';
preConfigure = ''
+ substituteInPlace Makefile.in --replace "/bin/pwd" "pwd"
+ substituteInPlace lib-src/Makefile.in --replace "/bin/pwd" "pwd"
+
patch -p0 < patch-mac
# The search for 'tputs' will fail because it's in ncursesw within the
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index 734f88722a5..083a4a0b9b9 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -220,7 +220,7 @@ in
description = "C/C++ IDE. New. Intelligent. Cross-platform.";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "http://download.jetbrains.com/cpp/${name}-${build}.tar.gz";
+ url = "https://download.jetbrains.com/cpp/${name}-${build}.tar.gz";
sha256 = "1hpsq37hq61id836wg5j6l3xapln6qdkqa10r3ig2p1rs2hq7i9y";
};
};
@@ -232,7 +232,7 @@ in
description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
- url = "http://download-ln.jetbrains.com/idea/ideaIC-${version}.tar.gz";
+ url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
sha256 = "01wcpzdahkh3li2l3k2bgirnlp7hdxk9y1kyrxc3d9d1nazq8wqn";
};
};
@@ -244,7 +244,7 @@ in
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "http://download-ln.jetbrains.com/idea/ideaIU-${version}.tar.gz";
+ url = "https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz";
sha256 = "1zkqigdh9l1f3mjjvxsp7b7vc93v5ylvxa1dfpclzmfbzna7h69s";
};
};
@@ -256,7 +256,7 @@ in
description = "The Most Intelligent Ruby and Rails IDE";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "http://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
+ url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
sha256 = "0xsx44gaddarkw5k4yjidzwkayf2xvsxklfzdnzcck4rg4vyk4v4";
};
};
@@ -268,7 +268,7 @@ in
description = "PyCharm 4.0 Community Edition";
license = stdenv.lib.licenses.asl20;
src = fetchurl {
- url = "http://download.jetbrains.com/python/${name}.tar.gz";
+ url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "0jh0sxi5dpgpw7ga018fby7zvb4i9k49vwl8422lfcrgckdz9nv2";
};
};
@@ -280,7 +280,7 @@ in
description = "PyCharm 4.0 Professional Edition";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "http://download.jetbrains.com/python/${name}.tar.gz";
+ url = "https://download.jetbrains.com/python/${name}.tar.gz";
sha256 = "04yjhg6vi2kz00sy8zg4wkz26ai90vbp0cnd850ynsab0jsy24w4";
};
};
@@ -292,7 +292,7 @@ in
description = "Professional IDE for Web and PHP developers";
license = stdenv.lib.licenses.unfree;
src = fetchurl {
- url = "http://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
+ url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
sha256 = "01b8vx6swi71sd0rc7i1jnicilqp11ch3zrm8gwb6xh1pmmpdirf";
};
};
diff --git a/pkgs/applications/graphics/mcomix/default.nix b/pkgs/applications/graphics/mcomix/default.nix
index 53c564beec7..5c22854512a 100644
--- a/pkgs/applications/graphics/mcomix/default.nix
+++ b/pkgs/applications/graphics/mcomix/default.nix
@@ -2,15 +2,13 @@
buildPythonPackage rec {
namePrefix = "";
- name = "mcomix-1.00";
+ name = "mcomix-1.01";
src = fetchurl {
url = "mirror://sourceforge/mcomix/${name}.tar.bz2";
- sha256 = "1phcdx1agacdadz8bvbibdbps1apz8idi668zmkky5cpl84k2ifq";
+ sha256 = "0k3pqbvk08kb1nr0qldaj9bc7ca6rvcycgfi2n7gqmsirq5kscys";
};
- doCheck = false;
-
pythonPath = [ pygtk pil python27Packages.sqlite3 ];
meta = {
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 2b3f4c80bcd..9fa624435ed 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -4,14 +4,14 @@
}:
let
- version = "0.64.2";
+ version = "0.64.3";
ETL = stdenv.mkDerivation rec {
name = "ETL-0.04.17";
src = fetchurl {
url = "mirror://sourceforge/synfig/${name}.tar.gz";
- sha256 = "1i2m31y5hdwr365z3zmfh5p3zm4ga4l4yqrl1qrmjryqqzkw200l";
+ sha256 = "0rb9czkgan41q6xlck97kh77g176vjm1wnq620sqky7k2hiahr3s";
};
};
@@ -20,7 +20,7 @@ let
src = fetchurl {
url = "mirror://sourceforge/synfig/synfig-${version}.tar.gz";
- sha256 = "04mx321z929ngl65hfc1hv5jw37wqbh8y2avmpvajagvn6lp3zdl";
+ sha256 = "0p4wqjidb4k3viahck4wzbh777f5ifpivn4vxhxs5fbq8nsvqksh";
};
configureFlags = [
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://sourceforge/synfig/${name}.tar.gz";
- sha256 = "13hw4z6yx70g4mnjmvmxkk7b1qzlwmqjhxflq5dd6cqdsmfw9mc7";
+ sha256 = "1li3ac8qvg25h9fgym0zywnq5bg3sgbv162xs4c6pwksn75i6gsv";
};
buildInputs = [
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index cbcd16c4e91..e52e0ecff2d 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,11 +5,11 @@
}:
stdenv.mkDerivation rec {
- name = "calibre-2.18.0";
+ name = "calibre-2.19.0";
src = fetchurl {
url = "mirror://sourceforge/calibre/${name}.tar.xz";
- sha256 = "05n7kfih4mbhnvpzi5i821jl0na66si2ygz8cql931p2qcfhnixx";
+ sha256 = "1acj1i8hlbi99jjgcs9dl9ap7951m1p460srmkdyjmlljw1qhcbn";
};
inherit python;
diff --git a/pkgs/applications/misc/sakura/default.nix b/pkgs/applications/misc/sakura/default.nix
index 151b8a077d5..3febcfb17fb 100644
--- a/pkgs/applications/misc/sakura/default.nix
+++ b/pkgs/applications/misc/sakura/default.nix
@@ -1,15 +1,24 @@
-{ stdenv, fetchurl, cmake, pkgconfig, gtk, vte, pixman, gettext, perl }:
+{ stdenv, fetchurl, cmake, pkgconfig, gtk3, perl, vte }:
+
stdenv.mkDerivation rec {
name = "sakura-${version}";
- version = "2.4.2";
+ version = "3.2.0";
+
src = fetchurl {
url = "http://launchpad.net/sakura/trunk/${version}/+download/${name}.tar.bz2";
- sha256 = "1mpsjsk7dgz56h7yagd9aq0d92vj59yrz4ri6za3mfmglhn29rn5";
+ sha256 = "1pfvc35kckrzik5wx8ywhkhclr52rfp2syg46ix2nsdm72q6dl90";
};
- buildInputs = [ cmake pkgconfig gtk vte pixman gettext perl ];
- meta = {
- homepage = "http://www.pleyades.net/david/sakura.php";
+
+ nativeBuildInputs = [ cmake perl pkgconfig ];
+
+ buildInputs = [ gtk3 vte ];
+
+ meta = with stdenv.lib; {
description = "A terminal emulator based on GTK and VTE";
+ homepage = http://www.pleyades.net/david/projects/sakura;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ astsmtl codyopel ];
+ platforms = platforms.linux;
longDescription = ''
sakura is a terminal emulator based on GTK and VTE. It's a terminal
emulator with few dependencies, so you don't need a full GNOME desktop
@@ -20,8 +29,5 @@ stdenv.mkDerivation rec {
terminals in one window and adds a contextual menu with some basic
options. No more no less.
'';
- license = stdenv.lib.licenses.gpl2;
- maintainers = with stdenv.lib.maintainers; [ astsmtl ];
- platforms = with stdenv.lib.platforms; linux;
};
}
diff --git a/pkgs/applications/misc/taskwarrior/default.nix b/pkgs/applications/misc/taskwarrior/default.nix
index 35bba7ee28c..fa8b11adbf8 100644
--- a/pkgs/applications/misc/taskwarrior/default.nix
+++ b/pkgs/applications/misc/taskwarrior/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "taskwarrior-${version}";
- version = "2.3.0";
+ version = "2.4.0";
enableParallelBuilding = true;
src = fetchurl {
url = "http://www.taskwarrior.org/download/task-${version}.tar.gz";
- sha256 = "0wxcfq0n96vmcbwrlk2x377k8cc5k4i64ca6p02y74g6168ji6ib";
+ sha256 = "17hiv7zld06zb5xmyp96bw9xl6vp178fhffs660fxxpxn3srb9bg";
};
nativeBuildInputs = [ cmake libuuid gnutls ];
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
index adac4baa29c..15f2feb5a43 100644
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/default.nix
@@ -63,8 +63,6 @@ stdenv.mkDerivation {
rm -rf "$out/tools/gyp" # XXX: Don't even copy it in the first place.
'';
- preferLocalBuild = true;
-
passthru = {
inherit version channel;
plugins = fetchurl binary;
diff --git a/pkgs/applications/networking/browsers/luakit/default.nix b/pkgs/applications/networking/browsers/luakit/default.nix
new file mode 100644
index 00000000000..a3edaad37d4
--- /dev/null
+++ b/pkgs/applications/networking/browsers/luakit/default.nix
@@ -0,0 +1,55 @@
+{ stdenv , fetchurl , git , glib_networking , gsettings_desktop_schemas , gtk,
+help2man , libunique , lua5 , luafilesystem , luajit , luasqlite3, makeWrapper,
+pkgconfig , sqlite , webkit }:
+
+let
+ lualibs = [ luafilesystem luasqlite3 ];
+ getPath = lib : type : "${lib}/lib/lua/${lua5.luaversion}/?.${type};${lib}/share/lua/${lua5.luaversion}/?.${type}";
+ getLuaPath = lib : getPath lib "lua";
+ getLuaCPath = lib : getPath lib "so";
+ luaPath = stdenv.lib.concatStringsSep ";" (map getLuaPath lualibs);
+ luaCPath = stdenv.lib.concatStringsSep ";" (map getLuaCPath lualibs);
+in
+stdenv.mkDerivation {
+
+ name = "luakit-2012.09.13";
+
+ meta = with stdenv.lib; {
+ description = "Fast, small, webkit based browser framework extensible in Lua";
+ homepage = "http://luakit.org";
+ license = licenses.gpl3;
+ maintainers = with maintainers; [ matthiasbeyer ];
+ platforms = platforms.linux; # I only tested linux
+ };
+
+ src = fetchurl {
+ url = "https://github.com/mason-larobina/luakit/archive/2012.09.13-r1.tar.gz";
+ sha256 = "067g3bp5w20jypc8rx54dpbn3ysbgxzchgpq7sld5yh2z36s1l52";
+ };
+
+ buildInputs = [ git gsettings_desktop_schemas gtk help2man libunique lua5
+ luafilesystem luajit luasqlite3 makeWrapper pkgconfig sqlite webkit ];
+
+ postPatch = ''
+ sed -i -e "s/DESTDIR/INSTALLDIR/" ./Makefile
+ sed -i -e "s|/etc/xdg/luakit/|$out/etc/xdg/luakit/|" lib/lousy/util.lua
+ patchShebangs ./build-utils
+ '';
+
+ buildPhase = ''
+ make DEVELOPMENT_PATHS=0 USE_LUAJIT=1 INSTALLDIR=$out DESTDIR=$out PREFIX=$out USE_GTK3=1
+ '';
+
+ installPhase = let
+ luaKitPath = "$out/share/luakit/lib/?/init.lua;$out/share/luakit/lib/?.lua";
+ in ''
+ make DEVELOPMENT_PATHS=0 INSTALLDIR=$out DESTDIR=$out PREFIX=$out USE_GTK3=1 install
+ wrapProgram $out/bin/luakit \
+ --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
+ --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share:$out/usr/share/:$out/share/:$GSETTINGS_SCHEMAS_PATH" \
+ --prefix XDG_CONFIG_DIRS : "$out/etc/xdg" \
+ --set LUA_PATH '"${luaKitPath};${luaPath};"' \
+ --set LUA_CPATH '"${luaCPath};"'
+ '';
+
+}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
index fdc5d62127d..4ae7fca5398 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
@@ -36,7 +36,7 @@
let
# -> http://get.adobe.com/flashplayer/
- version = "11.2.202.440";
+ version = "11.2.202.442";
src =
if stdenv.system == "x86_64-linux" then
@@ -47,7 +47,7 @@ let
else rec {
inherit version;
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
- sha256 = "1sx17b7w3za274r0jxb80qn3m3hvij6faka45say3a60ps8bihc4";
+ sha256 = "08ni1mllp98d7wawz35lx8ydymya8nspb90mq29ivbyrkx5aal28";
}
else if stdenv.system == "i686-linux" then
if debug then
@@ -60,7 +60,7 @@ let
else rec {
inherit version;
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
- sha256 = "1qn8sg1kk61cv7vrwn6l5sb1mmczfcas1b85cq2mzzjg4af7wcf4";
+ sha256 = "00728q8jp40llpsfw2n5q9w29isyy3a64xlisjizyh3chb6bkkdm";
}
else throw "Flash Player is not supported on this platform";
diff --git a/pkgs/applications/networking/cluster/panamax/Gemfile-api b/pkgs/applications/networking/cluster/panamax/Gemfile-api
new file mode 100644
index 00000000000..82085aa6db0
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/Gemfile-api
@@ -0,0 +1,23 @@
+source 'https://rubygems.org'
+
+gem 'rails', '4.1.7'
+gem 'puma', '2.8.2'
+gem 'sqlite3', '1.3.9'
+gem 'faraday_middleware', '0.9.0'
+gem 'docker-api', '1.13.0', require: 'docker'
+gem 'fleet-api', '0.6.0', require: 'fleet'
+gem 'active_model_serializers', '0.9.0'
+gem 'octokit', '3.2.0'
+gem 'kmts', '2.0.1'
+
+group :test, :development do
+ gem 'rspec-rails'
+ gem 'its'
+end
+
+group :test do
+ gem 'coveralls', '0.7.0'
+ gem 'shoulda-matchers', '2.6.1'
+ gem 'database_cleaner', '1.3.0'
+ gem 'webmock', '1.20.0'
+end
diff --git a/pkgs/applications/networking/cluster/panamax/Gemfile-api.lock b/pkgs/applications/networking/cluster/panamax/Gemfile-api.lock
new file mode 100644
index 00000000000..e0ebe72132b
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/Gemfile-api.lock
@@ -0,0 +1,164 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ actionmailer (4.1.7)
+ actionpack (= 4.1.7)
+ actionview (= 4.1.7)
+ mail (~> 2.5, >= 2.5.4)
+ actionpack (4.1.7)
+ actionview (= 4.1.7)
+ activesupport (= 4.1.7)
+ rack (~> 1.5.2)
+ rack-test (~> 0.6.2)
+ actionview (4.1.7)
+ activesupport (= 4.1.7)
+ builder (~> 3.1)
+ erubis (~> 2.7.0)
+ active_model_serializers (0.9.0)
+ activemodel (>= 3.2)
+ activemodel (4.1.7)
+ activesupport (= 4.1.7)
+ builder (~> 3.1)
+ activerecord (4.1.7)
+ activemodel (= 4.1.7)
+ activesupport (= 4.1.7)
+ arel (~> 5.0.0)
+ activesupport (4.1.7)
+ i18n (~> 0.6, >= 0.6.9)
+ json (~> 1.7, >= 1.7.7)
+ minitest (~> 5.1)
+ thread_safe (~> 0.1)
+ tzinfo (~> 1.1)
+ addressable (2.3.6)
+ archive-tar-minitar (0.5.2)
+ arel (5.0.1.20140414130214)
+ builder (3.2.2)
+ coveralls (0.7.0)
+ multi_json (~> 1.3)
+ rest-client
+ simplecov (>= 0.7)
+ term-ansicolor
+ thor
+ crack (0.4.2)
+ safe_yaml (~> 1.0.0)
+ database_cleaner (1.3.0)
+ diff-lcs (1.2.5)
+ docile (1.1.5)
+ docker-api (1.13.0)
+ archive-tar-minitar
+ excon (>= 0.37.0)
+ json
+ erubis (2.7.0)
+ excon (0.37.0)
+ faraday (0.8.9)
+ multipart-post (~> 1.2.0)
+ faraday_middleware (0.9.0)
+ faraday (>= 0.7.4, < 0.9)
+ fleet-api (0.6.0)
+ faraday (= 0.8.9)
+ faraday_middleware (= 0.9.0)
+ hike (1.2.3)
+ i18n (0.6.11)
+ its (0.2.0)
+ rspec-core
+ json (1.8.1)
+ kmts (2.0.1)
+ mail (2.6.3)
+ mime-types (>= 1.16, < 3)
+ mime-types (2.4.3)
+ minitest (5.4.3)
+ multi_json (1.10.1)
+ multipart-post (1.2.0)
+ octokit (3.2.0)
+ sawyer (~> 0.5.3)
+ puma (2.8.2)
+ rack (>= 1.1, < 2.0)
+ rack (1.5.2)
+ rack-test (0.6.2)
+ rack (>= 1.0)
+ rails (4.1.7)
+ actionmailer (= 4.1.7)
+ actionpack (= 4.1.7)
+ actionview (= 4.1.7)
+ activemodel (= 4.1.7)
+ activerecord (= 4.1.7)
+ activesupport (= 4.1.7)
+ bundler (>= 1.3.0, < 2.0)
+ railties (= 4.1.7)
+ sprockets-rails (~> 2.0)
+ railties (4.1.7)
+ actionpack (= 4.1.7)
+ activesupport (= 4.1.7)
+ rake (>= 0.8.7)
+ thor (>= 0.18.1, < 2.0)
+ rake (10.4.0)
+ rest-client (1.6.7)
+ mime-types (>= 1.16)
+ rspec-core (3.1.7)
+ rspec-support (~> 3.1.0)
+ rspec-expectations (3.1.2)
+ diff-lcs (>= 1.2.0, < 2.0)
+ rspec-support (~> 3.1.0)
+ rspec-mocks (3.1.3)
+ rspec-support (~> 3.1.0)
+ rspec-rails (3.1.0)
+ actionpack (>= 3.0)
+ activesupport (>= 3.0)
+ railties (>= 3.0)
+ rspec-core (~> 3.1.0)
+ rspec-expectations (~> 3.1.0)
+ rspec-mocks (~> 3.1.0)
+ rspec-support (~> 3.1.0)
+ rspec-support (3.1.2)
+ safe_yaml (1.0.4)
+ sawyer (0.5.4)
+ addressable (~> 2.3.5)
+ faraday (~> 0.8, < 0.10)
+ shoulda-matchers (2.6.1)
+ activesupport (>= 3.0.0)
+ simplecov (0.9.1)
+ docile (~> 1.1.0)
+ multi_json (~> 1.0)
+ simplecov-html (~> 0.8.0)
+ simplecov-html (0.8.0)
+ sprockets (2.12.3)
+ hike (~> 1.2)
+ multi_json (~> 1.0)
+ rack (~> 1.0)
+ tilt (~> 1.1, != 1.3.0)
+ sprockets-rails (2.2.0)
+ actionpack (>= 3.0)
+ activesupport (>= 3.0)
+ sprockets (>= 2.8, < 4.0)
+ sqlite3 (1.3.9)
+ term-ansicolor (1.3.0)
+ tins (~> 1.0)
+ thor (0.19.1)
+ thread_safe (0.3.4)
+ tilt (1.4.1)
+ tins (1.3.0)
+ tzinfo (1.2.2)
+ thread_safe (~> 0.1)
+ webmock (1.20.0)
+ addressable (>= 2.3.6)
+ crack (>= 0.3.2)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ active_model_serializers (= 0.9.0)
+ coveralls (= 0.7.0)
+ database_cleaner (= 1.3.0)
+ docker-api (= 1.13.0)
+ faraday_middleware (= 0.9.0)
+ fleet-api (= 0.6.0)
+ its
+ kmts (= 2.0.1)
+ octokit (= 3.2.0)
+ puma (= 2.8.2)
+ rails (= 4.1.7)
+ rspec-rails
+ shoulda-matchers (= 2.6.1)
+ sqlite3 (= 1.3.9)
+ webmock (= 1.20.0)
diff --git a/pkgs/applications/networking/cluster/panamax/Gemfile-ui b/pkgs/applications/networking/cluster/panamax/Gemfile-ui
new file mode 100644
index 00000000000..7efcabfd9e5
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/Gemfile-ui
@@ -0,0 +1,30 @@
+source 'https://rubygems.org'
+
+gem 'rails', '4.1.7'
+gem 'puma', '2.8.2'
+gem 'sass', '3.3.9'
+gem 'therubyracer', '0.12.1', platforms: :ruby
+gem 'haml', '4.0.5'
+gem 'uglifier', '2.5.1'
+gem 'ctl_base_ui'
+gem 'activeresource', '4.0.0'
+gem 'kramdown', '1.4.0'
+gem 'zeroclipboard-rails'
+
+
+group :test, :development do
+ gem 'rspec-rails', '2.14.2'
+ gem 'capybara', '2.3.0'
+ gem 'teaspoon', '0.8.0'
+ gem 'phantomjs', '1.9.7.1'
+ gem 'dotenv-rails', '0.11.1'
+ gem 'pry'
+ gem 'pry-byebug'
+ gem 'pry-stack_explorer'
+end
+
+group :test do
+ gem 'webmock', '1.18.0'
+ gem 'sinatra', '1.4.5'
+ gem 'coveralls', '0.7.0'
+end
diff --git a/pkgs/applications/networking/cluster/panamax/Gemfile-ui.lock b/pkgs/applications/networking/cluster/panamax/Gemfile-ui.lock
new file mode 100644
index 00000000000..67504f41a86
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/Gemfile-ui.lock
@@ -0,0 +1,217 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ actionmailer (4.1.7)
+ actionpack (= 4.1.7)
+ actionview (= 4.1.7)
+ mail (~> 2.5, >= 2.5.4)
+ actionpack (4.1.7)
+ actionview (= 4.1.7)
+ activesupport (= 4.1.7)
+ rack (~> 1.5.2)
+ rack-test (~> 0.6.2)
+ actionview (4.1.7)
+ activesupport (= 4.1.7)
+ builder (~> 3.1)
+ erubis (~> 2.7.0)
+ activemodel (4.1.7)
+ activesupport (= 4.1.7)
+ builder (~> 3.1)
+ activerecord (4.1.7)
+ activemodel (= 4.1.7)
+ activesupport (= 4.1.7)
+ arel (~> 5.0.0)
+ activeresource (4.0.0)
+ activemodel (~> 4.0)
+ activesupport (~> 4.0)
+ rails-observers (~> 0.1.1)
+ activesupport (4.1.7)
+ i18n (~> 0.6, >= 0.6.9)
+ json (~> 1.7, >= 1.7.7)
+ minitest (~> 5.1)
+ thread_safe (~> 0.1)
+ tzinfo (~> 1.1)
+ addressable (2.3.6)
+ arel (5.0.1.20140414130214)
+ binding_of_caller (0.7.2)
+ debug_inspector (>= 0.0.1)
+ builder (3.2.2)
+ byebug (3.5.1)
+ columnize (~> 0.8)
+ debugger-linecache (~> 1.2)
+ slop (~> 3.6)
+ capybara (2.3.0)
+ mime-types (>= 1.16)
+ nokogiri (>= 1.3.3)
+ rack (>= 1.0.0)
+ rack-test (>= 0.5.4)
+ xpath (~> 2.0)
+ coderay (1.1.0)
+ columnize (0.8.9)
+ coveralls (0.7.0)
+ multi_json (~> 1.3)
+ rest-client
+ simplecov (>= 0.7)
+ term-ansicolor
+ thor
+ crack (0.4.2)
+ safe_yaml (~> 1.0.0)
+ ctl_base_ui (0.0.4)
+ haml (~> 4.0)
+ jquery-rails (~> 3.1)
+ jquery-ui-rails (~> 4.2)
+ rails (~> 4.1)
+ sass (~> 3.3)
+ debug_inspector (0.0.2)
+ debugger-linecache (1.2.0)
+ diff-lcs (1.2.5)
+ docile (1.1.5)
+ dotenv (0.11.1)
+ dotenv-deployment (~> 0.0.2)
+ dotenv-deployment (0.0.2)
+ dotenv-rails (0.11.1)
+ dotenv (= 0.11.1)
+ erubis (2.7.0)
+ execjs (2.2.1)
+ haml (4.0.5)
+ tilt
+ hike (1.2.3)
+ i18n (0.6.11)
+ jquery-rails (3.1.2)
+ railties (>= 3.0, < 5.0)
+ thor (>= 0.14, < 2.0)
+ jquery-ui-rails (4.2.1)
+ railties (>= 3.2.16)
+ json (1.8.1)
+ kramdown (1.4.0)
+ libv8 (3.16.14.7)
+ mail (2.6.3)
+ mime-types (>= 1.16, < 3)
+ method_source (0.8.2)
+ mime-types (2.4.3)
+ mini_portile (0.6.0)
+ minitest (5.4.3)
+ multi_json (1.10.1)
+ nokogiri (1.6.2.1)
+ mini_portile (= 0.6.0)
+ phantomjs (1.9.7.1)
+ pry (0.10.1)
+ coderay (~> 1.1.0)
+ method_source (~> 0.8.1)
+ slop (~> 3.4)
+ pry-byebug (2.0.0)
+ byebug (~> 3.4)
+ pry (~> 0.10)
+ pry-stack_explorer (0.4.9.1)
+ binding_of_caller (>= 0.7)
+ pry (>= 0.9.11)
+ puma (2.8.2)
+ rack (>= 1.1, < 2.0)
+ rack (1.5.2)
+ rack-protection (1.5.3)
+ rack
+ rack-test (0.6.2)
+ rack (>= 1.0)
+ rails (4.1.7)
+ actionmailer (= 4.1.7)
+ actionpack (= 4.1.7)
+ actionview (= 4.1.7)
+ activemodel (= 4.1.7)
+ activerecord (= 4.1.7)
+ activesupport (= 4.1.7)
+ bundler (>= 1.3.0, < 2.0)
+ railties (= 4.1.7)
+ sprockets-rails (~> 2.0)
+ rails-observers (0.1.2)
+ activemodel (~> 4.0)
+ railties (4.1.7)
+ actionpack (= 4.1.7)
+ activesupport (= 4.1.7)
+ rake (>= 0.8.7)
+ thor (>= 0.18.1, < 2.0)
+ rake (10.4.1)
+ ref (1.0.5)
+ rest-client (1.6.7)
+ mime-types (>= 1.16)
+ rspec-core (2.14.8)
+ rspec-expectations (2.14.5)
+ diff-lcs (>= 1.1.3, < 2.0)
+ rspec-mocks (2.14.6)
+ rspec-rails (2.14.2)
+ actionpack (>= 3.0)
+ activemodel (>= 3.0)
+ activesupport (>= 3.0)
+ railties (>= 3.0)
+ rspec-core (~> 2.14.0)
+ rspec-expectations (~> 2.14.0)
+ rspec-mocks (~> 2.14.0)
+ safe_yaml (1.0.3)
+ sass (3.3.9)
+ simplecov (0.9.1)
+ docile (~> 1.1.0)
+ multi_json (~> 1.0)
+ simplecov-html (~> 0.8.0)
+ simplecov-html (0.8.0)
+ sinatra (1.4.5)
+ rack (~> 1.4)
+ rack-protection (~> 1.4)
+ tilt (~> 1.3, >= 1.3.4)
+ slop (3.6.0)
+ sprockets (2.12.3)
+ hike (~> 1.2)
+ multi_json (~> 1.0)
+ rack (~> 1.0)
+ tilt (~> 1.1, != 1.3.0)
+ sprockets-rails (2.2.2)
+ actionpack (>= 3.0)
+ activesupport (>= 3.0)
+ sprockets (>= 2.8, < 4.0)
+ teaspoon (0.8.0)
+ railties (>= 3.2.5, < 5)
+ term-ansicolor (1.3.0)
+ tins (~> 1.0)
+ therubyracer (0.12.1)
+ libv8 (~> 3.16.14.0)
+ ref
+ thor (0.19.1)
+ thread_safe (0.3.4)
+ tilt (1.4.1)
+ tins (1.1.0)
+ tzinfo (1.2.2)
+ thread_safe (~> 0.1)
+ uglifier (2.5.1)
+ execjs (>= 0.3.0)
+ json (>= 1.8.0)
+ webmock (1.18.0)
+ addressable (>= 2.3.6)
+ crack (>= 0.3.2)
+ xpath (2.0.0)
+ nokogiri (~> 1.3)
+ zeroclipboard-rails (0.1.0)
+ railties (>= 3.1)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ activeresource (= 4.0.0)
+ capybara (= 2.3.0)
+ coveralls (= 0.7.0)
+ ctl_base_ui
+ dotenv-rails (= 0.11.1)
+ haml (= 4.0.5)
+ kramdown (= 1.4.0)
+ phantomjs (= 1.9.7.1)
+ pry
+ pry-byebug
+ pry-stack_explorer
+ puma (= 2.8.2)
+ rails (= 4.1.7)
+ rspec-rails (= 2.14.2)
+ sass (= 3.3.9)
+ sinatra (= 1.4.5)
+ teaspoon (= 0.8.0)
+ therubyracer (= 0.12.1)
+ uglifier (= 2.5.1)
+ webmock (= 1.18.0)
+ zeroclipboard-rails
diff --git a/pkgs/applications/networking/cluster/panamax/api.nix b/pkgs/applications/networking/cluster/panamax/api.nix
new file mode 100644
index 00000000000..415392627ea
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/api.nix
@@ -0,0 +1,75 @@
+{ stdenv, buildEnv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler_HEAD
+, ruby, libxslt, libxml2, sqlite, openssl, cacert, docker
+, dataDir ? "/var/lib/panamax-api" }:
+
+with stdenv.lib;
+
+let
+ database_yml = builtins.toFile "database.yml" ''
+ production:
+ adapter: sqlite3
+ database: <%= ENV["PANAMAX_DATABASE_PATH"] || "${dataDir}/db/mnt/db.sqlite3" %>
+ timeout: 5000
+ '';
+ env = bundlerEnv {
+ name = "panamax-api-gems";
+ inherit ruby;
+ gemset = ./gemset-api.nix;
+ gemfile = ./Gemfile-api;
+ lockfile = ./Gemfile-api.lock;
+ };
+ bundler = bundler_HEAD.override { inherit ruby; };
+in stdenv.mkDerivation rec {
+ name = "panamax-api-${version}";
+ version = "0.2.11";
+
+ src = fetchgit {
+ rev = "refs/tags/v${version}";
+ url = "git://github.com/CenturyLinkLabs/panamax-api";
+ sha256 = "01sz7jibn1rqfga85pr4p8wk6jfldzfaxj1726vs6znmcwhfkcgj";
+ };
+
+ buildInputs = [ makeWrapper sqlite openssl env.ruby bundler ];
+
+ setSourceRoot = ''
+ mkdir -p $out/share
+ cp -R panamax-api $out/share/panamax-api
+ export sourceRoot="$out/share/panamax-api"
+ '';
+
+ postPatch = ''
+ find . -type f -exec sed -e 's|/usr/bin/docker|${docker}/bin/docker|g' -i "{}" \;
+ '';
+
+ configurePhase = ''
+ export HOME=$PWD
+ export GEM_HOME=${env}/${env.ruby.gemPath}
+ export RAILS_ENV=production
+
+ ln -sf ${database_yml} config/database.yml
+ '';
+
+ installPhase = ''
+ rm -rf log tmp
+ mv ./db ./_db
+ ln -sf ${dataDir}/{db,state/log,state/tmp} .
+
+ mkdir -p $out/bin
+ makeWrapper bin/bundle "$out/bin/bundle" \
+ --run "cd $out/share/panamax-api" \
+ --prefix "PATH" : "$out/share/panamax-api/bin:${env.ruby}/bin:$PATH" \
+ --prefix "HOME" : "$out/share/panamax-api" \
+ --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
+ --prefix "OPENSSL_X509_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
+ --prefix "SSL_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
+ --prefix "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}"
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/CenturyLinkLabs/panamax-api;
+ description = "The API behind The Panamax UI";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ matejc offline ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/networking/cluster/panamax/gemset-api.nix b/pkgs/applications/networking/cluster/panamax/gemset-api.nix
new file mode 100644
index 00000000000..62cf5dcd3af
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/gemset-api.nix
@@ -0,0 +1,571 @@
+let
+ pkgs = import { };
+in {
+ "actionmailer" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
+ };
+ dependencies = [
+ "actionpack"
+ "actionview"
+ "mail"
+ ];
+ };
+ "actionpack" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
+ };
+ dependencies = [
+ "actionview"
+ "activesupport"
+ "rack"
+ "rack-test"
+ ];
+ };
+ "actionview" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
+ };
+ dependencies = [
+ "activesupport"
+ "builder"
+ "erubis"
+ ];
+ };
+ "active_model_serializers" = {
+ version = "0.9.0";
+ source = {
+ type = "gem";
+ sha256 = "1ws3gx3wwlm17w7k0agwzmcmww6627lvqaqm828lzm3g1xqilkkl";
+ };
+ dependencies = [
+ "activemodel"
+ ];
+ };
+ "activemodel" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
+ };
+ dependencies = [
+ "activesupport"
+ "builder"
+ ];
+ };
+ "activerecord" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
+ };
+ dependencies = [
+ "activemodel"
+ "activesupport"
+ "arel"
+ ];
+ };
+ "activesupport" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
+ };
+ dependencies = [
+ "i18n"
+ "json"
+ "minitest"
+ "thread_safe"
+ "tzinfo"
+ ];
+ };
+ "addressable" = {
+ version = "2.3.6";
+ source = {
+ type = "gem";
+ sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
+ };
+ };
+ "archive-tar-minitar" = {
+ version = "0.5.2";
+ source = {
+ type = "gem";
+ sha256 = "1j666713r3cc3wb0042x0wcmq2v11vwwy5pcaayy5f0lnd26iqig";
+ };
+ };
+ "arel" = {
+ version = "5.0.1.20140414130214";
+ source = {
+ type = "gem";
+ sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
+ };
+ };
+ "builder" = {
+ version = "3.2.2";
+ source = {
+ type = "gem";
+ sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
+ };
+ };
+ "coveralls" = {
+ version = "0.7.0";
+ source = {
+ type = "gem";
+ sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
+ };
+ dependencies = [
+ "multi_json"
+ "rest-client"
+ "simplecov"
+ "term-ansicolor"
+ "thor"
+ ];
+ };
+ "crack" = {
+ version = "0.4.2";
+ source = {
+ type = "gem";
+ sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
+ };
+ dependencies = [
+ "safe_yaml"
+ ];
+ };
+ "database_cleaner" = {
+ version = "1.3.0";
+ source = {
+ type = "gem";
+ sha256 = "19w25yda684pg29bggq26wy4lpyjvzscwg2hx3hmmmpysiwfnxgn";
+ };
+ };
+ "diff-lcs" = {
+ version = "1.2.5";
+ source = {
+ type = "gem";
+ sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
+ };
+ };
+ "docile" = {
+ version = "1.1.5";
+ source = {
+ type = "gem";
+ sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
+ };
+ };
+ "docker-api" = {
+ version = "1.13.0";
+ source = {
+ type = "gem";
+ sha256 = "1rara27gn7lxaf12dqkx8s1clssg10jndfcy4wz2fv6ms1i1lnp6";
+ };
+ dependencies = [
+ "archive-tar-minitar"
+ "excon"
+ "json"
+ ];
+ };
+ "erubis" = {
+ version = "2.7.0";
+ source = {
+ type = "gem";
+ sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
+ };
+ };
+ "excon" = {
+ version = "0.37.0";
+ source = {
+ type = "gem";
+ sha256 = "05x7asmsq5m419n1lhzk9bic02gwng4cqmrcqsfnd6kmkwm8csv2";
+ };
+ };
+ "faraday" = {
+ version = "0.8.9";
+ source = {
+ type = "gem";
+ sha256 = "17d79fsgx0xwh0mfxyz5pbr435qlw79phlfvifc546w2axdkp718";
+ };
+ dependencies = [
+ "multipart-post"
+ ];
+ };
+ "faraday_middleware" = {
+ version = "0.9.0";
+ source = {
+ type = "gem";
+ sha256 = "1kwvi2sdxd6j764a7q5iir73dw2v6816zx3l8cgfv0wr2m47icq2";
+ };
+ dependencies = [
+ "faraday"
+ ];
+ };
+ "fleet-api" = {
+ version = "0.6.0";
+ source = {
+ type = "gem";
+ sha256 = "0136mzc0fxp6mzh38n6xbg87cw9g9vq1nrlr3ylazbflvmlxgan6";
+ };
+ dependencies = [
+ "faraday"
+ "faraday_middleware"
+ ];
+ };
+ "hike" = {
+ version = "1.2.3";
+ source = {
+ type = "gem";
+ sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
+ };
+ };
+ "i18n" = {
+ version = "0.6.11";
+ source = {
+ type = "gem";
+ sha256 = "0fwjlgmgry2blf8zlxn9c555cf4a16p287l599kz5104ncjxlzdk";
+ };
+ };
+ "its" = {
+ version = "0.2.0";
+ source = {
+ type = "gem";
+ sha256 = "0rxwds9ipqp48mzqcaxzmfcqhawazg0zlhc1avv3i2cmm3np1z8g";
+ };
+ dependencies = [
+ "rspec-core"
+ ];
+ };
+ "json" = {
+ version = "1.8.1";
+ source = {
+ type = "gem";
+ sha256 = "0002bsycvizvkmk1jyv8px1hskk6wrjfk4f7x5byi8gxm6zzn6wn";
+ };
+ };
+ "kmts" = {
+ version = "2.0.1";
+ source = {
+ type = "gem";
+ sha256 = "1wk680q443lg35a25am6i8xawf16iqg5xnq1m8xd2gib4dsy1d8v";
+ };
+ };
+ "mail" = {
+ version = "2.6.3";
+ source = {
+ type = "gem";
+ sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
+ };
+ dependencies = [
+ "mime-types"
+ ];
+ };
+ "mime-types" = {
+ version = "2.4.3";
+ source = {
+ type = "gem";
+ sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
+ };
+ };
+ "minitest" = {
+ version = "5.4.3";
+ source = {
+ type = "gem";
+ sha256 = "1ws2cphg9jh45nrvs43s2ww5r14nb026bwlbwwpi0jz6qsqm86x4";
+ };
+ };
+ "multi_json" = {
+ version = "1.10.1";
+ source = {
+ type = "gem";
+ sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
+ };
+ };
+ "multipart-post" = {
+ version = "1.2.0";
+ source = {
+ type = "gem";
+ sha256 = "12p7lnmc52di1r4h73h6xrpppplzyyhani9p7wm8l4kgf1hnmwnc";
+ };
+ };
+ "octokit" = {
+ version = "3.2.0";
+ source = {
+ type = "gem";
+ sha256 = "07ll3x1hv72zssb4hkdw56xg3xk6x4fch4yf38zljvbh388r11ng";
+ };
+ dependencies = [
+ "sawyer"
+ ];
+ };
+ "puma" = {
+ version = "2.8.2";
+ source = {
+ type = "gem";
+ sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
+ };
+ dependencies = [
+ "rack"
+ ];
+ buildInputs = [ pkgs.openssl ];
+ };
+ "rack" = {
+ version = "1.5.2";
+ source = {
+ type = "gem";
+ sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
+ };
+ };
+ "rack-test" = {
+ version = "0.6.2";
+ source = {
+ type = "gem";
+ sha256 = "01mk715ab5qnqf6va8k3hjsvsmplrfqpz6g58qw4m3l8mim0p4ky";
+ };
+ dependencies = [
+ "rack"
+ ];
+ };
+ "rails" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
+ };
+ dependencies = [
+ "actionmailer"
+ "actionpack"
+ "actionview"
+ "activemodel"
+ "activerecord"
+ "activesupport"
+ "railties"
+ "sprockets-rails"
+ ];
+ };
+ "railties" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
+ };
+ dependencies = [
+ "actionpack"
+ "activesupport"
+ "rake"
+ "thor"
+ ];
+ };
+ "rake" = {
+ version = "10.4.0";
+ source = {
+ type = "gem";
+ sha256 = "0a10xzqc1lh6gjkajkslr0n40wjrniyiyzxkp9m5fc8wf7b74zw8";
+ };
+ };
+ "rest-client" = {
+ version = "1.6.7";
+ source = {
+ type = "gem";
+ sha256 = "0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853";
+ };
+ dependencies = [
+ "mime-types"
+ ];
+ };
+ "rspec-core" = {
+ version = "3.1.7";
+ source = {
+ type = "gem";
+ sha256 = "01bawvln663gffljwzpq3mrpa061cghjbvfbq15jvhmip3csxqc9";
+ };
+ dependencies = [
+ "rspec-support"
+ ];
+ };
+ "rspec-expectations" = {
+ version = "3.1.2";
+ source = {
+ type = "gem";
+ sha256 = "0m8d36wng1lpbcs54zhg1rxh63rgj345k3p0h0c06lgknz339nzh";
+ };
+ dependencies = [
+ "diff-lcs"
+ "rspec-support"
+ ];
+ };
+ "rspec-mocks" = {
+ version = "3.1.3";
+ source = {
+ type = "gem";
+ sha256 = "0gxk5w3klia4zsnp0svxck43xxwwfdqvhr3srv6p30f3m5q6rmzr";
+ };
+ dependencies = [
+ "rspec-support"
+ ];
+ };
+ "rspec-rails" = {
+ version = "3.1.0";
+ source = {
+ type = "gem";
+ sha256 = "1b1in3n1dc1bpf9wb3p3b2ynq05iacmr48jxzc73lj4g44ksh3wq";
+ };
+ dependencies = [
+ "actionpack"
+ "activesupport"
+ "railties"
+ "rspec-core"
+ "rspec-expectations"
+ "rspec-mocks"
+ "rspec-support"
+ ];
+ };
+ "rspec-support" = {
+ version = "3.1.2";
+ source = {
+ type = "gem";
+ sha256 = "14y6v9r9lrh91ry9r79h85v0f3y9ja25w42nv5z9n0bipfcwhprb";
+ };
+ };
+ "safe_yaml" = {
+ version = "1.0.4";
+ source = {
+ type = "gem";
+ sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+ };
+ };
+ "sawyer" = {
+ version = "0.5.4";
+ source = {
+ type = "gem";
+ sha256 = "01kl4zpf0gaacnkra5nikrzfpwj8f10hsvgyzm7z2s1mz4iipx2v";
+ };
+ dependencies = [
+ "addressable"
+ "faraday"
+ ];
+ };
+ "shoulda-matchers" = {
+ version = "2.6.1";
+ source = {
+ type = "gem";
+ sha256 = "1p3jhvd4dsj6d7nbmvnqhqhpmb8pnr05pi7jv9ajwqcys8140mc1";
+ };
+ dependencies = [
+ "activesupport"
+ ];
+ };
+ "simplecov" = {
+ version = "0.9.1";
+ source = {
+ type = "gem";
+ sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
+ };
+ dependencies = [
+ "docile"
+ "multi_json"
+ "simplecov-html"
+ ];
+ };
+ "simplecov-html" = {
+ version = "0.8.0";
+ source = {
+ type = "gem";
+ sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
+ };
+ };
+ "sprockets" = {
+ version = "2.12.3";
+ source = {
+ type = "gem";
+ sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
+ };
+ dependencies = [
+ "hike"
+ "multi_json"
+ "rack"
+ "tilt"
+ ];
+ };
+ "sprockets-rails" = {
+ version = "2.2.0";
+ source = {
+ type = "gem";
+ sha256 = "042fxqskvaa0wn9kpy02nv6p7sa355py9pi58zw96l30170sd3hl";
+ };
+ dependencies = [
+ "actionpack"
+ "activesupport"
+ "sprockets"
+ ];
+ };
+ "sqlite3" = {
+ version = "1.3.9";
+ source = {
+ type = "gem";
+ sha256 = "07m6a6flmyyi0rkg0j7x1a9861zngwjnximfh95cli2zzd57914r";
+ };
+ };
+ "term-ansicolor" = {
+ version = "1.3.0";
+ source = {
+ type = "gem";
+ sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
+ };
+ dependencies = [
+ "tins"
+ ];
+ };
+ "thor" = {
+ version = "0.19.1";
+ source = {
+ type = "gem";
+ sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
+ };
+ };
+ "thread_safe" = {
+ version = "0.3.4";
+ source = {
+ type = "gem";
+ sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
+ };
+ };
+ "tilt" = {
+ version = "1.4.1";
+ source = {
+ type = "gem";
+ sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
+ };
+ };
+ "tins" = {
+ version = "1.3.0";
+ source = {
+ type = "gem";
+ sha256 = "1yxa5kyp9mw4w866wlg7c32ingzqxnzh3ir9yf06pwpkmq3mrbdi";
+ };
+ };
+ "tzinfo" = {
+ version = "1.2.2";
+ source = {
+ type = "gem";
+ sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
+ };
+ dependencies = [
+ "thread_safe"
+ ];
+ };
+ "webmock" = {
+ version = "1.20.0";
+ source = {
+ type = "gem";
+ sha256 = "0bl5v0xzcj24lx7xpsnywv3liqnqb5lfxysmmfb2fgi0n8586i6m";
+ };
+ dependencies = [
+ "addressable"
+ "crack"
+ ];
+ };
+}
diff --git a/pkgs/applications/networking/cluster/panamax/gemset-ui.nix b/pkgs/applications/networking/cluster/panamax/gemset-ui.nix
new file mode 100644
index 00000000000..3793a250215
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/gemset-ui.nix
@@ -0,0 +1,760 @@
+let
+ pkgs = import { };
+in {
+ "actionmailer" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
+ };
+ dependencies = [
+ "actionpack"
+ "actionview"
+ "mail"
+ ];
+ };
+ "actionpack" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
+ };
+ dependencies = [
+ "actionview"
+ "activesupport"
+ "rack"
+ "rack-test"
+ ];
+ };
+ "actionview" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
+ };
+ dependencies = [
+ "activesupport"
+ "builder"
+ "erubis"
+ ];
+ };
+ "activemodel" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
+ };
+ dependencies = [
+ "activesupport"
+ "builder"
+ ];
+ };
+ "activerecord" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
+ };
+ dependencies = [
+ "activemodel"
+ "activesupport"
+ "arel"
+ ];
+ };
+ "activeresource" = {
+ version = "4.0.0";
+ source = {
+ type = "gem";
+ sha256 = "0fc5igjijyjzsl9q5kybkdzhc92zv8wsv0ifb0y90i632jx6d4jq";
+ };
+ dependencies = [
+ "activemodel"
+ "activesupport"
+ "rails-observers"
+ ];
+ };
+ "activesupport" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
+ };
+ dependencies = [
+ "i18n"
+ "json"
+ "minitest"
+ "thread_safe"
+ "tzinfo"
+ ];
+ };
+ "addressable" = {
+ version = "2.3.6";
+ source = {
+ type = "gem";
+ sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
+ };
+ };
+ "arel" = {
+ version = "5.0.1.20140414130214";
+ source = {
+ type = "gem";
+ sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
+ };
+ };
+ "binding_of_caller" = {
+ version = "0.7.2";
+ source = {
+ type = "gem";
+ sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk";
+ };
+ dependencies = [
+ "debug_inspector"
+ ];
+ };
+ "builder" = {
+ version = "3.2.2";
+ source = {
+ type = "gem";
+ sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
+ };
+ };
+ "byebug" = {
+ version = "3.5.1";
+ source = {
+ type = "gem";
+ sha256 = "0ldc2r0b316rrn2fgdgiznskj9gb0q9n60243laq7nqw9na8wdan";
+ };
+ dependencies = [
+ "columnize"
+ "debugger-linecache"
+ "slop"
+ ];
+ };
+ "capybara" = {
+ version = "2.3.0";
+ source = {
+ type = "gem";
+ sha256 = "12x24zsn3y7sigmz45ijd9bkq7l14r2a00ay6k9mdgrbncbr3ins";
+ };
+ dependencies = [
+ "mime-types"
+ "nokogiri"
+ "rack"
+ "rack-test"
+ "xpath"
+ ];
+ };
+ "coderay" = {
+ version = "1.1.0";
+ source = {
+ type = "gem";
+ sha256 = "059wkzlap2jlkhg460pkwc1ay4v4clsmg1bp4vfzjzkgwdckr52s";
+ };
+ };
+ "columnize" = {
+ version = "0.8.9";
+ source = {
+ type = "gem";
+ sha256 = "1f3azq8pvdaaclljanwhab78hdw40k908ma2cwk59qzj4hvf7mip";
+ };
+ };
+ "coveralls" = {
+ version = "0.7.0";
+ source = {
+ type = "gem";
+ sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
+ };
+ dependencies = [
+ "multi_json"
+ "rest-client"
+ "simplecov"
+ "term-ansicolor"
+ "thor"
+ ];
+ };
+ "crack" = {
+ version = "0.4.2";
+ source = {
+ type = "gem";
+ sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
+ };
+ dependencies = [
+ "safe_yaml"
+ ];
+ };
+ "ctl_base_ui" = {
+ version = "0.0.4";
+ source = {
+ type = "gem";
+ sha256 = "0h0dbl0mf6cql7yp10jywv22rn0iy2188phdxvr2ladwwn2vxf5d";
+ };
+ dependencies = [
+ "haml"
+ "jquery-rails"
+ "jquery-ui-rails"
+ "rails"
+ "sass"
+ ];
+ };
+ "debug_inspector" = {
+ version = "0.0.2";
+ source = {
+ type = "gem";
+ sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m";
+ };
+ };
+ "debugger-linecache" = {
+ version = "1.2.0";
+ source = {
+ type = "gem";
+ sha256 = "0iwyx190fd5vfwj1gzr8pg3m374kqqix4g4fc4qw29sp54d3fpdz";
+ };
+ };
+ "diff-lcs" = {
+ version = "1.2.5";
+ source = {
+ type = "gem";
+ sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
+ };
+ };
+ "docile" = {
+ version = "1.1.5";
+ source = {
+ type = "gem";
+ sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
+ };
+ };
+ "dotenv" = {
+ version = "0.11.1";
+ source = {
+ type = "gem";
+ sha256 = "09z0y0d6bks7i0sqvd8szfqj9i1kkj01anzly7shi83b3gxhrq9m";
+ };
+ dependencies = [
+ "dotenv-deployment"
+ ];
+ };
+ "dotenv-deployment" = {
+ version = "0.0.2";
+ source = {
+ type = "gem";
+ sha256 = "1ad66jq9a09qq1js8wsyil97018s7y6x0vzji0dy34gh65sbjz8c";
+ };
+ };
+ "dotenv-rails" = {
+ version = "0.11.1";
+ source = {
+ type = "gem";
+ sha256 = "0r6hif0i1lipbi7mkxx7wa5clsn65n6wyd9jry262cx396lsfrqy";
+ };
+ dependencies = [
+ "dotenv"
+ ];
+ };
+ "erubis" = {
+ version = "2.7.0";
+ source = {
+ type = "gem";
+ sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
+ };
+ };
+ "execjs" = {
+ version = "2.2.1";
+ source = {
+ type = "gem";
+ sha256 = "1s41g9qwq0h4452q4gp934lnkzfkxh4wrg8fd4bcynba86bf3j8b";
+ };
+ };
+ "haml" = {
+ version = "4.0.5";
+ source = {
+ type = "gem";
+ sha256 = "1xmzb0k5q271090crzmv7dbw8ss4289bzxklrc0fhw6pw3kcvc85";
+ };
+ dependencies = [
+ "tilt"
+ ];
+ };
+ "hike" = {
+ version = "1.2.3";
+ source = {
+ type = "gem";
+ sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
+ };
+ };
+ "i18n" = {
+ version = "0.6.11";
+ source = {
+ type = "gem";
+ sha256 = "0fwjlgmgry2blf8zlxn9c555cf4a16p287l599kz5104ncjxlzdk";
+ };
+ };
+ "jquery-rails" = {
+ version = "3.1.2";
+ source = {
+ type = "gem";
+ sha256 = "0h5a565i3l2mbd221m6mz9d1nr53pz19i9qxv08qr1dv0yx2pr3y";
+ };
+ dependencies = [
+ "railties"
+ "thor"
+ ];
+ };
+ "jquery-ui-rails" = {
+ version = "4.2.1";
+ source = {
+ type = "gem";
+ sha256 = "1garrnqwh35acj2pp4sp6fpm2g881h23y644lzbic2qmcrq9wd2v";
+ };
+ dependencies = [
+ "railties"
+ ];
+ };
+ "json" = {
+ version = "1.8.1";
+ source = {
+ type = "gem";
+ sha256 = "0002bsycvizvkmk1jyv8px1hskk6wrjfk4f7x5byi8gxm6zzn6wn";
+ };
+ };
+ "kramdown" = {
+ version = "1.4.0";
+ source = {
+ type = "gem";
+ sha256 = "001vy0ymiwbvkdbb9wpqmswv6imliv7xim00gq6rlk0chnbiaq80";
+ };
+ };
+ "libv8" = {
+ version = "3.16.14.7";
+ source = {
+ type = "gem";
+ sha256 = "0dv5q5n5nf6b8h3fybwmsr3vkj70w4g1jpf6661j3hsv9vp0g4qq";
+ };
+ };
+ "mail" = {
+ version = "2.6.3";
+ source = {
+ type = "gem";
+ sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
+ };
+ dependencies = [
+ "mime-types"
+ ];
+ };
+ "method_source" = {
+ version = "0.8.2";
+ source = {
+ type = "gem";
+ sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
+ };
+ };
+ "mime-types" = {
+ version = "2.4.3";
+ source = {
+ type = "gem";
+ sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
+ };
+ };
+ "mini_portile" = {
+ version = "0.6.0";
+ source = {
+ type = "gem";
+ sha256 = "09kcn4g63xrdirgwxgjikqg976rr723bkc9bxfr29pk22cj3wavn";
+ };
+ };
+ "minitest" = {
+ version = "5.4.3";
+ source = {
+ type = "gem";
+ sha256 = "1ws2cphg9jh45nrvs43s2ww5r14nb026bwlbwwpi0jz6qsqm86x4";
+ };
+ };
+ "multi_json" = {
+ version = "1.10.1";
+ source = {
+ type = "gem";
+ sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
+ };
+ };
+ "nokogiri" = {
+ version = "1.6.2.1";
+ source = {
+ type = "gem";
+ sha256 = "0dj8ajm9hlfpa71qz1xn5prqy5qdi32ll74qh8ssjwknp1a35cnz";
+ };
+ dependencies = [
+ "mini_portile"
+ ];
+ };
+ "phantomjs" = {
+ version = "1.9.7.1";
+ source = {
+ type = "gem";
+ sha256 = "14as0yzwbzvshbp1f8igjxcdxc5vbjgh0jhdvy393il084inlrl7";
+ };
+ };
+ "pry" = {
+ version = "0.10.1";
+ source = {
+ type = "gem";
+ sha256 = "1j0r5fm0wvdwzbh6d6apnp7c0n150hpm9zxpm5xvcgfqr36jaj8z";
+ };
+ dependencies = [
+ "coderay"
+ "method_source"
+ "slop"
+ ];
+ };
+ "pry-byebug" = {
+ version = "2.0.0";
+ source = {
+ type = "gem";
+ sha256 = "17b6720ci9345wkzj369ydyj6hdlg2krd26zivpd4dvaijszzgzq";
+ };
+ dependencies = [
+ "byebug"
+ "pry"
+ ];
+ };
+ "pry-stack_explorer" = {
+ version = "0.4.9.1";
+ source = {
+ type = "gem";
+ sha256 = "1828jqcfdr9nk86n15ky199vf33cfz51wkpv6kx230g0dsh9r85z";
+ };
+ dependencies = [
+ "binding_of_caller"
+ "pry"
+ ];
+ };
+ "puma" = {
+ version = "2.8.2";
+ source = {
+ type = "gem";
+ sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
+ };
+ dependencies = [
+ "rack"
+ ];
+ buildInputs = [ pkgs.openssl ];
+ };
+ "rack" = {
+ version = "1.5.2";
+ source = {
+ type = "gem";
+ sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
+ };
+ };
+ "rack-protection" = {
+ version = "1.5.3";
+ source = {
+ type = "gem";
+ sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
+ };
+ dependencies = [
+ "rack"
+ ];
+ };
+ "rack-test" = {
+ version = "0.6.2";
+ source = {
+ type = "gem";
+ sha256 = "01mk715ab5qnqf6va8k3hjsvsmplrfqpz6g58qw4m3l8mim0p4ky";
+ };
+ dependencies = [
+ "rack"
+ ];
+ };
+ "rails" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
+ };
+ dependencies = [
+ "actionmailer"
+ "actionpack"
+ "actionview"
+ "activemodel"
+ "activerecord"
+ "activesupport"
+ "railties"
+ "sprockets-rails"
+ ];
+ };
+ "rails-observers" = {
+ version = "0.1.2";
+ source = {
+ type = "gem";
+ sha256 = "1lsw19jzmvipvrfy2z04hi7r29dvkfc43h43vs67x6lsj9rxwwcy";
+ };
+ dependencies = [
+ "activemodel"
+ ];
+ };
+ "railties" = {
+ version = "4.1.7";
+ source = {
+ type = "gem";
+ sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
+ };
+ dependencies = [
+ "actionpack"
+ "activesupport"
+ "rake"
+ "thor"
+ ];
+ };
+ "rake" = {
+ version = "10.4.1";
+ source = {
+ type = "gem";
+ sha256 = "1446zzdpwpvwkd0zk19b2smmmvdiarh4b26cdbcw4fy5p67wxkw2";
+ };
+ };
+ "ref" = {
+ version = "1.0.5";
+ source = {
+ type = "gem";
+ sha256 = "19qgpsfszwc2sfh6wixgky5agn831qq8ap854i1jqqhy1zsci3la";
+ };
+ };
+ "rest-client" = {
+ version = "1.6.7";
+ source = {
+ type = "gem";
+ sha256 = "0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853";
+ };
+ dependencies = [
+ "mime-types"
+ ];
+ };
+ "rspec-core" = {
+ version = "2.14.8";
+ source = {
+ type = "gem";
+ sha256 = "0psjy5kdlz3ph39br0m01w65i1ikagnqlg39f8p65jh5q7dz8hwc";
+ };
+ };
+ "rspec-expectations" = {
+ version = "2.14.5";
+ source = {
+ type = "gem";
+ sha256 = "1ni8kw8kjv76jvwjzi4jba00k3qzj9f8wd94vm6inz0jz3gwjqf9";
+ };
+ dependencies = [
+ "diff-lcs"
+ ];
+ };
+ "rspec-mocks" = {
+ version = "2.14.6";
+ source = {
+ type = "gem";
+ sha256 = "1fwsmijd6w6cmqyh4ky2nq89jrpzh56hzmndx9wgkmdgfhfakv30";
+ };
+ };
+ "rspec-rails" = {
+ version = "2.14.2";
+ source = {
+ type = "gem";
+ sha256 = "1j9nbha6p12kwy9c5g3lw541xg20yzk95lzgmsq7kvngiqz88p57";
+ };
+ dependencies = [
+ "actionpack"
+ "activemodel"
+ "activesupport"
+ "railties"
+ "rspec-core"
+ "rspec-expectations"
+ "rspec-mocks"
+ ];
+ };
+ "safe_yaml" = {
+ version = "1.0.3";
+ source = {
+ type = "gem";
+ sha256 = "063bykyk40s3rhy1dxfbvl69s179n1iny418z4wqjbvhrmjn18wl";
+ };
+ };
+ "sass" = {
+ version = "3.3.9";
+ source = {
+ type = "gem";
+ sha256 = "0k19vj73283i907z4wfkc9qdska2b19z7ps6lcr5s4qzwis1zkmz";
+ };
+ };
+ "simplecov" = {
+ version = "0.9.1";
+ source = {
+ type = "gem";
+ sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
+ };
+ dependencies = [
+ "docile"
+ "multi_json"
+ "simplecov-html"
+ ];
+ };
+ "simplecov-html" = {
+ version = "0.8.0";
+ source = {
+ type = "gem";
+ sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
+ };
+ };
+ "sinatra" = {
+ version = "1.4.5";
+ source = {
+ type = "gem";
+ sha256 = "0qyna3wzlnvsz69d21lxcm3ixq7db08mi08l0a88011qi4qq701s";
+ };
+ dependencies = [
+ "rack"
+ "rack-protection"
+ "tilt"
+ ];
+ };
+ "slop" = {
+ version = "3.6.0";
+ source = {
+ type = "gem";
+ sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
+ };
+ };
+ "sprockets" = {
+ version = "2.12.3";
+ source = {
+ type = "gem";
+ sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
+ };
+ dependencies = [
+ "hike"
+ "multi_json"
+ "rack"
+ "tilt"
+ ];
+ };
+ "sprockets-rails" = {
+ version = "2.2.2";
+ source = {
+ type = "gem";
+ sha256 = "192d4vfl1gjz6phli6sqk98364x6v4jkpl5imajvimsinvgyv81b";
+ };
+ dependencies = [
+ "actionpack"
+ "activesupport"
+ "sprockets"
+ ];
+ };
+ "teaspoon" = {
+ version = "0.8.0";
+ source = {
+ type = "gem";
+ sha256 = "1j3brbm9cv5km9d9wzb6q2b3cvc6m254z48h7h77z1w6c5wr0p3z";
+ };
+ dependencies = [
+ "railties"
+ ];
+ };
+ "term-ansicolor" = {
+ version = "1.3.0";
+ source = {
+ type = "gem";
+ sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
+ };
+ dependencies = [
+ "tins"
+ ];
+ };
+ "therubyracer" = {
+ version = "0.12.1";
+ source = {
+ type = "gem";
+ sha256 = "106fqimqyaalh7p6czbl5m2j69z8gv7cm10mjb8bbb2p2vlmqmi6";
+ };
+ dependencies = [
+ "libv8"
+ "ref"
+ ];
+ };
+ "thor" = {
+ version = "0.19.1";
+ source = {
+ type = "gem";
+ sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
+ };
+ };
+ "thread_safe" = {
+ version = "0.3.4";
+ source = {
+ type = "gem";
+ sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
+ };
+ };
+ "tilt" = {
+ version = "1.4.1";
+ source = {
+ type = "gem";
+ sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
+ };
+ };
+ "tins" = {
+ version = "1.1.0";
+ source = {
+ type = "gem";
+ sha256 = "0jddc40lw8lzn421p6pjvvs7b37qyd8jgsl5nrq16rc46wgx2r2r";
+ };
+ };
+ "tzinfo" = {
+ version = "1.2.2";
+ source = {
+ type = "gem";
+ sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
+ };
+ dependencies = [
+ "thread_safe"
+ ];
+ };
+ "uglifier" = {
+ version = "2.5.1";
+ source = {
+ type = "gem";
+ sha256 = "1vihq309mzv9a2i0s8v4imrn1g2kj8z0vr88q3i5b657c4kxzfp0";
+ };
+ dependencies = [
+ "execjs"
+ "json"
+ ];
+ };
+ "webmock" = {
+ version = "1.18.0";
+ source = {
+ type = "gem";
+ sha256 = "1r21a4x7dljb3cqxp7w7mdq5a1xvw9kn6m3gldsldsfza5b4hq03";
+ };
+ dependencies = [
+ "addressable"
+ "crack"
+ ];
+ };
+ "xpath" = {
+ version = "2.0.0";
+ source = {
+ type = "gem";
+ sha256 = "04kcr127l34p7221z13blyl0dvh0bmxwx326j72idayri36a394w";
+ };
+ dependencies = [
+ "nokogiri"
+ ];
+ };
+ "zeroclipboard-rails" = {
+ version = "0.1.0";
+ source = {
+ type = "gem";
+ sha256 = "00ixal0a0mxaqsyzp06c6zz4qdwqydy1qv4n7hbyqfhbmsdalcfc";
+ };
+ dependencies = [
+ "railties"
+ ];
+ };
+}
diff --git a/pkgs/applications/networking/cluster/panamax/ui.nix b/pkgs/applications/networking/cluster/panamax/ui.nix
new file mode 100644
index 00000000000..4d4e4fe964d
--- /dev/null
+++ b/pkgs/applications/networking/cluster/panamax/ui.nix
@@ -0,0 +1,71 @@
+{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler_HEAD
+, ruby, rubygemsFun, openssl, sqlite, dataDir ? "/var/lib/panamax-ui"}:
+
+with stdenv.lib;
+
+let
+ env = bundlerEnv {
+ name = "panamax-api-gems";
+ inherit ruby;
+ gemset = ./gemset-ui.nix;
+ gemfile = ./Gemfile-ui;
+ lockfile = ./Gemfile-ui.lock;
+ };
+ bundler = bundler_HEAD.override { inherit ruby; };
+in
+stdenv.mkDerivation rec {
+ name = "panamax-ui-${version}";
+ version = "0.2.11";
+
+ src = fetchgit {
+ rev = "refs/tags/v${version}";
+ url = "git://github.com/CenturyLinkLabs/panamax-ui";
+ sha256 = "17j5ac8fzp377bzg7f239jdcc9j0c63bkx0ill5nl10i3h05z7jh";
+ };
+
+ buildInputs = [ makeWrapper env.ruby openssl sqlite bundler ];
+
+ setSourceRoot = ''
+ mkdir -p $out/share
+ cp -R panamax-ui $out/share/panamax-ui
+ export sourceRoot="$out/share/panamax-ui"
+ '';
+
+ postPatch = ''
+ find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Journal|NixOS Journal|g' -i "{}" \;
+ find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Local|NixOS Local|g' -i "{}" \;
+ find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Host|NixOS Host|g' -i "{}" \;
+ sed -e 's|CoreOS Local|NixOS Local|g' -i "spec/features/manage_application_spec.rb"
+ '';
+
+ configurePhase = ''
+ export HOME=$PWD
+ export GEM_HOME=${env}/${env.ruby.gemPath}
+ '';
+
+ buildPhase = ''
+ rm -f ./bin/*
+ bundle exec rake rails:update:bin
+ '';
+
+ installPhase = ''
+ rm -rf log tmp db
+ ln -sf ${dataDir}/{db,state/log,state/tmp} .
+
+ mkdir -p $out/bin
+ makeWrapper bin/bundle "$out/bin/bundle" \
+ --run "cd $out/share/panamax-ui" \
+ --prefix "PATH" : "$out/share/panamax-ui/bin:${env.ruby}/bin:$PATH" \
+ --prefix "HOME" : "$out/share/panamax-ui" \
+ --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
+ --prefix "GEM_PATH" : "$out/share/panamax-ui:${bundler}/${env.ruby.gemPath}"
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/CenturyLinkLabs/panamax-ui;
+ description = "The Web GUI for Panamax";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ matejc offline ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/networking/feedreaders/canto-curses/default.nix b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
new file mode 100644
index 00000000000..ae4746a3f1e
--- /dev/null
+++ b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, python34Packages, readline, ncurses, canto-daemon }:
+
+python34Packages.buildPythonPackage rec {
+ version = "0.9.1";
+ name = "canto-curses-${version}";
+
+ src = fetchFromGitHub {
+ owner = "themoken";
+ repo = "canto-curses";
+ rev = "v${version}";
+ sha256 = "1vb5g0vdkp233r09qv0g4rgz7nprr2a625lf6nf6a51wpimdwgdy";
+ };
+
+ buildInputs = [ readline ncurses canto-daemon ];
+ propagatedBuildInputs = [ canto-daemon ];
+
+ meta = {
+ description = "An ncurses-based console Atom/RSS feed reader";
+ longDescription = ''
+ Canto is an Atom/RSS feed reader for the console that is meant to be
+ quick, concise, and colorful. It's meant to allow you to crank through
+ feeds like you've never cranked before by providing a minimal, yet
+ information packed interface. No navigating menus. No dense blocks of
+ unreadable white text. An interface with almost infinite customization
+ and extensibility using the excellent Python programming language.
+ '';
+ homepage = http://codezen.org/canto-ng/;
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ maintainers = [ stdenv.lib.maintainers.devhell ];
+ };
+}
diff --git a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
new file mode 100644
index 00000000000..bf564dd4327
--- /dev/null
+++ b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, python34Packages, }:
+
+python34Packages.buildPythonPackage rec {
+ version = "0.9.1";
+ name = "canto-daemon-${version}";
+ namePrefix = "";
+
+ src = fetchFromGitHub {
+ owner = "themoken";
+ repo = "canto-next";
+ rev = "v${version}";
+ sha256 = "14lh6x0yz2asspwdi1ims01589r79q0dv77vq61gfjk5wiwfbdwa";
+ };
+
+ propagatedBuildInputs = with python34Packages; [ feedparser ];
+
+ meta = {
+ description = "Daemon for the canto Atom/RSS feed reader";
+ longDescription = ''
+ Canto is an Atom/RSS feed reader for the console that is meant to be
+ quick, concise, and colorful. It's meant to allow you to crank through
+ feeds like you've never cranked before by providing a minimal, yet
+ information packed interface. No navigating menus. No dense blocks of
+ unreadable white text. An interface with almost infinite customization
+ and extensibility using the excellent Python programming language.
+ '';
+ homepage = http://codezen.org/canto-ng/;
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ maintainers = [ stdenv.lib.maintainers.devhell ];
+ };
+}
diff --git a/pkgs/applications/networking/ids/bro/default.nix b/pkgs/applications/networking/ids/bro/default.nix
index a37f831deed..c3641903a75 100644
--- a/pkgs/applications/networking/ids/bro/default.nix
+++ b/pkgs/applications/networking/ids/bro/default.nix
@@ -1,11 +1,11 @@
{stdenv, fetchurl, cmake, flex, bison, openssl, libpcap, perl, zlib, file, curl, geoip, gperftools }:
stdenv.mkDerivation rec {
- name = "bro-2.3.1";
+ name = "bro-2.3.2";
src = fetchurl {
url = "http://www.bro.org/downloads/release/${name}.tar.gz";
- sha256 = "0008wq20xa3z95ccjspxgx7asvny28r7qlj254zdnbax6cgd4cpz";
+ sha256 = "16y6924brh7sw6l0nry6y4q8sif2lkcpymkd26aabdc61bdgpr9g";
};
buildInputs = [ cmake flex bison openssl libpcap perl zlib file curl geoip gperftools ];
diff --git a/pkgs/applications/networking/instant-messengers/ratox/default.nix b/pkgs/applications/networking/instant-messengers/ratox/default.nix
new file mode 100644
index 00000000000..1fb7ad8b955
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/ratox/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchgit, libtoxcore
+, conf ? null }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+ name = "ratox-dev-20150107";
+
+ src = fetchgit {
+ url = "git://git.2f30.org/ratox";
+ rev = "8be76e4cc829d86b8e1cae43a0d932600d6ff9fb";
+ sha256 = "7fe492de3e69a08f9c1bb59a319d0e410905f06514abe99b4d4fe5c899650448";
+ };
+
+ buildInputs = [ libtoxcore ];
+
+ configFile = optionalString (conf!=null) (builtins.toFile "config.h" conf);
+ preConfigure = optionalString (conf!=null) "cp ${configFile} config.def.h";
+
+ preBuild = "makeFlags=PREFIX=$out";
+
+ meta =
+ { description = "FIFO based tox client";
+ homepage = http://ratox.2f30.org/;
+ license = licenses.isc;
+ maintainers = with maintainers; [ emery ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/applications/networking/instant-messengers/tkabber/default.nix b/pkgs/applications/networking/instant-messengers/tkabber/default.nix
index 8b6b3893311..2b3703bc279 100644
--- a/pkgs/applications/networking/instant-messengers/tkabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tkabber/default.nix
@@ -7,16 +7,16 @@
with stdenv.lib;
let
- version = "1.0";
+ version = "1.1";
main = {
name = "tkabber";
- sha256 = "49ee6e897dfe52ebac256531b54955e6b39223f606a9b8ad63a52475389db206";
+ sha256 = "1ip0mi2icqkjxiam4qj1qcynnz9ck1ggzcbcqyjj132hakd855a2";
};
plugins = {
name = "tkabber-plugins";
- sha256 = "d61251dc664f0bfa8534e578096dede9a7bb7d4f2620489f8d2c43d36cd61ba9";
+ sha256 = "1dr12rh4vs1w1bga45k4ijgxs39801c1k4z3b892pn1dwv84il5y";
};
tclLibraries = [ bwidget tcllib tcltls tclgpg ];
diff --git a/pkgs/applications/networking/pond/default.nix b/pkgs/applications/networking/pond/default.nix
index 31a7dcd1f56..59e381e9e22 100644
--- a/pkgs/applications/networking/pond/default.nix
+++ b/pkgs/applications/networking/pond/default.nix
@@ -1,26 +1,24 @@
-{ stdenv, lib, fetchgit, fetchhg, go_1_3, trousers }:
+{ lib, goPackages, fetchgit, trousers }:
-let deps = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg;
-};
+with goPackages;
-in stdenv.mkDerivation rec {
- name = "pond";
+buildGoPackage rec {
+ rev = "f4e441c77a2039814046ff8219629c547fe8b689";
+ name = "pond-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/agl/pond";
+ src = fetchgit {
+ inherit rev;
+ url = "git://github.com/agl/pond.git";
+ sha256 = "f2dfc6cb96cc4b8ae732e41d1958b62036f40cb346df2e14f27b5964a1416026";
+ };
- buildInputs = [ go_1_3 trousers ];
+ subPackages = [ "client" ];
- unpackPhase = ''
- export GOPATH=$PWD
- echo $PWD
- cp -LR ${deps}/src src
- chmod u+w -R src
- '';
+ buildInputs = [ trousers net crypto protobuf ed25519 ];
+
+ buildFlags = "--tags nogui";
- installPhase = ''
- export GOPATH="$PWD"
- mkdir -p $out/bin
- go build --tags nogui -v -o $out/bin/pond-cli github.com/agl/pond/client
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "Forward secure, asynchronous messaging for the discerning";
diff --git a/pkgs/applications/networking/pond/deps.nix b/pkgs/applications/networking/pond/deps.nix
deleted file mode 100644
index 0983ad275e2..00000000000
--- a/pkgs/applications/networking/pond/deps.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchgit, fetchhg}:
-
-let
- goDeps = [
- {
- root = "github.com/agl/pond";
- src = fetchgit {
- url = "git://github.com/agl/pond.git";
- rev = "f4e441c77a2039814046ff8219629c547fe8b689";
- sha256 = "f2dfc6cb96cc4b8ae732e41d1958b62036f40cb346df2e14f27b5964a1416026";
- };
- }
- {
- root = "github.com/agl/ed25519";
- src = fetchgit {
- url = "git://github.com/agl/ed25519.git";
- rev = "d2b94fd789ea21d12fac1a4443dd3a3f79cda72c";
- sha256 = "83e3010509805d1d315c7aa85a356fda69d91b51ff99ed98a503d63adb3613e9";
- };
- }
- {
- root = "code.google.com/p/go.crypto";
- src = fetchhg {
- url = "https://code.google.com/p/go.crypto";
- rev = "31393df5baea";
- sha256 = "0b95dpsvxxapcjjvhj05fdmyn0mzffamc25hvxy7xgsl2l9yy3nw";
- };
- }
- {
- root = "code.google.com/p/go.net";
- src = fetchhg {
- url = "https://code.google.com/p/go.net";
- rev = "90e232e2462d";
- sha256 = "0hqvkaa0rbxwbi74xa6aqbkf63zk662x5hp3bp8vbhzkc4yl1h59";
- };
- }
- {
- root = "code.google.com/p/goprotobuf";
- src = fetchhg {
- url = "https://code.google.com/p/goprotobuf";
- rev = "36be16571e14";
- sha256 = "14yay2sgfbbs0bx3q03bdqn1kivyvxfdm34rmp2612gvinlll215";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
-
diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix
index 8d32c1e5d86..5e29e3cfd0d 100644
--- a/pkgs/applications/networking/sync/rsync/default.nix
+++ b/pkgs/applications/networking/sync/rsync/default.nix
@@ -11,13 +11,13 @@ stdenv.mkDerivation rec {
mainSrc = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
- url = "http://rsync.samba.org/ftp/rsync/src/rsync-${version}.tar.gz";
+ url = "mirror://samba/rsync/src/rsync-${version}.tar.gz";
sha256 = "0896iah6w72q5izpxgkai75bn40dqkqifi2ivcxjzr2zrx7kdr3x";
};
patchesSrc = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
- url = "http://rsync.samba.org/ftp/rsync/rsync-patches-${version}.tar.gz";
+ url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz";
sha256 = "0iij996xbyn20yr4w3kv3rw3cx4jwkg2k85x6w5hb5xlgsis8zjl";
};
diff --git a/pkgs/applications/networking/sync/unison/default.nix b/pkgs/applications/networking/sync/unison/default.nix
index 4ac5e8300ca..72d2b2557d5 100644
--- a/pkgs/applications/networking/sync/unison/default.nix
+++ b/pkgs/applications/networking/sync/unison/default.nix
@@ -3,10 +3,10 @@
stdenv.mkDerivation (rec {
- name = "unison-2.40.102";
+ name = "unison-2.48.3";
src = fetchurl {
url = "http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/${name}.tar.gz";
- sha256 = "0m78q5vnsric1virvkmxxx32ipaq0cnj0kbirdbg36395gq94jix";
+ sha256 = "1vmpf11f282sg0dzh28plmd0xcjy3y4z3jszyb1xklwmbvagk5d6";
};
buildInputs = [ ocaml makeWrapper ncurses ];
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index e3c8d148ed8..b31a6528c24 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -1,40 +1,32 @@
-{ stdenv, fetchgit, go }:
+{ lib, fetchgit, goPackages }:
-stdenv.mkDerivation rec {
+with goPackages;
+
+buildGoPackage rec {
name = "syncthing-${version}";
- version = "0.10.21";
-
+ version = "0.10.22";
+ goPackagePath = "github.com/syncthing/syncthing";
src = fetchgit {
url = "git://github.com/syncthing/syncthing.git";
rev = "refs/tags/v${version}";
- sha256 = "60cd8607cf7d2837252680f6c2879aba1f35a2c74a47c2f2ea874d6eed2adaa5";
+ sha256 = "d96eff0dac5d542388d643f4b9e29ade6f7c52a570a00a48e7b5f81882d719dc";
};
- buildInputs = [ go ];
+ subPackages = [ "cmd/syncthing" ];
- buildPhase = ''
- mkdir -p "./dependencies/src/github.com/syncthing/syncthing"
- cp -r internal "./dependencies/src/github.com/syncthing/syncthing"
+ buildFlagsArray = "-ldflags=-w -X main.Version v${version}";
- export GOPATH="`pwd`/Godeps/_workspace:`pwd`/dependencies"
+ preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace";
- go run build.go test
+ doCheck = true;
- mkdir ./bin
-
- go build -o ./bin/syncthing -ldflags "-w -X main.Version v${version}" ./cmd/syncthing
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- cp -r ./bin $out
- '';
+ dontInstallSrc = true;
meta = {
homepage = http://syncthing.net/;
description = "Replaces Dropbox and BitTorrent Sync with something open, trustworthy and decentralized";
- license = with stdenv.lib.licenses; mit;
- maintainers = with stdenv.lib.maintainers; [ matejc ];
- platforms = with stdenv.lib.platforms; linux;
+ license = with lib.licenses; mit;
+ maintainers = with lib.maintainers; [ matejc ];
+ platforms = with lib.platforms; linux;
};
}
diff --git a/pkgs/applications/networking/umurmur/default.nix b/pkgs/applications/networking/umurmur/default.nix
index 2e196cdf8cf..7e7d58c9a32 100644
--- a/pkgs/applications/networking/umurmur/default.nix
+++ b/pkgs/applications/networking/umurmur/default.nix
@@ -1,14 +1,17 @@
-{ stdenv, fetchurl, openssl, protobufc, libconfig }:
+{ stdenv, fetchFromGitHub, autoreconfHook, openssl, protobufc, libconfig }:
stdenv.mkDerivation rec {
- name = "umurmur-0.2.13";
+ name = "umurmur-${version}";
+ version = "0.2.15";
- src = fetchurl {
- url = "http://umurmur.googlecode.com/files/${name}.tar.gz";
- sha1 = "c9345b67213f52688fef2113132c62d2edbf4bea";
+ src = fetchFromGitHub {
+ owner = "fatbob313";
+ repo = "umurmur";
+ rev = version;
+ sha256 = "0q0apnnb3pszhpsbadw52k6mhdc0hk38rk7vnn7dl4fsisfhgmx2";
};
- buildInputs = [ openssl protobufc libconfig ];
+ buildInputs = [ autoreconfHook openssl protobufc libconfig ];
configureFlags = "--with-ssl=openssl";
@@ -16,5 +19,6 @@ stdenv.mkDerivation rec {
description = "Minimalistic Murmur (Mumble server)";
license = licenses.bsd3;
homepage = http://code.google.com/p/umurmur/;
+ platforms = platforms.all;
};
}
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 73e2565e457..809a369d09e 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -10,7 +10,7 @@
let
- version = "2.1.4";
+ version = "2.3.0";
svn = subversionClient.override { perlBindings = true; };
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
- sha256 = "0gh57mfxz1qrxzfp1lpcaqswhixc246kmajlf0db7g0cn6wnhjd0";
+ sha256 = "1jhagfsmn9as6bss0c6zppw0iydcalgmadyywz7kdxbdsqa3mcll";
};
patches = [
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index 1eef680b7d1..777fbde904e 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -4,22 +4,22 @@
stdenv.mkDerivation rec {
name = "makemkv-${ver}";
- ver = "1.9.0";
+ ver = "1.9.1";
builder = ./builder.sh;
src_bin = fetchurl {
url = "http://www.makemkv.com/download/makemkv-bin-${ver}.tar.gz";
- sha256 = "1rcvg7a1h59mfwsl5w0fr89m101pkqm9vgj06dl91hkgp5nh3wah";
+ sha256 = "0458ilchi64q8yw4kxck565anpn6lf5awrnkz17bk38qdgp0i2nq";
};
- src_oss = fetchurl {
+ src_oss = fetchurl {
url = "http://www.makemkv.com/download/makemkv-oss-${ver}.tar.gz";
- sha256 = "0415gw2nacb57sz5m0hcaznynmznc6v8qb6028qnsqgv39d4w8f8";
+ sha256 = "1x4mjx32839gf9k2zrjz2250valnqcaa2q89kc7sipgsl4b7wrr2";
};
buildInputs = [openssl qt4 mesa zlib pkgconfig libav];
- libPath = stdenv.lib.makeLibraryPath [stdenv.cc.cc openssl mesa qt4 zlib ]
+ libPath = stdenv.lib.makeLibraryPath [stdenv.cc.cc openssl mesa qt4 zlib ]
+ ":" + stdenv.cc.cc + "/lib64";
meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index df0cb1b8110..1fa77128c04 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -18,12 +18,12 @@
assert withGUI -> wxGTK != null;
stdenv.mkDerivation rec {
- version = "7.5.0";
+ version = "7.6.0";
name = "mkvtoolnix-${version}";
src = fetchurl {
url = "http://www.bunkus.org/videotools/mkvtoolnix/sources/${name}.tar.xz";
- sha256 = "0ksv79zcpp34jzs77r02x119c0h2wyvkgckd0bbwjix0qyczgfhp";
+ sha256 = "1n6waln6r9jx26al3k2nh6wi8p1q6lv2fs48nbc1lj9s2fc35pkl";
};
buildInputs = [
diff --git a/pkgs/build-support/autonix/default.nix b/pkgs/build-support/autonix/default.nix
index e7d85cc5085..7751f8019c4 100644
--- a/pkgs/build-support/autonix/default.nix
+++ b/pkgs/build-support/autonix/default.nix
@@ -160,6 +160,7 @@ let
in
{
inherit generateCollection;
+ inherit importManifest;
inherit isDepAttr;
inherit manifest;
inherit removePkgDeps;
diff --git a/pkgs/build-support/build-pecl.nix b/pkgs/build-support/build-pecl.nix
index 135b68186f3..5837d413abc 100644
--- a/pkgs/build-support/build-pecl.nix
+++ b/pkgs/build-support/build-pecl.nix
@@ -20,4 +20,6 @@ stdenv.mkDerivation (args // {
makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ makeFlags;
autoreconfPhase = "phpize";
+
+ preConfigure = "touch unix.h";
})
diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix
index 5f0fe5fa486..df6a464fa48 100644
--- a/pkgs/build-support/fetchurl/mirrors.nix
+++ b/pkgs/build-support/fetchurl/mirrors.nix
@@ -137,6 +137,11 @@ rec {
http://www.centervenus.com/mirrors/nongnu/
];
+ samba = [
+ http://samba.org/ftp/
+ http://ftp.riken.jp/net/samba
+ ];
+
# BitlBee mirrors, see http://www.bitlbee.org/main.php/mirrors.html .
bitlbee = [
http://get.bitlbee.org/
@@ -190,7 +195,7 @@ rec {
# Fedora (please only add full mirrors that carry old Fedora distributions as well).
# See: https://mirrors.fedoraproject.org/publiclist (but not all carry old content).
fedora = [
- http://archives.fedoraproject.org/pub/archive/fedora/
+ http://archives.fedoraproject.org/pub/fedora/
http://fedora.osuosl.org/
http://ftp.nluug.nl/pub/os/Linux/distr/fedora/
http://ftp.funet.fi/pub/mirrors/ftp.redhat.com/pub/fedora/
@@ -199,6 +204,7 @@ rec {
http://ftp.linux.cz/pub/linux/fedora/
http://ftp.heanet.ie/pub/fedora/
http://mirror.1000mbps.com/fedora/
+ http://archives.fedoraproject.org/pub/archive/fedora/
];
# Old SUSE distributions. Unfortunately there is no master site,
diff --git a/pkgs/build-support/templaterpm/nix-template-rpm.py b/pkgs/build-support/templaterpm/nix-template-rpm.py
index 42f8ee8a75f..ec3a619027e 100755
--- a/pkgs/build-support/templaterpm/nix-template-rpm.py
+++ b/pkgs/build-support/templaterpm/nix-template-rpm.py
@@ -4,6 +4,7 @@ import sys
import os
import subprocess
import argparse
+import re
import shutil
import rpm
import urlparse
@@ -14,8 +15,8 @@ import toposort
-class NixTemplateRPM(object):
- def __init__(self, specFilename, inputDir=None, maintainer="MAINTAINER"):
+class SPECTemplate(object):
+ def __init__(self, specFilename, outputDir, inputDir=None, buildRootInclude=None, translateTable=None, repositoryDir=None, allPackagesDir=None, maintainer="MAINTAINER"):
rpm.addMacro("buildroot","$out")
rpm.addMacro("_libdir","lib")
rpm.addMacro("_libexecdir","libexec")
@@ -24,22 +25,41 @@ class NixTemplateRPM(object):
rpm.addMacro("_topdir","SPACER_DIR_FOR_REMOVAL")
rpm.addMacro("_sourcedir","SOURCE_DIR_SPACER")
+ self.packageGroups = [ "ocaml", "python" ]
+
ts = rpm.TransactionSet()
self.specFilename = specFilename
self.spec = ts.parseSpec(specFilename)
self.inputDir = inputDir
+ self.buildRootInclude = buildRootInclude
+ self.repositoryDir = repositoryDir
+ self.allPackagesDir = allPackagesDir
self.maintainer = maintainer
- self.packageGroups = [ "ocaml", "python" ]
+ self.translateTable = translateTable
+
+ self.facts = self.getFacts()
+ self.key = self.getSelfKey()
+
+ tmpDir = os.path.join(outputDir, self.rewriteName(self.spec.sourceHeader['name']))
+ if self.translateTable != None:
+ self.relOutputDir = self.translateTable.path(self.key,tmpDir)
+ else:
+ self.relOutputDir = tmpDir
+
+ self.final_output_dir = os.path.normpath( self.relOutputDir )
+
+ if self.repositoryDir != None:
+ self.potential_repository_dir = os.path.normpath( os.path.join(self.repositoryDir,self.relOutputDir) )
def rewriteCommands(self, string):
string = string.replace('SPACER_DIR_FOR_REMOVAL/','')
string = string.replace('SPACER_DIR_FOR_REMOVAL','')
- string = '\n'.join(map(lambda line: ' '.join(map(lambda x: x.replace('SOURCE_DIR_SPACER/','${./')+'}' if x.startswith('SOURCE_DIR_SPACER/') else x, line.split(' '))), string.split('\n')))
+ string = '\n'.join(map(lambda line: ' '.join(map(lambda x: x.replace('SOURCE_DIR_SPACER/',('${./' if (self.buildRootInclude == None) else '${buildRoot}/usr/share/buildroot/SOURCES/'))+('}' if (self.buildRootInclude == None) else '') if x.startswith('SOURCE_DIR_SPACER/') else x, line.split(' '))), string.split('\n')))
string = string.replace('\n','\n ')
string = string.rstrip()
return string
@@ -85,18 +105,31 @@ class NixTemplateRPM(object):
else:
raise Exception("Unknown target")
packages = []
+
return packages
def getBuildInputs(self,target=None):
- return self.rewriteInputs(target,self.spec.sourceHeader['requires'])
+ inputs = self.rewriteInputs(target,self.spec.sourceHeader['requires'])
+ if self.translateTable != None:
+ return map(lambda x: self.translateTable.name(x), inputs)
+ else:
+ return inputs
- def getSelf(self):
+ def getSelfKey(self):
name = self.spec.sourceHeader['name']
if len(name.split('-')) > 1 and name.split('-')[0] in self.packageGroups:
- return self.rewriteInputs(name.split('-')[0], [self.spec.sourceHeader['name']])[0]
+ key = self.rewriteInputs(name.split('-')[0], [self.spec.sourceHeader['name']])[0]
else:
- return self.rewriteInputs(None, [self.spec.sourceHeader['name']])[0]
+ key = self.rewriteInputs(None, [self.spec.sourceHeader['name']])[0]
+ return key
+
+ def getSelf(self):
+ if self.translateTable != None:
+ return self.translateTable.name(self.key)
+ else:
+ return self.key
+
@@ -112,12 +145,34 @@ class NixTemplateRPM(object):
shutil.copyfile(os.path.join(input_dir, filename), os.path.join(output_dir, filename))
+ def getFacts(self):
+ facts = {}
+ facts["name"] = self.rewriteName(self.spec.sourceHeader['name'])
+ facts["version"] = self.spec.sourceHeader['version']
+
+ facts["url"] = []
+ facts["sha256"] = []
+ sources = [source for (source, _, flag) in self.spec.sources if flag==1 if urlparse.urlparse(source).scheme in ["http", "https"] ]
+ for url in sources:
+ p = subprocess.Popen(['nix-prefetch-url', url], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ output, err = p.communicate()
+ sha256 = output[:-1] #remove new line
+ facts["url"].append(url)
+ facts["sha256"].append(sha256)
+
+ patches = [source for (source, _, flag) in self.spec.sources if flag==2]
+ if self.buildRootInclude == None:
+ facts["patches"] = map(lambda x: './'+x, patches)
+ else:
+ facts["patches"] = map(lambda x: '"${buildRoot}/usr/share/buildroot/SOURCES/'+x+'"', reversed(patches))
+
+ return facts
+
@property
def name(self):
- out = 'stdenv.mkDerivation {\n'
- out += ' name = "' + self.rewriteName(self.spec.sourceHeader['name']) + '-' + self.spec.sourceHeader['version'] + '";\n'
- out += ' version = "' + self.spec.sourceHeader['version'] + '";\n'
+ out = ' name = "' + self.facts["name"] + '-' + self.facts["version"] + '";\n'
+ out += ' version = "' + self.facts['version'] + '";\n'
return out
@@ -125,10 +180,7 @@ class NixTemplateRPM(object):
def src(self):
sources = [source for (source, _, flag) in self.spec.sources if flag==1 if urlparse.urlparse(source).scheme in ["http", "https"] ]
out = ''
- for url in sources:
- p = subprocess.Popen(['nix-prefetch-url', url], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
- output, err = p.communicate()
- sha256 = output[:-1] #remove new line
+ for (url,sha256) in zip(self.facts['url'],self.facts['sha256']):
out += ' src = fetchurl {\n'
out += ' url = "' + url + '";\n'
out += ' sha256 = "' + sha256 + '";\n'
@@ -138,8 +190,7 @@ class NixTemplateRPM(object):
@property
def patch(self):
- patches = [source for (source, _, flag) in self.spec.sources if flag==2]
- out = ' patches = [ ' + ' '.join(map(lambda x: './'+x, patches)) + ' ];\n'
+ out = ' patches = [ ' + ' '.join(self.facts['patches']) + ' ];\n'
return out
@@ -189,11 +240,29 @@ class NixTemplateRPM(object):
return out
-
def __str__(self):
- head = '{stdenv, fetchurl, ' + ', '.join(self.getBuildInputs("ALL")) + '}:\n\n'
- body = [ self.name, self.src, self.patch, self.buildInputs, self.configure, self.build, self.ocamlExtra, self.install, self.meta ]
- return head + '\n'.join(body)
+ head = '{stdenv, fetchurl, ' + ', '.join(self.getBuildInputs("ALL")) + '}:\n\n'
+ head += 'stdenv.mkDerivation {\n'
+ body = [ self.name, self.src, self.patch, self.buildInputs, self.configure, self.build, self.ocamlExtra, self.install, self.meta ]
+ return head + '\n'.join(body)
+
+
+ def getTemplate(self):
+ head = '{stdenv, buildRoot, fetchurl, ' + ', '.join(self.getBuildInputs("ALL")) + '}:\n\n'
+ head += 'let\n'
+ head += ' buildRootInput = (import "${buildRoot}/usr/share/buildroot/buildRootInput.nix") { fetchurl=fetchurl; buildRoot=buildRoot; };\n'
+ head += 'in\n\n'
+ head += 'stdenv.mkDerivation {\n'
+ head += ' inherit (buildRootInput.'+self.rewriteName(self.spec.sourceHeader['name'])+') name version src;\n'
+ head += ' patches = buildRootInput.'+self.rewriteName(self.spec.sourceHeader['name'])+'.patches ++ [];\n\n'
+ body = [ self.buildInputs, self.configure, self.build, self.ocamlExtra, self.install, self.meta ]
+ return head + '\n'.join(body)
+
+
+ def getInclude(self):
+ head = self.rewriteName(self.spec.sourceHeader['name']) + ' = {\n'
+ body = [ self.name, self.src, self.patch ]
+ return head + '\n'.join(body) + '};\n'
def __cmp__(self,other):
@@ -203,8 +272,8 @@ class NixTemplateRPM(object):
return -1
- def callPackage(self, output_dir):
- callPackage = ' ' + self.getSelf() + ' = callPackage ' + os.path.relpath(output_dir) + ' {'
+ def callPackage(self):
+ callPackage = ' ' + self.getSelf() + ' = callPackage ' + os.path.relpath(self.final_output_dir, self.allPackagesDir) + ' {'
newline = False;
for target in self.packageGroups:
tmp = self.getBuildInputs(target)
@@ -219,25 +288,141 @@ class NixTemplateRPM(object):
- def generateTemplate(self, outputDir):
- output_dir = os.path.normpath( os.path.join(outputDir, self.rewriteName(self.spec.sourceHeader['name'])) )
- if not os.path.exists(output_dir):
- os.makedirs(output_dir)
+ def generateCombined(self):
+ if not os.path.exists(self.final_output_dir):
+ os.makedirs(self.final_output_dir)
if self.inputDir != None:
- self.copySources(self.inputDir, output_dir)
- self.copyPatches(self.inputDir, output_dir)
+ self.copySources(self.inputDir, self.final_output_dir)
+ self.copyPatches(self.inputDir, self.final_output_dir)
- nixfile = open(os.path.join(output_dir,'default.nix'), 'w')
+ nixfile = open(os.path.join(self.final_output_dir,'default.nix'), 'w')
nixfile.write(str(self))
nixfile.close()
- shutil.copyfile(self.specFilename, os.path.join(output_dir, os.path.basename(self.specFilename)))
-
- self.pkgCall = self.callPackage(output_dir)
+ shutil.copyfile(self.specFilename, os.path.join(self.final_output_dir, os.path.basename(self.specFilename)))
+ def generateSplit(self):
+ if not os.path.exists(self.final_output_dir):
+ os.makedirs(self.final_output_dir)
+
+ nixfile = open(os.path.join(self.final_output_dir,'default.nix'), 'w')
+ nixfile.write(self.getTemplate())
+ nixfile.close()
+
+ return self.getInclude()
+
+
+
+
+
+
+class NixTemplate(object):
+ def __init__(self, nixfile):
+ self.nixfile = nixfile
+ self.original = { "name":None, "version":None, "url":None, "sha256":None, "patches":None }
+ self.update = { "name":None, "version":None, "url":None, "sha256":None, "patches":None }
+ self.matchedLines = {}
+
+ if os.path.isfile(nixfile):
+ with file(nixfile, 'r') as infile:
+ for (n,line) in enumerate(infile):
+ name = re.match(r'^\s*name\s*=\s*"(.*?)"\s*;\s*$', line)
+ version = re.match(r'^\s*version\s*=\s*"(.*?)"\s*;\s*$', line)
+ url = re.match(r'^\s*url\s*=\s*"?(.*?)"?\s*;\s*$', line)
+ sha256 = re.match(r'^\s*sha256\s*=\s*"(.*?)"\s*;\s*$', line)
+ patches = re.match(r'^\s*patches\s*=\s*(\[.*?\])\s*;\s*$', line)
+ if name != None and self.original["name"] == None:
+ self.original["name"] = name.group(1)
+ self.matchedLines[n] = "name"
+ if version != None and self.original["version"] == None:
+ self.original["version"] = version.group(1)
+ self.matchedLines[n] = "version"
+ if url != None and self.original["url"] == None:
+ self.original["url"] = url.group(1)
+ self.matchedLines[n] = "url"
+ if sha256 != None and self.original["sha256"] == None:
+ self.original["sha256"] = sha256.group(1)
+ self.matchedLines[n] = "sha256"
+ if patches != None and self.original["patches"] == None:
+ self.original["patches"] = patches.group(1)
+ self.matchedLines[n] = "patches"
+
+
+ def generateUpdated(self, nixOut):
+ nixTemplateFile = open(os.path.normpath(self.nixfile),'r')
+ nixOutFile = open(os.path.normpath(nixOut),'w')
+ for (n,line) in enumerate(nixTemplateFile):
+ if self.matchedLines.has_key(n) and self.update[self.matchedLines[n]] != None:
+ nixOutFile.write(line.replace(self.original[self.matchedLines[n]], self.update[self.matchedLines[n]], 1))
+ else:
+ nixOutFile.write(line)
+ nixTemplateFile.close()
+ nixOutFile.close()
+
+
+ def loadUpdate(self,orig):
+ if orig.has_key("name") and orig.has_key("version"):
+ self.update["name"] = orig["name"] + '-' + orig["version"]
+ self.update["version"] = orig["version"]
+ if orig.has_key("url") and orig.has_key("sha256") and len(orig["url"])>0:
+ self.update["url"] = orig["url"][0]
+ self.update["sha256"] = orig["sha256"][0]
+ for url in orig["url"][1:-1]:
+ sys.stderr.write("WARNING: URL has been dropped: %s\n" % url)
+ if orig.has_key("patches"):
+ self.update["patches"] = '[ ' + ' '.join(orig['patches']) + ' ]'
+
+
+class TranslationTable(object):
+ def __init__(self):
+ self.tablePath = {}
+ self.tableName = {}
+
+ def update(self, key, path, name=None):
+ self.tablePath[key] = path
+ if name != None:
+ self.tableName[key] = name
+
+ def readTable(self, tableFile):
+ with file(tableFile, 'r') as infile:
+ for line in infile:
+ match = re.match(r'^(.+?)\s+(.+?)\s+(.+?)\s*$', line)
+ if match != None:
+ if not self.tablePath.has_key(match.group(1)):
+ self.tablePath[match.group(1)] = match.group(2)
+ if not self.tableName.has_key(match.group(1)):
+ self.tableName[match.group(1)] = match.group(3)
+ else:
+ match = re.match(r'^(.+?)\s+(.+?)\s*$', line)
+ if not self.tablePath.has_key(match.group(1)):
+ self.tablePath[match.group(1)] = match.group(2)
+
+ def writeTable(self, tableFile):
+ outFile = open(os.path.normpath(tableFile),'w')
+ keys = self.tablePath.keys()
+ keys.sort()
+ for k in keys:
+ if self.tableName.has_key(k):
+ outFile.write( k + " " + self.tablePath[k] + " " + self.tableName[k] + "\n" )
+ else:
+ outFile.write( k + " " + self.tablePath[k] + "\n" )
+ outFile.close()
+
+ def name(self, key):
+ if self.tableName.has_key(key):
+ return self.tableName[key]
+ else:
+ return key
+
+ def path(self, key, orig):
+ if self.tablePath.has_key(key):
+ return self.tablePath[key]
+ else:
+ return orig
+
@@ -247,23 +432,65 @@ if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Generate .nix templates from RPM spec files")
parser.add_argument("specs", metavar="SPEC", nargs="+", help="spec file")
parser.add_argument("-o", "--output", metavar="OUT_DIR", required=True, help="output directory")
- parser.add_argument("-i", "--input", metavar="IN_DIR", default=None, help="input directory")
- parser.add_argument("-m", "--maintainer", metavar="MAINTAINER", required=True, help="package maintainer")
+ parser.add_argument("-b", "--buildRoot", metavar="BUILDROOT_DIR", default=None, help="buildroot output directory")
+ parser.add_argument("-i", "--inputSources", metavar="IN_DIR", default=None, help="sources input directory")
+ parser.add_argument("-m", "--maintainer", metavar="MAINTAINER", default="__NIX_MAINTAINER__", help="package maintainer")
+ parser.add_argument("-r", "--repository", metavar="REP_DIR", default=None, help="nix repository to compare output against")
+ parser.add_argument("-t", "--translate", metavar="TRANSLATE_TABLE", default=None, help="path of translation table for name and path")
+ parser.add_argument("-u", "--translateOut", metavar="TRANSLATE_OUT", default=None, help="output path for updated translation table")
+ parser.add_argument("-a", "--allPackages", metavar="ALL_PACKAGES", default=None, help="top level dir to call packages from")
args = parser.parse_args()
+ allPackagesDir = os.path.normpath( os.path.dirname(args.allPackages) )
+ if not os.path.exists(allPackagesDir):
+ os.makedirs(allPackagesDir)
+ buildRootContent = {}
nameMap = {}
+ newTable = TranslationTable()
+ if args.translate != None:
+ table = TranslationTable()
+ table.readTable(args.translate)
+ newTable.readTable(args.translate)
+ else:
+ table = None
+
for specPath in args.specs:
try:
sys.stderr.write("INFO: generate nix file from: %s\n" % specPath)
- spec = NixTemplateRPM(specPath, args.input, args.maintainer)
- spec.generateTemplate(args.output)
+
+ spec = SPECTemplate(specPath, args.output, args.inputSources, args.buildRoot, table, args.repository, allPackagesDir, args.maintainer)
+ if args.repository != None:
+ if os.path.exists(os.path.join(spec.potential_repository_dir,'default.nix')):
+ nixTemplate = NixTemplate(os.path.join(spec.potential_repository_dir,'default.nix'))
+ nixTemplate.loadUpdate(spec.facts)
+ if not os.path.exists(spec.final_output_dir):
+ os.makedirs(spec.final_output_dir)
+ nixTemplate.generateUpdated(os.path.join(spec.final_output_dir,'default.nix'))
+ else:
+ sys.stderr.write("WARNING: Repository does not contain template: %s\n" % os.path.join(spec.potential_repository_dir,'default.nix'))
+ if args.buildRoot == None:
+ spec.generateCombined()
+ else:
+ buildRootContent[spec.key] = spec.generateSplit()
+ else:
+ if args.buildRoot == None:
+ spec.generateCombined()
+ else:
+ buildRootContent[spec.key] = spec.generateSplit()
+
+ newTable.update(spec.key,spec.relOutputDir,spec.getSelf())
nameMap[spec.getSelf()] = spec
except Exception, e:
sys.stderr.write("ERROR: %s failed with:\n%s\n%s\n" % (specPath,e.message,traceback.format_exc()))
+ if args.translateOut != None:
+ if not os.path.exists(os.path.dirname(os.path.normpath(args.translateOut))):
+ os.makedirs(os.path.dirname(os.path.normpath(args.translateOut)))
+ newTable.writeTable(args.translateOut)
+
graph = {}
for k, v in nameMap.items():
graph[k] = set(v.getBuildInputs("ALL"))
@@ -271,4 +498,21 @@ if __name__ == "__main__":
sortedSpecs = toposort.toposort_flatten(graph)
sortedSpecs = filter( lambda x: x in nameMap.keys(), sortedSpecs)
- print '\n\n'.join(map(lambda x: x.pkgCall, map(lambda x: nameMap[x], sortedSpecs)))
+ allPackagesFile = open(os.path.normpath( args.allPackages ), 'w')
+ allPackagesFile.write( '\n\n'.join(map(lambda x: x.callPackage(), map(lambda x: nameMap[x], sortedSpecs))) )
+ allPackagesFile.close()
+
+ if args.buildRoot != None:
+ buildRootFilename = os.path.normpath( args.buildRoot )
+ if not os.path.exists(os.path.dirname(buildRootFilename)):
+ os.makedirs(os.path.dirname(buildRootFilename))
+ buildRootFile = open(buildRootFilename, 'w')
+ buildRootFile.write( "{ fetchurl, buildRoot }: {\n\n" )
+ keys = buildRootContent.keys()
+ keys.sort()
+ for k in keys:
+ buildRootFile.write( buildRootContent[k] + '\n' )
+ buildRootFile.write( "}\n" )
+ buildRootFile.close()
+
+
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index ba916c12cfc..1a80592a40e 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -420,9 +420,10 @@ rec {
''}
echo "unpacking RPMs..."
+ set +o pipefail
for i in $rpms; do
echo "$i..."
- ${rpm}/bin/rpm2cpio "$i" | (chroot /mnt ${cpio}/bin/cpio -i --make-directories)
+ ${rpm}/bin/rpm2cpio "$i" | chroot /mnt ${cpio}/bin/cpio -i --make-directories
done
eval "$preInstall"
@@ -1033,6 +1034,32 @@ rec {
unifiedSystemDir = true;
};
+ fedora21i386 = {
+ name = "fedora-21-i386";
+ fullName = "Fedora 21 (i386)";
+ packagesList = fetchurl rec {
+ url = "mirror://fedora/linux/releases/21/Everything/i386/os/repodata/${sha256}-primary.xml.gz";
+ sha256 = "a6ad1140adeef65bbc1fdcc7f8f2b356f0d20c71bbe3f1625038e7f43fc44780";
+ };
+ urlPrefix = mirror://fedora/linux/releases/21/Everything/i386/os;
+ archs = ["noarch" "i386" "i586" "i686"];
+ packages = commonFedoraPackages ++ [ "cronie" "util-linux" ];
+ unifiedSystemDir = true;
+ };
+
+ fedora21x86_64 = {
+ name = "fedora-21-x86_64";
+ fullName = "Fedora 21 (x86_64)";
+ packagesList = fetchurl rec {
+ url = "mirror://fedora/linux/releases/21/Everything/x86_64/os/repodata/${sha256}-primary.xml.gz";
+ sha256 = "e2a28baab2ea4632fad93f9f28144cda3458190888fdf7f2acc9bc289f397e96";
+ };
+ urlPrefix = mirror://fedora/linux/releases/21/Everything/x86_64/os;
+ archs = ["noarch" "x86_64"];
+ packages = commonFedoraPackages ++ [ "cronie" "util-linux" ];
+ unifiedSystemDir = true;
+ };
+
opensuse103i386 = {
name = "opensuse-10.3-i586";
fullName = "openSUSE 10.3 (i586)";
diff --git a/pkgs/data/fonts/symbola/default.nix b/pkgs/data/fonts/symbola/default.nix
index 7efb1ea3947..478c72a865c 100644
--- a/pkgs/data/fonts/symbola/default.nix
+++ b/pkgs/data/fonts/symbola/default.nix
@@ -1,11 +1,11 @@
{stdenv, fetchurl, unzip }:
stdenv.mkDerivation rec {
- name = "symbola-7.18";
+ name = "symbola-7.19";
src = fetchurl {
url = "http://users.teilar.gr/~g1951d/Symbola.zip";
- sha256 = "1dk0qawlgdfh58pz2wb80rs9h8m20nmnr4bhk6jmva8201ixz62f";
+ sha256 = "1g7ngcxffrb9vqnmb0w9jmp349f48s0gsbi69b3g108vs8cacrmd";
};
docs_pdf = fetchurl {
url = "http://users.teilar.gr/~g1951d/Symbola.pdf";
diff --git a/pkgs/development/arduino/arduino-core/default.nix b/pkgs/development/arduino/arduino-core/default.nix
index a5b8980e32c..a751076537a 100644
--- a/pkgs/development/arduino/arduino-core/default.nix
+++ b/pkgs/development/arduino/arduino-core/default.nix
@@ -1,9 +1,13 @@
-{ stdenv, fetchFromGitHub, jdk, jre, ant, coreutils, gnugrep, file }:
+{ stdenv, fetchFromGitHub, jdk, jre, ant, coreutils, gnugrep, file, libusb
+, withGui ? false, gtk2 ? null
+}:
+
+assert withGui -> gtk2 != null;
stdenv.mkDerivation rec {
version = "1.0.6";
- name = "arduino-core";
+ name = "arduino${stdenv.lib.optionalString (withGui == false) "-core"}";
src = fetchFromGitHub {
owner = "arduino";
@@ -22,12 +26,16 @@ stdenv.mkDerivation rec {
installPhase = ''
mkdir -p $out/share/arduino
- cp -r ./build/linux/work/hardware/ $out/share/arduino
- cp -r ./build/linux/work/libraries/ $out/share/arduino
- cp -r ./build/linux/work/tools/ $out/share/arduino
- cp -r ./build/linux/work/lib/ $out/share/arduino
+ cp -r ./build/linux/work/* "$out/share/arduino/"
echo ${version} > $out/share/arduino/lib/version.txt
+ ${stdenv.lib.optionalString withGui ''
+ mkdir -p "$out/bin"
+ sed -i -e "s|^java|${jdk}/bin/java|" "$out/share/arduino/arduino"
+ sed -i -e "s|^LD_LIBRARY_PATH=|LD_LIBRARY_PATH=${gtk2}/lib:|" "$out/share/arduino/arduino"
+ ln -sr "$out/share/arduino/arduino" "$out/bin/arduino"
+ ''}
+
# Fixup "/lib64/ld-linux-x86-64.so.2" like references in ELF executables.
echo "running patchelf on prebuilt binaries:"
find "$out" | while read filepath; do
@@ -41,12 +49,16 @@ stdenv.mkDerivation rec {
test $? -eq 0 || { echo "patchelf failed to process $filepath"; exit 1; }
fi
done
+
+ patchelf --set-rpath ${stdenv.lib.makeSearchPath "lib" [ libusb ]} \
+ "$out/share/arduino/hardware/tools/avrdude"
'';
- meta = {
- description = "Libraries for the open-source electronics prototyping platform";
+ meta = with stdenv.lib; {
+ description = "Open-source electronics prototyping platform";
homepage = http://arduino.cc/;
license = stdenv.lib.licenses.gpl2;
- maintainers = [ stdenv.lib.maintainers.antono stdenv.lib.maintainers.robberer ];
+ platforms = platforms.all;
+ maintainers = with maintainers; [ antono robberer bjornfor ];
};
}
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index ef3d962d7d1..06c4f6bbe2b 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
];
preBuild = ''
export makeFlags="$makeFlags LAZARUS_INSTALL_DIR=$out/lazarus/ INSTALL_PREFIX=$out/"
- export NIX_LDFLAGS="$NIX_LDFLAGS -lXi -lX11 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lc -lXext -lpango-1.0 -latk-1.0 -lgdk_pixbuf-2.0 -lcairo -lgcc_s"
+ export NIX_LDFLAGS="$NIX_LDFLAGS -L${stdenv.cc.cc}/lib -lXi -lX11 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lc -lXext -lpango-1.0 -latk-1.0 -lgdk_pixbuf-2.0 -lcairo -lgcc_s"
export LCL_PLATFORM=gtk2
mkdir -p $out/share "$out/lazarus"
tar xf ${fpc.src} --strip-components=1 -C $out/share -m
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/builder.sh b/pkgs/development/compilers/gcc/4.2-apple64/builder.sh
deleted file mode 100644
index 4a4fb476a35..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/builder.sh
+++ /dev/null
@@ -1,131 +0,0 @@
-source $stdenv/setup
-
-
-export NIX_FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
-mkdir $NIX_FIXINC_DUMMY
-
-
-# libstdc++ needs this; otherwise it will use /lib/cpp, which is a Bad
-# Thing.
-export CPP="gcc -E"
-
-
-if test "$noSysDirs" = "1"; then
-
- # Figure out what extra flags to pass to the gcc compilers being
- # generated to make sure that they use our glibc.
- if test -e $NIX_CC/nix-support/orig-glibc; then
- glibc=$(cat $NIX_CC/nix-support/orig-glibc)
-
- # Ugh. Copied from gcc-wrapper/builder.sh. We can't just
- # source in $NIX_CC/nix-support/add-flags, since that would
- # cause *this* GCC to be linked against the *previous* GCC.
- # Need some more modularity there.
- extraCFlags="-B$glibc/lib -isystem $glibc/include"
- extraLDFlags="-B$glibc/lib -L$glibc/lib -Wl,-s \
- -Wl,-dynamic-linker,$glibc/lib/ld-linux.so.2"
-
- # Oh, what a hack. I should be shot for this. In stage 1, we
- # should link against the previous GCC, but not afterwards.
- # Otherwise we retain a dependency. However, ld-wrapper,
- # which adds the linker flags for the previous GCC, is also
- # used in stage 2/3. We can prevent it from adding them by
- # NIX_GLIBC_FLAGS_SET, but then gcc-wrapper will also not add
- # them, thereby causing stage 1 to fail. So we use a trick to
- # only set the flags in gcc-wrapper.
- hook=$(pwd)/ld-wrapper-hook
- echo "NIX_GLIBC_FLAGS_SET=1" > $hook
- export NIX_LD_WRAPPER_START_HOOK=$hook
-
- # Use *real* header files, otherwise a limits.h is generated
- # that does not include Glibc's limits.h (notably missing
- # SSIZE_MAX, which breaks the build).
- export NIX_FIXINC_DUMMY=$glibc/include
- fi
-
- export NIX_EXTRA_CFLAGS=$extraCFlags
- export NIX_EXTRA_LDFLAGS=$extraLDFlags
- export CFLAGS=$extraCFlags
- export CXXFLAGS=$extraCFlags
- export LDFLAGS=$extraLDFlags
-fi
-
-
-preConfigure() {
-
- # Determine the frontends to build.
- langs="c"
- if test -n "$langCC"; then
- langs="$langs,c++"
- fi
- if test -n "$langF77"; then
- langs="$langs,f95"
- fi
- if test -n "$langObjC"; then
- langs="$langs,objc"
- fi
-
- # Perform the build in a different directory.
- mkdir ../build
- cd ../build
-
- configureScript=../$sourceRoot/configure
- configureFlags="--enable-languages=$langs --disable-libstdcxx-pch --disable-libstdcxx-debug --disable-multilib --with-gxx-include-dir=${STDCXX_INCDIR} --host=x86_64-apple-darwin10 --build=x86_64-apple-darwin10 --target=x86_64-apple-darwin10"
-}
-
-
-postInstall() {
- # Remove precompiled headers for now. They are very big and
- # probably not very useful yet.
- find $out/include -name "*.gch" -exec rm -rf {} \; -prune
-
- # Remove `fixincl' to prevent a retained dependency on the
- # previous gcc.
- rm -rf $out/libexec/gcc/*/*/install-tools
-}
-
-
-postUnpack() {
- mv $libstdcxx/libstdcxx $sourceRoot/
-}
-
-
-STDCXX_INCDIR="$out/include/c++/4.2.1"
-
-genericBuild
-
-
-echo '-------------------------------------------------------------------------------------------------------------------------'
-echo 'libstdcxx'
-echo '-------------------------------------------------------------------------------------------------------------------------'
-
-cd ..
-pwd
-
-unpackPhase () {
- true
-}
-
-patchPhase() {
- true
-}
-
-preConfigure() {
- # Perform the build in a different directory.
- mkdir ../build_libstdcxx
- cd ../build_libstdcxx
-
- ln -s ../build/gcc gcc
-
- configureScript=../$sourceRoot/libstdcxx/configure
- configureFlags="--disable-libstdcxx-pch --disable-libstdcxx-debug --disable-multilib --with-gxx-include-dir=${STDCXX_INCDIR}"
-}
-
-postInstall() {
- echo "cp -v ${STDCXX_INCDIR}/*/bits/* ${STDCXX_INCDIR}/bits/"
- cp -v ${STDCXX_INCDIR}/*/bits/* ${STDCXX_INCDIR}/bits/
-}
-
-genericBuild
-
-ln -s $out/lib/x86_64 $out/lib64
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/debug_list.patch b/pkgs/development/compilers/gcc/4.2-apple64/debug_list.patch
deleted file mode 100644
index b26f15e6512..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/debug_list.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -rc libstdcxx-16-orig/libstdcxx/libstdc++-v3/src/Makefile.in libstdcxx-16/libstdcxx/libstdc++-v3/src/Makefile.in
-*** libstdcxx-16-orig/libstdcxx/libstdc++-v3/src/Makefile.in Thu Jul 23 19:13:52 2009
---- libstdcxx-16/libstdcxx/libstdc++-v3/src/Makefile.in Thu Jul 23 19:38:23 2009
-***************
-*** 65,71 ****
- numeric_members.lo time_members.lo
- am__objects_2 = basic_file.lo c++locale.lo
- am__objects_3 = bitmap_allocator.lo pool_allocator.lo mt_allocator.lo \
-! codecvt.lo complex_io.lo ctype.lo debug.lo debug_list.lo \
- functexcept.lo globals_locale.lo globals_io.lo ios.lo \
- ios_failure.lo ios_init.lo ios_locale.lo limits.lo list.lo \
- locale.lo locale_init.lo locale_facets.lo localename.lo \
---- 65,71 ----
- numeric_members.lo time_members.lo
- am__objects_2 = basic_file.lo c++locale.lo
- am__objects_3 = bitmap_allocator.lo pool_allocator.lo mt_allocator.lo \
-! codecvt.lo complex_io.lo ctype.lo debug.lo \
- functexcept.lo globals_locale.lo globals_io.lo ios.lo \
- ios_failure.lo ios_init.lo ios_locale.lo limits.lo list.lo \
- locale.lo locale_init.lo locale_facets.lo localename.lo \
-***************
-*** 315,321 ****
- complex_io.cc \
- ctype.cc \
- debug.cc \
-- debug_list.cc \
- functexcept.cc \
- globals_locale.cc \
- globals_io.cc \
---- 315,320 ----
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/default.nix b/pkgs/development/compilers/gcc/4.2-apple64/default.nix
deleted file mode 100644
index 42d9f29e2b5..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ stdenv, fetchurl, noSysDirs
-, langCC ? true, langObjC ? true, langF77 ? false
-, profiledCompiler ? false
-, gmp ? null, mpfr ? null, bison ? null, flex ? null
-}:
-
-assert false;
-assert stdenv.isDarwin;
-assert langF77 -> gmp != null;
-
-let
- version = "4.2.1"; # Upstream GCC version, from `gcc/BASE-VER'.
- revision = "5666.3"; # Apple's fork revision number.
-in
-
-stdenv.mkDerivation rec {
- name = "gcc-apple-${version}.${revision}";
-
- builder = ./builder.sh;
-
- src =
- stdenv.lib.optional true (fetchurl {
- url = "http://www.opensource.apple.com/tarballs/gcc/gcc-${revision}.tar.gz";
- sha256 = "0nq1szgqx9ryh1qsn5n6yd55gpvf56wr8f7w1jzabb8idlvz8ikc";
- }) ++
- stdenv.lib.optional langCC (fetchurl {
- url = http://www.opensource.apple.com/tarballs/libstdcxx/libstdcxx-39.tar.gz;
- sha256 = "ccf4cf432c142778c766affbbf66b61001b6c4f1107bc2b2c77ce45598786b6d";
- });
-
- enableParallelBuilding = true;
-
- libstdcxx = "libstdcxx-39";
-
- sourceRoot = "gcc-${revision}/";
-
- # The floor_log2_patch is from a Gentoo fix for the same issue:
- # https://bugs.gentoo.org/attachment.cgi?id=363174&action=diff
- patches =
- [ ./pass-cxxcpp.patch ./floor_log2_patch.diff ]
- ++ stdenv.lib.optional noSysDirs ./no-sys-dirs.patch
- ++ stdenv.lib.optional langCC ./fix-libstdc++-link.patch;
-
- inherit noSysDirs langCC langF77 langObjC;
- langC = true;
-
- buildInputs = stdenv.lib.optionals langF77 [ gmp mpfr bison flex ];
-
- #meta.broken = true;
-}
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/fix-libstdc++-link.patch b/pkgs/development/compilers/gcc/4.2-apple64/fix-libstdc++-link.patch
deleted file mode 100644
index 5a417f8151b..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/fix-libstdc++-link.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-Prevent our libstdc++.dylib from having a runtime dependency on
-/usr/lib/libstdc++.dylib. This is caused by the implicit -lstdc++
-passed by g++ when it links libstdc++.dylib. Adding "-nostdlib" to
-the g++ invocation prevents this.
-
-jww (2014-06-21): I've added several more patches to this, for building on
-Mavericks.
-
-diff -ru -x '*~' libstdcxx-39-orig/libstdcxx/libstdc++-v3/src/Makefile.in libstdcxx-39/libstdcxx/libstdc++-v3/src/Makefile.in
---- x/libstdcxx/libstdc++-v3/src/Makefile.in 2006-10-16 21:08:22.000000000 +0200
-+++ y/libstdcxx/libstdc++-v3/src/Makefile.in 2012-02-17 18:44:05.210570590 +0100
-@@ -388,7 +388,7 @@
-
- libstdc___la_DEPENDENCIES = ${version_dep} $(libstdc___la_LIBADD)
- libstdc___la_LDFLAGS = \
-- -version-info $(libtool_VERSION) ${version_arg} -lm
-+ -version-info $(libtool_VERSION) ${version_arg} -lm -Wc,-nostdlib
-
-
- # Use special rules for the deprecated source files so that they find
---- x/libstdcxx/libstdc++-v3/libsupc++/unwind-cxx.h
-+++ y/libstdcxx/libstdc++-v3/libsupc++/unwind-cxx.h
-@@ -38,7 +38,7 @@
- #include
- #include
- #include
--#include "unwind.h"
-+#include "unwind-generic.h"
-
- #pragma GCC visibility push(default)
-
-@@ -133,7 +133,7 @@ extern "C" void __cxa_bad_typeid ();
- // throws, and if bad_exception needs to be thrown. Called from the
- // compiler.
- extern "C" void __cxa_call_unexpected (void *) __attribute__((noreturn));
--extern "C" void __cxa_call_terminate (void*) __attribute__((noreturn));
-+extern "C" void __cxa_call_terminate(_Unwind_Exception* ue_header);
-
- #ifdef __ARM_EABI_UNWINDER__
- // Arm EABI specified routines.
---- x/libstdcxx/libstdc++-v3/include/ext/bitmap_allocator.h
-+++ y/libstdcxx/libstdc++-v3/include/ext/bitmap_allocator.h
-@@ -549,6 +549,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
- */
- class free_list
- {
-+ public:
- typedef size_t* value_type;
- typedef __detail::__mini_vector vector_type;
- typedef vector_type::iterator iterator;
---- x/libstdcxx/libstdc++-v3/include/ext/ropeimpl.h
-+++ y/libstdcxx/libstdc++-v3/include/ext/ropeimpl.h
-@@ -433,7 +433,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
- {
- size_t __old_len = __r->_M_size;
- _CharT* __new_data = (_CharT*)
-- _Data_allocate(_S_rounded_up_size(__old_len + __len));
-+ _Base::_Data_allocate(_S_rounded_up_size(__old_len + __len));
- _RopeLeaf* __result;
-
- uninitialized_copy_n(__r->_M_data, __old_len, __new_data);
-@@ -817,7 +817,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
- if (__result_len > __lazy_threshold)
- goto lazy;
- __section = (_CharT*)
-- _Data_allocate(_S_rounded_up_size(__result_len));
-+ _Base::_Data_allocate(_S_rounded_up_size(__result_len));
- try
- { (*(__f->_M_fn))(__start, __result_len, __section); }
- catch(...)
-
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/floor_log2_patch.diff b/pkgs/development/compilers/gcc/4.2-apple64/floor_log2_patch.diff
deleted file mode 100644
index f37e6c4990e..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/floor_log2_patch.diff
+++ /dev/null
@@ -1,62 +0,0 @@
---- gcc-5666.3/gcc/toplev.h
-+++ gcc-5666.3/gcc/toplev.h
-@@ -151,6 +151,8 @@
- /* Return true iff flags are set as if -ffast-math. */
- extern bool fast_math_flags_set_p (void);
-
-+#if GCC_VERSION < 3004
-+
- /* Return log2, or -1 if not exact. */
- extern int exact_log2 (unsigned HOST_WIDE_INT);
-
-@@ -158,7 +160,7 @@
- extern int floor_log2 (unsigned HOST_WIDE_INT);
-
- /* Inline versions of the above for speed. */
--#if GCC_VERSION >= 3004
-+#else /* GCC_VERSION < 3004 */
- # if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_LONG
- # define CLZ_HWI __builtin_clzl
- # define CTZ_HWI __builtin_ctzl
-@@ -172,18 +172,18 @@
- # define CTZ_HWI __builtin_ctz
- # endif
-
--extern inline int
-+static inline int
- floor_log2 (unsigned HOST_WIDE_INT x)
- {
- return x ? HOST_BITS_PER_WIDE_INT - 1 - (int) CLZ_HWI (x) : -1;
- }
-
--extern inline int
-+static inline int
- exact_log2 (unsigned HOST_WIDE_INT x)
- {
- return x == (x & -x) && x ? (int) CTZ_HWI (x) : -1;
- }
--#endif /* GCC_VERSION >= 3004 */
-+#endif /* GCC_VERSION < 3004 */
-
- /* Functions used to get and set GCC's notion of in what directory
- compilation was started. */
---- gcc-5666.3/gcc/toplev.c
-+++ gcc-5666.3/gcc/toplev.c
-@@ -555,7 +555,7 @@
- for floor_log2 and exact_log2; see toplev.h. That construct, however,
- conflicts with the ISO C++ One Definition Rule. */
-
--#if GCC_VERSION < 3004 || !defined (__cplusplus)
-+#if GCC_VERSION < 3004
-
- /* Given X, an unsigned number, return the largest int Y such that 2**Y <= X.
- If X is 0, return -1. */
-@@ -607,7 +607,7 @@
- #endif
- }
-
--#endif /* GCC_VERSION < 3004 || !defined (__cplusplus) */
-+#endif /* GCC_VERSION < 3004 */
-
- /* Handler for fatal signals, such as SIGSEGV. These are transformed
- into ICE messages, which is much more user friendly. In case the
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/no-sys-dirs.patch b/pkgs/development/compilers/gcc/4.2-apple64/no-sys-dirs.patch
deleted file mode 100644
index 69f9d9d14c6..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/no-sys-dirs.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-diff -ruN gcc-4.1.0/gcc/Makefile.in gcc-4.1.0.new/gcc/Makefile.in
---- gcc-4.1.0/gcc/Makefile.in 2006-02-16 16:23:24.000000000 +0100
-+++ gcc-4.1.0.new/gcc/Makefile.in 2006-03-01 18:55:12.000000000 +0100
-@@ -219,7 +219,7 @@
- CPPFLAGS = @CPPFLAGS@
-
- # These exists to be overridden by the x-* and t-* files, respectively.
--X_CFLAGS =
-+X_CFLAGS = $(NIX_EXTRA_CFLAGS) $(NIX_EXTRA_LDFLAGS)
- T_CFLAGS =
-
- X_CPPFLAGS =
-@@ -383,7 +383,11 @@
- MD5_H = $(srcdir)/../include/md5.h
-
- # Default native SYSTEM_HEADER_DIR, to be overridden by targets.
--NATIVE_SYSTEM_HEADER_DIR = /usr/include
-+# Nix: we override NATIVE_SYSTEM_HEADER_DIR in order to prevent
-+# `fixinc' from fixing header files in /usr/include. However,
-+# NATIVE_SYSTEM_HEADER_DIR must point to an existing directory, so set
-+# it to some dummy directory.
-+NATIVE_SYSTEM_HEADER_DIR = $(NIX_FIXINC_DUMMY)
- # Default cross SYSTEM_HEADER_DIR, to be overridden by targets.
- CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@
-
-@@ -395,7 +399,7 @@
- STMP_FIXINC = @STMP_FIXINC@
-
- # Test to see whether exists in the system header files.
--LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ]
-+LIMITS_H_TEST = true
-
- # Directory for prefix to system directories, for
- # each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc.
-@@ -3002,7 +3006,7 @@
- -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
- -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \
- -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \
-- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \
-+ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \
- -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \
- -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \
- @TARGET_SYSTEM_ROOT_DEFINE@
-
-diff -ruN gcc-4.1.0/ltcf-cxx.sh gcc-4.1.0.new/ltcf-cxx.sh
---- gcc-4.1.0/ltcf-cxx.sh 2005-07-16 04:30:53.000000000 +0200
-+++ gcc-4.1.0.new/ltcf-cxx.sh 2006-03-01 18:58:15.000000000 +0100
-@@ -989,7 +989,7 @@
- # the conftest object file.
- pre_test_object_deps_done=no
-
-- for p in `eval $output_verbose_link_cmd`; do
-+ for p in `true`; do
-
- case $p in
-
-diff -ruN gcc-4.1.0/ltconfig gcc-4.1.0.new/ltconfig
---- gcc-4.1.0/ltconfig 2005-07-16 04:30:53.000000000 +0200
-+++ gcc-4.1.0.new/ltconfig 2006-03-01 18:59:58.000000000 +0100
-@@ -2322,6 +2322,11 @@
- # A language-specific compiler.
- CC=$CC
-
-+# Ugly hack to get libmudflap (and possibly other libraries) to build.
-+# Libtool filters out \`-B' flags when linking (why?), so the \`-B' flag
-+# to Glibc gets lost. Here we forcibly add it to any invocation.
-+CC="\$CC $NIX_EXTRA_LDFLAGS"
-+
- # Is the compiler the GNU C compiler?
- with_gcc=$with_gcc
-
-diff -ruN gcc-4.1.0/Makefile.in gcc-4.1.0.new/Makefile.in
---- gcc-4.1.0/Makefile.in 2005-12-15 15:02:02.000000000 +0100
-+++ gcc-4.1.0.new/Makefile.in 2006-03-01 19:41:04.000000000 +0100
-@@ -286,7 +286,7 @@
- WINDRES = @WINDRES@
-
- CFLAGS = @CFLAGS@
--LDFLAGS =
-+LDFLAGS = $(NIX_EXTRA_LDFLAGS)
- LIBCFLAGS = $(CFLAGS)
- CXXFLAGS = @CXXFLAGS@
- LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
-@@ -329,12 +329,12 @@
- # CFLAGS will be just -g. We want to ensure that TARGET libraries
- # (which we know are built with gcc) are built with optimizations so
- # prepend -O2 when setting CFLAGS_FOR_TARGET.
--CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-+CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) $(NIX_EXTRA_CFLAGS)
- SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
--CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-+CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) $(NIX_EXTRA_CFLAGS)
- LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
- LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
--LDFLAGS_FOR_TARGET =
-+LDFLAGS_FOR_TARGET = $(NIX_EXTRA_LDFLAGS)
- PICFLAG_FOR_TARGET =
-
- # ------------------------------------
diff --git a/pkgs/development/compilers/gcc/4.2-apple64/pass-cxxcpp.patch b/pkgs/development/compilers/gcc/4.2-apple64/pass-cxxcpp.patch
deleted file mode 100644
index 4f9a29ae51b..00000000000
--- a/pkgs/development/compilers/gcc/4.2-apple64/pass-cxxcpp.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -rc gcc-orig/Makefile.in gcc-4.1.1/Makefile.in
-*** gcc-orig/Makefile.in Wed Jun 21 13:40:23 2006
---- gcc-4.1.1/Makefile.in Wed Jun 21 14:19:44 2006
-***************
-*** 213,219 ****
- RAW_CXX_TARGET_EXPORTS = \
- $(BASE_TARGET_EXPORTS) \
- CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
-! CXX="$(RAW_CXX_FOR_TARGET)"; export CXX;
-
- NORMAL_TARGET_EXPORTS = \
- $(BASE_TARGET_EXPORTS) \
---- 213,220 ----
- RAW_CXX_TARGET_EXPORTS = \
- $(BASE_TARGET_EXPORTS) \
- CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
-! CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \
-! CXXCPP="$(RAW_CXX_FOR_TARGET) $(CFLAGS_FOR_BUILD) -E"; export CXXCPP;
-
- NORMAL_TARGET_EXPORTS = \
- $(BASE_TARGET_EXPORTS) \
diff --git a/pkgs/development/compilers/go/1.3.nix b/pkgs/development/compilers/go/1.3.nix
index 2f23698059f..6d88049cfbe 100644
--- a/pkgs/development/compilers/go/1.3.nix
+++ b/pkgs/development/compilers/go/1.3.nix
@@ -81,6 +81,7 @@ stdenv.mkDerivation {
installPhase = ''
export CC=cc
mkdir -p "$out/bin"
+ unset GOPATH
export GOROOT="$(pwd)/"
export GOBIN="$out/bin"
export PATH="$GOBIN:$PATH"
@@ -99,7 +100,10 @@ stdenv.mkDerivation {
cp ./misc/emacs/* $out/share/emacs/site-lisp/
'';
+ setupHook = ./setup-hook.sh;
+
meta = {
+ branch = "1.3";
homepage = http://golang.org/;
description = "The Go Programming language";
license = "BSD";
diff --git a/pkgs/development/compilers/go/1.4.nix b/pkgs/development/compilers/go/1.4.nix
index 45fd8e117b2..9acb399aa1b 100644
--- a/pkgs/development/compilers/go/1.4.nix
+++ b/pkgs/development/compilers/go/1.4.nix
@@ -95,7 +95,10 @@ stdenv.mkDerivation {
go test -v $TOOL_ROOT/cover $TOOL_ROOT/vet # $TOOL_ROOT/godoc
'';
+ setupHook = ./setup-hook.sh;
+
meta = {
+ branch = "1.4";
homepage = http://golang.org/;
description = "The Go Programming language";
license = "BSD";
diff --git a/pkgs/development/compilers/go/gox.nix b/pkgs/development/compilers/go/gox.nix
index 932c3967726..1833ca37d0e 100644
--- a/pkgs/development/compilers/go/gox.nix
+++ b/pkgs/development/compilers/go/gox.nix
@@ -1,49 +1,23 @@
-{ stdenv, lib, go_1_3, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-let
- goDeps = [
- {
- root = "github.com/mitchellh/gox";
- src = fetchFromGitHub {
- owner = "mitchellh";
- repo = "gox";
- rev = "c7329055e2aeb253a947e5cc876586ff4ca19199";
- sha256 = "0zhb88jjxqn3sdc4bpzvajqvgi9igp5gk03q12gaksaxhy2wl4jy";
- };
- }
- {
- root = "github.com/mitchellh/iochan";
- src = fetchFromGitHub {
- owner = "mitchellh";
- repo = "iochan";
- rev = "b584a329b193e206025682ae6c10cdbe03b0cd77";
- sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b";
- };
- }
- ];
- sources = stdenv.mkDerivation rec {
- name = "go-deps";
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
+with goPackages;
+
+buildGoPackage rec {
+ rev = "c7329055e2aeb253a947e5cc876586ff4ca19199";
+ name = "gox-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mitchellh/gox";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mitchellh";
+ repo = "gox";
+ sha256 = "0zhb88jjxqn3sdc4bpzvajqvgi9igp5gk03q12gaksaxhy2wl4jy";
};
-in
-stdenv.mkDerivation rec {
- name = "gox";
+ buildInputs = [ iochan ];
- src = sources;
+ propagatedBuildInputs = [ go ];
- propagatedBuildInputs = [ go_1_3 ];
-
- installPhase = ''
- mkdir -p $out/bin
- export GOPATH=$src
- go build -v -o $out/bin/gox github.com/mitchellh/gox
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "A simple, no-frills tool for Go cross compilation that behaves a lot like standard go build";
diff --git a/pkgs/development/compilers/go/setup-hook.sh b/pkgs/development/compilers/go/setup-hook.sh
new file mode 100644
index 00000000000..1b91c8312b8
--- /dev/null
+++ b/pkgs/development/compilers/go/setup-hook.sh
@@ -0,0 +1,5 @@
+addToGoPath() {
+ addToSearchPath GOPATH $1/share/go
+}
+
+envHooks=(${envHooks[@]} addToGoPath)
diff --git a/pkgs/development/compilers/llvm/3.5/clang.nix b/pkgs/development/compilers/llvm/3.5/clang.nix
index f2f3d15de17..a95b77c08b6 100644
--- a/pkgs/development/compilers/llvm/3.5/clang.nix
+++ b/pkgs/development/compilers/llvm/3.5/clang.nix
@@ -21,6 +21,11 @@ stdenv.mkDerivation {
patches = [ ./clang-purity.patch ];
+ postPatch = ''
+ sed -i -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/Tools.cpp
+ sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
+ '';
+
# Clang expects to find LLVMgold in its own prefix
# Clang expects to find sanitizer libraries in its own prefix
postInstall = ''
diff --git a/pkgs/development/compilers/llvm/3.5/libc++abi/darwin.patch b/pkgs/development/compilers/llvm/3.5/libc++abi/darwin.patch
deleted file mode 100644
index 53ea8783f7a..00000000000
--- a/pkgs/development/compilers/llvm/3.5/libc++abi/darwin.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -ru -x '*~' libcxxabi-orig/lib/buildit libcxxabi/lib/buildit
---- libcxxabi-orig/lib/buildit 2014-09-18 16:54:14.000000000 +0200
-+++ libcxxabi/lib/buildit 2014-09-24 13:22:27.000000000 +0200
-@@ -51,12 +51,8 @@
- -dynamiclib -nodefaultlibs \
- -current_version ${RC_ProjectSourceVersion} \
- -compatibility_version 1 \
-- -install_name /usr/lib/libc++abi.dylib \
-+ -install_name $out/lib/libc++abi.dylib \
- -lSystem"
-- if [ -f "${SDKROOT}/usr/local/lib/libCrashReporterClient.a" ]
-- then
-- LDSHARED_FLAGS+=" -lCrashReporterClient"
-- fi
- ;;
- *-*-mingw*)
- # FIXME: removing libgcc and libsupc++ dependencies means porting libcxxrt and LLVM/compiler-rt
diff --git a/pkgs/development/compilers/llvm/3.5/libc++abi/default.nix b/pkgs/development/compilers/llvm/3.5/libc++abi/default.nix
index 492dbf3b06d..ca8558f7147 100644
--- a/pkgs/development/compilers/llvm/3.5/libc++abi/default.nix
+++ b/pkgs/development/compilers/llvm/3.5/libc++abi/default.nix
@@ -1,23 +1,29 @@
-{ stdenv, cmake, coreutils, fetchurl, libcxx, libunwind, llvm }:
+{ stdenv, cmake, fetchurl, libcxx, libunwind, llvm }:
-let version = "3.5.0"; in
-
-stdenv.mkDerivation {
+let
+ version = "3.5.0";
+ cmakeLists = fetchurl {
+ name = "CMakeLists.txt";
+ url = "http://llvm.org/svn/llvm-project/libcxxabi/trunk/CMakeLists.txt?p=217324";
+ sha256 = "10idgcbs4pcx6mjsbq1vjm8hzqqdk2p7k86cw9f473jmfyfwgf5j";
+ };
+in stdenv.mkDerivation {
name = "libc++abi-${version}";
src = fetchurl {
- url = "http://llvm.org/releases/${version}/libcxxabi-${version}.src.tar.xz";
+ url = "http://llvm.org/releases/${version}/libcxxabi-${version}.src.tar.xz";
sha256 = "1ndcpw3gfrzh7m1jac2qadhkrqgvb65cns69j9niydyj5mmbxijk";
};
- NIX_CFLAGS_LINK = "-L${libunwind}/lib";
-
- buildInputs = [ coreutils cmake llvm ];
+ buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin) libunwind;
postUnpack = ''
unpackFile ${libcxx.src}
- export NIX_CFLAGS_COMPILE+=" -I${libunwind}/include -I$PWD/include"
- export cmakeFlags="-DLIBCXXABI_LIBCXX_INCLUDES=$(${coreutils}/bin/readlink -f libcxx-*)/include"
+ unpackFile ${llvm.src}
+ echo cp ${cmakeLists} libcxxabi-*/CMakeLists.txt
+ cp ${cmakeLists} libcxxabi-*/CMakeLists.txt
+ export NIX_CFLAGS_COMPILE+=" -I$PWD/include"
+ export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_INCLUDES=$PWD/$(ls -d libcxx-*)/include"
'' + stdenv.lib.optionalString stdenv.isDarwin ''
export TRIPLE=x86_64-apple-darwin
'';
@@ -38,7 +44,7 @@ stdenv.mkDerivation {
else ''
install -d -m 755 $out/include $out/lib
install -m 644 lib/libc++abi.so.1.0 $out/lib
- install -m 644 ../include/cxxabi.h $out/include
+ install -m 644 $src/include/cxxabi.h $out/include
ln -s libc++abi.so.1.0 $out/lib/libc++abi.so
ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1
'';
diff --git a/pkgs/development/compilers/llvm/3.5/libc++abi/no-stdc++.patch b/pkgs/development/compilers/llvm/3.5/libc++abi/no-stdc++.patch
deleted file mode 100644
index ddc9778a486..00000000000
--- a/pkgs/development/compilers/llvm/3.5/libc++abi/no-stdc++.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru -x '*~' libcxxabi-orig/lib/buildit libcxxabi/lib/buildit
---- libcxxabi-orig/lib/buildit 2014-09-18 16:54:14.000000000 +0200
-+++ libcxxabi/lib/buildit 2014-09-24 13:22:27.000000000 +0200
-@@ -70,7 +66,7 @@
- SOEXT=so
- LDSHARED_FLAGS="-o libc++abi.so.1.0 \
- -shared -nodefaultlibs -Wl,-soname,libc++abi.so.1 \
-- -lpthread -lrt -lc -lstdc++"
-+ -lpthread -lrt -lc"
- ;;
- esac
-
diff --git a/pkgs/development/compilers/mlton/default.nix b/pkgs/development/compilers/mlton/default.nix
index 2fa986375ff..381941acc20 100644
--- a/pkgs/development/compilers/mlton/default.nix
+++ b/pkgs/development/compilers/mlton/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
sourceRoot = name;
- buildInputs = [ patchelf gmp ];
+ buildInputs = [ gmp ] ++ stdenv.lib.optional stdenv.isLinux patchelf;
makeFlags = [ "all-no-docs" ];
@@ -47,6 +47,12 @@ stdenv.mkDerivation rec {
find . -type f | grep -v -e '\.tgz''$' | xargs sed -i "s@/usr/bin/env bash@$(type -p bash)@"
substituteInPlace $(pwd)/Makefile --replace '/bin/cp' $(type -p cp)
+ substituteInPlace bin/mlton-script --replace gcc cc
+ substituteInPlace bin/regression --replace gcc cc
+ substituteInPlace lib/mlnlffi-lib/Makefile --replace gcc cc
+ substituteInPlace mlnlffigen/gen-cppcmd --replace gcc cc
+ substituteInPlace runtime/Makefile --replace gcc cc
+ substituteInPlace ../${usr_prefix}/bin/mlton --replace gcc cc
# Fix paths in the binary distribution.
BIN_DIST_DIR="$(pwd)/../${usr_prefix}"
@@ -91,8 +97,8 @@ stdenv.mkDerivation rec {
# Path to gmp.h.
substituteInPlace $(pwd)/install/${usr_prefix}/bin/mlton --replace "-cc-opt '-O1 -fno-common'" "-cc-opt '-O1 -fno-common -I${gmp}/include'"
- # Path to the same gcc used in the build; needed at runtime.
- substituteInPlace $(pwd)/install/${usr_prefix}/bin/mlton --replace "gcc='gcc'" "gcc='"$(type -p gcc)"'"
+ # Path to the same cc used in the build; needed at runtime.
+ substituteInPlace $(pwd)/install/${usr_prefix}/bin/mlton --replace "gcc='gcc'" "gcc='"$(type -p cc)"'"
# Copy files to final positions.
cp -r $(pwd)/install/${usr_prefix}/bin $out
diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix
new file mode 100644
index 00000000000..3b8f46eb688
--- /dev/null
+++ b/pkgs/development/compilers/nim/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, unzip }:
+
+stdenv.mkDerivation rec {
+ name = "nim-0.10.2";
+
+ buildInputs = [ unzip ];
+
+ src = fetchurl {
+ url = "http://nim-lang.org/download/${name}.zip";
+ sha256 = "1jkrf8wgva7kfl0vqs1f3scidi6a85r6bkz2zf90k8gdpin9idrg";
+ };
+
+ buildPhase = "sh build.sh";
+ installPhase =
+ ''
+ substituteInPlace install.sh --replace '$1/nim' "$out"
+ sh install.sh $out
+ '';
+
+ meta = with stdenv.lib;
+ { description = "Statically typed, imperative programming language";
+ homepage = http://nim-lang.org/;
+ license = licenses.mit;
+ maintainers = with maintainers; [ emery ];
+ platforms = platforms.linux; # arbitrary
+ };
+}
diff --git a/pkgs/development/go-modules/generic/default.nix b/pkgs/development/go-modules/generic/default.nix
new file mode 100644
index 00000000000..8fed5a55be0
--- /dev/null
+++ b/pkgs/development/go-modules/generic/default.nix
@@ -0,0 +1,88 @@
+{ go }:
+
+{ name, buildInputs ? []
+
+# Go import path of the package
+, goPackagePath
+
+, meta ? {}, ... } @ args:
+
+go.stdenv.mkDerivation ( args // {
+ name = "go${go.meta.branch}-${name}";
+ buildInputs = [ go ] ++ buildInputs;
+
+ configurePhase = args.configurePhase or ''
+ runHook preConfigure
+
+ cd "$NIX_BUILD_TOP"
+ mkdir -p "go/src/$(dirname "$goPackagePath")"
+ mv "$sourceRoot" "go/src/$goPackagePath"
+
+ GOPATH=$NIX_BUILD_TOP/go:$GOPATH
+
+ runHook postConfigure
+ '';
+
+ buildPhase = args.buildPhase or ''
+ runHook preBuild
+
+ if [ -n "$subPackages" ] ; then
+ for p in $subPackages ; do
+ go install $buildFlags "''${buildFlagsArray[@]}" -p $NIX_BUILD_CORES -v $goPackagePath/$p
+ done
+ else
+ find . -type d | while read d; do
+ for i in $d/*.go; do
+ go install $buildFlags "''${buildFlagsArray[@]}" -p $NIX_BUILD_CORES -v $d
+ break
+ done
+ done
+ fi
+
+ runHook postBuild
+ '';
+
+ checkPhase = args.checkPhase or ''
+ runHook preCheck
+
+ if [ -n "$subPackages" ] ; then
+ for p in $subPackages ; do
+ go test -p $NIX_BUILD_CORES -v $goPackagePath/$p
+ done
+ else
+ find . -type d | while read d; do
+ for i in $d/*_test.go; do
+ go test -p $NIX_BUILD_CORES -v $d
+ break
+ done
+ done
+ fi
+
+ runHook postCheck
+ '';
+
+ installPhase = args.installPhase or ''
+ runHook preInstall
+
+ mkdir $out
+
+ if [ -z "$dontInstallSrc" ]; then
+ local dir
+ for d in pkg src; do
+ mkdir -p $out/share/go
+ dir="$NIX_BUILD_TOP/go/$d"
+ [ -e "$dir" ] && cp -r $dir $out/share/go
+ done
+ fi
+
+ dir="$NIX_BUILD_TOP/go/bin"
+ [ -e "$dir" ] && cp -r $dir $out
+
+ runHook postInstall
+ '';
+
+ meta = meta // {
+ # add an extra maintainer to every package
+ maintainers = (meta.maintainers or []) ++ [ go.stdenv.lib.maintainers.emery ];
+ };
+})
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 6e64bde1bb4..d30e3061d8d 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -37,7 +37,7 @@ self: super: {
zeromq4-haskell = super.zeromq4-haskell.override { zeromq = pkgs.zeromq4; };
# These changes are required to support Darwin.
- git-annex = super.git-annex.override {
+ git-annex = (disableSharedExecutables super.git-annex).override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
@@ -151,8 +151,9 @@ self: super: {
wizards = doJailbreak super.wizards;
# https://github.com/NixOS/cabal2nix/issues/136
- gtk = addBuildDepends super.gtk [pkgs.pkgconfig pkgs.gtk];
glib = addBuildDepends super.glib [pkgs.pkgconfig pkgs.glib];
+ gtk3 = super.gtk3.override { inherit (pkgs) gtk3; };
+ gtk = addBuildDepends super.gtk [pkgs.pkgconfig pkgs.gtk];
# https://github.com/jgm/zip-archive/issues/21
zip-archive = addBuildTool super.zip-archive pkgs.zip;
@@ -187,16 +188,19 @@ self: super: {
HList = dontCheck super.HList;
memcached-binary = dontCheck super.memcached-binary;
postgresql-simple = dontCheck super.postgresql-simple;
+ postgrest = dontCheck super.postgrest;
snowball = dontCheck super.snowball;
wai-middleware-hmac = dontCheck super.wai-middleware-hmac;
xmlgen = dontCheck super.xmlgen;
# These packages try to access the network.
amqp = dontCheck super.amqp;
+ amqp-conduit = dontCheck super.amqp-conduit;
concurrent-dns-cache = dontCheck super.concurrent-dns-cache;
dbus = dontCheck super.dbus; # http://hydra.cryp.to/build/498404/log/raw
hadoop-rpc = dontCheck super.hadoop-rpc; # http://hydra.cryp.to/build/527461/nixlog/2/raw
hasql = dontCheck super.hasql; # http://hydra.cryp.to/build/502489/nixlog/4/raw
+ hjsonschema = overrideCabal super.hjsonschema (drv: { testTarget = "local"; });
holy-project = dontCheck super.holy-project; # http://hydra.cryp.to/build/502002/nixlog/1/raw
http-client = dontCheck super.http-client; # http://hydra.cryp.to/build/501430/nixlog/1/raw
http-conduit = dontCheck super.http-conduit; # http://hydra.cryp.to/build/501966/nixlog/1/raw
@@ -370,9 +374,6 @@ self: super: {
# https://github.com/chrisdone/hindent/issues/83
hindent = dontCheck super.hindent;
- # https://github.com/begriffs/postgrest/issues/127
- postgrest = dontDistribute super.postgrest;
-
# Needs older versions of its dependencies.
structured-haskell-mode = (dontJailbreak super.structured-haskell-mode).override {
haskell-src-exts = self.haskell-src-exts_1_15_0_1; # https://github.com/chrisdone/structured-haskell-mode/issues/90
@@ -418,16 +419,9 @@ self: super: {
# https://github.com/haskell-hub/hub-src/issues/24
hub = markBrokenVersion "1.4.0" super.hub;
- # https://github.com/audreyt/MoeDict.hs/issues/1
- MoeDict = markBrokenVersion "0.0.1" super.MoeDict;
-
# https://github.com/pixbi/duplo/issues/25
duplo = dontCheck super.duplo;
- # https://github.com/seagreen/hjsonschema/issues/4
- # https://github.com/seagreen/hjsonschema/issues/5
- hjsonschema = dontHaddock (dontCheck super.hjsonschema);
-
# Nix-specific workaround
xmonad = appendPatch super.xmonad ./xmonad-nix.patch;
@@ -451,6 +445,23 @@ self: super: {
# Upstream notified by e-mail.
OpenGLRaw21 = markBrokenVersion "1.2.0.1" super.OpenGLRaw21;
+ # Missing module.
+ rematch = dontCheck super.rematch; # https://github.com/tcrayford/rematch/issues/5
+ rematch-text = dontCheck super.rematch-text; # https://github.com/tcrayford/rematch/issues/6
+
+ # https://github.com/Twinside/Rasterific/issues/20
+ Rasterific = dontCheck super.Rasterific;
+
+ # Upstream notified by e-mail.
+ MonadCompose = markBrokenVersion "0.2.0.0" super.MonadCompose;
+
+ # Make distributed-process-platform compile until next version
+ distributed-process-platform = overrideCabal super.distributed-process-platform (drv: {
+ patchPhase = "mv Setup.hs Setup.lhs";
+ doCheck = false;
+ doHaddock = false;
+ });
+
} // {
# Not on Hackage.
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.8.x.nix
index 055c2c10999..9dd694387fb 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.8.x.nix
@@ -59,7 +59,7 @@ self: super: {
imports = super.imports.override { mtl = self.mtl_2_2_1; };
# Newer versions require mtl 2.2.x.
- mtl-prelude = self.mtl-prelude_1_0_2;
+ mtl-prelude = self.mtl-prelude_1_0_3;
# The test suite pulls in mtl 2.2.x
command-qq = dontCheck super.command-qq;
@@ -71,8 +71,9 @@ self: super: {
seqid = super.seqid_0_1_0;
seqid-streams = super.seqid-streams_0_1_0;
- # Requires mtl 2.2.x: https://github.com/tatac1/amqp-conduit/issues/1
- amqp-conduit = markBroken super.amqp-conduit;
+ # Need binary >= 0.7.2, but our compiler has only 0.7.1.0.
+ hosc = dontDistribute super.hosc;
+ tidal-midi = dontDistribute super.tidal-midi;
}
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 0cc198365a3..6ac89102e5c 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -3661,6 +3661,22 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "DynamicTimeWarp" = callPackage
+ ({ mkDerivation, array, base, criterion, QuickCheck, random, vector
+ }:
+ mkDerivation {
+ pname = "DynamicTimeWarp";
+ version = "0.1.0.0";
+ sha256 = "0m58bq2jvnr17kdapfydd063af6w5vdyzxad5izk0cj0gids5hk7";
+ isLibrary = true;
+ isExecutable = true;
+ buildDepends = [ array base criterion QuickCheck random vector ];
+ jailbreak = true;
+ homepage = "https://github.com/zombiecalypse/DynamicTimeWarp";
+ description = "Dynamic time warping of sequences";
+ license = stdenv.lib.licenses.gpl3;
+ }) {};
+
"DysFRP" = callPackage
({ mkDerivation, base, contravariant, mtl, time, transformers }:
mkDerivation {
@@ -4512,8 +4528,8 @@ self: {
}:
mkDerivation {
pname = "FontyFruity";
- version = "0.4.1";
- sha256 = "1rvb7if434lj7hb4ji0idarg2rmz4vn6l5k39nglv1lr7v9kz1y0";
+ version = "0.5";
+ sha256 = "162frrx0ra1pnvzrv2bmx7xv61pa9m5fbgldx0xasv8i24ccmbai";
buildDepends = [
base binary bytestring containers deepseq directory filepath text
vector
@@ -8229,22 +8245,22 @@ self: {
}) {};
"IPv6Addr" = callPackage
- ({ mkDerivation, attoparsec, base, bytestring, HUnit, iproute
- , network, network-info, random, test-framework
- , test-framework-hunit, text
+ ({ mkDerivation, attoparsec, base, HUnit, iproute, network
+ , network-info, random, test-framework, test-framework-hunit, text
}:
mkDerivation {
pname = "IPv6Addr";
- version = "0.5";
- sha256 = "1ns3a7i46mp73liz57d439mrh3qk3lapjcxrw6z7km2y3g1a9kmi";
+ version = "0.6.0.0";
+ sha256 = "1vrvjj3kvlrf8mgfxdz8rs3f0b5my82zncddyqzs8b2sccgiya12";
buildDepends = [
- attoparsec base bytestring iproute network network-info random text
+ attoparsec base iproute network network-info random text
];
testDepends = [
base HUnit test-framework test-framework-hunit text
];
+ homepage = "https://github.com/MichelBoucey/IPv6Addr";
description = "Library to deal with IPv6 address text representations";
- license = stdenv.lib.licenses.bsd3;
+ license = stdenv.lib.licenses.gpl3;
}) {};
"IcoGrid" = callPackage
@@ -9815,6 +9831,23 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "MonadCompose" = callPackage
+ ({ mkDerivation, base, ghc-prim, mmorph, monad-products, mtl
+ , transformers
+ }:
+ mkDerivation {
+ pname = "MonadCompose";
+ version = "0.2.0.0";
+ sha256 = "09nykbsb1c33vndfvr4q5acm9hsp075vsvvi70ylrjwj0llgdz5i";
+ buildDepends = [
+ base ghc-prim mmorph monad-products mtl transformers
+ ];
+ jailbreak = true;
+ homepage = "http://alkalisoftware.net";
+ description = "Methods for composing monads";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"MonadLab" = callPackage
({ mkDerivation, base, haskell98, parsec, process, template-haskell
}:
@@ -12123,8 +12156,8 @@ self: {
}:
mkDerivation {
pname = "Rasterific";
- version = "0.4.2";
- sha256 = "0lblx6ih8rrvrdfni4x9ldn2r3ikx3xki7qrxg3kbvhdcz56wlq3";
+ version = "0.5.0.1";
+ sha256 = "1q1102503ga2nncanww3pgvpgryj9c2q8gy3bmrd1f0lpv31fhn8";
buildDepends = [
base dlist FontyFruity free JuicyPixels mtl primitive vector
vector-algorithms
@@ -12135,7 +12168,6 @@ self: {
];
description = "A pure haskell drawing engine";
license = stdenv.lib.licenses.bsd3;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"ReadArgs" = callPackage
@@ -13467,8 +13499,8 @@ self: {
({ mkDerivation, base, lazysmallcheck, QuickCheck }:
mkDerivation {
pname = "Stream";
- version = "0.4.7.1";
- sha256 = "08h0h6pwvfcj92n7mk5za36x9agpqnax12cjlvd68zwghjf9qxy3";
+ version = "0.4.7.2";
+ sha256 = "1l87l0kl4awzdyx6b28npwy6xf03r39d89iharsh06zgnd4y42wr";
buildDepends = [ base lazysmallcheck QuickCheck ];
description = "A library for manipulating infinite lists";
license = stdenv.lib.licenses.bsd3;
@@ -14183,14 +14215,13 @@ self: {
}:
mkDerivation {
pname = "Unixutils";
- version = "1.52";
- sha256 = "1gp04mc6irycwazykl9kpyhkkryn3hbnpn08ih6cjbsm3p8yi8b4";
- editedCabalFile = "b18a7877e54a659790eee0910d64d47f034e3ba1b4b2c1dcbabb494951317d31";
+ version = "1.52.4";
+ sha256 = "10s665gspadqn2735npidvf4l5wg383nj11za094ibhq7hd8i304";
buildDepends = [
base bytestring directory filepath process pureMD5 regex-tdfa unix
zlib
];
- homepage = "https://github.com/seereason/haskell-unixutils";
+ homepage = "https://github.com/seereason/haskell-unixutils.git";
description = "A crude interface between Haskell and Unix-like operating systems";
license = stdenv.lib.licenses.bsd3;
}) {};
@@ -15947,8 +15978,8 @@ self: {
({ mkDerivation, base }:
mkDerivation {
pname = "acme-microwave";
- version = "0.1.0.1";
- sha256 = "1kd8qd9pcqk4zsdpkxak02js6wx3spk1k6jbd6zxv42n7szv74ph";
+ version = "0.1.0.2";
+ sha256 = "136lwxcimj241nq9l0x7icxk1q9xz826sg07d40yj87shir52j39";
buildDepends = [ base ];
description = "The eighth wonder of the world, kitchen math!";
license = stdenv.lib.licenses.bsd3;
@@ -16094,8 +16125,8 @@ self: {
({ mkDerivation, base, time }:
mkDerivation {
pname = "acme-year";
- version = "2014";
- sha256 = "0zml370s8zv9y60hggv0hlwb3rhmixhdp37cz496dbpffdkw70my";
+ version = "2015";
+ sha256 = "1ymsxy51vi2i75jkq0hfm2ii8qp78c3g35ijma0ygcrq9mmm12rv";
buildDepends = [ base ];
testDepends = [ base time ];
homepage = "http://github.com/joeyadams/hs-acme-year";
@@ -16260,8 +16291,8 @@ self: {
}:
mkDerivation {
pname = "adblock2privoxy";
- version = "1.3.1";
- sha256 = "13pyjr13gg7asi9gp0hbnfdw278x9l0vjib1wvizjvd55zj3x1wj";
+ version = "1.3.3";
+ sha256 = "1iy0dmaw48nvgq4cqlx41n51almhz1w4k7rjpgsxqbsdnlwd8zdl";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -18151,8 +18182,8 @@ self: {
}:
mkDerivation {
pname = "amqp";
- version = "0.11";
- sha256 = "1brvr8qzkhv7c2j5zzqwfpzw5n2b1l1d92idn2bs4yjzn3c1ama7";
+ version = "0.12";
+ sha256 = "0bivp7lfnsazd0ng080jf85x9jqzna3r82kxzxy2f12pc5xawn9v";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -18178,8 +18209,8 @@ self: {
}:
mkDerivation {
pname = "amqp-conduit";
- version = "0.1.0.0";
- sha256 = "01c7pksg173ramh0kksyrzpaz661d82d6s0lpfdhi0lgh2qqnw3l";
+ version = "0.1.0.1";
+ sha256 = "167dkak5hg4q5b7i58mw6bl0mh38nyqbzyrhplmil9nins7cvqmv";
buildDepends = [
amqp base conduit exceptions lifted-base monad-control mtl
resourcet text transformers transformers-base
@@ -20189,6 +20220,24 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "atomic-write" = callPackage
+ ({ mkDerivation, base, bytestring, directory, filepath, hspec
+ , temporary, text, unix
+ }:
+ mkDerivation {
+ pname = "atomic-write";
+ version = "0.2.0.0";
+ sha256 = "0kga6zwgpsz3zc3yq12a815ywwyqd18czzmi8ra7vrgfn5l2bcb0";
+ buildDepends = [
+ base bytestring directory filepath temporary text unix
+ ];
+ testDepends = [
+ base bytestring directory filepath hspec temporary text unix
+ ];
+ description = "Atomically write to a file";
+ license = stdenv.lib.licenses.mit;
+ }) {};
+
"atomo" = callPackage
({ mkDerivation, array, base, bytestring, containers, directory
, filepath, hashable, haskeline, hint, mtl, parsec, pretty
@@ -21656,8 +21705,8 @@ self: {
({ mkDerivation, base }:
mkDerivation {
pname = "base-prelude";
- version = "0.1.15";
- sha256 = "0cw4ra08n9236vhbl9b9f50alc1ja8pafl5d9f367hm4ndx5scl6";
+ version = "0.1.16";
+ sha256 = "1k7rbbmw6qjqql7408vaj3mcymlk66hyrd0l2xhksyalh1h4sbps";
buildDepends = [ base ];
homepage = "https://github.com/nikita-volkov/base-prelude";
description = "The most complete prelude formed from only the \"base\" package";
@@ -21940,8 +21989,8 @@ self: {
({ mkDerivation, base, bytestring, entropy }:
mkDerivation {
pname = "bcrypt";
- version = "0.0.5";
- sha256 = "1dcaq81anjj91jwl90dap6sy8b88igy8iyfd6226mdqlh5zyvafg";
+ version = "0.0.6";
+ sha256 = "032la7v7kp0k26s3lj006hgc7a99ylqpp5qi27jxnac10yjl5bi5";
buildDepends = [ base bytestring entropy ];
description = "Haskell bindings to the bcrypt password hash";
license = stdenv.lib.licenses.bsd3;
@@ -26107,7 +26156,7 @@ self: {
}) {};
"cabal-debian" = callPackage
- ({ mkDerivation, base, Cabal, containers, data-lens
+ ({ mkDerivation, base, Cabal, containers, data-default, data-lens
, data-lens-template, debian, deepseq, Diff, directory, filepath
, hsemail, HUnit, memoize, mtl, network-uri, parsec, pretty
, prettyclass, process, pureMD5, regex-tdfa, set-extra, syb, text
@@ -26115,15 +26164,15 @@ self: {
}:
mkDerivation {
pname = "cabal-debian";
- version = "4.20.1";
- sha256 = "11wl87df4l0djgxpdq7mw8cndjka62fhdks1qg7fhljh26zb659l";
+ version = "4.23.1";
+ sha256 = "06m0lr2jxgnwidk9q8ix5bm6s1dc9kgxfb27fdvchi7ikj9gnzia";
isLibrary = true;
isExecutable = true;
buildDepends = [
- base Cabal containers data-lens data-lens-template debian deepseq
- Diff directory filepath hsemail HUnit memoize mtl network-uri
- parsec pretty prettyclass process pureMD5 regex-tdfa set-extra syb
- text unix Unixutils utf8-string
+ base Cabal containers data-default data-lens data-lens-template
+ debian deepseq Diff directory filepath hsemail HUnit memoize mtl
+ network-uri parsec pretty prettyclass process pureMD5 regex-tdfa
+ set-extra syb text unix Unixutils utf8-string
];
homepage = "https://github.com/ddssff/cabal-debian";
description = "Create a Debianization for a Cabal package";
@@ -26430,8 +26479,8 @@ self: {
}:
mkDerivation {
pname = "cabal-rpm";
- version = "0.9.2";
- sha256 = "1i47vm27vp55dl0qybx5r152w6mfr94zzdr6h2kp49xc8ccvh469";
+ version = "0.9.3";
+ sha256 = "0xsq77qawvvi2nbxc9z9czyph3pkswvkcclf7xxls1pj254fq4yc";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -26988,15 +27037,17 @@ self: {
}) {};
"calculator" = callPackage
- ({ mkDerivation, base, haskeline, mtl, parsec, QuickCheck }:
+ ({ mkDerivation, base, containers, haskeline, mtl, parsec
+ , QuickCheck
+ }:
mkDerivation {
pname = "calculator";
- version = "0.1.5.2";
- sha256 = "0wcf1cd8niwnfjvwp98iwy348z5mif9vrqccwg682xmmp6yvvfy8";
+ version = "0.2.0.1";
+ sha256 = "1ankmv93lpan83g37vzp9nhcxcx3n214p30sbjcryi6ign87cv8q";
isLibrary = false;
isExecutable = true;
- buildDepends = [ base haskeline mtl parsec QuickCheck ];
- testDepends = [ base mtl parsec QuickCheck ];
+ buildDepends = [ base containers haskeline mtl parsec QuickCheck ];
+ testDepends = [ base containers mtl parsec QuickCheck ];
jailbreak = true;
homepage = "https://github.com/sumitsahrawat/calculator";
description = "A calculator repl";
@@ -27305,8 +27356,8 @@ self: {
}:
mkDerivation {
pname = "casadi-bindings";
- version = "2.2.0.2";
- sha256 = "0cw1vk0zgml4czhbnafqsz3ipy43wnzfnmkxhr1qr022s03nhwyi";
+ version = "2.2.0.3";
+ sha256 = "1f2xwwrn63wnffhblxwzpvbr7vqi2sz2v2bb3bbs9bf03mb78pja";
buildDepends = [
base casadi-bindings-core casadi-bindings-internal containers
linear vector
@@ -29203,8 +29254,8 @@ self: {
}:
mkDerivation {
pname = "classy-prelude";
- version = "0.10.2";
- sha256 = "0pq16rgksbv2ml4wg7jdxlb9y80h8la78hnrcci637s6kbdisd7k";
+ version = "0.10.3";
+ sha256 = "1irzp2d1rcwp6gn8wh5z3qai8cjbssq6rglrs9h2ib8dskbmj33i";
buildDepends = [
base basic-prelude bifunctors bytestring chunked-data containers
enclosed-exceptions exceptions ghc-prim hashable lifted-base
@@ -29227,8 +29278,8 @@ self: {
}:
mkDerivation {
pname = "classy-prelude-conduit";
- version = "0.10.2";
- sha256 = "0bgic61p05hpnsami199wzs2q4cbdm00nyp03vsxz2ddsz8dwc8l";
+ version = "0.10.3";
+ sha256 = "1n4vnbc6x1rj429259rcyq8c6awnvi19s56vgddd0j00yzxdyvj1";
buildDepends = [
base bytestring classy-prelude conduit conduit-combinators
monad-control resourcet system-fileio transformers void
@@ -29248,8 +29299,8 @@ self: {
}:
mkDerivation {
pname = "classy-prelude-yesod";
- version = "0.10.2";
- sha256 = "1jzf26rj9m8mdhhag66h5zbh91c7ff3jn1q1ghmah12dj9y06137";
+ version = "0.10.3";
+ sha256 = "1xpl3gnacq6a1b9a3xk54xvn22qn7gfqwq4dx94cklixh9vf0vwg";
buildDepends = [
aeson base classy-prelude classy-prelude-conduit data-default
http-conduit http-types persistent yesod yesod-newsfeed
@@ -30106,8 +30157,8 @@ self: {
}:
mkDerivation {
pname = "cndict";
- version = "0.4.8";
- sha256 = "1h5lj0c1h870519dg2g24lfjw4j3124r7dx0cdjmp90942cw56rx";
+ version = "0.5.0";
+ sha256 = "095gin216bm2zrlw3j52byk924z51ijk90di2n5r1dbvf9liwj7l";
buildDepends = [
base binary bytestring cassava containers file-embed text vector
];
@@ -31577,22 +31628,33 @@ self: {
}) {};
"configuration-tools" = callPackage
- ({ mkDerivation, aeson, attoparsec, base, base-unicode-symbols
- , bytestring, Cabal, case-insensitive, directory, dlist, errors
- , mtl, network-uri, optparse-applicative, process, profunctors
- , text, transformers, unordered-containers, yaml
+ ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
+ , base-unicode-symbols, base64-bytestring, bytestring, Cabal
+ , case-insensitive, connection, data-default, deepseq, directory
+ , dlist, enclosed-exceptions, errors, http-client, http-client-tls
+ , http-types, monad-control, mtl, network-uri, optparse-applicative
+ , process, profunctors, text, tls, transformers
+ , unordered-containers, wai, warp, warp-tls, x509, x509-system
+ , x509-validation, yaml
}:
mkDerivation {
pname = "configuration-tools";
- version = "0.2.8";
- sha256 = "1xg36kdzh80c1npk43g95pyy08rlldy736a78ihzdhsrqf45jasz";
+ version = "0.2.10";
+ sha256 = "10fqxwpmi21r5imrayr7d99azm6086blxiki0pfw9vsl6hrcvbgq";
buildDepends = [
- aeson attoparsec base base-unicode-symbols bytestring Cabal
- case-insensitive directory dlist errors mtl network-uri
- optparse-applicative process profunctors text transformers
- unordered-containers yaml
+ aeson ansi-wl-pprint attoparsec base base-unicode-symbols
+ base64-bytestring bytestring Cabal case-insensitive connection
+ data-default deepseq directory dlist enclosed-exceptions errors
+ http-client http-client-tls http-types monad-control mtl
+ network-uri optparse-applicative process profunctors text tls
+ transformers unordered-containers x509 x509-system x509-validation
+ yaml
+ ];
+ testDepends = [
+ base base-unicode-symbols bytestring Cabal enclosed-exceptions
+ errors http-types monad-control mtl text unordered-containers wai
+ warp warp-tls yaml
];
- testDepends = [ base base-unicode-symbols errors mtl ];
jailbreak = true;
homepage = "https://github.com/alephcloud/hs-configuration-tools";
description = "Tools for specifying and parsing configurations";
@@ -34382,6 +34444,25 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "curve25519" = callPackage
+ ({ mkDerivation, base, bytestring, crypto-api, DRBG, HUnit
+ , QuickCheck, tagged, test-framework, test-framework-hunit
+ , test-framework-quickcheck2
+ }:
+ mkDerivation {
+ pname = "curve25519";
+ version = "0.2";
+ sha256 = "05dmc66wxli6dy25gyhxnyb5z3dj27jpygf9msspzbghi94hvr4m";
+ buildDepends = [ base bytestring crypto-api ];
+ testDepends = [
+ base bytestring crypto-api DRBG HUnit QuickCheck tagged
+ test-framework test-framework-hunit test-framework-quickcheck2
+ ];
+ homepage = "http://github.com/acw/curve25519";
+ description = "Fast implementations of the curve25519 elliptic curve primitives";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"curves" = callPackage
({ mkDerivation, base, bytestring, containers, filepath, HaXml
, JuicyPixels, QuickCheck
@@ -37739,6 +37820,7 @@ self: {
old-time optparse-applicative process Rasterific split statestack
time unix
];
+ jailbreak = true;
homepage = "http://projects.haskell.org/diagrams/";
description = "Rasterific backend for diagrams";
license = stdenv.lib.licenses.bsd3;
@@ -39489,6 +39571,24 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "dotenv" = callPackage
+ ({ mkDerivation, base, base-compat, hspec, optparse-applicative
+ , parsec, process
+ }:
+ mkDerivation {
+ pname = "dotenv";
+ version = "0.1.0.5";
+ sha256 = "1gh1x4dzcrivlb8gnqgb96v6yvi78c1rx52wplbfy3z5pzg9mx1f";
+ isLibrary = true;
+ isExecutable = true;
+ buildDepends = [
+ base base-compat optparse-applicative parsec process
+ ];
+ testDepends = [ base base-compat hspec parsec ];
+ description = "Loads environment variables from dotenv files";
+ license = stdenv.lib.licenses.mit;
+ }) {};
+
"dotfs" = callPackage
({ mkDerivation, base, bytestring, containers, directory, filepath
, haskell-src, HFuse, HUnit, parsec, process, QuickCheck
@@ -40088,8 +40188,8 @@ self: {
}:
mkDerivation {
pname = "duplo";
- version = "1.6.19";
- sha256 = "0flqkw140l0sn78qnq7x0gchgfdpmgx90d2g9cjvimj2w4gsnbk3";
+ version = "1.8.0";
+ sha256 = "0qza26n5zlzpif2fmwxajlfhk4kfqy5ad656xcw1i1926x5ncf1b";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -40102,7 +40202,6 @@ self: {
testDepends = [
base HUnit MissingH QuickCheck tasty tasty-hunit tasty-quickcheck
];
- jailbreak = true;
description = "Frontend development build tool";
license = stdenv.lib.licenses.mit;
}) {};
@@ -41707,13 +41806,12 @@ self: {
}:
mkDerivation {
pname = "encoding";
- version = "0.7.0.2";
- sha256 = "14l3dx7ayvp2dm37c3h7p63zfzmhwpx1hirbkm04idhi3906lxps";
+ version = "0.8";
+ sha256 = "0y2fx99vxrqpvjflpqgnbikxsc3p50sn5b5g97zivjr9bbck52ji";
buildDepends = [
array base binary bytestring containers extensible-exceptions
ghc-prim HaXml mtl regex-compat
];
- jailbreak = true;
homepage = "http://code.haskell.org/encoding/";
description = "A library for various character encodings";
license = stdenv.lib.licenses.bsd3;
@@ -44027,6 +44125,7 @@ self: {
pname = "feed";
version = "0.3.9.2";
sha256 = "05sg2ly1pvni3sfv03rbf60vdjkrfa0f9mmc1dm1hrmp638j67gg";
+ editedCabalFile = "62cb5a05a61bc09e6203b5bb7aab4464cba1703216260b0d871d98046c226358";
buildDepends = [ base old-locale old-time time utf8-string xml ];
homepage = "https://github.com/sof/feed";
description = "Interfacing with RSS (v 0.9x, 2.x, 1.0) + Atom feeds.";
@@ -44674,8 +44773,8 @@ self: {
}:
mkDerivation {
pname = "fingertree";
- version = "0.1.0.0";
- sha256 = "0c35sryzsijwavvw9x1pk5p99rhmp4g8pjh2ds419mlfgxc039ms";
+ version = "0.1.0.1";
+ sha256 = "02448wi1z0zxiin749w00z55pjm8d1wkhx53rmmfwq2vjzr8akvx";
buildDepends = [ base ];
testDepends = [
base HUnit QuickCheck test-framework test-framework-hunit
@@ -45697,11 +45796,11 @@ self: {
({ mkDerivation, base }:
mkDerivation {
pname = "foreign-store";
- version = "0.1";
- sha256 = "1p7hsr1kg1667wql9c18q7bwpnrldnb8r18ijhji5c7qqr8yml5g";
+ version = "0.2";
+ sha256 = "1p436dn6l5zjzizcsj0hn10s2n907gr7c8y89i4sm3h69lhqlw86";
buildDepends = [ base ];
homepage = "https://github.com/chrisdone/foreign-store";
- description = "Store a stable pointer in a foreign context to be retrieved later. Persists through GHCi reloads.";
+ description = "Store a stable pointer in a foreign context to be retrieved later";
license = stdenv.lib.licenses.bsd3;
}) {};
@@ -46375,8 +46474,8 @@ self: {
}:
mkDerivation {
pname = "friday";
- version = "0.2.0.1";
- sha256 = "1xnngcd3xsj70y3fwklxxy28yd5g9a9xxf5nfi7cbkxakkwk9bc3";
+ version = "0.2.0.2";
+ sha256 = "1warjzy5ciabyd3wkfaxz82y893vri3zbn8i8xhf7018fcgkna0b";
buildDepends = [
base bytestring convertible deepseq primitive ratio-int
transformers vector
@@ -48725,8 +48824,8 @@ self: {
}:
mkDerivation {
pname = "git-annex";
- version = "5.20150113";
- sha256 = "16lvw2sh0i69ryf43yl7rh1x1vkvwfqibkbzwvnkcjm9rzga5kxg";
+ version = "5.20150205";
+ sha256 = "1idmm5psg6dllpazri7xnpgcjrn6z2dcddnvylfsq2vypsh1kirv";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -49190,8 +49289,8 @@ self: {
}:
mkDerivation {
pname = "gitlib-libgit2";
- version = "3.1.0.2";
- sha256 = "15x0fgzmb483qiky3c3yg2sd4w96xqkaj04qvirh4g2ba5qvib73";
+ version = "3.1.0.3";
+ sha256 = "19lly5nrxa05gj6mv887d419mm65ha40rggv2a8y1jd6s7z6drfi";
buildDepends = [
base bytestring conduit conduit-combinators containers directory
exceptions fast-logger filepath gitlib hlibgit2 lifted-async
@@ -49293,8 +49392,8 @@ self: {
}:
mkDerivation {
pname = "gitson";
- version = "0.4.1";
- sha256 = "1sq339av6113v4rgzwpsf7k1bip632b8avl3r8nb0i4acqzb06m4";
+ version = "0.5.0";
+ sha256 = "0dx2wnyg331wzgv2wjp1h75xy0gc0zvfgzh8rakzg845srim1b8a";
buildDepends = [
aeson aeson-pretty base bytestring directory errors filepath flock
monad-control process transformers
@@ -50082,22 +50181,21 @@ self: {
}) {};
"gps" = callPackage
- ({ mkDerivation, base, GPX, gpx-conduit, hxt, pretty, prettyclass
- , QuickCheck, statistics, test-framework
- , test-framework-quickcheck2, time, vector, xsd
+ ({ mkDerivation, base, gpx-conduit, pretty, prettyclass, QuickCheck
+ , statistics, test-framework, test-framework-quickcheck2, text
+ , time, vector
}:
mkDerivation {
pname = "gps";
- version = "1.1";
- sha256 = "14plvzspi7c1fsz91kn945vlpalbdx67b8wkfb05cpa3id7g6jp6";
+ version = "1.2";
+ sha256 = "1krq6sv9qblwqlx7j6gb5qfv5zarxlyvaj6svhd4n8f7pr5w510r";
buildDepends = [
- base gpx-conduit pretty prettyclass statistics time vector
+ base pretty prettyclass statistics text time vector
];
testDepends = [
- base GPX hxt QuickCheck statistics test-framework
- test-framework-quickcheck2 time vector xsd
+ base gpx-conduit QuickCheck statistics test-framework
+ test-framework-quickcheck2 time vector
];
- jailbreak = true;
description = "For manipulating GPS coordinates and trails";
license = stdenv.lib.licenses.bsd3;
hydraPlatforms = stdenv.lib.platforms.none;
@@ -51493,7 +51591,6 @@ self: {
homepage = "http://projects.haskell.org/gtk2hs/";
description = "Binding to the Gtk+ graphical user interface library";
license = stdenv.lib.licenses.lgpl21;
- hydraPlatforms = stdenv.lib.platforms.none;
}) { gtk3 = null;};
"gtk3-mac-integration" = callPackage
@@ -53535,16 +53632,20 @@ self: {
"handsy" = callPackage
({ mkDerivation, base, bytestring, free, process, process-extras
- , shell-escape, transformers
+ , shell-escape, tasty, tasty-hunit, transformers
}:
mkDerivation {
pname = "handsy";
- version = "0.0.7";
- sha256 = "0wl34lrr7yclip01mynz37z7nsm0lzghir0i8fy0f649ik0k95xf";
+ version = "0.0.9";
+ sha256 = "14kczimv1sirzqsvbz01ax69kiry8izy7grrmgcy3hsx70bq1y7n";
buildDepends = [
base bytestring free process process-extras shell-escape
transformers
];
+ testDepends = [
+ base bytestring free process process-extras shell-escape tasty
+ tasty-hunit transformers
+ ];
homepage = "https://github.com/utdemir/handsy";
description = "A DSL to describe common shell operations and interpeters for running them locally and remotely";
license = stdenv.lib.licenses.bsd3;
@@ -54428,8 +54529,8 @@ self: {
}:
mkDerivation {
pname = "haroonga";
- version = "0.1.6.0";
- sha256 = "06w79104ncs8qmcb1qhpsscjm1hb77v37l3gih1n1wp4kw2m788z";
+ version = "0.1.7.0";
+ sha256 = "1v2pxl08588ii5syp9ym1dn7bmvj76w5dx1p594lissf7f2cm3bd";
buildDepends = [
base bindings-DSL monad-control resourcet transformers
];
@@ -55271,24 +55372,24 @@ self: {
"haskell-mpi" = callPackage
({ mkDerivation, array, base, bytestring, c2hs, cereal
- , extensible-exceptions, openmpi
+ , extensible-exceptions, open-pal, open-rte, openmpi
}:
mkDerivation {
pname = "haskell-mpi";
- version = "1.2.1";
- sha256 = "1d3xlwz3sx1m7iyf67cfr1vsp3w4iz9mmqvmvdiblj4569hxblr5";
+ version = "1.4.0";
+ sha256 = "1aw8jjvysdf3vsf6rcxnvwnqpiqmfrp88gryngakjjkxwzzh5an0";
isLibrary = true;
isExecutable = true;
buildDepends = [
array base bytestring cereal extensible-exceptions
];
buildTools = [ c2hs ];
- extraLibraries = [ openmpi ];
+ extraLibraries = [ open-pal open-rte openmpi ];
homepage = "http://github.com/bjpop/haskell-mpi";
description = "Distributed parallel programming in Haskell using MPI";
license = stdenv.lib.licenses.bsd3;
hydraPlatforms = stdenv.lib.platforms.none;
- }) { inherit (pkgs) openmpi;};
+ }) { open-pal = null; open-rte = null; inherit (pkgs) openmpi;};
"haskell-names" = callPackage
({ mkDerivation, aeson, base, bytestring, Cabal, containers
@@ -59443,8 +59544,8 @@ self: {
}:
mkDerivation {
pname = "hindent";
- version = "4.3.7";
- sha256 = "0wbzfni61jgcq18yga5lmvmrzvfzr9a4qlgcd8vym41lv8pjgd0r";
+ version = "4.3.8";
+ sha256 = "1plnkb3xfkqfaqvmzv3yi8c7iy8sbqjj3618pi3j9xa9rdi8yc0p";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -60013,8 +60114,8 @@ self: {
}:
mkDerivation {
pname = "hjsonschema";
- version = "0.1.0.0";
- sha256 = "0b7q90k96afkmk7x4dz5dikvbzpwbkpp2w0zymsz9fcfs5ddacnk";
+ version = "0.1.1.0";
+ sha256 = "0f0j8xxypff002ghvshcx87dxfyj53pifzk68ijrcnr35kfzm06f";
buildDepends = [
aeson base bytestring hashable lens regexpr scientific text
unordered-containers vector wreq
@@ -61726,6 +61827,18 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "horizon" = callPackage
+ ({ mkDerivation, AC-Angle, base, time }:
+ mkDerivation {
+ pname = "horizon";
+ version = "0.1.0";
+ sha256 = "0yzchd0kfszwf0dwr8vbg7zbr6an5zk0hw658mj82d89jmzldwjv";
+ buildDepends = [ AC-Angle base time ];
+ homepage = "https://github.com/intractable/horizon";
+ description = "Sunrise and sunset UTC approximations from latitude and longitude coordinates";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"hosc" = callPackage
({ mkDerivation, base, binary, blaze-builder, bytestring
, data-binary-ieee754, network, QuickCheck, test-framework
@@ -66756,15 +66869,15 @@ self: {
}:
mkDerivation {
pname = "hxt";
- version = "9.3.1.13";
- sha256 = "07m565c34ifwm5gbj26xwsgc8dpardfy8prqjfdycpyc77s80pr6";
+ version = "9.3.1.15";
+ sha256 = "0q35jqi3g5qfwzp2p2hm22lkmbmk08bx2qvpgq4731zm48y7ngkj";
buildDepends = [
base binary bytestring containers deepseq directory filepath HUnit
hxt-charproperties hxt-regex-xmlschema hxt-unicode mtl network-uri
parsec
];
configureFlags = [ "-fnetwork-uri" ];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "A collection of tools for processing XML with Haskell";
license = stdenv.lib.licenses.mit;
}) {};
@@ -66793,13 +66906,13 @@ self: {
}:
mkDerivation {
pname = "hxt-cache";
- version = "9.1.0";
- sha256 = "16205mp6kilq3s6y08sz45nl23cpwnnbb83v561nais4clc99m7y";
+ version = "9.1.0.1";
+ sha256 = "1ki3h9x186c6p1c6hnczr0a1idil6kfvs2jl9d9hmzp9rlmh2w7l";
buildDepends = [
base binary bytestring containers deepseq directory filepath hxt
old-locale SHA time unix
];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "Cache for HXT XML Documents and other binary data";
license = "unknown";
}) {};
@@ -66808,8 +66921,8 @@ self: {
({ mkDerivation, base }:
mkDerivation {
pname = "hxt-charproperties";
- version = "9.2.0.0";
- sha256 = "01v3j0cg9pkp18iy4s8s582qqq98r4l9jzr84x5sa2rva4cg0gpi";
+ version = "9.2.0.1";
+ sha256 = "1mml8wglvagqq891rchgli6r8rnkwrqhgsxfl6kb5403pzb18rp4";
buildDepends = [ base ];
homepage = "https://github.com/UweSchmidt/hxt";
description = "Character properties and classes for XML and Unicode";
@@ -66834,10 +66947,10 @@ self: {
({ mkDerivation, base, bytestring, curl, hxt, parsec }:
mkDerivation {
pname = "hxt-curl";
- version = "9.1.1";
- sha256 = "0dbm71ja9g0asj221vlpdvlhz1ipv3z0x2g4zmv5f03dcs97c11b";
+ version = "9.1.1.1";
+ sha256 = "1sn5ngzz5qszdb3anbpqbjdijz29gmrwjrg9vsmrqsdqz65wrhfd";
buildDepends = [ base bytestring curl hxt parsec ];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "LibCurl interface for HXT";
license = "unknown";
}) {};
@@ -66891,12 +67004,12 @@ self: {
}:
mkDerivation {
pname = "hxt-http";
- version = "9.1.5";
- sha256 = "172y08zx9q4qvdi7k9hg9qahp6qjs24r663il6fmynaw7szsiib9";
+ version = "9.1.5.2";
+ sha256 = "02yxvzczv89j518b94wh8m4dsmnymzxgv9158m7w6lqxk41rv8bg";
buildDepends = [
base bytestring HTTP hxt network network-uri parsec
];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "Interface to native Haskell HTTP package HTTP";
license = stdenv.lib.licenses.mit;
}) {};
@@ -66920,8 +67033,8 @@ self: {
}:
mkDerivation {
pname = "hxt-regex-xmlschema";
- version = "9.2.0";
- sha256 = "0pcbyvc71173ad0zkgpdpyyljngrk4p1jjjaw5wbwcvm4ijh44g3";
+ version = "9.2.0.1";
+ sha256 = "1djwqmd9kd28n7w3k28ks4xwb94d1q6i4yf1kj22iwr9cyy23xc1";
buildDepends = [ base bytestring hxt-charproperties parsec text ];
testDepends = [ base bytestring HUnit parsec text ];
homepage = "http://www.haskell.org/haskellwiki/Regular_expressions_for_XML_Schema";
@@ -66935,13 +67048,13 @@ self: {
}:
mkDerivation {
pname = "hxt-relaxng";
- version = "9.1.5.3";
- sha256 = "1170gpxx4pr9v5jkfy5c0kz5h10z7aildd6qgd02d5bqxnph5kil";
+ version = "9.1.5.5";
+ sha256 = "07s47z5xhd0pdzz8mr9vg78qxay450sm8ljycpprq7y7mgh2vzhf";
buildDepends = [
base containers hxt hxt-charproperties hxt-regex-xmlschema
network-uri parsec
];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "The HXT RelaxNG validator";
license = stdenv.lib.licenses.mit;
}) {};
@@ -66964,10 +67077,10 @@ self: {
({ mkDerivation, base, hxt-charproperties }:
mkDerivation {
pname = "hxt-unicode";
- version = "9.0.2.2";
- sha256 = "1iljbk7f7d4wkl592bp0vw807683sqdxfnigindkrvr9p1xvwg8r";
+ version = "9.0.2.4";
+ sha256 = "0rj48cy8z4fl3zpg5bpa458kqr83adav6jnqv4i71dclpprj6n3v";
buildDepends = [ base hxt-charproperties ];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "Unicode en-/decoding functions for utf8, iso-latin-* and other encodings";
license = stdenv.lib.licenses.mit;
}) {};
@@ -66977,10 +67090,10 @@ self: {
}:
mkDerivation {
pname = "hxt-xpath";
- version = "9.1.2.1";
- sha256 = "0r9xzxwdqaj0arz9pv6f272dz73m83agbln9q9bclmgqys6l0kr9";
+ version = "9.1.2.2";
+ sha256 = "0wlq9s01icalnvjkkilx5zaqp3ff4v5limj1xy8i18qpzjspqdsh";
buildDepends = [ base containers directory filepath hxt parsec ];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "The XPath modules for HXT";
license = "unknown";
}) {};
@@ -66991,12 +67104,12 @@ self: {
}:
mkDerivation {
pname = "hxt-xslt";
- version = "9.1.1";
- sha256 = "0klyqxgq46dca8ia3xygd194hw8p51a4iz8746zz4kifjc1fyprs";
+ version = "9.1.1.1";
+ sha256 = "020k7zjwbad5j2zbc0cgp8f5lggws5jijlcwmi71p510n0f51y9j";
buildDepends = [
base containers directory filepath hxt hxt-xpath parsec
];
- homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+ homepage = "https://github.com/UweSchmidt/hxt";
description = "The XSLT modules for HXT";
license = "unknown";
}) {};
@@ -67434,8 +67547,8 @@ self: {
}:
mkDerivation {
pname = "hyphenation";
- version = "0.4.1";
- sha256 = "1hcpjjyid7a2kg42xgf6pskfvhz3gfj4iikwzngpmg1xib2ggv6v";
+ version = "0.4.2";
+ sha256 = "05nhspfsf6nzkv9jivzrf39l24mmm7sb3p8k3sabgb058k3a4h28";
buildDepends = [ base containers unordered-containers ];
testDepends = [
base containers directory doctest filepath unordered-containers
@@ -68429,12 +68542,15 @@ self: {
}) {};
"indentation" = callPackage
- ({ mkDerivation, base, mtl, parsec, parsers, trifecta }:
+ ({ mkDerivation, base, mtl, parsec, parsers, tasty, tasty-hunit
+ , trifecta
+ }:
mkDerivation {
pname = "indentation";
- version = "0.2.0.2";
- sha256 = "0iknqp0vk90hz4bgwdkmjgkaq4a3dnqlrgi1hh9bdn3ldm2404jd";
+ version = "0.2.1";
+ sha256 = "0p6ng30nnkgnfg06bfi0j822wfj1hh04imilmpr1k2n3pjqlqmv0";
buildDepends = [ base mtl parsec parsers trifecta ];
+ testDepends = [ base parsec tasty tasty-hunit trifecta ];
homepage = "https://bitbucket.org/mdmkolbe/indentation";
description = "Indentation sensitive parsing combinators for Parsec and Trifecta";
license = stdenv.lib.licenses.bsd3;
@@ -69098,8 +69214,8 @@ self: {
}:
mkDerivation {
pname = "intervals";
- version = "0.7.0.1";
- sha256 = "02qb44ga2yfsymkfixy3fdp943r2flwrsaqhb0pjddr3ixzm4ap9";
+ version = "0.7.1";
+ sha256 = "03ra3jkch26x4crsq6nh2wnj51jrx7zmwafmq22xqrpsg7hpav92";
buildDepends = [ array base distributive ghc-prim ];
testDepends = [ base directory doctest filepath ];
homepage = "http://github.com/ekmett/intervals";
@@ -69347,13 +69463,13 @@ self: {
({ mkDerivation, base, cmdargs, IPv6Addr, text }:
mkDerivation {
pname = "ip6addr";
- version = "0.4.0.0";
- sha256 = "1gj8spzfmvws5b3g18sdi1qsvapgl27a329l3340flj9d5hzns7s";
+ version = "0.5.0.0";
+ sha256 = "1yn68f7d41818mc8m4zpfy66xz8imgfw1mw0wgfwgiapmr0liwvw";
isLibrary = false;
isExecutable = true;
buildDepends = [ base cmdargs IPv6Addr text ];
homepage = "https://github.com/MichelBoucey/ip6addr";
- description = "commandline tool to generate IPv6 address text representations";
+ description = "Commandline tool to generate IPv6 address text representations";
license = stdenv.lib.licenses.bsd3;
}) {};
@@ -69784,8 +69900,8 @@ self: {
({ mkDerivation, base, hspec, HUnit, old-locale, time }:
mkDerivation {
pname = "iso8601-time";
- version = "0.1.2";
- sha256 = "1cjq5rckhzqpi8iayx2xnqgdng3qldpd1rssv080paqlikiqx0c1";
+ version = "0.1.3";
+ sha256 = "05qwpcj4whibj0bmdnq0wns9ks5v4fqnsyq7sl2v36pd11h9i9zv";
buildDepends = [ base old-locale time ];
testDepends = [ base hspec HUnit time ];
homepage = "https://github.com/nh2/iso8601-time";
@@ -70426,18 +70542,19 @@ self: {
lapacke = null;};
"jammittools" = callPackage
- ({ mkDerivation, base, boxes, containers, directory, filepath
- , process, property-list, temporary, transformers
+ ({ mkDerivation, base, boxes, bytestring, conduit, containers
+ , directory, filepath, HPDF, JuicyPixels, process, property-list
+ , temporary, transformers, vector
}:
mkDerivation {
pname = "jammittools";
- version = "0.3.2";
- sha256 = "062w3m54my6v2lixlq1zgz7ajf6vdx7p1g0qzs6nc2h4jf0vnybm";
+ version = "0.4";
+ sha256 = "1dz03p2449aqf517n03mgydd527lh3pyf9s11a46rwafpwh9wn1d";
isLibrary = true;
isExecutable = true;
buildDepends = [
- base boxes containers directory filepath process property-list
- temporary transformers
+ base boxes bytestring conduit containers directory filepath HPDF
+ JuicyPixels process property-list temporary transformers vector
];
homepage = "https://github.com/mtolly/jammittools";
description = "Export sheet music and audio from Windows/Mac app Jammit";
@@ -70589,23 +70706,25 @@ self: {
"jespresso" = callPackage
({ mkDerivation, arrows, base, bytestring, cmdargs
- , data-default-class, directory, filepath, HTTP, http-encodings
- , hxt, hxt-tagsoup, language-ecmascript, network, random, tasty
- , tasty-golden, transformers
+ , data-default-class, data-default-instances-base, Diff, directory
+ , filepath, HTTP, http-encodings, hxt, hxt-tagsoup
+ , language-ecmascript, network, random, tasty, tasty-golden
+ , transformers
}:
mkDerivation {
pname = "jespresso";
- version = "1.0";
- sha256 = "048n15lranfmi51p2nkx8rw7h76yhqmlcdgd6v1fswgdaipv0hya";
- editedCabalFile = "639aa59d0cc412bb80458ad0fee5e25f77e85c3a230896e73982cacfe77324cb";
+ version = "1.0.1";
+ sha256 = "0rl4k1vn5q23rjylpyya6dmp6pwdbdvrlxgkczxwy84j9xm665zg";
isLibrary = true;
isExecutable = true;
buildDepends = [
- arrows base bytestring cmdargs data-default-class HTTP
- http-encodings hxt hxt-tagsoup language-ecmascript network random
+ arrows base bytestring cmdargs data-default-class
+ data-default-instances-base HTTP http-encodings hxt hxt-tagsoup
+ language-ecmascript network random
];
testDepends = [
- arrows base directory filepath hxt tasty tasty-golden transformers
+ arrows base Diff directory filepath hxt tasty tasty-golden
+ transformers
];
jailbreak = true;
homepage = "http://github.com/achudnov/jespresso";
@@ -70816,8 +70935,8 @@ self: {
}:
mkDerivation {
pname = "jose-jwt";
- version = "0.3";
- sha256 = "15harxg4zdvm0ffwls74grjlf9942sy5hl37plamc7iriln4w1ic";
+ version = "0.3.1";
+ sha256 = "0s57xks5fp0hvi52kyfcb06pyf31424pa63y2n73qprf0gbm6chb";
buildDepends = [
aeson base base64-bytestring byteable bytestring cereal cipher-aes
containers crypto-cipher-types crypto-numbers crypto-pubkey
@@ -71796,7 +71915,7 @@ self: {
, blaze-builder, bytestring, case-insensitive, conduit
, conduit-extra, containers, data-default, directory, filepath
, fsnotify, hspec, http-client, http-conduit, http-reverse-proxy
- , http-types, lifted-base, mtl, network, network-conduit-tls
+ , http-types, HUnit, lifted-base, mtl, network, network-conduit-tls
, process, random, regex-tdfa, stm, system-fileio, system-filepath
, tar, template-haskell, text, time, transformers, unix
, unix-compat, unordered-containers, vector, wai, wai-app-static
@@ -71804,8 +71923,8 @@ self: {
}:
mkDerivation {
pname = "keter";
- version = "1.3.7.1";
- sha256 = "0gl4v5gblc114581xxfn2k7b42bilfcnmd01z5yl1kmqslky6g00";
+ version = "1.3.8";
+ sha256 = "1128ik8ad4s5nd2c4vjs7nm9db44hyd6w0z19642klyrxlhmr67w";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -71818,7 +71937,9 @@ self: {
unix-compat unordered-containers vector wai wai-app-static
wai-extra warp warp-tls yaml zlib
];
- testDepends = [ base bytestring conduit hspec transformers unix ];
+ testDepends = [
+ base bytestring conduit hspec HUnit transformers unix
+ ];
homepage = "http://www.yesodweb.com/";
description = "Web application deployment manager, focusing on Haskell web frameworks";
license = stdenv.lib.licenses.mit;
@@ -72677,8 +72798,8 @@ self: {
}:
mkDerivation {
pname = "lambdacms-core";
- version = "0.0.7.3";
- sha256 = "1a5i0jvqsvi0jvz1v3mvj6ip1fxi6000fzw4jl7qb87b0y3cggxm";
+ version = "0.0.8.0";
+ sha256 = "1aayf3gfv0lpyx5di3m9n0py25ldv6c666z8bkd4kcb8k0ay5bs7";
buildDepends = [
base blaze-html bytestring containers data-default esqueleto
file-embed friendly-time gravatar lists mime-mail old-locale
@@ -75431,8 +75552,8 @@ self: {
}:
mkDerivation {
pname = "linkedhashmap";
- version = "0.3.0.0";
- sha256 = "151lfsqz5cp49jm2jcsiad1rd72hr84wbll1s3146b1s2lwwjky2";
+ version = "0.4.0.0";
+ sha256 = "1bv39g9vivr3j8arnpla39dhnwaja5l9da2yw580pzmw5bqi0wyq";
buildDepends = [
base containers deepseq hashable unordered-containers
];
@@ -75712,8 +75833,8 @@ self: {
}:
mkDerivation {
pname = "liquid-fixpoint";
- version = "0.2.1.1";
- sha256 = "1ppkknckhny6vmrcsg1x2na4b1v7pzh4cjrdjs99j70kcnax86lc";
+ version = "0.2.2.0";
+ sha256 = "1r1i8c1hgp4d64zmm473nf4jbcyi7zrjfi6n2v19v38x8gjfg7jw";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -75740,8 +75861,8 @@ self: {
}:
mkDerivation {
pname = "liquidhaskell";
- version = "0.2.1.0";
- sha256 = "172ki1pr096jc1azs6hq1p6czjr2gxb0zafmlg9bicn4nwp2h7vy";
+ version = "0.3.0.0";
+ sha256 = "1dq87nd22pm5imh5x4gdwwzg3crdsbgzbfjlrxax4f0xn2b2q4b9";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -75854,8 +75975,8 @@ self: {
}:
mkDerivation {
pname = "list-t";
- version = "0.4.2";
- sha256 = "0n6zc7n5znjas9mgh3a9bn44xv55910i6c3b2l83n4pl9fnad03v";
+ version = "0.4.3";
+ sha256 = "0di3w397cib37snazjvqgfsaapcwa136xcn032p5f5s5njkn3sid";
buildDepends = [
base-prelude mmorph monad-control transformers transformers-base
];
@@ -76483,8 +76604,8 @@ self: {
}:
mkDerivation {
pname = "lockfree-queue";
- version = "0.2.3";
- sha256 = "0y8ax6vcjnjm8g7ybn95wca74hm0g22fvgra06vj6l90pl93awyg";
+ version = "0.2.3.1";
+ sha256 = "131s1w6bdd958pg42s2i62xvw4basagir45y3vhbvsp8p9a6lmra";
buildDepends = [
abstract-deque atomic-primops base bytestring ghc-prim
];
@@ -77141,8 +77262,8 @@ self: {
}:
mkDerivation {
pname = "lucid";
- version = "2.8.1";
- sha256 = "1vpb3vhg5y2wz9by81k9m6vi53adm706x7z8aryzqz6kzgpqw8jc";
+ version = "2.9.0";
+ sha256 = "0zbci795p3fhij9x41xxd2113wilgx36x46mi5nizi3gn2n8wnwh";
buildDepends = [
base blaze-builder bytestring containers mtl text transformers
unordered-containers
@@ -77160,6 +77281,7 @@ self: {
version = "0.4.0.1";
sha256 = "1gg4zmvz80bqw9sv11irfzn0if7z1558d50cnsl0n12fw45vz87n";
buildDepends = [ base blaze-builder lucid text transformers ];
+ jailbreak = true;
homepage = "http://github.com/jeffreyrosenbluth/lucid-svg.git";
description = "DSL for SVG using lucid for HTML";
license = stdenv.lib.licenses.bsd3;
@@ -78878,8 +79000,8 @@ self: {
({ mkDerivation, base, old-locale, safe, text, time }:
mkDerivation {
pname = "mbox";
- version = "0.2";
- sha256 = "0n4f2jzbxqdyvd67zwp5wrdv6iym0n3yadm84rxriclkc3c6pzv0";
+ version = "0.3";
+ sha256 = "0b4304pb3a24rziybdlkypv2l10kg1ja4zmf94zyy53ahy3kms50";
buildDepends = [ base old-locale safe text time ];
description = "Read and write standard mailbox files";
license = stdenv.lib.licenses.bsd3;
@@ -79519,6 +79641,19 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "midi-util" = callPackage
+ ({ mkDerivation, base, containers, event-list, midi, non-negative
+ }:
+ mkDerivation {
+ pname = "midi-util";
+ version = "0.1";
+ sha256 = "19b6x7n49yd6jwld65k2z5zj4mg5s0zgs3zb7y8a4fj2jp15p8kn";
+ buildDepends = [ base containers event-list midi non-negative ];
+ homepage = "http://github.com/mtolly/midi-util";
+ description = "Utility functions for processing MIDI files";
+ license = "GPL";
+ }) {};
+
"midimory" = callPackage
({ mkDerivation, alsa-core, alsa-seq, base, containers, random
, transformers, wx, wxcore
@@ -81900,6 +82035,18 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "mtl-compat" = callPackage
+ ({ mkDerivation, base, mtl, transformers-compat }:
+ mkDerivation {
+ pname = "mtl-compat";
+ version = "0.1.1";
+ sha256 = "0yajq85gdziwm8fcwh78w1br793yk8rk1pp8kb2yx1ijabmn3xdr";
+ buildDepends = [ base mtl transformers-compat ];
+ homepage = "https://github.com/RyanGlScott/mtl-compat";
+ description = "Orphan mtl instances for ExceptT from transformers-compat";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"mtl-evil-instances" = callPackage
({ mkDerivation, base, monad-control, mtl, transformers
, transformers-base
@@ -81916,25 +82063,25 @@ self: {
license = stdenv.lib.licenses.publicDomain;
}) {};
- "mtl-prelude_1_0_2" = callPackage
- ({ mkDerivation, mtl, transformers }:
+ "mtl-prelude_1_0_3" = callPackage
+ ({ mkDerivation, base, mtl, transformers }:
mkDerivation {
pname = "mtl-prelude";
- version = "1.0.2";
- sha256 = "0rw0yr8xlkq3pnn3r1sa5v570qp993j7s62y907i8cylx1a1xpfy";
- buildDepends = [ mtl transformers ];
+ version = "1.0.3";
+ sha256 = "1qr0bwcg9rlj53gbnji969s86qh8laaiibkfy2msziqnp011108x";
+ buildDepends = [ base mtl transformers ];
homepage = "https://github.com/nikita-volkov/mtl-prelude";
description = "Reexports of most definitions from \"mtl\" and \"transformers\"";
license = stdenv.lib.licenses.mit;
}) {};
"mtl-prelude" = callPackage
- ({ mkDerivation, mtl, transformers }:
+ ({ mkDerivation, base, mtl, transformers }:
mkDerivation {
pname = "mtl-prelude";
- version = "2.0.1";
- sha256 = "0z56ycpfgbrxhk8k74rk254yyhqix8ryz6ni8i7aki294wh2cvwn";
- buildDepends = [ mtl transformers ];
+ version = "2.0.2";
+ sha256 = "1j42pdkiiqjkdmidgmgpfbwh2i8dwsc40labw4pm86qzsi0r8m2v";
+ buildDepends = [ base mtl transformers ];
jailbreak = true;
homepage = "https://github.com/nikita-volkov/mtl-prelude";
description = "Reexports of most definitions from \"mtl\" and \"transformers\"";
@@ -85844,15 +85991,18 @@ self: {
}) {};
"on-demand-ssh-tunnel" = callPackage
- ({ mkDerivation, base, bytestring, network, process, random }:
+ ({ mkDerivation, base, bytestring, GenericPretty, network, process
+ , random
+ }:
mkDerivation {
pname = "on-demand-ssh-tunnel";
- version = "0.1.0.3";
- sha256 = "021j91hxmlpl9kajnyv9y211kzjvc8i5kfl6gn5xyl0ybyw9p0z6";
- isLibrary = false;
+ version = "0.1.0.4";
+ sha256 = "0k1z7a4h3ml043x140vrhfchlha5x4ak5n3nvaqcfk78cjr8krbr";
+ isLibrary = true;
isExecutable = true;
- buildDepends = [ base bytestring network process random ];
- jailbreak = true;
+ buildDepends = [
+ base bytestring GenericPretty network process random
+ ];
homepage = "https://github.com/crackleware/on-demand-ssh-tunnel";
description = "Program that sends traffic through SSH tunnels on-demand";
license = stdenv.lib.licenses.mit;
@@ -86678,6 +86828,24 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "origami" = callPackage
+ ({ mkDerivation, base, bifunctors, containers, HUnit, lens, mtl
+ , pretty, template-haskell, test-framework, test-framework-hunit
+ }:
+ mkDerivation {
+ pname = "origami";
+ version = "0.0.1";
+ sha256 = "05ib0nmv9pl158kl4gplqwhdx3mbi41kziika5kpyddlbg33y1n7";
+ buildDepends = [
+ base bifunctors containers lens mtl pretty template-haskell
+ ];
+ testDepends = [ base HUnit test-framework test-framework-hunit ];
+ homepage = "http://github.com/nedervold/origami";
+ description = "An un-SYB framework for transforming heterogenous data through folds";
+ license = stdenv.lib.licenses.bsd3;
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"os-release" = callPackage
({ mkDerivation, base, containers, hlint, hspec, parsec, process
, regex-compat, temporary, transformers
@@ -87975,19 +88143,19 @@ self: {
"paypal-adaptive-hoops" = callPackage
({ mkDerivation, aeson, base, bytestring, data-default, errors
- , http-client, http-types, HUnit, lens, lens-aeson, QuickCheck
- , test-framework, test-framework-hunit, test-framework-quickcheck2
- , text, time, transformers, vector, wreq
+ , http-client, HUnit, lens, lens-aeson, QuickCheck, test-framework
+ , test-framework-hunit, test-framework-quickcheck2, text, time
+ , transformers, vector, wreq
}:
mkDerivation {
pname = "paypal-adaptive-hoops";
- version = "0.5.3.0";
- sha256 = "0bsm5gvjgjgdm3isyhvdzkcgzx3yvnaiz5ll5xq5w7q7vi8nc62v";
+ version = "0.7.0.0";
+ sha256 = "03a60cr1h9h765a2i8j9gvi389wx7rcffwalx1qxvh4hp8k6g9vy";
isLibrary = true;
isExecutable = true;
buildDepends = [
- aeson base bytestring data-default errors http-client http-types
- lens lens-aeson text time transformers vector wreq
+ aeson base bytestring data-default errors http-client lens
+ lens-aeson text time transformers vector wreq
];
testDepends = [
aeson base bytestring data-default HUnit QuickCheck test-framework
@@ -89061,17 +89229,17 @@ self: {
"pgdl" = callPackage
({ mkDerivation, base, binary, bytestring, Cabal, configurator
- , directory, filepath, http-conduit, process, resourcet, split
- , tagsoup, text, transformers, vty, vty-ui
+ , directory, filepath, HTTP, http-conduit, process, resourcet
+ , split, tagsoup, text, transformers, vty, vty-ui
}:
mkDerivation {
pname = "pgdl";
- version = "6.9";
- sha256 = "1m23kbxzygly1xm29cs310ad257iwql2ysg41lxbfnvmmbij43jb";
+ version = "7.0";
+ sha256 = "1vk2y1c94s2n3r3fk7sfc26sp143qq9hxwaqpfw063nda55q7yh0";
isLibrary = false;
isExecutable = true;
buildDepends = [
- base binary bytestring Cabal configurator directory filepath
+ base binary bytestring Cabal configurator directory filepath HTTP
http-conduit process resourcet split tagsoup text transformers vty
vty-ui
];
@@ -90873,6 +91041,18 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "ports-tools" = callPackage
+ ({ mkDerivation, base, directory, process }:
+ mkDerivation {
+ pname = "ports-tools";
+ version = "0.0.1";
+ sha256 = "0bs7b88qiczf59dliqhbxbzciv4xi07b6djspgpydigyrf5maac6";
+ buildDepends = [ base directory process ];
+ homepage = "http://github.com/ppenzin/hs-ports-tools/";
+ description = "Library to interact with port tools on FreeBSD";
+ license = "unknown";
+ }) {};
+
"positive" = callPackage
({ mkDerivation, base, nats, semigroups }:
mkDerivation {
@@ -91193,18 +91373,18 @@ self: {
"postgrest" = callPackage
({ mkDerivation, aeson, base, base64-string, bcrypt, blaze-builder
, bytestring, case-insensitive, containers, convertible, hasql
- , hasql-backend, hasql-postgres, hspec, hspec-wai, hspec-wai-json
- , HTTP, http-media, http-types, MissingH, mtl, network, network-uri
- , optparse-applicative, process, QuickCheck, Ranged-sets
- , regex-base, regex-tdfa, regex-tdfa-text, resource-pool
- , scientific, split, string-conversions, stringsearch, text, time
- , transformers, unordered-containers, vector, wai, wai-cors
- , wai-extra, wai-middleware-static, warp
+ , hasql-backend, hasql-postgres, hlint, hspec, hspec-wai
+ , hspec-wai-json, HTTP, http-media, http-types, MissingH, mtl
+ , network, network-uri, optparse-applicative, packdeps, process
+ , QuickCheck, Ranged-sets, regex-base, regex-tdfa, regex-tdfa-text
+ , resource-pool, scientific, split, string-conversions
+ , stringsearch, text, time, transformers, unordered-containers
+ , vector, wai, wai-cors, wai-extra, wai-middleware-static, warp
}:
mkDerivation {
pname = "postgrest";
- version = "0.2.5.2";
- sha256 = "0lxc81scd52blhkrdcv5zamazbvysnmhcgqx5rjr6lznr8p438c5";
+ version = "0.2.5.3";
+ sha256 = "0kk4p3kcyp6wdjsnyyss1sfs8rjpjnhc8i79lagd30v7f244rv9b";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -91219,14 +91399,13 @@ self: {
testDepends = [
aeson base base64-string bcrypt blaze-builder bytestring
case-insensitive containers convertible hasql hasql-backend
- hasql-postgres hspec hspec-wai hspec-wai-json HTTP http-media
+ hasql-postgres hlint hspec hspec-wai hspec-wai-json HTTP http-media
http-types MissingH mtl network network-uri optparse-applicative
- process QuickCheck Ranged-sets regex-base regex-tdfa
+ packdeps process QuickCheck Ranged-sets regex-base regex-tdfa
regex-tdfa-text resource-pool scientific split string-conversions
stringsearch text time transformers unordered-containers vector wai
wai-cors wai-extra wai-middleware-static warp
];
- jailbreak = true;
homepage = "https://github.com/begriffs/postgrest";
description = "REST API for any Postgres database";
license = stdenv.lib.licenses.mit;
@@ -92024,8 +92203,8 @@ self: {
}:
mkDerivation {
pname = "process-extras";
- version = "0.3.0.1";
- sha256 = "1kgqf6p9m6g0vf2dj8l543qn3a2b837dzzwi8knp41divlq7z76v";
+ version = "0.3.1";
+ sha256 = "1lwjm402q92ibd66xiz5zwwqd8nkyvlhnrw60ja3zngq8z8dsk7g";
buildDepends = [ base bytestring deepseq ListLike process text ];
homepage = "https://github.com/seereason/process-extras";
description = "Process extras";
@@ -92125,8 +92304,8 @@ self: {
}:
mkDerivation {
pname = "process-streaming";
- version = "0.6.5.0";
- sha256 = "126qgpnrk05gz196gf3j2h440kmzzkcz2r5nv437ndmjnsw8rq94";
+ version = "0.6.6.0";
+ sha256 = "1diqrnb8s9f23w8wazpqp12lgf7d98awnwq45x4y2yhqc4ar36cb";
buildDepends = [
base bifunctors conceit containers contravariant exceptions foldl
free pipes pipes-bytestring pipes-concurrency pipes-parse
@@ -93206,8 +93385,8 @@ self: {
}:
mkDerivation {
pname = "purescript";
- version = "0.6.4.1";
- sha256 = "02pwrrr0pbqjsmprcs8jf3p95cbjik33509vh5x0f7c4dkdl783p";
+ version = "0.6.6";
+ sha256 = "1bxpyfhldj22b021hz1iwiv6x4wpc5dm1f0pw4jpc8accs19ih50";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -94547,6 +94726,32 @@ self: {
license = stdenv.lib.licenses.mit;
}) {};
+ "rasterific-svg" = callPackage
+ ({ mkDerivation, attoparsec, base, binary, blaze-html, bytestring
+ , containers, directory, filepath, FontyFruity, JuicyPixels, lens
+ , linear, mtl, optparse-applicative, Rasterific, scientific
+ , svg-tree, text, transformers, vector
+ }:
+ mkDerivation {
+ pname = "rasterific-svg";
+ version = "0.1.0.1";
+ sha256 = "1v6ky1b43mm99j6z94q6hbvhm39vpkmncihi1y6qcls8pxymgg7s";
+ isLibrary = true;
+ isExecutable = true;
+ buildDepends = [
+ base binary bytestring containers directory filepath FontyFruity
+ JuicyPixels lens linear mtl optparse-applicative Rasterific
+ scientific svg-tree text transformers vector
+ ];
+ testDepends = [
+ attoparsec base binary blaze-html bytestring directory filepath
+ FontyFruity JuicyPixels linear Rasterific svg-tree text
+ ];
+ jailbreak = true;
+ description = "SVG renderer based on Rasterific";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"rate-limit" = callPackage
({ mkDerivation, base, time-units }:
mkDerivation {
@@ -95007,8 +95212,8 @@ self: {
({ mkDerivation, base, bytestring, text }:
mkDerivation {
pname = "readable";
- version = "0.3.0.1";
- sha256 = "0wn2k86hbjvvxbssgcsrp0k566kv1rlb3pq9mz6ipasm921cjqsy";
+ version = "0.3.1";
+ sha256 = "1ja39cg26wy2fs00gi12x7iq5k8i366pbqi3p916skfa5jnkfc3h";
buildDepends = [ base bytestring text ];
homepage = "https://github.com/mightybyte/readable";
description = "Reading from Text and ByteString";
@@ -96332,7 +96537,6 @@ self: {
testDepends = [ base hspec HUnit ];
description = "A simple api for matchers";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"rematch-text" = callPackage
@@ -96345,7 +96549,6 @@ self: {
testDepends = [ base hspec HUnit rematch text ];
description = "`rematch` matchers for Data.Text";
license = stdenv.lib.licenses.mit;
- hydraPlatforms = stdenv.lib.platforms.none;
}) {};
"remote" = callPackage
@@ -98798,8 +99001,8 @@ self: {
}:
mkDerivation {
pname = "saltine-quickcheck";
- version = "0.1.0.0";
- sha256 = "0x4abnpcss26nnpr0c45qkik2awkpmm3y78zhp41jw11w98sw0p9";
+ version = "0.1.0.1";
+ sha256 = "041286rsyzv67qqbbbd38fc9qqzmml0js4qr0rqhaljv8cf1sxnj";
buildDepends = [
base bytestring bytestring-arbitrary hex QuickCheck saltine
];
@@ -99361,24 +99564,24 @@ self: {
, incremental-parser, monad-coroutine, monad-parallel
, monoid-subclasses, parsec, process, QuickCheck, test-framework
, test-framework-quickcheck2, text, transformers
+ , transformers-compat
}:
mkDerivation {
pname = "scc";
- version = "0.8.2";
- sha256 = "1chqrv4h6n0sjs747z530ff6wdrciaxpq344zlffbi6qvb61xxzp";
+ version = "0.8.2.1";
+ sha256 = "177a4p72kaj92nn07b65pnxq3y310x2sg1lx3vb9p4hg4s8biafx";
isLibrary = true;
isExecutable = true;
buildDepends = [
base bytestring containers haskeline incremental-parser
monad-coroutine monad-parallel monoid-subclasses parsec process
- text transformers
+ text transformers transformers-compat
];
testDepends = [
base bytestring containers incremental-parser monad-coroutine
monad-parallel monoid-subclasses QuickCheck test-framework
- test-framework-quickcheck2 text transformers
+ test-framework-quickcheck2 text transformers transformers-compat
];
- jailbreak = true;
homepage = "http://trac.haskell.org/SCC/";
description = "Streaming component combinators";
license = "GPL";
@@ -99659,8 +99862,8 @@ self: {
}:
mkDerivation {
pname = "scion-browser";
- version = "0.4.3";
- sha256 = "09kzg60q8m2dq43llm6gm866vqb8hvazwb452c9bly46n686bznl";
+ version = "0.5.0";
+ sha256 = "1nf4rvy8szxjra6l20jxd0v2f6zf985jiz2d1y5rkfvrqx1pwqnc";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -99671,7 +99874,6 @@ self: {
resourcet tar text transformers unix unordered-containers
utf8-string vector zlib
];
- jailbreak = true;
homepage = "http://github.com/JPMoresmau/scion-class-browser";
description = "Command-line interface for browsing and searching packages documentation";
license = stdenv.lib.licenses.bsd3;
@@ -100098,6 +100300,17 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) { inherit (pkgs) SDL2; SDL2_ttf = null;};
+ "sdnv" = callPackage
+ ({ mkDerivation, base, binary, bytestring }:
+ mkDerivation {
+ pname = "sdnv";
+ version = "0.1.0.0";
+ sha256 = "07d7989v4a8dz5jqrhz56ki9wkngaf1d0153271lylj015y00rmc";
+ buildDepends = [ base binary bytestring ];
+ description = "Self-delimiting numeric values encoding library";
+ license = stdenv.lib.licenses.bsd2;
+ }) {};
+
"seacat" = callPackage
({ mkDerivation, base, blaze-builder, blaze-html, bytestring
, ConfigFile, data-default, directory, filepath, http-types
@@ -104914,8 +105127,8 @@ self: {
}:
mkDerivation {
pname = "som";
- version = "7.5.0";
- sha256 = "16bfgfd5wz60ji5rj2znx58ha1i73n376x52xdz46s71x67jzv3j";
+ version = "8.0.0";
+ sha256 = "030vb8blgcbky6yrxmlgrjq68mm95x91cg2yqk0vd5c412rrnwwl";
buildDepends = [ base containers grid MonadRandom ];
testDepends = [
base containers grid MonadRandom QuickCheck random test-framework
@@ -107915,6 +108128,17 @@ self: {
license = "GPL";
}) {};
+ "subnet" = callPackage
+ ({ mkDerivation, base, split }:
+ mkDerivation {
+ pname = "subnet";
+ version = "0.0.1";
+ sha256 = "1sifc3my4jv2lz1pmmyx6k65ih4lh0crwhw1jbkscd8lwi5gx2kz";
+ buildDepends = [ base split ];
+ homepage = "https://github.com/gcganley/subnet";
+ license = stdenv.lib.licenses.mit;
+ }) {};
+
"subtitleParser" = callPackage
({ mkDerivation, attoparsec, base, containers, text }:
mkDerivation {
@@ -108192,6 +108416,24 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "svg-tree" = callPackage
+ ({ mkDerivation, attoparsec, base, bytestring, containers
+ , JuicyPixels, lens, linear, mtl, scientific, text, transformers
+ , vector, xml
+ }:
+ mkDerivation {
+ pname = "svg-tree";
+ version = "0.1";
+ sha256 = "08id1wadmdqh9nig5cjdkg47s9qi6k92dm02s6l9si7bq2mymwvy";
+ buildDepends = [
+ attoparsec base bytestring containers JuicyPixels lens linear mtl
+ scientific text transformers vector xml
+ ];
+ jailbreak = true;
+ description = "SVG file loader and serializer";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"svg2q" = callPackage
({ mkDerivation, base, haskell98, language-c, pretty, svgutils, syb
, xml
@@ -108619,6 +108861,7 @@ self: {
pname = "syntax";
version = "1.0.0.0";
sha256 = "1dhbzbf1zlpfjhnacqfhzvjznwlzv39c12a3y8ivqhplnkmqsm7x";
+ editedCabalFile = "7f3d7f3a8c8aedb78145f4d8a992815cdb644d839a5431b23e5fad0a62d7dd5c";
buildDepends = [
base lens mono-traversable scientific semi-iso text vector
];
@@ -108992,8 +109235,8 @@ self: {
}:
mkDerivation {
pname = "system-filepath";
- version = "0.4.13.1";
- sha256 = "0b9hzg0s7j3xd6szfac84viqijkakdq0s2hr4d23yh6ai79v04d4";
+ version = "0.4.13.2";
+ sha256 = "0nmzahybk7mijq6dxcp2hr5mh5hlmz3q1dg1d31b5saazfnsicsj";
buildDepends = [ base bytestring deepseq text ];
testDepends = [
base bytestring chell chell-quickcheck QuickCheck text
@@ -110262,15 +110505,14 @@ self: {
}:
mkDerivation {
pname = "tellbot";
- version = "0.4.0.3";
- sha256 = "0n0gfszxz92v1vlkdfq32yzj4lcxph2yymzfkbdaz7y4bjjpikkl";
+ version = "0.4.0.4";
+ sha256 = "1d5jdkk82y1xj22rpaz42ph3gp0fclghg5wbd8p7z2d9vas4p36n";
isLibrary = false;
isExecutable = true;
buildDepends = [
base bifunctors containers errors mtl network split time
transformers
];
- jailbreak = true;
description = "IRC tellbot";
license = stdenv.lib.licenses.gpl3;
}) {};
@@ -110762,8 +111004,8 @@ self: {
}:
mkDerivation {
pname = "test-framework-sandbox";
- version = "0.0.2.5";
- sha256 = "0vviw3byz3g1zjq2fjiyqbddx6s2j7ziwrqp5fshhaf118634056";
+ version = "0.1.0";
+ sha256 = "0bfj0l189dh52dipdnxcqllk2h6g4dwcwcw5pll2my3n7r78pn7v";
buildDepends = [
ansi-terminal base lifted-base mtl temporary test-framework
test-sandbox transformers
@@ -110875,8 +111117,8 @@ self: {
}:
mkDerivation {
pname = "test-sandbox";
- version = "0.0.1.13";
- sha256 = "0hrqfajgmbwiwxh66ijsrvjmiind5gvi9xq14s8f0w7bcqxjcrrr";
+ version = "0.1.0";
+ sha256 = "172ffbxysn2y66zl9rfxkaamgsaskhby37v0zrfx82rqfik1baq0";
buildDepends = [
base bytestring cereal containers data-default directory filepath
lifted-base monad-control monad-loops mtl network process random
@@ -110898,8 +111140,8 @@ self: {
({ mkDerivation, base, HUnit, lifted-base, test-sandbox }:
mkDerivation {
pname = "test-sandbox-hunit";
- version = "0.0.1.6";
- sha256 = "0w5k240f249lgggzy2lldaw8661g0q4293hkfcz7d0hhl78zwg48";
+ version = "0.1.0";
+ sha256 = "1kg5i6l0809c0mmi4arp1dcaf52lq2i0lwcv1p3vp3vcc20srfsf";
buildDepends = [ base HUnit lifted-base test-sandbox ];
homepage = "http://gree.github.io/haskell-test-sandbox/";
description = "HUnit convenience functions for use with test-sandbox";
@@ -110913,8 +111155,8 @@ self: {
}:
mkDerivation {
pname = "test-sandbox-quickcheck";
- version = "0.0.1.6";
- sha256 = "1pp1la69ihzc4lcnc9vn7nan7qcq1fc3xvndi2j2118lv005fiha";
+ version = "0.1.0";
+ sha256 = "0gijq6qwcljq2kvh08nffb6d9qblwpj4hw2jlxidvxy1hzbsgiyi";
buildDepends = [
base mtl QuickCheck random test-sandbox transformers
];
@@ -111607,10 +111849,10 @@ self: {
({ mkDerivation, base, containers, syb, template-haskell }:
mkDerivation {
pname = "th-expand-syns";
- version = "0.3.0.4";
- sha256 = "05qgfam7zq02848icvddds67ch5d8py7r30izg4lp0df0kzn08yq";
- editedCabalFile = "a067fbdc4c4a7943e1931e127514ff94cccbcb730e152a73a3e281ba13900b18";
+ version = "0.3.0.5";
+ sha256 = "1xirbzcnsb8lvadsz8m6jg8yxc3wrf40dnvs66kdmhwjbg6kv4rh";
buildDepends = [ base containers syb template-haskell ];
+ testDepends = [ base template-haskell ];
description = "Expands type synonyms in Template Haskell ASTs";
license = stdenv.lib.licenses.bsd3;
}) {};
@@ -112270,6 +112512,22 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "tidal-midi" = callPackage
+ ({ mkDerivation, alsa-core, alsa-seq, base, containers, hashable
+ , hosc, process, tidal
+ }:
+ mkDerivation {
+ pname = "tidal-midi";
+ version = "0.0.1";
+ sha256 = "0j2smcjbnsa6ksrgfmcjbm6sjq9ps0l8fqzaib60pgi34b6dnzv8";
+ buildDepends = [
+ alsa-core alsa-seq base containers hashable hosc process tidal
+ ];
+ homepage = "http://tidal.lurk.org/";
+ description = "MIDI support for tidal";
+ license = stdenv.lib.licenses.gpl3;
+ }) {};
+
"tidal-vis" = callPackage
({ mkDerivation, base, cairo, colour, tidal }:
mkDerivation {
@@ -112690,8 +112948,8 @@ self: {
}:
mkDerivation {
pname = "timeplot";
- version = "1.0.27";
- sha256 = "072bxa0pfxyia4xvj0w0h8v3yfk05bbq5j905sj6jf9apjr9h558";
+ version = "1.0.28";
+ sha256 = "1bazhm0hlhhkw6vhn34hsk8xk0h3k2dlram5xhpnn51g7z2b9v71";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -114528,20 +114786,23 @@ self: {
"twitter-types" = callPackage
({ mkDerivation, aeson, attoparsec, base, bytestring, derive
- , directory, filepath, HUnit, QuickCheck, template-haskell
- , test-framework, test-framework-hunit, test-framework-quickcheck2
- , test-framework-th-prime, text, unordered-containers
+ , directory, filepath, HUnit, old-locale, QuickCheck
+ , template-haskell, test-framework, test-framework-hunit
+ , test-framework-quickcheck2, test-framework-th-prime, text, time
+ , unordered-containers
}:
mkDerivation {
pname = "twitter-types";
- version = "0.6.1";
- sha256 = "0pg5l4nvkbvpn2zzn0wfpjv9j5wm89ik80xlsbmibcfc8xilyahn";
- buildDepends = [ aeson base text unordered-containers ];
+ version = "0.7.0";
+ sha256 = "0smzz3y6xgb0yddp62bvw4j278fw5dnjffrjfxz3dc6hd602cvlh";
+ buildDepends = [
+ aeson base old-locale text time unordered-containers
+ ];
testDepends = [
aeson attoparsec base bytestring derive directory filepath HUnit
- QuickCheck template-haskell test-framework test-framework-hunit
- test-framework-quickcheck2 test-framework-th-prime text
- unordered-containers
+ old-locale QuickCheck template-haskell test-framework
+ test-framework-hunit test-framework-quickcheck2
+ test-framework-th-prime text time unordered-containers
];
homepage = "https://github.com/himura/twitter-types";
description = "Twitter JSON parser and types";
@@ -114550,14 +114811,16 @@ self: {
}) {};
"twitter-types-lens" = callPackage
- ({ mkDerivation, base, lens, template-haskell, text, twitter-types
+ ({ mkDerivation, base, lens, template-haskell, text, time
+ , twitter-types
}:
mkDerivation {
pname = "twitter-types-lens";
- version = "0.6.0";
- sha256 = "0n2z7v2mcvj2czkszkp87sf7cv4zj82yccygs9ah5ax28dw823v3";
- editedCabalFile = "914c48c9ce684698e10d4b0adf0f87afeed2ff6018d5f208711be58d251e4dc7";
- buildDepends = [ base lens template-haskell text twitter-types ];
+ version = "0.7.0";
+ sha256 = "1775ydjpv0rii3zbz60xl8dz3537fcid3j4867ynw0zvk1sl01wc";
+ buildDepends = [
+ base lens template-haskell text time twitter-types
+ ];
homepage = "https://github.com/himura/twitter-types-lens";
description = "Twitter JSON types (lens powered)";
license = stdenv.lib.licenses.bsd3;
@@ -116538,6 +116801,21 @@ self: {
license = stdenv.lib.licenses.bsd3;
}) {};
+ "up-grade" = callPackage
+ ({ mkDerivation, base, ports-tools, process }:
+ mkDerivation {
+ pname = "up-grade";
+ version = "0.0.1";
+ sha256 = "1apa5ni0i2wqps8xvppnlhybz6s1qllpbgias4d7fbwb5pfznppd";
+ isLibrary = false;
+ isExecutable = true;
+ buildDepends = [ base ports-tools process ];
+ homepage = "http://github.com/ppenzin/up/";
+ description = "Software management tool";
+ license = "unknown";
+ hydraPlatforms = stdenv.lib.platforms.none;
+ }) {};
+
"uploadcare" = callPackage
({ mkDerivation, aeson, attoparsec, base, bytestring, cryptohash
, hex, http-conduit, http-types, old-locale, time
@@ -119541,8 +119819,8 @@ self: {
}:
mkDerivation {
pname = "warp";
- version = "3.0.8";
- sha256 = "1zfvypsql8fciip8lblbdwwxbr15i6nknk2ip3mmm8h7wxq3yn1w";
+ version = "3.0.9";
+ sha256 = "1rlkfxm2ryyzdl3clbs4qaka80wja9nn1pakl7rvn4rv809g1kgi";
buildDepends = [
array auto-update base blaze-builder bytestring case-insensitive
ghc-prim hashable http-date http-types iproute network
@@ -120287,8 +120565,8 @@ self: {
}:
mkDerivation {
pname = "websockets-snap";
- version = "0.9.0.0";
- sha256 = "051y62xga7drrfllv10giyr49z1z9ql8681dgwynmdad5x6asf85";
+ version = "0.9.1.0";
+ sha256 = "170bivzyqr46s9l7l6dd1nwx3wai9pv0qpf7bw3rxh2y6lxk2546";
buildDepends = [
base bytestring enumerator mtl snap-core snap-server websockets
];
@@ -120945,6 +121223,17 @@ self: {
hydraPlatforms = stdenv.lib.platforms.none;
}) {};
+ "wrap" = callPackage
+ ({ mkDerivation, base }:
+ mkDerivation {
+ pname = "wrap";
+ version = "0.0.0";
+ sha256 = "03pmfwwx2ykjglzrc4k09q2lv8piq107j32dg0r1aadj2ysc9fzq";
+ buildDepends = [ base ];
+ description = "Wrap a function's return value with another function";
+ license = stdenv.lib.licenses.bsd3;
+ }) {};
+
"wraparound" = callPackage
({ mkDerivation, base }:
mkDerivation {
@@ -123349,8 +123638,8 @@ self: {
}:
mkDerivation {
pname = "yesod-auth";
- version = "1.4.1.3";
- sha256 = "0d1mg75717zplkb7psd8mas5vyy02w1d32h9xryvpc0qhmawwdcx";
+ version = "1.4.2";
+ sha256 = "05q9l4yh6nlbdh1m7a1i4n2n3y61b9lcfx46ibsay51ykw09p08x";
buildDepends = [
aeson authenticate base base16-bytestring base64-bytestring binary
blaze-builder blaze-html blaze-markup byteable bytestring conduit
@@ -123606,8 +123895,8 @@ self: {
}:
mkDerivation {
pname = "yesod-bin";
- version = "1.4.3.5";
- sha256 = "1qqgpz50ycwk5ikkh10x5bai2d5g9zsc0lmx9150r0hzrmls7j0b";
+ version = "1.4.3.6";
+ sha256 = "0mha1csljbnh5idwi5hsk86fgqiq5kk1crdhiyyvigysrl83z0py";
isLibrary = false;
isExecutable = true;
buildDepends = [
@@ -123674,24 +123963,24 @@ self: {
, hspec-expectations, http-types, HUnit, lifted-base, monad-control
, monad-logger, mtl, mwc-random, network, old-locale, parsec
, path-pieces, primitive, QuickCheck, random, resourcet, safe
- , shakespeare, streaming-commons, template-haskell, text, time
- , transformers, transformers-base, unix-compat
+ , semigroups, shakespeare, streaming-commons, template-haskell
+ , text, time, transformers, transformers-base, unix-compat
, unordered-containers, vector, wai, wai-extra, wai-logger, warp
, word8
}:
mkDerivation {
pname = "yesod-core";
- version = "1.4.7.2";
- sha256 = "0k6zsjds594zy0cvnryz071nis3zmv1sjiyn14cc80j0rvjll46y";
+ version = "1.4.8";
+ sha256 = "02c5c8d688dsxxqz9kgh2niyh9775cjmnympab9mwjkq6m3wblpq";
buildDepends = [
aeson auto-update base blaze-builder blaze-html blaze-markup
bytestring case-insensitive cereal clientsession conduit
conduit-extra containers cookie data-default deepseq directory
exceptions fast-logger http-types lifted-base monad-control
monad-logger mtl mwc-random old-locale parsec path-pieces primitive
- random resourcet safe shakespeare template-haskell text time
- transformers transformers-base unix-compat unordered-containers
- vector wai wai-extra wai-logger warp word8
+ random resourcet safe semigroups shakespeare template-haskell text
+ time transformers transformers-base unix-compat
+ unordered-containers vector wai wai-extra wai-logger warp word8
];
testDepends = [
async base blaze-builder bytestring clientsession conduit
@@ -123854,18 +124143,19 @@ self: {
({ mkDerivation, aeson, attoparsec, base, blaze-builder, blaze-html
, blaze-markup, byteable, bytestring, containers, data-default
, email-validate, hspec, network-uri, persistent, resourcet
- , shakespeare, template-haskell, text, time, transformers, wai
- , xss-sanitize, yesod-core, yesod-persistent
+ , semigroups, shakespeare, template-haskell, text, time
+ , transformers, wai, xss-sanitize, yesod-core, yesod-persistent
}:
mkDerivation {
pname = "yesod-form";
- version = "1.4.3.1";
- sha256 = "142d114968mwdgk3sbj66p01jag9k5gn3ny536xpv0qhzg2nxqab";
+ version = "1.4.4";
+ sha256 = "1vy4gscw3rgglbiq0v4l0zjmvan2sk6sgd93402hw64xwxwzc35c";
buildDepends = [
aeson attoparsec base blaze-builder blaze-html blaze-markup
byteable bytestring containers data-default email-validate
- network-uri persistent resourcet shakespeare template-haskell text
- time transformers wai xss-sanitize yesod-core yesod-persistent
+ network-uri persistent resourcet semigroups shakespeare
+ template-haskell text time transformers wai xss-sanitize yesod-core
+ yesod-persistent
];
testDepends = [ base hspec text time ];
homepage = "http://www.yesodweb.com/";
@@ -124195,21 +124485,23 @@ self: {
}) {};
"yesod-purescript" = callPackage
- ({ mkDerivation, aeson, base, containers, data-default, directory
- , filepath, formatting, fsnotify, parsec, purescript, shakespeare
- , system-fileio, system-filepath, template-haskell, text, time
- , transformers, utf8-string, yesod-core
+ ({ mkDerivation, aeson, base, bytestring, containers, data-default
+ , directory, filepath, formatting, fsnotify, parsec, purescript
+ , regex-tdfa, regex-tdfa-text, shakespeare, system-fileio
+ , system-filepath, template-haskell, text, time, transformers
+ , yesod-core
}:
mkDerivation {
pname = "yesod-purescript";
- version = "0.0.4.1";
- sha256 = "0waz49xxhipycq0i8q8pz8g2d3sk3ch65x3rbvdip53j6jnz5dlv";
+ version = "0.0.4.4";
+ sha256 = "0cnci6i4r9jp1f5ni4jxis28v0ijryyqvskqif3036nxbq4fm099";
buildDepends = [
- aeson base containers data-default directory filepath formatting
- fsnotify parsec purescript shakespeare system-fileio
- system-filepath template-haskell text time transformers utf8-string
- yesod-core
+ aeson base bytestring containers data-default directory filepath
+ formatting fsnotify parsec purescript regex-tdfa regex-tdfa-text
+ shakespeare system-fileio system-filepath template-haskell text
+ time transformers yesod-core
];
+ jailbreak = true;
homepage = "https://github.com/mpietrzak/yesod-purescript";
description = "PureScript integration for Yesod";
license = stdenv.lib.licenses.mit;
@@ -124430,8 +124722,8 @@ self: {
}:
mkDerivation {
pname = "yesod-test";
- version = "1.4.3";
- sha256 = "1hkrxyflz3fcjf280lcafpl3krkj366xnx2ks5h0qzwhv9mjagi3";
+ version = "1.4.3.1";
+ sha256 = "150kzp8h9wl3c1diz6h6m62qd6w0qz4drgrm095amb0sndrh37m2";
buildDepends = [
attoparsec base blaze-builder blaze-html blaze-markup bytestring
case-insensitive containers cookie hspec-core html-conduit
diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix
index 8337411e1ad..323030f1eaf 100644
--- a/pkgs/development/haskell-modules/lib.nix
+++ b/pkgs/development/haskell-modules/lib.nix
@@ -40,8 +40,8 @@ rec {
enableLibraryProfiling = drv: overrideCabal drv (drv: { enableLibraryProfiling = true; });
disableLibraryProfiling = drv: overrideCabal drv (drv: { enableLibraryProfiling = false; });
- enableSharedExecutables = drv: overrideCabal drv ( { enableSharedExecutables = true; });
- disableSharedExecutables = drv: overrideCabal drv ( { enableSharedExecutables = false; });
+ enableSharedExecutables = drv: overrideCabal drv (drv: { enableSharedExecutables = true; });
+ disableSharedExecutables = drv: overrideCabal drv (drv: { enableSharedExecutables = false; });
enableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = true; });
disableSharedLibraries = drv: overrideCabal drv (drv: { enableSharedLibraries = false; });
diff --git a/pkgs/development/interpreters/php/5.5.nix b/pkgs/development/interpreters/php/5.5.nix
new file mode 100644
index 00000000000..70380889bd3
--- /dev/null
+++ b/pkgs/development/interpreters/php/5.5.nix
@@ -0,0 +1,265 @@
+{ stdenv, fetchurl, composableDerivation, autoconf, automake, flex, bison
+, apacheHttpd, mysql, libxml2, readline, zlib, curl, postgresql, gettext
+, openssl, pkgconfig, sqlite, config, libjpeg, libpng, freetype
+, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds
+, uwimap, pam, gmp }:
+
+let
+ libmcryptOverride = libmcrypt.override { disablePosixThreads = true; };
+in
+
+composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
+
+ version = "5.5.21";
+
+ name = "php-${version}";
+
+ enableParallelBuilding = true;
+
+ buildInputs = ["flex" "bison" "pkgconfig"];
+
+ flags = {
+
+ # much left to do here...
+
+ # SAPI modules:
+
+ apxs2 = {
+ configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
+ buildInputs = [apacheHttpd];
+ };
+
+ # Extensions
+ imap = {
+ configureFlags = [
+ "--with-imap=${uwimap}"
+ "--with-imap-ssl"
+ ];
+ buildInputs = [ uwimap openssl pam ];
+ };
+
+ ldap = {
+ configureFlags = ["--with-ldap=${openldap}"];
+ buildInputs = [openldap cyrus_sasl openssl];
+ };
+
+ mhash = {
+ configureFlags = ["--with-mhash"];
+ buildInputs = [libmhash];
+ };
+
+ curl = {
+ configureFlags = ["--with-curl=${curl}"];
+ buildInputs = [curl openssl];
+ };
+
+ zlib = {
+ configureFlags = ["--with-zlib=${zlib}"];
+ buildInputs = [zlib];
+ };
+
+ libxml2 = {
+ configureFlags = [
+ "--with-libxml-dir=${libxml2}"
+ ];
+ buildInputs = [ libxml2 ];
+ };
+
+ pcntl = {
+ configureFlags = [ "--enable-pcntl" ];
+ };
+
+ readline = {
+ configureFlags = ["--with-readline=${readline}"];
+ buildInputs = [ readline ];
+ };
+
+ sqlite = {
+ configureFlags = ["--with-pdo-sqlite=${sqlite}"];
+ buildInputs = [ sqlite ];
+ };
+
+ postgresql = {
+ configureFlags = ["--with-pgsql=${postgresql}"];
+ buildInputs = [ postgresql ];
+ };
+
+ pdo_pgsql = {
+ configureFlags = ["--with-pdo-pgsql=${postgresql}"];
+ buildInputs = [ postgresql ];
+ };
+
+ mysql = {
+ configureFlags = ["--with-mysql=${mysql}"];
+ buildInputs = [ mysql ];
+ };
+
+ mysqli = {
+ configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
+ buildInputs = [ mysql];
+ };
+
+ mysqli_embedded = {
+ configureFlags = ["--enable-embedded-mysqli"];
+ depends = "mysqli";
+ assertion = fixed.mysqliSupport;
+ };
+
+ pdo_mysql = {
+ configureFlags = ["--with-pdo-mysql=${mysql}"];
+ buildInputs = [ mysql ];
+ };
+
+ bcmath = {
+ configureFlags = ["--enable-bcmath"];
+ };
+
+ gd = {
+ # FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
+ configureFlags = [
+ "--with-gd"
+ "--with-freetype-dir=${freetype}"
+ "--with-png-dir=${libpng}"
+ "--with-jpeg-dir=${libjpeg}"
+ ];
+ buildInputs = [ libpng libjpeg freetype ];
+ };
+
+ gmp = {
+ configureFlags = ["--with-gmp=${gmp}"];
+ buildInputs = [ gmp ];
+ };
+
+ soap = {
+ configureFlags = ["--enable-soap"];
+ };
+
+ sockets = {
+ configureFlags = ["--enable-sockets"];
+ };
+
+ openssl = {
+ configureFlags = ["--with-openssl=${openssl}"];
+ buildInputs = ["openssl"];
+ };
+
+ mbstring = {
+ configureFlags = ["--enable-mbstring"];
+ };
+
+ gettext = {
+ configureFlags = ["--with-gettext=${gettext}"];
+ buildInputs = [gettext];
+ };
+
+ intl = {
+ configureFlags = ["--enable-intl"];
+ buildInputs = [icu];
+ };
+
+ exif = {
+ configureFlags = ["--enable-exif"];
+ };
+
+ xsl = {
+ configureFlags = ["--with-xsl=${libxslt}"];
+ buildInputs = [libxslt];
+ };
+
+ mcrypt = {
+ configureFlags = ["--with-mcrypt=${libmcryptOverride}"];
+ buildInputs = [libmcryptOverride];
+ };
+
+ bz2 = {
+ configureFlags = ["--with-bz2=${bzip2}"];
+ buildInputs = [bzip2];
+ };
+
+ zip = {
+ configureFlags = ["--enable-zip"];
+ };
+
+ ftp = {
+ configureFlags = ["--enable-ftp"];
+ };
+
+ fpm = {
+ configureFlags = ["--enable-fpm"];
+ };
+
+ mssql = stdenv.lib.optionalAttrs (!stdenv.isDarwin) {
+ configureFlags = ["--with-mssql=${freetds}"];
+ buildInputs = [freetds];
+ };
+
+ };
+
+ cfg = {
+ imapSupport = config.php.imap or true;
+ ldapSupport = config.php.ldap or true;
+ mhashSupport = config.php.mhash or true;
+ mysqlSupport = config.php.mysql or true;
+ mysqliSupport = config.php.mysqli or true;
+ pdo_mysqlSupport = config.php.pdo_mysql or true;
+ libxml2Support = config.php.libxml2 or true;
+ apxs2Support = config.php.apxs2 or true;
+ bcmathSupport = config.php.bcmath or true;
+ socketsSupport = config.php.sockets or true;
+ curlSupport = config.php.curl or true;
+ gettextSupport = config.php.gettext or true;
+ pcntlSupport = config.php.pcntl or true;
+ postgresqlSupport = config.php.postgresql or true;
+ readlineSupport = config.php.readline or true;
+ sqliteSupport = config.php.sqlite or true;
+ soapSupport = config.php.soap or true;
+ zlibSupport = config.php.zlib or true;
+ opensslSupport = config.php.openssl or true;
+ mbstringSupport = config.php.mbstring or true;
+ gdSupport = config.php.gd or true;
+ intlSupport = config.php.intl or true;
+ exifSupport = config.php.exif or true;
+ xslSupport = config.php.xsl or false;
+ mcryptSupport = config.php.mcrypt or true;
+ bz2Support = config.php.bz2 or false;
+ zipSupport = config.php.zip or true;
+ ftpSupport = config.php.ftp or true;
+ fpmSupport = config.php.fpm or true;
+ gmpSupport = config.php.gmp or true;
+ mssqlSupport = config.php.mssql or (!stdenv.isDarwin);
+ };
+
+ configurePhase = ''
+ # Don't record the configure flags since this causes unnecessary
+ # runtime dependencies.
+ for i in main/build-defs.h.in scripts/php-config.in; do
+ substituteInPlace $i \
+ --replace '@CONFIGURE_COMMAND@' '(omitted)' \
+ --replace '@CONFIGURE_OPTIONS@' "" \
+ --replace '@PHP_LDFLAGS@' ""
+ done
+
+ iniFile=$out/etc/php-recommended.ini
+ [[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
+ ./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
+ '';
+
+ installPhase = ''
+ unset installPhase; installPhase;
+ cp php.ini-production $iniFile
+ '';
+
+ src = fetchurl {
+ url = "http://www.php.net/distributions/php-${version}.tar.bz2";
+ sha256 = "1zl3valcak5hb4fmivpfa66arwpvi19js1d5cxq5vjn4fncl5sb2";
+ };
+
+ meta = {
+ description = "An HTML-embedded scripting language";
+ homepage = http://www.php.net/;
+ license = stdenv.lib.licenses.php301;
+ };
+
+ patches = [ ./fix-5.4.patch ];
+
+})
diff --git a/pkgs/development/interpreters/php/5.6.nix b/pkgs/development/interpreters/php/5.6.nix
new file mode 100644
index 00000000000..bf0f2076c1c
--- /dev/null
+++ b/pkgs/development/interpreters/php/5.6.nix
@@ -0,0 +1,265 @@
+{ stdenv, fetchurl, composableDerivation, autoconf, automake, flex, bison
+, apacheHttpd, mysql, libxml2, readline, zlib, curl, postgresql, gettext
+, openssl, pkgconfig, sqlite, config, libjpeg, libpng, freetype
+, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds
+, uwimap, pam, gmp }:
+
+let
+ libmcryptOverride = libmcrypt.override { disablePosixThreads = true; };
+in
+
+composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
+
+ version = "5.6.5";
+
+ name = "php-${version}";
+
+ enableParallelBuilding = true;
+
+ buildInputs = ["flex" "bison" "pkgconfig"];
+
+ flags = {
+
+ # much left to do here...
+
+ # SAPI modules:
+
+ apxs2 = {
+ configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
+ buildInputs = [apacheHttpd];
+ };
+
+ # Extensions
+ imap = {
+ configureFlags = [
+ "--with-imap=${uwimap}"
+ "--with-imap-ssl"
+ ];
+ buildInputs = [ uwimap openssl pam ];
+ };
+
+ ldap = {
+ configureFlags = ["--with-ldap=${openldap}"];
+ buildInputs = [openldap cyrus_sasl openssl];
+ };
+
+ mhash = {
+ configureFlags = ["--with-mhash"];
+ buildInputs = [libmhash];
+ };
+
+ curl = {
+ configureFlags = ["--with-curl=${curl}"];
+ buildInputs = [curl openssl];
+ };
+
+ zlib = {
+ configureFlags = ["--with-zlib=${zlib}"];
+ buildInputs = [zlib];
+ };
+
+ libxml2 = {
+ configureFlags = [
+ "--with-libxml-dir=${libxml2}"
+ ];
+ buildInputs = [ libxml2 ];
+ };
+
+ pcntl = {
+ configureFlags = [ "--enable-pcntl" ];
+ };
+
+ readline = {
+ configureFlags = ["--with-readline=${readline}"];
+ buildInputs = [ readline ];
+ };
+
+ sqlite = {
+ configureFlags = ["--with-pdo-sqlite=${sqlite}"];
+ buildInputs = [ sqlite ];
+ };
+
+ postgresql = {
+ configureFlags = ["--with-pgsql=${postgresql}"];
+ buildInputs = [ postgresql ];
+ };
+
+ pdo_pgsql = {
+ configureFlags = ["--with-pdo-pgsql=${postgresql}"];
+ buildInputs = [ postgresql ];
+ };
+
+ mysql = {
+ configureFlags = ["--with-mysql=${mysql}"];
+ buildInputs = [ mysql ];
+ };
+
+ mysqli = {
+ configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
+ buildInputs = [ mysql];
+ };
+
+ mysqli_embedded = {
+ configureFlags = ["--enable-embedded-mysqli"];
+ depends = "mysqli";
+ assertion = fixed.mysqliSupport;
+ };
+
+ pdo_mysql = {
+ configureFlags = ["--with-pdo-mysql=${mysql}"];
+ buildInputs = [ mysql ];
+ };
+
+ bcmath = {
+ configureFlags = ["--enable-bcmath"];
+ };
+
+ gd = {
+ # FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
+ configureFlags = [
+ "--with-gd"
+ "--with-freetype-dir=${freetype}"
+ "--with-png-dir=${libpng}"
+ "--with-jpeg-dir=${libjpeg}"
+ ];
+ buildInputs = [ libpng libjpeg freetype ];
+ };
+
+ gmp = {
+ configureFlags = ["--with-gmp=${gmp}"];
+ buildInputs = [ gmp ];
+ };
+
+ soap = {
+ configureFlags = ["--enable-soap"];
+ };
+
+ sockets = {
+ configureFlags = ["--enable-sockets"];
+ };
+
+ openssl = {
+ configureFlags = ["--with-openssl=${openssl}"];
+ buildInputs = ["openssl"];
+ };
+
+ mbstring = {
+ configureFlags = ["--enable-mbstring"];
+ };
+
+ gettext = {
+ configureFlags = ["--with-gettext=${gettext}"];
+ buildInputs = [gettext];
+ };
+
+ intl = {
+ configureFlags = ["--enable-intl"];
+ buildInputs = [icu];
+ };
+
+ exif = {
+ configureFlags = ["--enable-exif"];
+ };
+
+ xsl = {
+ configureFlags = ["--with-xsl=${libxslt}"];
+ buildInputs = [libxslt];
+ };
+
+ mcrypt = {
+ configureFlags = ["--with-mcrypt=${libmcryptOverride}"];
+ buildInputs = [libmcryptOverride];
+ };
+
+ bz2 = {
+ configureFlags = ["--with-bz2=${bzip2}"];
+ buildInputs = [bzip2];
+ };
+
+ zip = {
+ configureFlags = ["--enable-zip"];
+ };
+
+ ftp = {
+ configureFlags = ["--enable-ftp"];
+ };
+
+ fpm = {
+ configureFlags = ["--enable-fpm"];
+ };
+
+ mssql = stdenv.lib.optionalAttrs (!stdenv.isDarwin) {
+ configureFlags = ["--with-mssql=${freetds}"];
+ buildInputs = [freetds];
+ };
+
+ };
+
+ cfg = {
+ imapSupport = config.php.imap or true;
+ ldapSupport = config.php.ldap or true;
+ mhashSupport = config.php.mhash or true;
+ mysqlSupport = config.php.mysql or true;
+ mysqliSupport = config.php.mysqli or true;
+ pdo_mysqlSupport = config.php.pdo_mysql or true;
+ libxml2Support = config.php.libxml2 or true;
+ apxs2Support = config.php.apxs2 or true;
+ bcmathSupport = config.php.bcmath or true;
+ socketsSupport = config.php.sockets or true;
+ curlSupport = config.php.curl or true;
+ gettextSupport = config.php.gettext or true;
+ pcntlSupport = config.php.pcntl or true;
+ postgresqlSupport = config.php.postgresql or true;
+ readlineSupport = config.php.readline or true;
+ sqliteSupport = config.php.sqlite or true;
+ soapSupport = config.php.soap or true;
+ zlibSupport = config.php.zlib or true;
+ opensslSupport = config.php.openssl or true;
+ mbstringSupport = config.php.mbstring or true;
+ gdSupport = config.php.gd or true;
+ intlSupport = config.php.intl or true;
+ exifSupport = config.php.exif or true;
+ xslSupport = config.php.xsl or false;
+ mcryptSupport = config.php.mcrypt or true;
+ bz2Support = config.php.bz2 or false;
+ zipSupport = config.php.zip or true;
+ ftpSupport = config.php.ftp or true;
+ fpmSupport = config.php.fpm or true;
+ gmpSupport = config.php.gmp or true;
+ mssqlSupport = config.php.mssql or (!stdenv.isDarwin);
+ };
+
+ configurePhase = ''
+ # Don't record the configure flags since this causes unnecessary
+ # runtime dependencies.
+ for i in main/build-defs.h.in scripts/php-config.in; do
+ substituteInPlace $i \
+ --replace '@CONFIGURE_COMMAND@' '(omitted)' \
+ --replace '@CONFIGURE_OPTIONS@' "" \
+ --replace '@PHP_LDFLAGS@' ""
+ done
+
+ iniFile=$out/etc/php-recommended.ini
+ [[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
+ ./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
+ '';
+
+ installPhase = ''
+ unset installPhase; installPhase;
+ cp php.ini-production $iniFile
+ '';
+
+ src = fetchurl {
+ url = "http://www.php.net/distributions/php-${version}.tar.bz2";
+ sha256 = "0vfhvwn84lrz9psf10sjnwljbna1r7yqxq3lmsh5qajifl3lraxd";
+ };
+
+ meta = {
+ description = "An HTML-embedded scripting language";
+ homepage = http://www.php.net/;
+ license = stdenv.lib.licenses.php301;
+ };
+
+ patches = [ ./fix-5.4.patch ];
+
+})
diff --git a/pkgs/development/interpreters/php/fix.patch b/pkgs/development/interpreters/php/fix.patch
deleted file mode 100644
index 02f2c9c6c93..00000000000
--- a/pkgs/development/interpreters/php/fix.patch
+++ /dev/null
@@ -1,78 +0,0 @@
---- php-5.0.4/configure 2005-04-03 11:42:50.000000000 +0200
-+++ php-5.0.4-1/configure 2005-07-10 11:06:22.292271176 +0200
-@@ -3381,7 +3381,7 @@
-
- case $host_alias in
- *aix*)
-- APXS_LIBEXECDIR=`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-brtl -Wl,-bI:$APXS_LIBEXECDIR/httpd.exp"
- PHP_AIX_LDFLAGS="-Wl,-brtl"
- build_type=shared
-@@ -3576,7 +3576,7 @@
- if test "$?" != "0"; then
- APACHE_INSTALL="$APXS -i -a -n php5 $SAPI_SHARED" # Old apxs does not have -S option
- else
-- APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- if test -z `$APXS -q SYSCONFDIR`; then
- APACHE_INSTALL="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
- $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
-@@ -4680,7 +4680,7 @@
- { echo "configure: error: Please note that Apache version >= 2.0.40 is required." 1>&2; exit 1; }
- fi
-
-- APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- if test -z `$APXS -q SYSCONFDIR`; then
- INSTALL_IT="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
- $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
-@@ -5510,7 +5510,7 @@
- { echo "configure: error: Please note that Apache version >= 2.0.44 is required." 1>&2; exit 1; }
- fi
-
-- APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- if test -z `$APXS -q SYSCONFDIR`; then
- INSTALL_IT="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
- $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
-@@ -6327,7 +6327,7 @@
-
- case $host_alias in
- *aix*)
-- APXS_LIBEXECDIR=`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-brtl -Wl,-bI:$APXS_LIBEXECDIR/httpd.exp"
- PHP_AIX_LDFLAGS="-Wl,-brtl"
- build_type=shared
-@@ -6522,7 +6522,7 @@
- if test "$?" != "0"; then
- APACHE_HOOKS_INSTALL="$APXS -i -a -n php5 $SAPI_SHARED" # Old apxs does not have -S option
- else
-- APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
-+ APXS_LIBEXECDIR="$prefix/modules"
- if test -z `$APXS -q SYSCONFDIR`; then
- APACHE_HOOKS_INSTALL="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
- $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
-diff -rc php-5.3.18/configure php-5.3.18-new/configure
-*** php-5.3.18/configure 2012-10-17 18:29:10.000000000 +0200
---- php-5.3.18-new/configure 2012-11-13 05:36:24.730136551 +0100
-***************
-*** 45113,45121 ****
-
-
- if test "$PHP_GETTEXT" != "no"; then
-! for i in $PHP_GETTEXT /usr/local /usr; do
-! test -r $i/include/libintl.h && GETTEXT_DIR=$i && break
-! done
-
- if test -z "$GETTEXT_DIR"; then
- { echo "configure: error: Cannot locate header file libintl.h" 1>&2; exit 1; }
---- 45113,45119 ----
-
-
- if test "$PHP_GETTEXT" != "no"; then
-! GETTEXT_DIR=$PHP_GETTEXT
-
- if test -z "$GETTEXT_DIR"; then
- { echo "configure: error: Cannot locate header file libintl.h" 1>&2; exit 1; }
diff --git a/pkgs/development/interpreters/pypy/default.nix b/pkgs/development/interpreters/pypy/default.nix
index 62a0c0fb5a2..f67c48c62d8 100644
--- a/pkgs/development/interpreters/pypy/default.nix
+++ b/pkgs/development/interpreters/pypy/default.nix
@@ -81,6 +81,7 @@ let
mkdir -p $out/{bin,include,lib,pypy-c}
cp -R {include,lib_pypy,lib-python,pypy-c} $out/pypy-c
+ cp libpypy-c.so $out/lib/
ln -s $out/pypy-c/pypy-c $out/bin/pypy
chmod +x $out/bin/pypy
@@ -88,13 +89,12 @@ let
ln -s $out/pypy-c/include $out/include/${libPrefix}
ln -s $out/pypy-c/lib-python/${pythonVersion} $out/lib/${libPrefix}
+ wrapProgram "$out/bin/pypy" \
+ --set LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:$out/lib" \
+ --set LIBRARY_PATH "${LIBRARY_PATH}:$out/lib"
+
# verify cffi modules
$out/bin/pypy -c "import Tkinter;import sqlite3;import curses"
-
- # make sure pypy finds sqlite3 library
- wrapProgram "$out/bin/pypy" \
- --set LD_LIBRARY_PATH "${LD_LIBRARY_PATH}" \
- --set LIBRARY_PATH "${LIBRARY_PATH}"
'';
passthru = rec {
@@ -105,11 +105,11 @@ let
interpreter = "${self}/bin/${executable}";
};
- enableParallelBuilding = true;
+ enableParallelBuilding = true; # almost no parallelization without STM
meta = with stdenv.lib; {
homepage = http://pypy.org/;
- description = "Fast, compliant alternative implementation of the Python language (2.7.3)";
+ description = "Fast, compliant alternative implementation of the Python language (2.7.8)";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ iElectric ];
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index b122248bb23..68f40cad259 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -7,9 +7,9 @@
# OSS is no longer supported, for it's much crappier than ALSA and
# PulseAudio.
-assert alsaSupport || pulseaudioSupport;
+assert !stdenv.isDarwin -> alsaSupport || pulseaudioSupport;
-assert openglSupport -> (mesa != null && x11Support);
+assert openglSupport -> (stdenv.isDarwin || mesa != null && x11Support);
assert x11Support -> (x11 != null && libXrandr != null);
assert alsaSupport -> alsaLib != null;
assert pulseaudioSupport -> pulseaudio != null;
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
description = "A cross-platform multimedia library";
homepage = http://www.libsdl.org/;
license = stdenv.lib.licenses.zlib;
- platforms = stdenv.lib.platforms.linux;
+ platforms = stdenv.lib.platforms.all;
maintainers = [ stdenv.lib.maintainers.page ];
};
}
diff --git a/pkgs/development/libraries/boost/1.55.nix b/pkgs/development/libraries/boost/1.55.nix
index 808ff912e7d..a10cd8ce220 100644
--- a/pkgs/development/libraries/boost/1.55.nix
+++ b/pkgs/development/libraries/boost/1.55.nix
@@ -3,6 +3,8 @@
callPackage ./generic.nix (args // rec {
version = "1.55.0";
+ patches = [ ./clang-math.patch ./clang-math-2.patch ];
+
src = fetchurl {
url = "mirror://sourceforge/boost/boost_1_55_0.tar.bz2";
sha256 = "0lkv5dzssbl5fmh2nkaszi8x9qbj80pr4acf9i26sj3rvlih1w7z";
diff --git a/pkgs/development/libraries/boost/clang-math-2.patch b/pkgs/development/libraries/boost/clang-math-2.patch
new file mode 100644
index 00000000000..f819e9bec62
--- /dev/null
+++ b/pkgs/development/libraries/boost/clang-math-2.patch
@@ -0,0 +1,45 @@
+From 6bb71fdd8f7cc346d90fb14beb38b7297fc1ffd9 Mon Sep 17 00:00:00 2001
+From: Andrey Semashev
+Date: Sun, 26 Jan 2014 13:58:48 +0400
+Subject: [PATCH] Fixed incorrect initialization of 128-bit values, when no
+ native support for 128-bit integers is available.
+
+---
+ boost/atomic/detail/cas128strong.hpp | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/boost/atomic/detail/cas128strong.hpp b/boost/atomic/detail/cas128strong.hpp
+index 906c13e..dcb4d7d 100644
+--- a/boost/atomic/detail/cas128strong.hpp
++++ b/boost/atomic/detail/cas128strong.hpp
+@@ -196,15 +196,17 @@ class base_atomic
+
+ public:
+ BOOST_DEFAULTED_FUNCTION(base_atomic(void), {})
+- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
++ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
+ {
++ memset(&v_, 0, sizeof(v_));
+ memcpy(&v_, &v, sizeof(value_type));
+ }
+
+ void
+ store(value_type const& value, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type value_s = 0;
++ storage_type value_s;
++ memset(&value_s, 0, sizeof(value_s));
+ memcpy(&value_s, &value, sizeof(value_type));
+ platform_fence_before_store(order);
+ platform_store128(value_s, &v_);
+@@ -247,7 +249,9 @@ class base_atomic
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+
diff --git a/pkgs/development/libraries/boost/clang-math.patch b/pkgs/development/libraries/boost/clang-math.patch
new file mode 100644
index 00000000000..aa3d76af28b
--- /dev/null
+++ b/pkgs/development/libraries/boost/clang-math.patch
@@ -0,0 +1,65 @@
+From e4bde20f2eec0a51be14533871d2123bd2ab9cf3 Mon Sep 17 00:00:00 2001
+From: Andrey Semashev
+Date: Fri, 28 Feb 2014 12:43:11 +0400
+Subject: [PATCH] More compilation fixes for the case when 128-bit integers are
+ not supported.
+
+---
+ boost/atomic/detail/gcc-atomic.hpp | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/boost/atomic/detail/gcc-atomic.hpp b/boost/atomic/detail/gcc-atomic.hpp
+index a130590..4af99a1 100644
+--- a/boost/atomic/detail/gcc-atomic.hpp
++++ b/boost/atomic/detail/gcc-atomic.hpp
+@@ -958,14 +958,16 @@ class base_atomic
+
+ public:
+ BOOST_DEFAULTED_FUNCTION(base_atomic(void), {})
+- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
++ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
+ {
++ memset(&v_, 0, sizeof(v_));
+ memcpy(&v_, &v, sizeof(value_type));
+ }
+
+ void store(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type tmp = 0;
++ storage_type tmp;
++ memset(&tmp, 0, sizeof(tmp));
+ memcpy(&tmp, &v, sizeof(value_type));
+ __atomic_store_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order));
+ }
+@@ -980,7 +982,8 @@ class base_atomic
+
+ value_type exchange(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type tmp = 0;
++ storage_type tmp;
++ memset(&tmp, 0, sizeof(tmp));
+ memcpy(&tmp, &v, sizeof(value_type));
+ tmp = __atomic_exchange_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order));
+ value_type res;
+@@ -994,7 +997,9 @@ class base_atomic
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+ const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, false,
+@@ -1010,7 +1015,9 @@ class base_atomic
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+ const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, true,
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index 6e1a2cfc413..464f244dda3 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -9,6 +9,7 @@
, enablePIC ? false
, enableExceptions ? false
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
+, patches ? null
, mpi ? null
# Attributes inherit from specific versions
@@ -114,7 +115,7 @@ in
stdenv.mkDerivation {
name = "boost-${version}";
- inherit src;
+ inherit src patches;
meta = {
homepage = "http://boost.org/";
diff --git a/pkgs/development/libraries/celt/0.5.1.nix b/pkgs/development/libraries/celt/0.5.1.nix
index a520ffd9c0f..561be1ba281 100644
--- a/pkgs/development/libraries/celt/0.5.1.nix
+++ b/pkgs/development/libraries/celt/0.5.1.nix
@@ -1,47 +1,10 @@
-x@{builderDefsPackage
- , ...}:
-builderDefsPackage
-(a :
-let
- helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
- [];
+{ callPackage, fetchurl, ... } @ args:
- buildInputs = map (n: builtins.getAttr n x)
- (builtins.attrNames (builtins.removeAttrs x helperArgNames));
- sourceInfo = rec {
- baseName="celt";
- version="0.5.1.3";
- name="${baseName}-${version}";
- url="http://downloads.xiph.org/releases/${baseName}/${name}.tar.gz";
- hash="0bkam9z5vnrxpbxkkh9kw6yzjka9di56h11iijikdd1f71l5nbpw";
- };
-in
-rec {
- src = a.fetchurl {
- url = sourceInfo.url;
- sha256 = sourceInfo.hash;
- };
+callPackage ./generic.nix (args // rec{
+ version = "0.5.1.3";
- inherit (sourceInfo) name version;
- inherit buildInputs;
-
- /* doConfigure should be removed if not needed */
- phaseNames = ["doConfigure" "doMakeInstall"];
-
- meta = {
- description = "CELT - low-delay audio codec";
- maintainers = with a.lib.maintainers;
- [
- raskin
- ];
- platforms = with a.lib.platforms;
- linux;
- license = a.lib.licenses.free;
- branch = "0.5.1";
+ src = fetchurl {
+ url = "http://downloads.xiph.org/releases/celt/celt-${version}.tar.gz";
+ sha256 = "0bkam9z5vnrxpbxkkh9kw6yzjka9di56h11iijikdd1f71l5nbpw";
};
- passthru = {
- updateInfo = {
- downloadPage = "http://www.celt-codec.org/downloads/";
- };
- };
-}) x
+})
diff --git a/pkgs/development/libraries/celt/0.7.nix b/pkgs/development/libraries/celt/0.7.nix
index db4c0821336..a5dd401ec49 100644
--- a/pkgs/development/libraries/celt/0.7.nix
+++ b/pkgs/development/libraries/celt/0.7.nix
@@ -1,47 +1,10 @@
-x@{builderDefsPackage
- , ...}:
-builderDefsPackage
-(a :
-let
- helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
- [];
+{ callPackage, fetchurl, ... } @ args:
- buildInputs = map (n: builtins.getAttr n x)
- (builtins.attrNames (builtins.removeAttrs x helperArgNames));
- sourceInfo = rec {
- baseName="celt";
- version="0.7.1";
- name="${baseName}-${version}";
- url="http://downloads.xiph.org/releases/${baseName}/${name}.tar.gz";
- hash="93f0e2dfb59021b19e69dc0dee855eb89f19397db1dea0d0d6f9329cff933066";
- };
-in
-rec {
- src = a.fetchurl {
- url = sourceInfo.url;
- sha256 = sourceInfo.hash;
- };
+callPackage ./generic.nix (args // rec{
+ version = "0.7.1";
- inherit (sourceInfo) name version;
- inherit buildInputs;
-
- /* doConfigure should be removed if not needed */
- phaseNames = ["doConfigure" "doMakeInstall"];
-
- meta = {
- description = "CELT - low-delay audio codec";
- maintainers = with a.lib.maintainers;
- [
- raskin
- ];
- platforms = with a.lib.platforms;
- linux;
- license = a.lib.licenses.free;
- branch = "0.7";
+ src = fetchurl {
+ url = "http://downloads.xiph.org/releases/celt/celt-${version}.tar.gz";
+ sha256 = "0rihjgzrqcprsv8a1pmiglwik7xqbs2yw3fwd6gb28chnpgy5w4k";
};
- passthru = {
- updateInfo = {
- downloadPage = "http://www.celt-codec.org/downloads/";
- };
- };
-}) x
+})
diff --git a/pkgs/development/libraries/celt/default.nix b/pkgs/development/libraries/celt/default.nix
index 03eba5a8d25..61352d5caf9 100644
--- a/pkgs/development/libraries/celt/default.nix
+++ b/pkgs/development/libraries/celt/default.nix
@@ -1,46 +1,10 @@
-x@{builderDefsPackage
- , ...}:
-builderDefsPackage
-(a :
-let
- helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
- [];
+{ callPackage, fetchurl, ... } @ args:
- buildInputs = map (n: builtins.getAttr n x)
- (builtins.attrNames (builtins.removeAttrs x helperArgNames));
- sourceInfo = rec {
- baseName="celt";
- version="0.11.3";
- name="${baseName}-${version}";
- url="http://downloads.xiph.org/releases/${baseName}/${name}.tar.gz";
- hash="0dh893wqbh0q4a0x1xyqryykmnhpv7mkblpch019s04a99fq2r3y";
- };
-in
-rec {
- src = a.fetchurl {
- url = sourceInfo.url;
- sha256 = sourceInfo.hash;
- };
+callPackage ./generic.nix (args // rec{
+ version = "0.11.3";
- inherit (sourceInfo) name version;
- inherit buildInputs;
-
- /* doConfigure should be removed if not needed */
- phaseNames = ["doConfigure" "doMakeInstall"];
-
- meta = {
- description = "Low-delay audio codec";
- maintainers = with a.lib.maintainers;
- [
- raskin
- ];
- platforms = with a.lib.platforms;
- linux;
- license = a.lib.licenses.free;
+ src = fetchurl {
+ url = "http://downloads.xiph.org/releases/celt/celt-${version}.tar.gz";
+ sha256 = "0dh893wqbh0q4a0x1xyqryykmnhpv7mkblpch019s04a99fq2r3y";
};
- passthru = {
- updateInfo = {
- downloadPage = "http://www.celt-codec.org/downloads/";
- };
- };
-}) x
+})
diff --git a/pkgs/development/libraries/celt/generic.nix b/pkgs/development/libraries/celt/generic.nix
new file mode 100644
index 00000000000..59778d36f85
--- /dev/null
+++ b/pkgs/development/libraries/celt/generic.nix
@@ -0,0 +1,23 @@
+{ stdenv, version, src
+, liboggSupport ? true, libogg ? null # if disabled only the library will be built
+, ...
+}:
+
+# The celt codec has been deprecated and is now a part of the opus codec
+
+stdenv.mkDerivation rec {
+ name = "celt-${version}";
+
+ inherit src;
+
+ buildInputs = []
+ ++ stdenv.lib.optional liboggSupport libogg;
+
+ meta = with stdenv.lib; {
+ description = "Ultra-low delay audio codec";
+ homepage = http://www.celt-codec.org/;
+ license = licenses.bsd2;
+ maintainers = with maintainers; [ codyopel raskin ];
+ platform = platforms.unix;
+ };
+}
diff --git a/pkgs/development/libraries/ctdb/default.nix b/pkgs/development/libraries/ctdb/default.nix
index c3321108d86..3176352a72e 100644
--- a/pkgs/development/libraries/ctdb/default.nix
+++ b/pkgs/development/libraries/ctdb/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "ctdb-2.5.4";
src = fetchurl {
- url = "http://samba.org/ftp/ctdb/${name}.tar.gz";
+ url = "mirror://samba/ctdb/${name}.tar.gz";
sha256 = "09fb29ngxnh1crsqchykg23bl6s4fifvxwq4gwg1y742mmnjp9fy";
};
diff --git a/pkgs/development/libraries/faac/default.nix b/pkgs/development/libraries/faac/default.nix
index a058fb9cfa2..802aafc444c 100644
--- a/pkgs/development/libraries/faac/default.nix
+++ b/pkgs/development/libraries/faac/default.nix
@@ -1,20 +1,32 @@
-{ stdenv, fetchurl, mp4v2 }:
+{ stdenv, fetchurl
+, mp4v2Support ? true, mp4v2 ? null
+, drmSupport ? false # Digital Radio Mondiale
+}:
+assert mp4v2Support -> (mp4v2 != null);
+
+with stdenv.lib;
stdenv.mkDerivation rec {
- name = "faac-1.28";
+ name = "faac-${version}";
+ version = "1.28";
src = fetchurl {
url = "mirror://sourceforge/faac/${name}.tar.gz";
sha256 = "1pqr7nf6p2r283n0yby2czd3iy159gz8rfinkis7vcfgyjci2565";
};
- buildInputs = [ mp4v2 ];
+ configureFlags = [ ]
+ ++ optional mp4v2Support "--with-mp4v2"
+ ++ optional drmSupport "--enable-drm";
+
+ buildInputs = [ ]
+ ++ optional mp4v2Support mp4v2;
meta = {
description = "Open source MPEG-4 and MPEG-2 AAC encoder";
- homepage = http://www.audiocoding.com/faac.html;
- # Incompatible with GPL. Some changes to the base code, included in faac,
- # are under LGPL though.
- license = stdenv.lib.licenses.unfreeRedistributable;
+ homepage = http://www.audiocoding.com/faac.html;
+ license = licenses.unfreeRedistributable;
+ maintainers = with maintainers; [ codyopel ];
+ platforms = platforms.all;
};
}
diff --git a/pkgs/development/libraries/faad2/default.nix b/pkgs/development/libraries/faad2/default.nix
index 99177578c77..865bedf09ba 100644
--- a/pkgs/development/libraries/faad2/default.nix
+++ b/pkgs/development/libraries/faad2/default.nix
@@ -1,16 +1,25 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl
+, drmSupport ? false # Digital Radio Mondiale
+}:
-stdenv.mkDerivation {
- name = "faad2-2.7";
+with stdenv.lib;
+stdenv.mkDerivation rec {
+ name = "faad2-${version}";
+ version = "2.7";
src = fetchurl {
- url = mirror://sourceforge/faac/faad2-2.7.tar.bz2;
+ url = "mirror://sourceforge/faac/${name}.tar.bz2";
sha256 = "1db37ydb6mxhshbayvirm5vz6j361bjim4nkpwjyhmy4ddfinmhl";
};
+ configureFlags = []
+ ++ optional drmSupport "--with-drm";
+
meta = {
description = "An open source MPEG-4 and MPEG-2 AAC decoder";
- homepage = http://www.audiocoding.com/faad2.html;
- license = stdenv.lib.licenses.gpl2;
+ homepage = http://www.audiocoding.com/faad2.html;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ codyopel ];
+ platforms = platforms.all;
};
}
diff --git a/pkgs/development/libraries/fdk-aac/default.nix b/pkgs/development/libraries/fdk-aac/default.nix
index a9c8b19dc50..2b0b027bda5 100644
--- a/pkgs/development/libraries/fdk-aac/default.nix
+++ b/pkgs/development/libraries/fdk-aac/default.nix
@@ -1,19 +1,25 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl
+, exampleSupport ? false # Example encoding program
+}:
-let version = "0.1.3";
-in
-stdenv.mkDerivation {
+with stdenv.lib;
+stdenv.mkDerivation rec {
name = "fdk-aac-${version}";
+ version = "0.1.3";
src = fetchurl {
- url = "mirror://sourceforge/opencore-amr/fdk-aac/fdk-aac-${version}.tar.gz";
+ url = "mirror://sourceforge/opencore-amr/fdk-aac/${name}.tar.gz";
sha256 = "138c1l6c571289czihk0vlcfbla7qlac2jd5yyps5dyg08l8gjx9";
};
- meta = with stdenv.lib; {
+ configureFlags = [ ]
+ ++ optional exampleSupport "--enable-example";
+
+ meta = {
description = "A high-quality implementation of the AAC codec from Android";
- homepage = "http://sourceforge.net/projects/opencore-amr/";
- license = licenses.asl20;
- platforms = platforms.linux;
+ homepage = http://sourceforge.net/projects/opencore-amr/;
+ license = licenses.asl20;
+ maintainers = with maintainers; [ codyopel ];
+ platforms = platforms.all;
};
}
diff --git a/pkgs/development/libraries/frame/default.nix b/pkgs/development/libraries/frame/default.nix
new file mode 100644
index 00000000000..86ebaa0d8d9
--- /dev/null
+++ b/pkgs/development/libraries/frame/default.nix
@@ -0,0 +1,24 @@
+{ enableX11 ? true
+, stdenv, fetchurl, pkgconfig, xlibs, xorgserver, xinput }:
+
+stdenv.mkDerivation rec {
+ name = "frame-${version}";
+ version = "2.5.0";
+ src = fetchurl {
+ url = "https://launchpad.net/frame/trunk/v${version}/+download/${name}.tar.xz";
+ sha256 = "bc2a20cd3ac1e61fe0461bd3ee8cb250dbcc1fa511fad0686d267744e9c78f3a";
+ };
+
+ buildInputs = [
+ stdenv pkgconfig
+ ] ++ stdenv.lib.optional enableX11 [xlibs.xorgserver xlibs.libX11 xlibs.libXext xlibs.libXi];
+
+ configureFlags = stdenv.lib.optional enableX11 "--with-x11";
+
+ meta = {
+ homepage = "https://launchpad.net/frame";
+ description = "handles the buildup and synchronization of a set of simultaneous touches";
+ license = stdenv.lib.licenses.gpl3;
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/geis/default.nix b/pkgs/development/libraries/geis/default.nix
new file mode 100644
index 00000000000..15f42afd9a8
--- /dev/null
+++ b/pkgs/development/libraries/geis/default.nix
@@ -0,0 +1,23 @@
+{ enableX11 ? true
+, stdenv, fetchurl, pkgconfig, xlibs, xorgserver, python3, dbus_libs, frame, grail }:
+
+stdenv.mkDerivation rec {
+ name = "geis-${version}";
+ version = "2.2.16";
+ src = fetchurl {
+ url = "https://launchpad.net/geis/trunk/${version}/+download/${name}.tar.xz";
+ sha256 = "40a694092c79f325a2fbf8a9f301177bc91c364f4e637c2aa8963ad2a5aabbcf";
+ };
+
+ buildInputs = [ pkgconfig python3 dbus_libs frame grail ]
+ ++ stdenv.lib.optional enableX11 [xlibs.libX11 xlibs.libXtst xlibs.libXext xlibs.libXi xlibs.xorgserver];
+
+ configureFlags = stdenv.lib.optional enableX11"--enable-x11";
+
+ meta = {
+ homepage = "https://launchpad.net/geis";
+ description = "GEIS is a library for applications and toolkit programmers which provides a consistent platform independent interface for any system-wide input gesture recognition mechanism.";
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/grail/default.nix b/pkgs/development/libraries/grail/default.nix
new file mode 100644
index 00000000000..3cf946bb4ba
--- /dev/null
+++ b/pkgs/development/libraries/grail/default.nix
@@ -0,0 +1,23 @@
+{ enableX11 ? true,
+ stdenv, fetchurl, pkgconfig, xlibs, python3, frame }:
+
+stdenv.mkDerivation rec {
+ name = "grail-${version}";
+ version = "3.1.0";
+ src = fetchurl {
+ url = "https://launchpad.net/grail/trunk/${version}/+download/${name}.tar.bz2";
+ sha256 = "c26dced1b3f4317ecf6af36db0e90294d87e43966d56aecc4e97b65368ab78b9";
+ };
+
+ buildInputs = [ pkgconfig python3 frame ]
+ ++ stdenv.lib.optional enableX11 [xlibs.libX11 xlibs.libXtst xlibs.libXext xlibs.libXi xlibs.libXfixes];
+
+ configureFlags = stdenv.lib.optional enableX11 "--with-x11";
+
+ meta = {
+ homepage = "https://launchpad.net/canonical-multitouch/grail";
+ description = "Gesture Recognition And Instantiation Library";
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/gsm/default.nix b/pkgs/development/libraries/gsm/default.nix
index 31be86ee13e..f13d055520b 100644
--- a/pkgs/development/libraries/gsm/default.nix
+++ b/pkgs/development/libraries/gsm/default.nix
@@ -1,59 +1,28 @@
-x@{builderDefsPackage
- , ...}:
-builderDefsPackage
-(a :
-let
- helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
- [];
+{ stdenv, fetchurl }:
- buildInputs = map (n: builtins.getAttr n x)
- (builtins.attrNames (builtins.removeAttrs x helperArgNames));
- sourceInfo = rec {
- baseName="gsm";
- version="1.0.13";
- name="${baseName}-${version}";
- url="http://www.quut.com/gsm/${name}.tar.gz";
- hash="1bcjl2h60gvr1dc5a963h3vnz9zl6n8qrfa3qmb2x3229lj1iiaj";
- };
-in
-rec {
- src = a.fetchurl {
- url = sourceInfo.url;
- sha256 = sourceInfo.hash;
+with stdenv.lib;
+stdenv.mkDerivation rec {
+ name = "gsm-${version}";
+ version = "1.0.13";
+
+ src = fetchurl {
+ url = "http://www.quut.com/gsm/${name}.tar.gz";
+ sha256 = "1bcjl2h60gvr1dc5a963h3vnz9zl6n8qrfa3qmb2x3229lj1iiaj";
};
- inherit (sourceInfo) name version;
- inherit buildInputs;
-
- /* doConfigure should be removed if not needed */
- phaseNames = ["createDirs" "setVars" "doMakeInstall"];
-
- createDirs = a.fullDepEntry ''
- mkdir -p "$out/"{bin,lib,share/man,share/info,include/gsm}
- '' ["minInit" "defEnsureDir"];
-
- setVars = a.noDepEntry ''
- export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fPIC"
+ preConfigure = ''
+ sed -e 's,$(GSM_INSTALL_ROOT)/inc,$(GSM_INSTALL_ROOT)/include/gsm,' -i Makefile
+ mkdir -p "$out/"{bin,lib,man/man1,man/man3,include/gsm}
+ makeFlags="$makeFlags INSTALL_ROOT=$out"
'';
- makeFlags = [
- ''INSTALL_ROOT="$out"''
- ''GSM_INSTALL_INC="$out/include/gsm"''
- ];
+ parallelBuild = false;
meta = {
- description = "A GSM codec library";
- maintainers = with a.lib.maintainers;
- [
- raskin
- ];
- platforms = with a.lib.platforms;
- linux;
- license = a.lib.licenses.free;
+ description = "Lossy speech compression codec";
+ homepage = http://www.quut.com/gsm/;
+ license = licenses.bsd2;
+ maintainers = with maintainers; [ codyopel raskin ];
+ platforms = platforms.all;
};
- passthru = {
- updateInfo = {
- downloadPage = "http://www.quut.com/gsm/";
- };
- };
-}) x
+}
diff --git a/pkgs/development/libraries/gtest/default.nix b/pkgs/development/libraries/gtest/default.nix
index d71c29cbca5..e516e4a475a 100644
--- a/pkgs/development/libraries/gtest/default.nix
+++ b/pkgs/development/libraries/gtest/default.nix
@@ -1,15 +1,13 @@
-{ stdenv, fetchurl, unzip, cmake}:
-
+{ stdenv, cmake, callPackage }:
+let
+ source = callPackage ./source.nix { };
+in
stdenv.mkDerivation rec {
- version = "1.7.0";
- name = "gtest-${version}";
+ name = "gtest-${source.version}";
- src = fetchurl {
- url = "https://googletest.googlecode.com/files/${name}.zip";
- sha256="03fnw3bizw9bcx7l5qy1vz7185g33d5pxqcb6aqxwlrzv26s2z14";
- };
+ src = source;
- buildInputs = [ unzip cmake ];
+ buildInputs = [ cmake ];
configurePhase = ''
mkdir build
@@ -31,5 +29,6 @@ stdenv.mkDerivation rec {
platforms = platforms.all;
maintainers = with maintainers; [ zoomulator ];
};
-}
+ passthru = { inherit source; };
+}
diff --git a/pkgs/development/libraries/gtest/source.nix b/pkgs/development/libraries/gtest/source.nix
new file mode 100644
index 00000000000..d8787efdcf2
--- /dev/null
+++ b/pkgs/development/libraries/gtest/source.nix
@@ -0,0 +1,22 @@
+{ fetchurl, stdenv, unzip, ... }:
+
+stdenv.mkDerivation rec {
+ name = "gtest-src-${version}";
+ version = "1.7.0";
+
+ src = fetchurl {
+ url = "https://googletest.googlecode.com/files/gtest-${version}.zip";
+ sha256 = "03fnw3bizw9bcx7l5qy1vz7185g33d5pxqcb6aqxwlrzv26s2z14";
+ };
+
+ buildInputs = [ unzip ];
+
+ buildCommand = ''
+ unpackPhase
+ cd gtest-${version}
+ mkdir $out
+ cp -r * $out
+ '';
+
+ passthru = { inherit version; };
+}
diff --git a/pkgs/development/libraries/haskell/EitherT/default.nix b/pkgs/development/libraries/haskell/EitherT/default.nix
index 66ccb6a8d4e..23467560530 100644
--- a/pkgs/development/libraries/haskell/EitherT/default.nix
+++ b/pkgs/development/libraries/haskell/EitherT/default.nix
@@ -12,5 +12,7 @@ cabal.mkDerivation (self: {
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
maintainers = with self.stdenv.lib.maintainers; [ ocharles ];
+ hydraPlatforms = self.stdenv.lib.platforms.none;
+ broken = true;
};
})
diff --git a/pkgs/development/libraries/haskell/distributed-process-monad-control/default.nix b/pkgs/development/libraries/haskell/distributed-process-monad-control/default.nix
index 14adad13844..d8de329a7de 100644
--- a/pkgs/development/libraries/haskell/distributed-process-monad-control/default.nix
+++ b/pkgs/development/libraries/haskell/distributed-process-monad-control/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "distributed-process-monad-control";
- version = "0.5.0";
- sha256 = "1ja6xwdpssm7wafv2id6c3f49iw7pkks2smk6l1n1dxkh029z8nk";
+ version = "0.5.1";
+ sha256 = "01sdzmb8izsycxshhsg0pbx0mgn10y41df1dj1s66ish0qszw07m";
buildDepends = [
distributedProcess monadControl transformers transformersBase
];
diff --git a/pkgs/development/libraries/haskell/fb/default.nix b/pkgs/development/libraries/haskell/fb/default.nix
index f257d26c7d3..b325af923d7 100644
--- a/pkgs/development/libraries/haskell/fb/default.nix
+++ b/pkgs/development/libraries/haskell/fb/default.nix
@@ -10,8 +10,8 @@
cabal.mkDerivation (self: {
pname = "fb";
- version = "1.0.7";
- sha256 = "0ghyddxf4aqidqvbm93pjgaban0whfj4y1w11b7nxy89srhyjhh8";
+ version = "1.0.8";
+ sha256 = "1cv722kkp6lbxajv3ka4088x2491yy41cfypqqkq753mm59x6s9m";
buildDepends = [
aeson attoparsec base16Bytestring base64Bytestring cereal conduit
conduitExtra cryptoApi cryptohash cryptohashCryptoapi dataDefault
@@ -22,7 +22,6 @@ cabal.mkDerivation (self: {
aeson conduit dataDefault hspec httpConduit HUnit liftedBase
monadControl QuickCheck resourcet text time transformers
];
- jailbreak = true;
doCheck = false;
meta = {
homepage = "https://github.com/prowdsponsor/fb";
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-server.nix b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
index 24b740736bf..15a1e90414e 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-server.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
@@ -9,8 +9,8 @@
cabal.mkDerivation (self: {
pname = "happstack-server";
- version = "7.3.9";
- sha256 = "10js2kmxw5lyy1h5xyz7qx852d29cl48qxyvadc4bdad6w06gdlz";
+ version = "7.4.0";
+ sha256 = "009y87g4wika9g0p58v8sdayh41rixkivhvi7j1dnxbm4qy89qpk";
buildDepends = [
base64Bytestring blazeHtml extensibleExceptions filepath hslogger
html monadControl mtl network networkUri parsec sendfile syb
@@ -18,8 +18,6 @@ cabal.mkDerivation (self: {
transformersBase utf8String xhtml zlib
];
testDepends = [ HUnit parsec zlib ];
- jailbreak = true;
- doCheck = false;
meta = {
homepage = "http://happstack.com";
description = "Web related tools and services";
diff --git a/pkgs/development/libraries/haskell/hcltest/default.nix b/pkgs/development/libraries/haskell/hcltest/default.nix
index 579312982ab..c08f9e79bf0 100644
--- a/pkgs/development/libraries/haskell/hcltest/default.nix
+++ b/pkgs/development/libraries/haskell/hcltest/default.nix
@@ -21,5 +21,7 @@ cabal.mkDerivation (self: {
description = "A testing library for command line applications";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
+ hydraPlatforms = self.stdenv.lib.platforms.none;
+ broken = true;
};
})
diff --git a/pkgs/development/libraries/haskell/higher-leveldb/default.nix b/pkgs/development/libraries/haskell/higher-leveldb/default.nix
index 07afeea6a92..a25a37741d3 100644
--- a/pkgs/development/libraries/haskell/higher-leveldb/default.nix
+++ b/pkgs/development/libraries/haskell/higher-leveldb/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "higher-leveldb";
- version = "0.2.0.0";
- sha256 = "1al8l96ysmcjx3g93ryfr939jqhjqk8g5bvww5gj9mx6pdkqrcm3";
+ version = "0.2.1.0";
+ sha256 = "13bwh9jg7smh8vwgrih79ivi073690l9nn478r5m0w64gbkvdm5p";
buildDepends = [
cereal dataDefault leveldbHaskell liftedBase monadControl mtl
resourcet transformers transformersBase
diff --git a/pkgs/development/libraries/haskell/hsc3-server/default.nix b/pkgs/development/libraries/haskell/hsc3-server/default.nix
index 31f59ed8741..c8e78e4e7ea 100644
--- a/pkgs/development/libraries/haskell/hsc3-server/default.nix
+++ b/pkgs/development/libraries/haskell/hsc3-server/default.nix
@@ -26,5 +26,7 @@ cabal.mkDerivation (self: {
description = "SuperCollider server resource management and synchronization";
license = "GPL";
platforms = self.ghc.meta.platforms;
+ hydraPlatforms = self.stdenv.lib.platforms.none;
+ broken = true;
};
})
diff --git a/pkgs/development/libraries/haskell/iteratee/default.nix b/pkgs/development/libraries/haskell/iteratee/default.nix
index e0130f8ae26..b0dd47468d9 100644
--- a/pkgs/development/libraries/haskell/iteratee/default.nix
+++ b/pkgs/development/libraries/haskell/iteratee/default.nix
@@ -23,5 +23,7 @@ cabal.mkDerivation (self: {
description = "Iteratee-based I/O";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
+ hydraPlatforms = self.stdenv.lib.platforms.none;
+ broken = true;
};
})
diff --git a/pkgs/development/libraries/haskell/jwt/default.nix b/pkgs/development/libraries/haskell/jwt/default.nix
index 90125ff7a00..dfab13e9132 100644
--- a/pkgs/development/libraries/haskell/jwt/default.nix
+++ b/pkgs/development/libraries/haskell/jwt/default.nix
@@ -1,9 +1,9 @@
# This file was auto-generated by cabal2nix. Please do NOT edit manually!
{ cabal, aeson, base64Bytestring, cryptohash, dataDefault
-, httpTypes, HUnit, network, networkUri, QuickCheck, scientific
-, semigroups, tasty, tastyHunit, tastyQuickcheck, tastyTh, text
-, time, unorderedContainers, vector
+, httpTypes, HUnit, lens, lensAeson, network, networkUri
+, QuickCheck, scientific, semigroups, tasty, tastyHunit
+, tastyQuickcheck, tastyTh, text, time, unorderedContainers, vector
}:
cabal.mkDerivation (self: {
@@ -16,8 +16,8 @@ cabal.mkDerivation (self: {
vector
];
testDepends = [
- aeson base64Bytestring cryptohash dataDefault httpTypes HUnit
- network networkUri QuickCheck scientific semigroups tasty
+ aeson base64Bytestring cryptohash dataDefault httpTypes HUnit lens
+ lensAeson network networkUri QuickCheck scientific semigroups tasty
tastyHunit tastyQuickcheck tastyTh text time unorderedContainers
vector
];
diff --git a/pkgs/development/libraries/haskell/list-t/default.nix b/pkgs/development/libraries/haskell/list-t/default.nix
index 9df455650f5..442ffc2028a 100644
--- a/pkgs/development/libraries/haskell/list-t/default.nix
+++ b/pkgs/development/libraries/haskell/list-t/default.nix
@@ -6,12 +6,12 @@
cabal.mkDerivation (self: {
pname = "list-t";
- version = "0.3.0";
- sha256 = "091gz47gisajd2p0iwx0mw99bivfl7wpyddg1ypsvjv2qax94cm9";
+ version = "0.4.2";
+ sha256 = "0n6zc7n5znjas9mgh3a9bn44xv55910i6c3b2l83n4pl9fnad03v";
buildDepends = [
basePrelude mmorph monadControl transformers transformersBase
];
- testDepends = [ basePrelude HTF mtlPrelude ];
+ testDepends = [ basePrelude HTF mmorph mtlPrelude ];
meta = {
homepage = "https://github.com/nikita-volkov/list-t";
description = "ListT done right";
diff --git a/pkgs/development/libraries/haskell/persistent/default.nix b/pkgs/development/libraries/haskell/persistent/default.nix
index 21c49c457f9..9775f510d42 100644
--- a/pkgs/development/libraries/haskell/persistent/default.nix
+++ b/pkgs/development/libraries/haskell/persistent/default.nix
@@ -9,8 +9,8 @@
cabal.mkDerivation (self: {
pname = "persistent";
- version = "2.1.1";
- sha256 = "0wmvjizz0zx5i9q5sh8hvsks14q6if4s0dnk63f9mw03jb8jpdd1";
+ version = "2.1.1.4";
+ sha256 = "0nknyrxh28i4cf50fj6mclgd4qnrqsby1w1bzj8jmg8snbyp69d2";
buildDepends = [
aeson attoparsec base64Bytestring blazeHtml blazeMarkup conduit
exceptions fastLogger liftedBase monadControl monadLogger mtl
diff --git a/pkgs/development/libraries/haskell/resource-pool/default.nix b/pkgs/development/libraries/haskell/resource-pool/default.nix
index cb43b927c2e..76492381c7a 100644
--- a/pkgs/development/libraries/haskell/resource-pool/default.nix
+++ b/pkgs/development/libraries/haskell/resource-pool/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "resource-pool";
- version = "0.2.3.1";
- sha256 = "02fpw5jfzcdhijx8mfpb6j4c8sxl36f04i2nx3cbivh9yhbgqr92";
+ version = "0.2.3.2";
+ sha256 = "04mw8b9djb14zp4rdi6h7mc3zizh597ffiinfbr4m0m8psifw9w6";
buildDepends = [
hashable monadControl stm time transformers transformersBase vector
];
diff --git a/pkgs/development/libraries/haskell/rest-client/default.nix b/pkgs/development/libraries/haskell/rest-client/default.nix
index 248acc36226..a1a1ce6287b 100644
--- a/pkgs/development/libraries/haskell/rest-client/default.nix
+++ b/pkgs/development/libraries/haskell/rest-client/default.nix
@@ -8,8 +8,8 @@
cabal.mkDerivation (self: {
pname = "rest-client";
- version = "0.4.0.1";
- sha256 = "1bn2kgyr6q0wxlp3kman20wn7jgz5dc6m8rq5xf0mknpbh8rrnpc";
+ version = "0.4.0.5";
+ sha256 = "11rsy9an7ck94ijafqd2ddichz0xgb01w2ybyg3iiwy5ckiy384s";
buildDepends = [
aesonUtils caseInsensitive dataDefault exceptionTransformers
httpConduit httpTypes hxt hxtPickleUtils monadControl mtl primitive
diff --git a/pkgs/development/libraries/haskell/shell-conduit/default.nix b/pkgs/development/libraries/haskell/shell-conduit/default.nix
index ce5507832e1..a93e38b1b82 100644
--- a/pkgs/development/libraries/haskell/shell-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/shell-conduit/default.nix
@@ -19,5 +19,7 @@ cabal.mkDerivation (self: {
description = "Write shell scripts with Conduit";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
+ hydraPlatforms = self.stdenv.lib.platforms.none;
+ broken = true;
};
})
diff --git a/pkgs/development/libraries/haskell/simple-conduit/default.nix b/pkgs/development/libraries/haskell/simple-conduit/default.nix
index f1ad007c8f9..49e574772f1 100644
--- a/pkgs/development/libraries/haskell/simple-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/simple-conduit/default.nix
@@ -16,6 +16,7 @@ cabal.mkDerivation (self: {
primitive semigroups stm streamingCommons text transformers
transformersBase vector
];
+ jailbreak = true;
meta = {
homepage = "http://github.com/jwiegley/simple-conduit";
description = "A simple streaming I/O library based on monadic folds";
diff --git a/pkgs/development/libraries/haskell/stm-conduit/default.nix b/pkgs/development/libraries/haskell/stm-conduit/default.nix
index da79b401fc6..c13aa992317 100644
--- a/pkgs/development/libraries/haskell/stm-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/stm-conduit/default.nix
@@ -8,8 +8,8 @@
cabal.mkDerivation (self: {
pname = "stm-conduit";
- version = "2.5.2";
- sha256 = "1r8l9nznavxd0cg30mj7qdp9nq8jlcr0vcv8ljn6lfw67s0pk82x";
+ version = "2.5.3";
+ sha256 = "1jsij92i3rw2wz1166i58p0lxrbx0jndf1hi3kj92ccvnc3zg1iw";
buildDepends = [
async cereal cerealConduit conduit conduitExtra liftedAsync
liftedBase monadControl monadLoops resourcet stm stmChans
diff --git a/pkgs/development/libraries/haskell/vector-fftw/default.nix b/pkgs/development/libraries/haskell/vector-fftw/default.nix
new file mode 100644
index 00000000000..f1bdbfb3d1e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector-fftw/default.nix
@@ -0,0 +1,17 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, fftw, primitive, storableComplex, vector }:
+
+cabal.mkDerivation (self: {
+ pname = "vector-fftw";
+ version = "0.1.3.2";
+ sha256 = "0rfvr86yiwp4wb9qjggbbacmgkfj6xrk6h7xb4xmhmk88slvifm0";
+ buildDepends = [ primitive storableComplex vector ];
+ extraLibraries = [ fftw ];
+ meta = {
+ homepage = "http://hackage.haskell.org/package/vector-fftw";
+ description = "A binding to the fftw library for one-dimensional vectors";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/webdriver/default.nix b/pkgs/development/libraries/haskell/webdriver/default.nix
index 883359db9ff..7433f165e4d 100644
--- a/pkgs/development/libraries/haskell/webdriver/default.nix
+++ b/pkgs/development/libraries/haskell/webdriver/default.nix
@@ -9,8 +9,8 @@
cabal.mkDerivation (self: {
pname = "webdriver";
- version = "0.6.0.3";
- sha256 = "1q0l9rs5j4cxzyqsy6r40y425359s246spk3g3pks7s47yynjn4q";
+ version = "0.6.0.4";
+ sha256 = "1miy65dl60gymf0a65kjykdmsl3cwcjrfg1iiyk6vkjz39y6y7qf";
buildDepends = [
aeson attoparsec base64Bytestring cond dataDefault directoryTree
exceptions filepath httpClient httpTypes liftedBase monadControl
@@ -18,7 +18,6 @@ cabal.mkDerivation (self: {
transformersBase unorderedContainers vector zipArchive
];
testDepends = [ parallel text ];
- jailbreak = true;
doCheck = false;
meta = {
homepage = "https://github.com/kallisti-dev/hs-webdriver";
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index 8c87981a693..571778cfdc4 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -3,18 +3,18 @@
{ cabal, aeson, async, autoUpdate, blazeBuilder, blazeHtml
, blazeMarkup, caseInsensitive, cereal, clientsession, conduit
, conduitExtra, cookie, dataDefault, deepseq, exceptions
-, fastLogger, hspec, httpTypes, HUnit, liftedBase, monadControl
-, monadLogger, mtl, mwcRandom, network, parsec, pathPieces
-, primitive, QuickCheck, random, resourcet, safe, shakespeare
-, streamingCommons, text, time, transformers, transformersBase
-, unixCompat, unorderedContainers, vector, wai, waiExtra, waiLogger
-, warp, word8
+, fastLogger, hspec, hspecExpectations, httpTypes, HUnit
+, liftedBase, monadControl, monadLogger, mtl, mwcRandom, network
+, parsec, pathPieces, primitive, QuickCheck, random, resourcet
+, safe, shakespeare, streamingCommons, text, time, transformers
+, transformersBase, unixCompat, unorderedContainers, vector, wai
+, waiExtra, waiLogger, warp, word8
}:
cabal.mkDerivation (self: {
pname = "yesod-core";
- version = "1.4.6";
- sha256 = "1xlqqiyn2p0c1qxrkx0mlkp4cra0adhlpw27y03icvj0c93xi27g";
+ version = "1.4.7.2";
+ sha256 = "0k6zsjds594zy0cvnryz071nis3zmv1sjiyn14cc80j0rvjll46y";
buildDepends = [
aeson autoUpdate blazeBuilder blazeHtml blazeMarkup caseInsensitive
cereal clientsession conduit conduitExtra cookie dataDefault
@@ -25,11 +25,11 @@ cabal.mkDerivation (self: {
word8
];
testDepends = [
- async blazeBuilder conduit conduitExtra hspec httpTypes HUnit
- liftedBase mwcRandom network pathPieces QuickCheck random resourcet
- shakespeare streamingCommons text transformers wai waiExtra
+ async blazeBuilder clientsession conduit conduitExtra cookie hspec
+ hspecExpectations httpTypes HUnit liftedBase mwcRandom network
+ pathPieces QuickCheck random resourcet shakespeare streamingCommons
+ text transformers wai waiExtra
];
- jailbreak = true;
meta = {
homepage = "http://www.yesodweb.com/";
description = "Creation of type-safe, RESTful web applications";
diff --git a/pkgs/development/libraries/haskell/yesod/default.nix b/pkgs/development/libraries/haskell/yesod/default.nix
index 04b4ebee52f..4b5679512a9 100644
--- a/pkgs/development/libraries/haskell/yesod/default.nix
+++ b/pkgs/development/libraries/haskell/yesod/default.nix
@@ -9,8 +9,8 @@
cabal.mkDerivation (self: {
pname = "yesod";
- version = "1.4.1.1";
- sha256 = "0p95f6gjpcl28ysl82hbyxh7fjql6lr5csndmnrd264h2pd88pxx";
+ version = "1.4.1.4";
+ sha256 = "1av6s5nanq5y9fqlzq2yq95989gg1fyqlpzg6y5pl4dcc45srm1x";
buildDepends = [
aeson blazeHtml blazeMarkup conduitExtra dataDefault fastLogger
monadControl monadLogger safe semigroups shakespeare
diff --git a/pkgs/development/libraries/ldb/default.nix b/pkgs/development/libraries/ldb/default.nix
index a7583c8d062..b400ff813d2 100644
--- a/pkgs/development/libraries/ldb/default.nix
+++ b/pkgs/development/libraries/ldb/default.nix
@@ -3,14 +3,11 @@
}:
stdenv.mkDerivation rec {
- name = "ldb-1.1.19";
+ name = "ldb-1.1.20";
src = fetchurl {
- urls = [
- "http://samba.org/ftp/ldb/${name}.tar.gz"
- "http://distfiles.exherbo.org/distfiles/${name}.tar.gz"
- ];
- sha256 = "1p2815z9sjack08pcdbv4xzp1fvr4lxcn30rj0wh3py4ly6ji1h0";
+ url = "mirror://samba/ldb/${name}.tar.gz";
+ sha256 = "1ckplfvr8rp5y632w5j0abdgkj3irbzjh1wn0yxadnhz4ymknjds";
};
buildInputs = [
diff --git a/pkgs/development/libraries/libass/default.nix b/pkgs/development/libraries/libass/default.nix
index 15b80053218..7dda6912a98 100644
--- a/pkgs/development/libraries/libass/default.nix
+++ b/pkgs/development/libraries/libass/default.nix
@@ -1,34 +1,53 @@
{ stdenv, fetchurl, pkgconfig, yasm
-, freetype, fribidi, fontconfig
-, enca ? null
-, harfbuzz ? null
+, freetype ? null
+, fribidi ? null
+, encaSupport ? true, enca ? null # enca support
+, fontconfigSupport ? true, fontconfig ? null # fontconfig support
+, harfbuzzSupport ? true, harfbuzz ? null # harfbuzz support
+, rasterizerSupport ? false # Internal rasterizer
+, largeTilesSupport ? false # Use larger tiles in the rasterizer
}:
+assert ((freetype != null) && (fribidi != null));
+assert encaSupport -> (enca != null);
+assert fontconfigSupport -> (fontconfig != null);
+assert harfbuzzSupport -> (harfbuzz != null);
+
let
- version = "0.11.1";
- sha256 = "1b0ki1zdkhflszzj5qr45j9qsd0rfbb6ws5pqkny8jhih0l3lxwx";
- baseurl = "https://github.com/libass/libass/releases/download";
-in stdenv.mkDerivation rec {
+ mkFlag = optSet: flag: if optSet then "--enable-${flag}" else "--disable-${flag}";
+in
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
name = "libass-${version}";
+ version = "0.12.1";
src = fetchurl {
- url = "${baseurl}/${version}/${name}.tar.xz";
- inherit sha256;
+ url = "https://github.com/libass/libass/releases/download/${version}/${name}.tar.xz";
+ sha256 = "1mwj2nk9g6cq6f8m1hf0ijg1299rghhy9naahqq43sc2whblb1l7";
};
+ configureFlags = [
+ (mkFlag encaSupport "enca")
+ (mkFlag fontconfigSupport "fontconfig")
+ (mkFlag harfbuzzSupport "harfbuzz")
+ (mkFlag rasterizerSupport "rasterizer")
+ (mkFlag largeTilesSupport "large-tiles")
+ ];
+
nativeBuildInputs = [ pkgconfig yasm ];
- buildInputs = [
- freetype fribidi fontconfig
- enca harfbuzz
- ];
+ buildInputs = [ freetype fribidi ]
+ ++ optional encaSupport enca
+ ++ optional fontconfigSupport fontconfig
+ ++ optional harfbuzzSupport harfbuzz;
meta = {
description = "Portable ASS/SSA subtitle renderer";
- homepage = http://code.google.com/p/libass/;
- license = stdenv.lib.licenses.isc;
- platforms = stdenv.lib.platforms.linux;
- maintainers = [ stdenv.lib.maintainers.urkud ];
+ homepage = https://github.com/libass/libass;
+ license = licenses.isc;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ codyopel urkud ];
repositories.git = git://github.com/libass/libass.git;
};
}
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index d7fab5ecac7..52b88244fd9 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, mtdev, udev, libevdev }:
stdenv.mkDerivation rec {
- name = "libinput-0.7.0";
+ name = "libinput-0.10.0";
src = fetchurl {
url = "http://www.freedesktop.org/software/libinput/${name}.tar.xz";
- sha256 = "17jps5iz8kvhbgbd0h436grzb6fbjwf9k4qjcja96jjyzrd4i7qj";
+ sha256 = "0h8lbhhxb5020bhdblxp1pkapy4bchjj3l44fxabz9pi1zw03q2c";
};
buildInputs = [ pkgconfig mtdev udev libevdev ];
diff --git a/pkgs/development/libraries/libu2f-host/default.nix b/pkgs/development/libraries/libu2f-host/default.nix
index f41e2aeec28..f996216826a 100644
--- a/pkgs/development/libraries/libu2f-host/default.nix
+++ b/pkgs/development/libraries/libu2f-host/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, json_c, hidapi }:
stdenv.mkDerivation rec {
- name = "libu2f-host-0.0.2";
+ name = "libu2f-host-0.0.4";
src = fetchurl {
url = "https://developers.yubico.com/libu2f-host/Releases/${name}.tar.xz";
- sha256 = "1n6bgb8z7dzyvaqh60gn7p4ih2rbymzflrgy79h3170kbn7lgrf9";
+ sha256 = "1mpa4m3vchqa0rm1zw0fgby3yhp35k4y6jlqdd02difm3dhk28l5";
};
buildInputs = [ pkgconfig json_c hidapi ];
diff --git a/pkgs/development/libraries/ntdb/default.nix b/pkgs/development/libraries/ntdb/default.nix
index 653f07bd716..0d553f68885 100644
--- a/pkgs/development/libraries/ntdb/default.nix
+++ b/pkgs/development/libraries/ntdb/default.nix
@@ -6,10 +6,7 @@ stdenv.mkDerivation rec {
name = "ntdb-1.0";
src = fetchurl {
- urls = [
- "http://samba.org/ftp/tdb/${name}.tar.gz"
- "http://ftp.riken.jp/net/samba/tdb/${name}.tar.gz"
- ];
+ url = "mirror://samba/tdb/${name}.tar.gz";
sha256 = "0jdzgrz5sr25k83yrw7wqb3r0yj1v04z4s3lhsmnr5z6n5ifhyl1";
};
diff --git a/pkgs/development/libraries/protobuf/2.5.nix b/pkgs/development/libraries/protobuf/2.5.nix
new file mode 100644
index 00000000000..4cc6a68c9f2
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/2.5.nix
@@ -0,0 +1,9 @@
+{ callPackage, fetchurl, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+ version = "2.5.0";
+ src = fetchurl {
+ url = "http://protobuf.googlecode.com/files/${version}.tar.bz2";
+ sha256 = "0xxn9gxhvsgzz2sgmihzf6pf75clr05mqj6218camwrwajpcbgqk";
+ };
+})
diff --git a/pkgs/development/libraries/protobuf/2.6.nix b/pkgs/development/libraries/protobuf/2.6.nix
new file mode 100644
index 00000000000..72960b0dd6a
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/2.6.nix
@@ -0,0 +1,11 @@
+{ callPackage, fetchFromGitHub, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+ version = "2.6.1";
+ src = fetchFromGitHub {
+ owner = "google";
+ repo = "protobuf";
+ rev = "v${version}";
+ sha256 = "03df8zvx2sry3jz2x4pi3l32qyfqa7w8kj8jdbz30nzy0h7aa070";
+ };
+})
diff --git a/pkgs/development/libraries/protobuf/default.nix b/pkgs/development/libraries/protobuf/generic.nix
similarity index 65%
rename from pkgs/development/libraries/protobuf/default.nix
rename to pkgs/development/libraries/protobuf/generic.nix
index bba8481780a..003ea703517 100644
--- a/pkgs/development/libraries/protobuf/default.nix
+++ b/pkgs/development/libraries/protobuf/generic.nix
@@ -1,14 +1,20 @@
-{ fetchurl, stdenv, zlib }:
+{ stdenv, version, src
+, autoreconfHook, zlib, gtest
+, ...
+}:
stdenv.mkDerivation rec {
- name = "protobuf-2.5.0";
+ name = "protobuf-${version}";
- src = fetchurl {
- url = "http://protobuf.googlecode.com/files/${name}.tar.bz2";
- sha256 = "0xxn9gxhvsgzz2sgmihzf6pf75clr05mqj6218camwrwajpcbgqk";
- };
+ inherit src;
- buildInputs = [ zlib ];
+ postPatch = ''
+ rm -rf gtest
+ cp -r ${gtest.source} gtest
+ chmod -R a+w gtest
+ '';
+
+ buildInputs = [ autoreconfHook zlib ];
doCheck = true;
diff --git a/pkgs/development/libraries/protobufc/1.0.nix b/pkgs/development/libraries/protobufc/1.0.nix
new file mode 100644
index 00000000000..d64ea5790c6
--- /dev/null
+++ b/pkgs/development/libraries/protobufc/1.0.nix
@@ -0,0 +1,11 @@
+{ callPackage, fetchFromGitHub, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+ version = "1.0.2";
+ src = fetchFromGitHub {
+ owner = "protobuf-c";
+ repo = "protobuf-c";
+ rev = "v${version}";
+ sha256 = "1harabw7qdgcmh098664xkcv8bkyach6i35sisc40yhvagr3fzsz";
+ };
+})
diff --git a/pkgs/development/libraries/protobufc/1.1.nix b/pkgs/development/libraries/protobufc/1.1.nix
new file mode 100644
index 00000000000..228225b721d
--- /dev/null
+++ b/pkgs/development/libraries/protobufc/1.1.nix
@@ -0,0 +1,11 @@
+{ callPackage, fetchFromGitHub, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+ version = "1.1.0";
+ src = fetchFromGitHub {
+ owner = "protobuf-c";
+ repo = "protobuf-c";
+ rev = "v${version}";
+ sha256 = "11j9vg55a732v14cki4721ipr942c4krr562gliqmnlwvyz0hlyb";
+ };
+})
diff --git a/pkgs/development/libraries/protobufc/default.nix b/pkgs/development/libraries/protobufc/generic.nix
similarity index 59%
rename from pkgs/development/libraries/protobufc/default.nix
rename to pkgs/development/libraries/protobufc/generic.nix
index 4d2c1d4349f..3a03d5c8b4b 100644
--- a/pkgs/development/libraries/protobufc/default.nix
+++ b/pkgs/development/libraries/protobufc/generic.nix
@@ -1,15 +1,12 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, protobuf, zlib }:
+{ stdenv, src, version
+, autoreconfHook, pkgconfig, protobuf, zlib
+, ...
+}:
stdenv.mkDerivation rec {
name = "protobuf-c-${version}";
- version = "1.0.2";
- src = fetchFromGitHub {
- owner = "protobuf-c";
- repo = "protobuf-c";
- rev = "v${version}";
- sha256 = "1harabw7qdgcmh098664xkcv8bkyach6i35sisc40yhvagr3fzsz";
- };
+ inherit src;
buildInputs = [ autoreconfHook pkgconfig protobuf zlib ];
diff --git a/pkgs/development/libraries/qt-5/0001-dlopen-gtkstyle.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0001-dlopen-gtkstyle.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0001-dlopen-gtkstyle.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0001-dlopen-gtkstyle.patch
diff --git a/pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0002-dlopen-webkit-nsplugin.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0002-dlopen-webkit-nsplugin.patch
diff --git a/pkgs/development/libraries/qt-5/0003-glib-2.32.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0003-glib-2.32.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0003-glib-2.32.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0003-glib-2.32.patch
diff --git a/pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0004-dlopen-resolv.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0004-dlopen-resolv.patch
diff --git a/pkgs/development/libraries/qt-5/0005-dlopen-gl.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0005-dlopen-gl.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0005-dlopen-gl.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0005-dlopen-gl.patch
diff --git a/pkgs/development/libraries/qt-5/0006-tzdir.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0006-tzdir.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0006-tzdir.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0006-tzdir.patch
diff --git a/pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0007-dlopen-webkit-gtk.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0007-dlopen-webkit-gtk.patch
diff --git a/pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0008-dlopen-webkit-udev.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0008-dlopen-webkit-udev.patch
diff --git a/pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0009-dlopen-serialport-udev.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0009-dlopen-serialport-udev.patch
diff --git a/pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0010-dlopen-libXcursor.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0010-dlopen-libXcursor.patch
diff --git a/pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0011-dlopen-openssl.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0011-dlopen-openssl.patch
diff --git a/pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch b/pkgs/development/libraries/qt-5/5.3-submodules/0012-dlopen-dbus.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch
rename to pkgs/development/libraries/qt-5/5.3-submodules/0012-dlopen-dbus.patch
diff --git a/pkgs/development/libraries/qt-5/5.3-submodules/default.nix b/pkgs/development/libraries/qt-5/5.3-submodules/default.nix
new file mode 100644
index 00000000000..607da4f589a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3-submodules/default.nix
@@ -0,0 +1,330 @@
+{ autonix, fetchurl, newScope, stdenv
+
+, bison2
+, mesa_noglu
+, cups
+, gnome
+
+# options
+, developerBuild ? false
+}:
+
+with autonix;
+with stdenv.lib;
+
+let
+ manifest =
+ importManifest ./manifest.nix { mirror = "http://download.qt.io"; };
+ srcs =
+ mapAttrs (name: src: fetchurl { inherit (src) url sha256 name; }) manifest;
+
+ version = "5.3.2";
+
+ callPackage = newScope (self // { inherit qtSubmodule; });
+
+ qtSubmodule = callPackage ./qt-submodule.nix {
+ inherit srcs version;
+ inherit (stdenv) mkDerivation;
+ };
+
+ self =
+ {
+
+ activeqt = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtactiveqt";
+ qtInputs = [ base ];
+ }
+ )
+ {};
+
+ base = callPackage ./qtbase.nix {
+ mesa = mesa_noglu;
+ cups = if stdenv.isLinux then cups else null;
+ # GNOME dependencies are not used unless gtkStyle == true
+ inherit (gnome) libgnomeui GConf gnome_vfs;
+ bison = bison2; # error: too few arguments to function 'int yylex(...
+ inherit developerBuild srcs version;
+ };
+
+ connectivity = callPackage
+ (
+ { qtSubmodule, base, declarative }:
+
+ qtSubmodule {
+ name = "qtconnectivity";
+ qtInputs = [ base declarative ];
+ }
+ )
+ {};
+
+ declarative = callPackage
+ (
+ { qtSubmodule, python, base, svg, xmlpatterns }:
+
+ qtSubmodule {
+ name = "qtdeclarative";
+ qtInputs = [ base svg xmlpatterns ];
+ nativeBuildInputs = [ python ];
+ }
+ )
+ {};
+
+ doc = callPackage
+ (
+ { qtSubmodule, declarative }:
+
+ qtSubmodule {
+ name = "qtdoc";
+ qtInputs = [ declarative ];
+ }
+ )
+ {};
+
+ enginio = callPackage
+ (
+ { qtSubmodule, declarative }:
+
+ qtSubmodule {
+ name = "qtenginio";
+ qtInputs = [ declarative ];
+ }
+ )
+ {};
+
+ graphicaleffects = callPackage
+ (
+ { qtSubmodule, declarative }:
+
+ qtSubmodule {
+ name = "qtgraphicaleffects";
+ qtInputs = [ declarative ];
+ }
+ )
+ {};
+
+ imageformats = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtimageformats";
+ qtInputs = [ base ];
+ }
+ )
+ {};
+
+ location = callPackage
+ (
+ { qtSubmodule, base, multimedia }:
+
+ qtSubmodule {
+ name = "qtlocation";
+ qtInputs = [ base multimedia ];
+ }
+ )
+ {};
+
+ multimedia = callPackage
+ (
+ { qtSubmodule, base, declarative
+ , alsaLib, gstreamer, gst_plugins_base, pulseaudio
+ }:
+
+ qtSubmodule {
+ name = "qtmultimedia";
+ qtInputs = [ base declarative ];
+ buildInputs = [
+ alsaLib gstreamer gst_plugins_base pulseaudio
+ ];
+ }
+ )
+ {};
+
+ quick1 = callPackage
+ (
+ { qtSubmodule, script, svg, webkit, xmlpatterns }:
+
+ qtSubmodule {
+ name = "qtquick1";
+ qtInputs = [ script svg webkit xmlpatterns ];
+ }
+ )
+ {};
+
+ quickcontrols = callPackage
+ (
+ { qtSubmodule, declarative }:
+
+ qtSubmodule {
+ name = "qtquickcontrols";
+ qtInputs = [ declarative ];
+ }
+ )
+ {};
+
+ script = callPackage
+ (
+ { qtSubmodule, base, tools }:
+
+ qtSubmodule {
+ name = "qtscript";
+ qtInputs = [ base tools ];
+ patchFlags = "-p2"; # patches originally for monolithic build
+ patches = [ ./0003-glib-2.32.patch ];
+ }
+ )
+ {};
+
+ sensors = callPackage
+ (
+ { qtSubmodule, base, declarative }:
+
+ qtSubmodule {
+ name = "qtsensors";
+ qtInputs = [ base declarative ];
+ }
+ )
+ {};
+
+ serialport = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtserialport";
+ qtInputs = [ base ];
+ patchFlags = "-p2"; # patches originally for monolithic build
+ patches = [ ./0009-dlopen-serialport-udev.patch ];
+ }
+ )
+ {};
+
+ svg = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtsvg";
+ qtInputs = [ base ];
+ }
+ )
+ {};
+
+ tools = callPackage
+ (
+ { qtSubmodule, activeqt, base, declarative, webkit }:
+
+ qtSubmodule {
+ name = "qttools";
+ qtInputs = [ activeqt base declarative webkit ];
+ }
+ )
+ {};
+
+ translations = callPackage
+ (
+ { qtSubmodule, tools }:
+
+ qtSubmodule {
+ name = "qttranslations";
+ qtInputs = [ tools ];
+ }
+ )
+ {};
+
+ webkit = callPackage
+ (
+ { qtSubmodule, declarative, location, multimedia, sensors
+ , fontconfig, gdk_pixbuf, gtk, libwebp, libxml2, libxslt
+ , sqlite, udev
+ , bison2, flex, gdb, gperf, perl, pkgconfig, python, ruby
+ , substituteAll
+ , flashplayerFix ? false
+ }:
+
+ qtSubmodule {
+ name = "qtwebkit";
+ qtInputs = [ declarative location multimedia sensors ];
+ buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite ];
+ nativeBuildInputs = [
+ bison2 flex gdb gperf perl pkgconfig python ruby
+ ];
+ patchFlags = "-p2"; # patches originally for monolithic build
+ patches =
+ optional flashplayerFix
+ (substituteAll
+ {
+ src = ./0002-dlopen-webkit-nsplugin.patch;
+ inherit gtk gdk_pixbuf;
+ }
+ )
+ ++ optional flashplayerFix
+ (substituteAll
+ {
+ src = ./0007-dlopen-webkit-gtk.patch;
+ inherit gtk;
+ }
+ )
+ ++ [
+ (substituteAll
+ {
+ src = ./0008-dlopen-webkit-udev.patch;
+ inherit udev;
+ }
+ )
+ ];
+ }
+ )
+ {};
+
+ webkit-examples = callPackage
+ (
+ { qtSubmodule, tools, webkit }:
+
+ qtSubmodule {
+ name = "qtwebkit-examples";
+ qtInputs = [ tools webkit ];
+ }
+ )
+ {};
+
+ websockets = callPackage
+ (
+ { qtSubmodule, base, declarative }:
+
+ qtSubmodule {
+ name = "qtwebsockets";
+ qtInputs = [ base declarative ];
+ }
+ )
+ {};
+
+ x11extras = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtx11extras";
+ qtInputs = [ base ];
+ }
+ )
+ {};
+
+ xmlpatterns = callPackage
+ (
+ { qtSubmodule, base }:
+
+ qtSubmodule {
+ name = "qtxmlpatterns";
+ qtInputs = [ base ];
+ }
+ )
+ {};
+
+ };
+
+in self
diff --git a/pkgs/development/libraries/qt-5/5.3-submodules/manifest.nix b/pkgs/development/libraries/qt-5/5.3-submodules/manifest.nix
new file mode 100644
index 00000000000..72e67575b00
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3-submodules/manifest.nix
@@ -0,0 +1,166 @@
+# This file is generated automatically. DO NOT EDIT!
+{ mirror }:
+[
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qttranslations-opensource-src-5.3.2.tar.xz";
+ sha256 = "1kf52crdg4a0p2pvm15slr2akiv5vcaj2g4f9iqqirg90pq4idi9";
+ name = "qttranslations-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/b49c2shv2x09l8887x9xd78j30azaihg-qttranslations-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtconnectivity-opensource-src-5.3.2.tar.xz";
+ sha256 = "0vq9v7dw8d3p2x45zzm96wvp8l1n76af3xzjs8p7bscpasw75f9f";
+ name = "qtconnectivity-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/7282a9bbvk9yvbp47yp3rh708cc6a2ic-qtconnectivity-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtwinextras-opensource-src-5.3.2.tar.xz";
+ sha256 = "06g5ny3vfwfvh8aa6dhgypy446bj486ks6a3hwah2mzz911ywfgn";
+ name = "qtwinextras-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/iy9p8g3x5jl4ysxsm0zac8ac32x8xh45-qtwinextras-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtmultimedia-opensource-src-5.3.2.tar.xz";
+ sha256 = "02qf98kv48bvpff85sz49y965if7jlfx98vxf0y78crzr5kaqpr5";
+ name = "qtmultimedia-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/q7nvs99p642dwv1lzxay1hws4x5apsf8-qtmultimedia-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtquick1-opensource-src-5.3.2.tar.xz";
+ sha256 = "1yvkcbgcccy4bzf6xglnbjh23l5p9785lysfxphy7r40a64jwywv";
+ name = "qtquick1-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/baqff20xa58d4njisddi6s97g4pjhfki-qtquick1-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtgraphicaleffects-opensource-src-5.3.2.tar.xz";
+ sha256 = "1z3zpa3lj2kx9999ycg0ixffwr3k0g5wlnizgm41ja9xl5c2d3v8";
+ name = "qtgraphicaleffects-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/vkm87abgwl8hpvfamjnnn6cj5gpxzqrf-qtgraphicaleffects-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qttools-opensource-src-5.3.2.tar.xz";
+ sha256 = "0glq97mivf5mwqxanbg2j4n2nky2lpcigr8p8naizbj37p3csfax";
+ name = "qttools-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/l9gccd50sxj01bsz30z6ncby9s24bf3y-qttools-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtimageformats-opensource-src-5.3.2.tar.xz";
+ sha256 = "1m7283m1py4h11qj0rgz8bi7f474n2bnppnvrz0fsx1pnz7cn0yk";
+ name = "qtimageformats-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/ikpxw4qp50w7cs54f90njz5llv0xza2l-qtimageformats-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtsvg-opensource-src-5.3.2.tar.xz";
+ sha256 = "03z33bkkaxcnpnmk4klb775c1nrp835c4bf8r0678mgf0zrw5i8y";
+ name = "qtsvg-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/wkp9660hiqavzimc88birm0ww7x5yycx-qtsvg-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtwebkit-opensource-src-5.3.2.tar.xz";
+ sha256 = "0nrfv57xpzgjk5420jhk2mr46mn0mjdxhg0vw4rcrqg82pnj4wg4";
+ name = "qtwebkit-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/9zvifykqvxic9f10672n7lxwxkl90886-qtwebkit-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtsensors-opensource-src-5.3.2.tar.xz";
+ sha256 = "1r1sjl41v8yij5b5lph7jkb2yxxaj1p8dyx1qzp0awdx5z29sdgr";
+ name = "qtsensors-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/x551nn8q8cflm99v2q3gk78vhayqb0bb-qtsensors-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtmacextras-opensource-src-5.3.2.tar.xz";
+ sha256 = "023q4v6drichy6s6mn3jd2lxzj2cma7y35wyzx3wa7rhvznplzlb";
+ name = "qtmacextras-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/kfb05hiq7dc1djiy92nxvskshfjzyydx-qtmacextras-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtlocation-opensource-src-5.3.2.tar.xz";
+ sha256 = "1mqlk09kccjxzrxxd5kv2w343kmnk8jxgfyb7adkhd8wacmhgd1p";
+ name = "qtlocation-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/pcfivvnnw5j5p3gk5r3gdf4iv974l323-qtlocation-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtscript-opensource-src-5.3.2.tar.xz";
+ sha256 = "1gnpsvlkqfws3rsgzlxnd63w2h9f142hfg4bsb3h4d4rihn0063f";
+ name = "qtscript-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/fjsvvkw7a39v85r8mwbpvki9zps1qcms-qtscript-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtquickcontrols-opensource-src-5.3.2.tar.xz";
+ sha256 = "0knryszjfhk2x7h5d9b07cil0mzqn4hlp5d8maq42w889l0hz2az";
+ name = "qtquickcontrols-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/2mlnavd1zjsp1vwnvi2gwgvw6wl3fpgc-qtquickcontrols-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtactiveqt-opensource-src-5.3.2.tar.xz";
+ sha256 = "07sbgibmj4m9jywdz3ilmz1s6zh57himqhc2a62k78r0xx48chz1";
+ name = "qtactiveqt-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/x1zpipa51v97w16dphdbbxn1mg096g2g-qtactiveqt-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qt5-opensource-src-5.3.2.tar.xz";
+ sha256 = "0xj18bbamg921y8y8pzjxs2sciyrwvvr7wzh43pjpkiacs13r08a";
+ name = "qt5-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/y1gks060bhnzan3af703i00l50kbmn4z-qt5-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtxmlpatterns-opensource-src-5.3.2.tar.xz";
+ sha256 = "1fqsxkbzf2iwzc2m5qccw1gan2ddbr15xjgjr9sp84cy0c3h7axc";
+ name = "qtxmlpatterns-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/z4g2py09bn400hfxh9n6ssqn9xnr5g7g-qtxmlpatterns-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtdoc-opensource-src-5.3.2.tar.xz";
+ sha256 = "17ahdsj8hssi1dfwxbxq11mi0lpy75c3z5mwswd13l9lnvpm6d0b";
+ name = "qtdoc-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/78sa59m008x9vcpiky2i2maql6d20wa8-qtdoc-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtwebkit-examples-opensource-src-5.3.2.tar.xz";
+ sha256 = "10k45492afbqffx5jab8784spp9ihclgxqn0kviy5n5pcc41l268";
+ name = "qtwebkit-examples-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/39809byxmwz1wzchr6fd0b4qqd2p18mj-qtwebkit-examples-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtenginio-opensource-src-5.3.2.tar.xz";
+ sha256 = "027pdbgiaf1ypcb054x1mgdn5r9ph6hr09p4h2rrsd3avib4df6m";
+ name = "qtenginio-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/dmng42dg4s3sllzv27pz03gj8ys6i3a8-qtenginio-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtwebsockets-opensource-src-5.3.2.tar.xz";
+ sha256 = "1hiq7bkpffjpmx4kvp4xldgq8sm7r9xyfak410g7p8hg7d0kslv0";
+ name = "qtwebsockets-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/74gkwn4mqmq8if54492fk3mv0bgjjs12-qtwebsockets-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtandroidextras-opensource-src-5.3.2.tar.xz";
+ sha256 = "0a66f8s4wgb9s0k5bqc98kd5qf6qypxn1qhzcwqc3qqrfv69pwmy";
+ name = "qtandroidextras-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/0121pysghq6bxjx0l0isjfhjc283ncci-qtandroidextras-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtserialport-opensource-src-5.3.2.tar.xz";
+ sha256 = "0jsszlv4v45wx8m9rj0398c6i534dwfcjvb7b1wyaq5y135y11m8";
+ name = "qtserialport-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/7xkgwk3l565bvcmzadywjcpbydgbv688-qtserialport-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtx11extras-opensource-src-5.3.2.tar.xz";
+ sha256 = "0lbjq6014nz68xhg0mzmm92pm9r45jgaw82a1c41igz0bg4jhsna";
+ name = "qtx11extras-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/93rdyp4p1qz8cd7cn7gixjch23m71xqf-qtx11extras-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtdeclarative-opensource-src-5.3.2.tar.xz";
+ sha256 = "10i3id206vzvxc3rwa4mykwmbxc13mf8psapq6a06b34p69q2404";
+ name = "qtdeclarative-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/kf843n3710cancfcdicb17s8hxg628yr-qtdeclarative-opensource-src-5.3.2.tar.xz";
+ }
+ {
+ url = "${mirror}/official_releases/qt/5.3/5.3.2/submodules/qtbase-opensource-src-5.3.2.tar.xz";
+ sha256 = "1f3chbblfwyhj4qll6gd05jw7qgvcmqc12xbvpb9kbkdqid0j5ls";
+ name = "qtbase-opensource-src-5.3.2.tar.xz";
+ store = "/nix/store/l38yd5yrm35r812pdigxczqzv2h3k7r9-qtbase-opensource-src-5.3.2.tar.xz";
+ }
+]
diff --git a/pkgs/development/libraries/qt-5/5.3-submodules/manifest.sh b/pkgs/development/libraries/qt-5/5.3-submodules/manifest.sh
new file mode 100755
index 00000000000..6f713511531
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3-submodules/manifest.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+if [ $# -eq 0 ]; then
+
+ # The extra slash at the end of the URL is necessary to stop wget
+ # from recursing over the whole server! (No, it's not a bug.)
+ $(nix-build ../../../../.. -A autonix.manifest) \
+ http://download.qt.io/official_releases/qt/5.3/5.3.2/submodules/ \
+ -A '*.tar.xz'
+
+else
+
+ $(nix-build ../../../.. -A autonix.manifest) -A '*.tar.xz' "$@"
+
+fi
diff --git a/pkgs/development/libraries/qt-5/5.3-submodules/qt-submodule.nix b/pkgs/development/libraries/qt-5/5.3-submodules/qt-submodule.nix
new file mode 100644
index 00000000000..6f9278e98ff
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3-submodules/qt-submodule.nix
@@ -0,0 +1,62 @@
+{ stdenv, mkDerivation
+, srcs, version
+, lndir
+, base
+}:
+
+with stdenv.lib;
+
+args:
+
+mkDerivation (args // {
+
+ name = "${args.name}-${version}";
+ inherit version;
+
+ srcs = args.srcs or [srcs."${args.name}-opensource-src"];
+
+ preConfigure = ''
+ mkdir -p "$out"
+
+ for qtInput in ${concatStringsSep " " args.qtInputs}; do
+ lndir "$qtInput" "$out"
+ done
+
+ # Only this package's nix-support files go in $out
+ rm -fr $out/nix-support
+
+ # Override hardcoded paths in qmake
+ rm -f $out/bin/qmake
+ cp "${base}/bin/qmake" "$out/bin/qmake"
+ rm -f $out/bin/qt.conf
+ cat <$out/bin/qt.conf
+[Paths]
+Prefix = $out
+EOF
+ export PATH=$out/bin:$PATH
+ '' + (args.preConfigure or "");
+
+ dontAddPrefix = args.dontAddPrefix or true;
+ dontFixLibtool = args.dontFixLibtool or true;
+ configureScript = args.configureScript or "qmake";
+
+ postInstall = ''
+ rm "$out/bin/qmake" "$out/bin/qt.conf"
+ '';
+
+ propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
+
+ nativeBuildInputs = [ lndir ] ++ (args.nativeBuildInputs or []);
+
+ enableParallelBuilding =
+ args.enableParallelBuilding or true; # often fails on Hydra, as well as qt4
+
+ meta = args.meta or {
+ homepage = http://qt-project.org;
+ description = "A cross-platform application framework for C++";
+ license = "GPL/LGPL";
+ maintainers = with maintainers; [ bbenoist qknight ttuegel ];
+ platforms = platforms.linux;
+ };
+
+})
diff --git a/pkgs/development/libraries/qt-5/5.3-submodules/qtbase.nix b/pkgs/development/libraries/qt-5/5.3-submodules/qtbase.nix
new file mode 100644
index 00000000000..40f29f2d3fe
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3-submodules/qtbase.nix
@@ -0,0 +1,174 @@
+{ stdenv, substituteAll
+, srcs, version
+
+, xlibs, libX11, libxcb, libXcursor, libXext, libXrender, libXi
+, xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilwm, libxkbcommon
+, fontconfig, freetype, openssl, dbus, glib, udev, libxml2, libxslt, pcre
+, zlib, libjpeg, libpng, libtiff, sqlite, icu
+
+, coreutils, bison, flex, gdb, gperf, ruby
+, python, perl, pkgconfig
+
+# optional dependencies
+, cups ? null
+, mysql ? null, postgresql ? null
+
+# options
+, mesaSupported, mesa, mesa_glu
+, buildDocs ? false
+, buildExamples ? false
+, buildTests ? false
+, developerBuild ? false
+, gtkStyle ? false, libgnomeui, GConf, gnome_vfs, gtk
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation {
+
+ name = "qtbase-${version}";
+ inherit version;
+
+ srcs = with srcs; [ qt5-opensource-src qtbase-opensource-src ];
+ sourceRoot = "qt-everywhere-opensource-src-${version}";
+
+ postUnpack = ''
+ mv qtbase-opensource-src-${version} ./qt-everywhere-opensource-src-${version}/qtbase
+ '';
+
+ prePatch = ''
+ substituteInPlace configure --replace /bin/pwd pwd
+ substituteInPlace qtbase/configure --replace /bin/pwd pwd
+ substituteInPlace qtbase/src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
+ substituteInPlace qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp \
+ --replace /usr/share/X11/locale ${libX11}/share/X11/locale \
+ --replace /usr/lib/X11/locale ${libX11}/share/X11/locale
+ sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i qtbase/mkspecs/*/*.conf
+ '';
+
+ patches =
+ optional gtkStyle
+ (substituteAll {
+ src = ./0001-dlopen-gtkstyle.patch;
+ # substituteAll ignores env vars starting with capital letter
+ gconf = GConf;
+ inherit gnome_vfs libgnomeui gtk;
+ })
+ ++ [
+ (substituteAll {
+ src = ./0004-dlopen-resolv.patch;
+ glibc = stdenv.cc.libc;
+ })
+ (substituteAll {
+ src = ./0005-dlopen-gl.patch;
+ openglDriver = if mesaSupported then mesa.driverLink else "/no-such-path";
+ })
+ ./0006-tzdir.patch
+ (substituteAll { src = ./0010-dlopen-libXcursor.patch; inherit libXcursor; })
+ (substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; })
+ (substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; })
+ ];
+
+ preConfigure = ''
+ export LD_LIBRARY_PATH="$PWD/qtbase/lib:$PWD/qtbase/plugins/platforms:$PWD/qttools/lib:$LD_LIBRARY_PATH"
+ export MAKEFLAGS=-j$NIX_BUILD_CORES
+ '';
+
+ prefixKey = "-prefix ";
+
+ # -no-eglfs, -no-directfb, -no-linuxfb and -no-kms because of the current minimalist mesa
+ # TODO Remove obsolete and useless flags once the build will be totally mastered
+ configureFlags = ''
+ -verbose
+ -confirm-license
+ -opensource
+
+ -release
+ -shared
+ -c++11
+ ${optionalString developerBuild "-developer-build"}
+ -largefile
+ -accessibility
+ -rpath
+ -optimized-qmake
+ -strip
+ -reduce-relocations
+ -system-proxies
+
+ -gui
+ -widgets
+ -opengl desktop
+ -qml-debug
+ -nis
+ -iconv
+ -icu
+ -pch
+ -glib
+ -xcb
+ -qpa xcb
+ -${optionalString (cups == null) "no-"}cups
+
+ -no-eglfs
+ -no-directfb
+ -no-linuxfb
+ -no-kms
+
+ -system-zlib
+ -system-libpng
+ -system-libjpeg
+ -system-xcb
+ -system-xkbcommon
+ -openssl-linked
+ -dbus-linked
+
+ -system-sqlite
+ -${if mysql != null then "plugin" else "no"}-sql-mysql
+ -${if postgresql != null then "plugin" else "no"}-sql-psql
+
+ -make libs
+ -make tools
+ -${optionalString (buildExamples == false) "no"}make examples
+ -${optionalString (buildTests == false) "no"}make tests
+ '';
+
+ propagatedBuildInputs = [
+ xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
+ fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre
+ zlib libjpeg libpng libtiff sqlite icu
+ xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
+ ]
+ # Qt doesn't directly need GLU (just GL), but many apps use, it's small and
+ # doesn't remain a runtime-dep if not used
+ ++ optionals mesaSupported [ mesa mesa_glu ]
+ ++ optional (cups != null) cups
+ ++ optional (mysql != null) mysql
+ ++ optional (postgresql != null) postgresql;
+
+ buildInputs = [ gdb bison flex gperf ruby ];
+
+ nativeBuildInputs = [ python perl pkgconfig ];
+
+ # freetype-2.5.4 changed signedness of some struct fields
+ NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare";
+
+ postInstall =
+ ''
+ ${optionalString buildDocs ''
+ make docs && make install_docs
+ ''}
+
+ # Don't retain build-time dependencies like gdb and ruby.
+ sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $out/mkspecs/qconfig.pri
+ '';
+
+ enableParallelBuilding = true; # often fails on Hydra, as well as qt4
+
+ meta = {
+ homepage = http://qt-project.org;
+ description = "A cross-platform application framework for C++";
+ license = "GPL/LGPL";
+ maintainers = with maintainers; [ bbenoist qknight ttuegel ];
+ platforms = platforms.linux;
+ };
+
+}
diff --git a/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch b/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch
new file mode 100644
index 00000000000..3f411139f5b
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch
@@ -0,0 +1,63 @@
+From 35d5995a58c86a6addbf0aaf0d1be64d39182872 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:21:58 -0600
+Subject: [PATCH] dlopen-gtkstyle
+
+---
+ qtbase/src/widgets/styles/qgtk2painter.cpp | 2 +-
+ qtbase/src/widgets/styles/qgtkstyle_p.cpp | 12 ++++++------
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/qtbase/src/widgets/styles/qgtk2painter.cpp b/qtbase/src/widgets/styles/qgtk2painter.cpp
+index 7b9bd97..075947a 100644
+--- a/qtbase/src/widgets/styles/qgtk2painter.cpp
++++ b/qtbase/src/widgets/styles/qgtk2painter.cpp
+@@ -104,7 +104,7 @@ static void initGtk()
+ static bool initialized = false;
+ if (!initialized) {
+ // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
+- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
++ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
+
+ QGtk2PainterPrivate::gdk_pixmap_new = (Ptr_gdk_pixmap_new)libgtk.resolve("gdk_pixmap_new");
+ QGtk2PainterPrivate::gdk_pixbuf_get_from_drawable = (Ptr_gdk_pixbuf_get_from_drawable)libgtk.resolve("gdk_pixbuf_get_from_drawable");
+diff --git a/qtbase/src/widgets/styles/qgtkstyle_p.cpp b/qtbase/src/widgets/styles/qgtkstyle_p.cpp
+index 2c64225..3343d32 100644
+--- a/qtbase/src/widgets/styles/qgtkstyle_p.cpp
++++ b/qtbase/src/widgets/styles/qgtkstyle_p.cpp
+@@ -334,7 +334,7 @@ void QGtkStylePrivate::gtkWidgetSetFocus(GtkWidget *widget, bool focus)
+ void QGtkStylePrivate::resolveGtk() const
+ {
+ // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
+- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
++ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
+
+ gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
+ gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new");
+@@ -432,8 +432,8 @@ void QGtkStylePrivate::resolveGtk() const
+ pango_font_description_get_family = (Ptr_pango_font_description_get_family)libgtk.resolve("pango_font_description_get_family");
+ pango_font_description_get_style = (Ptr_pango_font_description_get_style)libgtk.resolve("pango_font_description_get_style");
+
+- gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("gnomeui-2"), 0, "gnome_icon_lookup_sync");
+- gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("gnomevfs-2"), 0, "gnome_vfs_init");
++ gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("@libgnomeui@/lib/libgnomeui-2"), 0, "gnome_icon_lookup_sync");
++ gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("@gnome_vfs@/lib/libgnomevfs-2"), 0, "gnome_vfs_init");
+ }
+
+ /* \internal
+@@ -601,9 +601,9 @@ void QGtkStylePrivate::cleanupGtkWidgets()
+ static bool resolveGConf()
+ {
+ if (!QGtkStylePrivate::gconf_client_get_default) {
+- QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_default");
+- QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_string");
+- QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_bool");
++ QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_default");
++ QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_string");
++ QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_bool");
+ }
+ return (QGtkStylePrivate::gconf_client_get_default !=0);
+ }
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0002-dlopen-webkit-nsplugin.patch b/pkgs/development/libraries/qt-5/5.3/0002-dlopen-webkit-nsplugin.patch
new file mode 100644
index 00000000000..0752cdcf479
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0002-dlopen-webkit-nsplugin.patch
@@ -0,0 +1,53 @@
+From 8c30f72dbe11752e8ed25f292c6e5695d7733f72 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:22:23 -0600
+Subject: [PATCH] dlopen-webkit-nsplugin
+
+---
+ qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp | 2 +-
+ qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp | 2 +-
+ .../WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+index 679480b..2c373cc 100644
+--- a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
++++ b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+@@ -132,7 +132,7 @@ static void initializeGtk(QLibrary* module = 0)
+ }
+ }
+
+- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
++ QLibrary library(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
+ if (library.load()) {
+ typedef void *(*gtk_init_check_ptr)(int*, char***);
+ gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check");
+diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
+index de06a2f..363bde5 100644
+--- a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
++++ b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
+@@ -697,7 +697,7 @@ static Display *getPluginDisplay()
+ // support gdk based plugins (like flash) that use a different X connection.
+ // The code below has the same effect as this one:
+ // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++ QLibrary library(QLatin1String("@gdk_pixbuf@/lib/libgdk-x11-2.0"), 0);
+ if (!library.load())
+ return 0;
+
+diff --git a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+index d734ff6..62a2197 100644
+--- a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
++++ b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+@@ -64,7 +64,7 @@ static Display* getPluginDisplay()
+ // The code below has the same effect as this one:
+ // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+
+- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++ QLibrary library(QLatin1String("@gdk_pixbuf@/libgdk-x11-2.0"), 0);
+ if (!library.load())
+ return 0;
+
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0003-glib-2.32.patch b/pkgs/development/libraries/qt-5/5.3/0003-glib-2.32.patch
new file mode 100644
index 00000000000..4abb69da4d8
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0003-glib-2.32.patch
@@ -0,0 +1,25 @@
+From a41c3e3a3a1ce4b373b1bbb98f3a835e9e8a0718 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:22:39 -0600
+Subject: [PATCH] glib-2.32
+
+---
+ qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+index 1f6d25e..087c3fb 100644
+--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
++++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+@@ -81,7 +81,7 @@
+ #include
+ #elif PLATFORM(GTK)
+ #include
+-typedef struct _GMutex GMutex;
++typedef union _GMutex GMutex;
+ typedef struct _GCond GCond;
+ #endif
+
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0004-dlopen-resolv.patch b/pkgs/development/libraries/qt-5/5.3/0004-dlopen-resolv.patch
new file mode 100644
index 00000000000..e6b921b771d
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0004-dlopen-resolv.patch
@@ -0,0 +1,39 @@
+From 63af41c6eeca28c911c13b1a77afeaf860863c2d Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:22:55 -0600
+Subject: [PATCH] dlopen-resolv
+
+---
+ qtbase/src/network/kernel/qdnslookup_unix.cpp | 2 +-
+ qtbase/src/network/kernel/qhostinfo_unix.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/qtbase/src/network/kernel/qdnslookup_unix.cpp b/qtbase/src/network/kernel/qdnslookup_unix.cpp
+index 8c5a0eb..27ebf16 100644
+--- a/qtbase/src/network/kernel/qdnslookup_unix.cpp
++++ b/qtbase/src/network/kernel/qdnslookup_unix.cpp
+@@ -87,7 +87,7 @@ static void resolveLibrary()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String("@glibc/lib/resolv"));
+ if (!lib.load())
+ return;
+ }
+diff --git a/qtbase/src/network/kernel/qhostinfo_unix.cpp b/qtbase/src/network/kernel/qhostinfo_unix.cpp
+index df8c8b1..613d0e0 100644
+--- a/qtbase/src/network/kernel/qhostinfo_unix.cpp
++++ b/qtbase/src/network/kernel/qhostinfo_unix.cpp
+@@ -103,7 +103,7 @@ static void resolveLibrary()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String("@glibc@/lib/libresolv"));
+ if (!lib.load())
+ return;
+ }
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0005-dlopen-gl.patch b/pkgs/development/libraries/qt-5/5.3/0005-dlopen-gl.patch
new file mode 100644
index 00000000000..d112427bdd6
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0005-dlopen-gl.patch
@@ -0,0 +1,25 @@
+From 6aaf6858bf817172a4c503158e1701c4837ee790 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:23:08 -0600
+Subject: [PATCH] dlopen-gl
+
+---
+ qtbase/src/plugins/platforms/xcb/qglxintegration.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
+index 67235e0..2220a2e 100644
+--- a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
++++ b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
+@@ -434,7 +434,7 @@ void (*QGLXContext::getProcAddress(const QByteArray &procName)) ()
+ {
+ extern const QString qt_gl_library_name();
+ // QLibrary lib(qt_gl_library_name());
+- QLibrary lib(QLatin1String("GL"));
++ QLibrary lib(QLatin1String("@openglDriver@/lib/libGL"));
+ glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
+ }
+ }
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0006-tzdir.patch b/pkgs/development/libraries/qt-5/5.3/0006-tzdir.patch
new file mode 100644
index 00000000000..d5a74b25fb3
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0006-tzdir.patch
@@ -0,0 +1,52 @@
+From 775fd74351faaabd45f6751618b28e2b05812d05 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:23:22 -0600
+Subject: [PATCH] tzdir
+
+---
+ qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp | 21 +++++++++++++++------
+ 1 file changed, 15 insertions(+), 6 deletions(-)
+
+diff --git a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
+index b4ea91e..a56a245 100644
+--- a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
++++ b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
+@@ -68,7 +68,10 @@ typedef QHash QTzTimeZoneHash;
+ // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
+ static QTzTimeZoneHash loadTzTimeZones()
+ {
+- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
++ QString path = qgetenv("TZDIR");
++ path += "/zone.tab";
++ if (!QFile::exists(path))
++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
+ if (!QFile::exists(path))
+ path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
+
+@@ -559,12 +562,18 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
+ if (!tzif.open(QIODevice::ReadOnly))
+ return;
+ } else {
+- // Open named tz, try modern path first, if fails try legacy path
+- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ // Try TZDIR first
++ QString zoneinfoDir = qgetenv("TZDIR");
++ zoneinfoDir += "/" + QString::fromLocal8Bit(ianaId);
++ tzif.setFileName(zoneinfoDir);
+ if (!tzif.open(QIODevice::ReadOnly)) {
+- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+- if (!tzif.open(QIODevice::ReadOnly))
+- return;
++ // Open named tz, try modern path first, if fails try legacy path
++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly)) {
++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly))
++ return;
++ }
+ }
+ }
+
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0007-dlopen-webkit-gtk.patch b/pkgs/development/libraries/qt-5/5.3/0007-dlopen-webkit-gtk.patch
new file mode 100644
index 00000000000..9582b714c90
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0007-dlopen-webkit-gtk.patch
@@ -0,0 +1,25 @@
+From 089db8835c80bf2b7dd91a97a5c6eb26636b6ab9 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:26:39 -0600
+Subject: [PATCH] dlopen-webkit-gtk
+
+---
+ qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+index 8de6521..0b25748 100644
+--- a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
++++ b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+@@ -53,7 +53,7 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
+
+ static bool initializeGtk()
+ {
+- QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
++ QLibrary gtkLibrary(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
+ if (!gtkLibrary.load())
+ return false;
+ typedef void* (*gtk_init_ptr)(void*, void*);
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0008-dlopen-webkit-udev.patch b/pkgs/development/libraries/qt-5/5.3/0008-dlopen-webkit-udev.patch
new file mode 100644
index 00000000000..e8a4ba6a215
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0008-dlopen-webkit-udev.patch
@@ -0,0 +1,31 @@
+From 25d2922cce383fcaa4c138e0cc6c8d92328eeacb Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:30:41 -0600
+Subject: [PATCH] dlopen-webkit-udev
+
+---
+ qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
+index 60ff317..da8ac69 100644
+--- a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
++++ b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
+@@ -111,12 +111,12 @@ private:
+ bool load()
+ {
+ m_libUdev.setLoadHints(QLibrary::ResolveAllSymbolsHint);
+- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 1);
++ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1);
+ m_loaded = m_libUdev.load();
+ if (resolveMethods())
+ return true;
+
+- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 0);
++ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0);
+ m_loaded = m_libUdev.load();
+ return resolveMethods();
+ }
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0009-dlopen-serialport-udev.patch b/pkgs/development/libraries/qt-5/5.3/0009-dlopen-serialport-udev.patch
new file mode 100644
index 00000000000..e1e66a3ce95
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0009-dlopen-serialport-udev.patch
@@ -0,0 +1,28 @@
+From 17c7257e54c00ea2121f2cf95fb2be5e5db6b4ad Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:31:03 -0600
+Subject: [PATCH] dlopen-serialport-udev
+
+---
+ qtserialport/src/serialport/qtudev_p.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/qtserialport/src/serialport/qtudev_p.h b/qtserialport/src/serialport/qtudev_p.h
+index 09940ab..45460f9 100644
+--- a/qtserialport/src/serialport/qtudev_p.h
++++ b/qtserialport/src/serialport/qtudev_p.h
+@@ -119,9 +119,9 @@ inline void *resolveSymbol(QLibrary *udevLibrary, const char *symbolName)
+ inline bool resolveSymbols(QLibrary *udevLibrary)
+ {
+ if (!udevLibrary->isLoaded()) {
+- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 1);
++ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1);
+ if (!udevLibrary->load()) {
+- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 0);
++ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0);
+ if (!udevLibrary->load()) {
+ qWarning("Failed to load the library: %s, supported version(s): %i and %i", qPrintable(udevLibrary->fileName()), 1, 0);
+ return false;
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0010-dlopen-libXcursor.patch b/pkgs/development/libraries/qt-5/5.3/0010-dlopen-libXcursor.patch
new file mode 100644
index 00000000000..49ade86fae3
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0010-dlopen-libXcursor.patch
@@ -0,0 +1,29 @@
+From b56e3737ca97e3de664603976989da4419297eb3 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:33:51 -0600
+Subject: [PATCH] dlopen-libXcursor
+
+---
+ qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
+index 6dbac90..4b23fc2 100644
+--- a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
++++ b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
+@@ -305,10 +305,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
+ #ifdef XCB_USE_XLIB
+ static bool function_ptrs_not_initialized = true;
+ if (function_ptrs_not_initialized) {
+- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
++ QLibrary xcursorLib(QLatin1String("@libXcursor@/lib/libXcursor"), 1);
+ bool xcursorFound = xcursorLib.load();
+ if (!xcursorFound) { // try without the version number
+- xcursorLib.setFileName(QLatin1String("Xcursor"));
++ xcursorLib.setFileName(QLatin1String("@libXcursor@/lib/Xcursor"));
+ xcursorFound = xcursorLib.load();
+ }
+ if (xcursorFound) {
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0011-dlopen-openssl.patch b/pkgs/development/libraries/qt-5/5.3/0011-dlopen-openssl.patch
new file mode 100644
index 00000000000..d08061dd5dd
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0011-dlopen-openssl.patch
@@ -0,0 +1,38 @@
+From 99d458c93698b2d4f16ff164ed54237279ffbb64 Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:35:21 -0600
+Subject: [PATCH] dlopen-openssl
+
+---
+ qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
+index 4e6200f..d9c3e7d 100644
+--- a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
++++ b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
+@@ -585,8 +585,8 @@ static QPair loadOpenSsl()
+ #endif
+ #if defined(SHLIB_VERSION_NUMBER) && !defined(Q_OS_QNX) // on QNX, the libs are always libssl.so and libcrypto.so
+ // first attempt: the canonical name is libssl.so.
+- libssl->setFileNameAndVersion(QLatin1String("ssl"), QLatin1String(SHLIB_VERSION_NUMBER));
+- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), QLatin1String(SHLIB_VERSION_NUMBER));
++ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), QLatin1String(SHLIB_VERSION_NUMBER));
++ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), QLatin1String(SHLIB_VERSION_NUMBER));
+ if (libcrypto->load() && libssl->load()) {
+ // libssl.so. and libcrypto.so. found
+ return pair;
+@@ -597,8 +597,8 @@ static QPair loadOpenSsl()
+ #endif
+
+ // second attempt: find the development files libssl.so and libcrypto.so
+- libssl->setFileNameAndVersion(QLatin1String("ssl"), -1);
+- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), -1);
++ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), -1);
++ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), -1);
+ if (libcrypto->load() && libssl->load()) {
+ // libssl.so.0 and libcrypto.so.0 found
+ return pair;
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/5.3/0012-dlopen-dbus.patch b/pkgs/development/libraries/qt-5/5.3/0012-dlopen-dbus.patch
new file mode 100644
index 00000000000..f32386e114b
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0012-dlopen-dbus.patch
@@ -0,0 +1,25 @@
+From eec8a79c6cc9e2c65fd43db48ca2347de3ae0c5e Mon Sep 17 00:00:00 2001
+From: Thomas Tuegel
+Date: Mon, 1 Dec 2014 17:38:04 -0600
+Subject: [PATCH] dlopen-dbus
+
+---
+ qtbase/src/dbus/qdbus_symbols.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qtbase/src/dbus/qdbus_symbols.cpp b/qtbase/src/dbus/qdbus_symbols.cpp
+index a7a1b67..661baf1 100644
+--- a/qtbase/src/dbus/qdbus_symbols.cpp
++++ b/qtbase/src/dbus/qdbus_symbols.cpp
+@@ -93,7 +93,7 @@ bool qdbus_loadLibDBus()
+
+ static int majorversions[] = { 3, 2, -1 };
+ lib->unload();
+- lib->setFileName(QLatin1String("dbus-1"));
++ lib->setFileName(QLatin1String("@dbus_libs@/lib/libdbus-1"));
+ for (uint i = 0; i < sizeof(majorversions) / sizeof(majorversions[0]); ++i) {
+ lib->setFileNameAndVersion(lib->fileName(), majorversions[i]);
+ if (lib->load() && lib->resolve("dbus_connection_open_private"))
+--
+2.1.3
+
diff --git a/pkgs/development/libraries/qt-5/default.nix b/pkgs/development/libraries/qt-5/5.3/default.nix
similarity index 100%
rename from pkgs/development/libraries/qt-5/default.nix
rename to pkgs/development/libraries/qt-5/5.3/default.nix
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index 8c82d9470f3..8a523593c4b 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
name = "talloc-2.1.1";
src = fetchurl {
- url = "http://samba.org/ftp/talloc/${name}.tar.gz";
+ url = "mirror://samba/talloc/${name}.tar.gz";
sha256 = "0x31id42b425dbxv5whrqlc6dj14ph7wzs3wsp1ggi537dncwa9y";
};
diff --git a/pkgs/development/libraries/tdb/default.nix b/pkgs/development/libraries/tdb/default.nix
index 778cf8a8d7b..81227f0829b 100644
--- a/pkgs/development/libraries/tdb/default.nix
+++ b/pkgs/development/libraries/tdb/default.nix
@@ -6,10 +6,7 @@ stdenv.mkDerivation rec {
name = "tdb-1.3.4";
src = fetchurl {
- urls = [
- "http://samba.org/ftp/tdb/${name}.tar.gz"
- "http://distfiles.exherbo.org/distfiles/${name}.tar.gz"
- ];
+ url = "mirror://samba/tdb/${name}.tar.gz";
sha256 = "0a8pa4ar7dxkbsgv1447av2rn35a1m6l1v2s9hgz3ccwni9wv1gm";
};
diff --git a/pkgs/development/libraries/tevent/default.nix b/pkgs/development/libraries/tevent/default.nix
index 978d106e91e..833fd69aa9c 100644
--- a/pkgs/development/libraries/tevent/default.nix
+++ b/pkgs/development/libraries/tevent/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
name = "tevent-0.9.22";
src = fetchurl {
- url = "http://samba.org/ftp/tevent/${name}.tar.gz";
+ url = "mirror://samba/tevent/${name}.tar.gz";
sha256 = "0myyi3lwsi6f3f0a5qw8rjpm2d5yf18pw4vljdwyi885l411sksl";
};
diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix
index 7eded3e4c5f..ce0b599c9e9 100644
--- a/pkgs/development/libraries/v8/default.nix
+++ b/pkgs/development/libraries/v8/default.nix
@@ -8,12 +8,12 @@ in
stdenv.mkDerivation rec {
name = "v8-${version}";
- version = "3.26.31.15";
+ version = "4.1.0.15";
src = fetchurl {
url = "https://commondatastorage.googleapis.com/chromium-browser-official/"
+ "${name}.tar.bz2";
- sha256 = "067pk6hr7wjx7yxhla5la0rnv51kf7837kfydzydjwapsbcx6m8l";
+ sha256 = "0ac6kkcjfsbs19i3m1asjx1c040qknj4n31wrjb6nz7mjsdmwg72";
};
patchPhase = ''
diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix
index f54d14e4fe9..25a9e4128bf 100644
--- a/pkgs/development/ocaml-modules/ezjsonm/default.nix
+++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix
@@ -1,13 +1,13 @@
{ stdenv, fetchzip, ocaml, findlib, jsonm, hex, sexplib, lwt }:
-let version = "0.3.1"; in
+let version = "0.4.1"; in
stdenv.mkDerivation {
name = "ocaml-ezjsonm-${version}";
src = fetchzip {
url = "https://github.com/mirage/ezjsonm/archive/${version}.tar.gz";
- sha256 = "0cz1v75j8j5y4vfcgylp5zaxiy7541qg6pm4wrgmvy6fmh82654f";
+ sha256 = "0cfjh8awajvw6kkmxr65dvri4k6h29pynxvk76a8c2lkixpsc095";
};
buildInputs = [ ocaml findlib ];
diff --git a/pkgs/development/ocaml-modules/re/default.nix b/pkgs/development/ocaml-modules/re/default.nix
index 1e4599bbf30..6fd7f2f2e5e 100644
--- a/pkgs/development/ocaml-modules/re/default.nix
+++ b/pkgs/development/ocaml-modules/re/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchgit, ocaml, findlib }:
stdenv.mkDerivation rec {
- name = "ocaml-re-1.2.2";
+ name = "ocaml-re-1.3.0";
src = fetchgit {
url = https://github.com/ocaml/ocaml-re.git;
rev = "refs/tags/${name}";
- sha256 = "1556i1zc6nrg4hxlvidllfhkjwl6n74biyjbvjlby8304n84jrk7";
+ sha256 = "1h8hz0dbjp8l39pva2js380c8bsm8rb4v326l62rkrdv8jvyh6bx";
};
buildInputs = [ ocaml findlib ];
diff --git a/pkgs/development/ocaml-modules/sqlite3/default.nix b/pkgs/development/ocaml-modules/sqlite3/default.nix
index 4111e264658..f6e289d183d 100644
--- a/pkgs/development/ocaml-modules/sqlite3/default.nix
+++ b/pkgs/development/ocaml-modules/sqlite3/default.nix
@@ -1,14 +1,14 @@
-{stdenv, fetchurl, sqlite, ocaml, findlib, pkgconfig}:
+{ stdenv, fetchurl, sqlite, ocaml, findlib, pkgconfig }:
stdenv.mkDerivation {
- name = "ocaml-sqlite3-2.0.7";
+ name = "ocaml-sqlite3-2.0.8";
src = fetchurl {
- url = https://github.com/mmottl/sqlite3-ocaml/archive/v2.0.7.tar.gz;
- sha256 = "04m7qz251m6l2b7slkgml2j8bnx60lwzbdbsv95vidwzqcwg7bdq";
+ url = https://github.com/mmottl/sqlite3-ocaml/releases/download/v2.0.8/sqlite3-ocaml-2.0.8.tar.gz;
+ sha256 = "1xalhjg5pbyad6b8cijq7fm5ss7ipjz68hzycggac58rnshwn2ix";
};
- buildInputs = [ocaml findlib pkgconfig sqlite];
+ buildInputs = [ ocaml findlib pkgconfig sqlite ];
createFindlibDestdir = true;
diff --git a/pkgs/development/tools/build-managers/leiningen/builder.sh b/pkgs/development/tools/build-managers/leiningen/builder.sh
index 885f3189acc..f3dd2bf2c93 100644
--- a/pkgs/development/tools/build-managers/leiningen/builder.sh
+++ b/pkgs/development/tools/build-managers/leiningen/builder.sh
@@ -19,5 +19,5 @@ patchShebangs $out
wrapProgram $out_bin \
--prefix PATH ":" "${rlwrap}/bin:${coreutils}/bin:${findutils}/bin" \
- --set LEIN_GPG ${gnupg}/bin/gpg \
+ --set LEIN_GPG ${gnupg1compat}/bin/gpg \
--set JAVA_CMD ${jdk}/bin/java
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index 00d8eade612..5fb7d1a6995 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, makeWrapper
-, coreutils, findutils, jdk, rlwrap, gnupg }:
+, coreutils, findutils, jdk, rlwrap, gnupg1compat }:
stdenv.mkDerivation rec {
pname = "leiningen";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
patches = [ ./lein-fix-jar-path.patch ];
- inherit rlwrap gnupg findutils coreutils jdk;
+ inherit rlwrap gnupg1compat findutils coreutils jdk;
builder = ./builder.sh;
diff --git a/pkgs/development/tools/etcdctl/default.nix b/pkgs/development/tools/etcdctl/default.nix
index a2236f6c843..ae2c06d5a22 100644
--- a/pkgs/development/tools/etcdctl/default.nix
+++ b/pkgs/development/tools/etcdctl/default.nix
@@ -1,26 +1,21 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
+with goPackages;
+
+buildGoPackage rec {
version = "0.4.5";
name = "etcdctl-${version}";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+ goPackagePath = "github.com/coreos/etcdctl";
+ src = fetchFromGitHub {
+ owner = "coreos";
+ repo = "etcdctl";
+ rev = "v${version}";
+ sha256 = "1kbri59ppil52v7s992q8r6i1zk9lac0s2w00z2lsgc9w1z59qs0";
};
- buildInputs = [ go ];
+ dontInstallSrc = true;
- buildPhase = ''
- export GOPATH=$src
- go build -v -o etcdctl github.com/coreos/etcdctl
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv etcdctl $out/bin
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "A simple command line client for etcd";
homepage = http://coreos.com/using-coreos/etcd/;
license = licenses.asl20;
diff --git a/pkgs/development/tools/etcdctl/deps.nix b/pkgs/development/tools/etcdctl/deps.nix
deleted file mode 100644
index c76a162f193..00000000000
--- a/pkgs/development/tools/etcdctl/deps.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/coreos/etcdctl";
- src = fetchFromGitHub {
- owner = "coreos";
- repo = "etcdctl";
- rev = "a1b38c93245542e340971189750baef7a55d306e";
- sha256 = "1kbri59ppil52v7s992q8r6i1zk9lac0s2w00z2lsgc9w1z59qs0";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/development/tools/gnulib/default.nix b/pkgs/development/tools/gnulib/default.nix
index f5aa7d896da..6c0883de065 100644
--- a/pkgs/development/tools/gnulib/default.nix
+++ b/pkgs/development/tools/gnulib/default.nix
@@ -1,7 +1,7 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation {
- name = "gnulib-0.1-263-g92b60e6";
+ name = "gnulib-0.1-357-gffe6467";
phases = ["unpackPhase" "installPhase"];
diff --git a/pkgs/development/tools/gocode/default.nix b/pkgs/development/tools/gocode/default.nix
index 30e4b79ee38..96dc059ae3f 100644
--- a/pkgs/development/tools/gocode/default.nix
+++ b/pkgs/development/tools/gocode/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
- name = "gocode";
+with goPackages;
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+buildGoPackage rec {
+ rev = "9b760fdb16f18eafbe0cd274527efd2bd89dfa78";
+ name = "gocode-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/nsf/gocode";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "nsf";
+ repo = "gocode";
+ sha256 = "0d1wl0x8jkaav6lcfzs70cr6gy0p88cbk5n3p19l6d0h9xz464ax";
};
- buildInputs = [ go ];
+ subPackages = [ "./" ];
- buildPhase = ''
- export GOPATH=$src
- go build -v -o gocode github.com/nsf/gocode
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv gocode $out/bin
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "An autocompletion daemon for the Go programming language";
diff --git a/pkgs/development/tools/gocode/deps.nix b/pkgs/development/tools/gocode/deps.nix
deleted file mode 100644
index 4fd0578496d..00000000000
--- a/pkgs/development/tools/gocode/deps.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/nsf/gocode";
- src = fetchFromGitHub {
- owner = "nsf";
- repo = "gocode";
- rev = "9b760fdb16f18eafbe0cd274527efd2bd89dfa78";
- sha256 = "0d1wl0x8jkaav6lcfzs70cr6gy0p88cbk5n3p19l6d0h9xz464ax";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/development/tools/golint/default.nix b/pkgs/development/tools/golint/default.nix
index 83dd50f8d4c..7be4f84680a 100644
--- a/pkgs/development/tools/golint/default.nix
+++ b/pkgs/development/tools/golint/default.nix
@@ -1,23 +1,22 @@
-{ stdenv, lib, go_1_3, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
- name = "golint";
+with goPackages;
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+buildGoPackage rec {
+ rev = "8ca23475bcb43213a55dd8210b69363f6b0e09c1";
+ name = "golint-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/golang/lint";
+
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "golang";
+ repo = "lint";
+ sha256 = "16wbykik6dw3x9s7iqi4ln8kvzsh3g621wb8mk4nfldw7lyqp3cs";
};
- buildInputs = [ go_1_3 ];
+ subPackages = [ "golint" ];
- buildPhase = ''
- export GOPATH=$src
- go build -v -o lint github.com/golang/lint/golint
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv lint $out/bin/golint
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "Linter for Go source code";
diff --git a/pkgs/development/tools/golint/deps.nix b/pkgs/development/tools/golint/deps.nix
deleted file mode 100644
index 47b8ade2298..00000000000
--- a/pkgs/development/tools/golint/deps.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/golang/lint";
- src = fetchFromGitHub {
- owner = "golang";
- repo = "lint";
- rev = "8ca23475bcb43213a55dd8210b69363f6b0e09c1";
- sha256 = "16wbykik6dw3x9s7iqi4ln8kvzsh3g621wb8mk4nfldw7lyqp3cs";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/development/tools/gotags/default.nix b/pkgs/development/tools/gotags/default.nix
index 5fec8c181a8..8ba61f793d7 100644
--- a/pkgs/development/tools/gotags/default.nix
+++ b/pkgs/development/tools/gotags/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
- name = "gotags";
+with goPackages;
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+buildGoPackage rec {
+ rev = "a60c6a1b171faedc44354bd437d965e5e3bdc220";
+ name = "gotags-${lib.strings.substring 0 7 rev}";
+
+ goPackagePath = "github.com/jstemmer/gotags";
+
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "jstemmer";
+ repo = "gotags";
+ sha256 = "1drbypby0isdmkq44jmlv59k3jrwvq2jciaccxx2qc2nnx444fkq";
};
- buildInputs = [ go ];
-
- buildPhase = ''
- export GOPATH=$src
- go build -v -o gotags github.com/jstemmer/gotags
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv gotags $out/bin
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "Ctags-compatible tag generator for Go";
diff --git a/pkgs/development/tools/gotags/deps.nix b/pkgs/development/tools/gotags/deps.nix
deleted file mode 100644
index 97e77bdd977..00000000000
--- a/pkgs/development/tools/gotags/deps.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/jstemmer/gotags";
- src = fetchFromGitHub {
- owner = "jstemmer";
- repo = "gotags";
- rev = "a60c6a1b171faedc44354bd437d965e5e3bdc220";
- sha256 = "1drbypby0isdmkq44jmlv59k3jrwvq2jciaccxx2qc2nnx444fkq";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix
index 65a92a05e0e..305ccdb8dd0 100644
--- a/pkgs/development/tools/misc/ccache/default.nix
+++ b/pkgs/development/tools/misc/ccache/default.nix
@@ -5,7 +5,7 @@ let
stdenv.mkDerivation {
name = "ccache-3.2.1";
src = fetchurl {
- url = http://samba.org/ftp/ccache/ccache-3.2.1.tar.xz;
+ url = mirror://samba/ccache/ccache-3.2.1.tar.xz;
sha256 = "17dxb0adha2bqzb2r8rcc3kl9mk7y6vrvlh181liivrc3m7g6al7";
};
diff --git a/pkgs/development/tools/misc/go-repo-root/default.nix b/pkgs/development/tools/misc/go-repo-root/default.nix
index c4eaf03a358..16520ee0457 100644
--- a/pkgs/development/tools/misc/go-repo-root/default.nix
+++ b/pkgs/development/tools/misc/go-repo-root/default.nix
@@ -1,28 +1,21 @@
-{ stdenv, lib, go, fetchgit, fetchhg, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
let
version = "0.0.1";
in
-with lib;
-stdenv.mkDerivation {
+with lib; with goPackages;
+buildGoPackage rec {
name = "go-repo-root-${version}";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchhg fetchFromGitHub;
+ goPackagePath = "github.com/cstrahan/go-repo-root";
+ src = fetchFromGitHub {
+ owner = "cstrahan";
+ repo = "go-repo-root";
+ rev = "90041e5c7dc634651549f96814a452f4e0e680f9";
+ sha256 = "1rlzp8kjv0a3dnfhyqcggny0ad648j5csr2x0siq5prahlp48mg4";
};
- buildInputs = [ go ];
-
- buildPhase = ''
- export GOPATH=$src
- go build -v -o go-repo-root github.com/cstrahan/go-repo-root
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- cp go-repo-root $out/bin
- '';
+ buildInputs = [ tools ];
meta = with lib; {
homepage = "https://github.com/cstrahan/go-repo-root";
diff --git a/pkgs/development/tools/misc/go-repo-root/deps.nix b/pkgs/development/tools/misc/go-repo-root/deps.nix
deleted file mode 100644
index 585e9955ab2..00000000000
--- a/pkgs/development/tools/misc/go-repo-root/deps.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ stdenv, lib, fetchFromGitHub, fetchhg }:
-
-let
- goDeps = [
- {
- root = "code.google.com/p/go.net";
- src = fetchhg {
- url = "http://code.google.com/p/go.net";
- rev = "ad01a6fcc8a19d3a4478c836895ffe883bd2ceab";
- sha256 = "0s0aa8hxrpggn6wwx4x591k6abvawrmhsk8ji327pgj08fdy3ahq";
- };
- }
- {
- root = "code.google.com/p/go.text";
- src = fetchhg {
- url = "http://code.google.com/p/go.text";
- rev = "12288f41f508af9490f03a9780afa295c9b0a063";
- sha256 = "17kr0h79pznb3nn5znbh1d7dinmqjwvg5iqqk4l05569q50gqwww";
- };
- }
- {
- root = "code.google.com/p/go.tools";
- src = fetchhg {
- url = "http://code.google.com/p/go.tools";
- rev = "140fcaadc5860b1a014ec69fdeec807fe3b787e8";
- sha256 = "1vgz4kxy0p56qh6pfbs2c68156hakgx4cmrci9jbg7lnrdaz4y56";
- };
- }
- {
- root = "code.google.com/p/goauth2";
- src = fetchhg {
- url = "http://code.google.com/p/goauth2";
- rev = "afe77d958c701557ec5dc56f6936fcc194d15520";
- sha256 = "0xgkgcb97hv2rvzvh21rvydq5cc83j7sdsdb1chrymq8k7l4dzc1";
- };
- }
- {
- root = "code.google.com/p/google-api-go-client";
- src = fetchhg {
- url = "http://code.google.com/p/google-api-go-client";
- rev = "e1c259484b495133836706f46319f5897f1e9bf6";
- sha256 = "051dqhjhp3bz2xp7lv9v60xlmphbxj1vyc46wg8v74yjvqvsiwzd";
- };
- }
- {
- root = "github.com/cstrahan/go-repo-root";
- src = fetchFromGitHub {
- owner = "cstrahan";
- repo = "go-repo-root";
- rev = "90041e5c7dc634651549f96814a452f4e0e680f9";
- sha256 = "1rlzp8kjv0a3dnfhyqcggny0ad648j5csr2x0siq5prahlp48mg4";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/development/tools/misc/objconv/default.nix b/pkgs/development/tools/misc/objconv/default.nix
new file mode 100644
index 00000000000..154d66705d2
--- /dev/null
+++ b/pkgs/development/tools/misc/objconv/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+ name = "objconv-1.0";
+
+ src = fetchFromGitHub {
+ owner = "vertis";
+ repo = "objconv";
+ rev = "01da9219e684360fd04011599805ee3e699bae96";
+ sha256 = "1by2bbrampwv0qy8vn4hhs49rykczyj7q8g373ym38da3c95bym2";
+ };
+
+ buildPhase = "c++ -o objconv -O2 src/*.cpp";
+
+ installPhase = "mkdir -p $out/bin && mv objconv $out/bin";
+}
diff --git a/pkgs/development/tools/misc/unifdef/default.nix b/pkgs/development/tools/misc/unifdef/default.nix
index f4b38f4f7ab..6e14673701c 100644
--- a/pkgs/development/tools/misc/unifdef/default.nix
+++ b/pkgs/development/tools/misc/unifdef/default.nix
@@ -1,24 +1,27 @@
{ fetchurl, stdenv }:
-stdenv.mkDerivation {
- name = "unifdef-1.0";
+stdenv.mkDerivation rec {
+ name = "unifdef-2.6";
src = fetchurl {
- url = http://www.cs.cmu.edu/~ajw/public/dist/unifdef-1.0.tar.gz;
- sha256 = "1bcxq7qgf6r98m6l277fx6s0gn9sr4vn7f3s0r5mwx79waqk0k6i";
+ url = "https://github.com/fanf2/unifdef/archive/${name}.tar.gz";
+ sha256 = "1p5wr5ms9w8kijy9h7qs1mz36dlavdj6ngz2bks588w7a20kcqxj";
};
- buildPhase = ''
- make unifdef
+ postUnpack = ''
+ substituteInPlace $sourceRoot/unifdef.c \
+ --replace '#include "version.h"' ""
+
+ substituteInPlace $sourceRoot/Makefile \
+ --replace "unifdef.c: version.h" "unifdef.c:"
'';
- installPhase = ''
- mkdir -p $out/bin
- cp unifdef $out/bin
+ preBuild = ''
+ unset HOME
+ export DESTDIR=$out
'';
meta = {
- description = "useful for removing #ifdef'ed lines from a file while otherwise leaving the file alone";
-
+ description = "Selectively remove C preprocessor conditionals";
};
}
diff --git a/pkgs/development/tools/sauce-connect/default.nix b/pkgs/development/tools/sauce-connect/default.nix
new file mode 100644
index 00000000000..e41b45dff68
--- /dev/null
+++ b/pkgs/development/tools/sauce-connect/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, lib, fetchurl, zlib }:
+
+with lib;
+
+stdenv.mkDerivation rec {
+ name = "sauce-connect-${version}";
+ version = "4.3.6";
+
+ src = fetchurl (
+ if stdenv.system == "x86_64-linux" then {
+ url = "https://saucelabs.com/downloads/sc-${version}-linux.tar.gz";
+ sha1 = "0d7d2dc12766ac137e62a3e4dad3025b590f9782";
+ } else {
+ url = "https://saucelabs.com/downloads/sc-${version}-linux32.tar.gz";
+ sha1 = "ee2c3002eae3b29df801a2ac1db77bb5f1c97bcc";
+ }
+ );
+
+ patchPhase = ''
+ patchelf \
+ --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+ --set-rpath "$out/lib:${makeLibraryPath [zlib]}" \
+ bin/sc
+ '';
+
+ installPhase = ''
+ mkdir -p $out
+ cp -r * $out
+ '';
+
+ dontStrip = true;
+
+ meta = {
+ description = "A secure tunneling app for executing tests securely when testing behind firewalls";
+ license = "unfree";
+ homepage = https://docs.saucelabs.com/reference/sauce-connect/;
+ maintainers = with maintainers; [offline];
+ platforms = with platforms; platforms.linux;
+ };
+}
diff --git a/pkgs/development/web/nodejs/build-node-package.nix b/pkgs/development/web/nodejs/build-node-package.nix
index af997f19e8d..e385c0d40c4 100644
--- a/pkgs/development/web/nodejs/build-node-package.nix
+++ b/pkgs/development/web/nodejs/build-node-package.nix
@@ -83,6 +83,9 @@ let
# Some version specifiers (latest, unstable, URLs, file paths) force NPM
# to make remote connections or consult paths outside the Nix store.
# The following JavaScript replaces these by * to prevent that:
+ # Also some packages require a specific npm version because npm may
+ # resovle dependencies differently, but npm is not used by Nix for dependency
+ # reslution, so these requirements are dropped.
(
cat <" ];
+ };
+} // drvParams)
diff --git a/pkgs/misc/emulators/cdemu/client.nix b/pkgs/misc/emulators/cdemu/client.nix
new file mode 100644
index 00000000000..e590cf60ac0
--- /dev/null
+++ b/pkgs/misc/emulators/cdemu/client.nix
@@ -0,0 +1,15 @@
+{ callPackage, python, dbus_python, intltool, makeWrapper }:
+let pkg = import ./base.nix {
+ version = "3.0.0";
+ pkgName = "cdemu-client";
+ pkgSha256 = "125f6j7c52a0c7smbx323vdpwhx24yl0vglkiyfcbm92fjji14rm";
+};
+in callPackage pkg {
+ buildInputs = [ python dbus_python intltool makeWrapper ];
+ drvParams = {
+ postFixup = ''
+ wrapProgram $out/bin/cdemu \
+ --set PYTHONPATH "$PYTHONPATH"
+ '';
+ };
+}
diff --git a/pkgs/misc/emulators/cdemu/daemon.nix b/pkgs/misc/emulators/cdemu/daemon.nix
new file mode 100644
index 00000000000..cc7a619b14f
--- /dev/null
+++ b/pkgs/misc/emulators/cdemu/daemon.nix
@@ -0,0 +1,9 @@
+{ callPackage, glib, libao }:
+let pkg = import ./base.nix {
+ version = "3.0.2";
+ pkgName = "cdemu-daemon";
+ pkgSha256 = "01jg9b1nkqrbh6binfcbyraz83s9yjavgwi3y4w1bmqg5qlhv6lc";
+};
+in callPackage pkg {
+ buildInputs = [ glib libao (callPackage ./libmirage.nix {}) ];
+}
diff --git a/pkgs/misc/emulators/cdemu/gui.nix b/pkgs/misc/emulators/cdemu/gui.nix
new file mode 100644
index 00000000000..b3d7f6d23ec
--- /dev/null
+++ b/pkgs/misc/emulators/cdemu/gui.nix
@@ -0,0 +1,18 @@
+{ callPackage, python, pygobject3, gtk3, glib, libnotify, intltool, makeWrapper, gobjectIntrospection, gnome3, gdk_pixbuf, librsvg }:
+let pkg = import ./base.nix {
+ version = "3.0.0";
+ pkgName = "gcdemu";
+ pkgSha256 = "1m5ab325r586v2y2d93a817phn6wck67y5mfkf948mph40ks0mqk";
+};
+in callPackage pkg {
+ buildInputs = [ python pygobject3 gtk3 glib libnotify intltool makeWrapper gnome3.gnome_icon_theme_symbolic gnome3.gnome_icon_theme gdk_pixbuf librsvg ];
+ drvParams = {
+ postFixup = ''
+ wrapProgram $out/bin/gcdemu \
+ --set PYTHONPATH "$PYTHONPATH" \
+ --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
+ --prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+ '';
+ # TODO AppIndicator
+ };
+}
diff --git a/pkgs/misc/emulators/cdemu/libmirage.nix b/pkgs/misc/emulators/cdemu/libmirage.nix
new file mode 100644
index 00000000000..f6ae5d132fc
--- /dev/null
+++ b/pkgs/misc/emulators/cdemu/libmirage.nix
@@ -0,0 +1,9 @@
+{ callPackage, glib, libsndfile, zlib, bzip2, lzma, libsamplerate }:
+let pkg = import ./base.nix {
+ version = "3.0.3";
+ pkgName = "libmirage";
+ pkgSha256 = "03idg94h5qhmnnc8g9dw8yqf14yv2paph5n77dfmg925f3z70nyn";
+};
+in callPackage pkg {
+ buildInputs = [ glib libsndfile zlib bzip2 lzma libsamplerate ];
+}
diff --git a/pkgs/misc/emulators/cdemu/vhba.nix b/pkgs/misc/emulators/cdemu/vhba.nix
new file mode 100644
index 00000000000..d4596be03a6
--- /dev/null
+++ b/pkgs/misc/emulators/cdemu/vhba.nix
@@ -0,0 +1,12 @@
+{ stdenv, fetchurl, kernel }:
+let version = "20140928";
+in stdenv.mkDerivation {
+ name = "vhba-${version}";
+ src = fetchurl {
+ url = "http://downloads.sourceforge.net/cdemu/vhba-module-${version}.tar.bz2";
+ sha256 = "18jmpg2kpx87f32b8aprr1pxla9dlhf901rkj1sp3ammf94nxxa5";
+ };
+ preBuild = ''
+ makeFlags="KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build INSTALL_MOD_PATH=$out";
+ '';
+}
diff --git a/pkgs/misc/emulators/wine/unstable.nix b/pkgs/misc/emulators/wine/unstable.nix
index b52957963c6..db1082f7989 100644
--- a/pkgs/misc/emulators/wine/unstable.nix
+++ b/pkgs/misc/emulators/wine/unstable.nix
@@ -7,12 +7,12 @@ assert stdenv.isLinux;
assert stdenv.cc.cc.isGNU or false;
let
- version = "1.7.35";
+ version = "1.7.36";
name = "wine-${version}";
src = fetchurl {
url = "mirror://sourceforge/wine/${name}.tar.bz2";
- sha256 = "1yqwwfapv7vdhmdcnhnl2c4iqaqn1xwib4zfyv9ndhq2ld9gcbpb";
+ sha256 = "1gg3xzccbsxfmvp7r09mq7q9904p7h97nr3pdkk5l1f6n8xbzai1";
};
gecko = fetchurl {
diff --git a/pkgs/misc/jackaudio/default.nix b/pkgs/misc/jackaudio/default.nix
index 4f9f071094b..9152e8a7202 100644
--- a/pkgs/misc/jackaudio/default.nix
+++ b/pkgs/misc/jackaudio/default.nix
@@ -6,13 +6,13 @@ assert firewireSupport -> ffado != null;
stdenv.mkDerivation rec {
name = "jack2-${version}";
- version = "1.9.9.5";
+ version = "1.9.10";
src = fetchurl {
urls = [
- https://dl.dropbox.com/u/28869550/jack-1.9.9.5.tar.bz2
+ https://github.com/jackaudio/jack2/archive/v1.9.10.tar.gz
];
- sha256 = "1ggba69jsfg7dmjzlyqz58y2wa92lm3vwdy4r15bs7mvxb65mvv5";
+ sha256 = "03b0iiyk3ng3vh5s8gaqwn565vik7910p56mlbk512bw3dhbdwc8";
};
buildInputs =
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index d0809954233..368c08c8b59 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -527,14 +527,14 @@ rec {
};
};
- YouCompleteMe = addRtp "${rtpPath}/youcompleteme" (stdenv.mkDerivation {
+ YouCompleteMe = addRtp "${rtpPath}/youcompleteme" (stdenv.mkDerivation rec {
src = fetchgit {
+ rev = "035b6ca862da3bba0ab8aad388a485758311a464";
url = "https://github.com/Valloric/YouCompleteMe.git";
- rev = "87b42c689391b69968950ae99c3aaacf2e14c329";
- sha256 = "1f3pywv8bsqyyakvyarg7z9m73gmvp1lfbfp2f2jj73jmmlzb2kv";
+ sha256 = "9cd8fc8bb9b35e7a164d62fa8e3a1bd3be7e18f4d46c78b5827612f32b9541d5";
};
- name = "vimplugin-youcompleteme-2014-10-06";
+ name = "vimplugin-youcompleteme-2015-02-05";
buildInputs = [ python cmake llvmPackages.clang ];
@@ -613,6 +613,7 @@ rec {
syntastic = Syntastic;
webapi-vim = WebAPI;
yankring = YankRing;
+ "sourcemap.vim" = sourcemap;
### The following derivations are generated by nix#ExportPluginsForNix
@@ -636,8 +637,8 @@ rec {
name = "Gist";
src = fetchgit {
url = "git://github.com/mattn/gist-vim";
- rev = "d609d93472db9cf45bd701bebe51adc356631547";
- sha256 = "e5cabc03d5015c589a32f11c654ab9fbd1e91d26ba01f4b737685be81852c511";
+ rev = "8a567b823163d349406dffaff4519e0bac10eade";
+ sha256 = "3f1b701529808bfbd000d377d49448d0ddd7e4e0cbf54fdc83fc5b676f567c88";
};
dependencies = [];
@@ -676,8 +677,8 @@ rec {
name = "Supertab";
src = fetchgit {
url = "git://github.com/ervandew/supertab";
- rev = "b0ca47f4570385043f270f9278ba6d50d1d2fa00";
- sha256 = "24e3e63096a6b6f7f00d985ae6f31377154566d6483fb81572a474053fa43082";
+ rev = "454c06e25680799b6f408622d6bfbaf920ace825";
+ sha256 = "7ec13edc3338281ea1eb2fbae9a79b947fb3b490b684f8b4cc0ff9252845aa01";
};
dependencies = [];
@@ -686,8 +687,8 @@ rec {
name = "Syntastic";
src = fetchgit {
url = "git://github.com/scrooloose/syntastic";
- rev = "30b4ce3411f539f695ab8def7fc69c2f835eb8fe";
- sha256 = "c61e2bcd4455525ec2520d75e7b204e39757731f85f5f72ed179f2068ac33700";
+ rev = "7d9aec0bee91be677c38b94ff222d02aa732fe52";
+ sha256 = "9175783f6ea7ca148c156d9152ab59741da8e9ddede56c1ef9058a1856815723";
};
dependencies = [];
@@ -706,8 +707,8 @@ rec {
name = "Tagbar";
src = fetchgit {
url = "git://github.com/majutsushi/tagbar";
- rev = "f9c5f24576e82aae5ab8a5480f1ae48615354e40";
- sha256 = "e1ff486f27c0980fee959db69da5617c4653910504b20aeabe87037a8b68712a";
+ rev = "00dfa82b00e734b453153564efeec933c48087f0";
+ sha256 = "29305a2eb45ca104046b97557e9dbd599611564c533e5493de2fe467913af635";
};
dependencies = [];
@@ -736,8 +737,8 @@ rec {
name = "UltiSnips";
src = fetchgit {
url = "git://github.com/sirver/ultisnips";
- rev = "b26f2c97b7d9be708eef0b4ba0cdfb53c868d9c3";
- sha256 = "094055f6255d207c04e26f15ee15019eb9d4b1710c24061c7f8074d23583b9b2";
+ rev = "d693259abb2e28f70abf760d395fcf526d5272ee";
+ sha256 = "541e47c9ae5b1e18072f5abfc64eadca8ddfe0271b251f1ddadd15ab98d82600";
};
dependencies = [];
@@ -746,8 +747,8 @@ rec {
name = "VimOutliner";
src = fetchgit {
url = "git://github.com/vimoutliner/vimoutliner";
- rev = "469f49b5f28bc2b838a80568c9413f690cc3ffb6";
- sha256 = "38f88f9bbc43622809404c0054a7a4e9b2214166f3b2784511e4fda05bcb4713";
+ rev = "7c995f973c54b0d026137615af28059890edb197";
+ sha256 = "9d1526ec99904fd2ccfdb4dd6763b4cd04048cb74bb7a0a4c9b4a7b1f5d75cb5";
};
dependencies = [];
@@ -801,8 +802,8 @@ rec {
name = "extradite";
src = fetchgit {
url = "git://github.com/int3/vim-extradite";
- rev = "af4f3a51b6b654d655121b93c0cd9d8fe9a0c85d";
- sha256 = "d1d29cfbc654134be383747f2cd6b14b7a87de75f997af6a041f14d7ef61ade6";
+ rev = "a1dc4b63befd5032e65a0c94e7257d4636aa6a3f";
+ sha256 = "94e05bbe36c9d4cee9832530531eedff0da509d5a0a52beee4e524fd4ad96714";
};
dependencies = [];
@@ -811,8 +812,8 @@ rec {
name = "fugitive";
src = fetchgit {
url = "git://github.com/tpope/vim-fugitive";
- rev = "2c8461db084d205903a792a23163faa546f143c9";
- sha256 = "c2569877958fcc5d181cc5b9e26d6b0b022c30aa9ce0908dd96131b44eb90729";
+ rev = "933f6a1e1df549564062f936bd1c836d28cf1676";
+ sha256 = "f8b43c6f0513a814d6ddc735c2f668b0b1f187bbb0a312a82276c4501ef2a908";
};
dependencies = [];
@@ -831,10 +832,10 @@ rec {
name = "github-MarcWeber-vim-addon-vim2nix";
src = fetchgit {
url = "git://github.com/MarcWeber/vim-addon-vim2nix";
- rev = "1aef89c05ef199fccff34be807ed7eefd914ca41";
- sha256 = "b078fd91cf978ee4cf7002630a83d3381ad781fa99e3ce118185b7f0f417ba2a";
- };
- dependencies = [];
+ rev = "5507ee4db7599873d72fab035c752dea245e2cd4";
+ sha256 = "1rqvgg3wq1grkh4nfj2wqmjg7a9r4hd82m89s9520kyzvldp8sgx";
+ };
+ dependencies = ["vim-addon-manager"];
};
"matchit.zip" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
@@ -892,24 +893,33 @@ rec {
name = "rust";
src = fetchgit {
url = "git://github.com/wting/rust.vim";
- rev = "0fd423990cfa69336fb6c1d5d58aa2091e7b4e76";
- sha256 = "21f3decedb24478bc391152bf26a9b88d9e4fa5fcdbdb8a558d95b6bb7be2ff1";
+ rev = "2450ecf3091cc7c2711ca9f00eae8e3bedd04376";
+ sha256 = "9d2e8b2c06d6100f9a1e76644313d457a2ff955241d8f712de6fddd0b7f5c4ee";
};
dependencies = [];
};
+ "sensible" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "sensible";
+ src = fetchgit {
+ url = "git://github.com/tpope/vim-sensible";
+ rev = "b30dcf387af977acfa21732592bfca05598b2188";
+ sha256 = "6a9fc68c3eb0ee500ac59bdbc2c48d98e88a2936ee544f7203fa1a0296002b5f";
+ };
+ dependencies = [];
+ };
"snipmate" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
name = "snipmate";
src = fetchgit {
url = "git://github.com/garbas/vim-snipmate";
- rev = "8cb6c3ebe267873dc5abb9a36305c75d9564dea4";
- sha256 = "f4692709724a50ff14ccdd5692d90ebdb950417267adb2228f5ce6006471bad4";
+ rev = "22e3bb0133ed6e2acbc630a49f0a780487f56fd5";
+ sha256 = "ec4a34d60a3930154342d37116baca5ca135881582261fa2a5136b298650ebe0";
};
dependencies = ["vim-addon-mw-utils" "tlib"];
};
- "sourcemap.vim" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
- name = "sourcemap.vim";
+ "sourcemap" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "sourcemap";
src = fetchgit {
url = "git://github.com/chikatoike/sourcemap.vim";
rev = "0dd82d40faea2fdb0771067f46c01deb41610ba1";
@@ -922,8 +932,8 @@ rec {
name = "surround";
src = fetchgit {
url = "git://github.com/tpope/vim-surround";
- rev = "fa433e0b7330753688f715f3be5d10dc480f20e5";
- sha256 = "5f01daf72d23fc065f4e4e8eac734275474f32bfa276a9d90ce0d20dfe24058d";
+ rev = "6afb2d90e3b3a637da093e1022ffaa232a2aeafd";
+ sha256 = "775e8d58469840f1cf5d69d3c92914fcca9ace6e351708e491fcc82fd2fa1269";
};
dependencies = [];
@@ -932,8 +942,18 @@ rec {
name = "table-mode";
src = fetchgit {
url = "git://github.com/dhruvasagar/vim-table-mode";
- rev = "e1258702126463b30e32a8a4cd1ba28689a93ef8";
- sha256 = "2b8ac53a0a346f27db617dade3bd3e4da7d5b560a99c636da7d27cf5622a6690";
+ rev = "3096a26db437bfb6e66798bfbf45e7549ba767d9";
+ sha256 = "78e63f47cdae63507fc567e3c60c214a794be8d072a6b83a980c7bb58396829c";
+ };
+ dependencies = [];
+
+ };
+ "tlib" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "tlib";
+ src = fetchgit {
+ url = "git://github.com/tomtom/tlib_vim";
+ rev = "9e629767e5a91ede057d07f8754326e68c92a692";
+ sha256 = "8b435939fb1a439cc89734d3d7a38294217716c5b46b1402486e947e6ae97bb6";
};
dependencies = [];
@@ -942,11 +962,21 @@ rec {
name = "undotree";
src = fetchgit {
url = "git://github.com/mbbill/undotree";
- rev = "88e4a9bc2f7916f24441faf884853a01ba11d294";
- sha256 = "ad55b88db051f57d0c7ddc226a7b7778daab58fa67dc8ac1d78432c0e7d38520";
+ rev = "42000e2a7140843030f517de9d4923dd5fa40458";
+ sha256 = "9a9a89ccfa69f41ba24ec8f2be366f469e0497cef735ad01ec0f22fef5fcc293";
};
dependencies = [];
+ };
+ "vim-addon-actions" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-actions";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-actions";
+ rev = "a5d20500fb8812958540cf17862bd73e7af64936";
+ sha256 = "d2c3eb7a1f29e7233c6fcf3b02d07efebe8252d404ee593419ad399a5fdf6383";
+ };
+ dependencies = ["vim-addon-mw-utils" "tlib"];
+
};
"vim-addon-async" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
name = "vim-addon-async";
@@ -957,6 +987,16 @@ rec {
};
dependencies = ["vim-addon-signs"];
+ };
+ "vim-addon-background-cmd" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-background-cmd";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-background-cmd";
+ rev = "e99076519139b959edce0581b0f31207a5ec7c64";
+ sha256 = "524795221ae727635fe52ead47dff452d2dd48900917da609426ea399a2eceeb";
+ };
+ dependencies = ["vim-addon-mw-utils"];
+
};
"vim-addon-commenting" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
name = "vim-addon-commenting";
@@ -967,6 +1007,36 @@ rec {
};
dependencies = [];
+ };
+ "vim-addon-completion" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-completion";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-completion";
+ rev = "80f717d68df5b0d7b32228229ddfd29c3e86e435";
+ sha256 = "c8c0af8760f2622c4caef371482916861f68a850eb6a7cd746fe8c9ab405c859";
+ };
+ dependencies = ["tlib"];
+
+ };
+ "vim-addon-errorformats" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-errorformats";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-errorformats";
+ rev = "dcbb203ad5f56e47e75fdee35bc92e2ba69e1d28";
+ sha256 = "a1260206545d5ae17f2e6b3319f5cf1808b74e792979b1c6667d75974cc53f95";
+ };
+ dependencies = [];
+
+ };
+ "vim-addon-goto-thing-at-cursor" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-goto-thing-at-cursor";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-goto-thing-at-cursor";
+ rev = "f052e094bdb351829bf72ae3435af9042e09a6e4";
+ sha256 = "34658ac99d9a630db9c544b3dfcd2c3df69afa5209e27558cc022b7afc2078ea";
+ };
+ dependencies = ["tlib"];
+
};
"vim-addon-local-vimrc" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
name = "vim-addon-local-vimrc";
@@ -982,8 +1052,8 @@ rec {
name = "vim-addon-manager";
src = fetchgit {
url = "git://github.com/MarcWeber/vim-addon-manager";
- rev = "345c4b357843b14f4622f212e4d1e0e3f8a7f08a";
- sha256 = "d8fba7dd089f4a919f91dc284537880d7a841c26dacb503ea08b15dce35e7626";
+ rev = "fda9d2f4522024aa8bd8b8305e6a71c4a4a28c07";
+ sha256 = "1gp7w6wnp1cnvq7lhb6kkqrp315mxzwsc4sy1bxz1ih1rjdxmdd3";
};
dependencies = [];
@@ -1032,8 +1102,18 @@ rec {
name = "vim-addon-php-manual";
src = fetchgit {
url = "git://github.com/MarcWeber/vim-addon-php-manual";
- rev = "e09ccdce3d2132771d0bd32884553207cc7122d0";
- sha256 = "b2f44be3a1ceca9de7789ea9b5fd36035b720ea529f4301f3771b010d1e453c2";
+ rev = "5f9810dd1f6e9f36a45f637ae6260ccff09256ff";
+ sha256 = "3942eb6a7191c308beab240e91c99ee4e2c52e2d672503d46f98312e823b86cd";
+ };
+ dependencies = [];
+
+ };
+ "vim-addon-signs" = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+ name = "vim-addon-signs";
+ src = fetchgit {
+ url = "git://github.com/MarcWeber/vim-addon-signs";
+ rev = "17a49f293d18174ff09d1bfff5ba86e8eee8e8ae";
+ sha256 = "a9c03a32e758d51106741605188cb7f00db314c73a26cae75c0c9843509a8fb8";
};
dependencies = [];
@@ -1082,8 +1162,8 @@ rec {
name = "vim-airline";
src = fetchgit {
url = "git://github.com/bling/vim-airline";
- rev = "4a2208821e1d334c4d3cdf66cd1fd0968755e16a";
- sha256 = "ea2d8bb459ae2cc378a46409c7e86db9b1cc8349bd3d2451c9a5db8ae9c8ea1d";
+ rev = "446397e006d8cba9e1ac38d8c656ba39218c139b";
+ sha256 = "c1f3ae483616318574e892b1cbaac2e08b0b90fd7348d7de745984c764b21119";
};
dependencies = [];
@@ -1102,8 +1182,8 @@ rec {
name = "vim-easy-align";
src = fetchgit {
url = "git://github.com/junegunn/vim-easy-align";
- rev = "246139c57c4a82a9787974165dfeb7bee7dacc9c";
- sha256 = "9205b94f985f633b5cbdde63a4c5a36ce5c4f92f8a89c124ff4ba66458f98cbf";
+ rev = "c62d124be614de65922b15d468c4049d1eee9353";
+ sha256 = "868bd5a0405a7611e020fe7692a078ca72562674b6d9a404d2d83f665af96aee";
};
dependencies = [];
@@ -1112,8 +1192,8 @@ rec {
name = "vim-gitgutter";
src = fetchgit {
url = "git://github.com/airblade/vim-gitgutter";
- rev = "88c7916d2f653e13cbbcd2c461c83c403d09ca46";
- sha256 = "df56b3cd81a71cd3a4286d878a4cfd7b53c3b7b09f3cf45fa41653050315056c";
+ rev = "e5efbaffc066ababc9ae0d689c7050fa5d6591bd";
+ sha256 = "78e7db87f4f677ede5aad758131d060f4fb6017cf716aa6adc0736e92934d42d";
};
dependencies = [];
@@ -1142,8 +1222,8 @@ rec {
name = "vim-signature";
src = fetchgit {
url = "git://github.com/kshenoy/vim-signature";
- rev = "598a9275668d772ca18cc052246b96edcbe61de0";
- sha256 = "1c410aaec24840b0e0566cd6e6df100ca3c7fb83d92337efdfc359494b6c49f8";
+ rev = "b4ac4f38528313456f98b1a50722cfc9a06bfc45";
+ sha256 = "c065eb81669fd76a8bf6d19e220c85ad07ede73e6a9b3dd12634611146303675";
};
dependencies = [];
@@ -1152,8 +1232,8 @@ rec {
name = "vim-snippets";
src = fetchgit {
url = "git://github.com/honza/vim-snippets";
- rev = "436038094a27ed635aaa11ebf50ccddc2d4b9328";
- sha256 = "1db34df31ff1526394de42997e21b47cea152dc2c014dbbb1f3bbeb8986820e1";
+ rev = "27906a3754f0ac292d0915a4075bff22db53fa3e";
+ sha256 = "fce0a62e78f031a00da0c7863d51d9f19f826bdc01c56cf5fc959132db29b6a6";
};
dependencies = [];
@@ -1194,5 +1274,4 @@ rec {
};
-
}
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index f685f6743be..c69f9122356 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -12,7 +12,7 @@
"matchit.zip"
"vim-addon-xdebug"
"vim-addon-php-manual"
-"sourcemap.vim"
+"sourcemap"
"vim-iced-coffee-script"
"ctrlp"
"commentary"
@@ -53,3 +53,4 @@
"vim-addon-manager"
"vim-addon-nix"
"github:MarcWeber/vim-addon-vim2nix"
+"sensible"
diff --git a/pkgs/misc/xosd/default.nix b/pkgs/misc/xosd/default.nix
index 54538be84b4..b7ab6c9a0fe 100644
--- a/pkgs/misc/xosd/default.nix
+++ b/pkgs/misc/xosd/default.nix
@@ -1,19 +1,21 @@
{ stdenv, fetchurl, libX11, libXext, libXt, xextproto, xproto }:
stdenv.mkDerivation rec {
- pname = "xosd";
- version = "2.2.12";
-
- name = "${pname}-${version}";
+ name = "xosd-${version}";
+ version = "2.2.14";
src = fetchurl {
- url = "http://ignavus.net/${name}.tar.gz";
- sha256 = "7d4ae8e1a6dbd7743af3b1cdc85144e2de26abe6daec25f4bd74bf311774df08";
+ url = "mirror://sourceforge/libxosd/${name}.tar.gz";
+ sha256 = "025m7ha89q29swkc7s38knnbn8ysl24g2h5s7imfxflm91psj7sg";
};
buildInputs = [ libX11 libXext libXt xextproto xproto ];
- meta = {
+ meta = with stdenv.lib; {
description = "Displays text on your screen";
+ homepage = http://sourceforge.net/projects/libxosd;
+ license = licenses.gpl2;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ pSub ];
};
}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CF/add-cf-initialize.patch b/pkgs/os-specific/darwin/apple-source-releases/CF/add-cf-initialize.patch
new file mode 100644
index 00000000000..46c230cfd1d
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CF/add-cf-initialize.patch
@@ -0,0 +1,18 @@
+--- CF-855.17/CFRuntime.c 2014-11-26 21:29:48.000000000 -0800
++++ CF-855.17/CFRuntime.c.new 2014-11-26 21:30:01.000000000 -0800
+@@ -756,6 +756,7 @@
+ extern void __CFErrorInitialize(void);
+ extern void __CFTreeInitialize(void);
+ extern void __CFURLInitialize(void);
++extern void __CFPreferencesDomainInitialize(void);
+ #if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED || DEPLOYMENT_TARGET_EMBEDDED_MINI
+ extern void __CFMachPortInitialize(void);
+ #endif
+@@ -1015,6 +1016,7 @@
+ __CFErrorInitialize();
+ __CFTreeInitialize();
+ __CFURLInitialize();
++ __CFPreferencesDomainInitialize();
+
+ #if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED || DEPLOYMENT_TARGET_WINDOWS
+ __CFBundleInitialize();
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CF/add-cfmachport.patch b/pkgs/os-specific/darwin/apple-source-releases/CF/add-cfmachport.patch
new file mode 100644
index 00000000000..a1018d389c1
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CF/add-cfmachport.patch
@@ -0,0 +1,22 @@
+--- CF-855.17/CoreFoundation.h 2015-01-03 00:17:41.000000000 -0500
++++ CF-855.17/CoreFoundation.h.new 2015-01-03 00:18:35.000000000 -0500
+@@ -72,6 +72,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+
+--- CF-855.17/Makefile 2015-01-03 00:32:52.000000000 -0500
++++ CF-855.17/Makefile.new 2015-01-03 00:33:07.000000000 -0500
+@@ -9,7 +9,7 @@
+ HFILES = $(wildcard *.h)
+ INTERMEDIATE_HFILES = $(addprefix $(OBJBASE)/CoreFoundation/,$(HFILES))
+
+-PUBLIC_HEADERS=CFArray.h CFBag.h CFBase.h CFBinaryHeap.h CFBitVector.h CFBundle.h CFByteOrder.h CFCalendar.h CFCharacterSet.h CFData.h CFDate.h CFDateFormatter.h CFDictionary.h CFError.h CFLocale.h CFMessagePort.h CFNumber.h CFNumberFormatter.h CFPlugIn.h CFPlugInCOM.h CFPreferences.h CFPropertyList.h CFRunLoop.h CFSet.h CFSocket.h CFStream.h CFString.h CFStringEncodingExt.h CFTimeZone.h CFTree.h CFURL.h CFURLAccess.h CFUUID.h CFUserNotification.h CFXMLNode.h CFXMLParser.h CFAvailability.h CFUtilities.h CoreFoundation.h
++PUBLIC_HEADERS=CFArray.h CFBag.h CFBase.h CFBinaryHeap.h CFBitVector.h CFBundle.h CFByteOrder.h CFCalendar.h CFCharacterSet.h CFData.h CFDate.h CFDateFormatter.h CFDictionary.h CFError.h CFLocale.h CFMachPort.h CFMessagePort.h CFNumber.h CFNumberFormatter.h CFPlugIn.h CFPlugInCOM.h CFPreferences.h CFPropertyList.h CFRunLoop.h CFSet.h CFSocket.h CFStream.h CFString.h CFStringEncodingExt.h CFTimeZone.h CFTree.h CFURL.h CFURLAccess.h CFUUID.h CFUserNotification.h CFXMLNode.h CFXMLParser.h CFAvailability.h CFUtilities.h CoreFoundation.h
+
+ PRIVATE_HEADERS=CFBundlePriv.h CFCharacterSetPriv.h CFError_Private.h CFLogUtilities.h CFPriv.h CFRuntime.h CFStorage.h CFStreamAbstract.h CFStreamPriv.h CFStreamInternal.h CFStringDefaultEncoding.h CFStringEncodingConverter.h CFStringEncodingConverterExt.h CFUniChar.h CFUnicodeDecomposition.h CFUnicodePrecomposition.h ForFoundationOnly.h CFBurstTrie.h CFICULogging.h
+
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix b/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix
new file mode 100644
index 00000000000..3d4ac89e0a7
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, appleDerivation, icu, dyld, libdispatch, launchd, libclosure }:
+
+appleDerivation {
+ buildInputs = [ dyld icu libdispatch launchd libclosure ];
+
+ patches = [ ./add-cf-initialize.patch ./add-cfmachport.patch ];
+
+ preBuild = ''
+ substituteInPlace Makefile \
+ --replace "/usr/bin/clang" "clang" \
+ --replace "-arch i386 " "" \
+ --replace "/usr/bin/" "" \
+ --replace "/usr/sbin/" "" \
+ --replace "/bin/" "" \
+ --replace "INSTALLNAME=/System" "INSTALLNAME=$out" \
+ --replace "install_name_tool -id /System" "install_name_tool -id $out" \
+ --replace "-licucore.A" "-licui18n -licuuc" \
+ --replace 'chown -RH -f root:wheel $(DSTBASE)/CoreFoundation.framework' "" \
+ --replace 'chmod -RH' 'chmod -R'
+
+ replacement=''$'#define __PTK_FRAMEWORK_COREFOUNDATION_KEY5 55\n#define _pthread_getspecific_direct(key) pthread_getspecific((key))\n#define _pthread_setspecific_direct(key, val) pthread_setspecific((key), (val))'
+
+ substituteInPlace CFPlatform.c --replace "#include " "$replacement"
+
+ substituteInPlace CFRunLoop.c --replace "#include " ""
+
+ substituteInPlace CFURLPriv.h \
+ --replace "#include " "" \
+ --replace "#include " "" \
+ --replace "CFFileSecurityRef" "void *" \
+ --replace "CFURLEnumeratorResult" "void *" \
+ --replace "CFURLEnumeratorRef" "void *"
+
+ export DSTROOT=$out
+ '';
+
+ postInstall = ''
+ mv $out/System/* $out
+ rmdir $out/System
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CarbonHeaders/default.nix b/pkgs/os-specific/darwin/apple-source-releases/CarbonHeaders/default.nix
new file mode 100644
index 00000000000..38215fa8f90
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CarbonHeaders/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include
+ cp MacTypes.h $out/include
+ cp ConditionalMacros.h $out/include
+
+ substituteInPlace $out/include/MacTypes.h \
+ --replace "CarbonCore/" ""
+ '';
+
+ meta = with stdenv.lib; {
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CommonCrypto/default.nix b/pkgs/os-specific/darwin/apple-source-releases/CommonCrypto/default.nix
new file mode 100644
index 00000000000..5bcf94a18ce
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CommonCrypto/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include/CommonCrypto
+ cp include/* $out/include/CommonCrypto
+ '';
+
+ meta = with stdenv.lib; {
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/CoreOSMakefiles/default.nix b/pkgs/os-specific/darwin/apple-source-releases/CoreOSMakefiles/default.nix
new file mode 100644
index 00000000000..9f6031771c2
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/CoreOSMakefiles/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, appleDerivation, unifdef }:
+
+appleDerivation {
+ buildinputs = [ unifdef ];
+
+ phases = [ "unpackPhase" "installPhase" ];
+
+ preInstall = ''
+ substituteInPlace Makefile \
+ --replace "rsync -a --exclude=.svn --exclude=.git" "cp -r"
+
+ substituteInPlace Standard/Commands.in \
+ --replace "/bin/sh" "bash" \
+ --replace "/usr/bin/compress" "compress" \
+ --replace "/usr/bin/gzip" "gzip" \
+ --replace "/bin/pax" "pax" \
+ --replace "/usr/bin/tar" "tar" \
+ --replace "xcrun -find" "echo" \
+ --replace '$(Install_Program_Group) -s' '$(Install_Program_Group)' \
+ --replace '$(Install_Program_Mode) -s' '$(Install_Program_Mode)'
+
+ substituteInPlace ReleaseControl/Common.make \
+ --replace "/tmp" "$TMPDIR"
+
+ substituteInPlace ReleaseControl/BSDCommon.make \
+ --replace '$(shell xcrun -find -sdk $(SDKROOT) cc)' "cc"
+
+ export DSTROOT=$out
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Csu/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Csu/default.nix
new file mode 100644
index 00000000000..893e9f2b2eb
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Csu/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ postUnpack = ''
+ substituteInPlace $sourceRoot/Makefile \
+ --replace "/usr/lib" "/lib" \
+ --replace "/usr/local/lib" "/lib" \
+ --replace "/usr/bin" "" \
+ --replace "/bin/" ""
+ '';
+
+ # Mac OS didn't support rpaths back before 10.5, and this package intentionally builds stubs targeting versions prior to that
+ NIX_DONT_SET_RPATH = "1";
+ NIX_NO_SELF_RPATH = "1";
+
+ installPhase = ''
+ export DSTROOT=$out
+ make install
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Apple's common startup stubs for darwin";
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/IOKit/default.nix b/pkgs/os-specific/darwin/apple-source-releases/IOKit/default.nix
new file mode 100644
index 00000000000..12f38cd195f
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/IOKit/default.nix
@@ -0,0 +1,187 @@
+{ stdenv, appleDerivation, IOKitSrcs, xnu }:
+
+# Someday it'll make sense to split these out into their own packages, but today is not that day.
+appleDerivation {
+ srcs = stdenv.lib.attrValues IOKitSrcs;
+ sourceRoot = ".";
+
+ phases = [ "unpackPhase" "installPhase" ];
+
+ __propagatedImpureHostDeps = [
+ "/System/Library/Frameworks/IOKit.framework/IOKit"
+ "/System/Library/Frameworks/IOKit.framework/Resources"
+ "/System/Library/Frameworks/IOKit.framework/Versions"
+ ];
+
+ installPhase = ''
+ ###### IMPURITIES
+ mkdir -p $out/Library/Frameworks/IOKit.framework
+ pushd $out/Library/Frameworks/IOKit.framework
+ ln -s /System/Library/Frameworks/IOKit.framework/IOKit
+ ln -s /System/Library/Frameworks/IOKit.framework/Resources
+ popd
+
+ ###### HEADERS
+
+ export dest=$out/Library/Frameworks/IOKit.framework/Headers
+ mkdir -p $dest
+
+ pushd $dest
+ mkdir audio avc DV firewire graphics hid hidsystem i2c kext ndrvsupport
+ mkdir network ps pwr_mgt sbp2 scsi serial storage stream usb video
+ popd
+
+ # root: complete
+ cp IOKitUser-907.100.13/IOCFBundle.h $dest
+ cp IOKitUser-907.100.13/IOCFPlugIn.h $dest
+ cp IOKitUser-907.100.13/IOCFSerialize.h $dest
+ cp IOKitUser-907.100.13/IOCFUnserialize.h $dest
+ cp IOKitUser-907.100.13/IOCFURLAccess.h $dest
+ cp IOKitUser-907.100.13/IODataQueueClient.h $dest
+ cp IOKitUser-907.100.13/IOKitLib.h $dest
+ cp IOKitUser-907.100.13/iokitmig.h $dest
+ cp ${xnu}/Library/PrivateFrameworks/IOKit.framework/Versions/A/Headers/*.h $dest
+
+ # audio: complete
+ cp IOAudioFamily-197.4.2/IOAudioDefines.h $dest/audio
+ cp IOKitUser-907.100.13/audio.subproj/IOAudioLib.h $dest/audio
+ cp IOAudioFamily-197.4.2/IOAudioTypes.h $dest/audio
+
+ # avc: complete
+ cp IOFireWireAVC-422.4.0/IOFireWireAVC/IOFireWireAVCConsts.h $dest/avc
+ cp IOFireWireAVC-422.4.0/IOFireWireAVCLib/IOFireWireAVCLib.h $dest/avc
+
+ # DV: complete
+ cp IOFWDVComponents-207.4.1/DVFamily.h $dest/DV
+
+ # firewire: complete
+ cp IOFireWireFamily-455.4.0/IOFireWireFamily.kmodproj/IOFireWireFamilyCommon.h $dest/firewire
+ cp IOFireWireFamily-455.4.0/IOFireWireLib.CFPlugInProj/IOFireWireLib.h $dest/firewire
+ cp IOFireWireFamily-455.4.0/IOFireWireLib.CFPlugInProj/IOFireWireLibIsoch.h $dest/firewire
+ cp IOFireWireFamily-455.4.0/IOFireWireFamily.kmodproj/IOFWIsoch.h $dest/firewire
+
+ # graphics: missing AppleGraphicsDeviceControlUserCommand.h
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOAccelClientConnect.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOAccelSurfaceConnect.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOAccelTypes.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOFramebufferShared.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOGraphicsEngine.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOGraphicsInterface.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOGraphicsInterfaceTypes.h $dest/graphics
+ cp IOKitUser-907.100.13/graphics.subproj/IOGraphicsLib.h $dest/graphics
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/graphics/IOGraphicsTypes.h $dest/graphics
+
+ # hid: complete
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDBase.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDDevice.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDDevicePlugIn.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDElement.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDLib.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDManager.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDQueue.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDTransaction.h $dest/hid
+ cp IOKitUser-907.100.13/hid.subproj/IOHIDValue.h $dest/hid
+ cp IOHIDFamily-503.215.2/IOHIDFamily/IOHIDKeys.h $dest/hid
+ cp IOHIDFamily-503.215.2/IOHIDFamily/IOHIDUsageTables.h $dest/hid
+ cp IOHIDFamily-503.215.2/IOHIDLib/IOHIDLibObsolete.h $dest/hid
+
+ # hidsystem: complete
+ cp IOHIDFamily-503.215.2/IOHIDSystem/IOKit/hidsystem/ev_keymap.h $dest/hidsystem
+ cp IOKitUser-907.100.13/hidsystem.subproj/event_status_driver.h $dest/hidsystem
+ cp IOKitUser-907.100.13/hidsystem.subproj/IOHIDLib.h $dest/hidsystem
+ cp IOHIDFamily-503.215.2/IOHIDSystem/IOKit/hidsystem/IOHIDParameter.h $dest/hidsystem
+ cp IOHIDFamily-503.215.2/IOHIDSystem/IOKit/hidsystem/IOHIDShared.h $dest/hidsystem
+ cp IOHIDFamily-503.215.2/IOHIDSystem/IOKit/hidsystem/IOHIDTypes.h $dest/hidsystem
+ cp IOHIDFamily-503.215.2/IOHIDSystem/IOKit/hidsystem/IOLLEvent.h $dest/hidsystem
+
+
+ # i2c: complete
+ cp IOGraphics-471.92.1/IOGraphicsFamily/IOKit/i2c/IOI2CInterface.h $dest/i2c
+
+ # kext: complete
+ cp IOKitUser-907.100.13/kext.subproj/KextManager.h $dest/kext
+
+ # ndrvsupport: complete
+ cp IOGraphics-471.92.1/IONDRVSupport/IOKit/ndrvsupport/IOMacOSTypes.h $dest/ndrvsupport
+ cp IOGraphics-471.92.1/IONDRVSupport/IOKit/ndrvsupport/IOMacOSVideo.h $dest/ndrvsupport
+
+ # network: complete
+ cp IONetworkingFamily-100/IOEthernetController.h $dest/network
+ cp IONetworkingFamily-100/IOEthernetInterface.h $dest/network
+ cp IONetworkingFamily-100/IOEthernetStats.h $dest/network
+ cp IONetworkingFamily-100/IONetworkController.h $dest/network
+ cp IONetworkingFamily-100/IONetworkData.h $dest/network
+ cp IONetworkingFamily-100/IONetworkInterface.h $dest/network
+ cp IOKitUser-907.100.13/network.subproj/IONetworkLib.h $dest/network
+ cp IONetworkingFamily-100/IONetworkMedium.h $dest/network
+ cp IONetworkingFamily-100/IONetworkStack.h $dest/network
+ cp IONetworkingFamily-100/IONetworkStats.h $dest/network
+ cp IONetworkingFamily-100/IONetworkUserClient.h $dest/network
+
+ # ps: missing IOUPSPlugIn.h
+ cp IOKitUser-907.100.13/ps.subproj/IOPowerSources.h $dest/ps
+ cp IOKitUser-907.100.13/ps.subproj/IOPSKeys.h $dest/ps
+
+ # pwr_mgt: complete
+ cp IOKitUser-907.100.13/pwr_mgt.subproj/IOPMKeys.h $dest/pwr_mgt
+ cp IOKitUser-907.100.13/pwr_mgt.subproj/IOPMLib.h $dest/pwr_mgt
+ cp ${xnu}/Library/PrivateFrameworks/IOKit.framework/Versions/A/Headers/pwr_mgt/*.h $dest/pwr_mgt
+ cp IOKitUser-907.100.13/pwr_mgt.subproj/IOPMLibPrivate.h $dest/pwr_mgt # Private
+
+ # sbp2: complete
+ cp IOFireWireSBP2-426.4.1/IOFireWireSBP2Lib/IOFireWireSBP2Lib.h $dest/sbp2
+
+ # scsi: omitted for now
+
+ # serial: complete
+ cp IOSerialFamily-64.1.1/IOSerialFamily.kmodproj/IOSerialKeys.h $dest/serial
+ cp IOSerialFamily-64.1.1/IOSerialFamily.kmodproj/ioss.h $dest/serial
+
+ # storage: complete
+ # Needs ata subdirectory
+ cp IOStorageFamily-172/IOAppleLabelScheme.h $dest/storage
+ cp IOStorageFamily-172/IOApplePartitionScheme.h $dest/storage
+ cp IOBDStorageFamily-14/IOBDBlockStorageDevice.h $dest/storage
+ cp IOBDStorageFamily-14/IOBDMedia.h $dest/storage
+ cp IOBDStorageFamily-14/IOBDMediaBSDClient.h $dest/storage
+ cp IOBDStorageFamily-14/IOBDTypes.h $dest/storage
+ cp IOStorageFamily-172/IOBlockStorageDevice.h $dest/storage
+ cp IOStorageFamily-172/IOBlockStorageDriver.h $dest/storage
+ cp IOCDStorageFamily-51/IOCDBlockStorageDevice.h $dest/storage
+ cp IOCDStorageFamily-51/IOCDMedia.h $dest/storage
+ cp IOCDStorageFamily-51/IOCDMediaBSDClient.h $dest/storage
+ cp IOCDStorageFamily-51/IOCDPartitionScheme.h $dest/storage
+ cp IOCDStorageFamily-51/IOCDTypes.h $dest/storage
+ cp IODVDStorageFamily-35/IODVDBlockStorageDevice.h $dest/storage
+ cp IODVDStorageFamily-35/IODVDMedia.h $dest/storage
+ cp IODVDStorageFamily-35/IODVDMediaBSDClient.h $dest/storage
+ cp IODVDStorageFamily-35/IODVDTypes.h $dest/storage
+ cp IOStorageFamily-172/IOFDiskPartitionScheme.h $dest/storage
+ cp IOStorageFamily-172/IOFilterScheme.h $dest/storage
+ cp IOFireWireSerialBusProtocolTransport-251.0.1/IOFireWireStorageCharacteristics.h $dest/storage
+ cp IOStorageFamily-172/IOGUIDPartitionScheme.h $dest/storage
+ cp IOStorageFamily-172/IOMedia.h $dest/storage
+ cp IOStorageFamily-172/IOMediaBSDClient.h $dest/storage
+ cp IOStorageFamily-172/IOPartitionScheme.h $dest/storage
+ cp IOStorageFamily-172/IOStorage.h $dest/storage
+ cp IOStorageFamily-172/IOStorageCardCharacteristics.h $dest/storage
+ cp IOStorageFamily-172/IOStorageDeviceCharacteristics.h $dest/storage
+ cp IOStorageFamily-172/IOStorageProtocolCharacteristics.h $dest/storage
+
+ # stream: missing altogether
+
+ # usb: complete
+ cp IOUSBFamily-630.4.5/IOUSBFamily/Headers/IOUSBLib.h $dest/usb
+ cp IOUSBFamily-630.4.5/IOUSBUserClient/Headers/IOUSBUserClient.h $dest/usb
+ cp IOUSBFamily-560.4.2/IOUSBFamily/Headers/USB.h $dest/usb # This file is empty in 630.4.5!
+ cp IOUSBFamily-630.4.5/IOUSBFamily/Headers/USBSpec.h $dest/usb
+
+ # video: missing altogether
+ '';
+
+ meta = with stdenv.lib; {
+ maintainers = with maintainers; [ joelteon copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libc/825_40_1.nix b/pkgs/os-specific/darwin/apple-source-releases/Libc/825_40_1.nix
new file mode 100644
index 00000000000..b5e7e512393
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libc/825_40_1.nix
@@ -0,0 +1,15 @@
+{ stdenv, appleDerivation, ed, unifdef }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ buildInputs = [ ed unifdef ];
+
+ installPhase = ''
+ export SRCROOT=$PWD
+ export DSTROOT=$out
+ export PUBLIC_HEADERS_FOLDER_PATH=include
+ export PRIVATE_HEADERS_FOLDER_PATH=include
+ bash xcodescripts/headers.sh
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libc/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libc/default.nix
new file mode 100644
index 00000000000..16cfa9e554b
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libc/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, appleDerivation, ed, unifdef, Libc_old }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ buildInputs = [ ed unifdef ];
+
+ # TODO: asl.h actually comes from syslog project now
+ installPhase = ''
+ export SRCROOT=$PWD
+ export DSTROOT=$out
+ export PUBLIC_HEADERS_FOLDER_PATH=include
+ export PRIVATE_HEADERS_FOLDER_PATH=include
+ bash xcodescripts/headers.sh
+
+ # Ugh Apple stopped releasing this stuff so we need an older one...
+ cp ${Libc_old}/include/spawn.h $out/include
+ cp ${Libc_old}/include/setjmp.h $out/include
+ cp ${Libc_old}/include/ucontext.h $out/include
+ cp ${Libc_old}/include/pthread*.h $out/include
+ cp ${Libc_old}/include/sched.h $out/include
+ cp -R ${Libc_old}/include/malloc $out/include
+
+ mkdir -p $out/include/libkern
+ cp ${Libc_old}/include/asl.h $out/include
+ cp ${Libc_old}/include/libproc.h $out/include
+ cp ${Libc_old}/include/libkern/OSAtomic.h $out/include/libkern
+ cp ${Libc_old}/include/libkern/OSCacheControl.h $out/include/libkern
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libinfo/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libinfo/default.nix
new file mode 100644
index 00000000000..2756857ba67
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libinfo/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ substituteInPlace xcodescripts/install_files.sh \
+ --replace "/usr/local/" "/" \
+ --replace "/usr/" "/" \
+ --replace '-o "$INSTALL_OWNER" -g "$INSTALL_GROUP"' "" \
+ --replace "ln -h" "ln -n"
+
+ export DSTROOT=$out
+ sh xcodescripts/install_files.sh
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libm/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libm/default.nix
new file mode 100644
index 00000000000..b409a7347ef
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libm/default.nix
@@ -0,0 +1,13 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include
+
+ cp Source/Intel/math.h $out/include
+ cp Source/Intel/fenv.h $out/include
+ cp Source/complex.h $out/include
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libnotify/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libnotify/default.nix
new file mode 100644
index 00000000000..810c8e8315a
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libnotify/default.nix
@@ -0,0 +1,11 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include
+ cp notify.h $out/include
+ cp notify_keys.h $out/include
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix
new file mode 100644
index 00000000000..ecab0941332
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/default.nix
@@ -0,0 +1,147 @@
+{ stdenv, appleDerivation, cpio, bootstrap_cmds, xnu, Libc, Libm, libdispatch, cctools, Libinfo,
+ dyld, Csu, architecture, libclosure, CarbonHeaders, ncurses, CommonCrypto, copyfile,
+ removefile, libresolv, Libnotify, libpthread, mDNSResponder, launchd, version }:
+
+appleDerivation rec {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ buildInputs = [ cpio libpthread ];
+
+ systemlibs = [ "cache"
+ "commonCrypto"
+ "compiler_rt"
+ "copyfile"
+ "corecrypto"
+ "dispatch"
+ "dyld"
+ "keymgr"
+ "kxld"
+ "launch"
+ "macho"
+ "quarantine"
+ "removefile"
+ "system_asl"
+ "system_blocks"
+ # "system_c" # special re-export here to hide newer functions
+ "system_configuration"
+ "system_dnssd"
+ "system_info"
+ # "system_kernel" # special re-export here to hide newer functions
+ "system_m"
+ "system_malloc"
+ "system_network"
+ "system_notify"
+ "system_platform"
+ "system_pthread"
+ "system_sandbox"
+ "system_stats"
+ "unc"
+ "unwind"
+ "xpc"
+ ];
+
+ installPhase = ''
+ export NIX_ENFORCE_PURITY=
+
+ mkdir -p $out/lib $out/include
+
+ # Set up our include directories
+ (cd ${xnu}/include && find . -name '*.h' -or -name '*.defs' | cpio -pdm $out/include)
+ cp ${xnu}/Library/Frameworks/Kernel.framework/Versions/A/Headers/Availability*.h $out/include
+ cp ${xnu}/Library/Frameworks/Kernel.framework/Versions/A/Headers/stdarg.h $out/include
+
+ for dep in ${Libc} ${Libm} ${Libinfo} ${dyld} ${architecture} ${libclosure} ${CarbonHeaders} \
+ ${libdispatch} ${ncurses} ${CommonCrypto} ${copyfile} ${removefile} ${libresolv} \
+ ${Libnotify} ${mDNSResponder} ${launchd}; do
+ (cd $dep/include && find . -name '*.h' | cpio -pdm $out/include)
+ done
+
+ (cd ${cctools}/include/mach-o && find . -name '*.h' | cpio -pdm $out/include/mach-o)
+
+ cat < $out/include/TargetConditionals.h
+ #ifndef __TARGETCONDITIONALS__
+ #define __TARGETCONDITIONALS__
+ #define TARGET_OS_MAC 1
+ #define TARGET_OS_WIN32 0
+ #define TARGET_OS_UNIX 0
+ #define TARGET_OS_EMBEDDED 0
+ #define TARGET_OS_IPHONE 0
+ #define TARGET_IPHONE_SIMULATOR 0
+ #define TARGET_OS_LINUX 0
+
+ #define TARGET_CPU_PPC 0
+ #define TARGET_CPU_PPC64 0
+ #define TARGET_CPU_68K 0
+ #define TARGET_CPU_X86 0
+ #define TARGET_CPU_X86_64 1
+ #define TARGET_CPU_ARM 0
+ #define TARGET_CPU_MIPS 0
+ #define TARGET_CPU_SPARC 0
+ #define TARGET_CPU_ALPHA 0
+ #define TARGET_RT_MAC_CFM 0
+ #define TARGET_RT_MAC_MACHO 1
+ #define TARGET_RT_LITTLE_ENDIAN 1
+ #define TARGET_RT_BIG_ENDIAN 0
+ #define TARGET_RT_64_BIT 1
+ #endif /* __TARGETCONDITIONALS__ */
+ EOF
+
+ # The startup object files
+ cp ${Csu}/lib/* $out/lib
+
+ # selectively re-export functions from libsystem_c and libsystem_kernel
+ # to provide a consistent interface across OSX verions
+ mkdir -p $out/lib/system
+ ld -macosx_version_min 10.7 -arch x86_64 -dylib \
+ -o $out/lib/system/libsystem_c.dylib \
+ /usr/lib/libSystem.dylib \
+ -reexported_symbols_list ${./system_c_symbols}
+
+ ld -macosx_version_min 10.7 -arch x86_64 -dylib \
+ -o $out/lib/system/libsystem_kernel.dylib \
+ /usr/lib/libSystem.dylib \
+ -reexported_symbols_list ${./system_kernel_symbols}
+
+ # Set up the actual library link
+ clang -c -o CompatibilityHacks.o -Os CompatibilityHacks.c
+ clang -c -o init.o -Os init.c
+ ld -macosx_version_min 10.7 \
+ -arch x86_64 \
+ -dylib \
+ -o $out/lib/libSystem.dylib \
+ CompatibilityHacks.o init.o \
+ -compatibility_version 1.0 \
+ -current_version ${version} \
+ -reexport_library $out/lib/system/libsystem_c.dylib \
+ -reexport_library $out/lib/system/libsystem_kernel.dylib \
+ ${stdenv.lib.concatStringsSep " "
+ (map (l: "-reexport_library /usr/lib/system/lib${l}.dylib") systemlibs)}
+
+ # Set up links to pretend we work like a conventional unix (Apple's design, not mine!)
+ for name in c dbm dl info m mx poll proc pthread rpcsvc gcc_s.10.4 gcc_s.10.5; do
+ ln -s libSystem.dylib $out/lib/lib$name.dylib
+ done
+
+ # This probably doesn't belong here, but we want to stay similar to glibc, which includes resolv internally...
+ cp ${libresolv}/lib/libresolv.9.dylib $out/lib/libresolv.9.dylib
+ resolv_libSystem=$(otool -L "$out/lib/libresolv.9.dylib" | tail -n +3 | grep -o "$NIX_STORE.*-\S*") || true
+ echo $libs
+
+ chmod +w $out/lib/libresolv.9.dylib
+ install_name_tool \
+ -id $out/lib/libresolv.9.dylib \
+ -change "$resolv_libSystem" $out/lib/libSystem.dylib \
+ -delete_rpath ${libresolv}/lib \
+ $out/lib/libresolv.9.dylib
+ ln -s libresolv.9.dylib $out/lib/libresolv.dylib
+
+ otool -L $out/lib/libresolv.dylib
+ '';
+
+ meta = with stdenv.lib; {
+ description = "The Mac OS libc/libSystem (impure symlinks to binaries with pure headers)";
+ maintainers = with maintainers; [ copumpkin gridaphobe ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_c_symbols b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_c_symbols
new file mode 100644
index 00000000000..0c814899c3c
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_c_symbols
@@ -0,0 +1,1530 @@
+_NSGetNextSearchPathEnumeration
+_NSStartSearchPathEnumeration
+_OSAtomicAdd32
+_OSAtomicAdd32Barrier
+_OSAtomicAnd32
+_OSAtomicDequeue
+_OSAtomicEnqueue
+_OSSpinLockLock
+_OSSpinLockUnlock
+__Block_copy
+__Block_release
+__CurrentRuneLocale
+__DefaultRuneLocale
+__Exit
+__NSGetArgc
+__NSGetArgv
+__NSGetEnviron
+__NSGetMachExecuteHeader
+__NSGetProgname
+__PathLocale
+__Read_RuneMagi
+___Balloc_D2A
+___Bfree_D2A
+___ULtod_D2A
+____mb_cur_max
+____mb_cur_max_l
+____runetype
+____runetype_l
+____tolower
+____tolower_l
+____toupper
+____toupper_l
+___add_ovflpage
+___addel
+___any_on_D2A
+___assert_rtn
+___b2d_D2A
+___big_delete
+___big_insert
+___big_keydata
+___big_return
+___big_split
+___bigtens_D2A
+___bt_close
+___bt_cmp
+___bt_defcmp
+___bt_defpfx
+___bt_delete
+___bt_dleaf
+___bt_fd
+___bt_free
+___bt_get
+___bt_new
+___bt_open
+___bt_pgin
+___bt_pgout
+___bt_put
+___bt_ret
+___bt_search
+___bt_seq
+___bt_setcur
+___bt_split
+___bt_sync
+___buf_free
+___bzero
+___cVersionNumber
+___cVersionString
+___call_hash
+___chmod_extended
+___cleanup
+___cmp_D2A
+___collate_equiv_match
+___collate_load_error
+___collate_lookup
+___commpage_gettimeofday
+___copybits_D2A
+___cxa_atexit
+___cxa_finalize
+___cxa_thread_atexit
+___d2b_D2A
+___dbpanic
+___decrement_D2A
+___default_hash
+___default_utx
+___delpair
+___diff_D2A
+___dtoa
+___error
+___exit
+___expand_table
+___fchmod_extended
+___fcntl
+___fcntl_nocancel
+___fflush
+___fgetwc
+___find_bigpair
+___find_last_page
+___fix_locale_grouping_str
+___fork
+___fpclassifyd
+___fpclassifyl
+___fread
+___free_ovflpage
+___freedtoa
+___fstat64_extended
+___fstat_extended
+___gdtoa
+___gdtoa_locks
+___get_buf
+___get_page
+___getdirentries64
+___gethex_D2A
+___getlogin
+___getonlyClocaleconv
+___gettimeofday
+___hash_open
+___hdtoa
+___hexdig_D2A
+___hexdig_init_D2A
+___hexnan_D2A
+___hi0bits_D2A
+___hldtoa
+___i2b_D2A
+___ibitmap
+___increment_D2A
+___isctype
+___istype
+___istype_l
+___kill
+___ldtoa
+___libc_init
+___lo0bits_D2A
+___log2
+___lshift_D2A
+___lstat64_extended
+___lstat_extended
+___maskrune
+___maskrune_l
+___match_D2A
+___mb_cur_max
+___mb_sb_limit
+___memccpy_chk
+___memcpy_chk
+___memmove_chk
+___memset_chk
+___mkdir_extended
+___mkfifo_extended
+___mult_D2A
+___multadd_D2A
+___nrv_alloc_D2A
+___open
+___open_extended
+___open_nocancel
+___opendir2
+___opendir2$INODE64
+___ovfl_delete
+___ovfl_get
+___ovfl_put
+___pow5mult_D2A
+___pthread_sigmask
+___pthread_workqueue_setkill
+___put_page
+___quorem_D2A
+___ratio_D2A
+___rec_close
+___rec_delete
+___rec_dleaf
+___rec_fd
+___rec_fmap
+___rec_fpipe
+___rec_get
+___rec_iput
+___rec_open
+___rec_put
+___rec_ret
+___rec_search
+___rec_seq
+___rec_sync
+___rec_vmap
+___rec_vpipe
+___reclaim_buf
+___recvfrom
+___recvfrom_nocancel
+___rshift_D2A
+___rv_alloc_D2A
+___s2b_D2A
+___sF
+___sclose
+___sdidinit
+___semwait_signal
+___semwait_signal_nocancel
+___sendto
+___sendto_nocancel
+___set_ones_D2A
+___setlogin
+___setonlyClocaleconv
+___settimeofday
+___sflags
+___sflush
+___sfp
+___sfvwrite
+___sglue
+___sigaction
+___sigaltstack
+___sinit
+___slbexpand
+___smakebuf
+___snprintf_chk
+___split_page
+___sprintf_chk
+___sread
+___srefill
+___srget
+___sseek
+___stack_chk_fail
+___stack_chk_guard
+___stat64_extended
+___stat_extended
+___stderrp
+___stdinp
+___stdoutp
+___stpcpy_chk
+___stpncpy_chk
+___strcat_chk
+___strcp_D2A
+___strcpy_chk
+___strlcat_chk
+___strlcpy_chk
+___strncat_chk
+___strncpy_chk
+___strtodg
+___strtopdd
+___strtopx
+___sum_D2A
+___svfscanf
+___swbuf
+___swhatbuf
+___swrite
+___swsetup
+___sysctl
+___tens_D2A
+___tinytens_D2A
+___tolower
+___tolower_l
+___toupper
+___toupper_l
+___trailz_D2A
+___ulp_D2A
+___umask_extended
+___ungetc
+___ungetwc
+___unix_conforming
+___vsnprintf_chk
+___vsprintf_chk
+___wait4
+___wait4_nocancel
+___wcwidth
+___wcwidth_l
+__allocenvstate
+__c_locale
+__cleanup
+__closeutx
+__copyenv
+__cthread_init_routine
+__deallocenvstate
+__dyld_register_func_for_add_image
+__endutxent
+__exit
+__flockfile_debug_stub
+__fseeko
+__ftello
+__fwalk
+__get_cpu_capabilities
+__getenvp
+__getutxent
+__getutxid
+__getutxline
+__inet_aton_check
+__init_clock_port
+__int_to_time
+__libc_fork_child
+__long_to_time
+__mkpath_np
+__mktemp
+__openutx
+__os_alloc_once
+__os_alloc_once_table
+__os_assert_log
+__os_assert_log_ctx
+__os_assumes_log
+__os_assumes_log_ctx
+__os_avoid_tail_call
+__osx_assert_log
+__osx_assert_log_ctx
+__osx_assumes_log
+__osx_assumes_log_ctx
+__osx_avoid_tail_call
+__platform_bzero
+__platform_memccpy
+__platform_memchr
+__platform_memcmp
+__platform_memmove
+__platform_memset
+__platform_memset_pattern16
+__platform_memset_pattern4
+__platform_memset_pattern8
+__platform_strchr
+__platform_strcmp
+__platform_strncmp
+__putenvp
+__pututxline
+__rand48_add
+__rand48_mult
+__rand48_seed
+__readdir_unlocked
+__readdir_unlocked$INODE64
+__reclaim_telldir
+__seekdir
+__seekdir$INODE64
+__setenvp
+__setutxent
+__sigaction_nobind
+__sigintr
+__signal_nobind
+__sigtramp
+__sigvec_nobind
+__simple_asl_log
+__simple_asl_log_prog
+__simple_asl_msg_new
+__simple_asl_msg_set
+__simple_asl_send
+__simple_dprintf
+__simple_salloc
+__simple_sappend
+__simple_sfree
+__simple_sprintf
+__simple_string
+__simple_vsprintf
+__sread
+__sseek
+__swrite
+__time32_to_time
+__time64_to_time
+__time_to_int
+__time_to_long
+__time_to_time32
+__time_to_time64
+__tlv_atexit
+__tlv_exit
+__unsetenvp
+__utmpxname
+_a64l
+_abort
+_abs
+_access
+_acl_add_flag_np
+_acl_add_perm
+_acl_calc_mask
+_acl_clear_flags_np
+_acl_clear_perms
+_acl_copy_entry
+_acl_copy_ext
+_acl_copy_ext_native
+_acl_copy_int
+_acl_copy_int_native
+_acl_create_entry
+_acl_create_entry_np
+_acl_delete_def_file
+_acl_delete_entry
+_acl_delete_fd_np
+_acl_delete_file_np
+_acl_delete_flag_np
+_acl_delete_link_np
+_acl_delete_perm
+_acl_dup
+_acl_free
+_acl_from_text
+_acl_get_entry
+_acl_get_fd
+_acl_get_fd_np
+_acl_get_file
+_acl_get_flag_np
+_acl_get_flagset_np
+_acl_get_link_np
+_acl_get_perm_np
+_acl_get_permset
+_acl_get_permset_mask_np
+_acl_get_qualifier
+_acl_get_tag_type
+_acl_init
+_acl_maximal_permset_mask_np
+_acl_set_fd
+_acl_set_fd_np
+_acl_set_file
+_acl_set_flagset_np
+_acl_set_link_np
+_acl_set_permset
+_acl_set_permset_mask_np
+_acl_set_qualifier
+_acl_set_tag_type
+_acl_size
+_acl_to_text
+_acl_valid
+_acl_valid_fd_np
+_acl_valid_file_np
+_acl_valid_link
+_addr2ascii
+_alarm
+_alphasort
+_alphasort$INODE64
+_arc4random
+_arc4random_addrandom
+_arc4random_buf
+_arc4random_stir
+_arc4random_uniform
+_ascii2addr
+_asctime
+_asctime_r
+_asl_get
+_asl_new
+_asl_open
+_asl_send
+_asl_set
+_asl_set_query
+_asprintf
+_asprintf_l
+_asxprintf
+_asxprintf_exec
+_atexit
+_atexit_b
+_atof
+_atof_l
+_atoi
+_atoi_l
+_atol
+_atol_l
+_atoll
+_atoll_l
+_backtrace
+_backtrace_symbols
+_backtrace_symbols_fd
+_basename
+_bcmp
+_bcopy
+_bootstrap_parent
+_bootstrap_port
+_brk
+_bsd_signal
+_bsearch
+_bsearch_b
+_btowc
+_btowc_l
+_bzero
+_calloc
+_catclose
+_catgets
+_catopen
+_cfgetispeed
+_cfgetospeed
+_cfmakeraw
+_cfsetispeed
+_cfsetospeed
+_cfsetspeed
+_cgetcap
+_cgetclose
+_cgetent
+_cgetfirst
+_cgetmatch
+_cgetnext
+_cgetnum
+_cgetset
+_cgetstr
+_cgetustr
+_chdir
+_chflags
+_chmod
+_chmodx_np
+_clearerr
+_clearerr_unlocked
+_clock
+_clock_get_time
+_clock_port
+_clock_sem
+_close$NOCANCEL
+_closedir
+_compat_mode
+_confstr
+_copy_printf_domain
+_creat
+_creat$NOCANCEL
+_crypt
+_ctermid
+_ctermid_r
+_ctime
+_ctime_r
+_daemon
+_daemon$1050
+_daylight
+_dbm_clearerr
+_dbm_close
+_dbm_delete
+_dbm_dirfno
+_dbm_error
+_dbm_fetch
+_dbm_firstkey
+_dbm_nextkey
+_dbm_open
+_dbm_store
+_dbopen
+_devname
+_devname_r
+_difftime
+_digittoint
+_digittoint_l
+_dirfd
+_dirname
+_dispatch_get_global_queue
+_div
+_dladdr
+_dlsym
+_dprintf
+_dprintf_l
+_drand48
+_dup2
+_duplocale
+_dxprintf
+_dxprintf_exec
+_dyld_get_program_sdk_version
+_dyld_get_sdk_version
+_ecvt
+_encrypt
+_endttyent
+_endusershell
+_endutxent
+_endutxent_wtmp
+_erand48
+_err
+_err_set_exit
+_err_set_exit_b
+_err_set_file
+_errc
+_errx
+_execl
+_execle
+_execlp
+_execv
+_execvP
+_execve
+_execvp
+_exit
+_f_prealloc
+_fchdir
+_fchmodx_np
+_fclose
+_fcntl$NOCANCEL
+_fcvt
+_fdopen
+_fdopen$DARWIN_EXTSN
+_fegetenv
+_feof
+_feof_unlocked
+_ferror
+_ferror_unlocked
+_fesetenv
+_fflagstostr
+_fflush
+_ffsctl
+_fgetc
+_fgetln
+_fgetpos
+_fgetrune
+_fgets
+_fgetwc
+_fgetwc_l
+_fgetwln
+_fgetwln_l
+_fgetws
+_fgetws_l
+_fileno
+_fileno_unlocked
+_filesec_dup
+_filesec_free
+_filesec_get_property
+_filesec_init
+_filesec_query_property
+_filesec_set_property
+_filesec_unset_property
+_flockfile
+_flsl
+_fmtcheck
+_fmtmsg
+_fnmatch
+_fopen
+_fopen$DARWIN_EXTSN
+_fork
+_forkpty
+_fparseln
+_fprintf
+_fprintf_l
+_fpurge
+_fputc
+_fputrune
+_fputs
+_fputwc
+_fputwc_l
+_fputws
+_fputws_l
+_fread
+_free
+_free_printf_comp
+_free_printf_domain
+_freeifaddrs
+_freelocale
+_freopen
+_fscanf
+_fscanf_l
+_fsctl
+_fseek
+_fseeko
+_fsetpos
+_fstat
+_fstat$INODE64
+_fstatfs
+_fstatfs$INODE64
+_fstatvfs
+_fstatx64_np
+_fstatx_np
+_fstatx_np$INODE64
+_fsync$NOCANCEL
+_fsync_volume_np
+_ftell
+_ftello
+_ftime
+_ftok
+_ftruncate
+_ftrylockfile
+_fts_children
+_fts_children$INODE64
+_fts_close
+_fts_close$INODE64
+_fts_open
+_fts_open$INODE64
+_fts_open_b
+_fts_open_b$INODE64
+_fts_read
+_fts_read$INODE64
+_fts_set
+_fts_set$INODE64
+_ftw
+_ftw$INODE64
+_fungetrune
+_funlockfile
+_funopen
+_fwide
+_fwprintf
+_fwprintf_l
+_fwrite
+_fwscanf
+_fwscanf_l
+_fxprintf
+_fxprintf_exec
+_gcvt
+_getattrlist
+_getbsize
+_getc
+_getc_unlocked
+_getchar
+_getchar_unlocked
+_getcwd
+_getdate
+_getdate_err
+_getdelim
+_getdirentries
+_getdiskbyname
+_getdtablesize
+_getenv
+_geteuid
+_getfsstat
+_getfsstat$INODE64
+_getfsstat64
+_getgrgid
+_getgrnam
+_getgroupcount
+_getgrouplist
+_getgroups$DARWIN_EXTSN
+_gethostid
+_gethostname
+_getifaddrs
+_getipv4sourcefilter
+_getlastlogx
+_getlastlogxbyname
+_getline
+_getloadavg
+_getlogin
+_getlogin_r
+_getmntinfo
+_getmntinfo$INODE64
+_getmntinfo64
+_getmode
+_getopt
+_getopt_long
+_getopt_long_only
+_getpagesize
+_getpass
+_getpeereid
+_getpgrp
+_getpid
+_getpriority
+_getprogname
+_getpwnam
+_getpwuid
+_getpwuid_r
+_getrlimit
+_getrusage
+_gets
+_getsectiondata
+_getsockopt
+_getsourcefilter
+_getsubopt
+_gettimeofday
+_getttyent
+_getttynam
+_getuid
+_getusershell
+_getutmp
+_getutmpx
+_getutxent
+_getutxent_wtmp
+_getutxid
+_getutxline
+_getvfsbyname
+_getw
+_getwc
+_getwc_l
+_getwchar
+_getwchar_l
+_getwd
+_glob
+_glob$INODE64
+_glob_b
+_glob_b$INODE64
+_globfree
+_gmtime
+_gmtime_r
+_grantpt
+_hash_create
+_hash_destroy
+_hash_purge
+_hash_search
+_hash_stats
+_hash_traverse
+_hcreate
+_hdestroy
+_heapsort
+_heapsort_b
+_host_get_clock_service
+_hsearch
+_if_nametoindex
+_imaxabs
+_imaxdiv
+_index
+_inet_addr
+_inet_aton
+_inet_lnaof
+_inet_makeaddr
+_inet_net_ntop
+_inet_net_pton
+_inet_neta
+_inet_netof
+_inet_network
+_inet_nsap_addr
+_inet_nsap_ntoa
+_inet_ntoa
+_inet_ntop
+_inet_ntop4
+_inet_ntop6
+_inet_pton
+_initstate
+_insque
+_ioctl
+_isalnum
+_isalnum_l
+_isalpha
+_isalpha_l
+_isascii
+_isatty
+_isblank
+_isblank_l
+_iscntrl
+_iscntrl_l
+_isdigit
+_isdigit_l
+_isgraph
+_isgraph_l
+_ishexnumber
+_ishexnumber_l
+_isideogram
+_isideogram_l
+_islower
+_islower_l
+_isnumber
+_isnumber_l
+_isphonogram
+_isphonogram_l
+_isprint
+_isprint_l
+_ispunct
+_ispunct_l
+_isrune
+_isrune_l
+_issetugid
+_isspace
+_isspace_l
+_isspecial
+_isspecial_l
+_isupper
+_isupper_l
+_iswalnum
+_iswalnum_l
+_iswalpha
+_iswalpha_l
+_iswascii
+_iswblank
+_iswblank_l
+_iswcntrl
+_iswcntrl_l
+_iswctype
+_iswctype_l
+_iswdigit
+_iswdigit_l
+_iswgraph
+_iswgraph_l
+_iswhexnumber
+_iswhexnumber_l
+_iswideogram
+_iswideogram_l
+_iswlower
+_iswlower_l
+_iswnumber
+_iswnumber_l
+_iswphonogram
+_iswphonogram_l
+_iswprint
+_iswprint_l
+_iswpunct
+_iswpunct_l
+_iswrune
+_iswrune_l
+_iswspace
+_iswspace_l
+_iswspecial
+_iswspecial_l
+_iswupper
+_iswupper_l
+_iswxdigit
+_iswxdigit_l
+_isxdigit
+_isxdigit_l
+_jrand48
+_kill
+_killpg
+_l64a
+_labs
+_lchflags
+_lchmod
+_lcong48
+_ldiv
+_lfind
+_link_addr
+_link_ntoa
+_llabs
+_lldiv
+_localeconv
+_localeconv_l
+_localtime
+_localtime_r
+_lockf
+_lockf$NOCANCEL
+_login
+_login_tty
+_logout
+_logwtmp
+_lrand48
+_lsearch
+_lseek
+_lstat
+_lstat$INODE64
+_lstatx64_np
+_lstatx_np
+_lstatx_np$INODE64
+_lutimes
+_mach_absolute_time
+_mach_error_string
+_mach_host_self
+_mach_port_deallocate
+_mach_task_self_
+_mach_timebase_info
+_malloc
+_mblen
+_mblen_l
+_mbmb
+_mbr_gid_to_uuid
+_mbr_uid_to_uuid
+_mbr_uuid_to_id
+_mbrlen
+_mbrlen_l
+_mbrrune
+_mbrtowc
+_mbrtowc_l
+_mbrune
+_mbsinit
+_mbsinit_l
+_mbsnrtowcs
+_mbsnrtowcs_l
+_mbsrtowcs
+_mbsrtowcs_l
+_mbstowcs
+_mbstowcs_l
+_mbtowc
+_mbtowc_l
+_memccpy
+_memchr
+_memcmp
+_memcpy
+_memmem
+_memmove
+_memset
+_memset_pattern16
+_memset_pattern4
+_memset_pattern8
+_memset_s
+_mergesort
+_mergesort_b
+_mkdir
+_mkdirx_np
+_mkdtemp
+_mkfifox_np
+_mkpath_np
+_mkstemp
+_mkstemps
+_mktemp
+_mktime
+_mmap
+_monaddition
+_moncontrol
+_moncount
+_moninit
+_monitor
+_monoutput
+_monreset
+_monstartup
+_mpool_close
+_mpool_filter
+_mpool_get
+_mpool_new
+_mpool_open
+_mpool_put
+_mpool_sync
+_mrand48
+_munmap
+_nan
+_nanf
+_nanl
+_nanosleep
+_nanosleep$NOCANCEL
+_new_printf_comp
+_new_printf_domain
+_newlocale
+_nextwctype
+_nextwctype_l
+_nftw
+_nftw$INODE64
+_nice
+_nl_langinfo
+_nl_langinfo_l
+_notify_cancel
+_notify_check
+_notify_monitor_file
+_notify_post
+_notify_register_check
+_nrand48
+_off32
+_off64
+_offtime
+_open$NOCANCEL
+_opendev
+_opendir
+_opendir$INODE64
+_openpty
+_openx_np
+_optarg
+_opterr
+_optind
+_optopt
+_optreset
+_pathconf
+_pause
+_pause$NOCANCEL
+_pclose
+_perror
+_pipe
+_popen
+_popen$DARWIN_EXTSN
+_posix2time
+_posix_openpt
+_posix_spawn
+_posix_spawn_file_actions_addclose
+_posix_spawn_file_actions_adddup2
+_posix_spawn_file_actions_destroy
+_posix_spawn_file_actions_init
+_posix_spawnattr_destroy
+_posix_spawnattr_init
+_posix_spawnattr_setflags
+_posix_spawnattr_setsigdefault
+_posix_spawnattr_setsigmask
+_posix_spawnp
+_pread$NOCANCEL
+_printf
+_printf_l
+_proc_name
+_pselect
+_pselect$1050
+_pselect$DARWIN_EXTSN
+_pselect$DARWIN_EXTSN$NOCANCEL
+_pselect$NOCANCEL
+_psignal
+_psort
+_psort_b
+_psort_r
+_pthread_get_stackaddr_np
+_pthread_get_stacksize_np
+_pthread_getspecific
+_pthread_key_create
+_pthread_key_init_np
+_pthread_kill
+_pthread_mutex_destroy
+_pthread_mutex_init
+_pthread_mutex_lock
+_pthread_mutex_trylock
+_pthread_mutex_unlock
+_pthread_once
+_pthread_rwlock_destroy
+_pthread_rwlock_rdlock
+_pthread_rwlock_unlock
+_pthread_rwlock_wrlock
+_pthread_self
+_pthread_setspecific
+_pthread_sigmask
+_pthread_testcancel
+_ptsname
+_putc
+_putc_unlocked
+_putchar
+_putchar_unlocked
+_putenv
+_puts
+_pututxline
+_putw
+_putwc
+_putwc_l
+_putwchar
+_putwchar_l
+_pwrite$NOCANCEL
+_qsort
+_qsort_b
+_qsort_r
+_querylocale
+_radixsort
+_raise
+_rand
+_rand_r
+_random
+_rb_tree_count
+_rb_tree_find_node
+_rb_tree_find_node_geq
+_rb_tree_find_node_leq
+_rb_tree_init
+_rb_tree_insert_node
+_rb_tree_iterate
+_rb_tree_remove_node
+_read$NOCANCEL
+_readdir
+_readdir$INODE64
+_readdir_r
+_readdir_r$INODE64
+_readlink
+_readpassphrase
+_realloc
+_reallocf
+_realpath
+_realpath$DARWIN_EXTSN
+_recv
+_recv$NOCANCEL
+_regcomp
+_regcomp_l
+_regerror
+_regexec
+_regfree
+_register_printf_domain_function
+_register_printf_domain_render_std
+_regncomp
+_regncomp_l
+_regnexec
+_regwcomp
+_regwcomp_l
+_regwexec
+_regwncomp
+_regwncomp_l
+_regwnexec
+_remove
+_remque
+_rewind
+_rewinddir
+_rewinddir$INODE64
+_rindex
+_rmdir
+_sbrk
+_scandir
+_scandir$INODE64
+_scandir_b
+_scandir_b$INODE64
+_scanf
+_scanf_l
+_seed48
+_seekdir
+_seekdir$INODE64
+_select
+_select$1050
+_select$DARWIN_EXTSN
+_select$DARWIN_EXTSN$NOCANCEL
+_select$NOCANCEL
+_semaphore_create
+_send
+_send$NOCANCEL
+_setattrlist
+_setbuf
+_setbuffer
+_setenv
+_sethostid
+_sethostname
+_setinvalidrune
+_setipv4sourcefilter
+_setitimer
+_setkey
+_setlinebuf
+_setlocale
+_setlogin
+_setmode
+_setpgid
+_setpgrp
+_setpriority
+_setprogname
+_setregid
+_setreuid
+_setrgid
+_setrlimit
+_setruid
+_setrunelocale
+_setsid
+_setsockopt
+_setsourcefilter
+_setstate
+_settimeofday
+_setttyent
+_setusershell
+_setutxent
+_setutxent_wtmp
+_setvbuf
+_sigaction
+_sigaddset
+_sigaltstack
+_sigblock
+_sigdelset
+_sigemptyset
+_sigfillset
+_sighold
+_sigignore
+_siginterrupt
+_sigismember
+_signal
+_sigpause
+_sigpause$NOCANCEL
+_sigprocmask
+_sigrelse
+_sigset
+_sigsetmask
+_sigsuspend
+_sigsuspend$NOCANCEL
+_sigvec
+_skip
+_sl_add
+_sl_find
+_sl_free
+_sl_init
+_sleep
+_sleep$NOCANCEL
+_snprintf
+_snprintf_l
+_sockatmark
+_socket
+_socketpair
+_spin_lock
+_spin_unlock
+_sprintf
+_sprintf_l
+_sradixsort
+_srand
+_srand48
+_sranddev
+_srandom
+_srandomdev
+_sscanf
+_sscanf_l
+_stat
+_stat$INODE64
+_statfs$INODE64
+_statvfs
+_statx64_np
+_statx_np
+_statx_np$INODE64
+_stpcpy
+_stpncpy
+_strcasecmp
+_strcasecmp_l
+_strcasestr
+_strcasestr_l
+_strcat
+_strchr
+_strcmp
+_strcoll
+_strcoll_l
+_strcpy
+_strcspn
+_strdup
+_strerror
+_strerror_r
+_strfmon
+_strfmon_l
+_strftime
+_strftime_l
+_strlcat
+_strlcpy
+_strlen
+_strmode
+_strncasecmp
+_strncasecmp_l
+_strncat
+_strncmp
+_strncpy
+_strndup
+_strnlen
+_strnstr
+_strpbrk
+_strptime
+_strptime_l
+_strrchr
+_strsep
+_strsignal
+_strspn
+_strstr
+_strtod
+_strtod_l
+_strtof
+_strtof_l
+_strtofflags
+_strtoimax
+_strtoimax_l
+_strtok
+_strtok_r
+_strtol
+_strtol_l
+_strtold
+_strtold_l
+_strtoll
+_strtoll_l
+_strtoq
+_strtoq_l
+_strtoul
+_strtoul_l
+_strtoull
+_strtoull_l
+_strtoumax
+_strtoumax_l
+_strtouq
+_strtouq_l
+_strunvis
+_strunvisx
+_strvis
+_strvisx
+_strxfrm
+_strxfrm_l
+_suboptarg
+_swab
+_swprintf
+_swprintf_l
+_swscanf
+_swscanf_l
+_sxprintf
+_sxprintf_exec
+_sync_volume_np
+_sys_errlist
+_sys_nerr
+_sys_siglist
+_sys_signame
+_sysconf
+_sysctl
+_sysctlbyname
+_sysctlnametomib
+_syslog
+_system
+_system$NOCANCEL
+_task_set_special_port
+_tcdrain
+_tcdrain$NOCANCEL
+_tcflow
+_tcflush
+_tcgetattr
+_tcgetpgrp
+_tcgetsid
+_tcsendbreak
+_tcsetattr
+_tcsetpgrp
+_tdelete
+_telldir
+_telldir$INODE64
+_tempnam
+_tfind
+_thread_stack_pcs
+_time
+_time2posix
+_timegm
+_timelocal
+_timeoff
+_times
+_timezone
+_tmpfile
+_tmpnam
+_toascii
+_tolower
+_tolower_l
+_toupper
+_toupper_l
+_towctrans
+_towctrans_l
+_towlower
+_towlower_l
+_towupper
+_towupper_l
+_tsearch
+_ttyname
+_ttyname_r
+_ttyslot
+_twalk
+_tzname
+_tzset
+_tzsetwall
+_ualarm
+_ulimit
+_umask
+_umaskx_np
+_uname
+_ungetc
+_ungetwc
+_ungetwc_l
+_unlink
+_unlockpt
+_unsetenv
+_unvis
+_uselocale
+_usleep
+_usleep$NOCANCEL
+_utime
+_utimes
+_utmpxname
+_uuid_clear
+_uuid_compare
+_uuid_copy
+_uuid_generate
+_uuid_generate_random
+_uuid_generate_time
+_uuid_is_null
+_uuid_pack
+_uuid_parse
+_uuid_unpack
+_uuid_unparse
+_uuid_unparse_lower
+_uuid_unparse_upper
+_vasprintf
+_vasprintf_l
+_vasxprintf
+_vasxprintf_exec
+_vdprintf
+_vdprintf_l
+_vdxprintf
+_vdxprintf_exec
+_verr
+_verrc
+_verrx
+_vfprintf
+_vfprintf_l
+_vfscanf
+_vfscanf_l
+_vfwprintf
+_vfwprintf_l
+_vfwscanf
+_vfwscanf_l
+_vfxprintf
+_vfxprintf_exec
+_vis
+_vm_allocate
+_vprintf
+_vprintf_l
+_vscanf
+_vscanf_l
+_vsnprintf
+_vsnprintf_l
+_vsprintf
+_vsprintf_l
+_vsscanf
+_vsscanf_l
+_vswprintf
+_vswprintf_l
+_vswscanf
+_vswscanf_l
+_vsxprintf
+_vsxprintf_exec
+_vwarn
+_vwarnc
+_vwarnx
+_vwprintf
+_vwprintf_l
+_vwscanf
+_vwscanf_l
+_vxprintf
+_vxprintf_exec
+_wait
+_wait$NOCANCEL
+_wait3
+_wait4
+_waitpid
+_waitpid$NOCANCEL
+_warn
+_warnc
+_warnx
+_wcpcpy
+_wcpncpy
+_wcrtomb
+_wcrtomb_l
+_wcscasecmp
+_wcscasecmp_l
+_wcscat
+_wcschr
+_wcscmp
+_wcscoll
+_wcscoll_l
+_wcscpy
+_wcscspn
+_wcsdup
+_wcsftime
+_wcsftime_l
+_wcslcat
+_wcslcpy
+_wcslen
+_wcsncasecmp
+_wcsncasecmp_l
+_wcsncat
+_wcsncmp
+_wcsncpy
+_wcsnlen
+_wcsnrtombs
+_wcsnrtombs_l
+_wcspbrk
+_wcsrchr
+_wcsrtombs
+_wcsrtombs_l
+_wcsspn
+_wcsstr
+_wcstod
+_wcstod_l
+_wcstof
+_wcstof_l
+_wcstoimax
+_wcstoimax_l
+_wcstok
+_wcstol
+_wcstol_l
+_wcstold
+_wcstold_l
+_wcstoll
+_wcstoll_l
+_wcstombs
+_wcstombs_l
+_wcstoul
+_wcstoul_l
+_wcstoull
+_wcstoull_l
+_wcstoumax
+_wcstoumax_l
+_wcswidth
+_wcswidth_l
+_wcsxfrm
+_wcsxfrm_l
+_wctob
+_wctob_l
+_wctomb
+_wctomb_l
+_wctrans
+_wctrans_l
+_wctype
+_wctype_l
+_wcwidth
+_wcwidth_l
+_wmemchr
+_wmemcmp
+_wmemcpy
+_wmemmove
+_wmemset
+_wordexp
+_wordfree
+_wprintf
+_wprintf_l
+_write$NOCANCEL
+_writev$NOCANCEL
+_wscanf
+_wscanf_l
+_wtmpxname
+_xprintf
+_xprintf_exec
+dyld_stub_binder
+mcount
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_kernel_symbols b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_kernel_symbols
new file mode 100644
index 00000000000..9d53dea7025
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Libsystem/system_kernel_symbols
@@ -0,0 +1,929 @@
+_NDR_record
+_____old_semwait_signal_nocancel
+_____sigwait_nocancel
+____kernelVersionNumber
+____kernelVersionString
+___accept
+___accept_nocancel
+___access_extended
+___aio_suspend_nocancel
+___bind
+___bsdthread_create
+___bsdthread_register
+___bsdthread_terminate
+___carbon_delete
+___chmod
+___chmod_extended
+___chud
+___close_nocancel
+___commpage_gettimeofday
+___connect
+___connect_nocancel
+___copyfile
+___delete
+___disable_threadsignal
+___error
+___exit
+___fchmod
+___fchmod_extended
+___fcntl
+___fcntl_nocancel
+___fork
+___fsgetpath
+___fstat64_extended
+___fstat_extended
+___fsync_nocancel
+___get_remove_counter
+___getattrlist
+___getdirentries64
+___gethostuuid
+___getlcid
+___getlogin
+___getpeername
+___getpid
+___getrlimit
+___getsgroups
+___getsockname
+___gettid
+___gettimeofday
+___getwgroups
+___guarded_open_np
+___identitysvc
+___inc_remove_counter
+___initgroups
+___ioctl
+___iopolicysys
+___kdebug_trace
+___kernelVersionNumber
+___kernelVersionString
+___kill
+___lchown
+___libkernel_init
+___listen
+___lseek
+___lstat64_extended
+___lstat_extended
+___mac_execve
+___mac_get_fd
+___mac_get_file
+___mac_get_lcid
+___mac_get_lctx
+___mac_get_link
+___mac_get_mount
+___mac_get_pid
+___mac_get_proc
+___mac_getfsstat
+___mac_mount
+___mac_set_fd
+___mac_set_file
+___mac_set_lctx
+___mac_set_link
+___mac_set_proc
+___mac_syscall
+___mkdir_extended
+___mkfifo_extended
+___mmap
+___mprotect
+___msgctl
+___msgrcv_nocancel
+___msgsnd_nocancel
+___msgsys
+___msync
+___msync_nocancel
+___munmap
+___old_semwait_signal
+___open
+___open_dprotected_np
+___open_extended
+___open_nocancel
+___pipe
+___poll_nocancel
+___posix_spawn
+___pread_nocancel
+___proc_info
+___process_policy
+___psynch_cvbroad
+___psynch_cvclrprepost
+___psynch_cvsignal
+___psynch_cvwait
+___psynch_mutexdrop
+___psynch_mutexwait
+___psynch_rw_downgrade
+___psynch_rw_longrdlock
+___psynch_rw_rdlock
+___psynch_rw_unlock
+___psynch_rw_unlock2
+___psynch_rw_upgrade
+___psynch_rw_wrlock
+___psynch_rw_yieldwrlock
+___pthread_canceled
+___pthread_chdir
+___pthread_fchdir
+___pthread_kill
+___pthread_markcancel
+___pthread_sigmask
+___ptrace
+___pwrite_nocancel
+___read_nocancel
+___readv_nocancel
+___recvfrom
+___recvfrom_nocancel
+___recvmsg
+___recvmsg_nocancel
+___rename
+___rmdir
+___sandbox_me
+___sandbox_mm
+___sandbox_ms
+___sandbox_msp
+___select
+___select_nocancel
+___sem_open
+___sem_wait_nocancel
+___semctl
+___semsys
+___semwait_signal
+___semwait_signal_nocancel
+___sendmsg
+___sendmsg_nocancel
+___sendto
+___sendto_nocancel
+___setattrlist
+___setlcid
+___setlogin
+___setregid
+___setreuid
+___setrlimit
+___setsgroups
+___settid
+___settid_with_pid
+___settimeofday
+___setwgroups
+___shared_region_check_np
+___shared_region_map_and_slide_np
+___shm_open
+___shmctl
+___shmsys
+___sigaction
+___sigaltstack
+___sigreturn
+___sigsuspend
+___sigsuspend_nocancel
+___sigwait
+___socketpair
+___stack_snapshot
+___stat64_extended
+___stat_extended
+___syscall
+___syscall_logger
+___sysctl
+___telemetry
+___thread_selfid
+___umask_extended
+___unlink
+___vfork
+___wait4
+___wait4_nocancel
+___waitid_nocancel
+___workq_kernreturn
+___workq_open
+___write_nocancel
+___writev_nocancel
+__cpu_capabilities
+__cpu_has_altivec
+__exit
+__get_cpu_capabilities
+__getprivatesystemidentifier
+__host_page_size
+__init_cpu_capabilities
+__kernelrpc_mach_port_allocate
+__kernelrpc_mach_port_allocate_full
+__kernelrpc_mach_port_allocate_name
+__kernelrpc_mach_port_allocate_qos
+__kernelrpc_mach_port_allocate_trap
+__kernelrpc_mach_port_construct
+__kernelrpc_mach_port_construct_trap
+__kernelrpc_mach_port_deallocate
+__kernelrpc_mach_port_deallocate_trap
+__kernelrpc_mach_port_destroy
+__kernelrpc_mach_port_destroy_trap
+__kernelrpc_mach_port_destruct
+__kernelrpc_mach_port_destruct_trap
+__kernelrpc_mach_port_dnrequest_info
+__kernelrpc_mach_port_extract_member
+__kernelrpc_mach_port_extract_member_trap
+__kernelrpc_mach_port_extract_right
+__kernelrpc_mach_port_get_attributes
+__kernelrpc_mach_port_get_context
+__kernelrpc_mach_port_get_refs
+__kernelrpc_mach_port_get_set_status
+__kernelrpc_mach_port_get_srights
+__kernelrpc_mach_port_guard
+__kernelrpc_mach_port_guard_trap
+__kernelrpc_mach_port_insert_member
+__kernelrpc_mach_port_insert_member_trap
+__kernelrpc_mach_port_insert_right
+__kernelrpc_mach_port_insert_right_trap
+__kernelrpc_mach_port_kernel_object
+__kernelrpc_mach_port_kobject
+__kernelrpc_mach_port_mod_refs
+__kernelrpc_mach_port_mod_refs_trap
+__kernelrpc_mach_port_move_member
+__kernelrpc_mach_port_move_member_trap
+__kernelrpc_mach_port_names
+__kernelrpc_mach_port_peek
+__kernelrpc_mach_port_rename
+__kernelrpc_mach_port_request_notification
+__kernelrpc_mach_port_set_attributes
+__kernelrpc_mach_port_set_context
+__kernelrpc_mach_port_set_mscount
+__kernelrpc_mach_port_set_seqno
+__kernelrpc_mach_port_space_info
+__kernelrpc_mach_port_type
+__kernelrpc_mach_port_unguard
+__kernelrpc_mach_port_unguard_trap
+__kernelrpc_mach_vm_allocate
+__kernelrpc_mach_vm_allocate_trap
+__kernelrpc_mach_vm_deallocate
+__kernelrpc_mach_vm_deallocate_trap
+__kernelrpc_mach_vm_map
+__kernelrpc_mach_vm_map_trap
+__kernelrpc_mach_vm_protect
+__kernelrpc_mach_vm_protect_trap
+__kernelrpc_mach_vm_read
+__kernelrpc_mach_vm_remap
+__kernelrpc_task_set_port_space
+__kernelrpc_vm_map
+__kernelrpc_vm_read
+__kernelrpc_vm_remap
+__mach_errors
+__mach_fork_child
+__mach_snprintf
+__mach_vsnprintf
+__os_alloc_once_table
+__register_gethostuuid_callback
+_accept
+_accept$NOCANCEL
+_access
+_accessx_np
+_acct
+_act_get_state
+_act_set_state
+_adjtime
+_aio_cancel
+_aio_error
+_aio_fsync
+_aio_read
+_aio_return
+_aio_suspend
+_aio_suspend$NOCANCEL
+_aio_write
+_audit
+_audit_session_join
+_audit_session_port
+_audit_session_self
+_auditctl
+_auditon
+_bind
+_bootstrap_port
+_cerror
+_cerror_nocancel
+_change_fdguard_np
+_chdir
+_chflags
+_chmod
+_chown
+_chroot
+_clock_alarm
+_clock_alarm_reply
+_clock_get_attributes
+_clock_get_time
+_clock_set_attributes
+_clock_set_time
+_clock_sleep
+_clock_sleep_trap
+_close
+_close$NOCANCEL
+_connect
+_connect$NOCANCEL
+_connectx
+_csops
+_csops_audittoken
+_disconnectx
+_dup
+_dup2
+_errno
+_etap_trace_thread
+_exc_server
+_exc_server_routine
+_exception_raise
+_exception_raise_state
+_exception_raise_state_identity
+_exchangedata
+_execve
+_fchdir
+_fchflags
+_fchmod
+_fchown
+_fcntl
+_fcntl$NOCANCEL
+_fdatasync
+_ffsctl
+_fgetattrlist
+_fgetxattr
+_fhopen
+_fileport_makefd
+_fileport_makeport
+_flistxattr
+_flock
+_fpathconf
+_fremovexattr
+_fsctl
+_fsetattrlist
+_fsetxattr
+_fstat
+_fstat$INODE64
+_fstat64
+_fstatfs
+_fstatfs$INODE64
+_fstatfs64
+_fsync
+_fsync$NOCANCEL
+_ftruncate
+_futimes
+_get_dp_control_port
+_getattrlist
+_getaudit
+_getaudit_addr
+_getauid
+_getdirentries
+_getdirentriesattr
+_getdtablesize
+_getegid
+_geteuid
+_getfh
+_getfsstat
+_getfsstat$INODE64
+_getfsstat64
+_getgid
+_getgroups
+_gethostuuid
+_getiopolicy_np
+_getitimer
+_getpeername
+_getpgid
+_getpgrp
+_getpid
+_getppid
+_getpriority
+_getrlimit
+_getrusage
+_getsgroups_np
+_getsid
+_getsockname
+_getsockopt
+_getuid
+_getwgroups_np
+_getxattr
+_guarded_close_np
+_guarded_kqueue_np
+_guarded_open_np
+_host_default_memory_manager
+_host_get_UNDServer
+_host_get_boot_info
+_host_get_clock_control
+_host_get_clock_service
+_host_get_exception_ports
+_host_get_io_master
+_host_get_special_port
+_host_info
+_host_kernel_version
+_host_lockgroup_info
+_host_page_size
+_host_priv_statistics
+_host_processor_info
+_host_processor_set_priv
+_host_processor_sets
+_host_processors
+_host_reboot
+_host_request_notification
+_host_security_create_task_token
+_host_security_set_task_token
+_host_self
+_host_self_trap
+_host_set_UNDServer
+_host_set_exception_ports
+_host_set_special_port
+_host_statistics
+_host_statistics64
+_host_swap_exception_ports
+_host_virtual_physical_table_info
+_host_zone_info
+_i386_get_ldt
+_i386_set_ldt
+_important_boost_assertion_token
+_internal_catch_exc_subsystem
+_ioctl
+_issetugid
+_kas_info
+_kevent
+_kevent64
+_kext_request
+_kill
+_kmod_control
+_kmod_create
+_kmod_destroy
+_kmod_get_info
+_kqueue
+_lchown
+_ledger
+_link
+_lio_listio
+_listen
+_listxattr
+_lock_acquire
+_lock_handoff
+_lock_handoff_accept
+_lock_make_stable
+_lock_release
+_lock_set_create
+_lock_set_destroy
+_lock_try
+_lseek
+_lstat
+_lstat$INODE64
+_lstat64
+_mach_absolute_time
+_mach_error
+_mach_error_full_diag
+_mach_error_string
+_mach_error_type
+_mach_host_self
+_mach_init
+_mach_make_memory_entry
+_mach_make_memory_entry_64
+_mach_memory_object_memory_entry
+_mach_memory_object_memory_entry_64
+_mach_msg
+_mach_msg_destroy
+_mach_msg_overwrite
+_mach_msg_overwrite_trap
+_mach_msg_receive
+_mach_msg_send
+_mach_msg_server
+_mach_msg_server_importance
+_mach_msg_server_once
+_mach_msg_trap
+_mach_notify_dead_name
+_mach_notify_no_senders
+_mach_notify_port_deleted
+_mach_notify_port_destroyed
+_mach_notify_send_once
+_mach_port_allocate
+_mach_port_allocate_full
+_mach_port_allocate_name
+_mach_port_allocate_qos
+_mach_port_construct
+_mach_port_deallocate
+_mach_port_destroy
+_mach_port_destruct
+_mach_port_dnrequest_info
+_mach_port_extract_member
+_mach_port_extract_right
+_mach_port_get_attributes
+_mach_port_get_context
+_mach_port_get_refs
+_mach_port_get_set_status
+_mach_port_get_srights
+_mach_port_guard
+_mach_port_insert_member
+_mach_port_insert_right
+_mach_port_kernel_object
+_mach_port_kobject
+_mach_port_mod_refs
+_mach_port_move_member
+_mach_port_names
+_mach_port_peek
+_mach_port_rename
+_mach_port_request_notification
+_mach_port_set_attributes
+_mach_port_set_context
+_mach_port_set_mscount
+_mach_port_set_seqno
+_mach_port_space_info
+_mach_port_type
+_mach_port_unguard
+_mach_ports_lookup
+_mach_ports_register
+_mach_reply_port
+_mach_task_self
+_mach_task_self_
+_mach_thread_self
+_mach_timebase_info
+_mach_vm_allocate
+_mach_vm_behavior_set
+_mach_vm_copy
+_mach_vm_deallocate
+_mach_vm_inherit
+_mach_vm_machine_attribute
+_mach_vm_map
+_mach_vm_msync
+_mach_vm_page_info
+_mach_vm_page_query
+_mach_vm_protect
+_mach_vm_purgable_control
+_mach_vm_read
+_mach_vm_read_list
+_mach_vm_read_overwrite
+_mach_vm_region
+_mach_vm_region_recurse
+_mach_vm_remap
+_mach_vm_wire
+_mach_vm_write
+_mach_wait_until
+_mach_zone_force_gc
+_mach_zone_info
+_macx_backing_store_recovery
+_macx_backing_store_suspend
+_macx_swapoff
+_macx_swapon
+_macx_triggers
+_madvise
+_memorystatus_control
+_memorystatus_get_level
+_mig_allocate
+_mig_dealloc_reply_port
+_mig_deallocate
+_mig_get_reply_port
+_mig_put_reply_port
+_mig_reply_setup
+_mig_strncpy
+_mincore
+_minherit
+_mk_timer_arm
+_mk_timer_cancel
+_mk_timer_create
+_mk_timer_destroy
+_mkdir
+_mkfifo
+_mknod
+_mlock
+_mlockall
+_mmap
+_modwatch
+_mount
+_mprotect
+_msg_receive
+_msg_rpc
+_msg_send
+_msgctl
+_msgget
+_msgrcv
+_msgrcv$NOCANCEL
+_msgsnd
+_msgsnd$NOCANCEL
+_msgsys
+_msync
+_msync$NOCANCEL
+_munlock
+_munlockall
+_munmap
+_netname_check_in
+_netname_check_out
+_netname_look_up
+_netname_version
+_nfsclnt
+_nfssvc
+_non_boost_assertion_token
+_normal_boost_assertion_token
+_open
+_open$NOCANCEL
+_open_dprotected_np
+_panic
+_panic_init
+_pathconf
+_peeloff
+_pid_for_task
+_pid_resume
+_pid_suspend
+_pipe
+_poll
+_poll$NOCANCEL
+_port_obj_init
+_port_obj_table
+_port_obj_table_size
+_posix_madvise
+_posix_spawn
+_posix_spawn_file_actions_addclose
+_posix_spawn_file_actions_adddup2
+_posix_spawn_file_actions_addinherit_np
+_posix_spawn_file_actions_addopen
+_posix_spawn_file_actions_destroy
+_posix_spawn_file_actions_init
+_posix_spawnattr_destroy
+_posix_spawnattr_getbinpref_np
+_posix_spawnattr_getcpumonitor
+_posix_spawnattr_getflags
+_posix_spawnattr_getmacpolicyinfo_np
+_posix_spawnattr_getpcontrol_np
+_posix_spawnattr_getpgroup
+_posix_spawnattr_getprocesstype_np
+_posix_spawnattr_getsigdefault
+_posix_spawnattr_getsigmask
+_posix_spawnattr_init
+_posix_spawnattr_set_importancewatch_port_np
+_posix_spawnattr_setauditsessionport_np
+_posix_spawnattr_setbinpref_np
+_posix_spawnattr_setcpumonitor
+_posix_spawnattr_setcpumonitor_default
+_posix_spawnattr_setexceptionports_np
+_posix_spawnattr_setflags
+_posix_spawnattr_setmacpolicyinfo_np
+_posix_spawnattr_setpcontrol_np
+_posix_spawnattr_setpgroup
+_posix_spawnattr_setprocesstype_np
+_posix_spawnattr_setsigdefault
+_posix_spawnattr_setsigmask
+_posix_spawnattr_setspecialport_np
+_pread
+_pread$NOCANCEL
+_proc_clear_delayidlesleep
+_proc_clear_vmpressure
+_proc_disable_apptype
+_proc_disable_cpumon
+_proc_disable_wakemon
+_proc_donate_importance_boost
+_proc_enable_apptype
+_proc_get_cpumon_params
+_proc_get_dirty
+_proc_get_wakemon_params
+_proc_importance_assertion_begin_with_msg
+_proc_importance_assertion_complete
+_proc_kmsgbuf
+_proc_libversion
+_proc_listallpids
+_proc_listchildpids
+_proc_listpgrppids
+_proc_listpids
+_proc_listpidspath
+_proc_name
+_proc_pid_rusage
+_proc_pidfdinfo
+_proc_pidfileportinfo
+_proc_pidinfo
+_proc_pidpath
+_proc_regionfilename
+_proc_rlimit_control
+_proc_set_cpumon_defaults
+_proc_set_cpumon_params
+_proc_set_delayidlesleep
+_proc_set_dirty
+_proc_set_owner_vmpressure
+_proc_set_wakemon_defaults
+_proc_set_wakemon_params
+_proc_setpcontrol
+_proc_suppress
+_proc_terminate
+_proc_track_dirty
+_proc_uuid_policy
+_processor_assign
+_processor_control
+_processor_exit
+_processor_get_assignment
+_processor_info
+_processor_set_create
+_processor_set_default
+_processor_set_destroy
+_processor_set_info
+_processor_set_max_priority
+_processor_set_policy_control
+_processor_set_policy_disable
+_processor_set_policy_enable
+_processor_set_stack_usage
+_processor_set_statistics
+_processor_set_tasks
+_processor_set_threads
+_processor_start
+_pthread_getugid_np
+_pthread_setugid_np
+_ptrace
+_pwrite
+_pwrite$NOCANCEL
+_quota
+_quotactl
+_read
+_read$NOCANCEL
+_readlink
+_readv
+_readv$NOCANCEL
+_reboot
+_recvfrom
+_recvfrom$NOCANCEL
+_recvmsg
+_recvmsg$NOCANCEL
+_removexattr
+_rename
+_revoke
+_rmdir
+_searchfs
+_select
+_select$1050
+_select$DARWIN_EXTSN
+_select$DARWIN_EXTSN$NOCANCEL
+_select$NOCANCEL
+_sem_close
+_sem_destroy
+_sem_getvalue
+_sem_init
+_sem_open
+_sem_post
+_sem_trywait
+_sem_unlink
+_sem_wait
+_sem_wait$NOCANCEL
+_semaphore_create
+_semaphore_destroy
+_semaphore_signal
+_semaphore_signal_all
+_semaphore_signal_all_trap
+_semaphore_signal_thread
+_semaphore_signal_thread_trap
+_semaphore_signal_trap
+_semaphore_timedwait
+_semaphore_timedwait_signal
+_semaphore_timedwait_signal_trap
+_semaphore_timedwait_trap
+_semaphore_wait
+_semaphore_wait_signal
+_semaphore_wait_signal_trap
+_semaphore_wait_trap
+_semctl
+_semget
+_semop
+_semsys
+_sendfile
+_sendmsg
+_sendmsg$NOCANCEL
+_sendto
+_sendto$NOCANCEL
+_set_dp_control_port
+_setattrlist
+_setaudit
+_setaudit_addr
+_setauid
+_setegid
+_seteuid
+_setgid
+_setgroups
+_setiopolicy_np
+_setitimer
+_setpgid
+_setpriority
+_setprivexec
+_setquota
+_setregid
+_setreuid
+_setrlimit
+_setsgroups_np
+_setsid
+_setsockopt
+_setuid
+_setwgroups_np
+_setxattr
+_shm_open
+_shm_unlink
+_shmat
+_shmctl
+_shmdt
+_shmget
+_shmsys
+_shutdown
+_sigpending
+_sigprocmask
+_sigsuspend
+_sigsuspend$NOCANCEL
+_socket
+_socket_delegate
+_socketpair
+_stat
+_stat$INODE64
+_stat64
+_statfs
+_statfs$INODE64
+_statfs64
+_swapon
+_swtch
+_swtch_pri
+_symlink
+_sync
+_syscall
+_syscall_thread_switch
+_system_override
+_task_assign
+_task_assign_default
+_task_create
+_task_for_pid
+_task_get_assignment
+_task_get_emulation_vector
+_task_get_exception_ports
+_task_get_special_port
+_task_get_state
+_task_info
+_task_name_for_pid
+_task_policy
+_task_policy_get
+_task_policy_set
+_task_purgable_info
+_task_resume
+_task_resume2
+_task_sample
+_task_self_
+_task_self_trap
+_task_set_emulation
+_task_set_emulation_vector
+_task_set_exception_ports
+_task_set_info
+_task_set_phys_footprint_limit
+_task_set_policy
+_task_set_port_space
+_task_set_ras_pc
+_task_set_special_port
+_task_set_state
+_task_suspend
+_task_suspend2
+_task_swap_exception_ports
+_task_terminate
+_task_threads
+_task_zone_info
+_thread_abort
+_thread_abort_safely
+_thread_assign
+_thread_assign_default
+_thread_create
+_thread_create_running
+_thread_depress_abort
+_thread_get_assignment
+_thread_get_exception_ports
+_thread_get_special_port
+_thread_get_state
+_thread_info
+_thread_policy
+_thread_policy_get
+_thread_policy_set
+_thread_resume
+_thread_sample
+_thread_self_trap
+_thread_set_exception_ports
+_thread_set_policy
+_thread_set_special_port
+_thread_set_state
+_thread_suspend
+_thread_swap_exception_ports
+_thread_switch
+_thread_terminate
+_thread_wire
+_truncate
+_umask
+_undelete
+_unlink
+_unmount
+_utimes
+_vfork
+_vfs_purge
+_vm_allocate
+_vm_allocate_cpm
+_vm_behavior_set
+_vm_copy
+_vm_deallocate
+_vm_inherit
+_vm_kernel_page_mask
+_vm_kernel_page_shift
+_vm_kernel_page_size
+_vm_machine_attribute
+_vm_map
+_vm_map_page_query
+_vm_msync
+_vm_page_mask
+_vm_page_shift
+_vm_page_size
+_vm_pressure_monitor
+_vm_protect
+_vm_purgable_control
+_vm_read
+_vm_read_list
+_vm_read_overwrite
+_vm_region_64
+_vm_region_recurse_64
+_vm_remap
+_vm_wire
+_vm_write
+_vprintf_stderr_func
+_wait4
+_waitevent
+_waitid
+_waitid$NOCANCEL
+_watchevent
+_write
+_write$NOCANCEL
+_writev
+_writev$NOCANCEL
diff --git a/pkgs/os-specific/darwin/apple-source-releases/Security/default.nix b/pkgs/os-specific/darwin/apple-source-releases/Security/default.nix
new file mode 100644
index 00000000000..f09842630fd
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/Security/default.nix
@@ -0,0 +1,116 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ __propagatedImpureHostDeps = [
+ "/System/Library/Frameworks/Security.framework/Security"
+ "/System/Library/Frameworks/Security.framework/Resources"
+ "/System/Library/Frameworks/Security.framework/PlugIns"
+ "/System/Library/Frameworks/Security.framework/XPCServices"
+ "/System/Library/Frameworks/Security.framework/Versions"
+ ];
+
+ installPhase = ''
+ ###### IMPURITIES
+ mkdir -p $out/Library/Frameworks/Security.framework
+ pushd $out/Library/Frameworks/Security.framework
+ ln -s /System/Library/Frameworks/Security.framework/Security
+ ln -s /System/Library/Frameworks/Security.framework/Resources
+ ln -s /System/Library/Frameworks/Security.framework/PlugIns
+ ln -s /System/Library/Frameworks/Security.framework/XPCServices
+ popd
+
+ ###### HEADERS
+
+ export dest=$out/Library/Frameworks/Security.framework/Headers
+ mkdir -p $dest
+
+ cp libsecurity_asn1/lib/SecAsn1Coder.h $dest
+ cp libsecurity_asn1/lib/SecAsn1Templates.h $dest
+ cp libsecurity_asn1/lib/SecAsn1Types.h $dest
+ cp libsecurity_asn1/lib/oidsalg.h $dest
+ cp libsecurity_asn1/lib/oidsattr.h $dest
+
+ cp libsecurity_authorization/lib/AuthSession.h $dest
+ cp libsecurity_authorization/lib/Authorization.h $dest
+ cp libsecurity_authorization/lib/AuthorizationDB.h $dest
+ cp libsecurity_authorization/lib/AuthorizationPlugin.h $dest
+ cp libsecurity_authorization/lib/AuthorizationTags.h $dest
+
+ cp libsecurity_cms/lib/CMSDecoder.h $dest
+ cp libsecurity_cms/lib/CMSEncoder.h $dest
+
+ cp libsecurity_codesigning/lib/CSCommon.h $dest
+ cp libsecurity_codesigning/lib/CodeSigning.h $dest
+ cp libsecurity_codesigning/lib/SecCode.h $dest
+ cp libsecurity_codesigning/lib/SecCodeHost.h $dest
+ cp libsecurity_codesigning/lib/SecRequirement.h $dest
+ cp libsecurity_codesigning/lib/SecStaticCode.h $dest
+ cp libsecurity_codesigning/lib/SecTask.h $dest
+
+ cp libsecurity_cssm/lib/certextensions.h $dest
+ cp libsecurity_cssm/lib/cssm.h $dest
+ cp libsecurity_cssm/lib/cssmaci.h $dest
+ cp libsecurity_cssm/lib/cssmapi.h $dest
+ cp libsecurity_cssm/lib/cssmapple.h $dest
+ cp libsecurity_cssm/lib/cssmcli.h $dest
+ cp libsecurity_cssm/lib/cssmconfig.h $dest
+ cp libsecurity_cssm/lib/cssmcspi.h $dest
+ cp libsecurity_cssm/lib/cssmdli.h $dest
+ cp libsecurity_cssm/lib/cssmerr.h $dest
+ cp libsecurity_cssm/lib/cssmkrapi.h $dest
+ cp libsecurity_cssm/lib/cssmkrspi.h $dest
+ cp libsecurity_cssm/lib/cssmspi.h $dest
+ cp libsecurity_cssm/lib/cssmtpi.h $dest
+ cp libsecurity_cssm/lib/cssmtype.h $dest
+ cp libsecurity_cssm/lib/eisl.h $dest
+ cp libsecurity_cssm/lib/emmspi.h $dest
+ cp libsecurity_cssm/lib/emmtype.h $dest
+ cp libsecurity_cssm/lib/oidsbase.h $dest
+ cp libsecurity_cssm/lib/oidscert.h $dest
+ cp libsecurity_cssm/lib/oidscrl.h $dest
+ cp libsecurity_cssm/lib/x509defs.h $dest
+
+ cp libsecurity_keychain/lib/SecACL.h $dest
+ cp libsecurity_keychain/lib/SecAccess.h $dest
+ cp libsecurity_keychain/lib/SecBase.h $dest
+ cp libsecurity_keychain/lib/SecCertificate.h $dest
+ cp libsecurity_keychain/lib/SecCertificatePriv.h $dest # Private
+ cp libsecurity_keychain/lib/SecCertificateOIDs.h $dest
+ cp libsecurity_keychain/lib/SecIdentity.h $dest
+ cp libsecurity_keychain/lib/SecIdentitySearch.h $dest
+ cp libsecurity_keychain/lib/SecImportExport.h $dest
+ cp libsecurity_keychain/lib/SecItem.h $dest
+ cp libsecurity_keychain/lib/SecKey.h $dest
+ cp libsecurity_keychain/lib/SecKeychain.h $dest
+ cp libsecurity_keychain/lib/SecKeychainItem.h $dest
+ cp libsecurity_keychain/lib/SecKeychainSearch.h $dest
+ cp libsecurity_keychain/lib/SecPolicy.h $dest
+ cp libsecurity_keychain/lib/SecPolicySearch.h $dest
+ cp libsecurity_keychain/lib/SecRandom.h $dest
+ cp libsecurity_keychain/lib/SecTrust.h $dest
+ cp libsecurity_keychain/lib/SecTrustSettings.h $dest
+ cp libsecurity_keychain/lib/SecTrustedApplication.h $dest
+ cp libsecurity_keychain/lib/Security.h $dest
+
+ cp libsecurity_manifest/lib/SecureDownload.h $dest
+
+ cp libsecurity_mds/lib/mds.h $dest
+ cp libsecurity_mds/lib/mds_schema.h $dest
+
+ cp libsecurity_ssl/lib/CipherSuite.h $dest
+ cp libsecurity_ssl/lib/SecureTransport.h $dest
+
+ cp libsecurity_transform/lib/SecCustomTransform.h $dest
+ cp libsecurity_transform/lib/SecDecodeTransform.h $dest
+ cp libsecurity_transform/lib/SecDigestTransform.h $dest
+ cp libsecurity_transform/lib/SecEncodeTransform.h $dest
+ cp libsecurity_transform/lib/SecEncryptTransform.h $dest
+ cp libsecurity_transform/lib/SecReadTransform.h $dest
+ cp libsecurity_transform/lib/SecSignVerifyTransform.h $dest
+ cp libsecurity_transform/lib/SecTransform.h $dest
+ cp libsecurity_transform/lib/SecTransformReadTransform.h $dest
+
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix
new file mode 100644
index 00000000000..db467254f17
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, appleDerivation, version }:
+
+appleDerivation {
+ # Will override the name until we provide all of adv_cmds
+ name = "ps-${version}";
+
+ buildPhase = ''
+ cd ps
+ cc -Os -Wall -I. -c -o fmt.o fmt.c
+ cc -Os -Wall -I. -c -o keyword.o keyword.c
+ cc -Os -Wall -I. -c -o nlist.o nlist.c
+ cc -Os -Wall -I. -c -o print.o print.c
+ cc -Os -Wall -I. -c -o ps.o ps.c
+ cc -Os -Wall -I. -c -o tasks.o tasks.c
+ cc -o ps fmt.o keyword.o nlist.o print.o ps.o tasks.o
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin $out/share/man/man1
+
+ cp ps $out/bin/ps
+ cp ps.1 $out/share/man/man1
+ '';
+
+
+ meta = {
+ platforms = stdenv.lib.platforms.darwin;
+ maintainers = with stdenv.lib.maintainers; [ gridaphobe ];
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix b/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix
new file mode 100644
index 00000000000..edb7869269a
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/architecture/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ postUnpack = ''
+ substituteInPlace $sourceRoot/Makefile \
+ --replace "/usr/include" "/include" \
+ --replace "/usr/bin/" "" \
+ --replace "/bin/" ""
+ '';
+
+ installPhase = ''
+ export DSTROOT=$out
+ make install
+ '';
+
+ meta = with stdenv.lib; {
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/bootstrap-cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix
similarity index 83%
rename from pkgs/os-specific/darwin/bootstrap-cmds/default.nix
rename to pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix
index add17aa362a..8dce3fd3609 100644
--- a/pkgs/os-specific/darwin/bootstrap-cmds/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/bootstrap_cmds/default.nix
@@ -1,15 +1,7 @@
-{ stdenv, fetchurl, flex, yacc }:
+{ stdenv, appleDerivation, yacc, flex }:
-stdenv.mkDerivation rec {
- version = "86";
- name = "bootstrap_cmds-${version}";
-
- src = fetchurl {
- url = "http://www.opensource.apple.com/tarballs/bootstrap_cmds/${name}.tar.gz";
- sha256 = "0xr0296jm1r3q7kbam98h85g23qlfi763z54ahj563n636kyk2wb";
- };
-
- buildInputs = [ flex yacc ];
+appleDerivation {
+ buildInputs = [ yacc flex ];
buildPhase = ''
cd migcom.tproj
@@ -42,5 +34,11 @@ stdenv.mkDerivation rec {
cp migcom $out/libexec
cp mig.1 $out/share/man/man1
cp migcom.1 $out/share/man/man1
+
+ substituteInPlace $out/bin/mig \
+ --replace 'arch=`/usr/bin/arch`' 'arch=i386' \
+ --replace '/usr/bin/' "" \
+ --replace '/bin/rmdir' "rmdir" \
+ --replace 'C=''${MIGCC}' "C=cc"
'';
-}
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix
new file mode 100644
index 00000000000..3427081bfaa
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/configd/default.nix
@@ -0,0 +1,205 @@
+{ stdenv, appleDerivation, launchd, bootstrap_cmds, xnu, ppp, IOKit, eap8021x, Security }:
+
+appleDerivation {
+ buildInputs = [ launchd bootstrap_cmds xnu ppp IOKit eap8021x ];
+
+ propagatedBuildInputs = [ Security ];
+
+ patchPhase = ''
+ substituteInPlace SystemConfiguration.fproj/SCNetworkReachabilityInternal.h \
+ --replace '#include ' ""
+
+ substituteInPlace SystemConfiguration.fproj/SCNetworkReachability.c \
+ --replace ''$'#define\tHAVE_VPN_STATUS' ""
+
+ substituteInPlace SystemConfiguration.fproj/reachability/SCNetworkReachabilityServer_client.c \
+ --replace '#include ' '#include "fake_xpc.h"' \
+ --replace '#include ' "" \
+
+ # Our neutered CoreFoundation doesn't have this function, but I think we'll live...
+ substituteInPlace SystemConfiguration.fproj/SCNetworkConnectionPrivate.c \
+ --replace 'CFPreferencesAppValueIsForced(serviceID, USER_PREFERENCES_APPLICATION_ID)' 'FALSE' \
+ --replace 'CFPreferencesAppValueIsForced(userPrivate->serviceID, USER_PREFERENCES_APPLICATION_ID)' 'FALSE'
+
+ cat >SystemConfiguration.fproj/fake_xpc.h </dev/null
+
+ mkdir -p SystemConfiguration.framework/Resources
+ cp ../get-mobility-info SystemConfiguration.framework/Resources
+ cp Info.plist SystemConfiguration.framework/Resources
+ cp -r English.lproj SystemConfiguration.framework/Resources
+ cp NetworkConfiguration.plist SystemConfiguration.framework/Resources
+
+ mkdir -p SystemConfiguration.framework/Headers
+ mkdir -p SystemConfiguration.framework/PrivateHeaders
+
+ # The standard public headers
+ cp SCSchemaDefinitions.h SystemConfiguration.framework/Headers
+ cp SystemConfiguration.h SystemConfiguration.framework/Headers
+ cp SCDynamicStore.h SystemConfiguration.framework/Headers
+ cp SCDynamicStoreCopySpecific.h SystemConfiguration.framework/Headers
+ cp SCPreferences.h SystemConfiguration.framework/Headers
+ cp CaptiveNetwork.h SystemConfiguration.framework/Headers
+ cp SCPreferencesPath.h SystemConfiguration.framework/Headers
+ cp SCDynamicStoreKey.h SystemConfiguration.framework/Headers
+ cp SCPreferencesSetSpecific.h SystemConfiguration.framework/Headers
+ cp SCNetworkConfiguration.h SystemConfiguration.framework/Headers
+ cp SCNetworkConnection.h SystemConfiguration.framework/Headers
+ cp SCNetworkReachability.h SystemConfiguration.framework/Headers
+ cp DHCPClientPreferences.h SystemConfiguration.framework/Headers
+ cp SCNetwork.h SystemConfiguration.framework/Headers
+ cp SCDynamicStoreCopyDHCPInfo.h SystemConfiguration.framework/Headers
+
+ # TODO: Do we want to preserve private headers or just make them public?
+ cp SCDPlugin.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCDynamicStorePrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCDynamicStoreCopySpecificPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCDynamicStoreSetSpecificPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCValidation.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPreferencesPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp DeviceOnHold.h SystemConfiguration.framework/PrivateHeaders
+ cp LinkConfiguration.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPreferencesPathKey.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPreferencesSetSpecificPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCNetworkConnectionPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPreferencesGetSpecificPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCSchemaDefinitionsPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCNetworkConfigurationPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCPreferencesKeychainPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp SCNetworkSignature.h SystemConfiguration.framework/PrivateHeaders
+ cp SCNetworkSignaturePrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp VPNPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp VPNConfiguration.h SystemConfiguration.framework/PrivateHeaders
+ cp VPNTunnelPrivate.h SystemConfiguration.framework/PrivateHeaders
+ cp VPNTunnel.h SystemConfiguration.framework/PrivateHeaders
+
+ mkdir derived
+
+ cat >derived/SystemConfiguration_vers.c </dev/null
+ '';
+
+ installPhase = ''
+ mkdir -p $out/include
+ cp dnsinfo/*.h $out/include/
+
+ mkdir -p $out/Library/Frameworks/
+ mv SystemConfiguration.fproj/SystemConfiguration.framework $out/Library/Frameworks
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/copyfile/default.nix b/pkgs/os-specific/darwin/apple-source-releases/copyfile/default.nix
new file mode 100644
index 00000000000..c1a2acccaa9
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/copyfile/default.nix
@@ -0,0 +1,10 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include/
+ cp copyfile.h $out/include/
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix
new file mode 100644
index 00000000000..afaf602bec5
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix
@@ -0,0 +1,83 @@
+{ stdenv, fetchurl, pkgs }:
+
+let
+ fetchApple = version: sha256: name: fetchurl {
+ url = "http://www.opensource.apple.com/tarballs/${name}/${name}-${version}.tar.gz";
+ inherit sha256;
+ };
+
+ applePackage = namePath: version: sha256:
+ let
+ name = builtins.elemAt (stdenv.lib.splitString "/" namePath) 0;
+
+ appleDerivation = attrs: stdenv.mkDerivation ({
+ inherit version;
+ name = "${name}-${version}";
+ } // (if attrs ? srcs then {} else {
+ src = fetchApple version sha256 name;
+ }) // attrs);
+ callPackage = pkgs.newScope (packages // pkgs.darwin // { inherit appleDerivation name version; });
+ in callPackage (./. + builtins.toPath "/${namePath}");
+
+ IOKitSpecs = {
+ IOAudioFamily = fetchApple "197.4.2" "1dmrczdmbdkvnhjbv233wx4xczgpf5wjrhr83aizrwpks5avkxbr";
+ IOFireWireFamily = fetchApple "455.4.0" "034n2v6z7lf1cx3sp3309z4sn8mkchjcrsf177iag46yzlzcjgfl";
+ IOFWDVComponents = fetchApple "207.4.1" "1brr0yn6mxgapw3bvlhyissfksifzj2mqsvj9vmps6zwcsxjfw7m";
+ IOFireWireAVC = fetchApple "422.4.0" "1anw8cfmwkavnrs28bzshwa3cwk4r1p3x72561zljx57d0na9164";
+ IOFireWireSBP2 = fetchApple "426.4.1" "0asik6qjhf3jjp22awsiyyd6rj02zwnx47l0afbwmxpn5bchfk60";
+ IOFireWireSerialBusProtocolTransport = fetchApple "251.0.1" "09kiq907qpk94zbij1mrcfcnyyc5ncvlxavxjrj4v5braxm78lhi";
+ IOGraphics = fetchApple "471.92.1" "1c110c9chafy5ilvnc08my9ka530aljggbn66gh3sjsg7lzck9nb";
+ IOHIDFamily = fetchApple "503.215.2" "0nx9mzdw848y6ppcfvip3ybczd1fxkr413zhi9qhw7gnpvac5g3n";
+ IONetworkingFamily = fetchApple "100" "10r769mqq7aiksdsvyz76xjln0lg7dj4pkg2x067ygyf9md55hlz";
+ IOSerialFamily = fetchApple "64.1.1" "1bfkqmg7clwm23byr3iji812j7v1p6565b1ri6p78zviqxnxh7cx";
+ IOStorageFamily = fetchApple "172" "0w5yr8ppl82anwph2zba0ppjji6ipf5x410zhcm1drzwn4bbkxrj";
+ IOBDStorageFamily = fetchApple "14" "1rbvmh311n853j5qb6hfda94vym9wkws5w736w2r7dwbrjyppc1q";
+ IOCDStorageFamily = fetchApple "51" "1905sxwmpxdcnm6yggklc5zimx1558ygm3ycj6b34f9h48xfxzgy";
+ IODVDStorageFamily = fetchApple "35" "1fv82rn199mi998l41c0qpnlp3irhqp2rb7v53pxbx7cra4zx3i6";
+ # There should be an IOStreamFamily project here, but they haven't released it :(
+ IOUSBFamily = fetchApple "630.4.5" "1znqb6frxgab9mkyv7csa08c26p9p0ip6hqb4wm9c7j85kf71f4j"; # This is from 10.8 :(
+ IOUSBFamily_older = fetchApple "560.4.2" "113lmpz8n6sibd27p42h8bl7a6c3myc6zngwri7gnvf8qlajzyml" "IOUSBFamily"; # This is even older :(
+ IOKitUser = fetchApple "907.100.13" "0kcbrlyxcyirvg5p95hjd9k8a01k161zg0bsfgfhkb90kh2s8x0m";
+ # There should be an IOVideo here, but they haven't released it :(
+ };
+
+ IOKitSrcs = stdenv.lib.mapAttrs (name: value: if builtins.isFunction value then value name else value) IOKitSpecs;
+
+ packages = {
+ adv_cmds = applePackage "adv_cmds" "153" "174v6a4zkcm2pafzgdm6kvs48z5f911zl7k49hv7kjq6gm58w99v" {};
+ architecture = applePackage "architecture" "265" "05wz8wmxlqssfp29x203fwfb8pgbdjj1mpz12v508658166yzqj8" {};
+ bootstrap_cmds = applePackage "bootstrap_cmds" "86" "0xr0296jm1r3q7kbam98h85g23qlfi763z54ahj563n636kyk2wb" {};
+ CarbonHeaders = applePackage "CarbonHeaders" "9A581" "1hc0yijlpwq39x5bic6nnywqp2m1wj1f11j33m2q7p505h1h740c" {};
+ CF = applePackage "CF" "855.17" "1sadmxi9fsvsmdyxvg2133sdzvkzwil5fvyyidxsyk1iyfzqsvln" {};
+ CommonCrypto = applePackage "CommonCrypto" "60049" "1azin6w7cnzl0iv8kd2qzgwcp6a45zy64y5z1i6jysjcl6xmlw2h" {};
+ configd = applePackage "configd" "453.19" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" {};
+ copyfile = applePackage "copyfile" "103.92.1" "15i2hw5aqx0fklvmq6avin5s00adacvzqc740vviwc2y742vrdcd" {};
+ CoreOSMakefiles = applePackage "CoreOSMakefiles" "76" "0sw3w3sjil0kvxz8y86b81sz82rcd1nijayki1a1bsnsf0hz6qbf" {};
+ Csu = applePackage "Csu" "79" "1hif4dz23isgx85sgh11yg8amvp2ksvvhz3y5v07zppml7df2lnh" {};
+ dtrace = applePackage "dtrace" "118.1" "0pp5x8dgvzmg9vvg32hpy2brm17dpmbwrcr4prsmdmfvd4767wcf" { cctools = pkgs.darwin.cctools_native; };
+ dyld = applePackage "dyld" "239.4" "07z7lyv6x0f6gllb5hymccl31zisrdhz4gqp722xcs9nhsqaqvn7" {};
+ eap8021x = applePackage "eap8021x" "180" "1ynkq8zmhgqhpkdg2syj085lzya0fz55d3423hvf9kcgpbjcd9ic" {};
+ IOKit = applePackage "IOKit" "907.100.13" "0kcbrlyxcyirvg5p95hjd9k8a01k161zg0bsfgfhkb90kh2s8x0m" { inherit IOKitSrcs; };
+ launchd = applePackage "launchd" "842.92.1" "0w30hvwqq8j5n90s3qyp0fccxflvrmmjnicjri4i1vd2g196jdgj" {};
+ libauto = applePackage "libauto" "185.5" "17z27yq5d7zfkwr49r7f0vn9pxvj95884sd2k6lq6rfaz9gxqhy3" {};
+ Libc = applePackage "Libc" "997.90.3" "1jz5bx9l4q484vn28c6n9b28psja3rpxiqbj6zwrwvlndzmq1yz5" {};
+ Libc_old = applePackage "Libc/825_40_1.nix" "825.40.1" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {};
+ libclosure = applePackage "libclosure" "63" "083v5xhihkkajj2yvz0dwgbi0jl2qvzk22p7pqq1zp3ry85xagrx" {};
+ libdispatch = applePackage "libdispatch" "339.92.1" "1lc5033cmkwxy3r26gh9plimxshxfcbgw6i0j7mgjlnpk86iy5bk" {};
+ libiconv = applePackage "libiconv" "41" "10q7yd35flr893nysn9i04njgks4m3gis7jivb9ra9dcb77gqdcn" {};
+ Libinfo = applePackage "Libinfo" "449.1.3" "1ix6f7xwjnq9bqgv8w27k4j64bqn1mfhh91nc7ciiv55axpdb9hq" {};
+ Libm = applePackage "Libm" "2026" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {};
+ Libnotify = applePackage "Libnotify" "121.20.1" "164rx4za5z74s0mk9x0m1815r1m9kfal8dz3bfaw7figyjd6nqad" {};
+ libpthread = applePackage "libpthread" "105.1.4" "09vwwahcvmxvx2xl0890gkp91n61dld29j73y2pa597bqkag2qpg" {};
+ libresolv = applePackage "libresolv" "54" "028mp2smd744ryxwl8cqz4njv8h540sdw3an1yl7yxqcs04r0p4b" {};
+ Libsystem = applePackage "Libsystem" "1197.1.1" "1yfj2qdrf9vrzs7p9m4wlb7zzxcrim1gw43x4lvz4qydpp5kg2rh" { cctools = pkgs.darwin.cctools_native; };
+ libunwind = applePackage "libunwind" "35.3" "0miffaa41cv0lzf8az5k1j1ng8jvqvxcr4qrlkf3xyj479arbk1b" {};
+ mDNSResponder = applePackage "mDNSResponder" "522.92.1" "1cp87qda1s7brriv413i71yggm8yqfwv64vknrnqv24fcb8hzbmy" {};
+ objc4 = applePackage "objc4" "551.1" "1jrdb6yyb5jwwj27c1r0nr2y2ihqjln8ynj61mpkvp144c1cm5bg" {};
+ objc4_pure = applePackage "objc4/pure.nix" "551.1" "1jrdb6yyb5jwwj27c1r0nr2y2ihqjln8ynj61mpkvp144c1cm5bg" {};
+ ppp = applePackage "ppp" "727.90.1" "166xz1q7al12hm3q3drlp2r6fgdrsq3pmazjp3nsqg3vnglyh4gk" {};
+ removefile = applePackage "removefile" "33" "0ycvp7cnv40952a1jyhm258p6gg5xzh30x86z5gb204x80knw30y" {};
+ Security = applePackage "Security" "55471.14.18" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {};
+ xnu = applePackage "xnu" "2422.115.4" "1ssw5fzvgix20bw6y13c39ib0zs7ykpig3irlwbaccpjpci5jl0s" {};
+ };
+in packages
diff --git a/pkgs/os-specific/darwin/apple-source-releases/dtrace/default.nix b/pkgs/os-specific/darwin/apple-source-releases/dtrace/default.nix
new file mode 100644
index 00000000000..5fcd04266d5
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/dtrace/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, appleDerivation, cctools, zlib }:
+
+appleDerivation {
+ buildInputs = [ cctools zlib ];
+
+ buildPhase = ''
+ export CFLAGS=" -I$PWD/head -I$PWD/sys -I$PWD/libelf -I$PWD/libdwarf"
+
+ pushd libelf
+ for f in *.c; do
+ if [ "$f" != "lintsup.c" ]; then # Apple doesn't use it, so I don't either
+ cc -D_INT64_TYPE -D_LONGLONG_TYPE -D_ILP32 $CFLAGS -c $f
+ fi
+ done
+ libtool -static -o libelf.a *.o
+ popd
+
+ pushd libdwarf
+ ./configure CFLAGS="$CFLAGS -Icmplrs"
+ make
+ popd
+
+ cp libelf/libelf.a tools/ctfconvert
+ cp libdwarf/libdwarf.a tools/ctfconvert
+
+ pushd tools/ctfconvert
+ for f in ../../darwin_shim.c *.c; do
+ cc -DNDEBUG -DNS_BLOCK_ASSERTIONS $CFLAGS -c $f
+ done
+
+ export COMMON="alist.o ctf.o darwin_shim.o hash.o iidesc.o input.o list.o \
+ memory.o output.o stack.o strtab.o symbol.o tdata.o traverse.o util.o"
+
+ export CONVERT="ctfconvert.o dwarf.o merge.o st_bugs.o st_parse.o stabs.o"
+ export MERGE="barrier.o ctfmerge.o dwarf.o fifo.o merge.o st_bugs.o st_parse.o stabs.o utils.o"
+ export DUMP="dump.o fifo.o utils.o"
+
+ clang -o ctfconvert $CONVERT $COMMON -L. -lz -lelf -ldwarf
+ clang -o ctfmerge $MERGE $COMMON -L. -lz -lelf -ldwarf
+ clang -o ctfdump $DUMP $COMMON -L. -lz -lelf
+ popd
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp tools/ctfconvert/ctfconvert $out/bin
+ cp tools/ctfconvert/ctfmerge $out/bin
+ cp tools/ctfconvert/ctfdump $out/bin
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/dyld/default.nix b/pkgs/os-specific/darwin/apple-source-releases/dyld/default.nix
new file mode 100644
index 00000000000..56b0d93f99b
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/dyld/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/lib $out/include
+ ln -s /usr/lib/dyld $out/lib/dyld
+ cp -r include $out/
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Impure primitive symlinks to the Mac OS native dyld, along with headers";
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/eap8021x/default.nix b/pkgs/os-specific/darwin/apple-source-releases/eap8021x/default.nix
new file mode 100644
index 00000000000..af9493fe32e
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/eap8021x/default.nix
@@ -0,0 +1,11 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/Library/Frameworks/EAP8021X.framework/Headers
+
+ cp EAP8021X.fproj/EAPClientProperties.h $out/Library/Frameworks/EAP8021X.framework/Headers
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/launchd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/launchd/default.nix
new file mode 100644
index 00000000000..c0e00ca1636
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/launchd/default.nix
@@ -0,0 +1,14 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ # No clue why the same file has two different names. Ask Apple!
+ installPhase = ''
+ mkdir -p $out/include/ $out/include/servers
+ cp liblaunch/*.h $out/include
+
+ cp liblaunch/bootstrap.h $out/include/servers
+ cp liblaunch/bootstrap.h $out/include/servers/bootstrap_defs.h
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libauto/auto_dtrace.h b/pkgs/os-specific/darwin/apple-source-releases/libauto/auto_dtrace.h
new file mode 100644
index 00000000000..bf367a3cabb
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libauto/auto_dtrace.h
@@ -0,0 +1,129 @@
+/*
+ * Generated by dtrace(1M).
+ */
+
+#ifndef _AUTO_DTRACE_H
+#define _AUTO_DTRACE_H
+
+#include
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define GARBAGE_COLLECTION_STABILITY "___dtrace_stability$garbage_collection$v1$1_1_0_1_1_0_1_1_0_1_1_0_1_1_0"
+
+#define GARBAGE_COLLECTION_TYPEDEFS "___dtrace_typedefs$garbage_collection$v2$6175746f5f636f6c6c656374696f6e5f70686173655f74$6175746f5f636f6c6c656374696f6e5f747970655f74$6d616c6c6f635f7a6f6e655f74"
+
+#if !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED
+
+#define GARBAGE_COLLECTION_AUTO_BLOCK_LOST_THREAD_LOCALITY(arg0, arg1) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$auto_block_lost_thread_locality$v1$766f6964202a$75696e7436345f74(arg0, arg1); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_AUTO_BLOCK_LOST_THREAD_LOCALITY_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$auto_block_lost_thread_locality$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define GARBAGE_COLLECTION_AUTO_REFCOUNT_ONE_ALLOCATION(arg0) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$auto_refcount_one_allocation$v1$75696e7436345f74(arg0); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_AUTO_REFCOUNT_ONE_ALLOCATION_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$auto_refcount_one_allocation$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define GARBAGE_COLLECTION_COLLECTION_BEGIN(arg0, arg1) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$collection_begin$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f747970655f74(arg0, arg1); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_COLLECTION_BEGIN_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$collection_begin$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define GARBAGE_COLLECTION_COLLECTION_END(arg0, arg1, arg2, arg3, arg4) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$collection_end$v1$6d616c6c6f635f7a6f6e655f74202a$75696e7436345f74$75696e7436345f74$75696e7436345f74$75696e7436345f74(arg0, arg1, arg2, arg3, arg4); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_COLLECTION_END_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$collection_end$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_BEGIN(arg0, arg1) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$collection_phase_begin$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f70686173655f74(arg0, arg1); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_BEGIN_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$collection_phase_begin$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_END(arg0, arg1, arg2, arg3) \
+do { \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_TYPEDEFS); \
+ __dtrace_probe$garbage_collection$collection_phase_end$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f70686173655f74$75696e7436345f74$75696e7436345f74(arg0, arg1, arg2, arg3); \
+ __asm__ volatile(".reference " GARBAGE_COLLECTION_STABILITY); \
+} while (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_END_ENABLED() \
+ ({ int _r = __dtrace_isenabled$garbage_collection$collection_phase_end$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+
+
+extern void __dtrace_probe$garbage_collection$auto_block_lost_thread_locality$v1$766f6964202a$75696e7436345f74(const void *, uint64_t);
+extern int __dtrace_isenabled$garbage_collection$auto_block_lost_thread_locality$v1(void);
+extern void __dtrace_probe$garbage_collection$auto_refcount_one_allocation$v1$75696e7436345f74(uint64_t);
+extern int __dtrace_isenabled$garbage_collection$auto_refcount_one_allocation$v1(void);
+extern void __dtrace_probe$garbage_collection$collection_begin$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f747970655f74(const malloc_zone_t *, auto_collection_type_t);
+extern int __dtrace_isenabled$garbage_collection$collection_begin$v1(void);
+extern void __dtrace_probe$garbage_collection$collection_end$v1$6d616c6c6f635f7a6f6e655f74202a$75696e7436345f74$75696e7436345f74$75696e7436345f74$75696e7436345f74(const malloc_zone_t *, uint64_t, uint64_t, uint64_t, uint64_t);
+extern int __dtrace_isenabled$garbage_collection$collection_end$v1(void);
+extern void __dtrace_probe$garbage_collection$collection_phase_begin$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f70686173655f74(const malloc_zone_t *, auto_collection_phase_t);
+extern int __dtrace_isenabled$garbage_collection$collection_phase_begin$v1(void);
+extern void __dtrace_probe$garbage_collection$collection_phase_end$v1$6d616c6c6f635f7a6f6e655f74202a$6175746f5f636f6c6c656374696f6e5f70686173655f74$75696e7436345f74$75696e7436345f74(const malloc_zone_t *, auto_collection_phase_t, uint64_t, uint64_t);
+extern int __dtrace_isenabled$garbage_collection$collection_phase_end$v1(void);
+
+#else
+
+#define GARBAGE_COLLECTION_AUTO_BLOCK_LOST_THREAD_LOCALITY(arg0, arg1) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_AUTO_BLOCK_LOST_THREAD_LOCALITY_ENABLED() (0)
+#define GARBAGE_COLLECTION_AUTO_REFCOUNT_ONE_ALLOCATION(arg0) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_AUTO_REFCOUNT_ONE_ALLOCATION_ENABLED() (0)
+#define GARBAGE_COLLECTION_COLLECTION_BEGIN(arg0, arg1) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_COLLECTION_BEGIN_ENABLED() (0)
+#define GARBAGE_COLLECTION_COLLECTION_END(arg0, arg1, arg2, arg3, arg4) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_COLLECTION_END_ENABLED() (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_BEGIN(arg0, arg1) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_BEGIN_ENABLED() (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_END(arg0, arg1, arg2, arg3) \
+do { \
+ } while (0)
+#define GARBAGE_COLLECTION_COLLECTION_PHASE_END_ENABLED() (0)
+
+#endif /* !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED */
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _AUTO_DTRACE_H */
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libauto/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libauto/default.nix
new file mode 100644
index 00000000000..1c61297c7d5
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libauto/default.nix
@@ -0,0 +1,74 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ buildPhase = ''
+ cp ${./auto_dtrace.h} ./auto_dtrace.h
+
+ substituteInPlace auto_zone.cpp \
+ --replace "#include " ''$'#include \nstatic void msgtracer_log_with_keys(...) { };'
+
+ substituteInPlace Definitions.h \
+ --replace "#include " ""
+
+ # getspecific_direct is more efficient, but this should be equivalent...
+ substituteInPlace Zone.h \
+ --replace "_pthread_getspecific_direct" "pthread_getspecific" \
+ --replace "_pthread_has_direct_tsd()" "0" \
+ --replace "__PTK_FRAMEWORK_GC_KEY0" "110" \
+ --replace "__PTK_FRAMEWORK_GC_KEY1" "111" \
+ --replace "__PTK_FRAMEWORK_GC_KEY2" "112" \
+ --replace "__PTK_FRAMEWORK_GC_KEY3" "113" \
+ --replace "__PTK_FRAMEWORK_GC_KEY4" "114" \
+ --replace "__PTK_FRAMEWORK_GC_KEY5" "115" \
+ --replace "__PTK_FRAMEWORK_GC_KEY6" "116" \
+ --replace "__PTK_FRAMEWORK_GC_KEY7" "117" \
+ --replace "__PTK_FRAMEWORK_GC_KEY8" "118" \
+ --replace "__PTK_FRAMEWORK_GC_KEY9" "119"
+
+ substituteInPlace auto_zone.cpp \
+ --replace "__PTK_FRAMEWORK_GC_KEY9" "119" \
+ --replace "__PTK_FRAMEWORK_GC_KEY0" "110" \
+
+ substituteInPlace Zone.cpp \
+ --replace "_pthread_getspecific_direct" "pthread_getspecific" \
+ --replace "__PTK_FRAMEWORK_GC_KEY9" "119" \
+ --replace "__PTK_FRAMEWORK_GC_KEY0" "110" \
+ --replace "__PTK_LIBDISPATCH_KEY0" "20" \
+ --replace "struct auto_zone_cursor {" ''$'extern "C" int pthread_key_init_np(int, void (*)(void *));\nstruct auto_zone_cursor {'
+
+ substituteInPlace auto_impl_utilities.c \
+ --replace "# include " "void CRSetCrashLogMessage(void *msg) { };"
+
+ c++ -I. -O3 -c -Wno-c++11-extensions auto_zone.cpp
+ cc -I. -O3 -Iauto_tester -c auto_impl_utilities.c
+ c++ -I. -O3 -c auto_weak.cpp
+ c++ -I. -O3 -c Admin.cpp
+ c++ -I. -O3 -c Bitmap.cpp
+ c++ -I. -O3 -c Definitions.cpp
+ c++ -I. -O3 -c Environment.cpp
+ c++ -I. -O3 -c Large.cpp
+ c++ -I. -O3 -c Region.cpp
+ c++ -I. -O3 -c Subzone.cpp
+ c++ -I. -O3 -c WriteBarrier.cpp
+ c++ -I. -O3 -c Zone.cpp
+ c++ -I. -O3 -c Thread.cpp
+ c++ -I. -O3 -c InUseEnumerator.cpp
+ c++ -I. -O3 -c auto_gdb_interface.cpp
+ c++ -I. -O3 -c PointerHash.cpp
+ c++ -I. -O3 -c ThreadLocalCollector.cpp
+ c++ -I. -O3 -c ZoneDump.cpp
+ c++ -I. -O3 -c ZoneCollectors.cpp
+ c++ -I. -O3 -c SubzonePartition.cpp
+ c++ -I. -O3 -c ZoneCollectionChecking.cpp
+ c++ -I. -O3 -c ZoneCompaction.cpp
+ c++ -I. -O3 -c BlockRef.cpp
+
+ c++ -Wl,-no_dtrace_dof --stdlib=libc++ -dynamiclib -install_name $out/lib/libauto.dylib -o libauto.dylib *.o
+ '';
+
+ installPhase = ''
+ mkdir -p $out/lib $out/include
+ cp auto_zone.h auto_weak.h auto_tester/auto_tester.h auto_gdb_interface.h $out/include
+ cp libauto.dylib $out/lib
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libclosure/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libclosure/default.nix
new file mode 100644
index 00000000000..a0201f9db2c
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libclosure/default.nix
@@ -0,0 +1,10 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include
+ cp *.h $out/include/
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix
new file mode 100644
index 00000000000..56c00557d43
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libdispatch/default.nix
@@ -0,0 +1,13 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include/dispatch $out/include/os
+
+ cp -r dispatch/*.h $out/include/dispatch
+ cp -r private/*.h $out/include/dispatch
+ cp -r os/object.h $out/include/os
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix
new file mode 100644
index 00000000000..5b82835d3e6
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix
@@ -0,0 +1,15 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ preConfigure = "cd libiconv";
+
+ postInstall = ''
+ mv $out/lib/libiconv.dylib $out/lib/libiconv-nocharset.dylib
+ install_name_tool -id $out/lib/libiconv-nocharset.dylib $out/lib/libiconv-nocharset.dylib
+
+ ld -dylib -o $out/lib/libiconv.dylib \
+ -reexport_library $out/lib/libiconv-nocharset.dylib \
+ -reexport_library $out/lib/libcharset.dylib \
+ -dylib_compatibility_version 7.0.0
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libpthread/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libpthread/default.nix
new file mode 100644
index 00000000000..027784e2ea6
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libpthread/default.nix
@@ -0,0 +1,13 @@
+{ stdenv, appleDerivation, libdispatch, xnu }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+ propagatedBuildInputs = [ libdispatch xnu ];
+
+ installPhase = ''
+ mkdir -p $out/include/pthread
+ cp pthread/*.h $out/include/pthread/
+ cp private/*.h $out/include/pthread/
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix
new file mode 100644
index 00000000000..a74198e8ddd
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libresolv/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, appleDerivation, Libinfo, configd, mDNSResponder }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "buildPhase" "installPhase" ];
+
+ buildInputs = [ Libinfo configd mDNSResponder ];
+
+ buildPhase = ''
+ cc -I. -c dns_util.c
+ cc -I. -c dns.c
+ cc -I. -c dns_async.c
+ cc -I. -c base64.c
+ cc -I. -c dst_api.c
+ cc -I. -c dst_hmac_link.c
+ cc -I. -c dst_support.c
+ cc -I. -c ns_date.c
+ cc -I. -c ns_name.c
+ cc -I. -c ns_netint.c
+ cc -I. -c ns_parse.c
+ cc -I. -c ns_print.c
+ cc -I. -c ns_samedomain.c
+ cc -I. -c ns_sign.c
+ cc -I. -c ns_ttl.c
+ cc -I. -c ns_verify.c
+ cc -I. -c res_comp.c
+ cc -I. -c res_data.c
+ cc -I. -c res_debug.c
+ cc -I. -c res_findzonecut.c
+ cc -I. -c res_init.c
+ cc -I. -c res_mkquery.c
+ cc -I. -c res_mkupdate.c
+ cc -I. -c res_query.c
+ cc -I. -c res_send.c
+ cc -I. -c res_sendsigned.c
+ cc -I. -c res_update.c
+ cc -dynamiclib -install_name $out/lib/libresolv.9.dylib -o libresolv.9.dylib *.o
+ '';
+
+ installPhase = ''
+ mkdir -p $out/include $out/include/arpa $out/lib
+
+ cp dns.h $out/include/
+ cp dns_util.h $out/include
+ cp nameser.h $out/include
+ ln -s ../nameser.h $out/include/arpa
+ cp resolv.h $out/include
+
+ cp libresolv.9.dylib $out/lib
+ ln -s libresolv.9.dylib $out/lib/libresolv.dylib
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libunwind/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libunwind/default.nix
new file mode 100644
index 00000000000..32c8d6717f0
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/libunwind/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, appleDerivation, dyld }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "buildPhase" "installPhase" ];
+
+ buildInputs = [ dyld ];
+
+ buildPhase = ''
+ # cd src
+ # cc -I$PWD/../include -c libuwind.cxx
+ # cc -I$PWD/../include -c Registers.s
+ # cc -I$PWD/../include -c unw_getcontext.s
+ # cc -I$PWD/../include -c UnwindLevel1.c
+ # cc -I$PWD/../include -c UnwindLevel1-gcc-ext.c
+ # cc -I$PWD/../include -c Unwind-sjlj.c
+ '';
+
+ installPhase = ''
+ mkdir -p $out
+
+ cp -r include $out
+ '';
+
+ meta = with stdenv.lib; {
+ maintainers = with maintainers; [ copumpkin ];
+ platforms = platforms.darwin;
+ license = licenses.apsl20;
+ };
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/mDNSResponder/default.nix b/pkgs/os-specific/darwin/apple-source-releases/mDNSResponder/default.nix
new file mode 100644
index 00000000000..63674808d93
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/mDNSResponder/default.nix
@@ -0,0 +1,10 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include
+ cp mDNSShared/dns_sd.h $out/include
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/objc4/default.nix b/pkgs/os-specific/darwin/apple-source-releases/objc4/default.nix
new file mode 100644
index 00000000000..cea5fc9a4e2
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/objc4/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ # Not strictly necessary, since libSystem depends on it, but it's nice to be explicit so we
+ # can easily find out what's impure.
+ __propagatedImpureHostDeps = [
+ "/usr/lib/libauto.dylib"
+ "/usr/lib/libc++abi.dylib"
+ "/usr/lib/libc++.1.dylib"
+ "/usr/lib/libSystem.B.dylib"
+ ];
+
+ installPhase = ''
+ mkdir -p $out/include/objc $out/lib
+ ln -s /usr/lib/libobjc.dylib $out/lib/libobjc.dylib
+ cp runtime/OldClasses.subproj/List.h $out/include/objc/List.h
+ cp runtime/NSObjCRuntime.h $out/include/objc/NSObjCRuntime.h
+ cp runtime/NSObject.h $out/include/objc/NSObject.h
+ cp runtime/Protocol.h $out/include/objc/Protocol.h
+ cp runtime/hashtable.h $out/include/objc/hashtable.h
+ cp runtime/hashtable2.h $out/include/objc/hashtable2.h
+ cp runtime/message.h $out/include/objc/message.h
+ cp runtime/objc-api.h $out/include/objc/objc-api.h
+ cp runtime/objc-auto.h $out/include/objc/objc-auto.h
+ cp runtime/objc-class.h $out/include/objc/objc-class.h
+ cp runtime/objc-exception.h $out/include/objc/objc-exception.h
+ cp runtime/objc-load.h $out/include/objc/objc-load.h
+ cp runtime/objc-runtime.h $out/include/objc/objc-runtime.h
+ cp runtime/objc-sync.h $out/include/objc/objc-sync.h
+ cp runtime/objc.h $out/include/objc/objc.h
+ cp runtime/runtime.h $out/include/objc/runtime.h
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/objc4/objc-probes.h b/pkgs/os-specific/darwin/apple-source-releases/objc4/objc-probes.h
new file mode 100644
index 00000000000..4ad9ba9ad10
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/objc4/objc-probes.h
@@ -0,0 +1,65 @@
+/*
+ * Generated by dtrace(1M).
+ */
+
+#ifndef _OBJC_PROBES_H
+#define _OBJC_PROBES_H
+
+#include
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define OBJC_RUNTIME_STABILITY "___dtrace_stability$objc_runtime$v1$1_1_0_1_1_0_1_1_0_1_1_0_1_1_0"
+
+#define OBJC_RUNTIME_TYPEDEFS "___dtrace_typedefs$objc_runtime$v2"
+
+#if !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED
+
+#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW() \
+do { \
+ __asm__ volatile(".reference " OBJC_RUNTIME_TYPEDEFS); \
+ __dtrace_probe$objc_runtime$objc_exception_rethrow$v1(); \
+ __asm__ volatile(".reference " OBJC_RUNTIME_STABILITY); \
+} while (0)
+#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW_ENABLED() \
+ ({ int _r = __dtrace_isenabled$objc_runtime$objc_exception_rethrow$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW(arg0) \
+do { \
+ __asm__ volatile(".reference " OBJC_RUNTIME_TYPEDEFS); \
+ __dtrace_probe$objc_runtime$objc_exception_throw$v1$766f6964202a(arg0); \
+ __asm__ volatile(".reference " OBJC_RUNTIME_STABILITY); \
+} while (0)
+#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW_ENABLED() \
+ ({ int _r = __dtrace_isenabled$objc_runtime$objc_exception_throw$v1(); \
+ __asm__ volatile(""); \
+ _r; })
+
+
+extern void __dtrace_probe$objc_runtime$objc_exception_rethrow$v1(void);
+extern int __dtrace_isenabled$objc_runtime$objc_exception_rethrow$v1(void);
+extern void __dtrace_probe$objc_runtime$objc_exception_throw$v1$766f6964202a(const void *);
+extern int __dtrace_isenabled$objc_runtime$objc_exception_throw$v1(void);
+
+#else
+
+#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW() \
+do { \
+ } while (0)
+#define OBJC_RUNTIME_OBJC_EXCEPTION_RETHROW_ENABLED() (0)
+#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW(arg0) \
+do { \
+ } while (0)
+#define OBJC_RUNTIME_OBJC_EXCEPTION_THROW_ENABLED() (0)
+
+#endif /* !defined(DTRACE_PROBES_DISABLED) || !DTRACE_PROBES_DISABLED */
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _OBJC_PROBES_H */
diff --git a/pkgs/os-specific/darwin/apple-source-releases/objc4/pure.nix b/pkgs/os-specific/darwin/apple-source-releases/objc4/pure.nix
new file mode 100644
index 00000000000..28dcbdcb4a2
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/objc4/pure.nix
@@ -0,0 +1,118 @@
+{ stdenv, fetchapplesource, libauto, launchd, libc_old, libunwind }:
+
+stdenv.mkDerivation rec {
+ version = "551.1";
+ name = "objc4-${version}";
+
+ src = fetchapplesource {
+ inherit version;
+ name = "objc4";
+ sha256 = "1jrdb6yyb5jwwj27c1r0nr2y2ihqjln8ynj61mpkvp144c1cm5bg";
+ };
+
+ patches = [ ./spinlocks.patch ];
+
+ buildInputs = [ libauto launchd libc_old libunwind ];
+
+ buildPhase = ''
+ cp ${./objc-probes.h} runtime/objc-probes.h
+
+ mkdir -p build/include/objc
+
+ cp runtime/hashtable.h build/include/objc/hashtable.h
+ cp runtime/OldClasses.subproj/List.h build/include/objc/List.h
+ cp runtime/hashtable2.h build/include/objc/hashtable2.h
+ cp runtime/message.h build/include/objc/message.h
+ cp runtime/objc-api.h build/include/objc/objc-api.h
+ cp runtime/objc-auto.h build/include/objc/objc-auto.h
+ cp runtime/objc-class.h build/include/objc/objc-class.h
+ cp runtime/objc-exception.h build/include/objc/objc-exception.h
+ cp runtime/objc-load.h build/include/objc/objc-load.h
+ cp runtime/objc-sync.h build/include/objc/objc-sync.h
+ cp runtime/objc.h build/include/objc/objc.h
+ cp runtime/objc-runtime.h build/include/objc/objc-runtime.h
+ cp runtime/Object.h build/include/objc/Object.h
+ cp runtime/Protocol.h build/include/objc/Protocol.h
+ cp runtime/runtime.h build/include/objc/runtime.h
+ cp runtime/NSObject.h build/include/objc/NSObject.h
+ cp runtime/NSObjCRuntime.h build/include/objc/NSObjCRuntime.h
+
+ # These would normally be in local/include but we don't do local, so they're
+ # going in with the others
+ cp runtime/maptable.h build/include/objc/maptable.h
+ cp runtime/objc-abi.h build/include/objc/objc-abi.h
+ cp runtime/objc-auto-dump.h build/include/objc/objc-auto-dump.h
+ cp runtime/objc-gdb.h build/include/objc/objc-gdb.h
+ cp runtime/objc-internal.h build/include/objc/objc-internal.h
+
+ cc -o markgc markgc.c
+
+ FLAGS="-Wno-deprecated-register -Wno-unknown-pragmas -Wno-deprecated-objc-isa-usage -Wno-invalid-offsetof -Wno-inline-new-delete -Wno-cast-of-sel-type -Iruntime -Ibuild/include -Iruntime/Accessors.subproj -D_LIBCPP_VISIBLE= -DOS_OBJECT_USE_OBJC=0 -DNDEBUG=1"
+
+ cc -std=gnu++11 $FLAGS -c runtime/hashtable2.mm
+ cc -std=gnu++11 $FLAGS -c runtime/maptable.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-auto.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-cache.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-class-old.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-class.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-errors.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-exception.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-file.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-initialize.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-layout.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-load.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-loadmethod.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-lockdebug.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-runtime-new.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-runtime-old.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-runtime.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-sel-set.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-sel.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-sync.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-typeencoding.mm
+ cc -std=gnu++11 $FLAGS -c runtime/Object.mm
+ cc -std=gnu++11 $FLAGS -c runtime/Protocol.mm
+
+ cc -std=gnu++11 $FLAGS -c runtime/objc-references.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-os.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-auto-dump.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-file-old.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-block-trampolines.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-externalref.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-weak.mm
+ cc -std=gnu++11 $FLAGS -c runtime/NSObject.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-opt.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-cache-old.mm
+ cc -std=gnu++11 $FLAGS -c runtime/objc-sel-old.mm
+
+ cc -std=gnu++11 $FLAGS -c runtime/Accessors.subproj/objc-accessors.mm
+
+ cc $FLAGS -c runtime/objc-sel-table.s
+
+ cc $FLAGS -c runtime/OldClasses.subproj/List.m
+ cc $FLAGS -c runtime/Messengers.subproj/objc-msg-arm.s
+ cc $FLAGS -c runtime/Messengers.subproj/objc-msg-i386.s
+ cc $FLAGS -c runtime/Messengers.subproj/objc-msg-x86_64.s
+ cc $FLAGS -c runtime/Messengers.subproj/objc-msg-simulator-i386.s
+
+ cc $FLAGS -c runtime/a1a2-blocktramps-i386.s
+ cc $FLAGS -c runtime/a2a3-blocktramps-i386.s
+
+ cc $FLAGS -c runtime/a1a2-blocktramps-x86_64.s
+ cc $FLAGS -c runtime/a2a3-blocktramps-x86_64.s
+
+ cc $FLAGS -c runtime/a1a2-blocktramps-arm.s
+ cc $FLAGS -c runtime/a2a3-blocktramps-arm.s
+
+ c++ -Wl,-no_dtrace_dof --stdlib=libc++ -dynamiclib -lauto -install_name $out/lib/libobjc.dylib -o libobjc.dylib *.o
+
+ ./markgc -p libobjc.dylib
+ '';
+
+ installPhase = ''
+ mkdir -p $out/include $out/lib
+
+ mv build/include/objc $out/include
+ mv libobjc.dylib $out/lib
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/objc4/spinlocks.patch b/pkgs/os-specific/darwin/apple-source-releases/objc4/spinlocks.patch
new file mode 100644
index 00000000000..50c6a983fe4
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/objc4/spinlocks.patch
@@ -0,0 +1,107 @@
+--- objc4-551.1/runtime/objc-os.h 2013-06-10 21:16:15.000000000 -0400
++++ ../objc4-551.1/runtime/objc-os.h 2015-01-19 01:01:36.000000000 -0500
+@@ -77,27 +77,72 @@
+ # include
+ # include
+ # include
+-# include
+ # include
+ # include
+-# include
+ # include "objc-probes.h" // generated dtrace probe definitions.
+
++#define __PTK_FRAMEWORK_OBJC_KEY5 45
++#define __PTK_FRAMEWORK_OBJC_KEY6 46
++#define __PTK_FRAMEWORK_OBJC_KEY7 47
++#define __PTK_FRAMEWORK_OBJC_KEY8 48
++#define __PTK_FRAMEWORK_OBJC_KEY9 49
++
++extern "C" int pthread_key_init_np(int, void (*)(void *));
++
+ // Some libc functions call objc_msgSend()
+ // so we can't use them without deadlocks.
+ void syslog(int, const char *, ...) UNAVAILABLE_ATTRIBUTE;
+ void vsyslog(int, const char *, va_list) UNAVAILABLE_ATTRIBUTE;
+
++#if defined(__i386__) || defined(__x86_64__)
++
++// Inlined spinlock.
++// Not for arm on iOS because it hurts uniprocessor performance.
++
++#define ARR_SPINLOCK_INIT 0
++// XXX -- Careful: OSSpinLock isn't volatile, but should be
++typedef volatile int ARRSpinLock;
++__attribute__((always_inline))
++static inline void ARRSpinLockLock(ARRSpinLock *l)
++{
++ unsigned y;
++again:
++ if (__builtin_expect(__sync_lock_test_and_set(l, 1), 0) == 0) {
++ return;
++ }
++ for (y = 1000; y; y--) {
++#if defined(__i386__) || defined(__x86_64__)
++ asm("pause");
++#endif
++ if (*l == 0) goto again;
++ }
++ thread_switch(THREAD_NULL, SWITCH_OPTION_DEPRESS, 1);
++ goto again;
++}
++__attribute__((always_inline))
++static inline void ARRSpinLockUnlock(ARRSpinLock *l)
++{
++ __sync_lock_release(l);
++}
++__attribute__((always_inline))
++static inline int ARRSpinLockTry(ARRSpinLock *l)
++{
++ return __sync_bool_compare_and_swap(l, 0, 1);
++}
++
++#define spinlock_t ARRSpinLock
++#define spinlock_trylock(l) ARRSpinLockTry(l)
++#define spinlock_lock(l) ARRSpinLockLock(l)
++#define spinlock_unlock(l) ARRSpinLockUnlock(l)
++#define SPINLOCK_INITIALIZER ARR_SPINLOCK_INIT
+
+-#define spinlock_t os_lock_handoff_s
+-#define spinlock_trylock(l) os_lock_trylock(l)
+-#define spinlock_lock(l) os_lock_lock(l)
+-#define spinlock_unlock(l) os_lock_unlock(l)
+-#define SPINLOCK_INITIALIZER OS_LOCK_HANDOFF_INIT
++#endif
+
+
+ #if !TARGET_OS_IPHONE
+-# include
++#define CRSetCrashLogMessage(msg)
++#define CRGetCrashLogMessage() 0
++#define CRSetCrashLogMessage2(msg)
+ #else
+ // CrashReporterClient not yet available on iOS
+ __BEGIN_DECLS
+@@ -594,21 +639,13 @@
+ {
+ assert(is_valid_direct_key(k));
+
+- if (_pthread_has_direct_tsd()) {
+- return _pthread_getspecific_direct(k);
+- } else {
+- return pthread_getspecific(k);
+- }
++ return pthread_getspecific(k);
+ }
+ static inline void tls_set_direct(tls_key_t k, void *value)
+ {
+ assert(is_valid_direct_key(k));
+
+- if (_pthread_has_direct_tsd()) {
+- _pthread_setspecific_direct(k, value);
+- } else {
+- pthread_setspecific(k, value);
+- }
++ pthread_setspecific(k, value);
+ }
+
+ // not arm
diff --git a/pkgs/os-specific/darwin/apple-source-releases/ppp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/ppp/default.nix
new file mode 100644
index 00000000000..ffc19801c5d
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/ppp/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include/ppp
+
+ cp Controller/ppp_msg.h $out/include/ppp
+ cp Controller/pppcontroller_types.h $out/include/ppp
+ cp Controller/pppcontroller_types.h $out/include
+ cp Controller/pppcontroller.defs $out/include/ppp
+ cp Controller/pppcontroller_mach_defines.h $out/include
+ cp Controller/PPPControllerPriv.h $out/include/ppp
+ '';
+}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/removefile/default.nix b/pkgs/os-specific/darwin/apple-source-releases/removefile/default.nix
new file mode 100644
index 00000000000..315f93bef08
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/removefile/default.nix
@@ -0,0 +1,10 @@
+{ stdenv, appleDerivation }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "installPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/include/
+ cp removefile.h checkint.h $out/include/
+ '';
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix b/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix
new file mode 100644
index 00000000000..8276d2f4b42
--- /dev/null
+++ b/pkgs/os-specific/darwin/apple-source-releases/xnu/default.nix
@@ -0,0 +1,117 @@
+{ stdenv, appleDerivation, fetchzip, bootstrap_cmds, bison, flex, gnum4, unifdef, perl }:
+
+appleDerivation {
+ phases = [ "unpackPhase" "patchPhase" "installPhase" ];
+
+ buildInputs = [ bootstrap_cmds bison flex gnum4 unifdef perl ];
+
+ patchPhase = ''
+ substituteInPlace Makefile \
+ --replace "/bin/" "" \
+ --replace "MAKEJOBS := " '# MAKEJOBS := '
+
+ substituteInPlace makedefs/MakeInc.cmd \
+ --replace "/usr/bin/" "" \
+ --replace "/bin/" "" \
+ --replace "-Werror " ""
+
+ substituteInPlace makedefs/MakeInc.def \
+ --replace "-c -S -m" "-c -m"
+
+ substituteInPlace makedefs/MakeInc.top \
+ --replace "MEMORY_SIZE := " 'MEMORY_SIZE := 1073741824 # '
+
+ substituteInPlace libkern/kxld/Makefile \
+ --replace "-Werror " ""
+
+ substituteInPlace SETUP/kextsymboltool/Makefile \
+ --replace "-lstdc++" "-lc++"
+
+ substituteInPlace libsyscall/xcodescripts/mach_install_mig.sh \
+ --replace "/usr/include" "/include" \
+ --replace "/usr/local/include" "/include" \
+ --replace "MIG=" "# " \
+ --replace "MIGCC=" "# " \
+ --replace " -o 0" "" \
+ --replace '$SRC/$mig' '-I$DSTROOT/include $SRC/$mig' \
+ --replace '$SRC/servers/netname.defs' '-I$DSTROOT/include $SRC/servers/netname.defs'
+
+ patchShebangs .
+ '';
+
+ installPhase = ''
+ # This is a bit of a hack...
+ mkdir -p sdk/usr/local/libexec
+
+ cat > sdk/usr/local/libexec/availability.pl <
-Date: Sun, 12 Oct 2014 12:23:51 -0400
-Subject: [PATCH] work
-
----
- cctools/Makefile.am | 2 +-
- cctools/configure.ac | 2 --
- cctools/ld64/src/3rd/helper.c | 2 ++
- cctools/ld64/src/3rd/strlcat.c | 2 ++
- cctools/ld64/src/3rd/strlcpy.c | 3 ++-
- cctools/ld64/src/ld/Options.cpp | 2 ++
- tools/find_lto_header.sh | 2 +-
- 7 files changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/cctools/Makefile.am b/cctools/Makefile.am
-index 44084ad..34a670c 100644
---- a/cctools/Makefile.am
-+++ b/cctools/Makefile.am
-@@ -1,2 +1,2 @@
--SUBDIRS=libstuff ar as misc libobjc2 otool ld64 $(LD_CLASSIC)
-+SUBDIRS=libstuff ar as misc ld64 $(LD_CLASSIC)
- ACLOCAL_AMFLAGS = -I m4
-diff --git a/cctools/configure.ac b/cctools/configure.ac
-index c4f6c47..b641925 100644
---- a/cctools/configure.ac
-+++ b/cctools/configure.ac
-@@ -278,8 +278,6 @@ AC_CONFIG_FILES([as/ppc/Makefile])
- AC_CONFIG_FILES([as/ppc64/Makefile])
- #AC_CONFIG_FILES([man/Makefile])
- AC_CONFIG_FILES([misc/Makefile])
--AC_CONFIG_FILES([otool/Makefile])
--AC_CONFIG_FILES([libobjc2/Makefile])
- AC_CONFIG_FILES([ld/Makefile])
-
-
-diff --git a/cctools/ld64/src/3rd/helper.c b/cctools/ld64/src/3rd/helper.c
-index 19f4be7..bec6869 100644
---- a/cctools/ld64/src/3rd/helper.c
-+++ b/cctools/ld64/src/3rd/helper.c
-@@ -23,6 +23,7 @@
- const char ldVersionString[] = "236.3\n";
-
-
-+#if 0
- void __assert_rtn(const char *func, const char *file, int line, const char *msg)
- {
- #ifdef __FreeBSD__
-@@ -33,6 +34,7 @@ void __assert_rtn(const char *func, const char *file, int line, const char *msg)
- __assert(msg, file, line);
- #endif /* __FreeBSD__ */
- }
-+#endif
-
- int _NSGetExecutablePath(char *path, unsigned int *size)
- {
-diff --git a/cctools/ld64/src/3rd/strlcat.c b/cctools/ld64/src/3rd/strlcat.c
-index 500d038..dadf269 100644
---- a/cctools/ld64/src/3rd/strlcat.c
-+++ b/cctools/ld64/src/3rd/strlcat.c
-@@ -23,6 +23,7 @@
-
- #include
-
-+#if 0
- size_t
- strlcat(char * restrict dst, const char * restrict src, size_t maxlen) {
- const size_t srclen = strlen(src);
-@@ -36,3 +37,4 @@ strlcat(char * restrict dst, const char * restrict src, size_t maxlen) {
- }
- return dstlen + srclen;
- }
-+#endif
-\ No newline at end of file
-diff --git a/cctools/ld64/src/3rd/strlcpy.c b/cctools/ld64/src/3rd/strlcpy.c
-index c69f107..34a399b 100644
---- a/cctools/ld64/src/3rd/strlcpy.c
-+++ b/cctools/ld64/src/3rd/strlcpy.c
-@@ -23,6 +23,7 @@
-
- #include
-
-+#if 0
- size_t
- strlcpy(char * restrict dst, const char * restrict src, size_t maxlen) {
- const size_t srclen = strlen(src);
-@@ -34,4 +35,4 @@ strlcpy(char * restrict dst, const char * restrict src, size_t maxlen) {
- }
- return srclen;
- }
--
-+#endif
-\ No newline at end of file
-diff --git a/cctools/ld64/src/ld/Options.cpp b/cctools/ld64/src/ld/Options.cpp
-index 3a78df8..0ecf9f2 100644
---- a/cctools/ld64/src/ld/Options.cpp
-+++ b/cctools/ld64/src/ld/Options.cpp
-@@ -49,6 +49,8 @@ namespace lto {
- extern const char* version();
- }
-
-+#define __MAC_OS_X_VERSION_MIN_REQUIRED 1060
-+
- // magic to place command line in crash reports
- const int crashreporterBufferSize = 2000;
- static char crashreporterBuffer[crashreporterBufferSize];
-diff --git a/tools/find_lto_header.sh b/tools/find_lto_header.sh
-index aee3a4a..4733981 100755
---- a/tools/find_lto_header.sh
-+++ b/tools/find_lto_header.sh
-@@ -14,7 +14,7 @@ function try()
- # Adding the include directory with -I causes the build to fail.
- ln -sf "$LLVM_INC_DIR/llvm-c/lto.h" "include/llvm-c/lto.h"
- mkdir -p tmp
-- echo -n "-Wl,-rpath,$LLVM_LIB_DIR,--enable-new-dtags -L$LLVM_LIB_DIR -lLTO " > tmp/ldflags
-+ echo -n "-Wl,-rpath,$LLVM_LIB_DIR -L$LLVM_LIB_DIR -lLTO " > tmp/ldflags
- echo -n "-DLTO_SUPPORT=1 " > tmp/cflags
- echo -n "-DLTO_SUPPORT=1 " > tmp/cxxflags
- echo -n "$LLVM_LIB_DIR" > tmp/ldpath
---
-1.9.3 (Apple Git-50)
-
diff --git a/pkgs/os-specific/darwin/cctools/port.nix b/pkgs/os-specific/darwin/cctools/port.nix
index 4dbdbede60e..bfb389ef37c 100644
--- a/pkgs/os-specific/darwin/cctools/port.nix
+++ b/pkgs/os-specific/darwin/cctools/port.nix
@@ -1,31 +1,47 @@
{ stdenv, fetchurl, autoconf, automake, libtool
-, llvm, libcxx, clang, openssl, libuuid
+, llvm, libcxx, libcxxabi, clang, openssl, libuuid
+, libobjc ? null
}:
let
baseParams = rec {
name = "cctools-port-${version}";
- version = "855";
+ version = "862";
src = let
# Should be fetchFromGitHub but it was whining so this will do for now
owner = "tpoechtrager";
repo = "cctools-port";
- rev = "7083dddbb0f106d791d313829ea7dc45db90e375";
+ rev = "59d21d2c793c51d205c8b4ab14b9b28e63c72445";
in fetchurl {
url = "https://github.com/${owner}/${repo}/archive/${rev}.tar.gz";
- sha256 = "017gxlcwgi7xhayjzj9w3fac175p2rm4vjzf9cycq9683m9pmyzj";
+ sha256 = "01f31ijpnplbiyp7ldwzy8vbkn3j3m56n5blsvsav5nlp4lp2g71";
};
- buildInputs = [
- autoconf automake libtool llvm clang openssl libuuid libcxx
- ];
+ buildInputs = [ autoconf automake libtool openssl libuuid ] ++
+ # Only need llvm and clang if the stdenv isn't already clang-based (TODO: just make a stdenv.cc.isClang)
+ stdenv.lib.optionals (!stdenv.isDarwin) [ llvm clang ] ++
+ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ];
- patches = [ ./ld-rpath-nonfinal.patch ./ld-ignore-rpath-link.patch ];
+ patches = [
+ ./ld-rpath-nonfinal.patch ./ld-ignore-rpath-link.patch
+ ];
enableParallelBuilding = true;
+ configureFlags = stdenv.lib.optionals (!stdenv.isDarwin) [ "CXXFLAGS=-I${libcxx}/include/c++/v1" ];
+
postPatch = ''
+ sed -i -e 's/addStandardLibraryDirectories = true/addStandardLibraryDirectories = false/' cctools/ld64/src/ld/Options.cpp
+
+ # FIXME: there are far more absolute path references that I don't want to fix right now
+ substituteInPlace cctools/configure.ac \
+ --replace "-isystem /usr/local/include -isystem /usr/pkg/include" "" \
+ --replace "-L/usr/local/lib" "" \
+
+ substituteInPlace cctools/include/Makefile \
+ --replace "/bin/" ""
+
patchShebangs tools
sed -i -e 's/which/type -P/' tools/*.sh
@@ -39,6 +55,8 @@ let
# include_next "unistd.h"
#endif
EOF
+ '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
+ sed -i -e 's|clang++|& -I${libcxx}/include/c++/v1|' cctools/autogen.sh
'';
preConfigure = ''
@@ -46,6 +64,12 @@ let
sh autogen.sh
'';
+ preInstall = ''
+ pushd include
+ make DSTROOT=$out/include RC_OS=common install
+ popd
+ '';
+
meta = {
homepage = "http://www.opensource.apple.com/source/cctools/";
description = "Mac OS X Compiler Tools (cross-platform port)";
@@ -53,15 +77,13 @@ let
};
};
in {
- # Hacks that for the darwin stdenv (sad that we need write workarounds for what started as a darwin package)
native = stdenv.mkDerivation (baseParams // {
- patches = baseParams.patches ++ [ ./darwin.patch ];
-
+ # A hack for now...
postInstall = ''
- cd $out/bin
- for tool in dwarfdump dsymutil; do
- ln -s /usr/bin/$tool
- done
+ cat >$out/bin/dsymutil << EOF
+ #!${stdenv.shell}
+ EOF
+ chmod +x $out/bin/dsymutil
'';
});
diff --git a/pkgs/os-specific/darwin/libc/default.nix b/pkgs/os-specific/darwin/libc/default.nix
deleted file mode 100644
index 4d01434c3b9..00000000000
--- a/pkgs/os-specific/darwin/libc/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ stdenv, fetchurl, fetchgit, fetchzip, perl, python }:
-
-let
- osx_sdk = fetchgit {
- url = "https://github.com/samdmarshall/OSXPrivateSDK";
- rev = "refs/heads/master";
- sha256 = "04m71xhjyac42h7alxjsqsipq07hm85wibvm3h65dqafcbqkl1i1";
- };
- dispatch = fetchzip {
- url = "https://opensource.apple.com/tarballs/libdispatch/libdispatch-339.92.1.tar.gz";
- sha256 = "0faxm4r7lamz57m9pr72jwm0qiwcrcy5dsiff0g9qyfi10pnj5i4";
- };
-in
-stdenv.mkDerivation rec {
- version = "825.40.1";
- name = "libc-${version}";
- src = fetchurl {
- url = "https://opensource.apple.com/tarballs/Libc/Libc-${version}.tar.gz";
- sha256 = "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf";
- };
-
- buildInputs = [ perl ];
-
- patches = [ ./fileport.patch ];
-
- configurePhase = ''
- mkdir -p scratch
- mkdir -p scratch/System/sys
- ln -sv ${osx_sdk}/System/Library/Frameworks/System.framework/PrivateHeaders/sys/fsctl.h scratch/System/sys
- mkdir tmpbin
- ln -s /usr/bin/xcodebuild tmpbin
- ln -s /usr/sbin/dtrace tmpbin
- export PATH=$PATH:$(pwd -P)/tmpbin
- '';
-
- buildPhase = ''
- BASE=$(pwd -P)
- xcodebuild HEADER_SEARCH_PATHS="$BASE/fbsdcompat $BASE/pthreads $BASE/include $BASE/locale $BASE/locale/FreeBSD ${osx_sdk}/usr/local/include ${osx_sdk}/usr/include $BASE/stdtime/FreeBSD $BASE/gen ${osx_sdk}/System/Library/Frameworks/System.framework/PrivateHeaders $BASE/scratch ${osx_sdk}/System/Library/Frameworks/System.framework/PrivateHeaders/uuid $BASE/gdtoa"
- '';
-}
diff --git a/pkgs/os-specific/darwin/libc/fileport.patch b/pkgs/os-specific/darwin/libc/fileport.patch
deleted file mode 100644
index 968b0da9d30..00000000000
--- a/pkgs/os-specific/darwin/libc/fileport.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/Platforms/macosx/Makefile.inc b/Platforms/macosx/Makefile.inc
-index ff3617f..fdda58f 100644
---- a/Platforms/macosx/Makefile.inc
-+++ b/Platforms/macosx/Makefile.inc
-@@ -41,7 +41,7 @@ FEATURE_PATCH_3417676 = 1
- FEATURE_PATCH_5243343 = 1
-
- # plockstat dtrace support
--FEATURE_PLOCKSTAT = 1
-+FEATURE_PLOCKSTAT = 0
-
- # Timezone change notification
- FEATURE_TIMEZONE_CHANGE_NOTIFICATION = 1
-diff --git a/gen/asl.c b/gen/asl.c
-index 1948c92..53fce02 100644
---- a/gen/asl.c
-+++ b/gen/asl.c
-@@ -35,6 +35,7 @@
- #include
- #include
- #include
-+#include
- #include
- #include
- #include
-diff --git a/locale/FreeBSD/toupper.c b/locale/FreeBSD/toupper.c
-index d02ddd6..e5a1f10 100644
---- a/locale/FreeBSD/toupper.c
-+++ b/locale/FreeBSD/toupper.c
-@@ -39,6 +39,8 @@ __FBSDID("$FreeBSD: src/lib/libc/locale/toupper.c,v 1.13 2007/01/09 00:28:01 imp
- #include
- #include
-
-+#define __ct_rune_t ct_rune_t
-+
- __ct_rune_t
- ___toupper_l(c, loc)
- __ct_rune_t c;
diff --git a/pkgs/os-specific/linux/cifs-utils/default.nix b/pkgs/os-specific/linux/cifs-utils/default.nix
index 5126a58e1a3..46a927209a2 100644
--- a/pkgs/os-specific/linux/cifs-utils/default.nix
+++ b/pkgs/os-specific/linux/cifs-utils/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
name = "cifs-utils-6.4";
src = fetchurl {
- url = "ftp://ftp.samba.org/pub/linux-cifs/cifs-utils/${name}.tar.bz2";
+ url = "mirror://samba/pub/linux-cifs/cifs-utils/${name}.tar.bz2";
sha256 = "1qz6d2xg4z1if0hy7qwyzgcr59l0alkhci6gxgjdldglda967z1q";
};
diff --git a/pkgs/os-specific/linux/consoletools/default.nix b/pkgs/os-specific/linux/consoletools/default.nix
index 83c694972e6..6961768e7d3 100644
--- a/pkgs/os-specific/linux/consoletools/default.nix
+++ b/pkgs/os-specific/linux/consoletools/default.nix
@@ -2,20 +2,22 @@
stdenv.mkDerivation rec {
name = "linuxconsoletools-${version}";
- version = "1.4.7";
+ version = "1.4.8";
src = fetchurl {
url = "mirror://sourceforge/linuxconsole/${name}.tar.bz2";
- sha256 = "1wgcmmjiqw3hh36jzvhgq07kq13ar2miafz02xshds2b0kdcz4s4";
+ sha256 = "0spf9hx48cqx2i46pkz0gbrn7xrk68cw8iyrfbs2b3k0bxcsri13";
};
buildInputs = [ SDL ];
- makeFlags = [ "PREFIX=$(out)" ];
+ makeFlags = [ "DESTDIR=$(out)"];
- meta = {
- homepage = "https://sourceforge.net/projects/linuxconsole/";
+ meta = with stdenv.lib; {
+ homepage = https://sourceforge.net/projects/linuxconsole/;
description = "A set of tools for joysticks and serial peripherals";
- license = stdenv.lib.licenses.gpl2Plus;
+ license = licenses.gpl2Plus;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ pSub ];
longDescription = ''
The included tools are:
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index 2868be73d39..b8a67b87a80 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -1,71 +1,29 @@
-# The firmware bundle as packaged by Debian. This should be "all" firmware that is not shipped
-# as part of the kernel itself.
-# You can either install the complete bundle, or write a separate package for individual
-# devices that copies the firmware from this package.
-
-{ stdenv, fetchurl, dpkg }:
+{ stdenv, fetchgit }:
let
- version = "0.43";
+ version = "17657c35869baa999b454e868cd3d5a7e1656425";
+ shortVersion = stdenv.lib.substring 0 7 version;
+in
+stdenv.mkDerivation {
+ name = "firmware-linux-nonfree-${shortVersion}";
- packages = [
- { name = "adi"; sha256 = "13cwnbispivpd73k928l1i818ylhpahp6xh7d6pw59sswrsx6inw"; }
- { name = "atheros"; sha256 = "0sw9d52k3ynx1cxg7cq49pmm8y6vlqyhb9843hbyf6nbmjqj72bx"; }
- { name = "bnx2"; sha256 = "1r8scys27qj5shdbgl8ag9vi4hiidx4bp8yw4n4dcp288d9x7bbh"; }
- { name = "bnx2x"; sha256 = "03jx4vnn8irlwswydf4h3ya1kf064jkaj67jry2hr6qwpd4l8pgq"; }
- { name = "brcm80211"; sha256 = "01mkmjkg16kdd26pwlg4a1s1717fh0j602mwqhwh46k8zakg2lkh"; }
- { name = "intelwimax"; sha256 = "1avls6sx0pbsffrcs267r2r2rqlx2xrv8j9znc7ix1bi8g4fx91v"; }
- { name = "ipw2x00"; sha256 = "19zqc30hsz7snw020izm81qbap3xsygggnmbspxndw7jihz0amjs"; }
- { name = "ivtv"; sha256 = "1f2004lpw5nr9rxj3cl4ba0jdm51wkvsrbiy4drakawpjwh5y4qw"; }
- # Disabled as it is packaged separately
- #{ name = "iwlwifi"; sha256 = "1538r751mx8nhg3xibnnrhnflvf3kl5y9rnm7rpl4wyrfgx61amd"; }
- { name = "libertas"; sha256 = "0svkqlsiqgmh970r38nh0c1pjx41zdfql2k2k5djw99fscjklacd"; }
- { name = "linux"; sha256 = "0j62v6vbh2287j3x5c9i0xspmhyh5k1z8dyajgix7k37xi4jvpy2"; }
- { name = "linux-nonfree"; sha256 = "1f5x72rzicivwm0sn9l6wjkx7z9a0b8n6c9m60xrqg36ly7mizzp"; }
- { name = "myricom"; sha256 = "17cdl885jlnja5m60l35xr2f84hv8z4cvg3d25vpp171s1vf1ks1"; }
- { name = "netxen"; sha256 = "122nava9ld1v8gcnqbdpx0kffv0rxm9glp4xg09ssvldy4myfgl7"; }
- { name = "qlogic"; sha256 = "02pgmprz1qwij7lw1lgmb8clgxj8v3mx0fyy1l4z7bffnpvip863"; }
- { name = "ralink"; sha256 = "0yw9gf9gm3jxmsndr8kcsf6829smm88kshfb4c8jn0n6f4yy9l7x"; }
- { name = "realtek"; sha256 = "0gay9x47pimdqj665sr1416l3bdyca9grsqpj0s9n6k1lmywrqx1"; }
- { name = "ti-connectivity"; sha256 = "1m6yk0827991hs46l8pp8iiwh1ms0rwlmwn64k2wr725k5yzg29b"; }
- ];
+ src = fetchgit {
+ url = "git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
+ rev = version;
+ sha256 = "15lv58wf3vjs4dpxvx3a7wn0pj83952wa2ab6ajfl3pbdhcvkzjb";
+ };
- fetchPackage =
- { name, sha256 }: fetchurl {
- url = "mirror://debian/pool/non-free/f/firmware-nonfree/firmware-${name}_${version}_all.deb";
- inherit sha256;
- };
-
- srcs = map fetchPackage packages;
-
-in stdenv.mkDerivation {
- name = "firmware-linux-nonfree-${version}";
- inherit srcs;
-
- unpackPhase = ''
- mkdir -p ./firmware
+ preInstall = ''
+ mkdir -p $out
'';
- buildPhase = ''
- for src in $srcs; do
- dpkg-deb -W $src
- dpkg-deb -x $src .
- done
- '';
+ installFlags = [ "DESTDIR=$(out)" ];
- buildInputs = [ dpkg ];
-
- installPhase = ''
- mkdir -p $out/share $out/lib/firmware
- cp -r lib/firmware/* "$out/lib/firmware/"
- cp -r usr/share/doc $out/share/
- find $out/share -name changelog.gz | xargs rm
- '';
-
- meta = {
- description = "Binary firmware collection packaged by Debian";
+ meta = with stdenv.lib; {
+ description = "Binary firmware collection packaged by kernel.org";
homepage = http://packages.debian.org/sid/firmware-linux-nonfree;
- license = stdenv.lib.licenses.unfreeRedistributableFirmware;
- platforms = stdenv.lib.platforms.linux;
+ license = licenses.unfreeRedistributableFirmware;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ wkennington ];
};
}
diff --git a/pkgs/os-specific/linux/firmware/iwlwifi/default.nix b/pkgs/os-specific/linux/firmware/iwlwifi/default.nix
deleted file mode 100644
index a0236fc3c99..00000000000
--- a/pkgs/os-specific/linux/firmware/iwlwifi/default.nix
+++ /dev/null
@@ -1,81 +0,0 @@
-{ stdenv, fetchurl }:
-
-let
- packages = [
- # Kernel 2.6.29+
- { name = "5150-ucode-8.24.2.2"; sha256 = "1y8cah9xa8a9c7alh220cvmncjmwnacdz0kwsvg9lqr4cvzyclyj"; }
-
- # Kernel 2.6.30+
- { name = "6000-ucode-9.221.4.1"; sha256 = "0sw3v9807agx4mxdrfgsw7f195gs1f4zscnzcgpc8gb664r6413z"; }
-
- # Kernel 2.6.37+
- { name = "6050-ucode-41.28.5.1"; sha256 = "1i10rfn3kc07s2iqz79wvsrblhm360yz6v231dcz8sabvcyrlzar"; }
- { name = "100-ucode-39.31.5.1"; sha256 = "1jvzdaiklnw613c4drkjkcdlnnk6c9kk7f0jqdxfkgppydwssnc2"; }
-
- # Kernel 2.6.38+
- { name = "5000-ucode-8.83.5.1-1"; sha256 = "0pkzr4gflp3j0jm4rw66jypk3xn4bvpgdsnxjqwanyd64aj6naxg"; }
-
- # Kernel 3.2+
- { name = "6000g2b-ucode-18.168.6.1"; sha256 = "1shby6s9h4kfwmvg89505p61yq88ml1qccvw8h2m4l63a9mwg0qn"; }
- { name = "6000g2a-ucode-18.168.6.1"; sha256 = "1sdv4lkpfd87c95zbk8wgn0b4l4nbwkb0b4iwvrzpnmdarbn3wm7"; }
- { name = "1000-ucode-39.31.5.1"; sha256 = "0w69hfpwx79cph0517a6mkhsk51li2l0yhfr1jddmj3i4ny1y3zd"; }
- { name = "135-ucode-18.168.6.1"; sha256 = "1dvyzwkyzsmvlp13z84g2lzkr0w0p8mj7c98fwh3pwv0cmglf04c"; }
- { name = "105-ucode-18.168.6.1"; sha256 = "11z67ippn4hlmsnyv1lxknysrl3m5v908i9wf1nkm7kxw76biz04"; }
- { name = "2000-ucode-18.168.6.1"; sha256 = "0ax98hlmz11hqi0k81j5cizp2hwaah7j6s3hw7jdfsmwpzy9lwrm"; }
- { name = "2030-ucode-18.168.6.1"; sha256 = "0b69jpb46fk63ybyyb8lbh99j1d29ayp8fl98l18iqy3q7mx4ry8"; }
-
- # Kernel 3.10+
- { name = "7260-ucode-22.1.7.0"; sha256 = "0m31p98zwr70k3b9akha0d8n7x9ym43yg992jk8zd94159g37k0y"; }
- { name = "3160-ucode-22.1.7.0"; sha256 = "0qfm854xv6dc6kqj0vym1avrirrshnxp9yqnlx356zvfnqyx4l33"; }
-
- # Kernel 3.13+
- { name = "7260-ucode-22.24.8.0"; sha256 = "1zvw5dj3kv7rdnypcmp6na8mlfw735nzahy8qz35zrmda8b6gvqi"; }
- { name = "3160-ucode-22.24.8.0"; sha256 = "1jv3bhds3a3y2r719fqpc5cwb674hm3lwq9df11i6473f0xjs224"; }
- { name = "7265-ucode-22.24.8.0"; sha256 = "1pvmc58gyr62akzdj8gx02y3i3d67zwawm8zdvpg2q615721wjp9"; }
-
- # Kernel 3.14.9+
- { name = "7260-ucode-25.228.9.0"; sha256 = "0ppx9lpkc2l9aggdadw4y2cpdz5zqyckshzhlb1qj60jbajiny36"; }
- { name = "3160-ucode-25.228.9.0"; sha256 = "125kh5p21bx808l2al8v9a1g63396d1a1chf4amqa9zrp2aajmk8"; }
- { name = "7265-ucode-25.228.9.0"; sha256 = "1dv9bai1s6vdigsahbrxjwlndnp2dsgkqz8j7021d34s99kbi6z8"; }
-
- # Kernel 3.17+
- { name = "7260-ucode-23.11.10.0"; sha256 = "1d9w7kd3h3632qmwb44943lxdafjn3ii8ha9wdvqri3b8fjfn7sa"; }
- { name = "3160-ucode-23.11.10.0"; sha256 = "0ijpgfzz8735rsbkc6mvk3w7f1v9rr9dgy1l79vzmzc1vh2zpbdm"; }
- { name = "7265-ucode-23.11.10.0"; sha256 = "1az8nq6z1ns1220309wp8jq1sc5flz2ac5k41pgj50503h54rlvi"; }
- ];
-
- fetchPackage =
- { name, sha256 }: fetchurl {
- name = "iwlwifi-${name}.tgz";
- url = "https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-${name}.tgz";
- inherit sha256;
- };
-
- srcs = map fetchPackage packages;
-
-in stdenv.mkDerivation {
- name = "iwlwifi";
- inherit srcs;
-
- unpackPhase = ''
- mkdir -p ./firmware
- '';
-
- buildPhase = ''
- for src in $srcs; do
- tar zxf $src
- done
- '';
-
- installPhase = ''
- mkdir -p $out/lib/firmware
- cp -r iwlwifi-*/*.ucode "$out/lib/firmware/"
- '';
-
- meta = {
- description = "Binary firmware collection from intel";
- homepage = http://wireless.kernel.org/en/users/Drivers/iwlwifi;
- license = stdenv.lib.licenses.unfreeRedistributableFirmware;
- platforms = stdenv.lib.platforms.linux;
- };
-}
diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix
index d6b3231ec46..6cfde916815 100644
--- a/pkgs/os-specific/linux/iproute/default.nix
+++ b/pkgs/os-specific/linux/iproute/default.nix
@@ -1,12 +1,11 @@
-{ fetchgit, stdenv, flex, bison, db, iptables, pkgconfig }:
+{ fetchurl, stdenv, flex, bison, db, iptables, pkgconfig }:
stdenv.mkDerivation rec {
- name = "iproute2-3.17.0";
+ name = "iproute2-3.18.0";
- src = fetchgit {
- url = "git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git";
- rev = "refs/tags/v3.17.0";
- sha256 = "113ayyy7cjxn0bf67fh4is4z0jysgif016kv7ig0jp6r68xp2spa";
+ src = fetchurl {
+ url = "mirror://kernel/linux/utils/net/iproute2/${name}.tar.xz";
+ sha256 = "1pzipx6m27rv42b76isik5amziijb88lj5kxvyqlj1xx98aq58fm";
};
patch = [ ./vpnc.patch ];
diff --git a/pkgs/os-specific/linux/kernel/crc-regression.patch b/pkgs/os-specific/linux/kernel/crc-regression.patch
new file mode 100644
index 00000000000..623713d16a6
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/crc-regression.patch
@@ -0,0 +1,24 @@
+See https://github.com/NixOS/nixpkgs/issues/6231
+
+v3.14.31:crypto/crc32c.c is missing the MODULE_ALIAS_CRYPTO("crc32c").
+That's probably because crypto/crc32c.c was renamed to
+crypto/crc32c_generic.c in commit
+06e5a1f29819759392239669beb2cad27059c8ec and therefore fell through
+the cracks when backporting commit
+5d26a105b5a73e5635eae0629b42fa0a90e07b7b.
+
+So the affected kernels (all that backported the "crypto-" prefix
+patches) need this additional patch:
+
+diff --git a/crypto/crc32c.c b/crypto/crc32c.c
+index 06f7018c9d95..aae5829eb681 100644
+--- a/crypto/crc32c.c
++++ b/crypto/crc32c.c
+@@ -167,6 +167,7 @@ static void __exit crc32c_mod_fini(void)
+ module_init(crc32c_mod_init);
+ module_exit(crc32c_mod_fini);
+
++MODULE_ALIAS_CRYPTO("crc32c");
+ MODULE_AUTHOR("Clay Haapala ");
+ MODULE_DESCRIPTION("CRC32c (Castagnoli) calculations wrapper for lib/crc32c");
+ MODULE_LICENSE("GPL");
diff --git a/pkgs/os-specific/linux/kernel/linux-3.10.nix b/pkgs/os-specific/linux/kernel/linux-3.10.nix
index 0d7a0d30171..5a27d289417 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.10.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.10.67";
+ version = "3.10.68";
extraMeta.branch = "3.10";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "158g3c643gfqwf92d665lq40rs92vizj5x1pi3w9xy1k53ldw5ia";
+ sha256 = "13r8xd1qv2cmzk9dzh6xzy0sr4yf301a959lnf7v7ji3bs7gzp4a";
};
features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.14.nix b/pkgs/os-specific/linux/kernel/linux-3.14.nix
index 05e0722103f..30af9e562e6 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.14.nix
@@ -1,13 +1,13 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.14.31";
+ version = "3.14.32";
# Remember to update grsecurity!
extraMeta.branch = "3.14";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "1j271f1mz40kh7hw44az549dr2413vyg22nwsz61garyvrxndpd6";
+ sha256 = "1dmmb8z641ak5fsm3al5j6ifh77dvm94npwhvwmr0wp6z8k76w02";
};
features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.18.nix b/pkgs/os-specific/linux/kernel/linux-3.18.nix
index ae6a3e3435a..73c17f6c1ca 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.18.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.18.nix
@@ -1,13 +1,13 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.18.5";
+ version = "3.18.6";
# Remember to update grsecurity!
extraMeta.branch = "3.18";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "147wf0igbsjlwhh8zam0xpw76ysc8cm2x3fkk2g1cx4wwlv28i74";
+ sha256 = "1xaky9yqkpa63936z7h4x3pxp4z45jwhslxpg4nmgakk262a9hf4";
};
features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.17.nix b/pkgs/os-specific/linux/kernel/linux-3.19.nix
similarity index 67%
rename from pkgs/os-specific/linux/kernel/linux-3.17.nix
rename to pkgs/os-specific/linux/kernel/linux-3.19.nix
index 5c1aa2a04a1..1706a5f05c4 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.17.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.19.nix
@@ -1,12 +1,14 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.17.8";
- extraMeta.branch = "3.17";
+ version = "3.19";
+ modDirVersion = "3.19.0";
+ # Remember to update grsecurity!
+ extraMeta.branch = "3.19";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "0g2q0pnsbsfwzk9rl2ggkfhsmj9bzmy9lccclpd98zfw7kflz8ca";
+ sha256 = "0v40b5l6dcviqgl47bxlcbimz7kawmy1c2909axi441jwlgm2hmy";
};
features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 3fa42322b58..14c25374b3f 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -65,21 +65,26 @@ rec {
};
grsecurity_stable = grsecPatch
- { kversion = "3.14.31";
- revision = "201501310705";
+ { kversion = "3.14.32";
+ revision = "201502062101";
branch = "stable";
- sha256 = "19zm0ynjnk01qcp157v60s313fxm45dx9cc30rnpfig03r5p0la8";
+ sha256 = "1qni3x6kwrhgqbhwm02m9wnmz7y2ydwwxw9ckk06xyq3j9qgv3aj";
};
grsecurity_unstable = grsecPatch
- { kversion = "3.18.5";
- revision = "201501310706";
+ { kversion = "3.18.6";
+ revision = "201502062100";
branch = "test";
- sha256 = "098jikfxh9sk097lrajyzf4x6dbxwwhpkirmqn25rn004y5y7ysn";
+ sha256 = "11cy7qqkahd323hmi67r4psgryapk1qwamm9m15rhbfqgq428306";
};
grsec_fix_path =
{ name = "grsec-fix-path";
patch = ./grsec-path.patch;
};
+
+ crc_regression =
+ { name = "crc-backport-regression";
+ patch = ./crc-regression.patch;
+ };
}
diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix
index 6b30104b083..e0fc88d995b 100644
--- a/pkgs/os-specific/linux/nfs-utils/default.nix
+++ b/pkgs/os-specific/linux/nfs-utils/default.nix
@@ -1,18 +1,18 @@
{ fetchurl, stdenv, tcp_wrappers, utillinux, libcap, libtirpc, libevent, libnfsidmap
-, lvm2, e2fsprogs, python
+, lvm2, e2fsprogs, python, sqlite
}:
stdenv.mkDerivation rec {
- name = "nfs-utils-1.2.5";
+ name = "nfs-utils-1.3.2";
src = fetchurl {
url = "mirror://sourceforge/nfs/${name}.tar.bz2";
- sha256 = "16ssfkj36ljifyaskgwpd3ys8ylhi5gasq88aha3bhg5dr7yv59m";
+ sha256 = "1xwilpdr1vizq2yhpzxpwqqr9f8kn0dy2wcpc626mf30ybp7572v";
};
buildInputs =
[ tcp_wrappers utillinux libcap libtirpc libevent libnfsidmap
- lvm2 e2fsprogs python
+ lvm2 e2fsprogs python sqlite
];
# FIXME: Add the dependencies needed for NFSv4 and TI-RPC.
@@ -23,24 +23,21 @@ stdenv.mkDerivation rec {
]
++ stdenv.lib.optional (stdenv ? glibc) "--with-rpcgen=${stdenv.glibc}/bin/rpcgen";
- patchPhase =
- ''
- for i in "tests/"*.sh
- do
- sed -i "$i" -e's|/bin/bash|/bin/sh|g'
- chmod +x "$i"
- done
- sed -i s,/usr/sbin,$out/sbin, utils/statd/statd.c
+ patches = [ ./no-install.patch ];
- # https://bugzilla.redhat.com/show_bug.cgi?id=749195
- sed -i s,PAGE_SIZE,getpagesize\(\), utils/blkmapd/device-process.c
- '';
+ postPatch = ''
+ for i in "tests/"*.sh
+ do
+ sed -i "$i" -e's|/bin/bash|/bin/sh|g'
+ chmod +x "$i"
+ done
+ sed -i s,/usr/sbin,$out/sbin, utils/statd/statd.c
+ '';
- preBuild =
- ''
- makeFlags="sbindir=$out/sbin"
- installFlags="statedir=$TMPDIR" # hack to make `make install' work
- '';
+ preBuild = ''
+ makeFlags="sbindir=$out/sbin"
+ installFlags="statedir=$TMPDIR" # hack to make `make install' work
+ '';
# One test fails on mips.
doCheck = !stdenv.isMips;
diff --git a/pkgs/os-specific/linux/nfs-utils/no-install.patch b/pkgs/os-specific/linux/nfs-utils/no-install.patch
new file mode 100644
index 00000000000..b45008dc036
--- /dev/null
+++ b/pkgs/os-specific/linux/nfs-utils/no-install.patch
@@ -0,0 +1,19 @@
+diff --git a/Makefile.in b/Makefile.in
+index 6a5c7c2..64342fe 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -872,14 +872,6 @@ uninstall-am:
+
+
+ install-data-hook:
+- if [ ! -d $(DESTDIR)$(statedir) ]; then mkdir -p $(DESTDIR)$(statedir); fi
+- touch $(DESTDIR)$(statedir)/xtab; chmod 644 $(DESTDIR)$(statedir)/xtab
+- touch $(DESTDIR)$(statedir)/etab; chmod 644 $(DESTDIR)$(statedir)/etab
+- touch $(DESTDIR)$(statedir)/rmtab; chmod 644 $(DESTDIR)$(statedir)/rmtab
+- mkdir -p $(DESTDIR)$(statdpath)/sm $(DESTDIR)$(statdpath)/sm.bak
+- touch $(DESTDIR)$(statdpath)/state
+- chmod go-rwx $(DESTDIR)$(statdpath)/sm $(DESTDIR)$(statdpath)/sm.bak $(DESTDIR)$(statdpath)/state
+- -chown $(statduser) $(DESTDIR)$(statdpath)/sm $(DESTDIR)$(statdpath)/sm.bak $(DESTDIR)$(statdpath)/state
+
+ uninstall-hook:
+ rm $(DESTDIR)$(statedir)/xtab
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 63cb33a52a2..f8b6327a654 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -12,7 +12,7 @@ assert (!libsOnly) -> kernel != null;
let
- versionNumber = "343.36";
+ versionNumber = "346.35";
# Policy: use the highest stable version as the default (on our master).
inherit (stdenv.lib) makeLibraryPath;
in
@@ -26,12 +26,12 @@ stdenv.mkDerivation {
if stdenv.system == "i686-linux" then
fetchurl {
url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run";
- sha256 = "17l23dp725883xcyy1n178pcl6lj27psrgbxymc356x2pngwkhcc";
+ sha256 = "09fz8nydi8ip3yv7dmbwnpwvjql5wp582z57022ppb9hqwq3r9mv";
}
else if stdenv.system == "x86_64-linux" then
fetchurl {
url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run";
- sha256 = "0djvh9wmazrfvpgyiqrz81kjk2war20xyjjr2kncxyplzk28mw97";
+ sha256 = "1z9a69a9xbcrz925mj02l2qaqcnhxzh2msbq4hf73p7x4h94ibkx";
}
else throw "nvidia-x11 does not support platform ${stdenv.system}";
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index 8f4a7491427..618b59b32aa 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -1,7 +1,6 @@
-{ stdenv, fetchFromGitHub, kernel, perl, autoconf, automake, libtool, coreutils, gawk }:
+{ callPackage, fetchFromGitHub, ... } @ args:
-stdenv.mkDerivation rec {
- name = "spl-${version}-${kernel.version}";
+callPackage ./generic.nix (args // rec {
version = "0.6.3-1.2";
src = fetchFromGitHub {
@@ -12,38 +11,4 @@ stdenv.mkDerivation rec {
};
patches = [ ./install_prefix.patch ./const.patch ./time.patch ];
-
- buildInputs = [ perl autoconf automake libtool ];
-
- preConfigure = ''
- ./autogen.sh
-
- substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
- substituteInPlace ./module/spl/spl-module.c --replace /bin/mknod mknod
-
- substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
- substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
- substituteInPlace ./module/splat/splat-linux.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
- '';
-
- configureFlags = ''
- --with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source
- --with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build
- '';
-
- enableParallelBuilding = true;
-
- meta = {
- description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
-
- longDescription = ''
- This kernel module is a porting layer for ZFS to work inside the linux
- kernel.
- '';
-
- homepage = http://zfsonlinux.org/;
- platforms = stdenv.lib.platforms.linux;
- license = stdenv.lib.licenses.gpl2Plus;
- maintainers = with stdenv.lib.maintainers; [ jcumming wizeman ];
- };
-}
+})
diff --git a/pkgs/os-specific/linux/spl/generic.nix b/pkgs/os-specific/linux/spl/generic.nix
new file mode 100644
index 00000000000..c25ff6608e2
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/generic.nix
@@ -0,0 +1,61 @@
+{ stdenv, autoconf, automake, libtool, coreutils, gawk
+, configFile ? "all"
+
+# Kernel dependencies
+, kernel ? null
+
+# Version specific parameters
+, version, src, patches
+, ...
+}:
+
+with stdenv.lib;
+let
+ buildKernel = any (n: n == configFile) [ "kernel" "all" ];
+ buildUser = any (n: n == configFile) [ "user" "all" ];
+in
+
+assert any (n: n == configFile) [ "kernel" "user" "all" ];
+assert buildKernel -> kernel != null;
+
+stdenv.mkDerivation rec {
+ name = "spl-${configFile}-${version}${optionalString buildKernel "-${kernel.version}"}";
+
+ inherit version src patches;
+
+ buildInputs = [ autoconf automake libtool ];
+
+ preConfigure = ''
+ ./autogen.sh
+
+ substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
+ substituteInPlace ./module/spl/spl-module.c --replace /bin/mknod mknod
+
+ substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
+ substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
+ substituteInPlace ./module/splat/splat-linux.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
+ '';
+
+ configureFlags = [
+ "--with-config=${configFile}"
+ ] ++ optionals buildKernel [
+ "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
+ "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
+ ];
+
+ enableParallelBuilding = true;
+
+ meta = {
+ description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
+
+ longDescription = ''
+ This kernel module is a porting layer for ZFS to work inside the linux
+ kernel.
+ '';
+
+ homepage = http://zfsonlinux.org/;
+ platforms = platforms.linux;
+ license = licenses.gpl2Plus;
+ maintainers = with maintainers; [ jcumming wizeman wkennington ];
+ };
+}
diff --git a/pkgs/os-specific/linux/spl/git.nix b/pkgs/os-specific/linux/spl/git.nix
index d03f8644bdf..fc204bc0232 100644
--- a/pkgs/os-specific/linux/spl/git.nix
+++ b/pkgs/os-specific/linux/spl/git.nix
@@ -1,47 +1,13 @@
-{ stdenv, fetchgit, kernel, perl, autoconf, automake, libtool, coreutils, gawk }:
+{ callPackage, fetchgit, ... } @ args:
-stdenv.mkDerivation {
- name = "spl-0.6.4-${kernel.version}";
+callPackage ./generic.nix (args // rec {
+ version = "086476f";
src = fetchgit {
url = git://github.com/zfsonlinux/spl.git;
- rev = "54cccfc2e30fa84463c056e8ad04b2be9448999e";
- sha256 = "07nbrq3li51lvncqvj4rzgdw9bnfzr4bc5qqwizrgangd839jlkx";
+ rev = "086476f92005506cb07e75f889e8ddb69026e842";
+ sha256 = "1n3cjdwxccvcns7jydgznkb6jy0p59qx1yg512jjf4m9hf5p2pwm";
};
patches = [ ./const.patch ./install_prefix-git.patch ];
-
- buildInputs = [ perl autoconf automake libtool ];
-
- preConfigure = ''
- ./autogen.sh
-
- substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
- substituteInPlace ./module/spl/spl-module.c --replace /bin/mknod mknod
-
- substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
- substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
- substituteInPlace ./module/splat/splat-linux.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
- '';
-
- configureFlags = [
- "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
- "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
- ];
-
- enableParallelBuilding = true;
-
- meta = {
- description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
-
- longDescription = ''
- This kernel module is a porting layer for ZFS to work inside the linux
- kernel.
- '';
-
- homepage = http://zfsonlinux.org/;
- platforms = stdenv.lib.platforms.linux;
- license = stdenv.lib.licenses.gpl2Plus;
- maintainers = with stdenv.lib.maintainers; [ wizeman ];
- };
-}
+})
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 1dec2dcb80b..3765469b9ab 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -3,10 +3,10 @@ let
inherit (stdenv.lib) optional optionalString;
s = rec {
baseName="sysdig";
- version = "0.1.95";
+ version = "0.1.96";
name="${baseName}-${version}";
url="https://github.com/draios/sysdig/archive/${version}.tar.gz";
- sha256 = "1h7yjfpgnhmzvc9862k7salc80sw7chmxx5chh4xw1lzsjz1nz5s";
+ sha256 = "0fw5km1ms5faa9hlhzb6nba79m59443zblv43gpzsq1pwvpg7r94";
};
buildInputs = [
cmake zlib luajit
diff --git a/pkgs/os-specific/linux/zfs/3.19-compat-git.patch b/pkgs/os-specific/linux/zfs/3.19-compat-git.patch
new file mode 100644
index 00000000000..07c4eb55acd
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/3.19-compat-git.patch
@@ -0,0 +1,146 @@
+From 5a562310d706c3c2f2adc067fe73f1061c4fc386 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Thalheim?=
+Date: Sat, 7 Feb 2015 13:41:01 +0100
+Subject: [PATCH] Linux 3.19 compat: file_inode was added
+
+struct access f->f_dentry->d_inode was replaced by accessor function
+file_inode(f)
+---
+ config/kernel-file-inode.m4 | 20 ++++++++++++++++++++
+ config/kernel.m4 | 1 +
+ include/linux/Makefile.am | 1 +
+ include/linux/fs_compat.h | 38 ++++++++++++++++++++++++++++++++++++++
+ include/sys/zpl.h | 1 +
+ module/zfs/zpl_file.c | 4 ++--
+ 6 files changed, 63 insertions(+), 2 deletions(-)
+ create mode 100644 config/kernel-file-inode.m4
+ create mode 100644 include/linux/fs_compat.h
+
+diff --git a/config/kernel-file-inode.m4 b/config/kernel-file-inode.m4
+new file mode 100644
+index 0000000..13af4e6
+--- /dev/null
++++ b/config/kernel-file-inode.m4
+@@ -0,0 +1,20 @@
++dnl #
++dnl # 3.19 API change
++dnl # struct access f->f_dentry->d_inode was replaced by accessor function
++dnl # file_inode(f)
++dnl #
++AC_DEFUN([ZFS_AC_KERNEL_FILE_INODE], [
++ AC_MSG_CHECKING([whether file_inode() is available])
++ ZFS_LINUX_TRY_COMPILE([
++ #include
++ ],[
++ struct file *f = NULL;
++ file_inode(f);
++ ],[
++ AC_MSG_RESULT(yes)
++ AC_DEFINE(HAVE_FILE_INODE, 1,
++ [file_inode() is available])
++ ],[
++ AC_MSG_RESULT(no)
++ ])
++])
+diff --git a/config/kernel.m4 b/config/kernel.m4
+index bdfb19c..e0b7954 100644
+--- a/config/kernel.m4
++++ b/config/kernel.m4
+@@ -61,6 +61,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [
+ ZFS_AC_KERNEL_INODE_OPERATIONS_GET_ACL
+ ZFS_AC_KERNEL_CURRENT_UMASK
+ ZFS_AC_KERNEL_SHOW_OPTIONS
++ ZFS_AC_KERNEL_FILE_INODE
+ ZFS_AC_KERNEL_FSYNC
+ ZFS_AC_KERNEL_EVICT_INODE
+ ZFS_AC_KERNEL_DIRTY_INODE_WITH_FLAGS
+diff --git a/include/linux/Makefile.am b/include/linux/Makefile.am
+index d00b1c8..480af26 100644
+--- a/include/linux/Makefile.am
++++ b/include/linux/Makefile.am
+@@ -4,6 +4,7 @@ KERNEL_H = \
+ $(top_srcdir)/include/linux/dcache_compat.h \
+ $(top_srcdir)/include/linux/xattr_compat.h \
+ $(top_srcdir)/include/linux/vfs_compat.h \
++ $(top_srcdir)/include/linux/fs_compat.h \
+ $(top_srcdir)/include/linux/blkdev_compat.h \
+ $(top_srcdir)/include/linux/utsname_compat.h
+
+diff --git a/include/linux/fs_compat.h b/include/linux/fs_compat.h
+new file mode 100644
+index 0000000..7860d75
+--- /dev/null
++++ b/include/linux/fs_compat.h
+@@ -0,0 +1,38 @@
++/*
++ * CDDL HEADER START
++ *
++ * The contents of this file are subject to the terms of the
++ * Common Development and Distribution License (the "License").
++ * You may not use this file except in compliance with the License.
++ *
++ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
++ * or http://www.opensolaris.org/os/licensing.
++ * See the License for the specific language governing permissions
++ * and limitations under the License.
++ *
++ * When distributing Covered Code, include this CDDL HEADER in each
++ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
++ * If applicable, add the following below this CDDL HEADER, with the
++ * fields enclosed by brackets "[]" replaced with your own identifying
++ * information: Portions Copyright [yyyy] [name of copyright owner]
++ *
++ * CDDL HEADER END
++ */
++
++/*
++ * Copyright (C) 2015 Jörg Thalheim.
++ */
++
++#ifndef _ZFS_FS_H
++#define _ZFS_FS_H
++
++#include
++
++#ifndef HAVE_FILE_INODE
++static inline struct inode *file_inode(const struct file *f)
++{
++ return f->f_dentry->d_inode;
++}
++#endif /* HAVE_FILE_INODE */
++
++#endif /* _ZFS_FS_H */
+diff --git a/include/sys/zpl.h b/include/sys/zpl.h
+index 3fc5d97..20eb27b 100644
+--- a/include/sys/zpl.h
++++ b/include/sys/zpl.h
+@@ -31,6 +31,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+diff --git a/module/zfs/zpl_file.c b/module/zfs/zpl_file.c
+index 1f4f219..5f5bbba 100644
+--- a/module/zfs/zpl_file.c
++++ b/module/zfs/zpl_file.c
+@@ -617,7 +617,7 @@ zpl_fallocate(struct file *filp, int mode, loff_t offset, loff_t len)
+ static int
+ zpl_ioctl_getflags(struct file *filp, void __user *arg)
+ {
+- struct inode *ip = filp->f_dentry->d_inode;
++ struct inode *ip = file_inode(filp);
+ unsigned int ioctl_flags = 0;
+ uint64_t zfs_flags = ITOZ(ip)->z_pflags;
+ int error;
+@@ -653,7 +653,7 @@ zpl_ioctl_getflags(struct file *filp, void __user *arg)
+ static int
+ zpl_ioctl_setflags(struct file *filp, void __user *arg)
+ {
+- struct inode *ip = filp->f_dentry->d_inode;
++ struct inode *ip = file_inode(filp);
+ uint64_t zfs_flags = ITOZ(ip)->z_pflags;
+ unsigned int ioctl_flags;
+ cred_t *cr = CRED();
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 511b167d358..11b77c3d66f 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -1,7 +1,6 @@
-{ stdenv, fetchFromGitHub, kernel, spl, perl, python, autoconf, automake, libtool, zlib, libuuid, coreutils, utillinux }:
+{ callPackage, fetchFromGitHub, ... } @ args:
-stdenv.mkDerivation rec {
- name = "zfs-${version}-${kernel.version}";
+callPackage ./generic.nix (args // rec {
version = "0.6.3-1.2";
src = fetchFromGitHub {
@@ -15,65 +14,4 @@ stdenv.mkDerivation rec {
./mount_zfs_prefix.patch
./nix-build.patch # Remove in >=0.6.4
];
-
- buildInputs = [ spl perl python autoconf automake libtool zlib libuuid coreutils ];
-
- # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
- NIX_CFLAGS_LINK = "-lgcc_s";
-
- preConfigure = ''
- substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs"
- substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs"
- substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount" "${utillinux}/bin/umount"
- substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/mount" "${utillinux}/bin/mount"
- substituteInPlace ./udev/rules.d/* --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id"
- substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/ztest" "$out/sbin/ztest"
- substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/zdb" "$out/sbin/zdb"
- substituteInPlace ./config/user-systemd.m4 --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
- substituteInPlace ./config/zfs-build.m4 --replace "\$sysconfdir/init.d" "$out/etc/init.d"
- substituteInPlace ./etc/zfs/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
- substituteInPlace ./cmd/zed/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
- substituteInPlace ./module/Makefile.in --replace "/bin/cp" "cp"
-
- ./autogen.sh
- '';
-
- configureFlags = [
- "--enable-systemd"
- "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
- "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
- "--with-spl=${spl}/libexec/spl"
- "--with-dracutdir=$(out)/lib/dracut"
- "--with-udevdir=$(out)/lib/udev"
- "--with-systemdunitdir=$(out)/etc/systemd/system"
- "--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
- "--sysconfdir=/etc"
- "--localstatedir=/var"
- ];
-
- enableParallelBuilding = true;
-
- # Remove provided services as they are buggy
- postInstall = ''
- rm $out/etc/systemd/system/zfs-import-*.service
-
- sed -i '/zfs-import-scan.service/d' $out/etc/systemd/system/*
-
- for i in $out/etc/systemd/system/*; do
- substituteInPlace $i --replace "zfs-import-cache.service" "zfs-import.target"
- done
- '';
-
- meta = {
- description = "ZFS Filesystem Linux Kernel module";
- longDescription = ''
- ZFS is a filesystem that combines a logical volume manager with a
- Copy-On-Write filesystem with data integrity detection and repair,
- snapshotting, cloning, block devices, deduplication, and more.
- '';
- homepage = http://zfsonlinux.org/;
- license = stdenv.lib.licenses.cddl;
- platforms = stdenv.lib.platforms.linux;
- maintainers = with stdenv.lib.maintainers; [ jcumming wizeman ];
- };
-}
+})
diff --git a/pkgs/os-specific/linux/zfs/generic.nix b/pkgs/os-specific/linux/zfs/generic.nix
new file mode 100644
index 00000000000..ba3884a5e9b
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/generic.nix
@@ -0,0 +1,94 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, utillinux
+, configFile ? "all"
+
+# Userspace dependencies
+, zlib, libuuid, python
+
+# Kernel dependencies
+, kernel ? null, spl ? null
+
+# Version specific settings
+, version, src, patches
+, ...
+}:
+
+with stdenv.lib;
+let
+ buildKernel = any (n: n == configFile) [ "kernel" "all" ];
+ buildUser = any (n: n == configFile) [ "user" "all" ];
+in
+
+assert any (n: n == configFile) [ "kernel" "user" "all" ];
+assert buildKernel -> kernel != null && spl != null;
+
+stdenv.mkDerivation rec {
+ name = "zfs-${configFile}-${version}${optionalString buildKernel "-${kernel.version}"}";
+
+ inherit version src patches;
+
+ buildInputs = [ autoconf automake libtool ]
+ ++ optionals buildKernel [ spl ]
+ ++ optionals buildUser [ zlib libuuid python ];
+
+ # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
+ NIX_CFLAGS_LINK = "-lgcc_s";
+
+ preConfigure = ''
+ substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs"
+ substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs"
+ substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount" "${utillinux}/bin/umount"
+ substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/mount" "${utillinux}/bin/mount"
+ substituteInPlace ./udev/rules.d/* --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id"
+ substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/ztest" "$out/sbin/ztest"
+ substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/zdb" "$out/sbin/zdb"
+ substituteInPlace ./config/user-systemd.m4 --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
+ substituteInPlace ./config/zfs-build.m4 --replace "\$sysconfdir/init.d" "$out/etc/init.d"
+ substituteInPlace ./etc/zfs/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
+ substituteInPlace ./cmd/zed/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
+ substituteInPlace ./module/Makefile.in --replace "/bin/cp" "cp"
+
+ ./autogen.sh
+ '';
+
+ configureFlags = [
+ "--with-config=${configFile}"
+ ] ++ optionals buildUser [
+ "--with-dracutdir=$(out)/lib/dracut"
+ "--with-udevdir=$(out)/lib/udev"
+ "--with-systemdunitdir=$(out)/etc/systemd/system"
+ "--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
+ "--sysconfdir=/etc"
+ "--localstatedir=/var"
+ "--enable-systemd"
+ ] ++ optionals buildKernel [
+ "--with-spl=${spl}/libexec/spl"
+ "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
+ "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
+ ];
+
+ enableParallelBuilding = true;
+
+ # Remove provided services as they are buggy
+ postInstall = optionalString buildUser ''
+ rm $out/etc/systemd/system/zfs-import-*.service
+
+ sed -i '/zfs-import-scan.service/d' $out/etc/systemd/system/*
+
+ for i in $out/etc/systemd/system/*; do
+ substituteInPlace $i --replace "zfs-import-cache.service" "zfs-import.target"
+ done
+ '';
+
+ meta = {
+ description = "ZFS Filesystem Linux Kernel module";
+ longDescription = ''
+ ZFS is a filesystem that combines a logical volume manager with a
+ Copy-On-Write filesystem with data integrity detection and repair,
+ snapshotting, cloning, block devices, deduplication, and more.
+ '';
+ homepage = http://zfsonlinux.org/;
+ license = licenses.cddl;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ jcumming wizeman wkennington ];
+ };
+}
diff --git a/pkgs/os-specific/linux/zfs/git.nix b/pkgs/os-specific/linux/zfs/git.nix
index 7ca8ed14787..da48880ae16 100644
--- a/pkgs/os-specific/linux/zfs/git.nix
+++ b/pkgs/os-specific/linux/zfs/git.nix
@@ -1,77 +1,18 @@
-{ stdenv, fetchgit, kernel, spl_git, perl, python, autoconf, automake, libtool, zlib, libuuid, coreutils, utillinux }:
+{ callPackage, fetchgit, spl_git, ... } @ args:
-stdenv.mkDerivation {
- name = "zfs-0.6.4-${kernel.version}";
+callPackage ./generic.nix (args // rec {
+ version = "33b4de5";
src = fetchgit {
url = git://github.com/zfsonlinux/zfs.git;
- rev = "2c41df5bf8327f3bc6ee25cf2aa570bb159cb348";
- sha256 = "0bmpxcb1k99fs86qql8pblmr2w6bf1sgxc9igh1vhjl672ma6634";
+ rev = "33b4de513ee81c2a87e1b954a9544a5eec1f8f94";
+ sha256 = "07kdml65l22z1xi8jif5hr7zr7a8mykyms4f5yrf8nyad20kp6il";
};
patches = [
./nix-build-git.patch
+ ./3.19-compat-git.patch # Remove once PR-3084 is mainlined
];
- buildInputs = [ spl_git perl python autoconf automake libtool zlib libuuid coreutils ];
-
- # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
- NIX_CFLAGS_LINK = "-lgcc_s";
-
- preConfigure = ''
- substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs"
- substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs"
- substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount" "${utillinux}/bin/umount"
- substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/mount" "${utillinux}/bin/mount"
- substituteInPlace ./udev/rules.d/* --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id"
- substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/ztest" "$out/sbin/ztest"
- substituteInPlace ./cmd/ztest/ztest.c --replace "/usr/sbin/zdb" "$out/sbin/zdb"
- substituteInPlace ./config/user-systemd.m4 --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
- substituteInPlace ./config/zfs-build.m4 --replace "\$sysconfdir/init.d" "$out/etc/init.d"
- substituteInPlace ./etc/zfs/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
- substituteInPlace ./cmd/zed/Makefile.am --replace "\$(sysconfdir)" "$out/etc"
- substituteInPlace ./module/Makefile.in --replace "/bin/cp" "cp"
-
- ./autogen.sh
- '';
-
- configureFlags = [
- "--enable-systemd"
- "--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
- "--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
- "--with-spl=${spl_git}/libexec/spl"
- "--with-dracutdir=$(out)/lib/dracut"
- "--with-udevdir=$(out)/lib/udev"
- "--with-systemdunitdir=$(out)/etc/systemd/system"
- "--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
- "--with-mounthelperdir=$(out)/sbin"
- "--sysconfdir=/etc"
- "--localstatedir=/var"
- ];
-
- enableParallelBuilding = true;
-
- # Remove provided services as they are buggy
- postInstall = ''
- rm $out/etc/systemd/system/zfs-import-*.service
-
- sed -i '/zfs-import-scan.service/d' $out/etc/systemd/system/*
-
- for i in $out/etc/systemd/system/*; do
- substituteInPlace $i --replace "zfs-import-cache.service" "zfs-import.target"
- done
- '';
-
- meta = {
- description = "ZFS Filesystem Linux Kernel module";
- longDescription = ''
- ZFS is a filesystem that combines a logical volume manager with a
- Copy-On-Write filesystem with data integrity detection and repair,
- snapshotting, cloning, block devices, deduplication, and more.
- '';
- homepage = http://zfsonlinux.org/;
- license = stdenv.lib.licenses.cddl;
- platforms = stdenv.lib.platforms.linux;
- maintainers = with stdenv.lib.maintainers; [ wizeman ];
- };
-}
+ spl = spl_git;
+})
diff --git a/pkgs/servers/consul/alerts.nix b/pkgs/servers/consul/alerts.nix
new file mode 100644
index 00000000000..b3dbb21d5bb
--- /dev/null
+++ b/pkgs/servers/consul/alerts.nix
@@ -0,0 +1,27 @@
+{ lib, goPackages, fetchFromGitHub }:
+
+with goPackages;
+
+buildGoPackage rec {
+ name = "consul-alerts-${version}";
+ version = "0.2.0";
+
+ src = fetchFromGitHub {
+ owner = "AcalephStorage";
+ repo = "consul-alerts";
+ rev = "v${version}";
+ sha256 = "02rgz68g3i408biq2aqilpqraqirzmba9mh7avdga5bljp427jgn";
+ };
+
+ goPackagePath = "github.com/AcalephStorage/consul-alerts";
+ dontInstallSrc = true;
+ subPackages = [ "./" ];
+
+ meta = with lib; {
+ description = "A simple daemon to send notifications based on Consul health checks";
+ homepage = https://github.com/AcalephStorage/consul-alerts;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ offline ];
+ platforms = platforms.unix;
+ };
+}
diff --git a/pkgs/servers/etcd/default.nix b/pkgs/servers/etcd/default.nix
index 5d5939f83be..abec19663ff 100644
--- a/pkgs/servers/etcd/default.nix
+++ b/pkgs/servers/etcd/default.nix
@@ -1,26 +1,23 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
- version = "2.0.0-rc.1";
+with goPackages;
+
+buildGoPackage rec {
+ version = "2.0.0";
name = "etcd-${version}";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchFromGitHub;
+ goPackagePath = "github.com/coreos/etcd";
+ src = fetchFromGitHub {
+ owner = "coreos";
+ repo = "etcd";
+ rev = "v${version}";
+ sha256 = "1s3jilzlqyh2i81pv79cgap6dfj7qrfrwcv4w9lic5ivznz413vc";
};
- buildInputs = [ go ];
+ subPackages = [ "./" ];
- buildPhase = ''
- export GOPATH=$src
- go build -v -o etcd github.com/coreos/etcd
- '';
+ dontInstallSrc = true;
- installPhase = ''
- mkdir -p $out/bin
- mv etcd $out/bin/etcd
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "A highly-available key value store for shared configuration and service discovery";
homepage = http://coreos.com/using-coreos/etcd/;
license = licenses.asl20;
diff --git a/pkgs/servers/etcd/deps.nix b/pkgs/servers/etcd/deps.nix
deleted file mode 100644
index b07ee1d7489..00000000000
--- a/pkgs/servers/etcd/deps.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/coreos/etcd";
- src = fetchFromGitHub {
- owner = "coreos";
- repo = "etcd";
- rev = "221abdcb3b755b36d1e7d70149f6de3450351619";
- sha256 = "1wkd238ap9gp5irrb3f6nnh83rzizwfrfac76j0dvqdka35l247k";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/servers/monitoring/bosun/default.nix b/pkgs/servers/monitoring/bosun/default.nix
index b6a6ef8f3bb..bbe92bd1329 100644
--- a/pkgs/servers/monitoring/bosun/default.nix
+++ b/pkgs/servers/monitoring/bosun/default.nix
@@ -1,29 +1,20 @@
-{ stdenv, fetchurl, go }:
-stdenv.mkDerivation rec {
- name = "bosun-${version}";
- version = "20141215200935";
- src = fetchurl {
- url = "https://github.com/bosun-monitor/bosun/archive/${version}.tar.gz";
- sha256 = "1py4plx5wi4mp05g4c1aa1wa8ny538kp2p4fzhalz33zm2qxbbx9";
+{ lib, fetchFromGitHub, goPackages }:
+
+with goPackages;
+
+buildGoPackage rec {
+ rev = "20150202222550";
+ name = "bosun-${rev}";
+ goPackagePath = "bosun.org";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bosun-monitor";
+ repo = "bosun";
+ sha256 = "0xrnyq85nxj6rddrhd19r2bz59pzxci6bnjh61j4z8hd6ryp8j2c";
};
- buildInputs = [ go ];
+ subPackages = [ "cmd/bosun" ];
- sourceRoot = ".";
-
- buildPhase = ''
- mkdir -p src
- mv bosun-${version} src/bosun.org
-
- export GOPATH=$PWD
- go build -v -o bosun src/bosun.org/cmd/bosun/main.go
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- cp bosun $out/bin
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Time series alerting framework";
longDescription = ''
An advanced, open-source monitoring and alerting system by Stack Exchange.
diff --git a/pkgs/servers/monitoring/bosun/scollector.nix b/pkgs/servers/monitoring/bosun/scollector.nix
index 176d42d382a..f7e5c99c91d 100644
--- a/pkgs/servers/monitoring/bosun/scollector.nix
+++ b/pkgs/servers/monitoring/bosun/scollector.nix
@@ -1,32 +1,23 @@
-{ stdenv, fetchurl, go }:
-stdenv.mkDerivation rec {
- name = "scollector-${version}";
- version = "20141204222654";
- src = fetchurl {
- url = "https://github.com/bosun-monitor/bosun/archive/${version}.tar.gz";
- sha256 = "1jwhfwf24zhncrirna3q1vhap4f955bqx3sws3ryk5gp1w99l36n";
+{ lib, fetchFromGitHub, goPackages }:
+
+with goPackages;
+
+buildGoPackage rec {
+ rev = "20150202222550";
+ name = "bosun-${rev}";
+ goPackagePath = "bosun.org";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bosun-monitor";
+ repo = "bosun";
+ sha256 = "0xrnyq85nxj6rddrhd19r2bz59pzxci6bnjh61j4z8hd6ryp8j2c";
};
- buildInputs = [ go ];
+ subPackages = [ "cmd/scollector" ];
- sourceRoot = ".";
-
- buildPhase = ''
- mkdir -p src
- mv bosun-${version} src/bosun.org
-
- export GOPATH=$PWD
- go build -v -o scollector src/bosun.org/cmd/scollector/main.go
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- cp scollector $out/bin
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Collect system information and store it in OpenTSDB or Bosun";
homepage = http://bosun.org/scollector;
license = licenses.mit;
- platforms = stdenv.lib.platforms.linux;
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index d3dca7e88ae..0078b4af96f 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -27,13 +27,13 @@ let
opt = stdenv.lib.optional;
mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}";
major = "0.19";
- minor = "8";
+ minor = "9";
in stdenv.mkDerivation rec {
name = "mpd-${major}.${minor}";
src = fetchurl {
url = "http://www.musicpd.org/download/mpd/${major}/${name}.tar.gz";
- sha256 = "1qifgc20cawhjxj7skn5xg23526i15hmav56wmd7cfxv50kq4j91";
+ sha256 = "1j3cv8b76bfj3ddpd29v3apb5025i87y5h5b4lrs2g5vqsgpvb6y";
};
buildInputs = [ pkgconfig glib boost ]
diff --git a/pkgs/servers/nosql/influxdb/backup.nix b/pkgs/servers/nosql/influxdb/backup.nix
index 89cc1100414..0713f064ca5 100644
--- a/pkgs/servers/nosql/influxdb/backup.nix
+++ b/pkgs/servers/nosql/influxdb/backup.nix
@@ -1,28 +1,22 @@
-{ stdenv, lib, go, fetchgit }:
+{ lib, goPackages, fetchgit }:
-stdenv.mkDerivation rec {
- version = "4556edb";
- name = "influxdb-backup-${version}";
+with goPackages;
- src = import ./deps.nix {
- inherit stdenv lib fetchgit;
+buildGoPackage rec {
+ rev = "4556edbffa914a8c17fa1fa1564962a33c6c7596";
+ name = "influxdb-backup-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/eckardt/influxdb-backup";
+ src = fetchgit {
+ inherit rev;
+ url = https://github.com/eckardt/influxdb-backup.git;
+ sha256 = "2928063e6dfe4be7b69c8e72e4d6a5fc557f0c75e9625fadf607d59b8e80e34b";
};
- buildInputs = [ go ];
+ subPackages = [ "influxdb-dump" "influxdb-restore" ];
- buildPhase = ''
- export GOPATH=$src
- go build -v -o influxdb-dump github.com/eckardt/influxdb-backup/influxdb-dump
- go build -v -o influxdb-restore github.com/eckardt/influxdb-backup/influxdb-restore
- '';
+ buildInputs = [ eckardt.influxdb-go ];
- installPhase = ''
- mkdir -p $out/bin
- mv influxdb-dump $out/bin
- mv influxdb-restore $out/bin
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Backup and Restore for InfluxDB";
homepage = https://github.com/eckardt/influxdb-backup;
maintainers = with maintainers; [ offline ];
diff --git a/pkgs/servers/nosql/influxdb/deps.nix b/pkgs/servers/nosql/influxdb/deps.nix
deleted file mode 100644
index faafafc2bba..00000000000
--- a/pkgs/servers/nosql/influxdb/deps.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchgit }:
-
-let
- goDeps = [
- {
- root = "github.com/eckardt/influxdb-backup";
- src = fetchgit {
- url = https://github.com/eckardt/influxdb-backup.git;
- rev = "4556edbffa914a8c17fa1fa1564962a33c6c7596";
- sha256 = "2928063e6dfe4be7b69c8e72e4d6a5fc557f0c75e9625fadf607d59b8e80e34b";
- };
- }
- {
- root = "github.com/eckardt/influxdb-go";
- src = fetchgit {
- url = https://github.com/eckardt/influxdb-go.git;
- rev = "8b71952efc257237e077c5d0672e936713bad38f";
- sha256 = "5318c7e1131ba2330c90a1b67855209e41d3c77811b1d212a96525b42d391f6e";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix
index 62ea55d00c1..d307915d2f5 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/default.nix
@@ -3,7 +3,7 @@
with stdenv.lib;
-let version = "2.6.6";
+let version = "2.6.7";
system-libraries = [
"pcre"
"boost"
@@ -28,7 +28,7 @@ in stdenv.mkDerivation rec {
src = fetchurl {
url = "http://downloads.mongodb.org/src/mongodb-src-r${version}.tar.gz";
- sha256 = "0shb069xsqyslazdq66smr7ifppvdclbzpdjhrj2y3qb78y70pbm";
+ sha256 = "1jbbvpp9xisxm7rpx8mm25413b01rrssqcl03349rwgamp8m88ji";
};
nativeBuildInputs = [ scons ];
diff --git a/pkgs/servers/nsq/default.nix b/pkgs/servers/nsq/default.nix
index 4d32c3203c7..a7b77b8802a 100644
--- a/pkgs/servers/nsq/default.nix
+++ b/pkgs/servers/nsq/default.nix
@@ -1,33 +1,28 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-stdenv.mkDerivation rec {
+with goPackages;
+
+buildGoPackage rec {
version = "0.2.28";
name = "nsq-${version}";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+ goPackagePath = "github.com/bitly/nsq";
+ src = fetchFromGitHub {
+ owner = "bitly";
+ repo = "nsq";
+ rev = "v${version}";
+ sha256 = "0drmf1j5w3q4l6f7xjy3y7d7cl50gcx0qwci6mahxsyaaclx60yx";
};
- buildInputs = [ go ];
+ subPackages = [ "nsqadmin" ] ++
+ map (x: "apps/"+x) [ "nsq_pubsub" "nsq_stat" "nsq_tail"
+ "nsq_to_file" "nsq_to_http" "nsq_to_nsq"
+ "nsqd" "nsqlookupd" ];
- buildPhase = ''
- export GOPATH=$src
- apps=(nsq_pubsub nsq_stat nsq_tail nsq_to_file nsq_to_http nsq_to_nsq nsqd nsqlookupd)
+ buildInputs = [ go-nsq go-options toml perks go-hostpool ];
- mkdir build
+ dontInstallSrc = true;
- go build -v -o build/nsqadmin github.com/bitly/nsq/nsqadmin
- for app in "''${apps[@]}"; do
- go build -v -o build/$app github.com/bitly/nsq/apps/$app
- done
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv build/* $out/bin
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "A realtime distributed messaging platform";
homepage = http://nsq.io/;
license = licenses.mit;
diff --git a/pkgs/servers/nsq/deps.nix b/pkgs/servers/nsq/deps.nix
deleted file mode 100644
index bd98357ece6..00000000000
--- a/pkgs/servers/nsq/deps.nix
+++ /dev/null
@@ -1,134 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "code.google.com/p/snappy-go";
- src = fetchhg {
- url = "http://code.google.com/p/snappy-go";
- rev = "14";
- sha256 = "0ywa52kcii8g2a9lbqcx8ghdf6y56lqq96sl5nl9p6h74rdvmjr7";
- };
- }
- {
- root = "github.com/BurntSushi/toml";
- src = fetchFromGitHub {
- owner = "BurntSushi";
- repo = "toml";
- rev = "f87ce853111478914f0bcffa34d43a93643e6eda";
- sha256 = "0g8203y9ycf34j2q3ymxb8nh4habgwdrjn9vdgrginllx73yq565";
- };
- }
- {
- root = "github.com/bitly/go-hostpool";
- src = fetchFromGitHub {
- owner = "bitly";
- repo = "go-hostpool";
- rev = "fed86fae5cacdc77e7399937e2f8836563620a2e";
- sha256 = "0nbssfp5ksj4hhc0d8lfq54afd9nqv6qzk3vi6rinxr3fgplrj44";
- };
- }
- {
- root = "github.com/bitly/go-nsq";
- src = fetchFromGitHub {
- owner = "bitly";
- repo = "go-nsq";
- rev = "c79a282f05364e340eadc2ce2f862a3d44eea9c0";
- sha256 = "19jlwj5419p5xwjzfnzlddjnbh5g7ifnqhd00i5p0b6ww1gk011p";
- };
- }
- {
- root = "github.com/bitly/go-simplejson";
- src = fetchFromGitHub {
- owner = "bitly";
- repo = "go-simplejson";
- rev = "1cfceb0e12f47ec02665ef480212d7b531d6f4c5";
- sha256 = "1d8x0himl58qn87lv418djy6mbs66p9ai3zpqq13nhkfl67fj3bi";
- };
- }
- {
- root = "github.com/bitly/nsq";
- src = fetchFromGitHub {
- owner = "bitly";
- repo = "nsq";
- rev = "048691a8242c9ec224fc46bf7d05f321026b69f8";
- sha256 = "0drmf1j5w3q4l6f7xjy3y7d7cl50gcx0qwci6mahxsyaaclx60yx";
- };
- }
- {
- root = "github.com/bmizerany/assert";
- src = fetchFromGitHub {
- owner = "bmizerany";
- repo = "assert";
- rev = "e17e99893cb6509f428e1728281c2ad60a6b31e3";
- sha256 = "1lfrvqqmb09y6pcr76yjv4r84cshkd4s7fpmiy7268kfi2cvqnpc";
- };
- }
- {
- root = "github.com/bmizerany/perks";
- src = fetchFromGitHub {
- owner = "bmizerany";
- repo = "perks";
- rev = "aac9e2eab5a334037057336897fd10b0289a5ae8";
- sha256 = "1d027jgc327qz5xmal0hrpqvsj45i9yqmm9pxk3xp3hancvz3l3k";
- };
- }
- {
- root = "github.com/kr/pretty";
- src = fetchFromGitHub {
- owner = "kr";
- repo = "pretty";
- rev = "bc9499caa0f45ee5edb2f0209fbd61fbf3d9018f";
- sha256 = "1m61y592qsnwsqn76v54mm6h2pcvh4wlzbzscc1ag645x0j33vvl";
- };
- }
- {
- root = "github.com/kr/pty";
- src = fetchFromGitHub {
- owner = "kr";
- repo = "pty";
- rev = "67e2db24c831afa6c64fc17b4a143390674365ef";
- sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d";
- };
- }
- {
- root = "github.com/kr/text";
- src = fetchFromGitHub {
- owner = "kr";
- repo = "text";
- rev = "6807e777504f54ad073ecef66747de158294b639";
- sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698";
- };
- }
- {
- root = "github.com/mreiferson/go-options";
- src = fetchFromGitHub {
- owner = "mreiferson";
- repo = "go-options";
- rev = "896a539cd709f4f39d787562d1583c016ce7517e";
- sha256 = "0hg0n5grcjcj5719rqchz0plp39wfk3znqxw8y354k4jwsqwmn17";
- };
- }
- {
- root = "github.com/mreiferson/go-snappystream";
- src = fetchFromGitHub {
- owner = "mreiferson";
- repo = "go-snappystream";
- rev = "97c96e6648e99c2ce4fe7d169aa3f7368204e04d";
- sha256 = "08ylvx9r6b1fi76v6cqjvny4yqsvcqjfsg93jdrgs7hi4mxvxynn";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/servers/samba/3.x.nix b/pkgs/servers/samba/3.x.nix
index b0b1b152e9b..ad8a6de6729 100644
--- a/pkgs/servers/samba/3.x.nix
+++ b/pkgs/servers/samba/3.x.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
name = "samba-3.6.24";
src = fetchurl {
- url = "http://samba.org/samba/ftp/stable/${name}.tar.gz";
+ url = "mirror://samba/pub/samba/stable/${name}.tar.gz";
sha256 = "19rln8m1k359bz6dhmlv39kzyjg7p296dz4y4mq1jwrlnw2bvl0i";
};
diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix
index 283951fa718..c290f75cd0d 100644
--- a/pkgs/servers/samba/4.x.nix
+++ b/pkgs/servers/samba/4.x.nix
@@ -34,10 +34,7 @@ stdenv.mkDerivation rec {
name = "samba-4.1.16";
src = fetchurl {
- urls = [
- "http://samba.org/samba/ftp/stable/${name}.tar.gz"
- "http://distfiles.exherbo.org/distfiles/${name}.tar.gz"
- ];
+ url = "mirror://samba/pub/samba/stable/${name}.tar.gz";
sha256 = "0yx840qg5q6syq81439v3pbwawacm7nwnnvph85za9gsgcb9r80j";
};
diff --git a/pkgs/servers/serfdom/default.nix b/pkgs/servers/serfdom/default.nix
index 48e5f2cea22..381fe6ddc1e 100644
--- a/pkgs/servers/serfdom/default.nix
+++ b/pkgs/servers/serfdom/default.nix
@@ -1,26 +1,24 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
+with goPackages;
+
+buildGoPackage rec {
version = "0.6.3";
name = "serfdom-${version}";
+ goPackagePath = "github.com/hashicorp/serf";
- src = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
+ src = fetchFromGitHub {
+ owner = "hashicorp";
+ repo = "serf";
+ rev = "v${version}";
+ sha256 = "0ck77ji28bvm4ahzxyyi4sm17c3fxc16k0k5mihl1nlkgdd73m8y";
};
- buildInputs = [ go ];
+ buildInputs = [ cli mapstructure memberlist logutils go-syslog mdns columnize circbuf ];
- buildPhase = ''
- export GOPATH=$src
- go build -v -o serf github.com/hashicorp/serf
- '';
+ dontInstallSrc = true;
- installPhase = ''
- mkdir -p $out/bin
- mv serf $out/bin/serf
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "A service discovery and orchestration tool that is decentralized, highly available, and fault tolerant";
homepage = http://www.serfdom.io/;
license = licenses.mpl20;
diff --git a/pkgs/servers/serfdom/deps.nix b/pkgs/servers/serfdom/deps.nix
deleted file mode 100644
index a4b4058a711..00000000000
--- a/pkgs/servers/serfdom/deps.nix
+++ /dev/null
@@ -1,185 +0,0 @@
-{ stdenv, lib, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "code.google.com/p/go.net";
- src = fetchhg {
- url = "http://code.google.com/p/go.net";
- rev = "134";
- sha256 = "1jycpgrfwgkfac60zjbx6babcz7sgyn9xgy6cr3l811j6k8r2pbv";
- };
- }
- {
- root = "code.google.com/p/go.text";
- src = fetchhg {
- url = "http://code.google.com/p/go.text";
- rev = "85";
- sha256 = "1x8h6vq9g5gbi7iiwla6dkaaqqf7wmkdm4szj7wvzlsijf2x8dwr";
- };
- }
- {
- root = "github.com/armon/circbuf";
- src = fetchFromGitHub {
- owner = "armon";
- repo = "circbuf";
- rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf";
- sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s";
- };
- }
- {
- root = "github.com/armon/go-metrics";
- src = fetchFromGitHub {
- owner = "armon";
- repo = "go-metrics";
- rev = "02567bbc4f518a43853d262b651a3c8257c3f141";
- sha256 = "08fk3zmw0ywmdfp2qhrpv0vrk1y97hzqczrgr3y2yip3x8sr37ar";
- };
- }
- {
- root = "github.com/armon/mdns";
- src = fetchFromGitHub {
- owner = "armon";
- repo = "mdns";
- rev = "70462deb060d44247356ee238ebafd7699ddcffe";
- sha256 = "0xkm3d0hsixdm1yrkx9c39723kfjkb3wvrzrmx3np9ylcwn6h5p5";
- };
- }
- {
- root = "github.com/hashicorp/go-syslog";
- src = fetchFromGitHub {
- owner = "hashicorp";
- repo = "go-syslog";
- rev = "ac3963b72ac367e48b1e68a831e62b93fb69091c";
- sha256 = "1r9s1gsa4azcs05gx1179ixk7qvrkrik3v92wr4s8gwm00m0gf81";
- };
- }
- {
- root = "github.com/hashicorp/logutils";
- src = fetchFromGitHub {
- owner = "hashicorp";
- repo = "logutils";
- rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8";
- sha256 = "033rbkc066g657r0dnzysigjz2bs4biiz0kmiypd139d34jvslwz";
- };
- }
- {
- root = "github.com/hashicorp/memberlist";
- src = fetchFromGitHub {
- owner = "hashicorp";
- repo = "memberlist";
- rev = "17d39b695094be943bfb98442a80b082e6b9ac47";
- sha256 = "0nvgjnwmfqhv2wvr77d2q5mq1bfw4xbpil6wgyj4fyrmhsfzrv3g";
- };
- }
- {
- root = "github.com/hashicorp/serf";
- src = fetchFromGitHub {
- owner = "hashicorp";
- repo = "serf";
- rev = "5e0771b8d61bee28986087a246f7611d6bd4a87a";
- sha256 = "0ck77ji28bvm4ahzxyyi4sm17c3fxc16k0k5mihl1nlkgdd73m8y";
- };
- }
- {
- root = "github.com/miekg/dns";
- src = fetchFromGitHub {
- owner = "miekg";
- repo = "dns";
- rev = "fc67c4b981930a377f8a26a5a1f2c0ccd5dd1514";
- sha256 = "1csjmkx0gl34r4hmkhdbdxb0693f1p10yrjaj8f2jwli9p9sl4mg";
- };
- }
- {
- root = "github.com/mitchellh/cli";
- src = fetchFromGitHub {
- owner = "mitchellh";
- repo = "cli";
- rev = "8262fe3f76f0da53b5674eb35c8c6436430794c3";
- sha256 = "0pqkxh1q49kkxihggrfjs8174d927g4c5qqx00ggw8sqqsgrw6vn";
- };
- }
- {
- root = "github.com/mitchellh/mapstructure";
- src = fetchFromGitHub {
- owner = "mitchellh";
- repo = "mapstructure";
- rev = "6fb2c832bcac61d01212ab1d172f7a14a8585b07";
- sha256 = "0mx855lwhv0rk461wmbnbzbpkhmq5p2ipmrm5bhzimagrr1w17hw";
- };
- }
- {
- root = "github.com/ryanuber/columnize";
- src = fetchFromGitHub {
- owner = "ryanuber";
- repo = "columnize";
- rev = "785d943a7b6886e0bb2f139a60487b823dd8d9de";
- sha256 = "1h3sxzhiwz65vf3cvclirlf6zhdr97v01dpn5cmf3m09rxxpnp3f";
- };
- }
- {
- root = "github.com/ugorji/go";
- src = fetchFromGitHub {
- owner = "ugorji";
- repo = "go";
- rev = "71c2886f5a673a35f909803f38ece5810165097b";
- sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j";
- };
- }
- {
- root = "github.com/ugorji/go-msgpack";
- src = fetchFromGitHub {
- owner = "ugorji";
- repo = "go-msgpack";
- rev = "75092644046c5e38257395b86ed26c702dc95b92";
- sha256 = "1bmqi16bfiqw7qhb3d5hbh0dfzhx2bbq1g15nh2pxwxckwh80x98";
- };
- }
- {
- root = "github.com/vmihailenco/bufio";
- src = fetchFromGitHub {
- owner = "vmihailenco";
- repo = "bufio";
- rev = "24e7e48f60fc2d9e99e43c07485d9fff42051e66";
- sha256 = "0x46qnf2f15v7m0j2dcb16raxjamk5rdc7hqwgyxfr1sqmmw3983";
- };
- }
- {
- root = "github.com/vmihailenco/msgpack";
- src = fetchFromGitHub {
- owner = "vmihailenco";
- repo = "msgpack";
- rev = "20c1b88a6c7fc5432037439f4e8c582e236fb205";
- sha256 = "1dj5scpfhgnw0yrh0w6jlrb9d03halvsv4l3wgjhazrrimdqf0q0";
- };
- }
- {
- root = "launchpad.net/gocheck";
- src = fetchbzr {
- url = "https://launchpad.net/gocheck";
- rev = "87";
- sha256 = "1y9fa2mv61if51gpik9isls48idsdz87zkm1p3my7swjdix7fcl0";
- };
- }
- {
- root = "launchpad.net/mgo";
- src = fetchbzr {
- url = "https://launchpad.net/mgo";
- rev = "2";
- sha256 = "0h1dxzyx5c4r4gfnmjxv92hlhjxrgx9p4g53p4fhmz6x2fdglb0x";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 3c36b1aad6b..6280f2a8266 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "mariadb-${version}";
- version = "10.0.15";
+ version = "10.0.16";
src = fetchurl {
url = "https://downloads.mariadb.org/interstitial/mariadb-${version}/source/mariadb-${version}.tar.gz";
- sha256 = "1n09553brmprs9m6siwjc1ca4b9b1giqasv3mhdrnijda1lcnm4i";
+ sha256 = "1r6dxzgzwl0qshw67168sjnzzwspmwb7kl618f23wkhp7rgll4s4";
};
buildInputs = [ cmake ncurses openssl bison boost libxml2 judy libevent groff ]
diff --git a/pkgs/servers/sql/mysql/5.5.x.nix b/pkgs/servers/sql/mysql/5.5.x.nix
index 64fbabb0800..842d38e8dc5 100644
--- a/pkgs/servers/sql/mysql/5.5.x.nix
+++ b/pkgs/servers/sql/mysql/5.5.x.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
version = "5.5.40";
src = fetchurl {
- url = "mirror://mysql/MySQL-5.5/${name}.tar.gz";
+ url = "http://cdn.mysql.com/archives/mysql-5.5/${name}.tar.gz";
sha256 = "0q29nzmmxm78b89qjfzgm93r0glaam3xw3zfx1k8ihii39v22dsd";
};
diff --git a/pkgs/servers/sslh/default.nix b/pkgs/servers/sslh/default.nix
new file mode 100644
index 00000000000..d646e28fb0f
--- /dev/null
+++ b/pkgs/servers/sslh/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, libcap, libconfig, perl }:
+
+stdenv.mkDerivation rec {
+ name = "sslh-${version}";
+ version = "1.16";
+
+ src = fetchurl {
+ url = "https://github.com/yrutschle/sslh/archive/v${version}.tar.gz";
+ sha256 = "0xwi2bflvq4phrqjic84xch20jkg3wdys219mw2cy23sjkzk63mb";
+ };
+
+ postPatch = "patchShebangs *.sh";
+
+ buildInputs = [ libcap libconfig perl ];
+
+ makeFlags = "USELIBCAP=1";
+
+ installFlags = "PREFIX=$(out)";
+
+ meta = with stdenv.lib; {
+ description = "Applicative Protocol Multiplexer (e.g. share SSH and HTTPS on the same port)";
+ license = licenses.gpl2Plus;
+ homepage = http://www.rutschle.net/tech/sslh.shtml;
+ maintainers = [ maintainers.koral ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/tools/X11/xbindkeys-config/default.nix b/pkgs/tools/X11/xbindkeys-config/default.nix
new file mode 100644
index 00000000000..57d8d82759c
--- /dev/null
+++ b/pkgs/tools/X11/xbindkeys-config/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, libX11, gtk, pkgconfig, procps, makeWrapper, ... }:
+
+stdenv.mkDerivation rec {
+ name = "xbindkeys-config-${version}";
+ version = "0.1.3";
+
+ buildInputs = [ gtk pkgconfig makeWrapper ];
+
+ src = fetchurl {
+ url = "mirror://debian/pool/main/x/xbindkeys-config/xbindkeys-config_${version}.orig.tar.gz";
+ sha256 = "1rs3li2hyig6cdzvgqlbz0vw6x7rmgr59qd6m0cvrai8xhqqykda";
+ };
+
+ meta = {
+ homepage = https://packages.debian.org/source/xbindkeys-config;
+ description = "Graphical interface for configuring xbindkeys";
+ license = stdenv.lib.licenses.gpl2Plus;
+ maintainers = with stdenv.lib.maintainers; [benley];
+ platforms = with stdenv.lib.platforms; linux;
+ };
+
+ patches = [ ./xbindkeys-config-patch1.patch ];
+
+ # killall is dangerous on non-gnu platforms. Use pkill instead.
+ postPatch = ''
+ substituteInPlace middle.c --replace "killall" "pkill -x"
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin $out/share/man/man1
+ gzip -c ${./xbindkeys-config.1} > $out/share/man/man1/xbindkeys-config.1.gz
+ cp xbindkeys_config $out/bin/xbindkeys-config
+ wrapProgram $out/bin/xbindkeys-config --prefix PATH ":" "${procps}/bin"
+ '';
+}
diff --git a/pkgs/tools/X11/xbindkeys-config/xbindkeys-config-patch1.patch b/pkgs/tools/X11/xbindkeys-config/xbindkeys-config-patch1.patch
new file mode 100644
index 00000000000..d4620b5d907
--- /dev/null
+++ b/pkgs/tools/X11/xbindkeys-config/xbindkeys-config-patch1.patch
@@ -0,0 +1,108 @@
+---
+ Makefile | 6 +++---
+ menu.c | 11 ++++++++---
+ middle.c | 9 +++++++--
+ xbindkeys_config.c | 3 ++-
+ 4 files changed, 20 insertions(+), 9 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 602875c..28e46cd 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,9 +1,9 @@
+ # makefile crée par Laurent VUIBERT
+
+-CC= gcc -O3 -Wall
++CC= gcc $(CFLAGS)
+ STD= _GNU_SOURCE
+-GTK= `gtk-config --cflags --libs`
+-GTK2= `gtk-config --cflags`
++GTK= `pkg-config --cflags --libs gtk+-2.0`
++GTK2= `pkg-config --cflags gtk+-2.0`
+ OBJS= xbindkeys_config.o menu.o middle.o speedc.o
+ NOM= xbindkeys_config
+
+diff --git a/menu.c b/menu.c
+index ed3e7ec..f11526d 100644
+--- a/menu.c
++++ b/menu.c
+@@ -283,6 +283,8 @@ void menu_manual (GtkMenuItem *menuitem, gpointer user_data)
+ GtkWidget *window;
+ GtkWidget *text;
+ GtkWidget *vbox;
++ GtkTextBuffer *textbuffer;
++ GtkTextIter iter;
+
+ window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
+ gtk_window_set_title(GTK_WINDOW(window),
+@@ -293,10 +295,13 @@ void menu_manual (GtkMenuItem *menuitem, gpointer user_data)
+ text = gtk_label_new("\nManual\n");
+ gtk_box_pack_start(GTK_BOX(vbox), text, FALSE, FALSE, 0);
+
+- text = gtk_text_new(NULL,NULL);
++/* BDD - FIXME */
++/* text = gtk_text_new(NULL,NULL); */
++ text = gtk_text_view_new();
++ textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text));
++ gtk_text_buffer_get_iter_at_offset (textbuffer, &iter, 0);
+
+-
+- gtk_text_insert (GTK_TEXT(text), NULL, NULL, NULL,
++ gtk_text_buffer_insert (textbuffer, &iter,
+ MANUAL_TEXT, sizeof(MANUAL_TEXT)-1);
+ gtk_box_pack_start(GTK_BOX(vbox), text, TRUE, TRUE, 0);
+ gtk_widget_set_usize(text,300,250);
+diff --git a/middle.c b/middle.c
+index daa61aa..605ab10 100644
+--- a/middle.c
++++ b/middle.c
+@@ -551,6 +551,8 @@ void view_generated_file()
+ GtkWidget *window;
+ GtkWidget *text;
+ GtkWidget *src;
++ GtkTextBuffer *textbuffer;
++ GtkTextIter iter;
+ char line [1024];
+
+ unlink(TEMP_FILE);
+@@ -561,11 +563,13 @@ void view_generated_file()
+ gtk_window_set_title(GTK_WINDOW(window), "Generated File");
+ src = gtk_scrolled_window_new ( NULL, NULL );
+ gtk_widget_set_usize(src,500,400);
+- text = gtk_text_new (NULL, NULL);
++ text = gtk_text_view_new ();
++ textbuffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text));
++ gtk_text_buffer_get_iter_at_offset (textbuffer, &iter, 0);
+ gtk_container_add (GTK_CONTAINER(src), text);
+
+ while (fgets (line, sizeof(line), f))
+- gtk_text_insert (GTK_TEXT(text), NULL, NULL, NULL,
++ gtk_text_buffer_insert (textbuffer, &iter,
+ line, strlen(line));
+
+ gtk_container_add(GTK_CONTAINER(window),src);
+@@ -610,6 +614,7 @@ void save_file(char file_out[])
+ fprintf(f, "# m:xxx + c:xxx \n");
+ fprintf(f, "# Shift+... \n\n\n\n\n");
+
++
+ if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(Flag_NumLock)))
+ fprintf(f,"keystate_numlock = enable\n");
+ else
+diff --git a/xbindkeys_config.c b/xbindkeys_config.c
+index 75bad30..3c02a2b 100644
+--- a/xbindkeys_config.c
++++ b/xbindkeys_config.c
+@@ -95,7 +95,8 @@ int main (int argc, char *argv[])
+ accel_group = gtk_accel_group_new();
+ menu=xbindkeys_config_menu(accel_group);
+ gtk_box_pack_start(GTK_BOX(vbox),menu,FALSE,FALSE,0);
+- gtk_accel_group_attach(accel_group, GTK_OBJECT(window));
++/* BDD - FIXME - Don't need this? */
++/* gtk_accel_group_attach(accel_group, GTK_OBJECT(window)); */
+
+ middle= xbindkeys_config_middle();
+ gtk_box_pack_start(GTK_BOX(vbox),middle,TRUE,TRUE,0);
+--
+2.1.3
+
diff --git a/pkgs/tools/X11/xbindkeys-config/xbindkeys-config.1 b/pkgs/tools/X11/xbindkeys-config/xbindkeys-config.1
new file mode 100644
index 00000000000..e3f8de1a804
--- /dev/null
+++ b/pkgs/tools/X11/xbindkeys-config/xbindkeys-config.1
@@ -0,0 +1,21 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.27.
+.TH XBINDKEYS_CONFIG "1" "April 2002" "xbindkeys-config" "User Commands"
+.SH NAME
+xbindkeys-config \- GTK+ configuration tool for xbindkeys
+.SH "SYNOPSIS"
+xbindkeys-config
+[\-\-file|\-f file]
+[\-\-help|\-h]
+[\-\-show|\-s]
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+This Help
+.TP
+\fB\-f\fR, \fB\-\-file\fR
+Use an alternative rc file
+.TP
+\fB\-s\fR, \fB\-\-show\fR
+show only the rc file
+.SH AUTHOR
+This manual page was written by Joerg Jaspert ,
+for the Debian GNU/Linux system (but may be used by others).
diff --git a/pkgs/tools/X11/xdg-utils/0001-xdg-open-recognize-KDE_SESSION_VERSION.patch b/pkgs/tools/X11/xdg-utils/0001-xdg-open-recognize-KDE_SESSION_VERSION.patch
deleted file mode 100644
index e7dcf291867..00000000000
--- a/pkgs/tools/X11/xdg-utils/0001-xdg-open-recognize-KDE_SESSION_VERSION.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2059662f6bd5de59144d6825d93cb5783110cd97 Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel
-Date: Sat, 24 Jan 2015 17:07:50 -0600
-Subject: [PATCH] xdg-open: recognize KDE_SESSION_VERSION
-
----
- scripts/xdg-open | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scripts/xdg-open b/scripts/xdg-open
-index b8db0aa..9fcf458 100755
---- a/scripts/xdg-open
-+++ b/scripts/xdg-open
-@@ -341,7 +341,7 @@ open_kde()
- if kde-open -v 2>/dev/null 1>&2; then
- kde-open "$1"
- else
-- if [ x"$KDE_SESSION_VERSION" = x"4" ]; then
-+ if [ $KDE_SESSION_VERSION -gt 3 ]; then
- kfmclient openURL "$1"
- else
- kfmclient exec "$1"
---
-2.1.4
-
diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix
index 3e4615609e0..8434e651dbe 100644
--- a/pkgs/tools/X11/xdg-utils/default.nix
+++ b/pkgs/tools/X11/xdg-utils/default.nix
@@ -1,14 +1,16 @@
-{ stdenv, fetchurl, file }:
+{ stdenv, fetchgit, file, libxslt, docbook_xml_dtd_412, docbook_xsl, xmlto, w3m }:
stdenv.mkDerivation rec {
- name = "xdg-utils-1.1.0-rc1";
+ name = "xdg-utils-1.1.0-rc3p7";
- src = fetchurl {
- url = "http://portland.freedesktop.org/download/${name}.tar.gz";
- sha256 = "00lisw4x43sp189lb7dz46j2l09y5v2fijk3d0sxx3mvwj55a1bv";
+ src = fetchgit {
+ url = "git://anongit.freedesktop.org/xdg/xdg-utils";
+ rev = "e8ee3b18d16e41b95148111b920a0c8beed3ac6c";
+ sha256 = "0qy9h7vh6sw7wmadjvasw4sdhb9fvv7bn32ifgasdx7ag3r3939w";
};
- patches = [ ./0001-xdg-open-recognize-KDE_SESSION_VERSION.patch ];
+ # just needed when built from git
+ buildInputs = [ libxslt docbook_xml_dtd_412 docbook_xsl xmlto w3m ];
postInstall = ''
substituteInPlace $out/bin/xdg-mime --replace /usr/bin/file ${file}/bin/file
@@ -22,3 +24,4 @@ stdenv.mkDerivation rec {
platforms = stdenv.lib.platforms.linux;
};
}
+
diff --git a/pkgs/tools/backup/bareos/default.nix b/pkgs/tools/backup/bareos/default.nix
index 87c04954f6b..fa492835e05 100644
--- a/pkgs/tools/backup/bareos/default.nix
+++ b/pkgs/tools/backup/bareos/default.nix
@@ -9,14 +9,14 @@ assert sqlite != null || postgresql != null || mysql != null;
with stdenv.lib;
stdenv.mkDerivation rec {
name = "bareos-${version}";
- version = "14.2.2";
+ version = "14.2.3";
src = fetchFromGitHub {
owner = "bareos";
repo = "bareos";
rev = "Release/${version}";
name = "${name}-src";
- sha256 = "12605jibvj6kdp15s8jpzb9fw1mfm53npf8ib2jfn1r4hvhdrl4j";
+ sha256 = "04z6nwlnk6kk5ghbdw5g34mkypmpk4qpkd08cjxwblg8sdj4j8fl";
};
buildInputs = [
diff --git a/pkgs/tools/compression/rzip/default.nix b/pkgs/tools/compression/rzip/default.nix
index 4460ae6edf3..733634da652 100644
--- a/pkgs/tools/compression/rzip/default.nix
+++ b/pkgs/tools/compression/rzip/default.nix
@@ -3,7 +3,7 @@
stdenv.mkDerivation {
name = "rzip-2.1";
src = fetchurl {
- url = http://rzip.samba.org/ftp/rzip/rzip-2.1.tar.gz;
+ url = mirror://samba/rzip/rzip-2.1.tar.gz;
sha256 = "4bb96f4d58ccf16749ed3f836957ce97dbcff3e3ee5fd50266229a48f89815b7";
};
buildInputs = [ bzip2 ];
diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix
index d87c86ecf18..ba2c9eeb34d 100644
--- a/pkgs/tools/filesystems/btrfsprogs/default.nix
+++ b/pkgs/tools/filesystems/btrfsprogs/default.nix
@@ -1,14 +1,14 @@
{ stdenv, fetchurl, attr, acl, zlib, libuuid, e2fsprogs, lzo
, asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }:
-let version = "3.18"; in
+let version = "3.18.2"; in
stdenv.mkDerivation rec {
name = "btrfs-progs-${version}";
src = fetchurl {
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
- sha256 = "0k84c6gxgy5sq8m57nfjd864s5hps3fh7zgyiykiqik65l5sp97r";
+ sha256 = "1v6zqac6c4xfkyd53wc3cfqqyb5w7zry3l2yl4rgspqy416xp3fx";
};
buildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index 37879cdaa3f..c701e35c683 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -14,12 +14,12 @@ let
in
stdenv.mkDerivation rec {
name="ceph-${version}";
- version="0.91";
+ version="0.92";
src = fetchgit {
url = "git://github.com/ceph/ceph.git";
rev = "refs/tags/v${version}";
- sha256 = "1vi7nyhxnhml1wvsikxbzjk0rhsj2daaw4iq70mnbmcsrbccpb0s";
+ sha256 = "0w5gkl2p4gdq5xppmrx0lnpfbhkird8v2wjx8grw8aja23lw7zcc";
};
patches = [
diff --git a/pkgs/tools/filesystems/go-mtpfs/default.nix b/pkgs/tools/filesystems/go-mtpfs/default.nix
index 2dd37acfe84..cf521425a76 100644
--- a/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -1,57 +1,23 @@
-{ stdenv, lib, pkgconfig, libmtp, go, fetchFromGitHub }:
+{ lib, goPackages, pkgconfig, libmtp, fetchFromGitHub }:
-let
- goDeps = [
- {
- root = "github.com/hanwen/go-mtpfs";
- src = fetchFromGitHub {
- owner = "hanwen";
- repo = "go-mtpfs";
- rev = "9c2b46050e8ea8574eaec2124867ac7b11e6471d";
- sha256 = "0kxi18cb078q4wikfajp3yvp802wzfsfdp431j0dg2jdw8y7gfii";
- };
- }
- {
- root = "github.com/hanwen/go-fuse";
- src = fetchFromGitHub {
- owner = "hanwen";
- repo = "go-fuse";
- rev = "5d16aa11eef4643de2d91e88a64dcb6138705d58";
- sha256 = "0lycfhchn88kbs81ypz8m5jh032fpbv14gldrjirf32wm1d4f8pj";
- };
- }
- {
- root = "github.com/hanwen/usb";
- src = fetchFromGitHub {
- owner = "hanwen";
- repo = "usb";
- rev = "69aee4530ac705cec7c5344418d982aaf15cf0b1";
- sha256 = "01k0c2g395j65vm1w37mmrfkg6nm900khjrrizzpmx8f8yf20dky";
- };
- }
- ];
+with goPackages;
- sources = stdenv.mkDerivation rec {
- name = "go-deps";
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
+buildGoPackage rec {
+ rev = "9c2b46050e8ea8574eaec2124867ac7b11e6471d";
+ name = "go-mtpfs-${lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hanwen/go-mtpfs";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hanwen";
+ repo = "go-mtpfs";
+ sha256 = "0kxi18cb078q4wikfajp3yvp802wzfsfdp431j0dg2jdw8y7gfii";
};
-in stdenv.mkDerivation rec {
- name = "go-mtpfs";
- src = sources;
+ buildInputs = [ go-fuse libmtp usb ];
- buildInputs = [ go pkgconfig libmtp ];
+ subPackages = [ "./" ];
- installPhase = ''
- mkdir -p $out/bin
- export GOPATH=$src
- go build -v -o $out/bin/go-mtpfs github.com/hanwen/go-mtpfs
- '';
+ dontInstallSrc = true;
meta = with lib; {
description = "A simple FUSE filesystem for mounting Android devices as a MTP device";
diff --git a/pkgs/tools/filesystems/tmsu/default.nix b/pkgs/tools/filesystems/tmsu/default.nix
index 01d2f86a3a9..4761980a18d 100644
--- a/pkgs/tools/filesystems/tmsu/default.nix
+++ b/pkgs/tools/filesystems/tmsu/default.nix
@@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
name = "tmsu-${version}";
- version = "0.4.3";
+ version = "0.5.1";
go-sqlite3 = fetchgit {
url = "git://github.com/mattn/go-sqlite3";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
owner = "oniony";
repo = "tmsu";
rev = "v${version}";
- sha256 = "1jwmzqn3rd59malkp7ypjphd863afablhfsdxjnlap7zx72zb3dn";
+ sha256 = "1fr80p5c3hd3956gn7ri5pv3gblaxw95xkpf6wz1llkmrr2i8ncp";
};
buildInputs = [ go fuse ];
@@ -56,4 +56,4 @@ stdenv.mkDerivation rec {
license = licenses.gpl3;
platforms = platforms.all;
};
-}
\ No newline at end of file
+}
diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix
index 6cab550d82b..90a7ce9efad 100644
--- a/pkgs/tools/graphics/asymptote/default.nix
+++ b/pkgs/tools/graphics/asymptote/default.nix
@@ -1,12 +1,8 @@
-a @ {
- freeglut,ghostscriptX,imagemagick,fftw,
- boehmgc,mesa,ncurses,readline,gsl,libsigsegv,
- python,zlib, perl, texLive, texinfo, xz,
-
- noDepEntry, fullDepEntry, fetchUrlFromSrcInfo,
- lib,
-
- ...}:
+{stdenv, fetchurl
+ , freeglut, ghostscriptX, imagemagick, fftw
+ , boehmgc, mesa, ncurses, readline, gsl, libsigsegv
+ , python, zlib, perl, texLive, texinfo, xz
+}:
let
s = # Generated upstream information
rec {
@@ -17,60 +13,37 @@ let
url="mirror://sourceforge/project/asymptote/2.32/asymptote-2.32.src.tgz";
sha256="19cgn5158p42igjbp8lf6xdbh3yjhlkdm22m5lqrhibp09g06d90";
};
- buildInputs = with a; [
- freeglut ghostscriptX imagemagick fftw boehmgc
- mesa ncurses readline gsl libsigsegv python zlib
- perl texLive texinfo xz
+ buildInputs = [
+ freeglut ghostscriptX imagemagick fftw
+ boehmgc mesa ncurses readline gsl libsigsegv
+ python zlib perl texLive texinfo xz
];
in
-rec {
- src = a.fetchUrlFromSrcInfo s;
-
- inherit (s) name;
+stdenv.mkDerivation {
+ inherit (s) name version;
inherit buildInputs;
- configureFlags = "--enable-gc=${a.boehmgc} --enable-offscreen";
-
- /* doConfigure should be removed if not needed */
- phaseNames = ["setVars" "doUnpack" "fixPaths" "extractTexinfoTex"
- "fixEpsWrite"
- "doConfigure" "dumpRealVars" "doMakeInstall" "fixPathsResult"
- "fixInfoDir"];
-
- setVars = a.noDepEntry ''
+ src = fetchurl {
+ inherit (s) url sha256;
+ };
+ preConfigure = ''
export HOME="$PWD"
+ patchShebangs .
+ sed -e 's@epswrite@eps2write@g' -i runlabel.in
+ xz -d < ${texinfo.src} | tar --wildcards -x texinfo-'*'/doc/texinfo.tex
+ cp texinfo-*/doc/texinfo.tex doc/
+ export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${boehmgc}/include/gc"
'';
-
- dumpRealVars = a.noDepEntry ''
- set > ../real-env-vars
- '';
-
- fixPaths = a.doPatchShebangs ''.'';
- fixPathsResult = a.doPatchShebangs ''$out/bin'';
-
- fixInfoDir = a.noDepEntry ''
+ postInstall = ''
mv -v "$out/share/info/asymptote/"*.info $out/share/info/
sed -i -e 's|(asymptote/asymptote)|(asymptote)|' $out/share/info/asymptote.info
rmdir $out/share/info/asymptote
rm $out/share/info/dir
'';
-
- extractTexinfoTex = a.fullDepEntry ''
- xz -d < ${a.texinfo.src} | tar --wildcards -x texinfo-'*'/doc/texinfo.tex
- cp texinfo-*/doc/texinfo.tex doc/
- '' ["minInit" "addInputs" "doUnpack"];
-
- fixEpsWrite = a.fullDepEntry ''
- sed -e 's@epswrite@eps2write@g' -i runlabel.in
- '' ["minInit" "addInputs" "doUnpack"];
-
meta = {
inherit (s) version;
- description = "A tool for programming graphics intended to replace Metapost";
- maintainers = [
- a.lib.maintainers.raskin
- a.lib.maintainers.simons
- ];
- platforms = with a.lib.platforms;
- linux;
+ description = "A tool for programming graphics intended to replace Metapost";
+ license = stdenv.lib.licenses.gpl3Plus;
+ maintainers = [stdenv.lib.maintainers.raskin stdenv.lib.maintainers.simons];
+ platforms = stdenv.lib.platforms.linux;
};
}
diff --git a/pkgs/tools/inputmethods/touchegg/default.nix b/pkgs/tools/inputmethods/touchegg/default.nix
new file mode 100644
index 00000000000..1cf3cfa00af
--- /dev/null
+++ b/pkgs/tools/inputmethods/touchegg/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, xlibs, xorgserver, qt4, mesa, geis }:
+
+stdenv.mkDerivation rec {
+ name = "touchegg-${version}";
+ version = "1.1.1";
+ src = fetchurl {
+ url = "https://touchegg.googlecode.com/files/${name}.tar.gz";
+ sha256 = "95734815c7219d9a71282f3144b3526f2542b4fa270a8e69d644722d024b4038";
+ };
+
+ buildInputs = [ xorgserver mesa xlibs.libX11 xlibs.libXtst xlibs.libXext qt4 geis ];
+
+ configurePhase = ''
+ sed -e "s@/usr/@$out/@g" -i $(find . -name touchegg.pro)
+ sed -e "s@/usr/@$out/@g" -i $(find ./src/touchegg/config/ -name Config.cpp)
+ qmake touchegg.pro
+ '';
+
+ meta = {
+ homepage = "https://code.google.com/p/touchegg/";
+ description = "Macro binding for touch surfaces";
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/tools/misc/go-bindata/default.nix b/pkgs/tools/misc/go-bindata/default.nix
deleted file mode 100644
index 339126f7c98..00000000000
--- a/pkgs/tools/misc/go-bindata/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, lib, go, fetchFromGitHub }:
-
-stdenv.mkDerivation {
- name = "go-bindata";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchFromGitHub;
- };
-
- buildInputs = [ go ];
-
- buildPhase = ''
- export GOPATH=$src
- go build -v -o go-bindata github.com/jteeuwen/go-bindata/go-bindata
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- cp go-bindata $out/bin
- '';
-
- meta = with lib; {
- homepage = "https://github.com/jteeuwen/go-bindata";
- description = "A small utility which generates Go code from any file. Useful for embedding binary data in a Go program.";
- maintainers = with maintainers; [ cstrahan ];
- license = licenses.cc0 ;
- platforms = platforms.all;
- };
-}
diff --git a/pkgs/tools/misc/go-bindata/deps.nix b/pkgs/tools/misc/go-bindata/deps.nix
deleted file mode 100644
index 617f7dc6abe..00000000000
--- a/pkgs/tools/misc/go-bindata/deps.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/jteeuwen/go-bindata";
- src = fetchFromGitHub {
- owner = "jteeuwen";
- repo = "go-bindata";
- rev = "93b909d1499a38620121b0a5eb43a18f3bccb083";
- sha256 = "1v4jl9lnzy0p4nvjfkh96yy0w181n5mkr0kamh743911gfbpq4sh";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index 1dbdfff7448..af43d5e8396 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -1,20 +1,24 @@
{ stdenv, fetchurl, fetchgit, autogen, flex, bison, python, autoconf, automake
, gettext, ncurses, libusb, freetype, qemu, devicemapper
-, linuxPackages ? null
+, zfs ? null
, efiSupport ? false
-, zfsSupport ? false
+, zfsSupport ? true
}:
with stdenv.lib;
let
+ pcSystems = {
+ "i686-linux".target = "i386";
+ "x86_64-linux".target = "i386";
+ };
+
efiSystems = {
"i686-linux".target = "i386";
"x86_64-linux".target = "x86_64";
};
canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems);
-
- prefix = "grub${if efiSupport then "-efi" else ""}${optionalString zfsSupport "-zfs"}";
+ inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems);
version = "2.02-git-1de3a4";
@@ -32,10 +36,10 @@ let
in (
assert efiSupport -> canEfi;
-assert zfsSupport -> linuxPackages != null && linuxPackages.zfs != null;
+assert zfsSupport -> zfs != null;
stdenv.mkDerivation rec {
- name = "${prefix}-${version}";
+ name = "grub-${version}";
src = fetchgit {
url = "git://git.savannah.gnu.org/grub.git";
@@ -46,7 +50,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autogen flex bison python autoconf automake ];
buildInputs = [ ncurses libusb freetype gettext devicemapper ]
++ optional doCheck qemu
- ++ optional zfsSupport linuxPackages.zfs;
+ ++ optional zfsSupport zfs;
preConfigure =
'' for i in "tests/util/"*.in
@@ -82,6 +86,13 @@ stdenv.mkDerivation rec {
configureFlags = optional zfsSupport "--enable-libzfs"
++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ];
+ # save target that grub is compiled for
+ grubTarget = if efiSupport
+ then "${efiSystems.${stdenv.system}.target}-efi"
+ else if inPCSystems
+ then "${pcSystems.${stdenv.system}.target}-pc"
+ else "";
+
doCheck = false;
enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/grub/default.nix b/pkgs/tools/misc/grub/default.nix
index ae437b3c3e7..b1e5e4dbd1c 100644
--- a/pkgs/tools/misc/grub/default.nix
+++ b/pkgs/tools/misc/grub/default.nix
@@ -48,4 +48,7 @@ stdenv.mkDerivation {
preConfigure = ''
autoreconf
'';
+
+ passthru.grubTarget = "";
+
}
diff --git a/pkgs/tools/misc/ngrok/default.nix b/pkgs/tools/misc/ngrok/default.nix
index b8bdfd5c896..c3019d722af 100644
--- a/pkgs/tools/misc/ngrok/default.nix
+++ b/pkgs/tools/misc/ngrok/default.nix
@@ -1,42 +1,43 @@
-{ stdenv, lib, go, go-bindata, fetchgit, fetchbzr, fetchhg, fetchFromGitHub }:
+{ stdenv, git, fetchFromGitHub, goPackages }:
-let deps = import ./deps.nix {
- inherit stdenv lib fetchgit fetchhg fetchbzr fetchFromGitHub;
-};
-in stdenv.mkDerivation rec {
- name = "ngrok-${version}";
- version = "1.7";
+with goPackages;
- buildInputs = [ go go-bindata ];
+buildGoPackage rec {
+ name = "ngrok-1.7";
+ goPackagePath = "ngrok";
- unpackPhase = ''
- export GOPATH=$(pwd)
- cp -LR ${deps}/src src
- chmod u+w -R src
- sourceRoot=src/github.com/inconshreveable/ngrok
+ src = fetchFromGitHub {
+ rev = "b7d5571aa7f12ac304b8f8286b855cc64dd9bab8";
+ owner = "inconshreveable";
+ repo = "ngrok";
+ sha256 = "0a5iq9l9f2xdg6gnc9pj0iczhycv1w5iwcqgzzap83xfpy01xkh4";
+ };
+
+ subPackages = [ "main/ngrok" "main/ngrokd" ];
+
+ preConfigure = ''
+ sed -e '/jteeuwen\/go-bindata/d' \
+ -e '/export GOPATH/d' \
+ -e 's/go get/#go get/' \
+ -e 's|bin/go-bindata|go-bindata|' -i Makefile
+ make assets BUILDTAGS=release
+ export sourceRoot=$sourceRoot/src/ngrok
'';
- preBuild = ''
- export HOME=$(pwd)
- export GOPATH=$(pwd):$GOPATH
+ buildInputs = [ git log4go websocket go-vhost mousetrap termbox-go rcrowley.go-metrics
+ yaml-v1 go-bindata go-update binarydist osext ];
- # don't download dependencies as we already have them
- sed -i '/jteeuwen\/go-bindata/d' Makefile
- sed -i '/export GOPATH/d' Makefile
- sed -i 's|bin/go-bindata|go-bindata|' Makefile
- '';
+ buildFlags = "-tags release";
- installPhase = ''
- make release-client release-server
- mkdir -p $out/bin
- cp bin/ngrok{d,} $out/bin
- '';
+ dontInstallSrc = true;
- meta = with lib; {
- description = "Reverse proxy that creates a secure tunnel between from a public endpoint to a locally running web service";
+ meta = with stdenv.lib; {
+ description = "Reverse proxy that creates a secure tunnel between from a public endpoint t
+o a locally running web service";
homepage = https://ngrok.com/;
license = licenses.asl20;
maintainers = with maintainers; [ iElectric cstrahan ];
platforms = with platforms; linux ++ darwin;
};
+
}
diff --git a/pkgs/tools/misc/ngrok/deps.nix b/pkgs/tools/misc/ngrok/deps.nix
deleted file mode 100644
index cc1ed2f3d48..00000000000
--- a/pkgs/tools/misc/ngrok/deps.nix
+++ /dev/null
@@ -1,141 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchFromGitHub, fetchgit, fetchhg, fetchbzr }:
-
-let
- goDeps = [
- {
- root = "bitbucket.org/kardianos/osext";
- src = fetchhg {
- url = "https://bitbucket.org/kardianos/osext";
- rev = "10";
- sha256 = "1sj9r5pm28l9sqx6354fwp032n53znx9k8495k3dfnyqjrkvlw6n";
- };
- }
- {
- root = "code.google.com/p/log4go";
- src = fetchhg {
- url = "https://code.google.com/p/log4go";
- rev = "48";
- sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p";
- };
- }
- {
- root = "github.com/gorilla/websocket";
- src = fetchFromGitHub {
- owner = "gorilla";
- repo = "websocket";
- rev = "f4076986b69612ecb8bc7ce06d742eda6286200d";
- sha256 = "09arvwlxw15maf4z8pcgjc25hd00mckqpdi0byafqfgm3nvvacvq";
- };
- }
- {
- root = "github.com/inconshreveable/go-update";
- src = fetchFromGitHub {
- owner = "inconshreveable";
- repo = "go-update";
- rev = "c1385108bc3a016f1c88b75ea7d2e2a356a1571d";
- sha256 = "16zaxa0i07ismxdmkvjj4dpyc9lgp6wa94q090m9a48si40w9sjn";
- };
- }
- {
- root = "github.com/inconshreveable/go-vhost";
- src = fetchFromGitHub {
- owner = "inconshreveable";
- repo = "go-vhost";
- rev = "c4c28117502e4bf00960c8282b2d1c51c865fe2c";
- sha256 = "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32";
- };
- }
- {
- root = "github.com/inconshreveable/mousetrap";
- src = fetchFromGitHub {
- owner = "inconshreveable";
- repo = "mousetrap";
- rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
- sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
- };
- }
- {
- root = "github.com/inconshreveable/ngrok";
- src = fetchFromGitHub {
- owner = "inconshreveable";
- repo = "ngrok";
- rev = "b7d5571aa7f12ac304b8f8286b855cc64dd9bab8";
- sha256 = "0a5iq9l9f2xdg6gnc9pj0iczhycv1w5iwcqgzzap83xfpy01xkh4";
- };
- }
- {
- root = "github.com/influxdb/influxdb-go";
- src = fetchFromGitHub {
- owner = "influxdb";
- repo = "influxdb-go";
- rev = "63c9a5f67dcb633d05164bf8442160c9e2e402f7";
- sha256 = "16in1xhx94pir06aw166inn0hzpb7836xbws16laabs1p2np7bld";
- };
- }
- {
- root = "github.com/kr/binarydist";
- src = fetchFromGitHub {
- owner = "kr";
- repo = "binarydist";
- rev = "9955b0ab8708602d411341e55fffd7e0700f86bd";
- sha256 = "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3";
- };
- }
- {
- root = "github.com/nsf/termbox-go";
- src = fetchFromGitHub {
- owner = "nsf";
- repo = "termbox-go";
- rev = "9aecf65084a5754f12d27508fa2e6ed56851953b";
- sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh";
- };
- }
- {
- root = "github.com/rcrowley/go-metrics";
- src = fetchFromGitHub {
- owner = "rcrowley";
- repo = "go-metrics";
- rev = "f770e6f5e91a8770cecee02d5d3f7c00b023b4df";
- sha256 = "07dc74kiam8v5my7rhi3yxqrpnaapladhk8b3qbnrpjk3shvnx5f";
- };
- }
- {
- root = "github.com/stathat/go";
- src = fetchFromGitHub {
- owner = "stathat";
- repo = "go";
- rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77";
- sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi";
- };
- }
- {
- root = "gopkg.in/check.v1";
- src = fetchgit {
- url = "https://github.com/go-check/check.git";
- rev = "871360013c92e1c715c2de6d06b54899468a8a2d";
- sha256 = "0i83qjmd4ri9mrfddhsbpj9nb43rf2j9803k030fj155j31klwcx";
- };
- }
- {
- root = "gopkg.in/yaml.v1";
- src = fetchgit {
- url = "https://github.com/go-yaml/yaml.git";
- rev = "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a";
- sha256 = "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix
index 90a2e5f9039..070efe69d4c 100644
--- a/pkgs/tools/misc/pipelight/default.nix
+++ b/pkgs/tools/misc/pipelight/default.nix
@@ -3,13 +3,13 @@
}:
let
- wine_patches_version = "1.7.35";
- wine_hash = "1yqwwfapv7vdhmdcnhnl2c4iqaqn1xwib4zfyv9ndhq2ld9gcbpb";
+ wine_patches_version = "1.7.36";
+ wine_hash = "1gg3xzccbsxfmvp7r09mq7q9904p7h97nr3pdkk5l1f6n8xbzai1";
wine_patches = fetchgit {
url = "git://github.com/compholio/wine-compholio.git";
rev = "refs/tags/v${wine_patches_version}";
- sha256 = "0w3a3zh1p9np5hi1pk64pnz7bvgkdlhnl41bbkskh7yfgdbg4wq2";
+ sha256 = "1nnwhd7m1wwipg72dzjhzhk9fgcf1ynknncj89ab0pabn4wmib2i";
};
wine_custom =
diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix
index 095e8a31734..d85da36f7ee 100644
--- a/pkgs/tools/misc/svtplay-dl/default.nix
+++ b/pkgs/tools/misc/svtplay-dl/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "svtplay-dl-${version}";
- version = "0.10.2015.01.05";
+ version = "0.10.2015.01.28";
src = fetchurl {
url = "https://github.com/spaam/svtplay-dl/archive/${version}.tar.gz";
- sha256 = "0b83yks8cw4yci4zjpc6dazh5hh33n88jygpj7a7mi14plf6xamc";
+ sha256 = "0hjqhb4s0qpw2l7azcqmckbdc4mcvczp0w1dfk125n01z0w9c20c";
};
pythonPaths = [ pycrypto ];
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
new file mode 100644
index 00000000000..7a42ec48fb6
--- /dev/null
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -0,0 +1,32 @@
+{ lib, fetchurl, pythonPackages }:
+
+pythonPackages.buildPythonPackage rec {
+ version = "0.4.2";
+ name = "vdirsyncer-${version}";
+ namePrefix = "";
+
+ src = fetchurl {
+ url = https://github.com/untitaker/vdirsyncer/archive/0.4.2.tar.gz;
+ sha256 = "008181mglbrp5jsvpxr59b6w4mw26h4s4gwij152i47mfbrizsl4";
+ };
+
+ pythonPath = with pythonPackages; [
+ icalendar
+ click
+ requests
+ lxml
+ setuptools
+ requests_toolbelt
+ requests2
+ atomicwrites
+ ];
+
+ meta = {
+ homepage = https://github.com/untitaker/vdirsyncer;
+ description = "Synchronize calendars and contacts";
+ maintainers = [ lib.maintainers.matthiasbeyer ];
+ platforms = lib.platforms.all;
+ license = lib.licenses.mit;
+ };
+}
+
diff --git a/pkgs/tools/networking/cjdns/default.nix b/pkgs/tools/networking/cjdns/default.nix
index 60534683813..f8181a9b8be 100644
--- a/pkgs/tools/networking/cjdns/default.nix
+++ b/pkgs/tools/networking/cjdns/default.nix
@@ -2,7 +2,7 @@
let
version = "15"; # see ${src}/util/version/Version.h
- date = "20150130";
+ date = "20150207";
in
stdenv.mkDerivation {
name = "cjdns-${version}-${date}";
@@ -10,8 +10,8 @@ stdenv.mkDerivation {
src = fetchFromGitHub {
owner = "cjdelisle";
repo = "cjdns";
- rev = "b7681f601dc0ba84c6c710061089f9898247ba4e";
- sha256 = "0r59j9x5i1nkd6k8172l9iq95f6c22ymmkrm9nxwxr5dp2bj0qn5";
+ rev = "0fc585e15e25b1bd39be24a534f47bb966485a4a";
+ sha256 = "090zx30bgfk6wyh10wbjqpkvjq9l30jc7fh2iagajsmpjs9iipqm";
};
buildInputs = [ which python27 nodejs ] ++
diff --git a/pkgs/tools/networking/dnscrypt-proxy/default.nix b/pkgs/tools/networking/dnscrypt-proxy/default.nix
index 50c8dae902c..818c764b1be 100644
--- a/pkgs/tools/networking/dnscrypt-proxy/default.nix
+++ b/pkgs/tools/networking/dnscrypt-proxy/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, libsodium }:
stdenv.mkDerivation rec {
- name = "dnscrypt-proxy-1.4.1";
+ name = "dnscrypt-proxy-1.4.3";
src = fetchurl {
url = "http://download.dnscrypt.org/dnscrypt-proxy/${name}.tar.bz2";
- sha256 = "00cf5c520c8a5a71ad4916b33aa0c8f9f55434039304f4ba10d7fffc620563f8";
+ sha256 = "0cij80ryxnikpmm6s79c2fqg6bdiz1wdy50xrnd7w954vw9mhr0b";
};
buildInputs = [ libsodium ];
diff --git a/pkgs/tools/networking/flannel/default.nix b/pkgs/tools/networking/flannel/default.nix
index be6d1658d3e..3c439541e91 100644
--- a/pkgs/tools/networking/flannel/default.nix
+++ b/pkgs/tools/networking/flannel/default.nix
@@ -1,26 +1,21 @@
-{ stdenv, lib, go, fetchurl, fetchgit, fetchhg, fetchbzr, fetchFromGitHub }:
+{ lib, goPackages, fetchFromGitHub }:
-stdenv.mkDerivation rec {
+with goPackages;
+
+buildGoPackage rec {
version = "0.1.0";
name = "flannel-${version}";
-
- src = import ./deps.nix {
- inherit stdenv lib fetchFromGitHub;
+ goPackagePath = "github.com/coreos/flannel";
+ src = fetchFromGitHub {
+ owner = "coreos";
+ repo = "flannel";
+ rev = "v${version}";
+ sha256 = "1f7x6a2c8ix6j5y1r0dq56b58bl2rs2ycbdqb9fz5zv1zk2w20rd";
};
- buildInputs = [ go ];
+ dontInstallSrc = true;
- buildPhase = ''
- export GOPATH=$src
- go build -v -o flannel github.com/coreos/flannel
- '';
-
- installPhase = ''
- mkdir -p $out/bin
- mv flannel $out/bin/flannel
- '';
-
- meta = with stdenv.lib; {
+ meta = with lib; {
description = "Flannel is an etcd backed network fabric for containers";
homepage = https://github.com/coreos/flannel;
license = licenses.asl20;
diff --git a/pkgs/tools/networking/flannel/deps.nix b/pkgs/tools/networking/flannel/deps.nix
deleted file mode 100644
index 3af2404ba78..00000000000
--- a/pkgs/tools/networking/flannel/deps.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-# This file was generated by go2nix.
-{ stdenv, lib, fetchFromGitHub }:
-
-let
- goDeps = [
- {
- root = "github.com/coreos/flannel";
- src = fetchFromGitHub {
- owner = "coreos";
- repo = "flannel";
- rev = "cd584fa5e1545ae86c965588e81ceb24455e980d";
- sha256 = "1f7x6a2c8ix6j5y1r0dq56b58bl2rs2ycbdqb9fz5zv1zk2w20rd";
- };
- }
- ];
-
-in
-
-stdenv.mkDerivation rec {
- name = "go-deps";
-
- buildCommand =
- lib.concatStrings
- (map (dep: ''
- mkdir -p $out/src/`dirname ${dep.root}`
- ln -s ${dep.src} $out/src/${dep.root}
- '') goDeps);
-}
diff --git a/pkgs/tools/networking/iodine/default.nix b/pkgs/tools/networking/iodine/default.nix
index 6b07d5bd2f1..098d6ef962f 100644
--- a/pkgs/tools/networking/iodine/default.nix
+++ b/pkgs/tools/networking/iodine/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, zlib, nettools }:
stdenv.mkDerivation rec {
- name = "iodine-0.6.0-rc1";
+ name = "iodine-0.7.0";
src = fetchurl {
url = "http://code.kryo.se/iodine/${name}.tar.gz";
- sha256 = "dacf950198b68fd1dae09fe980080155b0c75718f581c08e069eee0c1b6c5e60";
+ sha256 = "0gh17kcxxi37k65zm4gqsvbk3aw7yphcs3c02pn1c4s2y6n40axd";
};
buildInputs = [ zlib ];
@@ -18,5 +18,6 @@ stdenv.mkDerivation rec {
homepage = http://code.kryo.se/iodine/;
description = "Tool to tunnel IPv4 data through a DNS server";
license = stdenv.lib.licenses.isc;
+ platforms = stdenv.lib.platforms.unix;
};
}
diff --git a/pkgs/tools/networking/iperf/3.nix b/pkgs/tools/networking/iperf/3.nix
index 7f738ea8d38..0efc789a0b2 100644
--- a/pkgs/tools/networking/iperf/3.nix
+++ b/pkgs/tools/networking/iperf/3.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
- name = "iperf-3.0.10";
+ name = "iperf-3.0.11";
src = fetchurl {
url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
- sha256 = "17856cp4c6z4hh9jh3bvz2q2yfwhi1ybwf6mnaq822fgcwll84x1";
+ sha256 = "0vkzx7yxhah49l83jb5r3y4zzfdqypj5y2b3fjc7rxj7dyzba7g0";
};
postInstall = ''
diff --git a/pkgs/tools/networking/openfortivpn/default.nix b/pkgs/tools/networking/openfortivpn/default.nix
new file mode 100644
index 00000000000..50fde6a7794
--- /dev/null
+++ b/pkgs/tools/networking/openfortivpn/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, automake, autoconf, openssl, ppp }:
+
+with stdenv.lib;
+
+let repo = "openfortivpn";
+ version = "1.0.1";
+
+in stdenv.mkDerivation {
+ name = "${repo}-${version}";
+
+ src = fetchFromGitHub {
+ owner = "adrienverge";
+ inherit repo;
+ rev = "v${version}";
+ sha256 = "0kwl8hv3nydd34xp1489jpjdj4bmknfl9xrgynij0vf5qx29xv7m";
+ };
+
+ buildInputs = [ openssl automake autoconf ppp ];
+
+ preConfigure = ''
+ aclocal
+ autoconf
+ automake --add-missing
+
+ substituteInPlace src/tunnel.c --replace "/usr/sbin/pppd" "${ppp}/bin/pppd"
+ '';
+
+ enableParallelBuilding = true;
+
+ meta = {
+ description = "Client for PPP+SSL VPN tunnel services";
+ homepage = https://github.com/adrienverge/openfortivpn;
+ license = stdenv.lib.licenses.gpl3;
+ maintainers = [ stdenv.lib.maintainers.madjar ];
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
diff --git a/pkgs/tools/networking/ppp/default.nix b/pkgs/tools/networking/ppp/default.nix
index 30995d0e531..43349178211 100644
--- a/pkgs/tools/networking/ppp/default.nix
+++ b/pkgs/tools/networking/ppp/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
name = "ppp-${version}";
src = fetchurl {
- url = "${meta.homepage}ftp/ppp/${name}.tar.gz";
+ url = "mirror://samba/ppp/${name}.tar.gz";
sha256 = "0c7vrjxl52pdwi4ckrvfjr08b31lfpgwf3pp0cqy76a77vfs7q02";
};
diff --git a/pkgs/tools/networking/radvd/default.nix b/pkgs/tools/networking/radvd/default.nix
index 7d2e3b78748..110fec50a6b 100644
--- a/pkgs/tools/networking/radvd/default.nix
+++ b/pkgs/tools/networking/radvd/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libdaemon, bison, flex, check }:
stdenv.mkDerivation rec {
- name = "radvd-2.9";
+ name = "radvd-2.10";
src = fetchurl {
url = "http://www.litech.org/radvd/dist/${name}.tar.xz";
- sha256 = "1f5sbfh1va02nlrp5jx8zshyjqpz07ga15jx9kqphqzwlwxsspjj";
+ sha256 = "0wwpzdkk6lpsai11iwsrwiblmf9x19rds0wdqcnf82hj0j1yxkkn";
};
buildInputs = [ pkgconfig libdaemon bison flex check ];
diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix
index 38e025feb38..e14cd819177 100644
--- a/pkgs/tools/networking/tinc/pre.nix
+++ b/pkgs/tools/networking/tinc/pre.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }:
stdenv.mkDerivation rec {
- name = "tinc-1.1preae5b56c";
+ name = "tinc-1.1pre4b2ddde";
src = fetchgit {
url = "git://tinc-vpn.org/tinc";
- rev = "ae5b56c03d1e1af7561d7f1d1d8a333c3a9691ff";
- sha256 = "052bli42b5mc6w74wr129yj2jagpds03zckxqiqv7wr8d38swmm7";
+ rev = "4b2ddded2c8ae1a1a5930637552eeb48f30d6530";
+ sha256 = "037yl4qvy053a7jsp9dhj9bak6knnqxx2wsqq282dv032584sh46";
};
buildInputs = [ autoreconfHook texinfo ncurses readline zlib lzo openssl ];
diff --git a/pkgs/tools/networking/wrk/default.nix b/pkgs/tools/networking/wrk/default.nix
new file mode 100644
index 00000000000..9af28dbebd6
--- /dev/null
+++ b/pkgs/tools/networking/wrk/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchgit, openssl }:
+
+let
+ version = "3.1.2";
+
+in stdenv.mkDerivation rec {
+ name = "wrk-${version}";
+
+ src = fetchgit {
+ url = "https://github.com/wg/wrk.git";
+ rev = "a52c770204a732aa63e1bb6eb241a70949e3a2a9";
+ sha256 = "0b81lg251ivi94f7kfgz8ws4xns5p7hw5qiwjwwlc3dimjgrg387";
+ };
+
+ NIX_CFLAGS_COMPILE = "-I${openssl}/include";
+ NIX_CFLAGS_LINK = "-L${openssl}/lib";
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp wrk $out/bin
+ '';
+
+ meta = with stdenv.lib; {
+ description = "HTTP benchmarking tool.";
+ homepage = http://github.com/wg/wrk;
+ longDescription = ''
+ wrk is a modern HTTP benchmarking tool capable of generating
+ significant load when run on a single multi-core CPU. It
+ combines a multithreaded design with scalable event notification
+ systems such as epoll and kqueue.
+ '';
+ license = licenses.asl20;
+ maintainers = with maintainers; [ ragge ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/tools/security/clamav/default.nix b/pkgs/tools/security/clamav/default.nix
index 1a76008f889..11e08d502ed 100644
--- a/pkgs/tools/security/clamav/default.nix
+++ b/pkgs/tools/security/clamav/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, zlib, bzip2, libiconvOrNull, libxml2, openssl, ncurses, curl }:
stdenv.mkDerivation rec {
name = "clamav-${version}";
- version = "0.98.5";
+ version = "0.98.6";
src = fetchurl {
url = "mirror://sourceforge/clamav/clamav-${version}.tar.gz";
- sha256 = "0kdaimnbbb0hymg7d15a3iwk17r8555nyzr3d1j96cwhzbakfbww";
+ sha256 = "0l99a0shgzpl8rvrrgbm1ki2zxlb7g1n82bhq7f2snj4amfj94b5";
};
buildInputs = [ zlib bzip2 libxml2 openssl ncurses curl ]
diff --git a/pkgs/tools/security/kpcli/default.nix b/pkgs/tools/security/kpcli/default.nix
index 4513cf35920..ca3cad5129e 100644
--- a/pkgs/tools/security/kpcli/default.nix
+++ b/pkgs/tools/security/kpcli/default.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, makeWrapper, perl, perlPackages }:
stdenv.mkDerivation rec {
- version = "2.7";
+ version = "2.8";
name = "kpcli-${version}";
src = fetchurl {
url = "mirror://sourceforge/kpcli/${name}.pl";
- sha256 = "6bb1f7320b4474d6dbb73915393e5df96862f27c6228aa042a810fef46e2b777";
+ sha256 = "1vmj131ii3skm1dx0pmcvq19h6a94a2vjldmqlf1b3dxjvz1ld91";
};
buildInputs = [ makeWrapper perl ];
diff --git a/pkgs/tools/security/pass/darwin-getopt.patch b/pkgs/tools/security/pass/darwin-getopt.patch
deleted file mode 100644
index 8cdcd67bc65..00000000000
--- a/pkgs/tools/security/pass/darwin-getopt.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/src/platform/darwin.sh b/src/platform/darwin.sh
-index 1b76c33..fa40104 100644
---- a/src/platform/darwin.sh
-+++ b/src/platform/darwin.sh
-@@ -31,5 +31,5 @@ tmpdir() {
- mount -t hfs -o noatime -o nobrowse "$ramdisk_dev" "$SECURE_TMPDIR" || exit 1
- }
-
--GETOPT="$(brew --prefix gnu-getopt 2>/dev/null || echo /usr/local)/bin/getopt"
-+GETOPT="getopt"
- SHRED="srm -f -z"
diff --git a/pkgs/tools/security/pass/default.nix b/pkgs/tools/security/pass/default.nix
index d635d692582..74889a05bee 100644
--- a/pkgs/tools/security/pass/default.nix
+++ b/pkgs/tools/security/pass/default.nix
@@ -1,23 +1,22 @@
{ stdenv, fetchurl
, coreutils, gnused, getopt, pwgen, git, tree, gnupg
, makeWrapper
-, withX ? true, xclip ? null, xdotool ? null
+, withX ? true, xclip, xdotool, dmenu
}:
assert withX -> xclip != null;
assert withX -> xdotool != null;
+assert withX -> dmenu != null;
stdenv.mkDerivation rec {
- version = "1.6.3";
+ version = "1.6.5";
name = "password-store-${version}";
src = fetchurl {
url = "http://git.zx2c4.com/password-store/snapshot/${name}.tar.xz";
- sha256 = "1xs00c7ffqd0093i452kryw9sjip6dkp1pclx69zihb5l45d86fl";
+ sha256 = "05bk3lrp5jwg0v338lvylp7glpliydzz4jf5pjr6k3kagrv3jyik";
};
- patches = [ ./darwin-getopt.patch ];
-
buildInputs = [ makeWrapper ];
meta = with stdenv.lib; {
@@ -65,7 +64,7 @@ stdenv.mkDerivation rec {
${if withX then ''
wrapProgram $out/bin/passmenu \
- --prefix PATH : "$out/bin:${xdotool}/bin"
+ --prefix PATH : "$out/bin:${xdotool}/bin:${dmenu}/bin"
'' else ""}
'';
}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c1bc418d553..740e23368d6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -507,9 +507,12 @@ let
arcanist = callPackage ../development/tools/misc/arcanist {};
+ arduino = arduino-core.override { withGui = true; };
+
arduino-core = callPackage ../development/arduino/arduino-core {
jdk = jdk;
jre = jdk;
+ withGui = false;
};
apitrace = callPackage ../applications/graphics/apitrace {};
@@ -520,10 +523,7 @@ let
ascii = callPackage ../tools/text/ascii { };
- asymptote = builderDefsPackage ../tools/graphics/asymptote {
- inherit freeglut ghostscriptX imagemagick fftw boehmgc
- mesa ncurses readline gsl libsigsegv python zlib perl
- texinfo xz;
+ asymptote = callPackage ../tools/graphics/asymptote {
texLive = texLiveAggregationFun {
paths = [ texLive texLiveExtra texLiveCMSuper ];
};
@@ -686,6 +686,14 @@ let
catdoc = callPackage ../tools/text/catdoc { };
+ cdemu-daemon = callPackage ../misc/emulators/cdemu/daemon.nix { };
+
+ cdemu-client = callPackage ../misc/emulators/cdemu/client.nix { };
+
+ gcdemu = callPackage ../misc/emulators/cdemu/gui.nix { };
+
+ image-analyzer = callPackage ../misc/emulators/cdemu/analyzer.nix { };
+
ccnet = callPackage ../tools/networking/ccnet { };
cloud-init = callPackage ../tools/virtualization/cloud-init { };
@@ -696,6 +704,8 @@ let
consul_ui = consul.ui;
+ consul-alerts = callPackage ../servers/consul/alerts.nix { };
+
corosync = callPackage ../servers/corosync { };
cherrytree = callPackage ../applications/misc/cherrytree { };
@@ -862,9 +872,7 @@ let
cdrkit = callPackage ../tools/cd-dvd/cdrkit { };
- ceph = callPackage ../tools/filesystems/ceph {
- zfs = linuxPackages.zfs;
- };
+ ceph = callPackage ../tools/filesystems/ceph { };
cfdg = builderDefsPackage ../tools/graphics/cfdg {
inherit libpng bison flex ffmpeg;
@@ -1449,11 +1457,17 @@ let
buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true;
};
- grub2 = callPackage ../tools/misc/grub/2.0x.nix { };
+ grub2 = grub2_full;
- grub2_efi = grub2.override { efiSupport = true; };
+ grub2_full = callPackage ../tools/misc/grub/2.0x.nix { };
- grub2_zfs = grub2.override { zfsSupport = true; };
+ grub2_efi = grub2_full.override {
+ efiSupport = true;
+ };
+
+ grub2_light = grub2_full.override {
+ zfsSupport = false;
+ };
gsmartcontrol = callPackage ../tools/misc/gsmartcontrol {
inherit (gnome) libglademm;
@@ -2045,10 +2059,14 @@ let
obexd = callPackage ../tools/bluetooth/obexd { };
+ openfortivpn = callPackage ../tools/networking/openfortivpn { };
+
obexfs = callPackage ../tools/bluetooth/obexfs { };
obexftp = callPackage ../tools/bluetooth/obexftp { };
+ objconv = callPackage ../development/tools/misc/objconv {};
+
obnam = callPackage ../tools/backup/obnam { };
ocz-toolbox = callPackage ../os-specific/linux/ocz-toolbox { };
@@ -2698,6 +2716,8 @@ let
stdenv = overrideCC stdenv gcc49;
};
+ touchegg = callPackage ../tools/inputmethods/touchegg { };
+
torsocks = callPackage ../tools/security/tor/torsocks.nix { };
tpm-quote-tools = callPackage ../tools/security/tpm-quote-tools { };
@@ -2949,6 +2969,8 @@ let
wml = callPackage ../development/web/wml { };
+ wrk = callPackage ../tools/networking/wrk { };
+
wv = callPackage ../tools/misc/wv { };
wv2 = callPackage ../tools/misc/wv2 { };
@@ -3046,9 +3068,7 @@ let
zdelta = callPackage ../tools/compression/zdelta { };
- zfstools = callPackage ../tools/filesystems/zfstools {
- zfs = linuxPackages.zfs;
- };
+ zfstools = callPackage ../tools/filesystems/zfstools { };
zile = callPackage ../applications/editors/zile { };
@@ -3527,8 +3547,6 @@ let
go-repo-root = callPackage ../development/tools/misc/go-repo-root { };
- go-bindata = callPackage ../tools/misc/go-bindata { };
-
gox = callPackage ../development/compilers/go/gox.nix { };
gprolog = callPackage ../development/compilers/gprolog { };
@@ -3696,6 +3714,8 @@ let
mozart-binary = callPackage ../development/compilers/mozart/binary.nix { };
mozart = mozart-binary;
+ nim = callPackage ../development/compilers/nim { };
+
neko = callPackage ../development/compilers/neko { };
nasm = callPackage ../development/compilers/nasm { };
@@ -4325,8 +4345,17 @@ let
inherit php pkgs;
});
+ php55Packages = recurseIntoAttrs (import ./php-packages.nix {
+ inherit pkgs;
+ php = php55;
+ });
+
php54 = callPackage ../development/interpreters/php/5.4.nix { };
+ php55 = callPackage ../development/interpreters/php/5.5.nix { };
+
+ php56 = callPackage ../development/interpreters/php/5.6.nix { };
+
picolisp = callPackage ../development/interpreters/picolisp {};
pltScheme = racket; # just to be sure
@@ -4781,6 +4810,8 @@ let
fswatch = callPackage ../development/tools/misc/fswatch { };
+ frame = callPackage ../development/libraries/frame { };
+
pmd = callPackage ../development/tools/analysis/pmd { };
jdepend = callPackage ../development/tools/analysis/jdepend { };
@@ -4793,6 +4824,8 @@ let
m4 = gnum4;
+ geis = callPackage ../development/libraries/geis { };
+
global = callPackage ../development/tools/misc/global { };
gnome_doc_utils = callPackage ../development/tools/documentation/gnome-doc-utils {};
@@ -4812,6 +4845,8 @@ let
gperf = callPackage ../development/tools/misc/gperf { };
+ grail = callPackage ../development/libraries/grail { };
+
gtk_doc = callPackage ../development/tools/documentation/gtk-doc { };
gtkdialog = callPackage ../development/tools/misc/gtkdialog { };
@@ -4975,6 +5010,8 @@ let
saleae-logic = callPackage ../development/tools/misc/saleae-logic { };
+ sauce-connect = callPackage ../development/tools/sauce-connect { };
+
# couldn't find the source yet
seleniumRCBin = callPackage ../development/tools/selenium/remote-control {
jre = jdk;
@@ -6942,9 +6979,13 @@ let
postgis = callPackage ../development/libraries/postgis { };
- protobuf = callPackage ../development/libraries/protobuf { };
+ protobuf = protobuf2_6;
+ protobuf2_6 = callPackage ../development/libraries/protobuf/2.6.nix { };
+ protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { };
- protobufc = callPackage ../development/libraries/protobufc { };
+ protobufc = protobufc1_1;
+ protobufc1_1 = callPackage ../development/libraries/protobufc/1.1.nix { };
+ protobufc1_0 = callPackage ../development/libraries/protobufc/1.0.nix { };
pth = callPackage ../development/libraries/pth { };
@@ -6994,7 +7035,7 @@ let
qtLib = qt48Full;
};
- qt5 = callPackage ../development/libraries/qt-5 {
+ qt5 = callPackage ../development/libraries/qt-5/5.3 {
mesa = mesa_noglu;
cups = if stdenv.isLinux then cups else null;
# GNOME dependencies are not used unless gtkStyle == true
@@ -7002,6 +7043,8 @@ let
bison = bison2; # error: too few arguments to function 'int yylex(...
};
+ qt5split = callPackage ../development/libraries/qt-5/5.3-submodules {};
+
qt5Full = appendToName "full" (qt5.override {
buildDocs = true;
buildExamples = true;
@@ -7112,8 +7155,8 @@ let
SDL2 = callPackage ../development/libraries/SDL2 {
openglSupport = mesaSupported;
- alsaSupport = true;
- x11Support = true;
+ alsaSupport = (!stdenv.isDarwin);
+ x11Support = (!stdenv.isDarwin);
pulseaudioSupport = false; # better go through ALSA
};
@@ -7586,6 +7629,26 @@ let
yuicompressor = callPackage ../development/tools/yuicompressor { };
+ ### DEVELOPMENT / GO MODULES
+
+ go13Packages = recurseIntoAttrs (callPackage ./go-packages.nix {
+ go = go_1_3;
+ buildGoPackage = import ../development/go-modules/generic {
+ go = go_1_3;
+ };
+ overrides = (config.goPackageOverrides or (p: {})) pkgs;
+ });
+
+ go14Packages = recurseIntoAttrs (callPackage ./go-packages.nix {
+ go = go_1_4;
+ buildGoPackage = import ../development/go-modules/generic {
+ go = go_1_4;
+ };
+ overrides = (config.goPackageOverrides or (p: {})) pkgs;
+ });
+
+ goPackages = go14Packages;
+
### DEVELOPMENT / LISP MODULES
asdf = callPackage ../development/lisp-modules/asdf {
@@ -8180,6 +8243,8 @@ let
});
squid = squids.squid31; # has ipv6 support
+ sslh = callPackage ../servers/sslh { };
+
thttpd = callPackage ../servers/http/thttpd { };
storm = callPackage ../servers/computing/storm { };
@@ -8346,13 +8411,14 @@ let
darwin = let
cmdline = callPackage ../os-specific/darwin/command-line-tools {};
- in rec {
+ apple-source-releases = import ../os-specific/darwin/apple-source-releases { inherit stdenv fetchurl pkgs; };
+ in apple-source-releases // rec {
- cctools = forceNativeDrv (callPackage ../os-specific/darwin/cctools/port.nix {
+ cctools = callPackage (forceNativeDrv (callPackage ../os-specific/darwin/cctools/port.nix {}).cross) {
cross = assert crossSystem != null; crossSystem;
inherit maloader;
xctoolchain = xcode.toolchain;
- });
+ };
cctools_native = (callPackage ../os-specific/darwin/cctools/port.nix {}).native;
@@ -8364,18 +8430,17 @@ let
xcode = callPackage ../os-specific/darwin/xcode {};
- libc = callPackage ../os-specific/darwin/libc {};
-
osx_sdk = callPackage ../os-specific/darwin/osx-sdk {};
osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk { inherit osx_sdk; };
ps = callPackage ../os-specific/darwin/adv_cmds/ps.nix {};
- bootstrap_cmds = callPackage ../os-specific/darwin/bootstrap-cmds {};
security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; };
cmdline_sdk = cmdline.sdk;
cmdline_tools = cmdline.tools;
+
+ libobjc = apple-source-releases.objc4;
};
devicemapper = lvm2;
@@ -8497,8 +8562,6 @@ let
iw = callPackage ../os-specific/linux/iw { };
- iwlwifi = callPackage ../os-specific/linux/firmware/iwlwifi { };
-
iwlegacy = callPackage ../os-specific/linux/firmware/iwlegacy { };
jfbview = callPackage ../os-specific/linux/jfbview { };
@@ -8572,7 +8635,7 @@ let
linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) {
inherit fetchurl stdenv perl buildLinux;
- kernelPatches = [ kernelPatches.bridge_stp_helper ]
+ kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
++ lib.optionals ((platform.kernelArch or null) == "mips")
[ kernelPatches.mips_fpureg_emu
kernelPatches.mips_fpu_sigill
@@ -8582,7 +8645,7 @@ let
linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) {
inherit fetchurl stdenv perl buildLinux;
- kernelPatches = [ kernelPatches.bridge_stp_helper ]
+ kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
++ lib.optionals ((platform.kernelArch or null) == "mips")
[ kernelPatches.mips_fpureg_emu
kernelPatches.mips_fpu_sigill
@@ -8592,7 +8655,7 @@ let
linux_3_14 = makeOverridable (import ../os-specific/linux/kernel/linux-3.14.nix) {
inherit fetchurl stdenv perl buildLinux;
- kernelPatches = [ kernelPatches.bridge_stp_helper ]
+ kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.crc_regression ]
++ lib.optionals ((platform.kernelArch or null) == "mips")
[ kernelPatches.mips_fpureg_emu
kernelPatches.mips_fpu_sigill
@@ -8600,7 +8663,7 @@ let
];
};
- linux_3_17 = makeOverridable (import ../os-specific/linux/kernel/linux-3.17.nix) {
+ linux_3_18 = makeOverridable (import ../os-specific/linux/kernel/linux-3.18.nix) {
inherit fetchurl stdenv perl buildLinux;
kernelPatches = [ kernelPatches.bridge_stp_helper ]
++ lib.optionals ((platform.kernelArch or null) == "mips")
@@ -8610,7 +8673,7 @@ let
];
};
- linux_3_18 = makeOverridable (import ../os-specific/linux/kernel/linux-3.18.nix) {
+ linux_3_19 = makeOverridable (import ../os-specific/linux/kernel/linux-3.19.nix) {
inherit fetchurl stdenv perl buildLinux;
kernelPatches = [ kernelPatches.bridge_stp_helper ]
++ lib.optionals ((platform.kernelArch or null) == "mips")
@@ -8734,8 +8797,14 @@ let
seturgent = callPackage ../os-specific/linux/seturgent { };
- spl = callPackage ../os-specific/linux/spl { };
- spl_git = callPackage ../os-specific/linux/spl/git.nix { };
+ spl = callPackage ../os-specific/linux/spl {
+ configFile = "kernel";
+ inherit kernel;
+ };
+ spl_git = callPackage ../os-specific/linux/spl/git.nix {
+ configFile = "kernel";
+ inherit kernel;
+ };
sysdig = callPackage ../os-specific/linux/sysdig {};
@@ -8743,6 +8812,8 @@ let
v86d = callPackage ../os-specific/linux/v86d { };
+ vhba = callPackage ../misc/emulators/cdemu/vhba.nix { };
+
virtualbox = callPackage ../applications/virtualization/virtualbox {
stdenv = stdenv_32bit;
inherit (gnome) libIDL;
@@ -8756,17 +8827,23 @@ let
virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { };
- zfs = callPackage ../os-specific/linux/zfs { };
- zfs_git = callPackage ../os-specific/linux/zfs/git.nix { };
+ zfs = callPackage ../os-specific/linux/zfs {
+ configFile = "kernel";
+ inherit kernel spl;
+ };
+ zfs_git = callPackage ../os-specific/linux/zfs/git.nix {
+ configFile = "kernel";
+ inherit kernel spl_git;
+ };
};
# The current default kernel / kernel modules.
- linux = linuxPackages.kernel;
linuxPackages = linuxPackages_3_14;
+ linux = linuxPackages.kernel;
# Update this when adding the newest kernel major version!
- linux_latest = pkgs.linux_3_18;
- linuxPackages_latest = pkgs.linuxPackages_3_18;
+ linuxPackages_latest = pkgs.linuxPackages_3_19;
+ linux_latest = linuxPackages_latest.kernel;
# Build the kernel modules for the some of the kernels.
linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 linuxPackages_3_2);
@@ -8776,9 +8853,14 @@ let
linuxPackages_3_10_tuxonice = linuxPackagesFor pkgs.linux_3_10_tuxonice linuxPackages_3_10_tuxonice;
linuxPackages_3_12 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_12 linuxPackages_3_12);
linuxPackages_3_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_14 linuxPackages_3_14);
- linuxPackages_3_17 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_17 linuxPackages_3_17);
linuxPackages_3_18 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_18 linuxPackages_3_18);
+ linuxPackages_3_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_19 linuxPackages_3_19);
linuxPackages_testing = recurseIntoAttrs (linuxPackagesFor pkgs.linux_testing linuxPackages_testing);
+ linuxPackages_custom = {version, src, configfile}:
+ let linuxPackages_self = (linuxPackagesFor (pkgs.linuxManualConfig {inherit version src configfile;
+ allowImportFromDerivation=true;})
+ linuxPackages_self);
+ in recurseIntoAttrs linuxPackages_self;
# grsecurity flavors
# Stable kernels
@@ -8874,7 +8956,7 @@ let
gotags = callPackage ../development/tools/gotags { };
- golint = callPackage ../development/tools/golint { };
+ golint = callPackage ../development/tools/golint { goPackages = go13Packages; };
godep = callPackage ../development/tools/godep { };
@@ -8974,6 +9056,13 @@ let
statifier = builderDefsPackage (import ../os-specific/linux/statifier) { };
+ spl = callPackage ../os-specific/linux/spl {
+ configFile = "user";
+ };
+ spl_git = callPackage ../os-specific/linux/spl/git.nix {
+ configFile = "user";
+ };
+
sysdig = callPackage ../os-specific/linux/sysdig {
kernel = null;
}; # pkgs.sysdig is a client, for a driver look at linuxPackagesFor
@@ -9178,6 +9267,12 @@ let
zd1211fw = callPackage ../os-specific/linux/firmware/zd1211 { };
+ zfs = callPackage ../os-specific/linux/zfs {
+ configFile = "user";
+ };
+ zfs_git = callPackage ../os-specific/linux/zfs/git.nix {
+ configFile = "user";
+ };
### DATA
@@ -9561,6 +9656,10 @@ let
camlistore = callPackage ../applications/misc/camlistore { };
+ canto-curses = callPackage ../applications/networking/feedreaders/canto-curses { };
+
+ canto-daemon = callPackage ../applications/networking/feedreaders/canto-daemon { };
+
carrier = builderDefsPackage (import ../applications/networking/instant-messengers/carrier/2.5.0.nix) {
inherit fetchurl stdenv pkgconfig perl perlXMLParser libxml2 openssl nss
gtkspell aspell gettext ncurses avahi dbus dbus_glib python
@@ -9621,7 +9720,6 @@ let
stdenv = overrideCC stdenv gcc49;
pulseSupport = config.pulseaudio or false;
};
- cmplayer = bomi;
cmus = callPackage ../applications/audio/cmus { };
@@ -10553,6 +10651,13 @@ let
lrzsz = callPackage ../tools/misc/lrzsz { };
+ luakit = callPackage ../applications/networking/browsers/luakit {
+ inherit (lua51Packages) luafilesystem luasqlite3;
+ lua5 = lua5_1;
+ gtk = gtk3;
+ webkit = webkitgtk2;
+ };
+
luminanceHDR = callPackage ../applications/graphics/luminance-hdr { };
lxdvdrip = callPackage ../applications/video/lxdvdrip { };
@@ -10755,6 +10860,13 @@ let
namecoin = callPackage ../applications/misc/namecoin { };
namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { };
+ panamax_api = callPackage ../applications/networking/cluster/panamax/api.nix {
+ ruby = ruby_2_1;
+ };
+ panamax_ui = callPackage ../applications/networking/cluster/panamax/ui.nix {
+ ruby = ruby_2_1;
+ };
+
pcmanfm = callPackage ../applications/misc/pcmanfm { };
shotcut = callPackage ../applications/video/shotcut { mlt = mlt-qt5; };
@@ -10936,7 +11048,7 @@ let
inherit (xorg) libXpm;
};
- pond = callPackage ../applications/networking/pond { };
+ pond = callPackage ../applications/networking/pond { goPackages = go13Packages; };
potrace = callPackage ../applications/graphics/potrace {};
@@ -11032,6 +11144,8 @@ let
rapidsvn = callPackage ../applications/version-management/rapidsvn { };
+ ratox = callPackage ../applications/networking/instant-messengers/ratox { };
+
ratpoison = callPackage ../applications/window-managers/ratpoison { };
rawtherapee = callPackage ../applications/graphics/rawtherapee {
@@ -11079,7 +11193,7 @@ let
};
sakura = callPackage ../applications/misc/sakura {
- inherit (gnome) vte;
+ inherit (gnome3) vte;
};
sbagen = callPackage ../applications/misc/sbagen { };
@@ -11419,6 +11533,10 @@ let
vcprompt = callPackage ../applications/version-management/vcprompt { };
+ vdirsyncer = callPackage ../tools/misc/vdirsyncer {
+ pythonPackages = python3Packages;
+ };
+
vdpauinfo = callPackage ../tools/X11/vdpauinfo { };
veracity = callPackage ../applications/version-management/veracity {};
@@ -11704,6 +11822,10 @@ let
xbindkeys = callPackage ../tools/X11/xbindkeys { };
+ xbindkeys-config = callPackage ../tools/X11/xbindkeys-config/default.nix {
+ gtk = gtk2;
+ };
+
xbmcPlain = callPackage ../applications/video/xbmc {
ffmpeg = ffmpeg_1;
};
@@ -12168,14 +12290,6 @@ let
steam = callPackage ../games/steam/chrootenv.nix { };
- steamChrootEnv = steam.overrideDerivation (args: {
- buildCommand = ''
- ${args.buildCommand}
- echo >&2 "'steamChrootEnv' is replaced with 'steam' now"
- echo >&2 "You now need just to run 'steam' without root rights"
- '';
- });
-
stuntrally = callPackage ../games/stuntrally { };
superTux = callPackage ../games/super-tux { };
diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix
new file mode 100644
index 00000000000..dfff0b680cd
--- /dev/null
+++ b/pkgs/top-level/go-packages.nix
@@ -0,0 +1,762 @@
+/* This file defines the composition for Go packages. */
+
+{ overrides, stdenv, go, buildGoPackage, git, pkgconfig, libusb
+, fetchgit, fetchhg, fetchurl, fetchFromGitHub, fetchbzr }:
+
+let self = _self // overrides; _self = with self; {
+
+ inherit go buildGoPackage;
+
+ ## OFFICIAL GO PACKAGES
+
+ crypto = buildGoPackage rec {
+ rev = "31393df5baea";
+ name = "go-crypto-${rev}";
+ goPackagePath = "code.google.com/p/go.crypto";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "0b95dpsvxxapcjjvhj05fdmyn0mzffamc25hvxy7xgsl2l9yy3nw";
+ };
+ };
+
+ image = buildGoPackage rec {
+ rev = "490b1ad139b3";
+ name = "go.image-${rev}";
+ goPackagePath = "code.google.com/p/go.image";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "02m6ifwby2fi88njarbbb6dimwg0pd2b6llkgyadh4b9wzp2vy4r";
+ };
+ };
+
+ net = buildGoPackage rec {
+ rev = "3338d5f109e9";
+ name = "go.net-${rev}";
+ goPackagePath = "code.google.com/p/go.net";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "0yz807y3ac07x3nf0qlaw1w1i6asynrpyssjl8jyv3pplww0qj7i";
+ };
+ propagatedBuildInputs = [ text ];
+ };
+
+ protobuf = buildGoPackage rec {
+ rev = "36be16571e14";
+ name = "goprotobuf-${rev}";
+ goPackagePath = "code.google.com/p/goprotobuf";
+ src = fetchhg {
+ inherit rev;
+ url = "https://code.google.com/p/goprotobuf";
+ sha256 = "14yay2sgfbbs0bx3q03bdqn1kivyvxfdm34rmp2612gvinlll215";
+ };
+ subPackages = [ "proto" "protoc-gen-go" ];
+ };
+
+ text = buildGoPackage rec {
+ rev = "024681b033be";
+ name = "go.text-${rev}";
+ goPackagePath = "code.google.com/p/go.text";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "19px5pw5mvwjb7ymivfkkkr6cyl2npv834jxlr6y0x5ca1djhsci";
+ };
+ doCheck = false;
+ };
+
+ tools = buildGoPackage rec {
+ rev = "140fcaadc5860b1a014ec69fdeec807fe3b787e8";
+ name = "go.tools-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "code.google.com/p/go.tools";
+ src = fetchhg {
+ inherit rev;
+ url = "http://code.google.com/p/go.tools";
+ sha256 = "1vgz4kxy0p56qh6pfbs2c68156hakgx4cmrci9jbg7lnrdaz4y56";
+ };
+ subPackages = [ "go/vcs" ];
+ };
+
+ ## THIRD PARTY
+
+ binarydist = buildGoPackage rec {
+ rev = "9955b0ab8708602d411341e55fffd7e0700f86bd";
+ name = "binarydist-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/kr/binarydist";
+
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "kr";
+ repo = "binarydist";
+ sha256 = "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3";
+ };
+ };
+
+ bufio = buildGoPackage rec {
+ rev = "24e7e48f60fc2d9e99e43c07485d9fff42051e66";
+ name = "bufio-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/vmihailenco/bufio";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "vmihailenco";
+ repo = "bufio";
+ sha256 = "0x46qnf2f15v7m0j2dcb16raxjamk5rdc7hqwgyxfr1sqmmw3983";
+ };
+ };
+
+ check-v1 = buildGoPackage rec {
+ rev = "871360013c92e1c715c2de6d06b54899468a8a2d";
+ name = "check-v1-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "gopkg.in/check.v1";
+ src = fetchgit {
+ inherit rev;
+ url = "https://github.com/go-check/check.git";
+ sha256 = "0i83qjmd4ri9mrfddhsbpj9nb43rf2j9803k030fj155j31klwcx";
+ };
+ };
+
+ circbuf = buildGoPackage rec {
+ rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf";
+ name = "circbuf-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/armon/circbuf";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "armon";
+ repo = "circbuf";
+ sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s";
+ };
+ };
+
+ cli = buildGoPackage rec {
+ rev = "8262fe3f76f0da53b5674eb35c8c6436430794c3";
+ name = "cli-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mitchellh/cli";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mitchellh";
+ repo = "cli";
+ sha256 = "0pqkxh1q49kkxihggrfjs8174d927g4c5qqx00ggw8sqqsgrw6vn";
+ };
+ };
+
+ cobra = buildGoPackage rec {
+ date = "20140617";
+ rev = "10a8494a87448bf5003222d9974f166437e7f042";
+ name = "cobra-${date}-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/spf13/cobra";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "1ydcccx0zdswca4v9hfmrn8ck42h485hy3wrd9k7y6mra3r6c08j";
+ };
+ propagatedBuildInputs = [ pflag ];
+ };
+
+ columnize = buildGoPackage rec {
+ rev = "785d943a7b6886e0bb2f139a60487b823dd8d9de";
+ name = "columnize-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/ryanuber/columnize";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "ryanuber";
+ repo = "columnize";
+ sha256 = "1h3sxzhiwz65vf3cvclirlf6zhdr97v01dpn5cmf3m09rxxpnp3f";
+ };
+ };
+
+ dns = buildGoPackage rec {
+ rev = "fc67c4b981930a377f8a26a5a1f2c0ccd5dd1514";
+ name = "dns-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/miekg/dns";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "miekg";
+ repo = "dns";
+ sha256 = "1csjmkx0gl34r4hmkhdbdxb0693f1p10yrjaj8f2jwli9p9sl4mg";
+ };
+ };
+
+ ed25519 = buildGoPackage rec {
+ rev = "d2b94fd789ea21d12fac1a4443dd3a3f79cda72c";
+ name = "ed25519-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/agl/ed25519";
+ src = fetchgit {
+ inherit rev;
+ url = "git://${goPackagePath}.git";
+ sha256 = "83e3010509805d1d315c7aa85a356fda69d91b51ff99ed98a503d63adb3613e9";
+ };
+ };
+
+ gocheck = buildGoPackage rec {
+ rev = "87";
+ name = "gocheck-${rev}";
+ goPackagePath = "launchpad.net/gocheck";
+ src = fetchbzr {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "1y9fa2mv61if51gpik9isls48idsdz87zkm1p3my7swjdix7fcl0";
+ };
+ };
+
+ goconvey = buildGoPackage rec {
+ version = "1.5.0";
+ name = "goconvey-${version}";
+ goPackagePath = "github.com/smartystreets/goconvey";
+ src = fetchurl {
+ name = "${name}.tar.gz";
+ url = "https://github.com/smartystreets/goconvey/archive/${version}.tar.gz";
+ sha256 = "0g3965cb8kg4kf9b0klx4pj9ycd7qwbw1jqjspy6i5d4ccd6mby4";
+ };
+ buildInputs = [ oglematchers ];
+ doCheck = false; # please check again
+ };
+
+ go-assert = buildGoPackage rec {
+ rev = "e17e99893cb6509f428e1728281c2ad60a6b31e3";
+ name = "assert-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/bmizerany/assert";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bmizerany";
+ repo = "assert";
+ sha256 = "1lfrvqqmb09y6pcr76yjv4r84cshkd4s7fpmiy7268kfi2cvqnpc";
+ };
+ propagatedBuildInputs = [ pretty ];
+ };
+
+ go-bencode = buildGoPackage rec {
+ version = "1.1.1";
+ name = "go-bencode-${version}";
+ goPackagePath = "github.com/ehmry/go-bencode";
+
+ src = fetchurl {
+ url = "https://${goPackagePath}/archive/v${version}.tar.gz";
+ sha256 = "0y2kz2sg1f7mh6vn70kga5d0qhp04n01pf1w7k6s8j2nm62h24j6";
+ };
+ };
+
+ go-bindata = buildGoPackage rec {
+ version = "3.0.7";
+ name = "go-bindata-${version}";
+ goPackagePath = "github.com/jteeuwen/go-bindata";
+ src = fetchFromGitHub {
+ repo = "go-bindata";
+ owner = "jteeuwen";
+ rev = "v${version}";
+ sha256 = "1v8xwwlv6my5ixvis31m3vgz4sdc0cq82855j8gxmjp1scinv432";
+ };
+
+ subPackages = [ "./" "go-bindata" ]; # don't build testdata
+
+ meta = with stdenv.lib; {
+ homepage = "https://github.com/jteeuwen/go-bindata";
+ description = "A small utility which generates Go code from any file. Useful for embedding binary data in a Go program.";
+ maintainers = with maintainers; [ cstrahan ];
+ license = licenses.cc0 ;
+ platforms = platforms.all;
+ };
+ };
+
+ go-codec = buildGoPackage rec {
+ rev = "71c2886f5a673a35f909803f38ece5810165097b";
+ name = "go-codec-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/ugorji/go";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "ugorji";
+ repo = "go";
+ sha256 = "157f24xnkhclrjwwa1b7lmpj112ynlbf7g1cfw0c657iqny5720j";
+ };
+ };
+
+ go-fuse = buildGoPackage rec {
+ rev = "5d16aa11eef4643de2d91e88a64dcb6138705d58";
+ name = "go-fuse-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hanwen/go-fuse";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hanwen";
+ repo = "go-fuse";
+ sha256 = "0lycfhchn88kbs81ypz8m5jh032fpbv14gldrjirf32wm1d4f8pj";
+ };
+ subPackages = [ "fuse" "fuse/nodefs" "fuse/pathfs" ];
+ };
+
+ go-hostpool = buildGoPackage rec {
+ rev = "fed86fae5cacdc77e7399937e2f8836563620a2e";
+ name = "go-hostpool-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/bitly/go-hostpool";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bitly";
+ repo = "go-hostpool";
+ sha256 = "0nbssfp5ksj4hhc0d8lfq54afd9nqv6qzk3vi6rinxr3fgplrj44";
+ };
+ };
+
+ rcrowley.go-metrics = buildGoPackage rec {
+ rev = "f770e6f5e91a8770cecee02d5d3f7c00b023b4df";
+ name = "rcrowley.go-metrics-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/rcrowley/go-metrics";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "rcrowley";
+ repo = "go-metrics";
+ sha256 = "07dc74kiam8v5my7rhi3yxqrpnaapladhk8b3qbnrpjk3shvnx5f";
+ };
+
+ buildInputs = [ influxdb-go stathat ];
+ };
+
+ armon.go-metrics = buildGoPackage rec {
+ rev = "02567bbc4f518a43853d262b651a3c8257c3f141";
+ name = "armon.go-metrics-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/armon/go-metrics";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "armon";
+ repo = "go-metrics";
+ sha256 = "08fk3zmw0ywmdfp2qhrpv0vrk1y97hzqczrgr3y2yip3x8sr37ar";
+ };
+ };
+
+ go-msgpack = buildGoPackage rec {
+ rev = "75092644046c5e38257395b86ed26c702dc95b92";
+ name = "go-msgpack-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/ugorji/go-msgpack";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "ugorji";
+ repo = "go-msgpack";
+ sha256 = "1bmqi16bfiqw7qhb3d5hbh0dfzhx2bbq1g15nh2pxwxckwh80x98";
+ };
+ };
+
+ go-nsq = buildGoPackage rec {
+ rev = "c79a282f05364e340eadc2ce2f862a3d44eea9c0";
+ name = "go-nsq-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/bitly/go-nsq";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bitly";
+ repo = "go-nsq";
+ sha256 = "19jlwj5419p5xwjzfnzlddjnbh5g7ifnqhd00i5p0b6ww1gk011p";
+ };
+ propagatedBuildInputs = [ go-simplejson go-snappystream ];
+ };
+
+ go-options = buildGoPackage rec {
+ rev = "896a539cd709f4f39d787562d1583c016ce7517e";
+ name = "go-options-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mreiferson/go-options";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mreiferson";
+ repo = "go-options";
+ sha256 = "0hg0n5grcjcj5719rqchz0plp39wfk3znqxw8y354k4jwsqwmn17";
+ };
+ };
+
+ go-simplejson = buildGoPackage rec {
+ rev = "1cfceb0e12f47ec02665ef480212d7b531d6f4c5";
+ name = "go-simplejson-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/bitly/go-simplejson";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bitly";
+ repo = "go-simplejson";
+ sha256 = "1d8x0himl58qn87lv418djy6mbs66p9ai3zpqq13nhkfl67fj3bi";
+ };
+ };
+
+ go-snappystream = buildGoPackage rec {
+ rev = "97c96e6648e99c2ce4fe7d169aa3f7368204e04d";
+ name = "go-snappystream-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mreiferson/go-snappystream";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mreiferson";
+ repo = "go-snappystream";
+ sha256 = "08ylvx9r6b1fi76v6cqjvny4yqsvcqjfsg93jdrgs7hi4mxvxynn";
+ };
+ propagatedBuildInputs = [ snappy-go ];
+ };
+
+ go-syslog = buildGoPackage rec {
+ rev = "ac3963b72ac367e48b1e68a831e62b93fb69091c";
+ name = "go-syslog-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hashicorp/go-syslog";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hashicorp";
+ repo = "go-syslog";
+ sha256 = "1r9s1gsa4azcs05gx1179ixk7qvrkrik3v92wr4s8gwm00m0gf81";
+ };
+ };
+
+ go-update = buildGoPackage rec {
+ rev = "c1385108bc3a016f1c88b75ea7d2e2a356a1571d";
+ name = "go-update-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/inconshreveable/go-update";
+
+ buildInputs = [ osext binarydist ];
+
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "inconshreveable";
+ repo = "go-update";
+ sha256 = "16zaxa0i07ismxdmkvjj4dpyc9lgp6wa94q090m9a48si40w9sjn";
+ };
+ };
+
+ go-vhost = buildGoPackage rec {
+ rev = "c4c28117502e4bf00960c8282b2d1c51c865fe2c";
+ name = "go-vhost-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/inconshreveable/go-vhost";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "inconshreveable";
+ repo = "go-vhost";
+ sha256 = "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32";
+ };
+ };
+
+ influxdb-go = buildGoPackage rec {
+ rev = "63c9a5f67dcb633d05164bf8442160c9e2e402f7";
+ name = "influxdb-go-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/influxdb/influxdb-go";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "influxdb";
+ repo = "influxdb-go";
+ sha256 = "16in1xhx94pir06aw166inn0hzpb7836xbws16laabs1p2np7bld";
+ };
+ };
+
+ eckardt.influxdb-go = buildGoPackage rec {
+ rev = "8b71952efc257237e077c5d0672e936713bad38f";
+ name = "influxdb-go-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/eckardt/influxdb-go";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "5318c7e1131ba2330c90a1b67855209e41d3c77811b1d212a96525b42d391f6e";
+ };
+ };
+
+ iochan = buildGoPackage rec {
+ rev = "b584a329b193e206025682ae6c10cdbe03b0cd77";
+ name = "iochan-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mitchellh/iochan";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mitchellh";
+ repo = "iochan";
+ sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b";
+ };
+ };
+
+ log4go = buildGoPackage rec {
+ rev = "48";
+ name = "log4go-${rev}";
+ goPackagePath = "code.google.com/p/log4go";
+
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "0q906sxrmwir295virfibqvdzlaj340qh2r4ysx1ccjrjazc0q5p";
+ };
+
+ subPackages = [ "./" ]; # don't build examples
+ };
+
+ logutils = buildGoPackage rec {
+ rev = "8e0820fe7ac5eb2b01626b1d99df47c5449eb2d8";
+ name = "logutils-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hashicorp/logutils";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hashicorp";
+ repo = "logutils";
+ sha256 = "033rbkc066g657r0dnzysigjz2bs4biiz0kmiypd139d34jvslwz";
+ };
+ };
+
+ mapstructure = buildGoPackage rec {
+ rev = "6fb2c832bcac61d01212ab1d172f7a14a8585b07";
+ name = "mapstructure-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/mitchellh/mapstructure";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "mitchellh";
+ repo = "mapstructure";
+ sha256 = "0mx855lwhv0rk461wmbnbzbpkhmq5p2ipmrm5bhzimagrr1w17hw";
+ };
+ };
+
+ mdns = buildGoPackage rec {
+ rev = "70462deb060d44247356ee238ebafd7699ddcffe";
+ name = "mdns-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/armon/mdns";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "armon";
+ repo = "mdns";
+ sha256 = "0xkm3d0hsixdm1yrkx9c39723kfjkb3wvrzrmx3np9ylcwn6h5p5";
+ };
+
+ propagatedBuildInputs = [ dns net ];
+ };
+
+ memberlist = buildGoPackage rec {
+ rev = "17d39b695094be943bfb98442a80b082e6b9ac47";
+ name = "memberlist-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hashicorp/memberlist";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hashicorp";
+ repo = "memberlist";
+ sha256 = "0nvgjnwmfqhv2wvr77d2q5mq1bfw4xbpil6wgyj4fyrmhsfzrv3g";
+ };
+
+ propagatedBuildInputs = [ go-codec armon.go-metrics ];
+ };
+
+ mgo = buildGoPackage rec {
+ rev = "2";
+ name = "mgo-${rev}";
+ goPackagePath = "launchpad.net/mgo";
+ src = fetchbzr {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "0h1dxzyx5c4r4gfnmjxv92hlhjxrgx9p4g53p4fhmz6x2fdglb0x";
+ };
+ };
+
+ mousetrap = buildGoPackage rec {
+ rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
+ name = "mousetrap-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/inconshreveable/mousetrap";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "inconshreveable";
+ repo = "mousetrap";
+ sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
+ };
+ };
+
+ msgpack = buildGoPackage rec {
+ rev = "20c1b88a6c7fc5432037439f4e8c582e236fb205";
+ name = "msgpack-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/vmihailenco/msgpack";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "vmihailenco";
+ repo = "msgpack";
+ sha256 = "1dj5scpfhgnw0yrh0w6jlrb9d03halvsv4l3wgjhazrrimdqf0q0";
+ };
+ };
+
+ oglematchers = buildGoPackage rec {
+ rev = "4fc24f97b5b74022c2a3f4ca7eed57ca29083d3e";
+ name = "oglematchers-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/jacobsa/oglematchers";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "4075ede31601adf8c4e92739693aebffa3718c641dfca75b09cf6b4bd6c26cc0";
+ };
+ #goTestInputs = [ ogletest ];
+ doCheck = false; # infinite recursion
+ };
+
+ oglemock = buildGoPackage rec {
+ rev = "d054ecee522bdce4481690cdeb09d1b4c44da4e1";
+ name = "oglemock-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/jacobsa/oglemock";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "685e7fc4308d118ae25467ba84c64754692a7772c77c197f38d8c1b63ea81da2";
+ };
+ buildInputs = [ oglematchers ];
+ #goTestInputs = [ ogletest ];
+ doCheck = false; # infinite recursion
+ };
+
+ ogletest = buildGoPackage rec {
+ rev = "7de485607c3f215cf92c1f793b5d5a7de46ec3c7";
+ name = "ogletest-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/jacobsa/ogletest";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "0cfc43646d59dcea5772320f968aef2f565fb5c46068d8def412b8f635365361";
+ };
+ buildInputs = [ oglemock oglematchers ];
+ doCheck = false; # check this again
+ };
+
+ osext = buildGoPackage rec {
+ rev = "10";
+ name = "osext-${rev}";
+ goPackagePath = "bitbucket.org/kardianos/osext";
+ src = fetchhg {
+ inherit rev;
+ url = "https://${goPackagePath}";
+ sha256 = "1sj9r5pm28l9sqx6354fwp032n53znx9k8495k3dfnyqjrkvlw6n";
+ };
+ };
+
+ perks = buildGoPackage rec {
+ rev = "aac9e2eab5a334037057336897fd10b0289a5ae8";
+ name = "perks-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/bmizerany/perks";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "bmizerany";
+ repo = "perks";
+ sha256 = "1d027jgc327qz5xmal0hrpqvsj45i9yqmm9pxk3xp3hancvz3l3k";
+ };
+ };
+
+ pflag = buildGoPackage rec {
+ date = "20131112";
+ rev = "94e98a55fb412fcbcfc302555cb990f5e1590627";
+ name = "pflag-${date}-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/spf13/pflag";
+ src = fetchgit {
+ inherit rev;
+ url = "https://${goPackagePath}.git";
+ sha256 = "0z8nzdhj8nrim8fz11magdl0wxnisix9p2kcvn5kkb3bg8wmxhbg";
+ };
+ doCheck = false; # bad import path in tests
+ };
+
+ pretty = buildGoPackage rec {
+ rev = "bc9499caa0f45ee5edb2f0209fbd61fbf3d9018f";
+ name = "pretty-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/kr/pretty";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "kr";
+ repo = "pretty";
+ sha256 = "1m61y592qsnwsqn76v54mm6h2pcvh4wlzbzscc1ag645x0j33vvl";
+ };
+ propagatedBuildInputs = [ kr.text ];
+ };
+
+ pty = buildGoPackage rec {
+ rev = "67e2db24c831afa6c64fc17b4a143390674365ef";
+ name = "pty-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/kr/pty";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "kr";
+ repo = "pty";
+ sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d";
+ };
+ };
+
+ snappy-go = buildGoPackage rec {
+ rev = "14";
+ name = "snappy-go-${rev}";
+ goPackagePath = "code.google.com/p/snappy-go";
+ src = fetchhg {
+ inherit rev;
+ url = "http://code.google.com/p/snappy-go";
+ sha256 = "0ywa52kcii8g2a9lbqcx8ghdf6y56lqq96sl5nl9p6h74rdvmjr7";
+ };
+ };
+
+ stathat = buildGoPackage rec {
+ rev = "01d012b9ee2ecc107cb28b6dd32d9019ed5c1d77";
+ name = "stathat-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/stathat/go";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "stathat";
+ repo = "go";
+ sha256 = "0mrn70wjfcs4rfkmga3hbfqmbjk33skcsc8pyqxp02bzpwdpc4bi";
+ };
+ };
+
+ termbox-go = buildGoPackage rec {
+ rev = "9aecf65084a5754f12d27508fa2e6ed56851953b";
+ name = "termbox-go-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/nsf/termbox-go";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "nsf";
+ repo = "termbox-go";
+ sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh";
+ };
+
+ subPackages = [ "./" ]; # prevent building _demos
+ };
+
+ kr.text = buildGoPackage rec {
+ rev = "6807e777504f54ad073ecef66747de158294b639";
+ name = "kr.text-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/kr/text";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "kr";
+ repo = "text";
+ sha256 = "1wkszsg08zar3wgspl9sc8bdsngiwdqmg3ws4y0bh02sjx5a4698";
+ };
+ propagatedBuildInputs = [ pty ];
+ };
+
+ toml = buildGoPackage rec {
+ rev = "f87ce853111478914f0bcffa34d43a93643e6eda";
+ name = "toml-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/BurntSushi/toml";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "BurntSushi";
+ repo = "toml";
+ sha256 = "0g8203y9ycf34j2q3ymxb8nh4habgwdrjn9vdgrginllx73yq565";
+ };
+ };
+
+ usb = buildGoPackage rec {
+ rev = "69aee4530ac705cec7c5344418d982aaf15cf0b1";
+ name = "usb-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/hanwen/usb";
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "hanwen";
+ repo = "usb";
+ sha256 = "01k0c2g395j65vm1w37mmrfkg6nm900khjrrizzpmx8f8yf20dky";
+ };
+ buildInputs = [ pkgconfig libusb ];
+ };
+
+ websocket = buildGoPackage rec {
+ rev = "f4076986b69612ecb8bc7ce06d742eda6286200d";
+ name = "websocket-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "github.com/gorilla/websocket";
+
+ src = fetchFromGitHub {
+ inherit rev;
+ owner = "gorilla";
+ repo = "websocket";
+ sha256 = "09arvwlxw15maf4z8pcgjc25hd00mckqpdi0byafqfgm3nvvacvq";
+ };
+ };
+
+ yaml-v1 = buildGoPackage rec {
+ rev = "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a";
+ name = "yaml-v1-${stdenv.lib.strings.substring 0 7 rev}";
+ goPackagePath = "gopkg.in/yaml.v1";
+ src = fetchgit {
+ inherit rev;
+ url = "https://github.com/go-yaml/yaml.git";
+ sha256 = "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy";
+ };
+ };
+
+}; in self
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index c17972dbd38..cc936d77608 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -2827,6 +2827,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
vectorBinaryInstances = callPackage ../development/libraries/haskell/vector-binary-instances {};
+ vectorFftw = callPackage ../development/libraries/haskell/vector-fftw {};
+
vectorInstances = callPackage ../development/libraries/haskell/vector-instances {};
vectorSpace = callPackage ../development/libraries/haskell/vector-space {};
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ea0fd0c59c6..e996d35b80e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -227,6 +227,14 @@ let self = _self // overrides; _self = with self; {
};
};
+ ListCompare = buildPerlPackage {
+ name = "List-Compare-1.18";
+ src = fetchurl {
+ url = mirror://cpan/authors/id/J/JK/JKEENAN/List-Compare-0.39.tar.gz;
+ sha256 = "1v4gn176faanzf1kr9axdp1220da7nkvz0d66mnk34nd0skjjxcl";
+ };
+ };
+
ArchiveCpio = buildPerlPackage {
name = "Archive-Cpio-0.09";
src = fetchurl {
@@ -9963,6 +9971,24 @@ let self = _self // overrides; _self = with self; {
};
};
+ Tk = buildPerlPackage rec {
+ name = "Tk-804.032_501";
+ src = fetchurl {
+ url = "http://search.cpan.org/CPAN/authors/id/S/SR/SREZIC/${name}.tar.gz";
+ sha256 = "10fsvyr56gm59chc8b70n6bvhd3lh9c05sp8m4arcahid0rpgbwa";
+ };
+ makeMakerFlags = "X11LIB=${pkgs.xlibs.libX11}/lib";
+ buildInputs = with pkgs; [ xlibs.libX11 libpng ];
+ configurePhase = ''
+ perl Makefile.PL PREFIX=$out $makeMakerFlags
+ '';
+ doCheck = false;
+ meta ={
+ homepage = "http://search.cpan.org/~srezic/Tk-804.032/Tk.pod";
+ license = stdenv.lib.licenses.tcltk;
+ };
+ };
+
TreeDAGNode = buildPerlPackage {
name = "Tree-DAG_Node-1.09";
src = fetchurl {
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index a8fa350e5b5..4259e7d4931 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -492,6 +492,23 @@ let
};
};
+ atomicwrites = buildPythonPackage rec {
+ version = "0.1.0";
+ name = "atomicwrites-${version}";
+
+ src = pkgs.fetchurl {
+ url = "https://pypi.python.org/packages/source/a/atomicwrites/atomicwrites-${version}.tar.gz";
+ sha256 = "1lxz0xhnzihqlvl1h6j2nfxjqqgr4s08196z5phnlcz2s7d5z0mg";
+ };
+
+ meta = {
+ description = "Atomic file writes on POSIX";
+ homepage = https://pypi.python.org/pypi/atomicwrites/0.1.0;
+ maintainers = with maintainers; [ matthiasbeyer ];
+ };
+
+ };
+
argparse = buildPythonPackage (rec {
name = "argparse-1.2.1";
@@ -7200,11 +7217,11 @@ let
pgcli = buildPythonPackage rec {
name = "pgcli-${version}";
- version = "0.14.0";
+ version = "0.15.4";
src = pkgs.fetchurl {
+ sha256 = "1s57krfa5kpn15ma7dcivizgn987j24i6cxrnjf9hnnann0q26cd";
url = "https://pypi.python.org/packages/source/p/pgcli/${name}.tar.gz";
- sha256 = "0x31b3kvybdvd413h6b5iq4b5vv2x30ff1r00gs6ana0xpzzrqxp";
};
propagatedBuildInputs = with self; [ click jedi prompt_toolkit psycopg2 pygments sqlparse ];
@@ -7215,7 +7232,7 @@ let
Rich command-line interface for PostgreSQL with auto-completion and
syntax highlighting.
'';
- homepage = http://pgcli.com/about;
+ homepage = http://pgcli.com;
license = with licenses; [ bsd3 ];
maintainers = with maintainers; [ nckx ];
};
@@ -8955,6 +8972,25 @@ let
};
};
+ requests_toolbelt = buildPythonPackage rec {
+ version = "0.3.0";
+ name = "requests-toolbelt-${version}";
+
+ src = pkgs.fetchurl {
+ url = "https://github.com/sigmavirus24/requests-toolbelt/archive/${version}.tar.gz";
+ sha256 = "177lqpm2czx81pjg0zfs1dkbbmcn5yf1y5qxj23x6y5d28518qwl";
+ };
+
+ propagatedBuildInputs = with self; [ requests2 ];
+
+ meta = {
+ description = "A toolbelt of useful classes and functions to be used with python-requests";
+ homepage = http://toolbelt.rtfd.org;
+ maintainers = with maintainers; [ matthiasbeyer ];
+ };
+
+ };
+
retry_decorator = buildPythonPackage rec {
name = "retry_decorator-1.0.0";
src = pkgs.fetchurl {