diff --git a/doc/outline.txt b/doc/outline.txt
deleted file mode 100644
index 816cdbdc3ed..00000000000
--- a/doc/outline.txt
+++ /dev/null
@@ -1,158 +0,0 @@
-- The standard environment
-
- (Some of this can be moved from the Nix manual)
-
- - Special attributes
-
- - Generic builder
-
- - Helper functions
-
- - GCC / ld wrapper (+ env vars)
-
- - Phases (+ how to add phases) and hooks
-
- - Override functions for stdenv
-
- - Overriding GCC
-
- - Overriding the setup script
-
- - Predefined override functions in all-packages.nix: static binary
- stdenv, dietlibc stdenv
-
- - Stdenv bootstrap; how to update the Linux bootstrap binaries
-
- - Specific platform notes (Linux, Native, Cygwin, Mingw)
-
-
-- Support for specific languages
-
- - Perl
-
- - Generic Perl builder
-
- - Python
-
- - Wrapper generation
-
- - Haskell
-
- - TODO
-
- - Java
-
- - TODO; Java needs lots of improvement
-
- - TeX/LaTeX
-
- - Special support for building TeX documents
-
-
-- Special kinds of applications
-
- - OpenGL apps
-
- - Binary-only apps
-
- - Linux kernel modules
-
- - Mozilla plugins/extensions
-
- - X apps
-
- - KDE apps
-
- - GConf-based apps
-
- - Programs that need wrappers
-
- - makeWrapper etc.
-
- - Initial ramdisks
-
-
-- Library functions
-
- - i.e. in lib/default.nix
-
-
-- Specific package notes
-
- - Linux kernel; how to update; feature tests
-
- - X.org; how to update
-
- - Gnome; how to update
-
- - GCC?
-
- - GHC?
-
- - ...
-
-
-- Meta attributes
-
- - License attr; possible values
-
-
-- Virtual machine support (for the build farm)
-
- - vmtools
-
- - KVM notes
-
- - Performing a build in a VM
-
- - In the host FS
-
- - In a disk image
-
- - RPM builds
-
- - RPM image creation
-
- - Deb builds
-
- - Deb image creation
-
- - Debugging VM builds
-
-
-- Guidelines for Nixpkgs contributions
-
- - File naming conventions
-
- - Versioning of packages
-
- - Tree organisation
-
- - Variable naming
-
- - Layout / indentations style
-
- - Output FS hierarchy (e.g. $out/share/man instead of $out/man)
-
-
-- Misc
-
- - Building outside of the Nixpkgs tree
-
- - Config options
-
- - Downloading stuff
-
- - fetchurl
-
- - mirror:// scheme
-
- - fetchsvn
-
- - fetchcvs
-
- - fetchdarcs
-
-
-- Appendix: Nixpkgs config options
-
diff --git a/lib/sources.nix b/lib/sources.nix
index 8d259c0837e..a80e4397d6a 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -12,7 +12,10 @@ rec {
# Filter out Subversion and CVS directories.
(type == "directory" && (baseName == ".git" || baseName == ".svn" || baseName == "CVS" || baseName == ".hg")) ||
# Filter out backup files.
- (lib.hasSuffix "~" baseName)
+ lib.hasSuffix "~" baseName ||
+ # Filter out generates files.
+ lib.hasSuffix ".o" baseName ||
+ lib.hasSuffix ".so" baseName
);
in src: builtins.filterSource filter src;
diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index 714de646eb7..f70e8c292c4 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -5,7 +5,25 @@ with pkgs.lib;
let
ids = config.ids;
- users = config.users;
+ cfg = config.users;
+
+ passwordDescription = ''
+ The options hashedPassword,
+ password and passwordFile
+ controls what password is set for the user.
+ hashedPassword overrides both
+ password and passwordFile.
+ password overrides passwordFile.
+ If none of these three options are set, no password is assigned to
+ the user, and the user will not be able to do password logins.
+ If the option users.mutableUsers is true, the
+ password defined in one of the three options will only be set when
+ the user is created for the first time. After that, you are free to
+ change the password with the ordinary user management commands. If
+ users.mutableUsers is false, you cannot change
+ user passwords, they will always be set according to the password
+ options.
+ '';
userOpts = { name, config, ... }: {
@@ -28,9 +46,8 @@ let
};
uid = mkOption {
- type = with types; uniq (nullOr int);
- default = null;
- description = "The account UID. If undefined, NixOS will select a free UID.";
+ type = with types; uniq int;
+ description = "The account UID.";
};
group = mkOption {
@@ -60,31 +77,54 @@ let
createHome = mkOption {
type = types.bool;
default = false;
- description = "If true, the home directory will be created automatically.";
+ description = ''
+ If true, the home directory will be created automatically. If this
+ option is true and the home directory already exists but is not
+ owned by the user, directory owner and group will be changed to
+ match the user.
+ '';
};
useDefaultShell = mkOption {
type = types.bool;
default = false;
- description = "If true, the user's shell will be set to users.defaultUserShell.";
+ description = ''
+ If true, the user's shell will be set to
+ cfg.defaultUserShell.
+ '';
+ };
+
+ hashedPassword = mkOption {
+ type = with types; uniq (nullOr str);
+ default = null;
+ description = ''
+ Specifies the (hashed) password for the user.
+ ${passwordDescription}
+ '';
};
password = mkOption {
type = with types; uniq (nullOr str);
default = null;
description = ''
- The user's password. If undefined, no password is set for
- the user. Warning: do not set confidential information here
- because it is world-readable in the Nix store. This option
- should only be used for public accounts such as
- guest.
+ Specifies the (clear text) password for the user.
+ Warning: do not set confidential information here
+ because it is world-readable in the Nix store. This option
+ should only be used for public accounts.
+ ${passwordDescription}
'';
};
- isSystemUser = mkOption {
- type = types.bool;
- default = true;
- description = "Indicates if the user is a system user or not.";
+ passwordFile = mkOption {
+ type = with types; uniq (nullOr string);
+ default = null;
+ description = ''
+ The path to a file that contains the user's password. The password
+ file is read on each system activation. The file should contain
+ exactly one line, which should be the password in an encrypted form
+ that is suitable for the chpasswd -e command.
+ ${passwordDescription}
+ '';
};
createUser = mkOption {
@@ -96,19 +136,11 @@ let
then not modify any of the basic properties for the user account.
'';
};
-
- isAlias = mkOption {
- type = types.bool;
- default = false;
- description = "If true, the UID of this user is not required to be unique and can thus alias another user.";
- };
-
};
config = {
name = mkDefault name;
- uid = mkDefault (attrByPath [name] null ids.uids);
- shell = mkIf config.useDefaultShell (mkDefault users.defaultUserShell);
+ shell = mkIf config.useDefaultShell (mkDefault cfg.defaultUserShell);
};
};
@@ -123,29 +155,114 @@ let
};
gid = mkOption {
- type = with types; uniq (nullOr int);
- default = null;
- description = "The GID of the group. If undefined, NixOS will select a free GID.";
+ type = with types; uniq int;
+ description = "The GID of the group.";
+ };
+
+ members = mkOption {
+ type = with types; listOf string;
+ default = [];
+ description = ''
+ The user names of the group members, added to the
+ /etc/group file.
+ '';
};
};
config = {
name = mkDefault name;
- gid = mkDefault (attrByPath [name] null ids.gids);
};
};
- # Note: the 'X' in front of the password is to distinguish between
- # having an empty password, and not having a password.
- serializedUser = u: "${u.name}\n${u.description}\n${if u.uid != null then toString u.uid else ""}\n${u.group}\n${toString (concatStringsSep "," u.extraGroups)}\n${u.home}\n${u.shell}\n${toString u.createHome}\n${if u.password != null then "X" + u.password else ""}\n${toString u.isSystemUser}\n${toString u.createUser}\n${toString u.isAlias}\n";
-
- usersFile = pkgs.writeText "users" (
+ getGroup = gname:
let
- p = partition (u: u.isAlias) (attrValues config.users.extraUsers);
- in concatStrings (map serializedUser p.wrong ++ map serializedUser p.right));
+ groups = mapAttrsToList (n: g: g) (
+ filterAttrs (n: g: g.name == gname) cfg.extraGroups
+ );
+ in
+ if length groups == 1 then head groups
+ else if groups == [] then throw "Group ${gname} not defined"
+ else throw "Group ${gname} has multiple definitions";
+ getUser = uname:
+ let
+ users = mapAttrsToList (n: u: u) (
+ filterAttrs (n: u: u.name == uname) cfg.extraUsers
+ );
+ in
+ if length users == 1 then head users
+ else if users == [] then throw "User ${uname} not defined"
+ else throw "User ${uname} has multiple definitions";
+
+ mkGroupEntry = gname:
+ let
+ g = getGroup gname;
+ users = mapAttrsToList (n: u: u.name) (
+ filterAttrs (n: u: elem g.name u.extraGroups) cfg.extraUsers
+ );
+ in concatStringsSep ":" [
+ g.name "x" (toString g.gid)
+ (concatStringsSep "," (users ++ (filter (u: !(elem u users)) g.members)))
+ ];
+
+ mkPasswdEntry = uname: let u = getUser uname; in
+ concatStringsSep ":" [
+ u.name "x" (toString u.uid)
+ (toString (getGroup u.group).gid)
+ u.description u.home u.shell
+ ];
+
+ sortOn = a: sort (as1: as2: lessThan (getAttr a as1) (getAttr a as2));
+
+ groupFile = pkgs.writeText "group" (
+ concatStringsSep "\n" (map (g: mkGroupEntry g.name) (
+ sortOn "gid" (attrValues cfg.extraGroups)
+ ))
+ );
+
+ passwdFile = pkgs.writeText "passwd" (
+ concatStringsSep "\n" (map (u: mkPasswdEntry u.name) (
+ sortOn "uid" (filter (u: u.createUser) (attrValues cfg.extraUsers))
+ ))
+ );
+
+ # If mutableUsers is true, this script adds all users/groups defined in
+ # users.extra{Users,Groups} to /etc/{passwd,group} iff there isn't any
+ # existing user/group with the same name in those files.
+ # If mutableUsers is false, the /etc/{passwd,group} files will simply be
+ # replaced with the users/groups defined in the NixOS configuration.
+ # The merging procedure could certainly be improved, and instead of just
+ # keeping the lines as-is from /etc/{passwd,group} they could be combined
+ # in some way with the generated content from the NixOS configuration.
+ merger = src: pkgs.writeScript "merger" ''
+ #!${pkgs.bash}/bin/bash
+
+ PATH=${pkgs.gawk}/bin:${pkgs.gnugrep}/bin:$PATH
+
+ ${if !cfg.mutableUsers
+ then ''cp ${src} $1.tmp''
+ else ''awk -F: '{ print "^"$1":.*" }' $1 | egrep -vf - ${src} | cat $1 - > $1.tmp''
+ }
+
+ # set mtime to +1, otherwise change might go unnoticed (vipw/vigr only looks at mtime)
+ touch -m -t $(date -d @$(($(stat -c %Y $1)+1)) +%Y%m%d%H%M.%S) $1.tmp
+
+ mv -f $1.tmp $1
+ '';
+
+ idsAreUnique = set: idAttr: !(fold (name: args@{ dup, acc }:
+ let
+ id = builtins.toString (builtins.getAttr idAttr (builtins.getAttr name set));
+ exists = builtins.hasAttr id acc;
+ newAcc = acc // (builtins.listToAttrs [ { name = id; value = true; } ]);
+ in if dup then args else if exists
+ then builtins.trace "Duplicate ${idAttr} ${id}" { dup = true; acc = null; }
+ else { dup = false; acc = newAcc; }
+ ) { dup = false; acc = {}; } (builtins.attrNames set)).dup;
+ uidsAreUnique = idsAreUnique cfg.extraUsers "uid";
+ gidsAreUnique = idsAreUnique cfg.extraGroups "gid";
in
{
@@ -154,6 +271,36 @@ in
options = {
+ users.mutableUsers = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ If true, you are free to add new users and groups to the system
+ with the ordinary useradd and
+ groupadd commands. On system activation, the
+ existing contents of the /etc/passwd and
+ /etc/group files will be merged with the
+ contents generated from the users.extraUsers and
+ users.extraGroups options. If
+ mutableUsers is false, the contents of the user and
+ group files will simply be replaced on system activation. This also
+ holds for the user passwords; if this option is false, all changed
+ passwords will be reset according to the
+ users.extraUsers configuration on activation. If
+ this option is true, the initial password for a user will be set
+ according to users.extraUsers, but existing passwords
+ will not be changed.
+ '';
+ };
+
+ users.enforceIdUniqueness = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether to require that no two users/groups share the same uid/gid.
+ '';
+ };
+
users.extraUsers = mkOption {
default = {};
type = types.loaOf types.optionSet;
@@ -194,11 +341,17 @@ in
example = "!";
description = ''
The (hashed) password for the root account set on initial
- installation. The empty string denotes that root can login
+ installation. The empty string denotes that root can login
locally without a password (but not via remote services such
as SSH, or indirectly via su or
- sudo). The string !
+ sudo). The string !
prevents root from logging in using a password.
+ Note, setting this option sets
+ users.extraUsers.root.hashedPassword.
+ Note, if users.mutableUsers is false
+ you cannot change the root password manually, so in that case
+ the name of this option is a bit misleading, since it will define
+ the root password beyond the user initialisation phase.
'';
};
@@ -211,144 +364,94 @@ in
users.extraUsers = {
root = {
+ uid = ids.uids.root;
description = "System administrator";
home = "/root";
- shell = config.users.defaultUserShell;
+ shell = cfg.defaultUserShell;
group = "root";
+ hashedPassword = config.security.initialRootPassword;
};
nobody = {
+ uid = ids.uids.nobody;
description = "Unprivileged account (don't use!)";
+ group = "nogroup";
};
};
users.extraGroups = {
- root = { };
- wheel = { };
- disk = { };
- kmem = { };
- tty = { };
- floppy = { };
- uucp = { };
- lp = { };
- cdrom = { };
- tape = { };
- audio = { };
- video = { };
- dialout = { };
- nogroup = { };
- users = { };
- nixbld = { };
- utmp = { };
- adm = { }; # expected by journald
+ root.gid = ids.gids.root;
+ wheel.gid = ids.gids.wheel;
+ disk.gid = ids.gids.disk;
+ kmem.gid = ids.gids.kmem;
+ tty.gid = ids.gids.tty;
+ floppy.gid = ids.gids.floppy;
+ uucp.gid = ids.gids.uucp;
+ lp.gid = ids.gids.lp;
+ cdrom.gid = ids.gids.cdrom;
+ tape.gid = ids.gids.tape;
+ audio.gid = ids.gids.audio;
+ video.gid = ids.gids.video;
+ dialout.gid = ids.gids.dialout;
+ nogroup.gid = ids.gids.nogroup;
+ users.gid = ids.gids.users;
+ nixbld.gid = ids.gids.nixbld;
+ utmp.gid = ids.gids.utmp;
+ adm.gid = ids.gids.adm;
};
- system.activationScripts.rootPasswd = stringAfter [ "etc" ]
- ''
- # If there is no password file yet, create a root account with an
- # empty password.
- if ! test -e /etc/passwd; then
- rootHome=/root
- touch /etc/passwd; chmod 0644 /etc/passwd
- touch /etc/group; chmod 0644 /etc/group
- touch /etc/shadow; chmod 0600 /etc/shadow
- # Can't use useradd, since it complains that it doesn't know us
- # (bootstrap problem!).
- echo "root:x:0:0:System administrator:$rootHome:${config.users.defaultUserShell}" >> /etc/passwd
- echo "root:${config.security.initialRootPassword}:::::::" >> /etc/shadow
- fi
+ system.activationScripts.users =
+ let
+ mkhomeUsers = filterAttrs (n: u: u.createHome) cfg.extraUsers;
+ setpwUsers = filterAttrs (n: u: u.createUser) cfg.extraUsers;
+ setpw = n: u: ''
+ setpw=yes
+ ${optionalString cfg.mutableUsers ''
+ test "$(getent shadow '${u.name}' | cut -d: -f2)" != "x" && setpw=no
+ ''}
+ if [ "$setpw" == "yes" ]; then
+ ${if !(isNull u.hashedPassword)
+ then ''
+ echo "${u.name}:${u.hashedPassword}" | \
+ ${pkgs.shadow}/sbin/chpasswd -e''
+ else if u.password == ""
+ then "passwd -d '${u.name}' &>/dev/null"
+ else if !(isNull u.password)
+ then ''
+ echo "${u.name}:${u.password}" | ${pkgs.shadow}/sbin/chpasswd''
+ else if !(isNull u.passwordFile)
+ then ''
+ echo -n "${u.name}:" | cat - "${u.passwordFile}" | \
+ ${pkgs.shadow}/sbin/chpasswd -e
+ ''
+ else "passwd -l '${u.name}' &>/dev/null"
+ }
+ fi
+ '';
+ mkhome = n: u:
+ let
+ uid = toString u.uid;
+ gid = toString ((getGroup u.group).gid);
+ h = u.home;
+ in ''
+ test -a "${h}" || mkdir -p "${h}" || true
+ test "$(stat -c %u "${h}")" = ${uid} || chown ${uid} "${h}" || true
+ test "$(stat -c %g "${h}")" = ${gid} || chgrp ${gid} "${h}" || true
+ '';
+ in stringAfter [ "etc" ] ''
+ touch /etc/group
+ touch /etc/passwd
+ VISUAL=${merger groupFile} ${pkgs.shadow}/sbin/vigr &>/dev/null
+ VISUAL=${merger passwdFile} ${pkgs.shadow}/sbin/vipw &>/dev/null
+ ${pkgs.shadow}/sbin/grpconv
+ ${pkgs.shadow}/sbin/pwconv
+ ${concatStrings (mapAttrsToList mkhome mkhomeUsers)}
+ ${concatStrings (mapAttrsToList setpw setpwUsers)}
'';
- # Print a reminder for users to set a root password.
- environment.interactiveShellInit =
- ''
- if [ "$UID" = 0 ]; then
- read _l < /etc/shadow
- if [ "''${_l:0:6}" = root:: ]; then
- cat >&2 < pkgs.stdenv.isx86_64;
+ message = "Option driSupport32Bit only makes sens on a 64-bit system.";
+ };
+
system.activationScripts.setup-opengl.deps = [];
system.activationScripts.setup-opengl.text = ''
rm -f /run/opengl-driver{,-32}
- ${optionalString (!cfg.driSupport32Bit) "ln -sf opengl-driver /run/opengl-driver-32"}
-
- ${# !!! The OpenGL driver depends on what's detected at runtime.
- if elem "nvidia" cfg.videoDrivers then
+ ${optionalString (pkgs.stdenv.isi686) "ln -sf opengl-driver /run/opengl-driver-32"}
+ ''
+ #TODO: The OpenGL driver should depend on what's detected at runtime.
+ +( if elem "nvidia" cfg.videoDrivers then
''
ln -sf ${kernelPackages.nvidia_x11} /run/opengl-driver
${optionalString cfg.driSupport32Bit
@@ -89,8 +94,7 @@ in {
${optionalString cfg.driSupport32Bit
"ln -sf ${pkgs_i686.mesa_drivers} /run/opengl-driver-32"}
''
- }
- '';
+ );
environment.variables.LD_LIBRARY_PATH =
[ "/run/opengl-driver/lib" "/run/opengl-driver-32/lib" ]
diff --git a/nixos/modules/system/boot/loader/gummiboot/gummiboot-builder.py b/nixos/modules/system/boot/loader/gummiboot/gummiboot-builder.py
index f49c55c7e95..db73544181b 100644
--- a/nixos/modules/system/boot/loader/gummiboot/gummiboot-builder.py
+++ b/nixos/modules/system/boot/loader/gummiboot/gummiboot-builder.py
@@ -74,8 +74,8 @@ def remove_old_entries(gens):
slice_end = -1 * len(".conf")
known_paths = []
for gen in gens:
- known_paths.append copy_from_profile(gen, "kernel", True)
- known_paths.append copy_from_profile(gen, "initrd", True)
+ known_paths.append(copy_from_profile(gen, "kernel", True))
+ known_paths.append(copy_from_profile(gen, "initrd", True))
for path in glob.iglob("@efiSysMountPoint@/loader/entries/nixos-generation-[1-9]*.conf"):
try:
gen = int(path[slice_start:slice_end])
diff --git a/nixos/modules/system/boot/stage-2-init.sh b/nixos/modules/system/boot/stage-2-init.sh
index 2fadd3de1f0..e0ff258c0ee 100644
--- a/nixos/modules/system/boot/stage-2-init.sh
+++ b/nixos/modules/system/boot/stage-2-init.sh
@@ -131,6 +131,15 @@ if ! mountpoint -q /run; then
mount -t tmpfs -o "mode=0755,size=@runSize@" none /run
fi
+# Create a ramfs on /run/keys to hold secrets that shouldn't
+# be written to disk (generally used for nixops, harmless
+# elsehwere)
+if ! mountpoint -q /run/keys; then
+ rm -rf /run/keys
+ mkdir -m 0700 /run/keys
+ mount -t ramfs none /run/keys
+fi
+
mkdir -m 0755 -p /run/lock
diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix
index 2218e1045eb..2483ee63d57 100644
--- a/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixos/modules/virtualisation/qemu-vm.nix
@@ -387,7 +387,7 @@ in
# When building a regular system configuration, override whatever
# video driver the host uses.
services.xserver.videoDriver = mkVMOverride null;
- services.xserver.videoDrivers = mkVMOverride [ "vesa" ];
+ services.mesa.videoDrivers = mkVMOverride [ "vesa" ];
services.xserver.defaultDepth = mkVMOverride 0;
services.xserver.resolutions = mkVMOverride [ { x = 1024; y = 768; } ];
services.xserver.monitorSection =
diff --git a/nixos/modules/virtualisation/virtualbox-guest.nix b/nixos/modules/virtualisation/virtualbox-guest.nix
index 664fd21781c..9dda455e5d3 100644
--- a/nixos/modules/virtualisation/virtualbox-guest.nix
+++ b/nixos/modules/virtualisation/virtualbox-guest.nix
@@ -52,7 +52,7 @@ optionalAttrs (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) # ugly...
serviceConfig.ExecStart = "@${kernel.virtualboxGuestAdditions}/sbin/VBoxService VBoxService --foreground";
};
- services.xserver.videoDrivers = mkOverride 50 [ "virtualbox" ];
+ services.mesa.videoDrivers = mkOverride 50 [ "virtualbox" ];
services.xserver.config =
''
diff --git a/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix b/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
index 0e75005d13b..69f1eef9cec 100644
--- a/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-gtk-greeter/default.nix
@@ -20,7 +20,13 @@ stdenv.mkDerivation rec {
sha256 = "1nb8ljrbrp1zga083g3b633xi3izxxm4jipw1qgial1x16mqc0hz";
};
- patches = [ ./lightdm-gtk-greeter.patch ];
+ patches = [
+ ./lightdm-gtk-greeter.patch
+ (fetchurl { # CVE-2014-0979, https://bugs.launchpad.net/lightdm-gtk-greeter/+bug/1266449
+ url = "https://launchpadlibrarian.net/161796033/07_fix-NULL-username.patch";
+ sha256 = "1sqkhsz1z10k6vlmlrqrfx452lznv30885fmnzc73p2zxdlw9q1a";
+ })
+ ];
patchFlags = "-p1";
buildInputs = [ pkgconfig lightdm intltool ]
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index 93e95c8d87d..31812bcb989 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -39,11 +39,14 @@ let
7z a -tzip $out/$name/lib/snappy-java-1.0.5.jar .
mkdir -p $out/bin
+
+ jdk=${jdk}/lib/openjdk
+
makeWrapper $out/$name/bin/idea.sh $out/bin/idea \
--prefix PATH : ${jdk}/bin:${coreutils}/bin:${gnugrep}/bin:${which}/bin:${git}/bin \
--prefix LD_RUN_PATH : ${stdenv.gcc.gcc}/lib/ \
- --prefix JDK_HOME : ${jdk} \
- --prefix IDEA_JDK : ${jdk}
+ --prefix JDK_HOME : $jdk \
+ --prefix IDEA_JDK : $jdk
mkdir -p $out/share/applications
cp ${ideaItem}/share/applications/* $out/share/applications
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
index f1fd9adbe86..5a2afebdd5c 100644
--- a/pkgs/applications/editors/netbeans/default.nix
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -11,10 +11,10 @@ let
};
in
stdenv.mkDerivation {
- name = "netbeans-7.2";
+ name = "netbeans-7.4";
src = fetchurl {
- url = http://download.netbeans.org/netbeans/7.2/final/zip/netbeans-7.2-201207171143-ml.zip;
- sha256 = "18ya1w291hdnc35vb12yqnai82wmqm7351wn82fax12kzha5fmci";
+ url = http://download.netbeans.org/netbeans/7.4/final/zip/netbeans-7.4-201310111528.zip;
+ sha256 = "0nrnghnsdix5cmp86xi1gmvarhjk2k8mlbld3dfa9impm8gpv6mx";
};
buildCommand = ''
# Unpack and copy the stuff
@@ -25,7 +25,9 @@ stdenv.mkDerivation {
# Create a wrapper capable of starting it
mkdir -p $out/bin
makeWrapper $out/netbeans/bin/netbeans $out/bin/netbeans \
- --prefix PATH : ${jdk}/bin:${which}/bin
+ --prefix PATH : ${jdk}/bin:${which}/bin \
+ --prefix JAVA_HOME : ${jdk}/lib/openjdk \
+ --add-flags "--jdkhome ${jdk}/lib/openjdk"
# Create desktop item, so we can pick it from the KDE/GNOME menu
mkdir -p $out/share/applications
diff --git a/pkgs/applications/editors/vim/ft-nix-support.patch b/pkgs/applications/editors/vim/ft-nix-support.patch
index 0e73162d33e..b2ac423092e 100644
--- a/pkgs/applications/editors/vim/ft-nix-support.patch
+++ b/pkgs/applications/editors/vim/ft-nix-support.patch
@@ -23,7 +23,7 @@ new file mode 100644
index 0000000..a2f9918
--- /dev/null
+++ b/runtime/syntax/nix.vim
-@@ -0,0 +1,40 @@
+@@ -0,0 +1,42 @@
+" Vim syntax file
+" Language: nix
+" Maintainer: Marc Weber
@@ -46,8 +46,8 @@ index 0000000..a2f9918
+ \ __readFile __toXML __toFile __filterSource __attrNames __getAttr __hasAttr __isAttrs __listToAttrs __isList
+ \ __head __tail __add __sub __lessThan __substring __stringLength
+
-+syn match nixAttr "\w\+\ze\s*="
-+syn match nixFuncArg "\zs\w\+\ze\s*:"
++syn match nixAttr "[a-zA-Z0-9-_]\+\ze\s*="
++syn match nixFuncArg "\zs[a-zA-Z0-9-_]\+\ze\s*:"
+syn region nixStringParam start=+\${+ end=+}+
+syn region nixMultiLineComment start=+/\*+ skip=+\\"+ end=+\*/+
+syn match nixEndOfLineComment "#.*$"
@@ -66,3 +66,5 @@ index 0000000..a2f9918
+hi def link nixEndOfLineComment Comment
+hi def link nixAttr Identifier
+hi def link nixFuncArg Identifier
++
++let b:current_syntax = "nix"
diff --git a/pkgs/applications/graphics/gimp/2.8.nix b/pkgs/applications/graphics/gimp/2.8.nix
index 423b9f3ce22..0f8d6d45f12 100644
--- a/pkgs/applications/graphics/gimp/2.8.nix
+++ b/pkgs/applications/graphics/gimp/2.8.nix
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
description = "The GNU Image Manipulation Program";
homepage = http://www.gimp.org/;
license = "GPL";
+ platforms = stdenv.lib.platforms.linux;
};
}
diff --git a/pkgs/applications/graphics/gimp/default.nix b/pkgs/applications/graphics/gimp/default.nix
deleted file mode 100644
index 33d52c6645b..00000000000
--- a/pkgs/applications/graphics/gimp/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gtk, freetype
-, fontconfig, libart_lgpl, libtiff, libjpeg, libpng, libexif, zlib, perl
-, perlXMLParser, python, pygtk, gettext, xlibs, intltool, babl_0_0_22, gegl_0_0_22
-}:
-
-stdenv.mkDerivation rec {
- name = "gimp-2.6.12";
-
- src = fetchurl {
- url = "ftp://ftp.gtk.org/pub/gimp/v2.6/${name}.tar.bz2";
- sha256 = "0qpcgaa4pdqqhyyy8vjvzfflxgsrrs25zk79gixzlnbzq3qwjlym";
- };
-
- buildInputs = [
- pkgconfig gtk freetype fontconfig
- libart_lgpl libtiff libjpeg libpng libexif zlib perl
- perlXMLParser python pygtk gettext intltool babl_0_0_22 gegl_0_0_22
- ];
-
- passthru = { inherit gtk; }; # probably its a good idea to use the same gtk in plugins ?
-
- configureFlags = [ "--disable-print" ];
-
- # "screenshot" needs this.
- NIX_LDFLAGS = "-rpath ${xlibs.libX11}/lib";
-
- meta = {
- description = "The GNU Image Manipulation Program";
- homepage = http://www.gimp.org/;
- license = "GPL";
- };
-}
diff --git a/pkgs/applications/misc/rxvt_unicode/default.nix b/pkgs/applications/misc/rxvt_unicode/default.nix
index e5d0ae95f99..2e3ef9f0d10 100644
--- a/pkgs/applications/misc/rxvt_unicode/default.nix
+++ b/pkgs/applications/misc/rxvt_unicode/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation (rec {
outputs = [ "out" "terminfo" ];
+ patches = [ ./rxvt-unicode-9.06-font-width.patch ];
+
preConfigure =
''
mkdir -p $terminfo/share/terminfo
diff --git a/pkgs/applications/misc/rxvt_unicode/rxvt-unicode-9.06-font-width.patch b/pkgs/applications/misc/rxvt_unicode/rxvt-unicode-9.06-font-width.patch
new file mode 100644
index 00000000000..636083218fa
--- /dev/null
+++ b/pkgs/applications/misc/rxvt_unicode/rxvt-unicode-9.06-font-width.patch
@@ -0,0 +1,21 @@
+--- a/src/rxvtfont.C 2008-07-09 12:21:45.000000000 +0400
++++ b/src/rxvtfont.C 2009-10-30 14:32:53.000000000 +0300
+@@ -1195,12 +1195,14 @@
+ XGlyphInfo g;
+ XftTextExtents16 (disp, f, &ch, 1, &g);
+
+- g.width -= g.x;
+-
++/*
++ * bukind: don't use g.width as a width of a character!
++ * instead use g.xOff, see e.g.: http://keithp.com/~keithp/render/Xft.tutorial
++ */
+ int wcw = WCWIDTH (ch);
+- if (wcw > 0) g.width = (g.width + wcw - 1) / wcw;
++ if (wcw > 1) g.xOff = g.xOff / wcw;
++ if (width < g.xOff) width = g.xOff;
+
+- if (width < g.width ) width = g.width;
+ if (height < g.height ) height = g.height;
+ if (glheight < g.height - g.y) glheight = g.height - g.y;
+ }
\ No newline at end of file
diff --git a/pkgs/applications/networking/browsers/kwebkitpart/default.nix b/pkgs/applications/networking/browsers/kwebkitpart/default.nix
index e9babf787bd..5ced048fe64 100644
--- a/pkgs/applications/networking/browsers/kwebkitpart/default.nix
+++ b/pkgs/applications/networking/browsers/kwebkitpart/default.nix
@@ -1,12 +1,13 @@
{ stdenv, fetchgit, kdelibs }:
stdenv.mkDerivation rec {
- name = "kwebkitpart-1.3.2";
+ name = "kwebkitpart-${version}";
+ version = "1.3.3";
src = fetchgit {
url = git://anongit.kde.org/kwebkitpart;
- rev = "292f32fda933b2ead5a61ff1ec457f839fad5c85";
- sha256 = "1b2jar9b1yb3gy9fnq8dn2n4z8lffb6pfrj9jc4rjzv5b3rwh1ak";
+ rev = "refs/tags/v${version}";
+ sha256 = "0kszffgg3zpf319lmzlmdba5gq8kdr5xwb69xwy4s2abc9nvwvbi";
};
buildInputs = [ kdelibs ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
index d4d95f7e5b9..ecd51f7c110 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
@@ -35,6 +35,8 @@
}:
let
+ # -> http://get.adobe.com/flashplayer/
+ version = "11.2.202.336";
src =
if stdenv.system == "x86_64-linux" then
@@ -43,10 +45,9 @@ let
# http://labs.adobe.com/technologies/flashplayer10/faq.html
throw "no x86_64 debugging version available"
else rec {
- # -> http://labs.adobe.com/downloads/flashplayer10.html
- version = "11.2.202.310";
+ inherit version;
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
- sha256 = "03r9r7h3l4i15hw62k9il6pjzq122nldbgxr37b4y10xp08a9izj";
+ sha256 = "1wri6y5vllgs452dfklv23k7bp5daajnaqblkn5cb2gl28l5xcni";
}
else if stdenv.system == "i686-linux" then
if debug then {
@@ -55,9 +56,9 @@ let
url = http://fpdownload.macromedia.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
sha256 = "1z3649lv9sh7jnwl8d90a293nkaswagj2ynhsr4xmwiy7c0jz2lk";
} else rec {
- version = "11.2.202.310";
+ inherit version;
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
- sha256 = "0qf09p92silp81pjfcg2vcfcfi1padizmb58q5iaarnapgkawlbh";
+ sha256 = "0mjxjbj75r74gqpmqzqa6vlrk2wv7r358wcqbmg132bhv8kaph85";
}
else throw "Flash Player is not supported on this platform";
diff --git a/pkgs/applications/networking/cluster/hadoop/default.nix b/pkgs/applications/networking/cluster/hadoop/default.nix
index ef2f16e3193..f6e86c6289c 100644
--- a/pkgs/applications/networking/cluster/hadoop/default.nix
+++ b/pkgs/applications/networking/cluster/hadoop/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
- name = "hadoop-2.0.2-alpha";
+ name = "hadoop-2.2.0";
src = fetchurl {
url = "mirror://apache/hadoop/common/${name}/${name}.tar.gz";
- sha256 = "1r7ailmqhny3pl5nb8bcblnhckszy6hb9n58kwa3s4b8qfk87gkb";
+ sha256 = "0r0kx8arsrvmcfy0693hpv4cz3i0razvk1xa3yhlf3ybb80a8106";
};
buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/irc/konversation/default.nix b/pkgs/applications/networking/irc/konversation/default.nix
index c4d2f4b3782..d3009115b17 100644
--- a/pkgs/applications/networking/irc/konversation/default.nix
+++ b/pkgs/applications/networking/irc/konversation/default.nix
@@ -3,7 +3,7 @@
let
pn = "konversation";
- v = "1.4";
+ v = "1.5";
in
stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://kde/stable/${pn}/${v}/src/${name}.tar.xz";
- sha256 = "030vsbb18dlzsnjl3fzyd1m9wvvksiyc1lm45abi4q6x4xd60knv";
+ sha256 = "0vsl34kiar7kbsgncycwd7f66f493fip6d635qlprqn1gqhycb9q";
};
buildInputs = [ cmake qt4 perl gettext libXScrnSaver kdelibs kdepimlibs
diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
index 894b1363cd0..3c1cfe51836 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, pkgconfig, intltool, gtk, json_glib, curl }:
+{ stdenv, fetchurl, pkgconfig, intltool, gtk3, json_glib, curl }:
stdenv.mkDerivation rec {
- name = "transmission-remote-gtk-1.0.1";
+ name = "transmission-remote-gtk-1.1.1";
src = fetchurl {
url = "http://transmission-remote-gtk.googlecode.com/files/${name}.tar.gz";
- sha256 = "b1ae032dd52b2d7975656913e4fe39e7f74d29ef8138292d8b82318ff9afed6f";
+ sha256 = "1jbh2pm4i740cmzqd2r7zxnqqipvv2v2ndmnmk53nqrxcbgc4nlz";
};
- buildInputs = [ pkgconfig intltool gtk json_glib curl ];
+ buildInputs = [ pkgconfig intltool gtk3 json_glib curl ];
meta = {
description = "GTK remote control for the Transmission BitTorrent client";
diff --git a/pkgs/applications/office/calligra/default.nix b/pkgs/applications/office/calligra/default.nix
index 137e7be019f..e87053d5326 100644
--- a/pkgs/applications/office/calligra/default.nix
+++ b/pkgs/applications/office/calligra/default.nix
@@ -6,11 +6,11 @@
}:
stdenv.mkDerivation rec {
- name = "calligra-2.7.2";
+ name = "calligra-2.7.5";
src = fetchurl {
url = "mirror://kde/stable/${name}/${name}.tar.xz";
- sha256 = "1awnvv62fp5bjhi6fys37s6lpzxaig4v15m1zjlgxq82ig61w6sq";
+ sha256 = "0png8ac10xywxsml1z18as18kc9k9162l6an67hi6lgx0rv27ldi";
};
nativeBuildInputs = [ cmake perl pkgconfig ];
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix
index 11d2e770165..8adab57656e 100644
--- a/pkgs/applications/science/electronics/kicad/default.nix
+++ b/pkgs/applications/science/electronics/kicad/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
sed -i -e 's,/usr/local/kicad,'$out,g common/gestfich.cpp
'';
- enableParallelBuilding = true;
+ #enableParallelBuilding = true; # often fails on Hydra: fatal error: pcb_plot_params_lexer.h: No such file or directory
buildInputs = [ cmake mesa wxGTK zlib libX11 gettext ];
diff --git a/pkgs/applications/version-management/bazaar/add_certificates.patch b/pkgs/applications/version-management/bazaar/add_certificates.patch
new file mode 100644
index 00000000000..332f42aa89c
--- /dev/null
+++ b/pkgs/applications/version-management/bazaar/add_certificates.patch
@@ -0,0 +1,11 @@
+diff -ru orig/bzrlib/transport/http/_urllib2_wrappers.py bzr-2.6.0/bzrlib/transport/http/_urllib2_wrappers.py
+--- orig/bzrlib/transport/http/_urllib2_wrappers.py 2013-07-27 13:50:53.000000000 +0200
++++ bzr-2.6.0/bzrlib/transport/http/_urllib2_wrappers.py 2014-02-04 18:34:15.838622492 +0100
+@@ -86,6 +86,7 @@
+ u"/usr/local/share/certs/ca-root-nss.crt", # FreeBSD
+ # XXX: Needs checking, can't trust the interweb ;) -- vila 2012-01-25
+ u'/etc/openssl/certs/ca-certificates.crt', # Solaris
++ u'@certPath@',
+ ]
+ def default_ca_certs():
+ if sys.platform == 'win32':
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index 1eb114ecd8c..2ea916052a3 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -1,20 +1,28 @@
-{ stdenv, fetchurl, pythonPackages }:
+{ stdenv, fetchurl, pythonPackages, cacert }:
stdenv.mkDerivation rec {
- version = "2.5";
- release = ".1";
+ version = "2.6";
+ release = ".0";
name = "bazaar-${version}${release}";
src = fetchurl {
url = "http://launchpad.net/bzr/${version}/${version}${release}/+download/bzr-${version}${release}.tar.gz";
- sha256 = "10krjbzia2avn09p0cdlbx2wya0r5v11w5ymvyl72af5dkx4cwwn";
+ sha256 = "1c6sj77h5f97qimjc14kr532kgc0jk3wq778xrkqi0pbh9qpk509";
};
- buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
+ buildInputs = [ pythonPackages.python pythonPackages.wrapPython cacert ];
# Readline support is needed by bzrtools.
pythonPath = [ pythonPackages.readline ];
+ # Bazaar can't find the certificates alone
+ patches = [ ./add_certificates.patch ];
+ postPatch = ''
+ substituteInPlace bzrlib/transport/http/_urllib2_wrappers.py \
+ --subst-var-by "certPath" "${cacert}/etc/ca-bundle.crt"
+ '';
+
+
installPhase = ''
python setup.py install --prefix=$out
wrapPythonPrograms
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index 9e8024d7b19..e89cea6aadc 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -17,13 +17,14 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
- mkdir -pv $out/bin $out/share/man/man1
+ mkdir -pv $out/bin $out/share/man/man1 $out/share/mr
cp -v mr $out/bin
cp -v webcheckout $out/bin
cp -v mr.1 $out/share/man/man1
cp -v webcheckout.1 $out/share/man/man1
+ cp -v lib/* $out/share/mr
'';
-
+
meta = {
description = "Multiple Repository management tool";
longDescription = ''The mr(1) command can checkout, update, or perform other actions on a
@@ -53,4 +54,3 @@ stdenv.mkDerivation rec {
maintainers = [ stdenv.lib.maintainers.antono ];
};
}
-
diff --git a/pkgs/applications/version-management/vcsh/default.nix b/pkgs/applications/version-management/vcsh/default.nix
new file mode 100644
index 00000000000..d438cb1bc6c
--- /dev/null
+++ b/pkgs/applications/version-management/vcsh/default.nix
@@ -0,0 +1,28 @@
+{stdenv, fetchgit}:
+
+stdenv.mkDerivation rec {
+ rev = "75c4c554eefbefb714fabd356933858edbce3b1e";
+ version = "1.20131229";
+ name = "vcsh-${version}_${rev}";
+
+ src = fetchgit {
+ inherit rev;
+ url = "https://github.com/RichiH/vcsh";
+ sha256 = "0rc82a8vnnk9q6q88z9s10873gqgdpppbpwy2yw8a7hydqrpn0hs";
+ };
+
+ phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp vcsh $out/bin
+ '';
+
+ meta = {
+ description = "Version Control System for $HOME";
+ homepage = https://github.com/RichiH/vcsh;
+ license = stdenv.lib.licenses.gpl2Plus;
+ maintainers = [ stdenv.lib.maintainers.garbas ];
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix
index 4f2addcc99b..0291e7593ea 100644
--- a/pkgs/applications/video/gnash/default.nix
+++ b/pkgs/applications/video/gnash/default.nix
@@ -10,7 +10,13 @@
assert stdenv ? glibc;
-let version = "0.8.10"; in
+let version = "0.8.10";
+ patch_CVE = fetchurl {
+ url = "http://git.savannah.gnu.org/cgit/gnash.git/patch/?id=bb4dc77eecb6ed1b967e3ecbce3dac6c5e6f1527";
+ sha256 = "1g7ymbq9vxi0mwcgs2dpyd2sf30gaam7blza0ywiwj32f5wk62v1";
+ name = "CVE-2012-1175.patch";
+ };
+in
stdenv.mkDerivation rec {
name = "gnash-${version}";
@@ -21,6 +27,8 @@ stdenv.mkDerivation rec {
};
patchPhase = ''
+ patch -p1 < ${patch_CVE}
+
# Add all libs to `macros/libslist', a list of library search paths.
for lib in ${lib.concatStringsSep " "
(map (lib: "\"${lib}\"/lib")
diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix
index 6dc83963d19..5e028863b06 100644
--- a/pkgs/build-support/cabal/default.nix
+++ b/pkgs/build-support/cabal/default.nix
@@ -220,7 +220,7 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version;
./Setup build ${self.buildTarget}
export GHC_PACKAGE_PATH=$(${ghc.GHCPackages})
- test -n "$noHaddock" || ./Setup haddock
+ test -n "$noHaddock" || ./Setup haddock --html --hoogle
eval "$postBuild"
'';
diff --git a/pkgs/build-support/clang-wrapper/default.nix b/pkgs/build-support/clang-wrapper/default.nix
index 05b8194697e..49ee34e9926 100644
--- a/pkgs/build-support/clang-wrapper/default.nix
+++ b/pkgs/build-support/clang-wrapper/default.nix
@@ -18,21 +18,21 @@ let
clangVersion = (builtins.parseDrvName clang.name).version;
clangName = (builtins.parseDrvName clang.name).name;
-
+
in
stdenv.mkDerivation {
name =
(if name != "" then name else clangName + "-wrapper") +
(if clang != null && clangVersion != "" then "-" + clangVersion else "");
-
+
builder = ./builder.sh;
setupHook = ./setup-hook.sh;
clangWrapper = ./clang-wrapper.sh;
ldWrapper = ./ld-wrapper.sh;
utils = ./utils.sh;
addFlags = ./add-flags;
-
+
inherit nativeTools nativeLibc nativePrefix clang clangVersion libcxx;
libcxxabi = libcxx.abi or null;
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
binutils = if nativeTools then null else binutils;
# The wrapper scripts use 'cat', so we may need coreutils
coreutils = if nativeTools then null else coreutils;
-
+
langC = true;
langCC = true;
shell = if shell == "" then stdenv.shell else
@@ -65,7 +65,7 @@ stdenv.mkDerivation {
if stdenv.lib.hasSuffix "pc-gnu" stdenv.cross.config then "ld.so.1" else
abort "don't know the name of the dynamic linker for this platform");
};
-
+
meta =
let clang_ = if clang != null then clang else {}; in
(if clang_ ? meta then removeAttrs clang.meta ["priority"] else {}) //
diff --git a/pkgs/build-support/gcc-wrapper/default.nix b/pkgs/build-support/gcc-wrapper/default.nix
index 58dde3485ca..1f521f40585 100644
--- a/pkgs/build-support/gcc-wrapper/default.nix
+++ b/pkgs/build-support/gcc-wrapper/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
name =
(if name != "" then name else gccName + "-wrapper") +
(if gcc != null && gccVersion != "" then "-" + gccVersion else "");
-
+
builder = ./builder.sh;
setupHook = ./setup-hook.sh;
gccWrapper = ./gcc-wrapper.sh;
@@ -39,13 +39,13 @@ stdenv.mkDerivation {
ldSolarisWrapper = ./ld-solaris-wrapper.sh;
utils = ./utils.sh;
addFlags = ./add-flags;
-
+
inherit nativeTools nativeLibc nativePrefix gcc;
libc = if nativeLibc then null else libc;
binutils = if nativeTools then null else binutils;
# The wrapper scripts use 'cat', so we may need coreutils
coreutils = if nativeTools then null else coreutils;
-
+
langC = if nativeTools then true else gcc.langC;
langCC = if nativeTools then true else gcc.langCC;
langFortran = if nativeTools then false else gcc ? langFortran;
@@ -72,7 +72,7 @@ stdenv.mkDerivation {
if stdenv.lib.hasSuffix "pc-gnu" stdenv.cross.config then "ld.so.1" else
abort "don't know the name of the dynamic linker for this platform");
};
-
+
meta =
let gcc_ = if gcc != null then gcc else {}; in
(if gcc_ ? meta then removeAttrs gcc.meta ["priority"] else {}) //
diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix
index ba7be86a6c1..168b44ad74c 100644
--- a/pkgs/build-support/release/debian-build.nix
+++ b/pkgs/build-support/release/debian-build.nix
@@ -51,7 +51,7 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
'';
installPhase = ''
- eval "$preInstall"
+ eval "$preInstall"
export LOGNAME=root
${checkinstall}/sbin/checkinstall --nodoc -y -D \
@@ -59,6 +59,8 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
--requires="${concatStringsSep "," debRequires}" \
--provides="${concatStringsSep "," debProvides}" \
${optionalString (src ? version) "--pkgversion=$(echo ${src.version} | tr _ -)"} \
+ ''${debMaintainer:+--maintainer="'$debMaintainer'"} \
+ $checkInstallFlags \
make install
mkdir -p $out/debs
@@ -79,7 +81,7 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
echo "file deb-extra $(ls $i/debs/*.deb | sort | head -1)" >> $out/nix-support/hydra-build-products
done
- eval "$postInstall"
+ eval "$postInstall"
''; # */
meta = (if args ? meta then args.meta else {}) // {
diff --git a/pkgs/build-support/release/default.nix b/pkgs/build-support/release/default.nix
index 3d593f0b6bb..acad3487dad 100644
--- a/pkgs/build-support/release/default.nix
+++ b/pkgs/build-support/release/default.nix
@@ -27,7 +27,7 @@ rec {
} // args);
coverageAnalysis = args: nixBuild (
- { inherit lcov;
+ { inherit lcov enableCoverageInstrumentation makeCoverageAnalysisReport;
doCoverageAnalysis = true;
} // args);
diff --git a/pkgs/build-support/release/nix-build.nix b/pkgs/build-support/release/nix-build.nix
index 88bafd84faa..993f12bc300 100644
--- a/pkgs/build-support/release/nix-build.nix
+++ b/pkgs/build-support/release/nix-build.nix
@@ -15,6 +15,7 @@
, failureHook ? null
, prePhases ? []
, postPhases ? []
+, buildInputs ? []
, ... } @ args:
stdenv.mkDerivation (
@@ -61,13 +62,6 @@ stdenv.mkDerivation (
. ${./functions.sh}
origSrc=$src
src=$(findTarballs $src | head -1)
-
- # Set GCC flags for coverage analysis, if desired.
- if test -n "${toString doCoverageAnalysis}"; then
- export NIX_CFLAGS_COMPILE="-O0 --coverage $NIX_CFLAGS_COMPILE"
- export CFLAGS="-O0"
- export CXXFLAGS="-O0"
- fi
'';
initPhase = ''
@@ -85,30 +79,13 @@ stdenv.mkDerivation (
prePhases = ["initPhase"] ++ prePhases;
- # In the report phase, create a coverage analysis report.
- coverageReportPhase = if doCoverageAnalysis then ''
- ${args.lcov}/bin/lcov --directory . --capture --output-file app.info
- set -o noglob
- ${args.lcov}/bin/lcov --remove app.info $lcovFilter > app2.info
- set +o noglob
- mv app2.info app.info
-
- mkdir $out/coverage
- ${args.lcov}/bin/genhtml app.info $lcovExtraTraceFiles -o $out/coverage > log
-
- # Grab the overall coverage percentage for use in release overviews.
- grep "Overall coverage rate" log | sed 's/^.*(\(.*\)%).*$/\1/' > $out/nix-support/coverage-rate
-
- echo "report coverage $out/coverage" >> $out/nix-support/hydra-build-products
- '' else "";
-
+ buildInputs = buildInputs ++ stdenv.lib.optional doCoverageAnalysis args.makeCoverageAnalysisReport;
lcovFilter = ["/nix/store/*"] ++ lcovFilter;
inherit lcovExtraTraceFiles;
- postPhases = postPhases ++
- (stdenv.lib.optional doCoverageAnalysis "coverageReportPhase") ++ ["finalPhase"];
+ postPhases = postPhases ++ ["finalPhase"];
meta = (if args ? meta then args.meta else {}) // {
description = if doCoverageAnalysis then "Coverage analysis" else "Nix package for ${stdenv.system}";
diff --git a/pkgs/build-support/setup-hooks/enable-coverage-instrumentation.sh b/pkgs/build-support/setup-hooks/enable-coverage-instrumentation.sh
new file mode 100644
index 00000000000..08ef490e244
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/enable-coverage-instrumentation.sh
@@ -0,0 +1,14 @@
+# Force GCC to build with coverage instrumentation. Also disable
+# optimisation, since it may confuse things.
+export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -O0 --coverage"
+
+# FIXME: Handle the case where postUnpack is already set.
+postUnpack() {
+ # This is an uberhack to prevent libtool from remoaving gcno
+ # files. This has been fixed in libtool, but there are packages
+ # out there with old ltmain.sh scripts. See
+ # http://www.mail-archive.com/libtool@gnu.org/msg10725.html
+ for i in $(find -name ltmain.sh); do
+ substituteInPlace $i --replace '*.$objext)' '*.$objext | *.gcno)'
+ done
+}
diff --git a/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh b/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh
new file mode 100644
index 00000000000..4b8abb61ace
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/make-coverage-analysis-report.sh
@@ -0,0 +1,18 @@
+postPhases+=" coverageReportPhase"
+
+coverageReportPhase() {
+ lcov --directory . --capture --output-file app.info
+ set -o noglob
+ lcov --remove app.info ${lcovFilter:-"/nix/store/*"} > app2.info
+ set +o noglob
+ mv app2.info app.info
+
+ mkdir -p $out/coverage
+ genhtml app.info $lcovExtraTraceFiles -o $out/coverage > log
+
+ # Grab the overall coverage percentage for use in release overviews.
+ mkdir -p $out/nix-support
+ grep "Overall coverage rate" log | sed 's/^.*(\(.*\)%).*$/\1/' > $out/nix-support/coverage-rate
+
+ echo "report coverage $out/coverage" >> $out/nix-support/hydra-build-products
+}
diff --git a/pkgs/desktops/gnome-2/desktop/vte/default.nix b/pkgs/desktops/gnome-2/desktop/vte/default.nix
index e9928aa73cf..aca30f87dfc 100644
--- a/pkgs/desktops/gnome-2/desktop/vte/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/vte/default.nix
@@ -9,7 +9,14 @@ stdenv.mkDerivation rec {
sha256 = "00zrip28issgmz2cqk5k824cbqpbixi5x7k88zxksdqpnq1f414d";
};
- patches = [ ./alt.patch ];
+ patches = [
+ ./alt.patch
+ ( fetchurl { # CVE-2012-2738
+ url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/"
+ + "vte/files/vte-0.28.2-limit-arguments.patch?revision=1.1";
+ sha256 = "1s8agx74wa7wlv9ybd5h3dp4hzf4ddg7piyan37g2ab3fnvg4jhn";
+ } )
+ ];
buildInputs = [ intltool pkgconfig glib gtk ncurses ] ++
stdenv.lib.optionals pythonSupport [python pygtk];
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
new file mode 100644
index 00000000000..b73009d896d
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -0,0 +1,25 @@
+{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, libcanberra
+, libxml2, polkit, libxslt, libgtop, libsoup, colord, pulseaudio, fontconfig }:
+
+# http://ftp.gnome.org/pub/GNOME/teams/releng/3.10.2/gnome-suites-core-3.10.2.modules
+# TODO: colord_gtk
+
+
+stdenv.mkDerivation rec {
+ name = "gnome-control-center-3.10.2";
+
+ src = fetchurl {
+ url = "mirror://gnome/sources/gnome-control-center/3.10/${name}.tar.xz";
+ sha256 = "1ac34kqkf174w0qc12p927dfhcm69xnv7fqzmbhjab56rn49wypn";
+ };
+
+ buildInputs = with gnome3;
+ [ pkgconfig intltool ibus gtk glib upower libcanberra gsettings_desktop_schemas
+ libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus
+ gnome_online_accounts libsoup colord pulseaudio fontconfig ];
+
+ meta = with stdenv.lib; {
+ platforms = platforms.linux;
+ };
+
+}
diff --git a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
index 455f18de98e..b557e210645 100644
--- a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib, libxslt
-, intltool, pango, gcr, gdk_pixbuf, atk, p11_kit
+, intltool, pango, gcr, gdk_pixbuf, atk, p11_kit, makeWrapper
, docbook_xsl_ns, docbook_xsl, gnome3 }:
stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = with gnome3; [
dbus libgcrypt pam python gtk3 gconf libgnome_keyring
- pango gcr gdk_pixbuf atk p11_kit
+ pango gcr gdk_pixbuf atk p11_kit makeWrapper
];
propagatedBuildInputs = [ glib libtasn1 libxslt ];
@@ -25,6 +25,13 @@ stdenv.mkDerivation rec {
"--with-pkcs11-modules=$$out/lib/pkcs11/"
];
+ postInstall = ''
+ wrapProgram "$out/bin/gnome-keyring" \
+ --prefix XDG_DATA_DIRS : "${glib}/share:$out/share"
+ wrapProgram "$out/bin/gnome-keyring-daemon" \
+ --prefix XDG_DATA_DIRS : "${glib}/share:$out/share"
+ '';
+
meta = with stdenv.lib; {
platforms = platforms.linux;
};
diff --git a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
index cb9b00f5279..668a53d2bf8 100644
--- a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
[ intltool pkgconfig ibus gtk glib gsettings_desktop_schemas libnotify gnome_desktop
lcms2 libXtst libxkbfile pulseaudio libcanberra_gtk3 upower colord libgweather
polkit geocode_glib geoclue2 librsvg xf86_input_wacom udev libwacom libxslt
- libtool docbook_xsl docbook_xsl_ns makeWrapper ];
+ libtool docbook_xsl docbook_xsl_ns makeWrapper gnome_themes_standard ];
postInstall = ''
wrapProgram "$out/libexec/gnome-settings-daemon-localeexec" \
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
index 3799a008c1b..92c8d2a3bc7 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
@@ -2,8 +2,9 @@
, python, libsoup, polkit, clutter, networkmanager, docbook_xsl, docbook_xsl_ns
, libstartup_notification, telepathy_glib, telepathy_logger, libXtst, p11_kit
, pulseaudio, libical, libtool, nss, gobjectIntrospection, gstreamer, makeWrapper
-, accountservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet }:
+, accountservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
+# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
stdenv.mkDerivation rec {
name = "gnome-shell-3.10.2.1";
@@ -15,7 +16,7 @@ stdenv.mkDerivation rec {
buildInputs = with gnome3;
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountservice
- libcroco intltool libsecret pkgconfig python libsoup polkit libcanberra gdk_pixbuf
+ libcroco intltool libsecret pkgconfig python libsoup polkit libcanberra gdk_pixbuf librsvg
clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns
libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server
libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm
@@ -31,6 +32,7 @@ stdenv.mkDerivation rec {
wrapProgram "$out/bin/gnome-shell" \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \
+ --set GDK_PIXBUF_MODULE_FILE ${gnome_themes_standard}/lib/gdk-pixbuf/loaders.cache \
--prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gnome_icon_theme}/share:${gsettings_desktop_schemas}/share:${gtk}/share:$out/share"
wrapProgram "$out/libexec/gnome-shell-calendar-server" \
--prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share"
diff --git a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
index 281f985c121..31ee53e9713 100644
--- a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchurl, pkgconfig, cairo, libxml2, gnome3, pango
, gnome_doc_utils, intltool, libX11, which, gconf, libuuid
-, desktop_file_utils, itstool, ncurses }:
+, desktop_file_utils, itstool, ncurses, makeWrapper }:
stdenv.mkDerivation rec {
@@ -15,10 +15,16 @@ stdenv.mkDerivation rec {
};
buildInputs = [ gnome3.gtk gnome3.gsettings_desktop_schemas gnome3.vte
- gnome3.dconf gnome3.gconf itstool ncurses ];
+ gnome3.dconf gnome3.gconf itstool ncurses makeWrapper ];
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libuuid libxml2 desktop_file_utils ];
+ postInstall = ''
+ wrapProgram "$out/libexec/gnome-terminal-server" \
+ --prefix XDG_DATA_DIRS : "${gnome3.gsettings_desktop_schemas}/share:$out/share"
+ '';
+
+
meta = with stdenv.lib; {
platforms = platforms.linux;
};
diff --git a/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix b/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix
index 8faae4d2148..e3de21806d3 100644
--- a/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix
@@ -10,8 +10,9 @@ stdenv.mkDerivation rec {
buildInputs = [ intltool gtk3 librsvg pkgconfig pango atk gtk2 gdk_pixbuf ];
preConfigure = ''
- cat ${gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache ${librsvg}/lib/gdk-pixbuf/loaders.cache > loaders.cache
- export GDK_PIXBUF_MODULE_FILE=`readlink -e loaders.cache`
+ mkdir -p $out/lib/gdk-pixbuf/
+ cat ${gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache ${librsvg}/lib/gdk-pixbuf/loaders.cache > $out/lib/gdk-pixbuf/loaders.cache
+ export GDK_PIXBUF_MODULE_FILE=`readlink -e $out/lib/gdk-pixbuf/loaders.cache`
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 56d38bf1d90..e9ec7be55b9 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -32,6 +32,8 @@ rec {
gjs = callPackage ./core/gjs { };
+ gnome_control_center = callPackage ./core/gnome-control-center { };
+
gnome_icon_theme = callPackage ./core/gnome-icon-theme { };
gnome-menus = callPackage ./core/gnome-menus { };
diff --git a/pkgs/desktops/xfce/core/gtk-xfce-engine.nix b/pkgs/desktops/xfce/core/gtk-xfce-engine.nix
index a97a11c6f12..0a30d8ac48b 100644
--- a/pkgs/desktops/xfce/core/gtk-xfce-engine.nix
+++ b/pkgs/desktops/xfce/core/gtk-xfce-engine.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, intltool, gtk }:
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, gtk3 }:
stdenv.mkDerivation rec {
p_name = "gtk-xfce-engine";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
name = "${p_name}-${ver_maj}.${ver_min}";
#TODO: gtk3
- buildInputs = [ pkgconfig intltool gtk ];
+ buildInputs = [ pkgconfig intltool gtk gtk3 ];
meta = {
homepage = http://www.xfce.org/;
diff --git a/pkgs/development/compilers/dev86/default.nix b/pkgs/development/compilers/dev86/default.nix
index 539588ac3ad..f37dae80830 100644
--- a/pkgs/development/compilers/dev86/default.nix
+++ b/pkgs/development/compilers/dev86/default.nix
@@ -2,7 +2,7 @@
stdenv.mkDerivation {
name = "dev86-0.16.19";
-
+
src = fetchurl {
url = http://www.debath.co.uk/dev86/Dev86src-0.16.19.tar.gz;
sha256 = "33398b87ca85e2b69e4062cf59f2f7354af46da5edcba036c6f97bae17b8d00e";
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
''
substituteInPlace makefile.in --replace "-O2" "" --replace "-O" ""
'';
-
+
meta = {
description = "Linux 8086 development environment";
homepage = http://www.debath.co.uk/;
diff --git a/pkgs/development/compilers/llvm/3.4/llvm.nix b/pkgs/development/compilers/llvm/3.4/llvm.nix
index d93bd4aba19..7f58abea1fa 100644
--- a/pkgs/development/compilers/llvm/3.4/llvm.nix
+++ b/pkgs/development/compilers/llvm/3.4/llvm.nix
@@ -26,7 +26,7 @@ in stdenv.mkDerivation rec {
mv compiler-rt-${version} $sourceRoot/projects/compiler-rt
'';
- buildInputs = [ perl groff cmake libxml2 python libffi ncurses ] ++ stdenv.lib.optional stdenv.isLinux valgrind;
+ buildInputs = [ perl groff cmake libxml2 python libffi ] ++ stdenv.lib.optional stdenv.isLinux valgrind;
propagatedBuildInputs = [ ncurses zlib ];
diff --git a/pkgs/development/compilers/pakcs/adjust-buildsystem.patch b/pkgs/development/compilers/pakcs/adjust-buildsystem.patch
index 4de7683dcdd..830fc3fa7f9 100644
--- a/pkgs/development/compilers/pakcs/adjust-buildsystem.patch
+++ b/pkgs/development/compilers/pakcs/adjust-buildsystem.patch
@@ -1,7 +1,7 @@
-diff -Naur pakcs-1.11.2-upstream/Makefile pakcs-1.11.2/Makefile
---- pakcs-1.11.2-upstream/Makefile 2013-03-21 04:58:38.000000000 -0430
-+++ pakcs-1.11.2/Makefile 2013-05-09 15:04:48.035646127 -0430
-@@ -55,7 +55,6 @@
+diff -Naur pakcs-1.11.3-upstream/Makefile pakcs-1.11.3/Makefile
+--- pakcs-1.11.3-upstream/Makefile 2014-01-31 09:10:03.000000000 -0430
++++ pakcs-1.11.3/Makefile 2014-02-03 20:27:41.558334480 -0430
+@@ -66,7 +66,6 @@
#
.PHONY: install
install: installscripts
@@ -9,21 +9,20 @@ diff -Naur pakcs-1.11.2-upstream/Makefile pakcs-1.11.2/Makefile
# pre-compile all libraries:
@cd lib && $(MAKE) fcy
# install the Curry2Prolog compiler as a saved system:
-@@ -66,11 +65,6 @@
- @cd lib && $(MAKE) acy
- # prepare for separate compilation by compiling all librariers to Prolog code:
- @if [ -r bin/pakcs ] ; then cd lib && $(MAKE) pl ; fi
+@@ -105,10 +104,6 @@
+ # compile the tools:
+ .PHONY: tools
+ tools:
- # compile the Curry Port Name Server demon:
-- @if [ -r bin/pakcs ] ; then cd cpns && $(MAKE) ; fi
+- @if [ -r bin/pakcs ] ; then cd cpns && $(MAKE) ; fi
- # compile the event handler demon for dynamic web pages:
-- @if [ -r bin/pakcs ] ; then cd www && $(MAKE) ; fi
-- $(MAKE) tools
- $(MAKE) docs
- chmod -R go+rX .
+- @if [ -r bin/pakcs ] ; then cd www && $(MAKE) ; fi
+ @if [ -r bin/pakcs ] ; then cd currytools && $(MAKE) ; fi
+ @if [ -r bin/pakcs ] ; then cd tools && $(MAKE) ; fi
-diff -Naur pakcs-1.11.2-upstream/scripts/pakcs.sh pakcs-1.11.2/scripts/pakcs.sh
---- pakcs-1.11.2-upstream/scripts/pakcs.sh 2013-03-21 04:52:59.000000000 -0430
-+++ pakcs-1.11.2/scripts/pakcs.sh 2013-05-09 03:14:23.500876628 -0430
+diff -Naur pakcs-1.11.3-upstream/scripts/pakcs.sh pakcs-1.11.3/scripts/pakcs.sh
+--- pakcs-1.11.3-upstream/scripts/pakcs.sh 2014-01-31 09:04:19.000000000 -0430
++++ pakcs-1.11.3/scripts/pakcs.sh 2014-02-03 20:20:40.775350116 -0430
@@ -16,7 +16,7 @@
# use readline wrapper rlwrap if it is installed and we have tty as stdin:
USERLWRAP=no
diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix
index bb4657d8aff..a3b80c02545 100644
--- a/pkgs/development/compilers/pakcs/default.nix
+++ b/pkgs/development/compilers/pakcs/default.nix
@@ -1,11 +1,12 @@
-{ stdenv, fetchurl, cabal, swiProlog, mtl, syb, makeWrapper, rlwrap, tk }:
+{ stdenv, fetchurl, cabal, swiProlog, either, mtl, syb
+, glibcLocales, makeWrapper, rlwrap, tk }:
let
- fname = "pakcs-1.11.2";
+ fname = "pakcs-1.11.3";
fsrc = fetchurl {
url = "http://www.informatik.uni-kiel.de/~pakcs/download/${fname}-src.tar.gz";
- sha256 = "1x23kn91v44my4rd8j3247pj8i2myz82rzgbq07asi1x21bpvvmy";
+ sha256 = "006bq6cmycq2f4xb3zmnmxyngj64hppk3a083hy0qzj7gl77zvfw";
};
in
@@ -29,12 +30,12 @@ stdenv.mkDerivation rec {
sourceRoot = "${name}/frontend/curry-frontend";
isLibrary = true;
isExecutable = true;
- buildDepends = [ mtl syb curryBase ];
+ buildDepends = [ either mtl syb curryBase ];
});
src = fsrc;
- buildInputs = [ swiProlog makeWrapper rlwrap tk ];
+ buildInputs = [ swiProlog makeWrapper glibcLocales rlwrap tk ];
patches = [ ./adjust-buildsystem.patch ];
@@ -48,6 +49,10 @@ stdenv.mkDerivation rec {
'';
preBuild = ''
+ # Some comments in files are in UTF-8, so include the locale needed by GHC runtime.
+ export LOCALE_ARCHIVE=${glibcLocales}/lib/locale/locale-archive
+ export LC_ALL=en_US.UTF-8
+
# Set up link to cymake, which has been built already.
ensureDir bin/.local
ln -s ${curryFront}/bin/cymake bin/.local/
@@ -65,10 +70,6 @@ stdenv.mkDerivation rec {
# Fixing PAKCSHOME and related paths.
sed -i 's@PAKCSHOME=/tmp/.*@PAKCSHOME='$out/pakcs'@' $out/pakcs/bin/{pakcs,makecurrycgi,parsecurry,.makesavedstate}
- # Fix symbolic links into the tmp build dir.
- ln -s ../currytools/CASS/cass $out/pakcs/bin/cass
- ln -s ../currytools/currydoc/CurryDoc $out/pakcs/bin/currydoc
-
# The Prolog sources must be rebuilt in their final directory,
# to switch the embedded references to the tmp build directory.
export TEMP=/tmp
diff --git a/pkgs/development/libraries/boost/1.49.nix b/pkgs/development/libraries/boost/1.49.nix
index f502df4e19c..fca4249e963 100644
--- a/pkgs/development/libraries/boost/1.49.nix
+++ b/pkgs/development/libraries/boost/1.49.nix
@@ -57,7 +57,12 @@ stdenv.mkDerivation {
};
# See .
- patches = [ ./boost_filesystem_post_1_49_0.patch ./time_utc.patch ./boost-149-cstdint.patch ] ++ (stdenv.lib.optional stdenv.isDarwin ./boost-149-darwin.patch );
+ patches = [
+ ./CVE-2013-0252.patch # https://svn.boost.org/trac/boost/ticket/7743
+ ./boost_filesystem_post_1_49_0.patch
+ ./time_utc.patch
+ ./boost-149-cstdint.patch
+ ] ++ (stdenv.lib.optional stdenv.isDarwin ./boost-149-darwin.patch );
enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/boost/CVE-2013-0252.patch b/pkgs/development/libraries/boost/CVE-2013-0252.patch
new file mode 100644
index 00000000000..fce52d47969
--- /dev/null
+++ b/pkgs/development/libraries/boost/CVE-2013-0252.patch
@@ -0,0 +1,48 @@
+Index: /boost/locale/utf.hpp
+===================================================================
+--- /boost/locale/utf.hpp (revision 78304)
++++ /boost/locale/utf.hpp (revision 81590)
+@@ -220,4 +220,6 @@
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ case 2:
+@@ -225,4 +227,6 @@
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ case 1:
+@@ -230,4 +234,6 @@
+ return incomplete;
+ tmp = *p++;
++ if (!is_trail(tmp))
++ return illegal;
+ c = (c << 6) | ( tmp & 0x3F);
+ }
+Index: /libs/locale/test/test_codepage_converter.cpp
+===================================================================
+--- /libs/locale/test/test_codepage_converter.cpp (revision 73786)
++++ /libs/locale/test/test_codepage_converter.cpp (revision 81590)
+@@ -140,4 +140,18 @@
+ TEST_TO("\xf8\x90\x80\x80\x80",illegal); // 400 0000
+ TEST_TO("\xfd\xbf\xbf\xbf\xbf\xbf",illegal); // 7fff ffff
++
++ std::cout << "-- Invalid trail" << std::endl;
++ TEST_TO("\xC2\x7F",illegal);
++ TEST_TO("\xdf\x7F",illegal);
++ TEST_TO("\xe0\x7F\x80",illegal);
++ TEST_TO("\xef\xbf\x7F",illegal);
++ TEST_TO("\xe0\x7F\x80",illegal);
++ TEST_TO("\xef\xbf\x7F",illegal);
++ TEST_TO("\xf0\x7F\x80\x80",illegal);
++ TEST_TO("\xf4\x7f\xbf\xbf",illegal);
++ TEST_TO("\xf0\x90\x7F\x80",illegal);
++ TEST_TO("\xf4\x8f\x7F\xbf",illegal);
++ TEST_TO("\xf0\x90\x80\x7F",illegal);
++ TEST_TO("\xf4\x8f\xbf\x7F",illegal);
+
+ std::cout << "-- Invalid length" << std::endl;
diff --git a/pkgs/development/libraries/gegl/default.nix b/pkgs/development/libraries/gegl/default.nix
index a30d5c78e7f..0649775ad21 100644
--- a/pkgs/development/libraries/gegl/default.nix
+++ b/pkgs/development/libraries/gegl/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchurl, pkgconfig, glib, babl, libpng, cairo, libjpeg
, librsvg, pango, gtk, bzip2, intltool }:
-
+
stdenv.mkDerivation rec {
name = "gegl-0.2.0";
@@ -9,6 +9,13 @@ stdenv.mkDerivation rec {
sha256 = "df2e6a0d9499afcbc4f9029c18d9d1e0dd5e8710a75e17c9b1d9a6480dd8d426";
};
+ patches = [( fetchurl {
+ url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/"
+ + "gegl-0.2.0-CVE-2012-4433.patch?h=packages/gegl&id=57a60fbda5d7bbbd1cc4767cb0724baa80c5e3e9";
+ sha256 = "0p8mxj3w09nn1cc6cbxrd9hx742c5y27903i608wx6ja3kdjis59";
+ name = "CVE-2012-4433.patch";
+ })];
+
# needs fonts otherwise don't know how to pass them
configureFlags = "--disable-docs";
diff --git a/pkgs/development/libraries/glfw/default.nix b/pkgs/development/libraries/glfw/2.x.nix
similarity index 51%
rename from pkgs/development/libraries/glfw/default.nix
rename to pkgs/development/libraries/glfw/2.x.nix
index 292c15361b6..8750cd955a6 100644
--- a/pkgs/development/libraries/glfw/default.nix
+++ b/pkgs/development/libraries/glfw/2.x.nix
@@ -1,27 +1,29 @@
-{ stdenv, fetchurl, mesa, libX11, libXext }:
+{ stdenv, fetchurl, mesa, libX11 }:
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
name = "glfw-2.7.9";
src = fetchurl {
- url = mirror://sourceforge/glfw/glfw-2.7.9.tar.bz2;
+ url = "mirror://sourceforge/glfw/${name}.tar.bz2";
sha256 = "17c2msdcb7pn3p8f83805h1c216bmdqnbn9hgzr1j8wnwjcpxx6i";
};
- buildInputs = [ mesa libX11 libXext ];
+ buildInputs = [ mesa libX11 ];
buildPhase = ''
+ make x11
+ '';
+
+ installPhase = ''
mkdir -p $out
make x11-install PREFIX=$out
- '';
+ '';
- installPhase = ":";
-
- meta = {
+ meta = with stdenv.lib; {
description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
- homepage = http://glfw.sourceforge.net/;
- license = "zlib/libpng"; # http://www.opensource.org/licenses/zlib-license.php
+ homepage = "http://glfw.sourceforge.net/";
+ license = licenses.zlib;
maintainers = [ stdenv.lib.maintainers.marcweber ];
- platforms = stdenv.lib.platforms.linux;
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
new file mode 100644
index 00000000000..ab7e312762f
--- /dev/null
+++ b/pkgs/development/libraries/glfw/3.x.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, cmake, mesa, libXrandr, libXi, libXxf86vm, libXfixes, x11 }:
+
+stdenv.mkDerivation rec {
+ name = "glfw-3.0.4";
+
+ src = fetchurl {
+ url = "mirror://sourceforge/glfw/${name}.tar.bz2";
+ sha256 = "1h7g16ncgkl38w19x4dvnn17k9j0kqfvbb9whw9qc71lkq5xf2ag";
+ };
+
+ enableParallelBuilding = true;
+
+ buildInputs = [ cmake mesa libXrandr libXi libXxf86vm libXfixes x11 ];
+
+ meta = with stdenv.lib; {
+ description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
+ homepage = "http://glfw.sourceforge.net/";
+ license = licenses.zlib;
+ maintainers = with maintainers; [ marcweber ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/development/libraries/gnutls/2.12.nix b/pkgs/development/libraries/gnutls/2.12.nix
index 86829a3a44b..59f0131b9d4 100644
--- a/pkgs/development/libraries/gnutls/2.12.nix
+++ b/pkgs/development/libraries/gnutls/2.12.nix
@@ -1,5 +1,5 @@
{ fetchurl, stdenv, zlib, lzo, libtasn1, nettle
-, guileBindings, guile, pkgconfig }:
+, guileBindings, guile, pkgconfig, perl }:
assert guileBindings -> guile != null;
@@ -12,7 +12,16 @@ stdenv.mkDerivation rec {
sha256 = "1lkys703z4yxfgzarmgas5ccvn6m254w9wvm7s8v0zkj81z7m9nz";
};
+ patches = [(fetchurl {
+ url = "http://anonscm.debian.org/viewvc/pkg-gnutls/packages/gnutls26/trunk/"
+ + "debian/patches/21_sanitycheck.diff?revision=1777&view=co";
+ sha256 = "0k18a7q6irmgjzp647bd18zccjpsr82n2s9arpamnkakgnny4ks9";
+ name = "CVE-2013-2116.patch";
+ })];
+
configurePhase = ''
+ patchShebangs .
+
./configure --prefix="$out" \
--disable-dependency-tracking --enable-fast-install \
--with-lzo --with-libtasn1-prefix="${libtasn1}" \
@@ -22,7 +31,7 @@ stdenv.mkDerivation rec {
else ""}
'';
- buildInputs = [ zlib lzo libtasn1 pkgconfig ]
+ buildInputs = [ zlib lzo libtasn1 pkgconfig perl ]
++ stdenv.lib.optional guileBindings guile;
propagatedBuildInputs = [ nettle ];
diff --git a/pkgs/development/libraries/gnutls/3.2.nix b/pkgs/development/libraries/gnutls/3.2.nix
index 5a5b6aa94e2..03a0c001979 100644
--- a/pkgs/development/libraries/gnutls/3.2.nix
+++ b/pkgs/development/libraries/gnutls/3.2.nix
@@ -5,11 +5,11 @@ assert guileBindings -> guile != null;
stdenv.mkDerivation (rec {
- name = "gnutls-3.2.4";
+ name = "gnutls-3.2.10";
src = fetchurl {
url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/${name}.tar.lz";
- sha256 = "0zl4h37g51xyaalv3qp2hvn1m6z7xzfw4yvpvi6mby4x5sqrrp8i";
+ sha256 = "1g1w93d66sz51977zbqd56641r501a1djcwhykbjm8alhyz1564h";
};
# Note: GMP is a dependency of Nettle, whose public headers include
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index 0a98a2698fd..8750dd568f7 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -5,11 +5,11 @@ assert guileBindings -> guile != null;
stdenv.mkDerivation (rec {
- name = "gnutls-3.1.12";
+ name = "gnutls-3.1.20";
src = fetchurl {
url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.1/${name}.tar.lz";
- sha256 = "1h8j3xi2jad2dclybgqffb5264hdqrxpsx99irs03yy9np6iw5l8";
+ sha256 = "1a8pzc29sn1kmbqvldljf4kmbz60pdk931dirk5jdd0qpf8fzd5x";
};
# Note: GMP is a dependency of Nettle, whose public headers include
diff --git a/pkgs/development/libraries/haskell/HList/default.nix b/pkgs/development/libraries/haskell/HList/default.nix
index ae6f8e435f7..aafa2fae825 100644
--- a/pkgs/development/libraries/haskell/HList/default.nix
+++ b/pkgs/development/libraries/haskell/HList/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "HList";
- version = "0.3.1.0";
- sha256 = "1cq7l7cv62jf47s75ycsgxg75kkrgnnrpb6y22cskc97hkfsnjmk";
+ version = "0.3.2.0";
+ sha256 = "1cv27y8jg38yvfca83zn3fzq7mkzhqw7j1y7kg5fkfh4wd8ixs1f";
buildDepends = [ mtl ];
testDepends = [ cmdargs doctest filepath hspec lens mtl syb ];
buildTools = [ diffutils ];
diff --git a/pkgs/development/libraries/haskell/HTF/default.nix b/pkgs/development/libraries/haskell/HTF/default.nix
index ddcb8c0e371..509719d383a 100644
--- a/pkgs/development/libraries/haskell/HTF/default.nix
+++ b/pkgs/development/libraries/haskell/HTF/default.nix
@@ -5,8 +5,8 @@
cabal.mkDerivation (self: {
pname = "HTF";
- version = "0.11.1.0";
- sha256 = "0prijzy852fkr8z58rhba6jvrb27b6lyz2jdgqb7r1jrnkhqmhpq";
+ version = "0.11.1.1";
+ sha256 = "0j425h0av82cbwkfds2jhf3hsm2wd8vca8bjdyg8v09k6kb220cs";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/abstract-deque-tests/default.nix b/pkgs/development/libraries/haskell/abstract-deque-tests/default.nix
new file mode 100644
index 00000000000..66db8b44dc5
--- /dev/null
+++ b/pkgs/development/libraries/haskell/abstract-deque-tests/default.nix
@@ -0,0 +1,21 @@
+{ cabal, abstractDeque, HUnit, random, testFramework
+, testFrameworkHunit, time
+}:
+
+cabal.mkDerivation (self: {
+ pname = "abstract-deque-tests";
+ version = "0.3";
+ sha256 = "19gb5x5z3nvazdra3skm24c2g2byj0i4cjbzfwfghnb5q96gn5sz";
+ buildDepends = [
+ abstractDeque HUnit random testFramework testFrameworkHunit time
+ ];
+ testDepends = [
+ abstractDeque HUnit random testFramework testFrameworkHunit time
+ ];
+ meta = {
+ homepage = "https://github.com/rrnewton/haskell-lockfree/wiki";
+ description = "A test-suite for any queue or double-ended queue satisfying an interface";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/abstract-deque/default.nix b/pkgs/development/libraries/haskell/abstract-deque/default.nix
index 03ae29aef73..c9df3b5c86a 100644
--- a/pkgs/development/libraries/haskell/abstract-deque/default.nix
+++ b/pkgs/development/libraries/haskell/abstract-deque/default.nix
@@ -1,18 +1,13 @@
-{ cabal, HUnit, random, testFramework, testFrameworkHunit, time }:
+{ cabal, random, time }:
cabal.mkDerivation (self: {
pname = "abstract-deque";
- version = "0.2.2.1";
- sha256 = "0saf7j8fdqqk9msxrfja22zx8v0ibzrqx3v9l07g5n84yh4ydbdx";
- buildDepends = [
- HUnit random testFramework testFrameworkHunit time
- ];
- testDepends = [
- HUnit random testFramework testFrameworkHunit time
- ];
+ version = "0.3";
+ sha256 = "18jwswjxwzc9bjiy4ds6hw2a74ki797jmfcifxd2ga4kh7ri1ah9";
+ buildDepends = [ random time ];
doCheck = false;
meta = {
- homepage = "https://github.com/rrnewton/haskell-lockfree-queue/wiki";
+ homepage = "https://github.com/rrnewton/haskell-lockfree/wiki";
description = "Abstract, parameterized interface to mutable Deques";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/ansi-terminal/default.nix b/pkgs/development/libraries/haskell/ansi-terminal/default.nix
index 2e9b1c0c25f..59eb51845b8 100644
--- a/pkgs/development/libraries/haskell/ansi-terminal/default.nix
+++ b/pkgs/development/libraries/haskell/ansi-terminal/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "ansi-terminal";
- version = "0.6.1";
- sha256 = "0ncghc0z2xkfn1hfvyl0haf4mia9lhjbiqda11nxkqqfxdyklb2j";
+ version = "0.6.1.1";
+ sha256 = "06pdcpp2z7wk9mkr5lzwk64lqhj09c7l1ah4s3vz7zwrdzfaccwi";
isLibrary = true;
isExecutable = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/bindings-DSL/default.nix b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
index ed2a631419a..223760b291a 100644
--- a/pkgs/development/libraries/haskell/bindings-DSL/default.nix
+++ b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
@@ -2,10 +2,10 @@
cabal.mkDerivation (self: {
pname = "bindings-DSL";
- version = "1.0.20";
- sha256 = "11qc02fkmrpy6c1a85lwlz06m4fpvfpbpbxgv5rkyb1amg2cnklq";
+ version = "1.0.21";
+ sha256 = "0fbrl9jfkwlv66v3cv6cj51kk7jjdry0jz8k83bf4mav26123mk9";
meta = {
- homepage = "http://bitbucket.org/mauricio/bindings-dsl";
+ homepage = "https://github.com/jwiegley/bindings-dsl/wiki";
description = "FFI domain specific language, on top of hsc2hs";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/blaze-html/default.nix b/pkgs/development/libraries/haskell/blaze-html/default.nix
index bec48f8e44f..81b00235673 100644
--- a/pkgs/development/libraries/haskell/blaze-html/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-html/default.nix
@@ -4,16 +4,13 @@
cabal.mkDerivation (self: {
pname = "blaze-html";
- version = "0.7.0.0";
- sha256 = "1k8mxq3hmf2s7qab67jz3yaan7wdc4mn5sa00rw5zk4mjh722w86";
+ version = "0.7.0.1";
+ sha256 = "05z0a6x49f56bazkcdxpdi2a7pyzsiv7qc72grcz9sqjz1d6yagh";
buildDepends = [ blazeBuilder blazeMarkup text ];
testDepends = [
blazeBuilder blazeMarkup HUnit QuickCheck testFramework
testFrameworkHunit testFrameworkQuickcheck2 text
];
- patchPhase = ''
- sed -i -e 's|blaze-markup.*>=.*,|blaze-markup,|' blaze-html.cabal
- '';
meta = {
homepage = "http://jaspervdj.be/blaze";
description = "A blazingly fast HTML combinator library for Haskell";
diff --git a/pkgs/development/libraries/haskell/blaze-svg/default.nix b/pkgs/development/libraries/haskell/blaze-svg/default.nix
index b342b35dbe6..0502f1eabc2 100644
--- a/pkgs/development/libraries/haskell/blaze-svg/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-svg/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "blaze-svg";
- version = "0.3.3.0";
- sha256 = "1wi4nc73ic3qmbx6v9fniacwcz2nlvmp5snn144fdiwb22klfn5f";
+ version = "0.3.3.1";
+ sha256 = "00i0apyklvmkr4w30d4r86gcg86h35sc3ncvqax70827126cdmsj";
buildDepends = [ blazeMarkup mtl ];
jailbreak = true;
meta = {
diff --git a/pkgs/development/libraries/haskell/conduit/default.nix b/pkgs/development/libraries/haskell/conduit/default.nix
index 0557fd36236..25987150533 100644
--- a/pkgs/development/libraries/haskell/conduit/default.nix
+++ b/pkgs/development/libraries/haskell/conduit/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "conduit";
- version = "1.0.12";
- sha256 = "025h1nbplq7v1qp74bg647q36n3d56kin700ws7vm922xmvcrjjm";
+ version = "1.0.13";
+ sha256 = "19l2wqx5fil9sv4kj8jd19yvb4fa7jp3n523j38z9bd6ydnb8fni";
buildDepends = [
liftedBase mmorph monadControl mtl resourcet text transformers
transformersBase void
diff --git a/pkgs/development/libraries/haskell/diagrams/svg.nix b/pkgs/development/libraries/haskell/diagrams/svg.nix
index 42289164144..56b1306a7ce 100644
--- a/pkgs/development/libraries/haskell/diagrams/svg.nix
+++ b/pkgs/development/libraries/haskell/diagrams/svg.nix
@@ -5,8 +5,8 @@
cabal.mkDerivation (self: {
pname = "diagrams-svg";
- version = "1.0.1.1";
- sha256 = "0wjk2f7xh7ihkvdri669mw25bdwszzx03np32fy66k56x7adgxzc";
+ version = "1.0.1.2";
+ sha256 = "1aaybkizlfc4ji7m2p2naw4ml1pacppkbfr2ygqlq0k3bg0cd36k";
buildDepends = [
blazeMarkup blazeSvg colour diagramsCore diagramsLib filepath
hashable lens monoidExtras mtl split time vectorSpace
diff --git a/pkgs/development/libraries/haskell/free/default.nix b/pkgs/development/libraries/haskell/free/default.nix
index 4e679da1bdb..7d8376da28e 100644
--- a/pkgs/development/libraries/haskell/free/default.nix
+++ b/pkgs/development/libraries/haskell/free/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "free";
- version = "4.4";
- sha256 = "19c6zy7gxsd121g1kny9y8rv33gsxv3kfsi37iyn6q0p8r38wbcy";
+ version = "4.5";
+ sha256 = "0hcdl02whmnyxd3mbfrncd978778irm5sx5f4z54zsigwlk822vx";
buildDepends = [
bifunctors comonad distributive mtl profunctors semigroupoids
semigroups transformers
diff --git a/pkgs/development/libraries/haskell/haskell-src-exts/default.nix b/pkgs/development/libraries/haskell/haskell-src-exts/default.nix
index b044437e527..270353b7f76 100644
--- a/pkgs/development/libraries/haskell/haskell-src-exts/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-src-exts/default.nix
@@ -4,15 +4,14 @@
cabal.mkDerivation (self: {
pname = "haskell-src-exts";
- version = "1.14.0";
- sha256 = "070khsw56xwyrclamv5wckj9na2xbzibv702xx52ik2wbs21dr0d";
+ version = "1.14.0.1";
+ sha256 = "1bsqjj4hy8mqprs44yfy1c96678w9q708yc40g5ygqfyhg0hd29s";
buildDepends = [ cpphs ];
testDepends = [
filepath smallcheck tasty tastyHunit tastySmallcheck
];
buildTools = [ happy ];
doCheck = false;
- preConfigure = "runhaskell Setup.hs clean";
meta = {
homepage = "https://github.com/haskell-suite/haskell-src-exts";
description = "Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer";
diff --git a/pkgs/development/libraries/haskell/hybrid-vectors/default.nix b/pkgs/development/libraries/haskell/hybrid-vectors/default.nix
new file mode 100644
index 00000000000..56fd36fbe87
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hybrid-vectors/default.nix
@@ -0,0 +1,14 @@
+{ cabal, deepseq, primitive, vector }:
+
+cabal.mkDerivation (self: {
+ pname = "hybrid-vectors";
+ version = "0.1";
+ sha256 = "0a5ry6xmkr0zjz0kp7qbm7kdz5yr9842gy116902djppmdn5dq05";
+ buildDepends = [ deepseq primitive vector ];
+ meta = {
+ homepage = "http://github.com/ekmett/hybrid-vectors";
+ description = "Hybrid vectors e.g. Mixed Boxed/Unboxed vectors";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/ixdopp/default.nix b/pkgs/development/libraries/haskell/ixdopp/default.nix
new file mode 100644
index 00000000000..94bfa018553
--- /dev/null
+++ b/pkgs/development/libraries/haskell/ixdopp/default.nix
@@ -0,0 +1,16 @@
+{ cabal, preprocessorTools, syb }:
+
+cabal.mkDerivation (self: {
+ pname = "ixdopp";
+ version = "0.1.3";
+ sha256 = "1vknwznk42b33q4pmh6z620g761yf3cmsmrmhilgq42i5qhll4d4";
+ isLibrary = false;
+ isExecutable = true;
+ buildDepends = [ preprocessorTools ];
+ meta = {
+ homepage = "http://www.eecs.harvard.edu/~tov/pubs/haskell-session-types/";
+ description = "Expands a Haskell program using ixdo notation into a Haskell program using the indexed monad bind operator (>>>=)";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/lens/4.0.nix b/pkgs/development/libraries/haskell/lens/4.0.1.nix
similarity index 94%
rename from pkgs/development/libraries/haskell/lens/4.0.nix
rename to pkgs/development/libraries/haskell/lens/4.0.1.nix
index 9046558c22d..d921dbe1cbb 100644
--- a/pkgs/development/libraries/haskell/lens/4.0.nix
+++ b/pkgs/development/libraries/haskell/lens/4.0.1.nix
@@ -10,8 +10,8 @@
cabal.mkDerivation (self: {
pname = "lens";
- version = "4.0";
- sha256 = "1mrpbwnj1k2my71lm0ajxsx5r44sz372gfxn78vz4182yv3bmla1";
+ version = "4.0.1";
+ sha256 = "1dm4gdpyd7kndf3zaikjqa1gkc7y7wzfnyhhk3xyhjxa5hn5rj75";
buildDepends = [
aeson bifunctors comonad constraints contravariant distributive
exceptions filepath hashable mtl parallel primitive profunctors
diff --git a/pkgs/development/libraries/haskell/linear/default.nix b/pkgs/development/libraries/haskell/linear/default.nix
index a0d1e67ee6f..5b8f42d5420 100644
--- a/pkgs/development/libraries/haskell/linear/default.nix
+++ b/pkgs/development/libraries/haskell/linear/default.nix
@@ -17,6 +17,7 @@ cabal.mkDerivation (self: {
binary doctest filepath HUnit lens simpleReflect testFramework
testFrameworkHunit
];
+ doCheck = false;
meta = {
homepage = "http://github.com/ekmett/linear/";
description = "Linear Algebra";
diff --git a/pkgs/development/libraries/haskell/llvm-general/3.4.nix b/pkgs/development/libraries/haskell/llvm-general/3.4.nix
index 3206493eee3..7749c47689e 100644
--- a/pkgs/development/libraries/haskell/llvm-general/3.4.nix
+++ b/pkgs/development/libraries/haskell/llvm-general/3.4.nix
@@ -1,7 +1,6 @@
{ cabal, HUnit, llvmConfig, llvmGeneralPure, mtl, parsec
, QuickCheck, setenv, testFramework, testFrameworkHunit
, testFrameworkQuickcheck2, transformers, utf8String
-, ncurses, zlib
}:
cabal.mkDerivation (self: {
diff --git a/pkgs/development/libraries/haskell/lockfree-queue/default.nix b/pkgs/development/libraries/haskell/lockfree-queue/default.nix
index ac2114b7f37..a5106d910f3 100644
--- a/pkgs/development/libraries/haskell/lockfree-queue/default.nix
+++ b/pkgs/development/libraries/haskell/lockfree-queue/default.nix
@@ -1,18 +1,18 @@
-{ cabal, abstractDeque, atomicPrimops, HUnit, IORefCAS
+{ cabal, abstractDeque, abstractDequeTests, atomicPrimops, HUnit
, testFramework, testFrameworkHunit
}:
cabal.mkDerivation (self: {
pname = "lockfree-queue";
- version = "0.2.0.2";
- sha256 = "0mb07hx4cllnxv7mz19vvn9zcc5rx0ji5wv80fx0yirgk2qjpgml";
- buildDepends = [ abstractDeque atomicPrimops IORefCAS ];
+ version = "0.2.3";
+ sha256 = "0y8ax6vcjnjm8g7ybn95wca74hm0g22fvgra06vj6l90pl93awyg";
+ buildDepends = [ abstractDeque atomicPrimops ];
testDepends = [
- abstractDeque atomicPrimops HUnit IORefCAS testFramework
+ abstractDeque abstractDequeTests atomicPrimops HUnit testFramework
testFrameworkHunit
];
meta = {
- homepage = "https://github.com/rrnewton/haskell-lockfree-queue/wiki";
+ homepage = "https://github.com/rrnewton/haskell-lockfree/wiki";
description = "Michael and Scott lock-free queues";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/mime-mail/default.nix b/pkgs/development/libraries/haskell/mime-mail/default.nix
index 4f7353dfdb6..e88dee9fa51 100644
--- a/pkgs/development/libraries/haskell/mime-mail/default.nix
+++ b/pkgs/development/libraries/haskell/mime-mail/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "mime-mail";
- version = "0.4.3";
- sha256 = "0xh6j4vdg2ispr9f41s8pvx5rb08zqapkqxyvykvjg2ibmczzg4f";
+ version = "0.4.4";
+ sha256 = "1y0fss53z1mvykpfkp28zwic2mb7zhf02lwxdr22n34hjzk34g9b";
buildDepends = [
base64Bytestring blazeBuilder filepath random text
];
diff --git a/pkgs/development/libraries/haskell/mime/default.nix b/pkgs/development/libraries/haskell/mime/default.nix
index 37c231d08ff..b4d2f7d7e50 100644
--- a/pkgs/development/libraries/haskell/mime/default.nix
+++ b/pkgs/development/libraries/haskell/mime/default.nix
@@ -1,9 +1,10 @@
-{ cabal }:
+{ cabal, text }:
cabal.mkDerivation (self: {
pname = "mime";
- version = "0.3.4";
- sha256 = "1klvy32idy6v029p5a6g93r79ac5cycnrx5c8z9bgvplbplpfjwy";
+ version = "0.4.0";
+ sha256 = "159jp7dcyx26slda2743zdr2prnm707mnglcb9p66hr1wjh98kx4";
+ buildDepends = [ text ];
meta = {
homepage = "https://github.com/GaloisInc/mime";
description = "Working with MIME types";
diff --git a/pkgs/development/libraries/haskell/murmur-hash/default.nix b/pkgs/development/libraries/haskell/murmur-hash/default.nix
index 0c4058eb111..12d5d550d10 100644
--- a/pkgs/development/libraries/haskell/murmur-hash/default.nix
+++ b/pkgs/development/libraries/haskell/murmur-hash/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "murmur-hash";
- version = "0.1.0.6";
- sha256 = "0wnkwl3a9x0f4rvsj4wf129n03vpw8qk4kzx6vmrapwwb4r80npz";
+ version = "0.1.0.7";
+ sha256 = "125v4ypiv8n2m8zd1yi46prz96yy79ap0yzhm4vhrws4cf1zapkp";
meta = {
homepage = "http://github.com/nominolo/murmur-hash";
description = "MurmurHash2 implementation for Haskell";
diff --git a/pkgs/development/libraries/haskell/mwc-random/default.nix b/pkgs/development/libraries/haskell/mwc-random/default.nix
index d26980994e7..995571abc20 100644
--- a/pkgs/development/libraries/haskell/mwc-random/default.nix
+++ b/pkgs/development/libraries/haskell/mwc-random/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "mwc-random";
- version = "0.13.1.0";
- sha256 = "16g6b1pphr4p36nn5qjj62iwf47rq8kfmpjgfvd35r3cz9qqb8cb";
+ version = "0.13.1.1";
+ sha256 = "1hi9ci65m3pjkli0rvx2x4fmp73c9fsmnc1zkpaj4g64ibhhir64";
buildDepends = [ primitive time vector ];
testDepends = [
HUnit QuickCheck statistics testFramework testFrameworkHunit
diff --git a/pkgs/development/libraries/haskell/numbers/default.nix b/pkgs/development/libraries/haskell/numbers/default.nix
index 26ed2d77bd0..902ea9ce880 100644
--- a/pkgs/development/libraries/haskell/numbers/default.nix
+++ b/pkgs/development/libraries/haskell/numbers/default.nix
@@ -2,13 +2,13 @@
cabal.mkDerivation (self: {
pname = "numbers";
- version = "3000.2.0.0";
- sha256 = "035qc7dgh4nd661z4mm742v8y7xqdyyp0r0vkinxiifciqb1fkbm";
+ version = "3000.2.0.1";
+ sha256 = "10z1bi5qbc81z5xx2v1ylwcpmcfl1ci7lxrswkgi0dd1wi8havbk";
testDepends = [
QuickCheck testFramework testFrameworkQuickcheck2
];
meta = {
- homepage = "https://github.com/DanBurton/numbers#readme";
+ homepage = "https://github.com/jwiegley/numbers#readme";
description = "Various number types";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/pandoc-types/default.nix b/pkgs/development/libraries/haskell/pandoc-types/default.nix
index 110195fa518..ee41d76a417 100644
--- a/pkgs/development/libraries/haskell/pandoc-types/default.nix
+++ b/pkgs/development/libraries/haskell/pandoc-types/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "pandoc-types";
- version = "1.12.3.1";
- sha256 = "0q9wj3vkhnvl1l2hbg9nmcbshkf23nmaylm3zmqj5j95vay60hkr";
+ version = "1.12.3.2";
+ sha256 = "1jgab8ccyyr8ygm6y0wbr3vvwdg5gkp1b6014dk8ryqb2dmkmikc";
buildDepends = [ aeson syb ];
meta = {
homepage = "http://johnmacfarlane.net/pandoc";
diff --git a/pkgs/development/libraries/haskell/pandoc/default.nix b/pkgs/development/libraries/haskell/pandoc/default.nix
index 94a0ba418ea..5a93cb023c9 100644
--- a/pkgs/development/libraries/haskell/pandoc/default.nix
+++ b/pkgs/development/libraries/haskell/pandoc/default.nix
@@ -10,8 +10,8 @@
cabal.mkDerivation (self: {
pname = "pandoc";
- version = "1.12.3.1";
- sha256 = "0kvw10d2cnv16w9y9zx2l2gmn3zsrxppa9lllvqh1jah54rbn1pc";
+ version = "1.12.3.3";
+ sha256 = "0v7wvh93rz3k7phlz21627j5xakpi83174mchr3lwg4bmkfxn25s";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/haskell/pipes-parse/default.nix b/pkgs/development/libraries/haskell/pipes-parse/default.nix
index ea83701f702..ef615ebb808 100644
--- a/pkgs/development/libraries/haskell/pipes-parse/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-parse/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "pipes-parse";
- version = "3.0.0";
- sha256 = "07ycdnx24qlysbf78sgfl2g8rfsrxnaiq1rimc4656in4cmcjn9g";
+ version = "3.0.1";
+ sha256 = "0f262p8mfcpvs3f3myy6bll9v61rfgrfdy2scdzf7vvx0h0lrpj7";
buildDepends = [ pipes transformers ];
meta = {
description = "Parsing infrastructure for the pipes ecosystem";
diff --git a/pkgs/development/libraries/haskell/pipes-zlib/default.nix b/pkgs/development/libraries/haskell/pipes-zlib/default.nix
index 171b8c90b56..67d08ebcb4a 100644
--- a/pkgs/development/libraries/haskell/pipes-zlib/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-zlib/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "pipes-zlib";
- version = "0.3.0";
- sha256 = "15d475rxziazxlbcbm8snik45z88kk7gxbxrpv4070bwylh3z0wc";
+ version = "0.4.0";
+ sha256 = "1xi8x7cfzr7042x5jq8b6xqdhffh1jgprk90yzsfjldllck9z5ia";
buildDepends = [ pipes transformers zlib zlibBindings ];
meta = {
homepage = "https://github.com/k0001/pipes-zlib";
diff --git a/pkgs/development/libraries/haskell/preprocessor-tools/0.1.3.nix b/pkgs/development/libraries/haskell/preprocessor-tools/0.1.3.nix
new file mode 100644
index 00000000000..1ca159c7128
--- /dev/null
+++ b/pkgs/development/libraries/haskell/preprocessor-tools/0.1.3.nix
@@ -0,0 +1,14 @@
+{ cabal, mtl, parsec, syb }:
+
+cabal.mkDerivation (self: {
+ pname = "preprocessor-tools";
+ version = "0.1.3";
+ sha256 = "0jz85v93zpv6cwvad18wr12nsikmv4n20gn37zli2h34zi543i9v";
+ buildDepends = [ mtl parsec syb ];
+ meta = {
+ homepage = "http://www.eecs.harvard.edu/~tov/pubs/haskell-session-types/";
+ description = "Extending Haskell's syntax using a custom preprocessor";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/preprocessor-tools/1.0.1.nix b/pkgs/development/libraries/haskell/preprocessor-tools/1.0.1.nix
new file mode 100644
index 00000000000..e4a1f02eafa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/preprocessor-tools/1.0.1.nix
@@ -0,0 +1,14 @@
+{ cabal, mtl, parsec, syb }:
+
+cabal.mkDerivation (self: {
+ pname = "preprocessor-tools";
+ version = "1.0.1";
+ sha256 = "0ngfmvw6hvbr52i01n180ls4c8rx2wk2rka6g6igpvy9x2gwjin9";
+ buildDepends = [ mtl parsec syb ];
+ meta = {
+ homepage = "http://www.eecs.harvard.edu/~tov/pubs/haskell-session-types/";
+ description = "Extending Haskell's syntax using a custom preprocessor";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/scotty-hastache/default.nix b/pkgs/development/libraries/haskell/scotty-hastache/default.nix
new file mode 100644
index 00000000000..76e6fe45ad1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/scotty-hastache/default.nix
@@ -0,0 +1,19 @@
+{ cabal, blazeHtml, blazeMarkup, filepath, hastache, httpTypes, mtl
+, scotty, text, wai, warp
+}:
+
+cabal.mkDerivation (self: {
+ pname = "scotty-hastache";
+ version = "0.2.0";
+ sha256 = "105cxlasj4sl4ddzg8ms6k95078q10zcm2c86jcn76s0jmv95669";
+ buildDepends = [
+ blazeHtml blazeMarkup filepath hastache httpTypes mtl scotty text
+ wai warp
+ ];
+ meta = {
+ homepage = "https://github.com/scotty-web/scotty-hastache";
+ description = "Easy Mustache templating support for Scotty";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/setenv/default.nix b/pkgs/development/libraries/haskell/setenv/default.nix
index b00480279e1..4b3e75a1731 100644
--- a/pkgs/development/libraries/haskell/setenv/default.nix
+++ b/pkgs/development/libraries/haskell/setenv/default.nix
@@ -2,8 +2,8 @@
cabal.mkDerivation (self: {
pname = "setenv";
- version = "0.1.1";
- sha256 = "1j0fj8nrx9z90kghasxjx5jycz9y9xdi7mrxmgnsc14csa65rhb8";
+ version = "0.1.1.1";
+ sha256 = "0azkvsvk9i1979rn45zryqyirvjhj9b32nnz1m30aasbs2q8f393";
doCheck = false;
meta = {
description = "A cross-platform library for setting environment variables";
diff --git a/pkgs/development/libraries/haskell/snap-blaze/default.nix b/pkgs/development/libraries/haskell/snap-blaze/default.nix
new file mode 100644
index 00000000000..2b7444cd154
--- /dev/null
+++ b/pkgs/development/libraries/haskell/snap-blaze/default.nix
@@ -0,0 +1,14 @@
+{ cabal, blazeHtml, snapCore }:
+
+cabal.mkDerivation (self: {
+ pname = "snap-blaze";
+ version = "0.2.1.2";
+ sha256 = "136i5q9ipfqrh7fw8rgn1ws6zkjdrfwfq9wpccrm8dg3l61380wh";
+ buildDepends = [ blazeHtml snapCore ];
+ meta = {
+ homepage = "http://github.com/jaspervdj/snap-blaze";
+ description = "blaze-html integration for Snap";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/sparse/default.nix b/pkgs/development/libraries/haskell/sparse/default.nix
new file mode 100644
index 00000000000..f498da21939
--- /dev/null
+++ b/pkgs/development/libraries/haskell/sparse/default.nix
@@ -0,0 +1,31 @@
+{ cabal, contravariant, deepseq, doctest, filepath, hlint
+, hybridVectors, lens, linear, mtl, primitive, QuickCheck
+, semigroups, simpleReflect, testFramework
+, testFrameworkQuickcheck2, testFrameworkTh, transformers, vector
+, vectorAlgorithms
+}:
+
+cabal.mkDerivation (self: {
+ pname = "sparse";
+ version = "0.9";
+ sha256 = "0v0z7kjgmcdx9ajlhr9pc1i3qqghd60s02xnlmj4hcxby8k0r8mc";
+ buildDepends = [
+ contravariant deepseq hybridVectors lens primitive transformers
+ vector vectorAlgorithms
+ ];
+ testDepends = [
+ deepseq doctest filepath hlint hybridVectors lens linear mtl
+ QuickCheck semigroups simpleReflect testFramework
+ testFrameworkQuickcheck2 testFrameworkTh transformers vector
+ ];
+ patchPhase = ''
+ sed -i -e 's|vector-algorithms >=.*|vector-algorithms|' -e 's|QuickCheck.*,|QuickCheck,|' sparse.cabal
+ '';
+ doCheck = false;
+ meta = {
+ homepage = "http://github.com/ekmett/sparse";
+ description = "A playground of sparse linear algebra primitives using Morton ordering";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/sqlite-simple/default.nix b/pkgs/development/libraries/haskell/sqlite-simple/default.nix
new file mode 100644
index 00000000000..c566cd19d82
--- /dev/null
+++ b/pkgs/development/libraries/haskell/sqlite-simple/default.nix
@@ -0,0 +1,17 @@
+{ cabal, base16Bytestring, directSqlite, HUnit, text, time
+, transformers
+}:
+
+cabal.mkDerivation (self: {
+ pname = "sqlite-simple";
+ version = "0.4.4.0";
+ sha256 = "09vgy3hji0bjb3bwxwkwhmgf50q442dqr3d86g5l5s3xiw3hca0r";
+ buildDepends = [ directSqlite text time transformers ];
+ testDepends = [ base16Bytestring directSqlite HUnit text time ];
+ meta = {
+ homepage = "http://github.com/nurpax/sqlite-simple";
+ description = "Mid-Level SQLite client library";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/string-conversions/default.nix b/pkgs/development/libraries/haskell/string-conversions/default.nix
new file mode 100644
index 00000000000..efab2ee40bb
--- /dev/null
+++ b/pkgs/development/libraries/haskell/string-conversions/default.nix
@@ -0,0 +1,13 @@
+{ cabal, text, utf8String }:
+
+cabal.mkDerivation (self: {
+ pname = "string-conversions";
+ version = "0.3.0.2";
+ sha256 = "0jcm0vv0ll74zfc7s2l8qpqpbfnkv7ir9d1kg68m6b0f9sq0dgng";
+ buildDepends = [ text utf8String ];
+ meta = {
+ description = "Simplifies dealing with different types for strings";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
index ca177a80a10..c28301e4183 100644
--- a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
@@ -1,15 +1,15 @@
{ cabal, attoparsec, attoparsecConduit, blazeBuilder
-, blazeBuilderConduit, caseInsensitive, conduit, hspec, HUnit
-, QuickCheck, text, transformers
+, blazeBuilderConduit, caseInsensitive, conduit, dataDefault, hspec
+, HUnit, QuickCheck, text, transformers, xmlConduit
}:
cabal.mkDerivation (self: {
pname = "tagstream-conduit";
- version = "0.5.4.1";
- sha256 = "1gahdil5jasm6v7gp519ahr2yc7ppysdnmkl21cd4zzn6y1r0gw9";
+ version = "0.5.5";
+ sha256 = "17157chhw610f8az6c25qzq5mmhpb1a8m12kdc2k8khgynpkrj5f";
buildDepends = [
attoparsec attoparsecConduit blazeBuilder blazeBuilderConduit
- caseInsensitive conduit text transformers
+ caseInsensitive conduit dataDefault text transformers xmlConduit
];
testDepends = [ conduit hspec HUnit QuickCheck text ];
meta = {
diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix
new file mode 100644
index 00000000000..0fdcaf71d51
--- /dev/null
+++ b/pkgs/development/libraries/haskell/tls-extra/default.nix
@@ -0,0 +1,21 @@
+{ cabal, certificate, cipherAes, cipherRc4, cryptohash
+, cryptoPubkey, cryptoRandom, mtl, network, pem, time, tls, vector
+}:
+
+cabal.mkDerivation (self: {
+ pname = "tls-extra";
+ version = "0.6.6";
+ sha256 = "0k0sj3nq1lrvbmd582mjj8cxbxigivz1hm8hhij1ncl2pgnq5xyv";
+ isLibrary = true;
+ isExecutable = true;
+ buildDepends = [
+ certificate cipherAes cipherRc4 cryptohash cryptoPubkey
+ cryptoRandom mtl network pem time tls vector
+ ];
+ meta = {
+ homepage = "http://github.com/vincenthz/hs-tls";
+ description = "TLS extra default values and helpers";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/tls/1.1.5.nix b/pkgs/development/libraries/haskell/tls/1.1.5.nix
new file mode 100644
index 00000000000..0f354d8b77e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/tls/1.1.5.nix
@@ -0,0 +1,25 @@
+{ cabal, cereal, certificate, cprngAes, cryptohash, cryptoPubkey
+, cryptoRandom, mtl, network, QuickCheck, testFramework
+, testFrameworkQuickcheck2, time
+}:
+
+cabal.mkDerivation (self: {
+ pname = "tls";
+ version = "1.1.5";
+ sha256 = "1ja03x3i7dgjpy22h4shnni1xslph8i8q4accqq8njpqpz54c84c";
+ buildDepends = [
+ cereal certificate cryptohash cryptoPubkey cryptoRandom mtl network
+ ];
+ testDepends = [
+ cereal certificate cprngAes cryptoPubkey cryptoRandom mtl
+ QuickCheck testFramework testFrameworkQuickcheck2 time
+ ];
+ doCheck = false;
+ meta = {
+ homepage = "http://github.com/vincenthz/hs-tls";
+ description = "TLS/SSL protocol native implementation (Server and Client)";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ maintainers = [ self.stdenv.lib.maintainers.andres ];
+ };
+})
diff --git a/pkgs/development/libraries/haskell/tls/default.nix b/pkgs/development/libraries/haskell/tls/1.2.2.nix
similarity index 100%
rename from pkgs/development/libraries/haskell/tls/default.nix
rename to pkgs/development/libraries/haskell/tls/1.2.2.nix
diff --git a/pkgs/development/libraries/haskell/wai-middleware-static/default.nix b/pkgs/development/libraries/haskell/wai-middleware-static/default.nix
new file mode 100644
index 00000000000..859c75c39c3
--- /dev/null
+++ b/pkgs/development/libraries/haskell/wai-middleware-static/default.nix
@@ -0,0 +1,14 @@
+{ cabal, filepath, httpTypes, mtl, text, wai }:
+
+cabal.mkDerivation (self: {
+ pname = "wai-middleware-static";
+ version = "0.4.0.2";
+ sha256 = "0nw54h8baphjdwsd118g9j5w4g2mnb2hrny0n4ih4jlqlcqam3lf";
+ buildDepends = [ filepath httpTypes mtl text wai ];
+ meta = {
+ homepage = "https://github.com/scotty-web/scotty";
+ description = "WAI middleware that intercepts requests to static files";
+ license = self.stdenv.lib.licenses.bsd3;
+ platforms = self.ghc.meta.platforms;
+ };
+})
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index b8008447e40..84f653cde16 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -6,8 +6,8 @@
cabal.mkDerivation (self: {
pname = "warp";
- version = "2.0.2.1";
- sha256 = "0r8kpg2k7mr9y7nlccvfk6qbzgv459gidbaw6sgaxb26f6bgipgk";
+ version = "2.0.3.1";
+ sha256 = "0rbl9p1kdgvya2ah2bpaqfv73hlvhsd46nk5f5wgx244pm714kc5";
buildDepends = [
blazeBuilder blazeBuilderConduit caseInsensitive conduit hashable
httpDate httpTypes liftedBase network networkConduit simpleSendfile
diff --git a/pkgs/development/libraries/haskell/yaml/default.nix b/pkgs/development/libraries/haskell/yaml/default.nix
index 8e3a3e46f45..e7fac87c319 100644
--- a/pkgs/development/libraries/haskell/yaml/default.nix
+++ b/pkgs/development/libraries/haskell/yaml/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "yaml";
- version = "0.8.5.4";
- sha256 = "0mn1i0whqr9q6vh43x5xa0p4xxckqszhsi62warx1kjvrq4yil6f";
+ version = "0.8.6";
+ sha256 = "0qmbgb2gsqj25hl1blxjjcpk5fp5za9d1vshjs86mpapqvlhr9rn";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/development/libraries/ibus/default.nix b/pkgs/development/libraries/ibus/default.nix
index 6c82ad839e1..75eb1b4134c 100644
--- a/pkgs/development/libraries/ibus/default.nix
+++ b/pkgs/development/libraries/ibus/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, makeWrapper, python, intltool, pkgconfig
-, gnome3, dbus, libnotify, isocodes, gobjectIntrospection, wayland }:
+, gnome3, atk, pygobject3, dbus, libnotify, isocodes, gobjectIntrospection, wayland }:
stdenv.mkDerivation rec {
name = "ibus-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "1v4a9xv2k26g6ggk4282ynfvh68j2r5hg1cdpvnryfa8c2pkdaq2";
};
- configureFlags = "--enable-dconf --disable-memconf --enable-ui --enable-python-library";
+ configureFlags = "--disable-gconf --enable-dconf --disable-memconf --enable-ui --enable-python-library";
buildInputs = [
makeWrapper python gnome3.glib wayland
@@ -21,9 +21,13 @@ stdenv.mkDerivation rec {
preBuild = "patchShebangs ./scripts";
- postInstall = ''
+ postInstall = ''
for f in "$out"/bin/*; do
- wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share"
+ wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share" \
+ --prefix PYTHONPATH : "$(toPythonPath ${pygobject3})" \
+ --prefix LD_LIBRARY_PATH : "${gnome3.gtk3}/lib:${atk}/lib:$out/lib" \
+ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH:$out/lib/girepository-1.0" \
+ --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules"
done
'';
diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix
index 7abad2f2d08..b7b001e44eb 100644
--- a/pkgs/development/libraries/libarchive/default.nix
+++ b/pkgs/development/libraries/libarchive/default.nix
@@ -12,6 +12,12 @@ stdenv.mkDerivation rec {
sha256 = "0pixqnrcf35dnqgv0lp7qlcw7k13620qkhgxr288v7p4iz6ym1zb";
};
+ patches = [(fetchurl {
+ url = "https://github.com/libarchive/libarchive/commit/22531545514043e04633e1c015c7540b9de9dbe4.patch";
+ sha256 = "0c1a0prlpq5nn7zgs7cqvw9xnmhkkc8l0mpsip86k1lafircqhzh";
+ name = "CVE-2013-0211.patch";
+ })];
+
buildInputs = [ sharutils libxml2 zlib bzip2 openssl xz ] ++
stdenv.lib.optionals stdenv.isLinux [ e2fsprogs attr acl ];
diff --git a/pkgs/development/libraries/libgcrypt/1.6.nix b/pkgs/development/libraries/libgcrypt/1.6.nix
index f5f8297bc6c..ea981f7ed12 100644
--- a/pkgs/development/libraries/libgcrypt/1.6.nix
+++ b/pkgs/development/libraries/libgcrypt/1.6.nix
@@ -1,11 +1,11 @@
{ fetchurl, stdenv, libgpgerror, transfig, ghostscript, texinfo }:
stdenv.mkDerivation rec {
- name = "libgcrypt-1.6.0";
+ name = "libgcrypt-1.6.1";
src = fetchurl {
url = "mirror://gnupg/libgcrypt/${name}.tar.bz2";
- sha256 = "024plbybsmnxbp39hs92lp6dzvkz2cb70nv69qrwr55d02350bb6";
+ sha256 = "0w10vhpj1r5nq7qm6jp21p1v1vhf37701cw8yilygzzqd7mfzhx1";
};
nativeBuildInputs = [ transfig ghostscript texinfo ];
diff --git a/pkgs/development/tools/analysis/lcov/default.nix b/pkgs/development/tools/analysis/lcov/default.nix
index 0a0974b886a..9ad34097d0b 100644
--- a/pkgs/development/tools/analysis/lcov/default.nix
+++ b/pkgs/development/tools/analysis/lcov/default.nix
@@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
};
patches =
- (stdenv.lib.optional stdenv.isFreeBSD ./freebsd-install.patch);
+ [ ./lcov-except-unreach.patch ./no-warn-missing.patch ]
+ ++ stdenv.lib.optional stdenv.isFreeBSD ./freebsd-install.patch;
preBuild = ''
makeFlagsArray=(PREFIX=$out BIN_DIR=$out/bin MAN_DIR=$out/share/man)
diff --git a/pkgs/development/tools/analysis/lcov/lcov-except-unreach.patch b/pkgs/development/tools/analysis/lcov/lcov-except-unreach.patch
new file mode 100644
index 00000000000..6c8d8664d02
--- /dev/null
+++ b/pkgs/development/tools/analysis/lcov/lcov-except-unreach.patch
@@ -0,0 +1,13 @@
+http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/lcov/bin/geninfo?r1=1.117&r2=1.118&view=patch
+
+--- a/bin/geninfo 2012/10/10 08:36:16 1.117
++++ b/bin/geninfo 2012/11/13 09:58:53 1.118
+@@ -1833,7 +1833,7 @@
+ push(@result, 0);
+ } else {
+ # Check for zero count
+- if ($count eq "#####") {
++ if ($count =~ /^[#=]/) {
+ $count = 0;
+ }
+ push(@result, 1);
diff --git a/pkgs/development/tools/analysis/lcov/no-warn-missing.patch b/pkgs/development/tools/analysis/lcov/no-warn-missing.patch
new file mode 100644
index 00000000000..fa1f476fba0
--- /dev/null
+++ b/pkgs/development/tools/analysis/lcov/no-warn-missing.patch
@@ -0,0 +1,54 @@
+http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/lcov/bin/geninfo?view=log
+
+--- a/bin/geninfo 2013/01/10 09:02:32 1.119
++++ b/bin/geninfo 2013/02/22 14:09:08 1.120
+@@ -864,7 +864,6 @@
+ my $source; # gcov source header information
+ my $object; # gcov object header information
+ my @matches; # List of absolute paths matching filename
+- my @unprocessed; # List of unprocessed source code files
+ my $base_dir; # Base directory for current file
+ my @tmp_links; # Temporary links to be cleaned up
+ my @result;
+@@ -1060,7 +1059,6 @@
+
+ # Traverse the list of generated .gcov files and combine them into a
+ # single .info file
+- @unprocessed = keys(%{$instr});
+ foreach $gcov_file (sort(@gcov_list))
+ {
+ my $i;
+@@ -1143,16 +1141,6 @@
+ \@matches, \@gcov_content);
+ }
+
+- # Remove processed file from list
+- for ($index = scalar(@unprocessed) - 1; $index >= 0; $index--)
+- {
+- if ($unprocessed[$index] eq $source_filename)
+- {
+- splice(@unprocessed, $index, 1);
+- last;
+- }
+- }
+-
+ # Skip external files if requested
+ if (!$opt_external) {
+ if (is_external($source_filename)) {
+@@ -1297,16 +1285,6 @@
+ unlink($gcov_file);
+ }
+
+- # Check for files which show up in the graph file but were never
+- # processed
+- if (@unprocessed && @gcov_list)
+- {
+- foreach (@unprocessed)
+- {
+- warn("WARNING: no data found for $_\n");
+- }
+- }
+-
+ if (!($output_filename && ($output_filename eq "-")))
+ {
+ close(INFO_HANDLE);
diff --git a/pkgs/development/tools/haskell/hasktags/default.nix b/pkgs/development/tools/haskell/hasktags/default.nix
index cd27fb5fbc4..036c308a712 100644
--- a/pkgs/development/tools/haskell/hasktags/default.nix
+++ b/pkgs/development/tools/haskell/hasktags/default.nix
@@ -1,13 +1,12 @@
-{ cabal, filepath, HUnit, json }:
+{ cabal, filepath, json, utf8String }:
cabal.mkDerivation (self: {
pname = "hasktags";
- version = "0.68.6";
- sha256 = "1r5vnn9n2jva1ccjv8vnp3j0z3bh3xsi7yjv9llnvj0jw308aq9r";
+ version = "0.68.7";
+ sha256 = "0z98ha2xjc6npcyn15arp6h6ad87bs4acdhd1rnqrsy4lc0lny04";
isLibrary = false;
isExecutable = true;
- buildDepends = [ filepath json ];
- testDepends = [ filepath HUnit json ];
+ buildDepends = [ filepath json utf8String ];
meta = {
homepage = "http://github.com/MarcWeber/hasktags";
description = "Produces ctags \"tags\" and etags \"TAGS\" files for Haskell programs";
diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix
index c8ede663be4..860148cf244 100644
--- a/pkgs/development/tools/haskell/hlint/default.nix
+++ b/pkgs/development/tools/haskell/hlint/default.nix
@@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "hlint";
- version = "1.8.56";
- sha256 = "1idff4jaca324acbr0aa64j977l5nxnlfk9nny33i81b5hzciwmw";
+ version = "1.8.57";
+ sha256 = "062fpyjd3mha9faxdpg763sigafl4mvl8qqw3z31zkafz361qzm4";
isLibrary = true;
isExecutable = true;
buildDepends = [
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
index 7273b425f9a..4f8fe0d1974 100644
--- a/pkgs/games/spring/default.nix
+++ b/pkgs/games/spring/default.nix
@@ -7,11 +7,11 @@
stdenv.mkDerivation rec {
name = "spring-${version}";
- version = "95.0";
+ version = "96.0";
src = fetchurl {
url = "mirror://sourceforge/springrts/spring_${version}_src.tar.lzma";
- sha256 = "0g0jfbbxl1g8nasibw13yjnsgalnfn4s2ii5z4s8k87vla9apg1v";
+ sha256 = "1axyqkxgv3a0zg0afzlc7j3lyi412zd551j317ci41yqz2qzf0px";
};
buildInputs = [ cmake lzma boost libdevil zlib p7zip openal libvorbis freetype SDL
diff --git a/pkgs/os-specific/linux/guvcview/default.nix b/pkgs/os-specific/linux/guvcview/default.nix
new file mode 100644
index 00000000000..6e4a2caba18
--- /dev/null
+++ b/pkgs/os-specific/linux/guvcview/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchgit, intltool, autoreconfHook, gettext, pkgconfig
+, gtk3, portaudio, libpng, SDL, ffmpeg, udev, libusb1, libv4l, alsaLib }:
+
+stdenv.mkDerivation rec {
+ version = "1.7.2";
+ rev = "ab84b0b1ed358f0504e1218a0ef792a02b307af8";
+ name = "guvcview-${version}_${rev}";
+
+ src = fetchgit {
+ inherit rev;
+ url = "git://git.code.sf.net/p/guvcview/git-master";
+ sha256 = "08cpbxq3dh2mlsgzk5dj3vfrgap4q281n9h6xzpbsvyifcj1a9n1";
+ };
+
+ buildInputs =
+ [ SDL
+ alsaLib
+ autoreconfHook
+ ffmpeg
+ gtk3
+ intltool
+ libusb1
+ libv4l
+ pkgconfig
+ portaudio
+ udev
+ ];
+
+ preConfigure = ''
+ ./bootstrap.sh
+ '';
+
+ meta = {
+ description = "A simple interface for devices supported by the linux UVC driver";
+ homepage = http://guvcview.sourceforge.net;
+ maintainers = [ stdenv.lib.maintainers.coconnor ];
+ platforms = stdenv.lib.platforms.linux;
+ };
+}
diff --git a/pkgs/os-specific/linux/kernel/linux-3.13.nix b/pkgs/os-specific/linux/kernel/linux-3.13.nix
index 437e4bc025a..637d2935c98 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.13.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.13.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, ... } @ args:
import ./generic.nix (args // rec {
- version = "3.13.1";
+ version = "3.13.2";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
- sha256 = "0gkikbz676h79rv0aaihl90mw7fqhjx3rkhcqrmzggjb54048jvq";
+ sha256 = "1bvxcdzjff514zwk18b9dfkhhk12fjjbb4a1saynqnisdn7b78dl";
};
features.iwlwifi = true;
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index 662f3307b46..cb7e3ba925f 100644
--- a/pkgs/stdenv/adapters.nix
+++ b/pkgs/stdenv/adapters.nix
@@ -2,27 +2,20 @@
a new stdenv with different behaviour, e.g. using a different C
compiler. */
-{dietlibc, fetchurl, runCommand}:
-
+pkgs:
rec {
# Override the compiler in stdenv for specific packages.
- overrideGCC = stdenv: gcc: stdenv //
- { mkDerivation = args: stdenv.mkDerivation (args // { NIX_GCC = gcc; });
- inherit gcc;
- };
+ overrideGCC = stdenv: gcc: stdenv.override { inherit gcc; };
# Add some arbitrary packages to buildInputs for specific packages.
# Used to override packages in stdenv like Make. Should not be used
# for other dependencies.
- overrideInStdenv = stdenv: pkgs: stdenv //
- { mkDerivation = args: stdenv.mkDerivation (args //
- { buildInputs = args.buildInputs or [] ++ pkgs; }
- );
- };
+ overrideInStdenv = stdenv: pkgs:
+ stdenv.override (prev: { extraBuildInputs = prev.extraBuildInputs or [] ++ pkgs; });
# Override the setup script of stdenv. Useful for testing new
@@ -33,7 +26,7 @@ rec {
# randomPkg = import ../bla { ...
# stdenv = overrideSetup stdenv ../stdenv/generic/setup-latest.sh;
# };
- overrideSetup = stdenv: setup: stdenv.regenerate setup;
+ overrideSetup = stdenv: setupScript: stdenv.override { inherit setupScript; };
# Return a modified stdenv that uses dietlibc to create small
@@ -57,13 +50,13 @@ rec {
NIX_GCC = import ../build-support/gcc-wrapper {
inherit stdenv;
- libc = dietlibc;
+ libc = pkgs.dietlibc;
inherit (stdenv.gcc) gcc binutils nativeTools nativePrefix;
nativeLibc = false;
};
});
isDietLibC = true;
- } // {inherit fetchurl;};
+ };
# Return a modified stdenv that uses klibc to create small
@@ -80,7 +73,7 @@ rec {
configureFlags =
args.configureFlags or "" + " --disable-shared"; # brrr...
- NIX_GCC = runCommand "klibc-wrapper" {} ''
+ NIX_GCC = pkgs.runCommand "klibc-wrapper" {} ''
mkdir -p $out/bin
ln -s ${klibc}/bin/klcc $out/bin/gcc
ln -s ${klibc}/bin/klcc $out/bin/cc
@@ -90,7 +83,7 @@ rec {
});
isKlibc = true;
isStatic = true;
- } // {inherit fetchurl;};
+ };
# Return a modified stdenv that tries to build statically linked
@@ -103,7 +96,7 @@ rec {
+ " --disable-shared"; # brrr...
});
isStatic = true;
- } // {inherit fetchurl;};
+ };
# Return a modified stdenv that builds static libraries instead of
@@ -115,7 +108,7 @@ rec {
toString args.configureFlags or ""
+ " --enable-static --disable-shared";
});
- } // {inherit fetchurl;};
+ };
# Return a modified stdenv that adds a cross compiler to the
@@ -238,32 +231,7 @@ rec {
programs like lcov to produce pretty-printed reports.
*/
addCoverageInstrumentation = stdenv:
- addAttrsToDerivation
- {
- postUnpack =
- ''
- # This is an uberhack to prevent libtool from removing gcno
- # files. This has been fixed in libtool, but there are
- # packages out there with old ltmain.sh scripts.
- # See http://www.mail-archive.com/libtool@gnu.org/msg10725.html
- for i in $(find -name ltmain.sh); do
- substituteInPlace $i --replace '*.$objext)' '*.$objext | *.gcno)'
- done
-
- export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -O0 --coverage"
- '';
- }
-
- # Object files instrumented with coverage analysis write
- # runtime coverage data to /