diff --git a/doc/release-notes.xml b/doc/release-notes.xml
index 2a1fb9f3109..a50ee877acd 100644
--- a/doc/release-notes.xml
+++ b/doc/release-notes.xml
@@ -446,7 +446,7 @@ xlink:href='http://nixos.org/releases/nix/nix-0.10/'>Nix
stdenv; the formed changes the C compiler, and
the latter adds additional packages to the front of
stdenv’s initial PATH, allowing
- tools to be overriden.
+ tools to be overridden.
For instance, the package strategoxt
doesn’t build with the GNU Make in stdenv
diff --git a/doc/stdenv.xml b/doc/stdenv.xml
index 74eb63b4b49..28e7b7d89f4 100644
--- a/doc/stdenv.xml
+++ b/doc/stdenv.xml
@@ -56,7 +56,7 @@ details.)
Often it is necessary to override or modify some aspect of the
build. To make this easier, the standard environment breaks the
package build into a number of phases, all of
-which can be overriden or modified individually: unpacking the
+which can be overridden or modified individually: unpacking the
sources, applying patches, configuring, building, and installing.
(There are some others; see .)
For instance, a package that doesn’t supply a makefile but instead has
@@ -233,7 +233,7 @@ specific parts of the build (e.g., unpacking the sources or installing
the binaries). Furthermore, it allows a nicer presentation of build
logs in the Nix build farm.
-Each phase can be overriden in its entirety either by setting
+Each phase can be overridden in its entirety either by setting
the environment variable
namePhase to a string
containing some shell commands to be executed, or by redefining the
diff --git a/nixos/doc/manual/configuration.xml b/nixos/doc/manual/configuration.xml
index 803a3393d15..98686a19f1e 100644
--- a/nixos/doc/manual/configuration.xml
+++ b/nixos/doc/manual/configuration.xml
@@ -873,7 +873,7 @@ Any package in Nixpkgs that depends on emacs will
be passed your customised instance. (However, the value
pkgs.emacs in
nixpkgs.config.packageOverrides refers to the
-original rather than overriden instance, to prevent an infinite
+original rather than overridden instance, to prevent an infinite
recursion.)
diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix
index 6d5039e8177..a79a77f40df 100644
--- a/nixos/doc/manual/default.nix
+++ b/nixos/doc/manual/default.nix
@@ -12,11 +12,11 @@ let
declarations = map (fn: stripPrefix fn) opt.declarations;
});
- prefix = toString pkgs.path;
+ prefix = toString ../../..;
stripPrefix = fn:
if substring 0 (stringLength prefix) fn == prefix then
- substring (add (stringLength prefix) 1) 1000 fn
+ substring (stringLength prefix + 1) 1000 fn
else
fn;
diff --git a/nixos/modules/config/i18n.nix b/nixos/modules/config/i18n.nix
index 7a7d713ef68..d3f24e280c7 100644
--- a/nixos/modules/config/i18n.nix
+++ b/nixos/modules/config/i18n.nix
@@ -76,7 +76,7 @@ in
environment.systemPackages = [ glibcLocales ];
- environment.systemVariables =
+ environment.sessionVariables =
{ LANG = config.i18n.defaultLocale;
LOCALE_ARCHIVE = "/run/current-system/sw/lib/locale/locale-archive";
};
diff --git a/nixos/modules/config/shells-environment.nix b/nixos/modules/config/shells-environment.nix
index e3ddf9e3c5f..cc079cdc585 100644
--- a/nixos/modules/config/shells-environment.nix
+++ b/nixos/modules/config/shells-environment.nix
@@ -149,6 +149,12 @@ in
system.build.binsh = pkgs.bashInteractive;
+ # Set session variables in the shell as well. This is usually
+ # unnecessary, but it allows changes to session variables to take
+ # effect without restarting the session (e.g. by opening a new
+ # terminal instead of logging out of X11).
+ environment.variables = config.environment.sessionVariables;
+
environment.etc."shells".text =
''
${concatStringsSep "\n" cfg.shells}
diff --git a/nixos/modules/config/system-environment.nix b/nixos/modules/config/system-environment.nix
index b30c4e06475..3ab32f00fd1 100644
--- a/nixos/modules/config/system-environment.nix
+++ b/nixos/modules/config/system-environment.nix
@@ -14,7 +14,7 @@ in
options = {
- environment.systemVariables = mkOption {
+ environment.sessionVariables = mkOption {
default = {};
description = ''
A set of environment variables used in the global environment.
@@ -48,7 +48,7 @@ in
''
${concatStringsSep "\n" (
(mapAttrsToList (n: v: ''${n}="${concatStringsSep ":" v}"'')
- (zipAttrsWith (const concatLists) ([ (mapAttrs (n: v: [ v ]) cfg.systemVariables) ]))))}
+ (zipAttrsWith (const concatLists) ([ (mapAttrs (n: v: [ v ]) cfg.sessionVariables) ]))))}
'';
};
diff --git a/nixos/modules/config/timezone.nix b/nixos/modules/config/timezone.nix
index 4f7fc9ab262..c8592284077 100644
--- a/nixos/modules/config/timezone.nix
+++ b/nixos/modules/config/timezone.nix
@@ -30,7 +30,7 @@ in
config = {
- environment.systemVariables.TZDIR = "/etc/zoneinfo";
+ environment.sessionVariables.TZDIR = "/etc/zoneinfo";
systemd.globalEnvironment.TZDIR = tzdir;
diff --git a/nixos/modules/config/zram.nix b/nixos/modules/config/zram.nix
new file mode 100644
index 00000000000..22b74847f87
--- /dev/null
+++ b/nixos/modules/config/zram.nix
@@ -0,0 +1,138 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.zramSwap;
+
+ devices = map (nr: "zram${toString nr}") (range 0 (cfg.numDevices - 1));
+
+ modprobe = "${config.system.sbin.modprobe}/sbin/modprobe";
+
+in
+
+{
+
+ ###### interface
+
+ options = {
+
+ zramSwap = {
+
+ enable = mkOption {
+ default = false;
+ type = types.bool;
+ description = ''
+ Enable in-memory compressed swap space provided by the zram kernel
+ module. It is recommended to enable only for kernel 3.14 or higher.
+ '';
+ };
+
+ numDevices = mkOption {
+ default = 4;
+ type = types.int;
+ description = ''
+ Number of zram swap devices to create. It should be equal to the
+ number of CPU cores your system has.
+ '';
+ };
+
+ memoryPercent = mkOption {
+ default = 50;
+ type = types.int;
+ description = ''
+ Maximum amount of memory that can be used by the zram swap devices
+ (as a percentage of your total memory). Defaults to 1/2 of your total
+ RAM.
+ '';
+ };
+
+ priority = mkOption {
+ default = 5;
+ type = types.int;
+ description = ''
+ Priority of the zram swap devices. It should be a number higher than
+ the priority of your disk-based swap devices (so that the system will
+ fill the zram swap devices before falling back to disk swap).
+ '';
+ };
+
+ };
+
+ };
+
+ config = mkIf cfg.enable {
+
+ system.requiredKernelConfig = with config.lib.kernelConfig; [
+ (isModule "ZRAM")
+ ];
+
+ # Disabling this for the moment, as it would create and mkswap devices twice,
+ # once in stage 2 boot, and again when the zram-reloader service starts.
+ # boot.kernelModules = [ "zram" ];
+
+ boot.extraModprobeConfig = ''
+ options zram num_devices=${toString cfg.numDevices}
+ '';
+
+ services.udev.extraRules = ''
+ KERNEL=="zram[0-9]*", ENV{SYSTEMD_WANTS}="zram-init-%k.service", TAG+="systemd"
+ '';
+
+ systemd.services =
+ let
+ createZramInitService = dev:
+ nameValuePair "zram-init-${dev}" {
+ description = "Init swap on zram-based device ${dev}";
+ bindsTo = [ "dev-${dev}.swap" ];
+ after = [ "dev-${dev}.device" "zram-reloader.service" ];
+ requires = [ "dev-${dev}.device" "zram-reloader.service" ];
+ before = [ "dev-${dev}.swap" ];
+ requiredBy = [ "dev-${dev}.swap" ];
+ serviceConfig = {
+ Type = "oneshot";
+ RemainAfterExit = true;
+ ExecStop = "${pkgs.stdenv.shell} -c 'echo 1 > /sys/class/block/${dev}/reset'";
+ };
+ script = ''
+ set -u
+ set -o pipefail
+
+ PATH=${pkgs.procps}/bin:${pkgs.gnugrep}/bin:${pkgs.gnused}/bin
+
+ # Calculate memory to use for zram
+ totalmem=$(free | grep -e "^Mem:" | sed -e 's/^Mem: *//' -e 's/ *.*//')
+ mem=$(((totalmem * ${toString cfg.memoryPercent} / 100 / ${toString cfg.numDevices}) * 1024))
+
+ echo $mem > /sys/class/block/${dev}/disksize
+ ${pkgs.utillinux}/sbin/mkswap /dev/${dev}
+ '';
+ restartIfChanged = false;
+ };
+ in listToAttrs ((map createZramInitService devices) ++ [(nameValuePair "zram-reloader"
+ {
+ description = "Reload zram kernel module when number of devices changes";
+ serviceConfig = {
+ Type = "oneshot";
+ RemainAfterExit = true;
+ ExecStartPre = "${modprobe} -r zram";
+ ExecStart = "${modprobe} zram";
+ ExecStop = "${modprobe} -r zram";
+ };
+ restartTriggers = [ cfg.numDevices ];
+ restartIfChanged = true;
+ })]);
+
+ swapDevices =
+ let
+ useZramSwap = dev:
+ {
+ device = "/dev/${dev}";
+ priority = cfg.priority;
+ };
+ in map useZramSwap devices;
+
+ };
+
+}
diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
index ab058efc709..66a8152a3a6 100644
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -466,7 +466,7 @@ $bootLoaderConfig
# };
# List packages installed in system profile. To search by name, run:
- # $ nix-env -qaP | grep wget
+ # \$ nix-env -qaP | grep wget
# environment.systemPackages = with pkgs; [
# wget
# ];
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index db50a010e7d..f1028a479df 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -133,6 +133,7 @@
spiped = 123;
teamspeak = 124;
influxdb = 125;
+ nsd = 126;
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
@@ -240,6 +241,7 @@
spiped = 123;
teamspeak = 124;
influxdb = 125;
+ nsd = 126;
# When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399!
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index a6e0e018669..f4f1abba4de 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -21,6 +21,7 @@
./config/timezone.nix
./config/unix-odbc-drivers.nix
./config/users-groups.nix
+ ./config/zram.nix
./hardware/all-firmware.nix
./hardware/cpu/intel-microcode.nix
./hardware/cpu/amd-microcode.nix
@@ -206,6 +207,7 @@
./services/networking/networkmanager.nix
./services/networking/ngircd.nix
./services/networking/notbit.nix
+ ./services/networking/nsd.nix
./services/networking/ntopng.nix
./services/networking/ntpd.nix
./services/networking/oidentd.nix
diff --git a/nixos/modules/programs/environment.nix b/nixos/modules/programs/environment.nix
index c26c962b20a..2ff1db48757 100644
--- a/nixos/modules/programs/environment.nix
+++ b/nixos/modules/programs/environment.nix
@@ -23,7 +23,7 @@ in
EDITOR = "nano";
};
- environment.systemVariables =
+ environment.sessionVariables =
{ NIX_PATH =
[ "/nix/var/nix/profiles/per-user/root/channels/nixos"
"nixpkgs=/etc/nixos/nixpkgs"
diff --git a/nixos/modules/security/ca.nix b/nixos/modules/security/ca.nix
index 57764dc870f..dd4b0c529e5 100644
--- a/nixos/modules/security/ca.nix
+++ b/nixos/modules/security/ca.nix
@@ -12,7 +12,7 @@ with lib;
}
];
- environment.systemVariables =
+ environment.sessionVariables =
{ OPENSSL_X509_CERT_FILE = "/etc/ssl/certs/ca-bundle.crt";
CURL_CA_BUNDLE = "/etc/ssl/certs/ca-bundle.crt";
GIT_SSL_CAINFO = "/etc/ssl/certs/ca-bundle.crt";
diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix
index f373657b791..1ebd3c3643d 100644
--- a/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixos/modules/services/misc/nix-daemon.nix
@@ -318,7 +318,7 @@ in
};
# Set up the environment variables for running Nix.
- environment.systemVariables = cfg.envVars;
+ environment.sessionVariables = cfg.envVars;
environment.extraInit =
''
diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix
new file mode 100644
index 00000000000..adfee1caec5
--- /dev/null
+++ b/nixos/modules/services/networking/nsd.nix
@@ -0,0 +1,751 @@
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+ cfg = config.services.nsd;
+
+ username = "nsd";
+ stateDir = "/var/lib/nsd";
+ pidFile = stateDir + "/var/nsd.pid";
+
+ zoneFiles = pkgs.stdenv.mkDerivation {
+ preferLocalBuild = true;
+ name = "nsd-env";
+ buildCommand = concatStringsSep "\n"
+ [ "mkdir -p $out"
+ (concatStrings (mapAttrsToList (zoneName: zoneOptions: ''
+ cat > "$out/${zoneName}" <<_EOF_
+ ${zoneOptions.data}
+ _EOF_
+ '') zoneConfigs))
+ ];
+ };
+
+ configFile = pkgs.writeText "nsd.conf" ''
+ server:
+ username: ${username}
+ chroot: "${stateDir}"
+
+ # The directory for zonefile: files. The daemon chdirs here.
+ zonesdir: "${stateDir}"
+
+ # the list of dynamically added zones.
+ zonelistfile: "${stateDir}/var/zone.list"
+ database: "${stateDir}/var/nsd.db"
+ logfile: "${stateDir}/var/nsd.log"
+ pidfile: "${pidFile}"
+ xfrdfile: "${stateDir}/var/xfrd.state"
+ xfrdir: "${stateDir}/tmp"
+
+ # interfaces
+ ${forEach " ip-address: " cfg.interfaces}
+
+ server-count: ${toString cfg.serverCount}
+ ip-transparent: ${yesOrNo cfg.ipTransparent}
+ do-ip4: ${yesOrNo cfg.ipv4}
+ do-ip6: ${yesOrNo cfg.ipv6}
+ port: ${toString cfg.port}
+ verbosity: ${toString cfg.verbosity}
+ hide-version: ${yesOrNo cfg.hideVersion}
+ identity: "${cfg.identity}"
+ ${maybeString "nsid: " cfg.nsid}
+ tcp-count: ${toString cfg.tcpCount}
+ tcp-query-count: ${toString cfg.tcpQueryCount}
+ tcp-timeout: ${toString cfg.tcpTimeout}
+ ipv4-edns-size: ${toString cfg.ipv4EDNSSize}
+ ipv6-edns-size: ${toString cfg.ipv6EDNSSize}
+ ${if cfg.statistics == null then "" else "statistics: ${toString cfg.statistics}"}
+ xfrd-reload-timeout: ${toString cfg.xfrdReloadTimeout}
+ zonefiles-check: ${yesOrNo cfg.zonefilesCheck}
+
+ rrl-size: ${toString cfg.ratelimit.size}
+ rrl-ratelimit: ${toString cfg.ratelimit.ratelimit}
+ rrl-whitelist-ratelimit: ${toString cfg.ratelimit.whitelistRatelimit}
+ ${maybeString "rrl-slip: " cfg.ratelimit.slip}
+ ${maybeString "rrl-ipv4-prefix-length: " cfg.ratelimit.ipv4PrefixLength}
+ ${maybeString "rrl-ipv6-prefix-length: " cfg.ratelimit.ipv6PrefixLength}
+
+ ${keyConfigFile}
+
+ remote-control:
+ control-enable: ${yesOrNo cfg.remoteControl.enable}
+ ${forEach " control-interface: " cfg.remoteControl.interfaces}
+ control-port: ${toString cfg.port}
+ server-key-file: "${cfg.remoteControl.serverKeyFile}"
+ server-cert-file: "${cfg.remoteControl.serverCertFile}"
+ control-key-file: "${cfg.remoteControl.controlKeyFile}"
+ control-cert-file: "${cfg.remoteControl.controlCertFile}"
+
+ # zone files reside in "${zoneFiles}" linked to "${stateDir}/zones"
+ ${concatStrings (mapAttrsToList zoneConfigFile zoneConfigs)}
+
+ ${cfg.extraConfig}
+ '';
+
+ yesOrNo = b: if b then "yes" else "no";
+ maybeString = pre: s: if s == null then "" else ''${pre} "${s}"'';
+ forEach = pre: l: concatMapStrings (x: pre + x + "\n") l;
+
+
+ keyConfigFile = concatStrings (mapAttrsToList (keyName: keyOptions: ''
+ key:
+ name: "${keyName}"
+ algorithm: "${keyOptions.algorithm}"
+ include: "${stateDir}/private/${keyName}"
+ '') cfg.keys);
+
+ copyKeys = concatStrings (mapAttrsToList (keyName: keyOptions: ''
+ secret=$(cat "${keyOptions.keyFile}")
+ dest="${stateDir}/private/${keyName}"
+ echo " secret: \"$secret\"" > "$dest"
+ ${pkgs.coreutils}/bin/chown ${username}:${username} "$dest"
+ ${pkgs.coreutils}/bin/chmod 0400 "$dest"
+ '') cfg.keys);
+
+
+ zoneConfigFile = name: zone: ''
+ zone:
+ name: "${name}"
+ zonefile: "${stateDir}/zones/${name}"
+ ${maybeString "outgoing-interface: " zone.outgoingInterface}
+ ${forEach " rrl-whitelist: " zone.rrlWhitelist}
+
+ ${forEach " allow-notify: " zone.allowNotify}
+ ${forEach " request-xfr: " zone.requestXFR}
+ allow-axfr-fallback: ${yesOrNo zone.allowAXFRFallback}
+
+ ${forEach " notify: " zone.notify}
+ notify-retry: ${toString zone.notifyRetry}
+ ${forEach " provide-xfr: " zone.provideXFR}
+
+ '';
+
+ zoneConfigs = zoneConfigs' {} "" { children = cfg.zones; };
+
+ zoneConfigs' = parent: name: zone:
+ if !(zone ? children) || zone.children == null || zone.children == { }
+ # leaf -> actual zone
+ then listToAttrs [ (nameValuePair name (parent // zone)) ]
+
+ # fork -> pattern
+ else zipAttrsWith (name: head) (
+ mapAttrsToList (name: child: zoneConfigs' (parent // zone // { children = {}; }) name child)
+ zone.children
+ );
+
+ # fighting infinite recursion
+ zoneOptions = zoneOptionsRaw // childConfig zoneOptions1 true;
+ zoneOptions1 = zoneOptionsRaw // childConfig zoneOptions2 false;
+ zoneOptions2 = zoneOptionsRaw // childConfig zoneOptions3 false;
+ zoneOptions3 = zoneOptionsRaw // childConfig zoneOptions4 false;
+ zoneOptions4 = zoneOptionsRaw // childConfig zoneOptions5 false;
+ zoneOptions5 = zoneOptionsRaw // childConfig zoneOptions6 false;
+ zoneOptions6 = zoneOptionsRaw // childConfig null false;
+
+ childConfig = x: v: { options.children = { type = types.attrsOf x; visible = v; }; };
+
+ zoneOptionsRaw = types.submodule (
+ { options, ... }:
+ { options = {
+ children = mkOption {
+ default = {};
+ description = ''
+ Children zones inherit all options of their parents. Attributes
+ defined in a child will overwrite the ones of its parent. Only
+ leaf zones will be actually served. This way it's possible to
+ define maybe zones which share most attributes without
+ duplicating everything. This mechanism replaces nsd's patterns
+ in a save and functional way.
+ '';
+ };
+
+ allowNotify = mkOption {
+ type = types.listOf types.str;
+ default = [ ];
+ example = [ "192.0.2.0/24 NOKEY" "10.0.0.1-10.0.0.5 my_tsig_key_name"
+ "10.0.3.4&255.255.0.0 BLOCKED"
+ ];
+ description = ''
+ Listed primary servers are allowed to notify this secondary server.
+
+
+ either a plain IPv4/IPv6 address or range. Valid patters for ranges:
+ * 10.0.0.0/24 # via subnet size
+ * 10.0.0.0&255.255.255.0 # via subnet mask
+ * 10.0.0.1-10.0.0.254 # via range
+
+ A optional port number could be added with a '@':
+ * 2001:1234::1@1234
+
+
+ * will use the specified TSIG key
+ * NOKEY no TSIG signature is required
+ * BLOCKED notifies from non-listed or blocked IPs will be ignored
+ * ]]>
+ '';
+ };
+
+ requestXFR = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [];
+ description = ''
+ Format: [AXFR|UDP] <ip-address> <key-name | NOKEY>
+ '';
+ };
+
+ allowAXFRFallback = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ If NSD as secondary server should be allowed to AXFR if the primary
+ server does not allow IXFR.
+ '';
+ };
+
+ notify = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [ "10.0.0.1@3721 my_key" "::5 NOKEY" ];
+ description = ''
+ This primary server will notify all given secondary servers about
+ zone changes.
+
+
+ a plain IPv4/IPv6 address with on optional port number (ip@port)
+
+
+ * sign notifies with the specified key
+ * NOKEY don't sign notifies
+ ]]>
+ '';
+ };
+
+ notifyRetry = mkOption {
+ type = types.int;
+ default = 5;
+ description = ''
+ Specifies the number of retries for failed notifies. Set this along with notify.
+ '';
+ };
+
+ provideXFR = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ example = [ "192.0.2.0/24 NOKEY" "192.0.2.0/24 my_tsig_key_name" ];
+ description = ''
+ Allow these IPs and TSIG to transfer zones, addr TSIG|NOKEY|BLOCKED
+ address range 192.0.2.0/24, 1.2.3.4&255.255.0.0, 3.0.2.20-3.0.2.40
+ '';
+ };
+
+ outgoingInterface = mkOption {
+ type = types.nullOr types.str;
+ default = null;
+ example = "2000::1@1234";
+ description = ''
+ This address will be used for zone-transfere requests if configured
+ as a secondary server or notifications in case of a primary server.
+ Supply either a plain IPv4 or IPv6 address with an optional port
+ number (ip@port).
+ '';
+ };
+
+ rrlWhitelist = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ description = ''
+ Whitelists the given rrl-types.
+ The RRL classification types are: nxdomain, error, referral, any,
+ rrsig, wildcard, nodata, dnskey, positive, all
+ '';
+ };
+
+ data = mkOption {
+ type = types.str;
+ default = "";
+ example = "";
+ description = ''
+ The actual zone data. This is the content of your zone file.
+ Use imports or pkgs.lib.readFile if you don't want this data in your config file.
+ '';
+ };
+
+ };
+ }
+ );
+
+in
+{
+ options = {
+ services.nsd = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to enable the NSD authoritative domain name server.
+ '';
+ };
+
+ rootServer = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Wheter if this server will be a root server (a DNS root server, you
+ usually don't want that).
+ '';
+ };
+
+ interfaces = mkOption {
+ type = types.listOf types.str;
+ default = [ "127.0.0.0" "::1" ];
+ description = ''
+ What addresses the server should listen to.
+ '';
+ };
+
+ serverCount = mkOption {
+ type = types.int;
+ default = 1;
+ description = ''
+ Number of NSD servers to fork. Put the number of CPUs to use here.
+ '';
+ };
+
+ ipTransparent = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Allow binding to non local addresses.
+ '';
+ };
+
+ ipv4 = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Wheter to listen on IPv4 connections.
+ '';
+ };
+
+ ipv6 = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Wheter to listen on IPv6 connections.
+ '';
+ };
+
+ port = mkOption {
+ type = types.int;
+ default = 53;
+ description = ''
+ Port the service should bind do.
+ '';
+ };
+
+ verbosity = mkOption {
+ type = types.int;
+ default = 0;
+ description = ''
+ Verbosity level.
+ '';
+ };
+
+ hideVersion = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Wheter NSD should answer VERSION.BIND and VERSION.SERVER CHAOS class queries.
+ '';
+ };
+
+ identity = mkOption {
+ type = types.str;
+ default = "unidentified server";
+ description = ''
+ Identify the server (CH TXT ID.SERVER entry).
+ '';
+ };
+
+ nsid = mkOption {
+ type = types.nullOr types.str;
+ default = null;
+ description = ''
+ NSID identity (hex string, or "ascii_somestring").
+ '';
+ };
+
+ tcpCount = mkOption {
+ type = types.int;
+ default = 100;
+ description = ''
+ Maximum number of concurrent TCP connections per server.
+ '';
+ };
+
+ tcpQueryCount = mkOption {
+ type = types.int;
+ default = 0;
+ description = ''
+ Maximum number of queries served on a single TCP connection.
+ 0 means no maximum.
+ '';
+ };
+
+ tcpTimeout = mkOption {
+ type = types.int;
+ default = 120;
+ description = ''
+ TCP timeout in seconds.
+ '';
+ };
+
+ ipv4EDNSSize = mkOption {
+ type = types.int;
+ default = 4096;
+ description = ''
+ Preferred EDNS buffer size for IPv4.
+ '';
+ };
+
+ ipv6EDNSSize = mkOption {
+ type = types.int;
+ default = 4096;
+ description = ''
+ Preferred EDNS buffer size for IPv6.
+ '';
+ };
+
+ statistics = mkOption {
+ type = types.nullOr types.int;
+ default = null;
+ description = ''
+ Statistics are produced every number of seconds. Prints to log.
+ If null no statistics are logged.
+ '';
+ };
+
+ xfrdReloadTimeout = mkOption {
+ type = types.int;
+ default = 1;
+ description = ''
+ Number of seconds between reloads triggered by xfrd.
+ '';
+ };
+
+ zonefilesCheck = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Wheter to check mtime of all zone files on start and sighup.
+ '';
+ };
+
+
+ extraConfig = mkOption {
+ type = types.str;
+ default = "";
+ description = ''
+ Extra nsd config.
+ '';
+ };
+
+
+ ratelimit = mkOption {
+ type = types.submodule (
+ { options, ... }:
+ { options = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Enable ratelimit capabilities.
+ '';
+ };
+
+ size = mkOption {
+ type = types.int;
+ default = 1000000;
+ description = ''
+ Size of the hashtable. More buckets use more memory but lower
+ the chance of hash hash collisions.
+ '';
+ };
+
+ ratelimit = mkOption {
+ type = types.int;
+ default = 200;
+ description = ''
+ Max qps allowed from any query source.
+ 0 means unlimited. With an verbosity of 2 blocked and
+ unblocked subnets will be logged.
+ '';
+ };
+
+ whitelistRatelimit = mkOption {
+ type = types.int;
+ default = 2000;
+ description = ''
+ Max qps allowed from whitelisted sources.
+ 0 means unlimited. Set the rrl-whitelist option for specific
+ queries to apply this limit instead of the default to them.
+ '';
+ };
+
+ slip = mkOption {
+ type = types.nullOr types.int;
+ default = null;
+ description = ''
+ Number of packets that get discarded before replying a SLIP response.
+ 0 disables SLIP responses. 1 will make every response a SLIP response.
+ '';
+ };
+
+ ipv4PrefixLength = mkOption {
+ type = types.nullOr types.int;
+ default = null;
+ description = ''
+ IPv4 prefix length. Addresses are grouped by netblock.
+ '';
+ };
+
+ ipv6PrefixLength = mkOption {
+ type = types.nullOr types.int;
+ default = null;
+ description = ''
+ IPv6 prefix length. Addresses are grouped by netblock.
+ '';
+ };
+
+ };
+ });
+ default = {
+ };
+ example = {};
+ description = ''
+ '';
+ };
+
+
+ remoteControl = mkOption {
+ type = types.submodule (
+ { config, options, ... }:
+ { options = {
+
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Wheter to enable remote control via nsd-control(8).
+ '';
+ };
+
+ interfaces = mkOption {
+ type = types.listOf types.str;
+ default = [ "127.0.0.1" "::1" ];
+ description = ''
+ Which interfaces NSD should bind to for remote control.
+ '';
+ };
+
+ port = mkOption {
+ type = types.int;
+ default = 8952;
+ description = ''
+ Port number for remote control operations (uses TLS over TCP).
+ '';
+ };
+
+ serverKeyFile = mkOption {
+ type = types.path;
+ default = "/etc/nsd/nsd_server.key";
+ description = ''
+ Path to the server private key, which is used by the server
+ but not by nsd-control. This file is generated by nsd-control-setup.
+ '';
+ };
+
+ serverCertFile = mkOption {
+ type = types.path;
+ default = "/etc/nsd/nsd_server.pem";
+ description = ''
+ Path to the server self signed certificate, which is used by the server
+ but and by nsd-control. This file is generated by nsd-control-setup.
+ '';
+ };
+
+ controlKeyFile = mkOption {
+ type = types.path;
+ default = "/etc/nsd/nsd_control.key";
+ description = ''
+ Path to the client private key, which is used by nsd-control
+ but not by the server. This file is generated by nsd-control-setup.
+ '';
+ };
+
+ controlCertFile = mkOption {
+ type = types.path;
+ default = "/etc/nsd/nsd_control.pem";
+ description = ''
+ Path to the client certificate signed with the server certificate.
+ This file is used by nsd-control and generated by nsd-control-setup.
+ '';
+ };
+
+ };
+
+ });
+ default = {
+ };
+ example = {};
+ description = ''
+ '';
+ };
+
+
+ keys = mkOption {
+ type = types.attrsOf (types.submodule (
+ { options, ... }:
+ { options = {
+
+ algorithm = mkOption {
+ type = types.str;
+ default = "hmac-sha256";
+ description = ''
+ Authentication algorithm for this key.
+ '';
+ };
+
+ keyFile = mkOption {
+ type = types.path;
+ description = ''
+ Path to the file which contains the actual base64 encoded
+ key. The key will be copied into "${stateDir}/private" before
+ NSD starts. The copied file is only accessibly by the NSD
+ user.
+ '';
+ };
+
+ };
+ }));
+ default = {
+ };
+ example = {
+ "tsig.example.org" = {
+ algorithm = "hmac-md5";
+ secret = "aaaaaabbbbbbccccccdddddd";
+ };
+ };
+ description = ''
+ Define your TSIG keys here.
+ '';
+ };
+
+ zones = mkOption {
+ type = types.attrsOf zoneOptions;
+ default = {};
+ example = {
+ "serverGroup1" = {
+ provideXFR = [ "10.1.2.3 NOKEY" ];
+ children = {
+ "example.com." = {
+ data = ''
+ $ORIGIN example.com.
+ $TTL 86400
+ @ IN SOA a.ns.example.com. admin.example.com. (
+ ...
+ '';
+ };
+ "example.org." = {
+ data = ''
+ $ORIGIN example.org.
+ $TTL 86400
+ @ IN SOA a.ns.example.com. admin.example.com. (
+ ...
+ '';
+ };
+ };
+ };
+
+ "example.net." = {
+ provideXFR = [ "10.3.2.1 NOKEY" ];
+ data = ''...'';
+ };
+ };
+ description = ''
+ Define your zones here. Zones can cascade other zones and therefore
+ inherit settings from parent zones. Look at the definition of
+ children to learn about inheritance and child zones.
+ The given example will define 3 zones (example.(com|org|net).). Both
+ example.com. and example.org. inherit their configuration from
+ serverGroup1.
+ '';
+ };
+
+ };
+ };
+
+ config = mkIf cfg.enable {
+
+ # this is not working :(
+ nixpkgs.config.nsd = {
+ ipv6 = cfg.ipv6;
+ ratelimit = cfg.ratelimit.enable;
+ rootServer = cfg.rootServer;
+ };
+
+ users.extraGroups = singleton {
+ name = username;
+ gid = config.ids.gids.nsd;
+ };
+
+ users.extraUsers = singleton {
+ name = username;
+ description = "NSD service user";
+ home = stateDir;
+ createHome = true;
+ uid = config.ids.uids.nsd;
+ group = username;
+ };
+
+ systemd.services.nsd = {
+ description = "NSD authoritative only domain name service";
+ wantedBy = [ "multi-user.target" ];
+ after = [ "network.target" ];
+
+ serviceConfig = {
+ Type = "forking";
+ PIDFile = pidFile;
+ Restart = "always";
+ ExecStart = "${pkgs.nsd}/sbin/nsd -c ${configFile}";
+ };
+
+ preStart = ''
+ ${pkgs.coreutils}/bin/mkdir -m 0700 -p "${stateDir}/private"
+ ${pkgs.coreutils}/bin/mkdir -m 0700 -p "${stateDir}/tmp"
+ ${pkgs.coreutils}/bin/mkdir -m 0700 -p "${stateDir}/var"
+
+ ${pkgs.coreutils}/bin/touch "${stateDir}/don't touch anything in here"
+
+ ${pkgs.coreutils}/bin/rm -f "${stateDir}/private/"*
+ ${pkgs.coreutils}/bin/rm -f "${stateDir}/tmp/"*
+
+ ${pkgs.coreutils}/bin/chown nsd:nsd -R "${stateDir}/private"
+ ${pkgs.coreutils}/bin/chown nsd:nsd -R "${stateDir}/tmp"
+ ${pkgs.coreutils}/bin/chown nsd:nsd -R "${stateDir}/var"
+
+ ${pkgs.coreutils}/bin/rm -rf "${stateDir}/zones"
+ ${pkgs.coreutils}/bin/cp -r "${zoneFiles}" "${stateDir}/zones"
+
+ ${copyKeys}
+ '';
+ };
+
+ };
+}
diff --git a/nixos/modules/services/search/elasticsearch.nix b/nixos/modules/services/search/elasticsearch.nix
index b7a3566f95d..0d604850d42 100644
--- a/nixos/modules/services/search/elasticsearch.nix
+++ b/nixos/modules/services/search/elasticsearch.nix
@@ -104,8 +104,9 @@ in {
after = [ "network-interfaces.target" ];
environment = { ES_HOME = cfg.dataDir; };
serviceConfig = {
- ExecStart = "${pkgs.elasticsearch}/bin/elasticsearch -f -Des.path.conf=${configDir}";
+ ExecStart = "${pkgs.elasticsearch}/bin/elasticsearch -Des.path.conf=${configDir}";
User = "elasticsearch";
+ PermissionsStartOnly = true;
};
preStart = ''
mkdir -m 0700 -p ${cfg.dataDir}
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 9cc8b154324..991f9f26145 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -183,6 +183,15 @@ in
'';
};
+ networking.search = mkOption {
+ default = [];
+ example = [ "example.com" "local.domain" ];
+ type = types.listOf types.str;
+ description = ''
+ The list of search paths used when resolving domain names.
+ '';
+ };
+
networking.domain = mkOption {
default = "";
example = "home";
@@ -424,6 +433,7 @@ in
${optionalString (cfg.nameservers != [] && cfg.domain != "") ''
domain ${cfg.domain}
''}
+ ${optionalString (cfg.search != []) ("search " + concatStringsSep " " cfg.search)}
${flip concatMapStrings cfg.nameservers (ns: ''
nameserver ${ns}
'')}
diff --git a/nixos/tests/misc.nix b/nixos/tests/misc.nix
index e33581b4d2d..8caef146ec8 100644
--- a/nixos/tests/misc.nix
+++ b/nixos/tests/misc.nix
@@ -98,6 +98,10 @@ import ./make-test.nix {
$machine->succeed("touch /tmp2/x");
$machine->succeed("grep '/tmp2 tmpfs' /proc/mounts");
};
+
+ subtest "shell-vars", sub {
+ $machine->succeed('[ -n "$NIX_PATH" ]');
+ };
'';
}
diff --git a/pkgs/applications/audio/xmp/default.nix b/pkgs/applications/audio/xmp/default.nix
new file mode 100644
index 00000000000..7f21d389cf5
--- /dev/null
+++ b/pkgs/applications/audio/xmp/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, alsaLib, libxmp }:
+
+stdenv.mkDerivation rec {
+ name = "xmp-4.0.7";
+
+ meta = with stdenv.lib; {
+ description = "Extended module player";
+ homepage = "http://xmp.sourceforge.net/";
+ license = licenses.gpl2Plus;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ iyzsong ];
+ };
+
+ src = fetchurl {
+ url = "mirror://sourceforge/xmp/xmp/${name}.tar.gz";
+ sha256 = "0qgzzaxhshz5l7s21x89xb43pbbi0zap6a4lk4s7gjp1qca2agcw";
+ };
+
+ buildInputs = [ pkgconfig alsaLib libxmp ];
+}
diff --git a/pkgs/applications/editors/emacs-modes/org/default.nix b/pkgs/applications/editors/emacs-modes/org/default.nix
index 9af7c24e800..768444008ad 100644
--- a/pkgs/applications/editors/emacs-modes/org/default.nix
+++ b/pkgs/applications/editors/emacs-modes/org/default.nix
@@ -1,11 +1,11 @@
{ fetchurl, stdenv, emacs, texinfo, which, texLive }:
stdenv.mkDerivation rec {
- name = "org-8.2.6";
+ name = "org-8.2.7";
src = fetchurl {
url = "http://orgmode.org/${name}.tar.gz";
- sha256 = "0f196r0n9m2np123sjabsqdw68h9qp6qr7l5v257am8qs7rj0jm1";
+ sha256 = "1n864hnjvx5n2gfi7n0xbwvb1k8l5rdh4a3vpbhw23hy8rx3bvaw";
};
buildInputs = [ emacs ];
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
license = "GPLv3+";
- maintainers = with stdenv.lib.maintainers; [ chaoflow ];
+ maintainers = with stdenv.lib.maintainers; [ chaoflow pSub ];
platforms = stdenv.lib.platforms.gnu;
};
}
diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix
index c7582fd6c33..da683888063 100644
--- a/pkgs/applications/graphics/dia/default.nix
+++ b/pkgs/applications/graphics/dia/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurlGnome, gtk, pkgconfig, perl, perlXMLParser, libxml2, gettext
+{stdenv, fetchurl, fetchurlGnome, gtk, pkgconfig, perl, perlXMLParser, libxml2, gettext
, python, libxml2Python, docbook5, docbook_xsl, libxslt, intltool, libart_lgpl
, withGNOME ? false, libgnomeui }:
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
sha256 = "1qgawm7rrf4wd1yc0fp39ywv8gbz4ry1s16k00dzg5w6p67lfqd7";
};
+ correctPersistence = fetchurl {
+ url = https://launchpadlibrarian.net/132677658/persistence;
+ sha256 = "1rv6zv9i03bna4bdp1wzn72lg7kdwi900y1izdq0imibi54nxjsk";
+ };
+
buildInputs =
[ gtk perlXMLParser libxml2 gettext python libxml2Python docbook5
libxslt docbook_xsl libart_lgpl
@@ -24,7 +29,17 @@ stdenv.mkDerivation rec {
# This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
# It have no reasons to exist in a redistribuable package
- postInstall = "rm $out/share/icons/hicolor/icon-theme.cache";
+ postInstall = ''
+ rm $out/share/icons/hicolor/icon-theme.cache
+
+ cd "$out"/bin/
+ mv dia .dia-wrapped
+ echo '#! ${stdenv.shell}' >> dia
+ echo 'test -f "$HOME/.dia/persistence" || cp ${correctPersistence} "$HOME/.dia/persistence" ' >> dia
+ echo 'chmod u+rw "$HOME/.dia/persistence" ' >> dia
+ echo "\"$out/bin/"'.dia-wrapped" "$@"' >> dia
+ chmod a+x dia
+ '';
meta = {
description = "Gnome Diagram drawing software";
diff --git a/pkgs/applications/graphics/qiv/default.nix b/pkgs/applications/graphics/qiv/default.nix
index df18c6d1520..86891f2cb93 100644
--- a/pkgs/applications/graphics/qiv/default.nix
+++ b/pkgs/applications/graphics/qiv/default.nix
@@ -1,14 +1,15 @@
-{ stdenv, fetchurl, pkgconfig, gtk, imlib2, file } :
+{ stdenv, fetchurl, pkgconfig, gtk, imlib2, file, lcms2, libexif } :
stdenv.mkDerivation (rec {
- name = "qiv-2.2.4";
+ version = "2.3.1";
+ name = "qiv-${version}";
src = fetchurl {
url = "http://spiegl.de/qiv/download/${name}.tgz";
- sha256 = "ed6078dc550c1dc2fe35c1e0f46463c13589a24b83d4f7101b71a7485e51abb7";
+ sha256 = "1rlf5h67vhj7n1y7jqkm9k115nfnzpwngj3kzqsi2lg676srclv7";
};
- buildInputs = [ pkgconfig gtk imlib2 file ];
+ buildInputs = [ pkgconfig gtk imlib2 file lcms2 libexif ];
preBuild=''
substituteInPlace Makefile --replace /usr/local "$out"
@@ -18,5 +19,6 @@ stdenv.mkDerivation (rec {
meta = {
description = "qiv (quick image viewer)";
homepage = http://spiegl.de/qiv/;
+ inherit version;
};
})
diff --git a/pkgs/applications/graphics/qiv/default.upstream b/pkgs/applications/graphics/qiv/default.upstream
new file mode 100644
index 00000000000..e6c7ef2408e
--- /dev/null
+++ b/pkgs/applications/graphics/qiv/default.upstream
@@ -0,0 +1,3 @@
+url http://spiegl.de/qiv/download/
+version_link '[.]tgz$'
+do_overwrite() { do_overwrite_just_version; }
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index c2d8e7979e4..6c25a67147a 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
- name = "calibre-1.31.0";
+ name = "calibre-1.35.0";
src = fetchurl {
url = "mirror://sourceforge/calibre/${name}.tar.xz";
- sha256 = "1fl42y8ppw8s51v66dqsrg1ib28yi6z5779r9wfvdbl9v1clilfc";
+ sha256 = "0pzxp1f9d4pw7vksdfkdz6fdgrb8jfwgh4fckjfrarqs039422bi";
};
inherit python;
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index ebf3d52ea61..a56460827f5 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -1,11 +1,12 @@
{ stdenv, fetchurl, fetchpatch, pkgconfig, zlib, freetype, libjpeg, jbig2dec, openjpeg
, libX11, libXext }:
stdenv.mkDerivation rec {
- name = "mupdf-1.4";
+ version = "1.5";
+ name = "mupdf-${version}";
src = fetchurl {
url = "http://mupdf.com/download/archive/${name}-source.tar.gz";
- sha256 = "08pc6fv42sb9k9dzjs8ph32nixzrzmr08yxh7arkpsdm42asp2q1";
+ sha256 = "0sl47zqf4c9fhs4h5zg046vixjmwgy4vhljhr5g4md733nash7z4";
};
buildInputs = [ pkgconfig zlib freetype libjpeg jbig2dec openjpeg libX11 libXext ];
@@ -67,5 +68,6 @@ stdenv.mkDerivation rec {
license = "GPLv3+";
maintainers = with stdenv.lib.maintainers; [ viric ];
platforms = with stdenv.lib.platforms; linux;
+ inherit version;
};
}
diff --git a/pkgs/applications/misc/mupdf/default.upstream b/pkgs/applications/misc/mupdf/default.upstream
new file mode 100644
index 00000000000..07cafdb0c2a
--- /dev/null
+++ b/pkgs/applications/misc/mupdf/default.upstream
@@ -0,0 +1,7 @@
+url http://mupdf.com/downloads/archive/
+do_overwrite(){
+ ensure_hash
+ ensure_version
+ set_var_value version $CURRENT_VERSION
+ set_var_value sha256 $CURRENT_HASH
+}
diff --git a/pkgs/applications/misc/sweethome3d/default.nix b/pkgs/applications/misc/sweethome3d/default.nix
new file mode 100644
index 00000000000..ab7a8240ebf
--- /dev/null
+++ b/pkgs/applications/misc/sweethome3d/default.nix
@@ -0,0 +1,66 @@
+{ stdenv, fetchurl, fetchcvs, makeWrapper, makeDesktopItem, jdk, jre, ant
+, p7zip }:
+
+let
+
+ mkSweetHome3D =
+ { name, module, version, src, license, description }:
+
+ stdenv.mkDerivation rec {
+ inherit name version src description;
+ exec = stdenv.lib.toLower module;
+ sweethome3dItem = makeDesktopItem {
+ inherit name exec;
+ comment = description;
+ desktopName = name;
+ genericName = "Computer Aided (Interior) Design";
+ categories = "Application;CAD;";
+ };
+
+ buildInputs = [ ant jdk jre makeWrapper p7zip ];
+
+ buildPhase = ''
+ ant furniture textures help
+ mkdir -p $out/share/{java,applications}
+ mv build/*.jar $out/share/java/.
+ ant
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp install/${module}-${version}.jar $out/share/java/.
+ cp ${sweethome3dItem}/share/applications/* $out/share/applications
+ makeWrapper ${jre}/bin/java $out/bin/$exec \
+ --add-flags "-jar $out/share/java/${module}-${version}.jar -cp $out/share/java/Furniture.jar:$out/share/java/Textures.jar:$out/share/java/Help.jar ${if stdenv.system == "x86_64-linux" then "-d64" else "-d32"}"
+ '';
+
+ dontStrip = true;
+
+ meta = {
+ homepage = "http://www.sweethome3d.com/index.jsp";
+ inherit description;
+ inherit license;
+ maintainers = [ stdenv.lib.maintainers.edwtjo ];
+ platforms = stdenv.lib.platforms.linux;
+ };
+ };
+
+ d2u = stdenv.lib.replaceChars ["."] ["_"];
+
+in rec {
+
+ application = mkSweetHome3D rec {
+ version = "4.3.1";
+ module = "SweetHome3D";
+ name = stdenv.lib.toLower module + "-application-" + version;
+ description = "Design and visualize your future home";
+ license = stdenv.lib.licenses.gpl2Plus;
+ src = fetchcvs {
+ cvsRoot = ":pserver:anonymous@sweethome3d.cvs.sourceforge.net:/cvsroot/sweethome3d";
+ sha256 = "0jn3xamghz8rsmzvpd57cvz32yk8mni8dyx15xizjcki0450bp3f";
+ module = module;
+ tag = "V_" + d2u version;
+ };
+ };
+
+}
diff --git a/pkgs/applications/misc/sweethome3d/editors.nix b/pkgs/applications/misc/sweethome3d/editors.nix
new file mode 100644
index 00000000000..9eca1df59f5
--- /dev/null
+++ b/pkgs/applications/misc/sweethome3d/editors.nix
@@ -0,0 +1,90 @@
+{ stdenv, fetchurl, fetchcvs, makeWrapper, makeDesktopItem, jdk, jre, ant
+, p7zip, sweethome3dApp }:
+
+let
+
+ sweetExec = with stdenv.lib;
+ m: "sweethome3d-"
+ + removeSuffix "libraryeditor" (toLower m)
+ + "-editor";
+ sweetName = m: v: sweetExec m + "-" + v;
+
+ mkEditorProject =
+ { name, module, version, src, license, description }:
+
+ stdenv.mkDerivation rec {
+ application = sweethome3dApp;
+ inherit name module version src description;
+ exec = sweetExec module;
+ editorItem = makeDesktopItem {
+ inherit name exec;
+ comment = description;
+ desktopName = name;
+ genericName = "Computer Aided (Interior) Design";
+ categories = "Application;CAD;";
+ };
+
+ buildInputs = [ ant jre jdk makeWrapper ];
+
+ patchPhase = ''
+ sed -i -e 's,../SweetHome3D,${application.src},g' build.xml
+ '';
+
+ buildPhase = ''
+ ant -lib ${application.src}/libtest -lib ${application.src}/lib -lib ${jdk}/lib
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ mkdir -p $out/share/{java,applications}
+ cp ${module}-${version}.jar $out/share/java/.
+ cp ${editorItem}/share/applications/* $out/share/applications
+ makeWrapper ${jre}/bin/java $out/bin/$exec \
+ --add-flags "-jar $out/share/java/${module}-${version}.jar ${if stdenv.system == "x86_64-linux" then "-d64" else "-d32"}"
+ '';
+
+ dontStrip = true;
+
+ meta = {
+ homepage = "http://www.sweethome3d.com/index.jsp";
+ inherit description;
+ inherit license;
+ maintainers = [ stdenv.lib.maintainers.edwtjo ];
+ platforms = stdenv.lib.platforms.linux;
+ };
+
+ };
+
+ d2u = stdenv.lib.replaceChars ["."] ["_"];
+
+in rec {
+
+ textures-editor = mkEditorProject rec {
+ version = "1.3";
+ module = "TexturesLibraryEditor";
+ name = sweetName module version;
+ description = "Easily create SH3T files and edit the properties of the texture images it contain";
+ license = stdenv.lib.licenses.gpl2Plus;
+ src = fetchcvs {
+ cvsRoot = ":pserver:anonymous@sweethome3d.cvs.sourceforge.net:/cvsroot/sweethome3d";
+ sha256 = "1caf1hmf87bj5dr7w2swnlbvkb3q1jdjr1zgjn1k07d0fxh0ikbx";
+ module = module;
+ tag = "V_" + d2u version;
+ };
+ };
+
+ furniture-editor = mkEditorProject rec {
+ version = "1.13";
+ module = "FurnitureLibraryEditor";
+ name = sweetName module version;
+ description = "Quickly create SH3F files and edit the properties of the 3D models it contain";
+ license = stdenv.lib.licenses.gpl2;
+ src = fetchcvs {
+ cvsRoot = ":pserver:anonymous@sweethome3d.cvs.sourceforge.net:/cvsroot/sweethome3d";
+ sha256 = "1nll5589rc0g71zd86cwmzl4p2icynykj106schmxric9v17jbv5";
+ module = module;
+ tag = "V_" + d2u version;
+ };
+ };
+
+}
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 210ed2bf1d1..1e2c3e2cfb1 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -17,14 +17,14 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
rec {
- firefoxVersion = "29.0.1";
+ firefoxVersion = "30.0";
- xulVersion = "29.0.1"; # this attribute is used by other packages
+ xulVersion = "30.0"; # this attribute is used by other packages
src = fetchurl {
url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2";
- sha1 = "2819ef63403de2bcfff5496bd21a3b8cb5dfce82";
+ sha1 = "bll9hxf31gvg9db6gxgmq25qsjif3p11";
};
commonConfigureFlags =
diff --git a/pkgs/applications/science/math/sloane/default.nix b/pkgs/applications/science/math/sloane/default.nix
index 2e7768e2d95..a2462e8eefe 100644
--- a/pkgs/applications/science/math/sloane/default.nix
+++ b/pkgs/applications/science/math/sloane/default.nix
@@ -1,15 +1,15 @@
-{ cabal, ansiTerminal, cmdargs, filepath, HTTP, network
+{ cabal, ansiTerminal, filepath, HTTP, network, optparseApplicative
, stringsearch, terminalSize, time, zlib
}:
cabal.mkDerivation (self: {
pname = "sloane";
- version = "1.7.1";
- sha256 = "0d6k33rhp1ixrwdfwy31m39kbk8z81biwzwmkp01fvpgwm96p3va";
+ version = "1.8";
+ sha256 = "0c30slsswfqwzi39hk6jraxz1y1a2yn8g8nyjvlnggwajx2rlm6p";
isLibrary = false;
isExecutable = true;
buildDepends = [
- ansiTerminal cmdargs filepath HTTP network stringsearch
+ ansiTerminal filepath HTTP network optparseApplicative stringsearch
terminalSize time zlib
];
postInstall = ''
diff --git a/pkgs/build-support/setup-hooks/scatter_output.sh b/pkgs/build-support/setup-hooks/scatter_output.sh
new file mode 100644
index 00000000000..f2a501c55e4
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/scatter_output.sh
@@ -0,0 +1,56 @@
+preFixupPhases+=" scatter_files"
+preDistPhases+=" propagate_bin_input"
+
+SCATTER_BIN_DEFAULT=${SCATTER_BIN_DEFAULT:-"/lib/*.so* /bin/*"}
+SCATTER_DOC_DEFAULT=${SCATTER_DOC_DEFAULT:-"/share/man/* /share/doc/*"}
+
+
+scatter_files() {
+ save_nullglob=$(shopt -p nullglob)
+ for o in $outputs; do
+ [[ "$o" == "out" ]] && continue
+ v=files_${o}
+
+ #if files_'output' isn't set in derivative, use defualts for some
+ [[ ${!v} ]] || {
+ case $o in
+ bin)
+ v=SCATTER_BIN_DEFAULT
+ ;;
+ doc)
+ v=SCATTER_DOC_DEFAULT
+ ;;
+ *)
+ continue
+ ;;
+ esac
+ }
+
+ # prepend each path with $out
+ paths=$out${!v// \// $out/}
+ shopt -s nullglob
+ for f in $paths; do
+ shopt -u nullglob
+ dist=${!o}${f#$out}
+ mkdir -p $(dirname $dist)
+ cp -pr $f $dist
+ # remove source, not forgetting to clean empty dirs
+ rm -r $f
+ rmdir --ignore-fail-on-non-empty $(dirname $f)
+ done
+ find ${!o} -type f -exec $SHELL -c 'patchelf --set-rpath $(patchelf --print-rpath {} 2>/dev/null):'${!o}'/lib {} 2>/dev/null && patchelf --shrink-rpath {}' \;
+ done
+ eval $save_nullglob
+}
+
+propagate_bin_input() {
+ if [[ -n ${bin:-} ]]; then
+ mkdir -p $out/nix-support
+ echo $bin >> $out/nix-support/propagated-native-build-inputs
+ fi
+
+ if [[ -n ${bin:-} && -n ${doc:-} ]]; then
+ mkdir -p $bin/nix-support
+ echo $doc >> $bin/nix-support/propagated-user-env-packages
+ fi
+}
diff --git a/pkgs/build-support/upstream-updater/update-walker.sh b/pkgs/build-support/upstream-updater/update-walker.sh
index 5743a289a4c..bc58f935f81 100755
--- a/pkgs/build-support/upstream-updater/update-walker.sh
+++ b/pkgs/build-support/upstream-updater/update-walker.sh
@@ -246,6 +246,12 @@ do_overwrite () {
mv "$1.new.tmp" "$1"
}
+do_overwrite_just_version () {
+ ensure_hash
+ set_var_value version $CURRENT_VERSION
+ set_var_value sha256 $CURRENT_HASH
+}
+
process_config () {
CONFIG_DIR="$(directory_of "$1")"
CONFIG_NAME="$(basename "$1")"
diff --git a/pkgs/desktops/e17/terminology/default.nix b/pkgs/desktops/e17/terminology/default.nix
index 25dd95c7f19..692f4e73ac2 100644
--- a/pkgs/desktops/e17/terminology/default.nix
+++ b/pkgs/desktops/e17/terminology/default.nix
@@ -2,10 +2,10 @@
stdenv.mkDerivation rec {
name = "terminology-${version}";
- version = "0.4.0";
+ version = "0.5.1";
src = fetchurl {
url = "http://download.enlightenment.org/rel/apps/terminology/${name}.tar.gz";
- sha256 = "1ing9l19h7f1f843rcabbjaynps1as4mpc31xz2adkafb3xd3wk3";
+ sha256 = "1b8m6fhzx2fdr3m6ak2163v33zc4svmg2k875m0xppzifdd9xvyf";
};
buildInputs = [ pkgconfig elementary eina eet evas ecore edje emotion ecore ethumb efreet ];
diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix
index b2d69f2ea7d..3173b892261 100644
--- a/pkgs/development/compilers/haxe/default.nix
+++ b/pkgs/development/compilers/haxe/default.nix
@@ -1,30 +1,28 @@
-{ stdenv, fetchsvn, ocaml, zlib, neko }:
+{ stdenv, fetchgit, ocaml, zlib, neko }:
stdenv.mkDerivation {
- name = "haxe-3.00";
+ name = "haxe-3.1.3";
buildInputs = [ocaml zlib neko];
- src = fetchsvn {
- url = "http://haxe.googlecode.com/svn/trunk";
- sha256 = "0hg8qailhgrcdk7r4k9kmwfl9d9ds0vy0l7wbv5wdrrc34qzifm4";
- rev = 6706;
+ src = fetchgit {
+ url = "https://github.com/HaxeFoundation/haxe.git";
+ sha256 = "1p4yja6flv2r04q9lcrjxia3f3fsmhi3d88s0lz0nf0r4m61bjz0";
+ fetchSubmodules = true;
+
+ # Tag 3.1.3
+ rev = "7be30670b2f1f9b6082499c8fb9e23c0a6df6c28";
};
prePatch = ''
sed -i -e 's|com.class_path <- \[|&"'"$out/lib/haxe/std/"'";|' main.ml
'';
- postBuild = ''
- find std/tools -name '*.n' -delete
- rm -f std/tools/haxedoc/haxedoc std/tools/haxelib/haxelib
- '';
-
buildFlags = [ "all" "tools" ];
installPhase = ''
install -vd "$out/bin" "$out/lib/haxe/std"
- install -vt "$out/bin" haxe haxelib haxedoc
+ install -vt "$out/bin" haxe haxelib
cp -vr std "$out/lib/haxe"
'';
diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix
index 0c3c1c0fba8..27dcf9f03a6 100644
--- a/pkgs/development/compilers/idris/default.nix
+++ b/pkgs/development/compilers/idris/default.nix
@@ -9,8 +9,8 @@
cabal.mkDerivation (self: {
pname = "idris";
- version = "0.9.13";
- sha256 = "0bpp8b19s1przycndvl542ar9dc285ccnwm7cic33ym1lcqil86n";
+ version = "0.9.13.1";
+ sha256 = "09528c2zxriw3l8c7dd2k5db9j1qmqhs6nbqwc7dkskzqv9snz7n";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix
index 2073104c6fd..bd457b227e6 100644
--- a/pkgs/development/compilers/urweb/default.nix
+++ b/pkgs/development/compilers/urweb/default.nix
@@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
pname = "urweb";
- version = "20140426";
+ version = "20140531";
name = "${pname}-${version}";
src = fetchurl {
url = "http://www.impredicative.com/ur/${name}.tgz";
- sha256 = "0d7mbmjc59y0dwk4k7r4wpxfsn4fzswrdxai9xh2nzjsxg2fa7d2";
+ sha256 = "0gbk16hzs8267cfhb7w1cqgjxdv2icxg5clxdbda6qsn84jaf3n4";
};
buildInputs = [ stdenv.gcc file openssl mlton mysql postgresql sqlite ];
diff --git a/pkgs/development/libraries/haskell/BoundedChan/default.nix b/pkgs/development/libraries/haskell/BoundedChan/default.nix
new file mode 100644
index 00000000000..0ce294c2258
--- /dev/null
+++ b/pkgs/development/libraries/haskell/BoundedChan/default.nix
@@ -0,0 +1,12 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+ pname = "BoundedChan";
+ version = "1.0.1.0";
+ sha256 = "1v4lmp3j8lzk1m2pv5l90j80y0c6yxm6gb1ww9ffsz2jxfzz8vd8";
+ meta = {
+ description = "Implementation of bounded channels";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/MFlow/default.nix b/pkgs/development/libraries/haskell/MFlow/default.nix
index def50e8e7db..fe96af2de9e 100644
--- a/pkgs/development/libraries/haskell/MFlow/default.nix
+++ b/pkgs/development/libraries/haskell/MFlow/default.nix
@@ -1,7 +1,8 @@
{ cabal, blazeHtml, blazeMarkup, caseInsensitive, clientsession
-, conduit, conduitExtra, cpphs, extensibleExceptions, httpTypes, monadloc
-, mtl, parsec, random, RefSerialize, stm, TCache, text, time
-, transformers, utf8String, vector, wai, warp, warpTls, Workflow
+, conduit, conduitExtra, cpphs, extensibleExceptions, httpTypes
+, monadloc, mtl, parsec, random, RefSerialize, stm, TCache, text
+, time, transformers, utf8String, vector, wai, warp, warpTls
+, Workflow
}:
cabal.mkDerivation (self: {
@@ -10,10 +11,11 @@ cabal.mkDerivation (self: {
sha256 = "1ih9ni14xmqvcfvayjkggmpmw3s9yzp17gf4xzygldmjcs35j4n3";
buildDepends = [
blazeHtml blazeMarkup caseInsensitive clientsession conduit
- conduitExtra cpphs extensibleExceptions httpTypes monadloc mtl parsec
+ conduitExtra extensibleExceptions httpTypes monadloc mtl parsec
random RefSerialize stm TCache text time transformers utf8String
vector wai warp warpTls Workflow
];
+ buildTools = [ cpphs ];
meta = {
description = "stateful, RESTful web framework";
license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/aeson-qq/default.nix b/pkgs/development/libraries/haskell/aeson-qq/default.nix
index 1da43428f12..36cb42d0b7f 100644
--- a/pkgs/development/libraries/haskell/aeson-qq/default.nix
+++ b/pkgs/development/libraries/haskell/aeson-qq/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "aeson-qq";
- version = "0.7.0";
- sha256 = "1sq34pnwiyf5lngqph4m463ijr185akzbrdi3i40zmqlrymssv3c";
+ version = "0.7.1";
+ sha256 = "1b2ham1h6mlm49ax9k2agf8yymbgkk094nq2apn703i2d9v00im6";
buildDepends = [ aeson haskellSrcMeta parsec text vector ];
testDepends = [ aeson hspec ];
meta = {
diff --git a/pkgs/development/libraries/haskell/attoparsec/0.12.0.0.nix b/pkgs/development/libraries/haskell/attoparsec/0.12.1.0.nix
similarity index 86%
rename from pkgs/development/libraries/haskell/attoparsec/0.12.0.0.nix
rename to pkgs/development/libraries/haskell/attoparsec/0.12.1.0.nix
index 6fd32736c4d..72a58b1cce6 100644
--- a/pkgs/development/libraries/haskell/attoparsec/0.12.0.0.nix
+++ b/pkgs/development/libraries/haskell/attoparsec/0.12.1.0.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "attoparsec";
- version = "0.12.0.0";
- sha256 = "04wdb2i2yqybkfnjs3f25nf7xz1nq5sn8z23klbm4xnqaiajmkmr";
+ version = "0.12.1.0";
+ sha256 = "1y7sikk5hg9yj3mn21k026ni6lznsih0lx03rgdz4gmb6aqh54bn";
buildDepends = [ deepseq scientific text ];
testDepends = [
deepseq QuickCheck scientific testFramework
diff --git a/pkgs/development/libraries/haskell/blaze-builder-enumerator/default.nix b/pkgs/development/libraries/haskell/blaze-builder-enumerator/default.nix
index f751126f142..d08edb48b0e 100644
--- a/pkgs/development/libraries/haskell/blaze-builder-enumerator/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-builder-enumerator/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "blaze-builder-enumerator";
- version = "0.2.0.5";
- sha256 = "0bbbv9wwzw9ss3d02mszdzxzhg6pcrnpwir9bvby7xkmfqpyffaa";
+ version = "0.2.0.6";
+ sha256 = "0pdw18drvikb465qh43b8wjyvpqj3wcilyczc21fri5ma4mxdkyp";
buildDepends = [ blazeBuilder enumerator transformers ];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/cabal-cargs/default.nix b/pkgs/development/libraries/haskell/cabal-cargs/default.nix
index 34759c9b892..9ba31d333bb 100644
--- a/pkgs/development/libraries/haskell/cabal-cargs/default.nix
+++ b/pkgs/development/libraries/haskell/cabal-cargs/default.nix
@@ -5,8 +5,8 @@
cabal.mkDerivation (self: {
pname = "cabal-cargs";
- version = "0.6.1";
- sha256 = "1bf903kgs16f054crwq0yyp6ijch80qn3d5ksy4j0fnyxxrdqvsa";
+ version = "0.7";
+ sha256 = "1dzmvwmb9sxwdgkzszhk9d5qvq2alnqmprx83dlb17sdi6f9jns1";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/cabal-lenses/default.nix b/pkgs/development/libraries/haskell/cabal-lenses/default.nix
index 39c0eeb1dd1..bd14dd1c089 100644
--- a/pkgs/development/libraries/haskell/cabal-lenses/default.nix
+++ b/pkgs/development/libraries/haskell/cabal-lenses/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "cabal-lenses";
- version = "0.1";
- sha256 = "0jss4h7crh7mndl5ghbpziy37cg9i29cc64fgxvxb63hpk0q2m17";
+ version = "0.2";
+ sha256 = "1wfr4rh7ba1hsvi0v7mzpab7fi5k93lz27v8qdfjqzkyybhjglv4";
buildDepends = [ Cabal lens unorderedContainers ];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/crypto-numbers/default.nix b/pkgs/development/libraries/haskell/crypto-numbers/default.nix
index 7633c479e7c..b3f0b205af5 100644
--- a/pkgs/development/libraries/haskell/crypto-numbers/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-numbers/default.nix
@@ -11,6 +11,7 @@ cabal.mkDerivation (self: {
byteable cryptoRandom HUnit QuickCheck testFramework
testFrameworkHunit testFrameworkQuickcheck2 vector
];
+ doCheck = false;
meta = {
homepage = "http://github.com/vincenthz/hs-crypto-numbers";
description = "Cryptographic numbers: functions and algorithms";
diff --git a/pkgs/development/libraries/haskell/entropy/default.nix b/pkgs/development/libraries/haskell/entropy/default.nix
index c92fc584aaf..5c494f4a45d 100644
--- a/pkgs/development/libraries/haskell/entropy/default.nix
+++ b/pkgs/development/libraries/haskell/entropy/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "entropy";
- version = "0.3";
- sha256 = "0b1yx7409xw8jz2rj8695xscjnw4p7y80niq9cbkqrmnqbqnwj2q";
+ version = "0.3.2";
+ sha256 = "1kk0vmfmfqcsw0pzbii9rvz32fvhvxqpn6p6jw6q2x33z6gm5f9x";
meta = {
homepage = "https://github.com/TomMD/entropy";
description = "A platform independent entropy source";
diff --git a/pkgs/development/libraries/haskell/event-list/default.nix b/pkgs/development/libraries/haskell/event-list/default.nix
index 16b73d9bfb3..5305cd87d7d 100644
--- a/pkgs/development/libraries/haskell/event-list/default.nix
+++ b/pkgs/development/libraries/haskell/event-list/default.nix
@@ -1,12 +1,14 @@
-{ cabal, nonNegative, QuickCheck, transformers, utilityHt }:
+{ cabal, nonNegative, QuickCheck, random, transformers, utilityHt
+}:
cabal.mkDerivation (self: {
pname = "event-list";
- version = "0.1.0.2";
- sha256 = "01j48871nijhkbqdsfvbvq01yr9b5a056fn03ccgazikfsd368ri";
- isLibrary = true;
- isExecutable = true;
+ version = "0.1.1.1";
+ sha256 = "16qrjvn8z2nlpfp3xlgwsg2abn7b33n3z673qs5k6ashfbkdy5ja";
buildDepends = [ nonNegative QuickCheck transformers utilityHt ];
+ testDepends = [
+ nonNegative QuickCheck random transformers utilityHt
+ ];
meta = {
homepage = "http://code.haskell.org/~thielema/event-list/";
description = "Event lists with relative or absolute time stamps";
diff --git a/pkgs/development/libraries/haskell/force-layout/default.nix b/pkgs/development/libraries/haskell/force-layout/default.nix
index 40a610f2b11..55437747f8b 100644
--- a/pkgs/development/libraries/haskell/force-layout/default.nix
+++ b/pkgs/development/libraries/haskell/force-layout/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "force-layout";
- version = "0.3.0.4";
- sha256 = "1zgqcz9b86qax1hyl32a1giapvn2wpnb4gcfn8czkcr0m7c2iwdg";
+ version = "0.3.0.5";
+ sha256 = "01wk8zygw9d3r5dwbycyab82kfk8s05ynnajb6kfjv7i09s9sgcb";
buildDepends = [
dataDefaultClass lens vectorSpace vectorSpacePoints
];
diff --git a/pkgs/development/libraries/haskell/ghc-vis/default.nix b/pkgs/development/libraries/haskell/ghc-vis/default.nix
index 40700b52f61..a15ed9d1c47 100644
--- a/pkgs/development/libraries/haskell/ghc-vis/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-vis/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "ghc-vis";
- version = "0.7.2.2";
- sha256 = "0abk76cy9qiblyways1r7jfsj996sj4laawzaz1j9p546plfkbnj";
+ version = "0.7.2.3";
+ sha256 = "1gl059n85yxksnq8y7i1vrsjdg4al6himzpdmw95v61y59bbs6c2";
buildDepends = [
cairo deepseq fgl ghcHeapView graphviz gtk mtl svgcairo text
transformers xdot
diff --git a/pkgs/development/libraries/haskell/haskeline/default.nix b/pkgs/development/libraries/haskell/haskeline/default.nix
index f813ddc2513..bff64a72f69 100644
--- a/pkgs/development/libraries/haskell/haskeline/default.nix
+++ b/pkgs/development/libraries/haskell/haskeline/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "haskeline";
- version = "0.7.1.2";
- sha256 = "178hzal5gqw3rmgijv9ph9xa6d4sld279z4a8cjyx3hv4azciwr4";
+ version = "0.7.1.3";
+ sha256 = "1bwyfn7y9mi18g7zxz8wxjkld51azlfbxypxbiqdinpm2fdl63mi";
buildDepends = [ filepath terminfo transformers utf8String ];
configureFlags = "-fterminfo";
jailbreak = true;
diff --git a/pkgs/development/libraries/haskell/hedis/default.nix b/pkgs/development/libraries/haskell/hedis/default.nix
new file mode 100644
index 00000000000..c4e34b2d361
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hedis/default.nix
@@ -0,0 +1,22 @@
+{ cabal, attoparsec, BoundedChan, bytestringLexing, HUnit, mtl
+, network, resourcePool, testFramework, testFrameworkHunit, time
+, vector
+}:
+
+cabal.mkDerivation (self: {
+ pname = "hedis";
+ version = "0.6.5";
+ sha256 = "1kn8i49yxms1bpjwpy4m8vyycgi755zvy4zc66w068nmnd1kiykh";
+ buildDepends = [
+ attoparsec BoundedChan bytestringLexing mtl network resourcePool
+ time vector
+ ];
+ testDepends = [ HUnit mtl testFramework testFrameworkHunit time ];
+ meta = {
+ homepage = "https://github.com/informatikr/hedis";
+ description = "Client library for the Redis datastore: supports full command set, pipelining";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+ doCheck = false;
+})
diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix
index 9c3ed9e778c..624cc931981 100644
--- a/pkgs/development/libraries/haskell/hoogle/default.nix
+++ b/pkgs/development/libraries/haskell/hoogle/default.nix
@@ -2,6 +2,7 @@
, cmdargs, conduit, deepseq, filepath, haskellSrcExts, httpTypes
, parsec, QuickCheck, random, resourcet, safe, shake, tagsoup, text
, time, transformers, uniplate, vector, vectorAlgorithms, wai, warp
+, fetchurl
}:
cabal.mkDerivation (self: {
@@ -18,6 +19,9 @@ cabal.mkDerivation (self: {
];
testDepends = [ filepath ];
testTarget = "--test-option=--no-net";
+ patches = [ (fetchurl { url = "https://github.com/ndmitchell/hoogle/commit/5fc294f2b5412fda107c7700f4d833b52f26184c.diff";
+ sha256 = "1fn52g90p2jsy87gf5rqrcg49s8hfwway5hi4v9i2rpg5mzxaq3i"; })
+ ];
meta = {
homepage = "http://www.haskell.org/hoogle/";
description = "Haskell API Search";
diff --git a/pkgs/development/libraries/haskell/hourglass/default.nix b/pkgs/development/libraries/haskell/hourglass/default.nix
index 7a5cf59b328..f7569ba3fa5 100644
--- a/pkgs/development/libraries/haskell/hourglass/default.nix
+++ b/pkgs/development/libraries/haskell/hourglass/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "hourglass";
- version = "0.2.0";
- sha256 = "13zphy3gfj9p7vsa477qy30968fnz5kq7d0lzb1pyg5hxkx44rim";
+ version = "0.2.2";
+ sha256 = "015ipy9adi67nfddjsw9c0ihn0banghgawjli0lgrmiyjz01610c";
buildDepends = [ deepseq ];
testDepends = [
deepseq mtl tasty tastyHunit tastyQuickcheck time
diff --git a/pkgs/development/libraries/haskell/hsimport/default.nix b/pkgs/development/libraries/haskell/hsimport/default.nix
index ca2808e5aba..fdb3304ccd8 100644
--- a/pkgs/development/libraries/haskell/hsimport/default.nix
+++ b/pkgs/development/libraries/haskell/hsimport/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "hsimport";
- version = "0.3";
- sha256 = "124dimaa8v4x6vlh51v2r7569d8122l42q19bpzgqih33vw2djcs";
+ version = "0.4";
+ sha256 = "1pkj6cfdfyrcrm6gr4a43y6s4qhwpli6zgnlx4ycmhs3yh5kay60";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hspec-meta/default.nix b/pkgs/development/libraries/haskell/hspec-meta/default.nix
index 612f4989848..dbc6369dc7e 100644
--- a/pkgs/development/libraries/haskell/hspec-meta/default.nix
+++ b/pkgs/development/libraries/haskell/hspec-meta/default.nix
@@ -1,17 +1,17 @@
-{ cabal, ansiTerminal, deepseq, filepath, hspecExpectations, HUnit
-, QuickCheck, quickcheckIo, random, setenv, tfRandom, time
+{ cabal, ansiTerminal, async, deepseq, filepath, hspecExpectations
+, HUnit, QuickCheck, quickcheckIo, random, setenv, tfRandom, time
, transformers
}:
cabal.mkDerivation (self: {
pname = "hspec-meta";
- version = "1.9.5";
- sha256 = "0y39z9r5icz62dd7hvr3lwdcqas526w4m5rcd1468fp7rlz3402j";
+ version = "1.10.0";
+ sha256 = "1x32wgrd1i6rs6790dbr51j9g6abjpcf951cx3nmm4zdcwblyi6a";
isLibrary = true;
isExecutable = true;
buildDepends = [
- ansiTerminal deepseq filepath hspecExpectations HUnit QuickCheck
- quickcheckIo random setenv tfRandom time transformers
+ ansiTerminal async deepseq filepath hspecExpectations HUnit
+ QuickCheck quickcheckIo random setenv tfRandom time transformers
];
doCheck = false;
meta = {
diff --git a/pkgs/development/libraries/haskell/hspec-wai/default.nix b/pkgs/development/libraries/haskell/hspec-wai/default.nix
new file mode 100644
index 00000000000..639aa484dfa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hspec-wai/default.nix
@@ -0,0 +1,23 @@
+{ cabal, aeson, aesonQq, caseInsensitive, doctest, hspec2
+, hspecMeta, httpTypes, markdownUnlit, scotty, text, transformers
+, wai, waiExtra
+}:
+
+cabal.mkDerivation (self: {
+ pname = "hspec-wai";
+ version = "0.2.0";
+ sha256 = "1hykc6k3kkjzz0x16i6ijcavsxfc003sp7fwvg2v9pzpmf9rfhhd";
+ buildDepends = [
+ aeson aesonQq caseInsensitive hspec2 httpTypes text transformers
+ wai waiExtra
+ ];
+ testDepends = [
+ aeson caseInsensitive doctest hspec2 hspecMeta httpTypes
+ markdownUnlit scotty text transformers wai waiExtra
+ ];
+ meta = {
+ description = "Experimental Hspec support for testing WAI applications (depends on hspec2!)";
+ license = self.stdenv.lib.licenses.mit;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/hspec2/default.nix b/pkgs/development/libraries/haskell/hspec2/default.nix
index be49f612aaa..144e327b179 100644
--- a/pkgs/development/libraries/haskell/hspec2/default.nix
+++ b/pkgs/development/libraries/haskell/hspec2/default.nix
@@ -1,24 +1,22 @@
{ cabal, ansiTerminal, async, deepseq, doctest, filepath, ghcPaths
-, hspecExpectations, hspecMeta, HUnit, ioMemoize, QuickCheck
-, quickcheckIo, random, setenv, silently, tfRandom, time
-, transformers
+, hspecExpectations, hspecMeta, HUnit, QuickCheck, quickcheckIo
+, random, setenv, silently, tfRandom, time, transformers
}:
cabal.mkDerivation (self: {
pname = "hspec2";
- version = "0.3.0";
- sha256 = "0ia19jraz2di31c48lh0kswkb2573jxm7msf33i8d5a5yq8y9wwp";
+ version = "0.3.4";
+ sha256 = "0vs5y1cqprixmmjdk3sdrig9gr1k63nvn4c91b3z66jj39rdxl21";
isLibrary = true;
isExecutable = true;
buildDepends = [
ansiTerminal async deepseq filepath hspecExpectations HUnit
- ioMemoize QuickCheck quickcheckIo random setenv tfRandom time
- transformers
+ QuickCheck quickcheckIo random setenv tfRandom time transformers
];
testDepends = [
ansiTerminal async deepseq doctest filepath ghcPaths
- hspecExpectations hspecMeta HUnit ioMemoize QuickCheck quickcheckIo
- random setenv silently tfRandom time transformers
+ hspecExpectations hspecMeta HUnit QuickCheck quickcheckIo random
+ setenv silently tfRandom time transformers
];
meta = {
homepage = "http://hspec.github.io/";
diff --git a/pkgs/development/libraries/haskell/http-client/default.nix b/pkgs/development/libraries/haskell/http-client/default.nix
index b447d9a1f11..be261bf6027 100644
--- a/pkgs/development/libraries/haskell/http-client/default.nix
+++ b/pkgs/development/libraries/haskell/http-client/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "http-client";
- version = "0.3.3";
- sha256 = "001nmy6f57l2f7gc4mchz1gwam28qldkwmcxzs8jnqwczcirgk38";
+ version = "0.3.3.1";
+ sha256 = "0zzh4vr563f8rb51b64gcwmal7gswif8ndsf2x5kw6f7q55md0dw";
buildDepends = [
base64Bytestring blazeBuilder caseInsensitive cookie
dataDefaultClass deepseq exceptions filepath httpTypes mimeTypes
diff --git a/pkgs/development/libraries/haskell/http-conduit/default.nix b/pkgs/development/libraries/haskell/http-conduit/default.nix
index fc6762c877e..918993e6be8 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -2,13 +2,13 @@
, connection, cookie, dataDefaultClass, hspec, httpClient
, httpClientTls, httpTypes, HUnit, liftedBase, monadControl, mtl
, network, networkConduit, resourcet, streamingCommons, text, time
-, transformers, utf8String, wai, warp, warpTls
+, transformers, utf8String, wai, waiConduit, warp, warpTls
}:
cabal.mkDerivation (self: {
pname = "http-conduit";
- version = "2.1.2";
- sha256 = "11g79yfgm2fzcy7gwk9f5np4p6fknsbjkm858v8khb4a1gmbrqvn";
+ version = "2.1.2.1";
+ sha256 = "17bq72qkgn7sh31ad5w7gqf15dlzl027nmx8k7kmm268mf9bz0b5";
buildDepends = [
conduit httpClient httpClientTls httpTypes liftedBase monadControl
mtl resourcet transformers
@@ -17,7 +17,7 @@ cabal.mkDerivation (self: {
blazeBuilder caseInsensitive conduit conduitExtra connection cookie
dataDefaultClass hspec httpClient httpTypes HUnit liftedBase
network networkConduit streamingCommons text time transformers
- utf8String wai warp warpTls
+ utf8String wai waiConduit warp warpTls
];
doCheck = false;
meta = {
diff --git a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
index ec34cc98d74..170d15aa707 100644
--- a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
+++ b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
@@ -7,13 +7,13 @@
cabal.mkDerivation (self: {
pname = "http-reverse-proxy";
- version = "0.3.1.7";
- sha256 = "0fhndk9zjv1kcqgrhj42brfg96p7flrcpy609asba1vc0i9213j4";
+ version = "0.4.0.1";
+ sha256 = "0gygmykxsy6rs3xmwb24s5c3brmabdgxb1w0ak82vyvfvsnqxz1h";
buildDepends = [
async blazeBuilder caseInsensitive conduit conduitExtra
dataDefaultClass httpClient httpTypes liftedBase monadControl
- network networkConduit resourcet streamingCommons text transformers
- wai waiLogger word8
+ network resourcet streamingCommons text transformers wai waiLogger
+ word8
];
testDepends = [
blazeBuilder conduit conduitExtra hspec httpConduit httpTypes
diff --git a/pkgs/development/libraries/haskell/io-memoize/default.nix b/pkgs/development/libraries/haskell/io-memoize/default.nix
index bba2cd3b1e0..3343ee9cbe9 100644
--- a/pkgs/development/libraries/haskell/io-memoize/default.nix
+++ b/pkgs/development/libraries/haskell/io-memoize/default.nix
@@ -1,10 +1,10 @@
-{ cabal, spawn }:
+{ cabal, async }:
cabal.mkDerivation (self: {
pname = "io-memoize";
- version = "1.0.0.0";
- sha256 = "1z6aimyg7wasaqmacpch7skfm9iyl7khd54lfmb8iwghyfvah5d0";
- buildDepends = [ spawn ];
+ version = "1.1.0.0";
+ sha256 = "1xnrzrvs5c3lrzdxm4hrqbh8chl8sxv2j98b28na73w8b7yv2agm";
+ buildDepends = [ async ];
meta = {
description = "Memoize IO actions";
license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/mongoDB/default.nix b/pkgs/development/libraries/haskell/mongoDB/default.nix
index 448fd3b2f5f..259a8e2fc2d 100644
--- a/pkgs/development/libraries/haskell/mongoDB/default.nix
+++ b/pkgs/development/libraries/haskell/mongoDB/default.nix
@@ -5,8 +5,8 @@
cabal.mkDerivation (self: {
pname = "mongoDB";
- version = "1.4.4";
- sha256 = "11v0k2i0ix67zwm19w1215dslnnqllkc4jlhbs5yva2ix4z7d4gh";
+ version = "1.5.0";
+ sha256 = "0dvy8pa79c26hcngds6nnwnayrhsyz1flj18m9bcyrcvwb5q3dd6";
buildDepends = [
binary bson cryptohash hashtables liftedBase monadControl mtl
network parsec random randomShuffle text transformersBase
diff --git a/pkgs/development/libraries/haskell/non-negative/default.nix b/pkgs/development/libraries/haskell/non-negative/default.nix
index a50710791db..ae025f6cc64 100644
--- a/pkgs/development/libraries/haskell/non-negative/default.nix
+++ b/pkgs/development/libraries/haskell/non-negative/default.nix
@@ -2,11 +2,10 @@
cabal.mkDerivation (self: {
pname = "non-negative";
- version = "0.1";
- sha256 = "0aebb6f5518191a02b11230798444997a03b84d63d2aaa6c38cac6718f6c351c";
- isLibrary = true;
- isExecutable = true;
+ version = "0.1.1";
+ sha256 = "163g3j3xrx1jkrbg2wnha3yyxyg1mn7kabmbpg82y3rbl3ihy1p7";
buildDepends = [ QuickCheck utilityHt ];
+ testDepends = [ QuickCheck utilityHt ];
meta = {
homepage = "http://code.haskell.org/~thielema/non-negative/";
description = "Non-negative numbers";
diff --git a/pkgs/development/libraries/haskell/pipes-text/default.nix b/pkgs/development/libraries/haskell/pipes-text/default.nix
index ac4a57348fe..7156b889789 100644
--- a/pkgs/development/libraries/haskell/pipes-text/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-text/default.nix
@@ -1,14 +1,14 @@
{ cabal, pipes, pipesBytestring, pipesGroup, pipesParse, pipesSafe
-, profunctors, text, textStreamDecode, transformers
+, profunctors, streamingCommons, text, transformers
}:
cabal.mkDerivation (self: {
pname = "pipes-text";
- version = "0.0.0.10";
- sha256 = "05lrxfy6cma7g5h41c74sc22p1y38kzbmiagr3grxk5a5110vhr1";
+ version = "0.0.0.11";
+ sha256 = "0c56gxm17bapdjgbp2f55z3f6vq8ryvsljqp3bcjjj18xv5pf1ls";
buildDepends = [
pipes pipesBytestring pipesGroup pipesParse pipesSafe profunctors
- text textStreamDecode transformers
+ streamingCommons text transformers
];
meta = {
homepage = "https://github.com/michaelt/text-pipes";
diff --git a/pkgs/development/libraries/haskell/purescript/default.nix b/pkgs/development/libraries/haskell/purescript/default.nix
index 8e23a0cf8f2..4109fc89a2c 100644
--- a/pkgs/development/libraries/haskell/purescript/default.nix
+++ b/pkgs/development/libraries/haskell/purescript/default.nix
@@ -5,8 +5,8 @@
cabal.mkDerivation (self: {
pname = "purescript";
- version = "0.5.2.2";
- sha256 = "07gkd897qcgn7yf81bii5njkiq1hlhfz5jx3spdlv64a492grmg2";
+ version = "0.5.2.3";
+ sha256 = "09z56gb3k1ya5c3yznm49sgd1g9i5wvn5ih4mycf5ys2wvy3v9sl";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/scotty/default.nix b/pkgs/development/libraries/haskell/scotty/default.nix
index 601ecfb223d..398d3a1dfb8 100644
--- a/pkgs/development/libraries/haskell/scotty/default.nix
+++ b/pkgs/development/libraries/haskell/scotty/default.nix
@@ -1,16 +1,17 @@
-{ cabal, aeson, blazeBuilder, caseInsensitive, conduit
-, conduitExtra, dataDefault, httpTypes, mtl, regexCompat, text
-, transformers, wai, waiExtra, warp
+{ cabal, aeson, blazeBuilder, caseInsensitive, conduit, dataDefault
+, hspec, httpTypes, mtl, regexCompat, text, transformers, wai
+, waiExtra, warp
}:
cabal.mkDerivation (self: {
pname = "scotty";
- version = "0.7.3";
- sha256 = "1cksnsaghcliwpbigs7fjb2qcxsnrqmjcjwndmf3vbfkn43w2prb";
+ version = "0.8.0";
+ sha256 = "07198m8rsavdqr51abxsrmi8jail6h4ldzrr9s47il1djjba6lhh";
buildDepends = [
- aeson blazeBuilder caseInsensitive conduit conduitExtra dataDefault
- httpTypes mtl regexCompat text transformers wai waiExtra warp
+ aeson blazeBuilder caseInsensitive conduit dataDefault httpTypes
+ mtl regexCompat text transformers wai waiExtra warp
];
+ testDepends = [ hspec httpTypes wai waiExtra ];
jailbreak = true;
meta = {
homepage = "https://github.com/scotty-web/scotty";
diff --git a/pkgs/development/libraries/haskell/snaplet-redis/default.nix b/pkgs/development/libraries/haskell/snaplet-redis/default.nix
new file mode 100644
index 00000000000..83a82ac80ce
--- /dev/null
+++ b/pkgs/development/libraries/haskell/snaplet-redis/default.nix
@@ -0,0 +1,19 @@
+{ cabal, configurator, hedis, lens, mtl, network, snap
+, transformers
+}:
+
+cabal.mkDerivation (self: {
+ pname = "snaplet-redis";
+ version = "0.1.3.1";
+ sha256 = "1aprz9rxs01a86vfr8s7mjydafdfljg89grl7i43vmsw927izc6k";
+ buildDepends = [
+ configurator hedis lens mtl network snap transformers
+ ];
+ meta = {
+ homepage = "https://github.com/dzhus/snaplet-redis/";
+ description = "Redis support for Snap Framework";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+ jailbreak = true;
+})
diff --git a/pkgs/development/libraries/haskell/wai-app-static/default.nix b/pkgs/development/libraries/haskell/wai-app-static/default.nix
index 45dd5562a28..093fbb76f84 100644
--- a/pkgs/development/libraries/haskell/wai-app-static/default.nix
+++ b/pkgs/development/libraries/haskell/wai-app-static/default.nix
@@ -3,13 +3,13 @@
, hspec, httpDate, httpTypes, mimeTypes, network
, optparseApplicative, systemFileio, systemFilepath, text, time
, transformers, unixCompat, unorderedContainers, wai, waiExtra
-, waiTest, warp, zlib
+, warp, zlib
}:
cabal.mkDerivation (self: {
pname = "wai-app-static";
- version = "2.0.1";
- sha256 = "1mygyp70rmhnkc0s8626cxrkvcbil92v4gnx70iz26gfb5q9lc7d";
+ version = "3.0.0";
+ sha256 = "117r2ps440i2i156k50b674fkny2ywwbbla6ry0km041604cl733";
isLibrary = true;
isExecutable = true;
buildDepends = [
@@ -20,7 +20,7 @@ cabal.mkDerivation (self: {
];
testDepends = [
hspec httpDate httpTypes mimeTypes network text time transformers
- unixCompat wai waiTest zlib
+ unixCompat wai waiExtra zlib
];
meta = {
homepage = "http://www.yesodweb.com/book/web-application-interface";
diff --git a/pkgs/development/libraries/haskell/wai-conduit/default.nix b/pkgs/development/libraries/haskell/wai-conduit/default.nix
new file mode 100644
index 00000000000..10517e13d9c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/wai-conduit/default.nix
@@ -0,0 +1,14 @@
+{ cabal, blazeBuilder, conduit, httpTypes, transformers, wai }:
+
+cabal.mkDerivation (self: {
+ pname = "wai-conduit";
+ version = "3.0.0";
+ sha256 = "0v92jyxkigq7yj3hzy7kg360036nav986ny7b558l6j7zc90jsdg";
+ buildDepends = [ blazeBuilder conduit httpTypes transformers wai ];
+ meta = {
+ homepage = "https://github.com/yesodweb/wai";
+ description = "conduit wrappers for WAI";
+ license = self.stdenv.lib.licenses.mit;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/wai-extra/default.nix b/pkgs/development/libraries/haskell/wai-extra/default.nix
index 66d45f05912..d54e8351d4f 100644
--- a/pkgs/development/libraries/haskell/wai-extra/default.nix
+++ b/pkgs/development/libraries/haskell/wai-extra/default.nix
@@ -1,24 +1,23 @@
{ cabal, ansiTerminal, base64Bytestring, blazeBuilder
-, blazeBuilderConduit, caseInsensitive, conduit, conduitExtra
-, dataDefault, fastLogger, hspec, httpTypes, HUnit, liftedBase
-, network, resourcet, stringsearch, text, time, transformers, void
-, wai, waiLogger, waiTest, word8, zlib, zlibBindings, zlibConduit
+, caseInsensitive, dataDefault, dataDefaultClass, deepseq
+, fastLogger, hspec, httpTypes, HUnit, liftedBase, network
+, resourcet, streamingCommons, stringsearch, text, time
+, transformers, void, wai, waiLogger, word8, zlib
}:
cabal.mkDerivation (self: {
pname = "wai-extra";
- version = "2.1.1.2";
- sha256 = "000ksma1jmi7rfg2ib94baj31mcwqj2xfhkyv7lai89di0m0v6s4";
+ version = "3.0.0";
+ sha256 = "0spjyimqfj7hx8zgmal4laqy8p1inj8hl2402b5s6zqdn36lldfs";
buildDepends = [
- ansiTerminal base64Bytestring blazeBuilder blazeBuilderConduit
- caseInsensitive conduit conduitExtra dataDefault fastLogger
- httpTypes liftedBase network resourcet stringsearch text time
- transformers void wai waiLogger word8 zlibConduit
+ ansiTerminal base64Bytestring blazeBuilder caseInsensitive
+ dataDefaultClass deepseq fastLogger httpTypes liftedBase network
+ resourcet streamingCommons stringsearch text time transformers void
+ wai waiLogger word8
];
testDepends = [
- blazeBuilder conduit conduitExtra dataDefault fastLogger hspec
- httpTypes HUnit resourcet text transformers wai waiTest zlib
- zlibBindings
+ blazeBuilder dataDefault fastLogger hspec httpTypes HUnit resourcet
+ text transformers wai zlib
];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/wai-handler-fastcgi/default.nix b/pkgs/development/libraries/haskell/wai-handler-fastcgi/default.nix
index 9767f2d7750..7ecc3a34758 100644
--- a/pkgs/development/libraries/haskell/wai-handler-fastcgi/default.nix
+++ b/pkgs/development/libraries/haskell/wai-handler-fastcgi/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "wai-handler-fastcgi";
- version = "2.0.0.1";
- sha256 = "14jsibsqfj6z5yqgdrh43aiqps1yldxkgn6fkj4i80zxk099nbxp";
+ version = "3.0.0";
+ sha256 = "1cvy95qmbrhc1yjcral7f8y2929xp623abc9xasz7j28m4wwmynh";
buildDepends = [ wai waiExtra ];
extraLibraries = [ fcgi ];
meta = {
diff --git a/pkgs/development/libraries/haskell/wai-handler-launch/default.nix b/pkgs/development/libraries/haskell/wai-handler-launch/default.nix
index 9d59fd68ed6..d103b54ec6d 100644
--- a/pkgs/development/libraries/haskell/wai-handler-launch/default.nix
+++ b/pkgs/development/libraries/haskell/wai-handler-launch/default.nix
@@ -1,14 +1,13 @@
-{ cabal, blazeBuilder, blazeBuilderConduit, conduit, conduitExtra
-, httpTypes, transformers, wai, warp, zlibConduit
+{ cabal, blazeBuilder, httpTypes, streamingCommons, transformers
+, wai, warp
}:
cabal.mkDerivation (self: {
pname = "wai-handler-launch";
- version = "2.0.1.3";
- sha256 = "06im28x26jbzbdk9xz33kqvzblglk3b3b60qwal836hima69alsd";
+ version = "3.0.0";
+ sha256 = "1dv7w151szjkg9968v870abz11a440pdzy50zwm0xl6blk392nmk";
buildDepends = [
- blazeBuilder blazeBuilderConduit conduit conduitExtra httpTypes
- transformers wai warp zlibConduit
+ blazeBuilder httpTypes streamingCommons transformers wai warp
];
meta = {
description = "Launch a web app in the default browser";
diff --git a/pkgs/development/libraries/haskell/wai-logger/default.nix b/pkgs/development/libraries/haskell/wai-logger/default.nix
index dc00b9525eb..35b044bdfb4 100644
--- a/pkgs/development/libraries/haskell/wai-logger/default.nix
+++ b/pkgs/development/libraries/haskell/wai-logger/default.nix
@@ -11,6 +11,7 @@ cabal.mkDerivation (self: {
unixTime wai
];
testDepends = [ doctest waiTest ];
+ doCheck = false;
meta = {
description = "A logging system for WAI";
license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/wai-middleware-static/default.nix b/pkgs/development/libraries/haskell/wai-middleware-static/default.nix
index 18b251a8aed..9ca7992db68 100644
--- a/pkgs/development/libraries/haskell/wai-middleware-static/default.nix
+++ b/pkgs/development/libraries/haskell/wai-middleware-static/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "wai-middleware-static";
- version = "0.5.0.1";
- sha256 = "1pwyy6lsvi7kaxf6x3ghy5013yq4ryjp01c4rrd4isx4jh1ynl31";
+ version = "0.6.0";
+ sha256 = "1rsy8qkxcjqdpzqkar0smyy49p8vqapi47k8d24101lz3rym6018";
buildDepends = [ filepath httpTypes mtl text wai ];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/wai-test/default.nix b/pkgs/development/libraries/haskell/wai-test/default.nix
index b15aa1070ba..5d1cecc2e50 100644
--- a/pkgs/development/libraries/haskell/wai-test/default.nix
+++ b/pkgs/development/libraries/haskell/wai-test/default.nix
@@ -1,20 +1,14 @@
-{ cabal, blazeBuilder, blazeBuilderConduit, caseInsensitive
-, conduit, conduitExtra, cookie, deepseq, hspec, httpTypes, network
-, text, transformers, wai
-}:
+{ cabal, wai }:
cabal.mkDerivation (self: {
pname = "wai-test";
- version = "2.0.1.3";
- sha256 = "18j77l2n41941f95awj6fj0w712628v5lsc3bif00cqnaixjmz48";
- buildDepends = [
- blazeBuilder blazeBuilderConduit caseInsensitive conduit
- conduitExtra cookie deepseq httpTypes network text transformers wai
- ];
- testDepends = [ hspec wai ];
+ version = "3.0.0";
+ sha256 = "0xys01jniib0pnhadcm7s0v5z0wcxfgi0bf5ax808zm9qzvl3xfx";
+ buildDepends = [ wai ];
+ noHaddock = true;
meta = {
homepage = "http://www.yesodweb.com/book/web-application-interface";
- description = "Unit test framework (built on HUnit) for WAI applications";
+ description = "Unit test framework (built on HUnit) for WAI applications. (deprecated)";
license = self.stdenv.lib.licenses.mit;
platforms = self.ghc.meta.platforms;
};
diff --git a/pkgs/development/libraries/haskell/wai-websockets/default.nix b/pkgs/development/libraries/haskell/wai-websockets/default.nix
index 5d909c7d773..d0973881657 100644
--- a/pkgs/development/libraries/haskell/wai-websockets/default.nix
+++ b/pkgs/development/libraries/haskell/wai-websockets/default.nix
@@ -1,17 +1,17 @@
-{ cabal, blazeBuilder, caseInsensitive, conduit, fileEmbed
-, httpTypes, ioStreams, network, text, transformers, wai
-, waiAppStatic, warp, websockets
+{ cabal, blazeBuilder, caseInsensitive, fileEmbed, httpTypes
+, ioStreams, network, text, transformers, wai, waiAppStatic, warp
+, websockets
}:
cabal.mkDerivation (self: {
pname = "wai-websockets";
- version = "2.1.0.2";
- sha256 = "16hff38x6fpmp4r1wkjd922s02v5na8zwy6mq5f5gsj7b70n2ww2";
+ version = "3.0.0";
+ sha256 = "0bpzkh9a5j0a282z4dj9dqnjsgd0g8gyvvp0xm0a53582zfhfi5s";
isLibrary = true;
isExecutable = true;
buildDepends = [
- blazeBuilder caseInsensitive conduit fileEmbed httpTypes ioStreams
- network text transformers wai waiAppStatic warp websockets
+ blazeBuilder caseInsensitive fileEmbed httpTypes ioStreams network
+ text transformers wai waiAppStatic warp websockets
];
meta = {
homepage = "http://github.com/yesodweb/wai";
diff --git a/pkgs/development/libraries/haskell/wai/default.nix b/pkgs/development/libraries/haskell/wai/default.nix
index 540df207241..50ded58f44d 100644
--- a/pkgs/development/libraries/haskell/wai/default.nix
+++ b/pkgs/development/libraries/haskell/wai/default.nix
@@ -1,15 +1,11 @@
-{ cabal, blazeBuilder, conduit, conduitExtra, httpTypes, network
-, text, transformers, vault
-}:
+{ cabal, blazeBuilder, hspec, httpTypes, network, text, vault }:
cabal.mkDerivation (self: {
pname = "wai";
- version = "2.1.0.3";
- sha256 = "0qprvk63fvb4rddg9h385xbd5sr5bcgkpx6fqlw01pjzmmrig1m3";
- buildDepends = [
- blazeBuilder conduit conduitExtra httpTypes network text
- transformers vault
- ];
+ version = "3.0.0.1";
+ sha256 = "1f8alq4lygjdb4pzb7xm6jml3dviygk18siwfwb751va3j2fmi0v";
+ buildDepends = [ blazeBuilder httpTypes network text vault ];
+ testDepends = [ blazeBuilder hspec ];
meta = {
homepage = "https://github.com/yesodweb/wai";
description = "Web Application Interface";
diff --git a/pkgs/development/libraries/haskell/warp-tls/default.nix b/pkgs/development/libraries/haskell/warp-tls/default.nix
index e9e7ae39380..ca20fe2d6bf 100644
--- a/pkgs/development/libraries/haskell/warp-tls/default.nix
+++ b/pkgs/development/libraries/haskell/warp-tls/default.nix
@@ -1,15 +1,13 @@
-{ cabal, conduit, conduitExtra, cprngAes, dataDefaultClass, network
-, networkConduit, resourcet, streamingCommons, tls, transformers
+{ cabal, cprngAes, dataDefaultClass, network, streamingCommons, tls
, wai, warp
}:
cabal.mkDerivation (self: {
pname = "warp-tls";
- version = "2.0.5";
- sha256 = "11nc5drys75mjfqww87rs2clhxpx485q008y42f2ymj7s5856db4";
+ version = "3.0.0";
+ sha256 = "14gm43a811v9h87ia2b9y9kynafrvq3yw89gswlj832469jx9sfw";
buildDepends = [
- conduit conduitExtra cprngAes dataDefaultClass network
- networkConduit resourcet streamingCommons tls transformers wai warp
+ cprngAes dataDefaultClass network streamingCommons tls wai warp
];
meta = {
homepage = "http://github.com/yesodweb/wai";
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index be5dd392d16..d0940345a57 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -1,25 +1,22 @@
-{ cabal, async, blazeBuilder, blazeBuilderConduit, caseInsensitive
-, conduit, conduitExtra, doctest, hashable, hspec, HTTP, httpDate
-, httpTypes, HUnit, liftedBase, network, networkConduit, QuickCheck
-, simpleSendfile, streamingCommons, text, time, transformers
-, unixCompat, void, wai
+{ cabal, async, blazeBuilder, caseInsensitive, doctest, hashable
+, hspec, HTTP, httpDate, httpTypes, HUnit, liftedBase, network
+, QuickCheck, simpleSendfile, streamingCommons, text, time
+, transformers, unixCompat, void, wai
}:
cabal.mkDerivation (self: {
pname = "warp";
- version = "2.1.5.2";
- sha256 = "0rv5fxw1d5dh6jzvs3bg2vjjr702xw59fx7mflygpqh8zivfh4ds";
+ version = "3.0.0.1";
+ sha256 = "05x216fj7s1i963xipi0p7vmkz5l0nma1fjqiq040fg3rngw4yqb";
buildDepends = [
- blazeBuilder blazeBuilderConduit caseInsensitive conduit
- conduitExtra hashable httpDate httpTypes liftedBase network
- networkConduit simpleSendfile streamingCommons text transformers
- unixCompat void wai
+ blazeBuilder caseInsensitive hashable httpDate httpTypes network
+ simpleSendfile streamingCommons text unixCompat void wai
];
testDepends = [
- async blazeBuilder blazeBuilderConduit caseInsensitive conduit
- conduitExtra doctest hashable hspec HTTP httpDate httpTypes HUnit
- liftedBase network networkConduit QuickCheck simpleSendfile
- streamingCommons text time transformers unixCompat void wai
+ async blazeBuilder caseInsensitive doctest hashable hspec HTTP
+ httpDate httpTypes HUnit liftedBase network QuickCheck
+ simpleSendfile streamingCommons text time transformers unixCompat
+ void wai
];
doCheck = false;
meta = {
diff --git a/pkgs/development/libraries/haskell/websockets/default.nix b/pkgs/development/libraries/haskell/websockets/default.nix
index 9e22d0cab18..e712a5b2b81 100644
--- a/pkgs/development/libraries/haskell/websockets/default.nix
+++ b/pkgs/development/libraries/haskell/websockets/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "websockets";
- version = "0.8.2.3";
- sha256 = "0j4lm5hkipd4q6kizrjy1cjdw2b0588m4k6fh50ss5qnqw9rkjkd";
+ version = "0.8.2.4";
+ sha256 = "09mq04vhi53isj8z5930ibyai7bv634lnmhl4xl2d3fzz2afvff0";
buildDepends = [
attoparsec base64Bytestring binary blazeBuilder caseInsensitive
entropy ioStreams mtl network random SHA text
diff --git a/pkgs/development/libraries/haskell/yesod-bin/default.nix b/pkgs/development/libraries/haskell/yesod-bin/default.nix
index 3bca09f4fb6..145df1e625f 100644
--- a/pkgs/development/libraries/haskell/yesod-bin/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-bin/default.nix
@@ -10,8 +10,8 @@
cabal.mkDerivation (self: {
pname = "yesod-bin";
- version = "1.2.9.4";
- sha256 = "0ir77hmg3avkm4x7pgmjx3fijisncpwklg4v1glqx4vqbjjrzk5g";
+ version = "1.2.10.2";
+ sha256 = "18faylxjrd790xv6zr77wikkcy99l7824bb1sq1y225kd7a3alsm";
isLibrary = false;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index ae63f4dbc16..7ea674aa0d9 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -11,8 +11,8 @@
cabal.mkDerivation (self: {
pname = "yesod-core";
- version = "1.2.15.2";
- sha256 = "1k5dqcfpwqac81p9w2i1kz5pcvr21ibia5kh441811bdzlpwsiwq";
+ version = "1.2.16.1";
+ sha256 = "1wr5labhp3wc23ki2wvaypanm54qw9vz3v77rxyj1za1y2n1cprw";
buildDepends = [
aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
caseInsensitive cereal clientsession conduit conduitExtra cookie
@@ -26,7 +26,7 @@ cabal.mkDerivation (self: {
async blazeBuilder conduit conduitExtra hamlet hspec httpTypes
HUnit liftedBase network networkConduit QuickCheck random resourcet
shakespeare shakespeareCss shakespeareJs streamingCommons text
- transformers wai waiTest
+ transformers wai waiExtra waiTest
];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/yesod-form/default.nix b/pkgs/development/libraries/haskell/yesod-form/default.nix
index add7d94bac4..4309df0e4c4 100644
--- a/pkgs/development/libraries/haskell/yesod-form/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-form/default.nix
@@ -7,8 +7,8 @@
cabal.mkDerivation (self: {
pname = "yesod-form";
- version = "1.3.9.1";
- sha256 = "1iw2vcdvp77vz3az9g9y4nk29g098fa9lvqzc7hwypvdawgwpgwm";
+ version = "1.3.10";
+ sha256 = "1qq0r5phb6xygz4w5ysir3ky7bw0rmd1q4vz57dz1aza2pchb1ih";
buildDepends = [
aeson attoparsec blazeBuilder blazeHtml blazeMarkup byteable
dataDefault emailValidate hamlet network persistent resourcet
diff --git a/pkgs/development/libraries/haskell/yesod-persistent/default.nix b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
index 432adeee9af..f5189caa46f 100644
--- a/pkgs/development/libraries/haskell/yesod-persistent/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
@@ -1,19 +1,19 @@
{ cabal, blazeBuilder, conduit, hspec, persistent, persistentSqlite
, persistentTemplate, resourcePool, resourcet, text, transformers
-, waiTest, yesodCore
+, waiExtra, waiTest, yesodCore
}:
cabal.mkDerivation (self: {
pname = "yesod-persistent";
- version = "1.2.2.3";
- sha256 = "1699grrxb1qwfiivh9ihnczkcbwl4gcqdk7m02lc09r9gjr920p8";
+ version = "1.2.3";
+ sha256 = "1kdspz6y32r8kl0qk89hgwi4n6dnxch7wriv829cnwqm0bzjfdpw";
buildDepends = [
blazeBuilder conduit persistent persistentTemplate resourcePool
resourcet transformers yesodCore
];
testDepends = [
- blazeBuilder conduit hspec persistent persistentSqlite text waiTest
- yesodCore
+ blazeBuilder conduit hspec persistent persistentSqlite text
+ waiExtra waiTest yesodCore
];
meta = {
homepage = "http://www.yesodweb.com/";
diff --git a/pkgs/development/libraries/haskell/yesod-static/default.nix b/pkgs/development/libraries/haskell/yesod-static/default.nix
index b6763871c40..d5a0c1c4c7d 100644
--- a/pkgs/development/libraries/haskell/yesod-static/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-static/default.nix
@@ -3,14 +3,14 @@
, cssText, dataDefault, fileEmbed, filepath, hashable, hjsmin
, hspec, httpTypes, HUnit, mimeTypes, resourcet, shakespeareCss
, systemFileio, systemFilepath, text, transformers, unixCompat
-, unorderedContainers, wai, waiAppStatic, waiTest, yesodCore
-, yesodTest
+, unorderedContainers, wai, waiAppStatic, waiExtra, waiTest
+, yesodCore, yesodTest
}:
cabal.mkDerivation (self: {
pname = "yesod-static";
- version = "1.2.3";
- sha256 = "093lvg7pl71dfnr7qyfmp9r1m3bs64849k0dw4w2qb618y8wb9jh";
+ version = "1.2.4";
+ sha256 = "0r5bz1jmgjd7cmvhkp3ahgl610bssvgxxsvb626dvqz2vqc0061z";
buildDepends = [
async attoparsec base64Bytestring blazeBuilder byteable conduit
conduitExtra cryptohash cryptohashConduit cssText dataDefault
@@ -23,7 +23,7 @@ cabal.mkDerivation (self: {
cryptohashConduit dataDefault fileEmbed filepath hjsmin hspec
httpTypes HUnit mimeTypes resourcet shakespeareCss systemFileio
systemFilepath text transformers unixCompat unorderedContainers wai
- waiAppStatic waiTest yesodCore yesodTest
+ waiAppStatic waiExtra waiTest yesodCore yesodTest
];
doCheck = false;
meta = {
diff --git a/pkgs/development/libraries/haskell/yesod-test/default.nix b/pkgs/development/libraries/haskell/yesod-test/default.nix
index 292941c0171..44b14758623 100644
--- a/pkgs/development/libraries/haskell/yesod-test/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-test/default.nix
@@ -1,18 +1,18 @@
{ cabal, attoparsec, blazeBuilder, blazeHtml, blazeMarkup
, caseInsensitive, cookie, hspec, htmlConduit, httpTypes, HUnit
, monadControl, network, persistent, text, time, transformers, wai
-, waiTest, xmlConduit, xmlTypes, yesodCore, yesodForm
+, waiExtra, waiTest, xmlConduit, xmlTypes, yesodCore, yesodForm
}:
cabal.mkDerivation (self: {
pname = "yesod-test";
- version = "1.2.2";
- sha256 = "1vf5g83mj2a38f34llg6wa63whj13p0vgbzfvi3ic5j7qy5gb8g5";
+ version = "1.2.3";
+ sha256 = "082zi53q1pw9xv4l6ld1y3xxnvq3iwgbrdnxjknhwsxph7glkn3p";
buildDepends = [
attoparsec blazeBuilder blazeHtml blazeMarkup caseInsensitive
cookie hspec htmlConduit httpTypes HUnit monadControl network
- persistent text time transformers wai waiTest xmlConduit xmlTypes
- yesodCore
+ persistent text time transformers wai waiExtra waiTest xmlConduit
+ xmlTypes yesodCore
];
testDepends = [
hspec htmlConduit HUnit text wai xmlConduit yesodCore yesodForm
diff --git a/pkgs/development/libraries/haskell/yesod/default.nix b/pkgs/development/libraries/haskell/yesod/default.nix
index 630b04af26b..8e3873df2ae 100644
--- a/pkgs/development/libraries/haskell/yesod/default.nix
+++ b/pkgs/development/libraries/haskell/yesod/default.nix
@@ -7,8 +7,8 @@
cabal.mkDerivation (self: {
pname = "yesod";
- version = "1.2.5.3";
- sha256 = "1w9bbvinnbnhrajjqj6yhy9dgggdf6n98x04dys45anssiwrd2ss";
+ version = "1.2.6";
+ sha256 = "0rw46zznczdzg2wvbgp5kpq3yrl6w40vbbs7zyvqpcf6m82jsfz0";
buildDepends = [
aeson blazeHtml blazeMarkup conduitExtra dataDefault fastLogger
hamlet monadControl monadLogger networkConduit safe shakespeare
diff --git a/pkgs/development/libraries/libmodbus/default.nix b/pkgs/development/libraries/libmodbus/default.nix
new file mode 100644
index 00000000000..f6a816ef96f
--- /dev/null
+++ b/pkgs/development/libraries/libmodbus/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+ name = "libmodbus-3.0.6";
+
+ src = fetchurl {
+ url = "http://libmodbus.org/releases/${name}.tar.gz";
+ sha256 = "1dkijjv3dq0c5vc5z5f1awm8dlssbwg6ivsnvih22pkm1zqn6v84";
+ };
+
+ meta = with stdenv.lib; {
+ description = "Library to send/receive data according to the Modbus protocol";
+ homepage = http://libmodbus.org/;
+ license = licenses.lgpl21Plus;
+ platforms = platforms.linux;
+ maintainers = [ maintainers.bjornfor ];
+ };
+}
diff --git a/pkgs/development/libraries/libmsgpack/default.nix b/pkgs/development/libraries/libmsgpack/default.nix
index 26dc6be8382..ab9dbd48ea4 100644
--- a/pkgs/development/libraries/libmsgpack/default.nix
+++ b/pkgs/development/libraries/libmsgpack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoconf, automake, libtool, ruby }:
+{ stdenv, fetchurl, autoconf, automake, libtool, ruby, scatterOutputHook }:
stdenv.mkDerivation rec {
version = "0.5.8";
@@ -9,17 +9,18 @@ stdenv.mkDerivation rec {
sha256 = "1h6k9kdbfavmw3by5kk3raszwa64hn9k8yw9rdhvl5m8g2lks89k";
};
+ nativeBuildInputs = [ scatterOutputHook ];
buildInputs = [ autoconf automake libtool ruby ];
- outputs = [ "out" "lib" ];
+ outputs = [ "out" "bin" ];
- preConfigure = "./bootstrap";
-
- postInstall = ''
- mkdir -p $lib/lib
- mv $out/lib/*.so.* $lib/lib/
+ preConfigure = ''
+ sed -i s,glibtoolize,libtoolize, ./bootstrap
+ ./bootstrap
'';
+ enableParallelBuilding = true;
+
meta = with stdenv.lib; {
description = "MessagePack implementation for C and C++";
homepage = http://msgpack.org;
diff --git a/pkgs/development/libraries/liboping/default.nix b/pkgs/development/libraries/liboping/default.nix
new file mode 100644
index 00000000000..b48b9c0585b
--- /dev/null
+++ b/pkgs/development/libraries/liboping/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, ncurses ? null, perl ? null }:
+
+stdenv.mkDerivation rec {
+ name = "liboping-1.6.2";
+
+ src = fetchurl {
+ url = "http://verplant.org/liboping/files/${name}.tar.bz2";
+ sha256 = "1kvkpdcd5jinyc15cgir48v91qphpw22c03inydaga5m4yqv8jjz";
+ };
+
+ buildInputs = [ ncurses perl ];
+
+ configureFlags = stdenv.lib.optionalString (perl == null) "--with-perl-bindings=no";
+
+ meta = with stdenv.lib; {
+ description = "C library to generate ICMP echo requests (a.k.a. ping packets)";
+ longDescription = ''
+ liboping is a C library to generate ICMP echo requests, better known as
+ "ping packets". It is intended for use in network monitoring applications
+ or applications that would otherwise need to fork ping(1) frequently.
+ Included is a sample application, called oping, which demonstrates the
+ library's abilities.
+ '';
+ homepage = http://verplant.org/liboping/;
+ license = licenses.lgpl21;
+ platforms = platforms.linux;
+ maintainers = [ maintainers.bjornfor ];
+ };
+}
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index c69d787b086..4027bd8a84e 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -4,14 +4,14 @@
, dnsmasq, libnl
}:
-let version = "1.2.4"; in
+let version = "1.2.5"; in
stdenv.mkDerivation rec {
name = "libvirt-${version}";
src = fetchurl {
url = "http://libvirt.org/sources/${name}.tar.gz";
- sha256 = "0xg8m7x4a3dqrg2b9pqcikaghdp6jyl07gkp2z8grsmsnbvcafp4";
+ sha256 = "0igd74wkksgv24i2xaa8wx51iqpgjp1v7820pk93m0jv8gipvscf";
};
buildInputs = [
diff --git a/pkgs/development/libraries/libxmp/default.nix b/pkgs/development/libraries/libxmp/default.nix
new file mode 100644
index 00000000000..7b4d3d6287a
--- /dev/null
+++ b/pkgs/development/libraries/libxmp/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+ name = "libxmp-4.2.7";
+
+ meta = with stdenv.lib; {
+ description = "Extended module player library";
+ homepage = "http://xmp.sourceforge.net/";
+ longDescription = ''
+ Libxmp is a library that renders module files to PCM data. It supports
+ over 90 mainstream and obscure module formats including Protracker (MOD),
+ Scream Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT).
+ '';
+ license = licenses.lgpl21Plus;
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ iyzsong ];
+ };
+
+ src = fetchurl {
+ url = "mirror://sourceforge/xmp/libxmp/${name}.tar.gz";
+ sha256 = "1isv8498869w8wc18lagi1p40z4blx684r21j9cligkfyrmri536";
+ };
+}
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index f6848ae5860..0355ce25c62 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -1,13 +1,13 @@
{ stdenv, fetchurl }:
-let version = "4.10.5"; in
+let version = "4.10.6"; in
stdenv.mkDerivation {
name = "nspr-${version}";
src = fetchurl {
url = "http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${version}/src/nspr-${version}.tar.gz";
- sha1 = "891de2b62ad42f9b38808a0aa58c95e8cbd5c9a9";
+ sha1 = "3hzcslcfql1rg7drvcn4nmrigy7jfgwz";
};
preConfigure = "cd nspr";
diff --git a/pkgs/development/python-modules/generic/default.nix b/pkgs/development/python-modules/generic/default.nix
index 59b18d772cf..75fb974e735 100644
--- a/pkgs/development/python-modules/generic/default.nix
+++ b/pkgs/development/python-modules/generic/default.nix
@@ -156,12 +156,14 @@ python.stdenv.mkDerivation (attrs // {
'';
shellHook = attrs.shellHook or ''
- mkdir -p /tmp/$name/lib/${python.libPrefix}/site-packages
- ${preShellHook}
- export PATH="/tmp/$name/bin:$PATH"
- export PYTHONPATH="/tmp/$name/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
- python setup.py develop --prefix /tmp/$name
- ${postShellHook}
+ if test -e setup.py; then
+ mkdir -p /tmp/$name/lib/${python.libPrefix}/site-packages
+ ${preShellHook}
+ export PATH="/tmp/$name/bin:$PATH"
+ export PYTHONPATH="/tmp/$name/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+ ${python}/bin/${python.executable} setup.py develop --prefix /tmp/$name
+ ${postShellHook}
+ fi
'';
meta = with lib.maintainers; {
diff --git a/pkgs/development/tools/haskell/cabal-bounds/default.nix b/pkgs/development/tools/haskell/cabal-bounds/default.nix
index 5de7645a5e4..ee1fc152f80 100644
--- a/pkgs/development/tools/haskell/cabal-bounds/default.nix
+++ b/pkgs/development/tools/haskell/cabal-bounds/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "cabal-bounds";
- version = "0.5";
- sha256 = "0sx6vyf3p62khg7qv7nwgd8fns6dsfpw34gpl7zmb6n0c1kjj60b";
+ version = "0.6";
+ sha256 = "0dl8rf8y365a20yz5kk1c9y860k5mkg1jp5dipvbf451h7a7h9w5";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/tools/haskell/cabal2nix/default.nix b/pkgs/development/tools/haskell/cabal2nix/default.nix
index 7ad20ee066b..2201040efe1 100644
--- a/pkgs/development/tools/haskell/cabal2nix/default.nix
+++ b/pkgs/development/tools/haskell/cabal2nix/default.nix
@@ -3,8 +3,8 @@
cabal.mkDerivation (self: {
pname = "cabal2nix";
- version = "1.61";
- sha256 = "058bwswkhsj3rbxl42n23ri79smmhkaj6wid4c6x02yl3m8l7xsy";
+ version = "1.63";
+ sha256 = "12frnhm86w5i6rmhghrdngdv658332bh9j5nr04ql439yysvkypj";
isLibrary = false;
isExecutable = true;
buildDepends = [ Cabal filepath hackageDb HTTP mtl regexPosix ];
diff --git a/pkgs/development/tools/haskell/keter/default.nix b/pkgs/development/tools/haskell/keter/default.nix
index 1cffefd6da3..8a5bc8eb7c8 100644
--- a/pkgs/development/tools/haskell/keter/default.nix
+++ b/pkgs/development/tools/haskell/keter/default.nix
@@ -1,21 +1,21 @@
{ cabal, aeson, async, attoparsec, blazeBuilder, caseInsensitive
, conduit, conduitExtra, dataDefault, filepath, fsnotify, hspec
-, httpConduit, httpReverseProxy, httpTypes, liftedBase, mtl
-, network, networkConduitTls, random, regexTdfa, stm, systemFileio
-, systemFilepath, tar, text, time, transformers, unixCompat
-, unorderedContainers, vector, wai, waiAppStatic, waiExtra, warp
-, warpTls, yaml, zlib
+, httpClient, httpConduit, httpReverseProxy, httpTypes, liftedBase
+, mtl, network, networkConduitTls, random, regexTdfa, stm
+, systemFileio, systemFilepath, tar, text, time, transformers
+, unixCompat, unorderedContainers, vector, wai, waiAppStatic
+, waiExtra, warp, warpTls, yaml, zlib
}:
cabal.mkDerivation (self: {
pname = "keter";
- version = "1.3.0";
- sha256 = "1fvb93iga4c0kfv29ksrmn9bjznl7wfspg1v9a5d3svwrszl4is3";
+ version = "1.3.1";
+ sha256 = "19isyslrxbp430ira7v2d3r5f1j1526rg7v6lzzyl3dsyfpvxjg6";
isLibrary = true;
isExecutable = true;
buildDepends = [
aeson async attoparsec blazeBuilder caseInsensitive conduit
- conduitExtra dataDefault filepath fsnotify httpConduit
+ conduitExtra dataDefault filepath fsnotify httpClient httpConduit
httpReverseProxy httpTypes liftedBase mtl network networkConduitTls
random regexTdfa stm systemFileio systemFilepath tar text time
transformers unixCompat unorderedContainers vector wai waiAppStatic
diff --git a/pkgs/development/tools/misc/ShellCheck/default.nix b/pkgs/development/tools/misc/ShellCheck/default.nix
new file mode 100644
index 00000000000..328cba4145f
--- /dev/null
+++ b/pkgs/development/tools/misc/ShellCheck/default.nix
@@ -0,0 +1,16 @@
+{ cabal, json, mtl, parsec, regexCompat }:
+
+cabal.mkDerivation (self: {
+ pname = "ShellCheck";
+ version = "0.3.3";
+ sha256 = "15lmc7cbi6s852qhd6h9asgz7ss1khfhq7wj4sgblr5mgppldg93";
+ isLibrary = true;
+ isExecutable = true;
+ buildDepends = [ json mtl parsec regexCompat ];
+ meta = {
+ homepage = "http://www.shellcheck.net/";
+ description = "Shell script analysis tool";
+ license = self.stdenv.lib.licenses.agpl3Plus;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/tools/misc/cl-launch/default.nix b/pkgs/development/tools/misc/cl-launch/default.nix
index 14a36470bba..d66ca9868f5 100644
--- a/pkgs/development/tools/misc/cl-launch/default.nix
+++ b/pkgs/development/tools/misc/cl-launch/default.nix
@@ -3,11 +3,11 @@ let
s = # Generated upstream information
rec {
baseName="cl-launch";
- version="4.0.4";
+ version="4.0.5";
name="${baseName}-${version}";
- hash="152m834myhcgi4iacfqn81fznlbqxn7pvdlxvk2lbba09h0slm56";
- url="http://common-lisp.net/project/xcvb/cl-launch/cl-launch-4.0.4.tar.gz";
- sha256="152m834myhcgi4iacfqn81fznlbqxn7pvdlxvk2lbba09h0slm56";
+ hash="00i11pkwsb9r9cjzxjmj0dsp369i0gpz04f447xss9a9v192dhlj";
+ url="http://common-lisp.net/project/xcvb/cl-launch/cl-launch-4.0.5.tar.gz";
+ sha256="00i11pkwsb9r9cjzxjmj0dsp369i0gpz04f447xss9a9v192dhlj";
};
buildInputs = [
];
diff --git a/pkgs/games/sauerbraten/default.nix b/pkgs/games/sauerbraten/default.nix
index eb5d933e885..8f3fb53f7e3 100644
--- a/pkgs/games/sauerbraten/default.nix
+++ b/pkgs/games/sauerbraten/default.nix
@@ -12,10 +12,10 @@ let
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
sourceInfo = rec {
baseName="sauerbraten";
- version="3331";
+ version="5000";
name="${baseName}-r${version}";
url="https://svn.code.sf.net/p/sauerbraten/code";
- hash="0904hk9rz2x941c9587bfxa4rca81260j3m2hjjrp984w67x2w7y";
+ hash="17libj7dslprlwppdk3vyxdcigbsa4czln8gdyz9j264m11z1cbh";
};
in
rec {
diff --git a/pkgs/games/scummvm/default.nix b/pkgs/games/scummvm/default.nix
index 9c51db1ac98..ca72ac506d7 100644
--- a/pkgs/games/scummvm/default.nix
+++ b/pkgs/games/scummvm/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, SDL, zlib, libmpeg2, libmad, libogg, libvorbis, flac, alsaLib }:
-stdenv.mkDerivation {
- name = "scummvm-1.2.1";
+stdenv.mkDerivation rec {
+ name = "scummvm-1.6.0";
src = fetchurl {
- url = mirror://sourceforge/scummvm/scummvm-1.2.1.tar.bz2;
- sha256 = "029abzvpz85accwk7x79w255wr83gnkqg3yc5n6ryl28zg00z3j8";
+ url = "mirror://sourceforge/scummvm/${name}.tar.bz2";
+ sha256 = "1i3ywpq8csi58gdibdn51329vlj800l2laaw0lw18fcgdbd60q1r";
};
buildInputs = [ SDL zlib libmpeg2 libmad libogg libvorbis flac alsaLib ];
diff --git a/pkgs/misc/emulators/wine/unstable.nix b/pkgs/misc/emulators/wine/unstable.nix
index b3c68429d6d..0e19d6ab893 100644
--- a/pkgs/misc/emulators/wine/unstable.nix
+++ b/pkgs/misc/emulators/wine/unstable.nix
@@ -7,12 +7,12 @@ assert stdenv.isLinux;
assert stdenv.gcc.gcc != null;
let
- version = "1.7.19";
+ version = "1.7.20";
name = "wine-${version}";
src = fetchurl {
url = "mirror://sourceforge/wine/${name}.tar.bz2";
- sha256 = "1wigncw7xl6ni6kjmhmbzffhf0pav22b50aql93wz7h2r409psn5";
+ sha256 = "05azpxrl7364ckvkwy7aa2p0vb4qhbc6wcn2l8khqb92jq5inhww";
};
gecko = fetchurl {
diff --git a/pkgs/os-specific/linux/kernel/linux-3.12.nix b/pkgs/os-specific/linux/kernel/linux-3.12.nix
index 82f31bf4f98..33bed4213b4 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.12.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.12.nix
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.12.21";
+ version = "3.12.22";
extraMeta.branch = "3.12";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "1pr4gr48bgxz28h790b2w41b1fc41xffz3drflsnz5736pisrhg7";
+ sha256 = "0c9rw11iihjimqb6mdmwn4q67ds7jg4qibj5ijj5pdmkdqzj7g54";
};
features.iwlwifi = true;
diff --git a/pkgs/servers/dns/nsd/default.nix b/pkgs/servers/dns/nsd/default.nix
new file mode 100644
index 00000000000..7279aa6d4ef
--- /dev/null
+++ b/pkgs/servers/dns/nsd/default.nix
@@ -0,0 +1,34 @@
+{ config, stdenv, fetchurl, libevent, openssl
+}:
+
+stdenv.mkDerivation rec {
+ name = "nsd-4.0.3";
+
+ src = fetchurl {
+ url = "http://www.nlnetlabs.nl/downloads/nsd/${name}.tar.gz";
+ sha256 = "4bf05f2234e1b41899198aa1070f409201fc3c4980feef6567cd92c7074c4a8b";
+ };
+
+ buildInputs = [ libevent openssl ];
+
+ configureFlags =
+ let flag = state: flags: if state then map (x: "--enable-${x}") flags
+ else map (x: "--disable-${x}") flags;
+ in flag (config.nsd.bind8Stats or false) [ "bind8-stats" ]
+ ++ flag (config.nsd.checking or false) [ "checking" ]
+ ++ flag (config.nsd.ipv6 or true) [ "ipv6" ]
+ ++ flag (config.nsd.mmap or false) [ "mmap" ]
+ ++ flag (config.nsd.minimalResponses or true) [ "minimal-responses" ]
+ ++ flag (config.nsd.nsec3 or true) [ "nsec3" ]
+ ++ flag (config.nsd.ratelimit or false) [ "ratelimit" ]
+ ++ flag (config.nsd.recvmmsg or false) [ "recvmmsg" ]
+ ++ flag (config.nsd.rootServer or false) [ "root-server" ]
+ ++ [ "--with-ssl=${openssl}" "--with-libevent=${libevent}" ];
+
+ meta = {
+ description = "Authoritative only, high performance, simple and open source name server.";
+ license = "BSD";
+ homepage = http://www.nlnetlabs.nl;
+ platforms = with stdenv.lib.platforms; linux;
+ };
+}
diff --git a/pkgs/servers/search/elasticsearch/default.nix b/pkgs/servers/search/elasticsearch/default.nix
index c6939ce5f7a..b227832ad73 100644
--- a/pkgs/servers/search/elasticsearch/default.nix
+++ b/pkgs/servers/search/elasticsearch/default.nix
@@ -1,10 +1,10 @@
{ stdenv, fetchurl, makeWrapper, jre, utillinux }:
stdenv.mkDerivation rec {
- name = "elasticsearch-1.0.1";
+ name = "elasticsearch-1.2.1";
src = fetchurl {
url = "https://download.elasticsearch.org/elasticsearch/elasticsearch/${name}.tar.gz";
- sha256 = "0nwv7llw7gk94alfcpxxy0lybhnw7fggv30v7ylsxn20id9g7kba";
+ sha256 = "11lirxl0hb0xfd57accsgldq1adrlv9pak2520jll2sj5gg71cmj";
};
patches = [ ./es-home.patch ];
diff --git a/pkgs/servers/squid/squids.nix b/pkgs/servers/squid/squids.nix
index 18778aa80db..642b713daaa 100644
--- a/pkgs/servers/squid/squids.nix
+++ b/pkgs/servers/squid/squids.nix
@@ -39,5 +39,16 @@ rec {
libtool openssl];
};
- latest = squid32;
+ squid34 = squid30.merge rec {
+ name = "squid-3.4.5";
+ src = args.fetchurl {
+ url = "http://www.squid-cache.org/Versions/v3/3.4/${name}.tar.bz2";
+ sha256 = "1d17l27bszdxnvdr78l7yry8ka38cq7g4774m5876q25ny1q1bmr";
+ };
+ buildInputs = [openldap pam db cyrus_sasl libcap expat libxml2
+ libtool openssl];
+ configureFlags = ["--enable-ssl" "--enable-ssl-crtd"];
+ };
+
+ latest = squid34;
}
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index cba456313f3..c34d30d92e0 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -18,6 +18,15 @@ let
allowUnfree = config.allowUnfree or false || builtins.getEnv "NIXPKGS_ALLOW_UNFREE" == "1";
+ # Alow granular checks to allow only some unfree packages
+ # Example:
+ # {pkgs, ...}:
+ # {
+ # allowUnfree = false;
+ # allowUnfreePredicate = (x: pkgs.lib.hasPrefix "flashplayero-" x.name);
+ # }
+ allowUnfreePredicate = config.allowUnfreePredicate or (x: false);
+
allowBroken = config.allowBroken or false || builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
unsafeGetAttrPos = builtins.unsafeGetAttrPos or (n: as: null);
@@ -67,7 +76,7 @@ let
unsafeGetAttrPos "name" attrs;
pos' = if pos != null then "‘" + pos.file + ":" + toString pos.line + "’" else "«unknown-file»";
in
- if !allowUnfree && (let l = lib.lists.toList attrs.meta.license or []; in lib.lists.elem "unfree" l || lib.lists.elem "unfree-redistributable" l) then
+ if !allowUnfree && (let l = lib.lists.toList attrs.meta.license or []; in lib.lists.elem "unfree" l || lib.lists.elem "unfree-redistributable" l) && !(allowUnfreePredicate attrs) then
throw ''
Package ‘${attrs.name}’ in ${pos'} has an unfree license, refusing to evaluate. You can set
{ nixpkgs.config.allowUnfree = true; }
diff --git a/pkgs/tools/X11/nitrogen/default.nix b/pkgs/tools/X11/nitrogen/default.nix
new file mode 100644
index 00000000000..beecffd4b06
--- /dev/null
+++ b/pkgs/tools/X11/nitrogen/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, pkgconfig, glib, gtk2, gtkmm }:
+
+let version = "1.5.2";
+in
+stdenv.mkDerivation rec {
+ name = "nitrogen-${version}";
+
+ src = fetchurl {
+ url = "http://projects.l3ib.org/nitrogen/files/nitrogen-${version}.tar.gz";
+ sha256 = "60a2437ce6a6c0ba44505fc8066c1973140d4bb48e1e5649f525c7b0b8bf9fd2";
+ };
+
+ buildInputs = [ glib gtk2 gtkmm pkgconfig ];
+
+ NIX_LDFLAGS = "-lX11";
+
+ patches = [ ./nitrogen-env-bash.patch ];
+
+ meta = {
+ description = "A wallpaper browser and setter for X11";
+ longDescription = ''
+ nitrogen is a lightweight utility that can set the root background on X11.
+ It operates independently of any desktop environment, and supports
+ multi-head with Xinerama. Wallpapers are browsable with a convenient GUI,
+ and settings are stored in a human-readable config file.
+ '';
+ homepage = http://projects.l3ib.org/nitrogen/;
+ license = stdenv.lib.licenses.gpl2;
+ platforms = stdenv.lib.platforms.linux;
+ maintainer = [ stdenv.lib.maintainers.auntie ];
+ };
+}
diff --git a/pkgs/tools/X11/nitrogen/nitrogen-env-bash.patch b/pkgs/tools/X11/nitrogen/nitrogen-env-bash.patch
new file mode 100644
index 00000000000..dd8574dcd62
--- /dev/null
+++ b/pkgs/tools/X11/nitrogen/nitrogen-env-bash.patch
@@ -0,0 +1,10 @@
+diff --git a/data/icon-theme-installer b/data/icon-theme-installer
+index 328cf73..ca5d226 100755
+--- a/data/icon-theme-installer
++++ b/data/icon-theme-installer
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/usr/bin/env bash
+
+ # icon-theme-installer
+ # Copyright (C) 2006 Novell, Inc.
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index 2cb599f6a64..5a09ec2a80b 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -3,11 +3,11 @@ let
s = # Generated upstream information
rec {
baseName="glusterfs";
- version="3.4.2";
+ version="3.4.3";
name="${baseName}-${version}";
hash="1vzdihsy4da11jsa46n1n2xk6d40g7v0zrlqvs3pb9k07fql5kag";
- url="http://download.gluster.org/pub/gluster/glusterfs/3.4/3.4.2/glusterfs-3.4.2.tar.gz";
- sha256="1vzdihsy4da11jsa46n1n2xk6d40g7v0zrlqvs3pb9k07fql5kag";
+ url="http://download.gluster.org/pub/gluster/glusterfs/3.4/3.4.3/glusterfs-3.4.3.tar.gz";
+ sha256="0j1yvpdb1bydsh3pqlyr23mfvra5bap9rxba910s9cn61mpy99bj";
};
buildInputs = [
fuse bison flex openssl python ncurses readline
diff --git a/pkgs/tools/graphics/nifskope/default.nix b/pkgs/tools/graphics/nifskope/default.nix
index 32410caeeff..13dc27921a4 100644
--- a/pkgs/tools/graphics/nifskope/default.nix
+++ b/pkgs/tools/graphics/nifskope/default.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
description = "A tool for analyzing and editing NetImmerse/Gamebryo '*.nif' files";
maintainers = [ stdenv.lib.maintainers.eelco ];
platforms = stdenv.lib.platforms.linux;
- licence = stdenv.lib.licenses.bsd3;
+ license = stdenv.lib.licenses.bsd3;
};
}
diff --git a/pkgs/tools/misc/tmpwatch/default.nix b/pkgs/tools/misc/tmpwatch/default.nix
index befe517c225..c19d58b9816 100644
--- a/pkgs/tools/misc/tmpwatch/default.nix
+++ b/pkgs/tools/misc/tmpwatch/default.nix
@@ -8,11 +8,11 @@ stdenv.mkDerivation rec {
sha256 = "1m5859ngwx61l1i4s6fja2avf1hyv6w170by273w8nsin89825lk";
};
- meta = {
+ meta = with stdenv.lib; {
homepage = https://fedorahosted.org/tmpwatch/;
description = "The tmpwatch utility recursively searches through specified directories and removes files which have not been accessed in a specified period of time.";
- licence = "GPLv2";
- maintainers = with stdenv.lib.maintainers; [ vlstill ];
- platforms = stdenv.lib.platforms.unix;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ vlstill ];
+ platforms = platforms.unix;
};
}
diff --git a/pkgs/tools/security/pass/default.nix b/pkgs/tools/security/pass/default.nix
index d3e2c50991a..f9bc0171592 100644
--- a/pkgs/tools/security/pass/default.nix
+++ b/pkgs/tools/security/pass/default.nix
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
};
installPhase = ''
+ mkdir -p "$out/share/bash-completion/completions"
mkdir -p "$out/share/zsh/site-functions"
mkdir -p "$out/share/fish/completions"
diff --git a/pkgs/tools/security/tor/default.nix b/pkgs/tools/security/tor/default.nix
index 5062d26595e..57c4a9c5662 100644
--- a/pkgs/tools/security/tor/default.nix
+++ b/pkgs/tools/security/tor/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, libevent, openssl, zlib }:
stdenv.mkDerivation rec {
- name = "tor-0.2.4.21";
+ name = "tor-0.2.4.22";
src = fetchurl {
url = "https://archive.torproject.org/tor-package-archive/${name}.tar.gz";
- sha256 = "1kpijqapml7y4sl54qgyrzppxxhmy4xgk2y7wkqwjxn7q24g97d1";
+ sha256 = "0k39ppcvld6p08yaf4rpspb34z4f5863j0d605yrm4dqjcp99xvb";
};
buildInputs = [ libevent openssl zlib ];
diff --git a/pkgs/tools/security/tor/torbrowser.nix b/pkgs/tools/security/tor/torbrowser.nix
index 8ee33272eda..7be7c79888e 100644
--- a/pkgs/tools/security/tor/torbrowser.nix
+++ b/pkgs/tools/security/tor/torbrowser.nix
@@ -20,13 +20,13 @@ let
in stdenv.mkDerivation rec {
name = "tor-browser-${version}";
- version = "3.6.1";
+ version = "3.6.2";
src = fetchurl {
url = "https://archive.torproject.org/tor-package-archive/torbrowser/${version}/tor-browser-linux${bits}-${version}_en-US.tar.xz";
sha256 = if bits == "64" then
- "1461l54zc7xgx2zcmi8wra38dknjyy8d2xk84chrwl6ckn2dfzv3" else
- "183a1wf4a88sijfqr3m6gmvncq8w60i2rkymccg422n7q96j7hqs";
+ "1rfv59k9mia6hr1z1k4im20dy59ir7i054cgf78sfj1zsh08q7hf" else
+ "1klkk1k5r51pcx44r1z3sw08fqcl2f2v5iblf4yh83js482c37r8";
};
patchPhase = ''
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f283d45381c..ffe8e7185b6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -278,6 +278,8 @@ let
dotnetfx = dotnetfx40;
};
+ scatterOutputHook = makeSetupHook {} ../build-support/setup-hooks/scatter_output.sh;
+
vsenv = callPackage ../build-support/vsenv {
vs = vs90wrapper;
};
@@ -1609,6 +1611,8 @@ let
nilfs_utils = callPackage ../tools/filesystems/nilfs-utils {};
+ nitrogen = callPackage ../tools/X11/nitrogen {};
+
nlopt = callPackage ../development/libraries/nlopt {};
npapi_sdk = callPackage ../development/libraries/npapi-sdk {};
@@ -5140,6 +5144,8 @@ let
libmhash = callPackage ../development/libraries/libmhash {};
+ libmodbus = callPackage ../development/libraries/libmodbus {};
+
libmtp = callPackage ../development/libraries/libmtp { };
libmsgpack = callPackage ../development/libraries/libmsgpack { };
@@ -5150,6 +5156,8 @@ let
libnice = callPackage ../development/libraries/libnice { };
+ liboping = callPackage ../development/libraries/liboping { };
+
libplist = callPackage ../development/libraries/libplist { };
libQGLViewer = callPackage ../development/libraries/libqglviewer { };
@@ -5489,6 +5497,8 @@ let
libxmlxx = callPackage ../development/libraries/libxmlxx { };
+ libxmp = callPackage ../development/libraries/libxmp { };
+
libxslt = callPackage ../development/libraries/libxslt { };
libixp_for_wmii = lowPrio (import ../development/libraries/libixp_for_wmii {
@@ -6686,6 +6696,8 @@ let
ngircd = callPackage ../servers/irc/ngircd { };
+ nsd = callPackage ../servers/dns/nsd { };
+
opensmtpd = callPackage ../servers/mail/opensmtpd { };
petidomo = callPackage ../servers/mail/petidomo { };
@@ -9408,6 +9420,12 @@ let
conf = config.st.conf or null;
};
+ sweethome3d = recurseIntoAttrs ( (callPackage ../applications/misc/sweethome3d { })
+ // (callPackage ../applications/misc/sweethome3d/editors.nix {
+ sweethome3dApp = sweethome3d.application;
+ })
+ );
+
sxiv = callPackage ../applications/graphics/sxiv { };
bittorrentSync = callPackage ../applications/networking/bittorrentsync { };
@@ -9894,6 +9912,8 @@ let
xmove = callPackage ../applications/misc/xmove { };
+ xmp = callPackage ../applications/audio/xmp { };
+
xnee = callPackage ../tools/X11/xnee {
# Work around "missing separator" error.
stdenv = overrideInStdenv stdenv [ gnumake381 ];
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index b1ea4059da5..282da6fcd90 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -193,8 +193,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
attoparsec_0_10_4_0 = callPackage ../development/libraries/haskell/attoparsec/0.10.4.0.nix {};
attoparsec_0_11_3_1 = callPackage ../development/libraries/haskell/attoparsec/0.11.3.1.nix {};
attoparsec_0_11_3_4 = callPackage ../development/libraries/haskell/attoparsec/0.11.3.4.nix {};
- attoparsec_0_12_0_0 = callPackage ../development/libraries/haskell/attoparsec/0.12.0.0.nix {};
- attoparsec = self.attoparsec_0_12_0_0;
+ attoparsec_0_12_1_0 = callPackage ../development/libraries/haskell/attoparsec/0.12.1.0.nix {};
+ attoparsec = self.attoparsec_0_12_1_0;
attoparsecBinary = callPackage ../development/libraries/haskell/attoparsec-binary {};
@@ -286,6 +286,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
boundingboxes_0_2 = callPackage ../development/libraries/haskell/boundingboxes/0.2.nix {};
boundingboxes = self.boundingboxes_0_2;
+ BoundedChan = callPackage ../development/libraries/haskell/BoundedChan {};
+
brainfuck = callPackage ../development/libraries/haskell/brainfuck {};
bson = callPackage ../development/libraries/haskell/bson {};
@@ -1002,6 +1004,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
hcltest = callPackage ../development/libraries/haskell/hcltest {};
+ hedis = callPackage ../development/libraries/haskell/hedis {};
+
heredoc = callPackage ../development/libraries/haskell/heredoc {};
hexpat = callPackage ../development/libraries/haskell/hexpat {};
@@ -1156,6 +1160,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
hspec = callPackage ../development/libraries/haskell/hspec {};
+ hspecWai = callPackage ../development/libraries/haskell/hspec-wai {};
+
hspec2 = callPackage ../development/libraries/haskell/hspec2 {};
hspecExpectations = callPackage ../development/libraries/haskell/hspec-expectations {};
@@ -1968,6 +1974,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
snapletAcidState = callPackage ../development/libraries/haskell/snaplet-acid-state {};
+ snapletRedis = callPackage ../development/libraries/haskell/snaplet-redis {};
+
snapletStripe = callPackage ../development/libraries/haskell/snaplet-stripe {};
snapBlaze = callPackage ../development/libraries/haskell/snap-blaze/default.nix {};
@@ -2414,6 +2422,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
waiAppStatic = callPackage ../development/libraries/haskell/wai-app-static {};
+ waiConduit = callPackage ../development/libraries/haskell/wai-conduit {};
+
waiExtra = callPackage ../development/libraries/haskell/wai-extra {};
waiHandlerLaunch = callPackage ../development/libraries/haskell/wai-handler-launch {};
@@ -2656,6 +2666,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
hslogger = callPackage ../development/tools/haskell/hslogger {};
+ ShellCheck = callPackage ../development/tools/misc/ShellCheck { };
+
tar = callPackage ../development/libraries/haskell/tar {};
threadscope = callPackage ../development/tools/haskell/threadscope {};
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index bca0a468809..fb7fabe7daa 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -2334,6 +2334,27 @@ rec {
};
};
+ pyrtlsdr = buildPythonPackage rec {
+ name = "pyrtlsdr-0.2.0";
+
+ src = fetchurl {
+ url = "http://pypi.python.org/packages/source/p/pyrtlsdr/${name}.zip";
+ md5 = "646336675a00d38e6f54e77a17011b95";
+ };
+
+ postPatch = ''
+ sed "s|driver_files =.*|driver_files = ['${pkgs.rtl-sdr}/lib/librtlsdr.so']|" -i rtlsdr/librtlsdr.py
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Python wrapper for librtlsdr (a driver for Realtek RTL2832U based SDR's)";
+ homepage = https://github.com/roger-/pyrtlsdr;
+ license = licenses.gpl3;
+ platforms = platforms.linux;
+ maintainers = [ maintainers.bjornfor ];
+ };
+ };
+
repoze_sendmail = buildPythonPackage rec {
name = "repoze.sendmail-4.1";
@@ -9083,11 +9104,11 @@ rec {
libvirt = pkgs.stdenv.mkDerivation rec {
name = "libvirt-python-${version}";
- version = "1.2.4";
+ version = "1.2.5";
src = fetchurl {
url = "http://libvirt.org/sources/python/${name}.tar.gz";
- sha256 = "0zi1mxjcv9dz5hy54lwgk9j4i8r20hhijbxxn843h2w7p1ch1wx2";
+ sha256 = "0r0v48nkkxfagckizbcf67xkmyd1bnq36d30b58zmhvl0abryz7p";
};
buildInputs = [ python pkgs.pkgconfig pkgs.libvirt lxml ];