Merge staging into staging-next

This commit is contained in:
Frederik Rietdijk 2018-07-27 08:06:38 +02:00
commit dd7e291b5f
326 changed files with 3210 additions and 2524 deletions

View File

@ -424,7 +424,7 @@ available.
At some point you'll likely have multiple packages which you would At some point you'll likely have multiple packages which you would
like to be able to use in different projects. In order to minimise unnecessary like to be able to use in different projects. In order to minimise unnecessary
duplication we now look at how you can maintain yourself a repository with your duplication we now look at how you can maintain a repository with your
own packages. The important functions here are `import` and `callPackage`. own packages. The important functions here are `import` and `callPackage`.
### Including a derivation using `callPackage` ### Including a derivation using `callPackage`
@ -647,7 +647,7 @@ in python.withPackages(ps: [ps.blaze])).env
The `buildPythonApplication` function is practically the same as `buildPythonPackage`. The `buildPythonApplication` function is practically the same as `buildPythonPackage`.
The difference is that `buildPythonPackage` by default prefixes the names of the packages with the version of the interpreter. The difference is that `buildPythonPackage` by default prefixes the names of the packages with the version of the interpreter.
Because with an application we're not interested in multiple version the prefix is dropped. Because this is irrelevant for applications, the prefix is omitted.
#### `toPythonApplication` function #### `toPythonApplication` function
@ -1006,14 +1006,14 @@ folder and not downloaded again.
If you need to change a package's attribute(s) from `configuration.nix` you could do: If you need to change a package's attribute(s) from `configuration.nix` you could do:
```nix ```nix
nixpkgs.config.packageOverrides = superP: { nixpkgs.config.packageOverrides = super: {
pythonPackages = superP.pythonPackages.override { python = super.python.override {
overrides = self: super: { packageOverrides = python-self: python-super: {
bepasty-server = super.bepasty-server.overrideAttrs ( oldAttrs: { zerobin = python-super.zerobin.overrideAttrs (oldAttrs: {
src = pkgs.fetchgit { src = super.fetchgit {
url = "https://github.com/bepasty/bepasty-server"; url = "https://github.com/sametmax/0bin";
sha256 = "9ziqshmsf0rjvdhhca55sm0x8jz76fsf2q4rwh4m6lpcf8wr0nps"; rev = "a344dbb18fe7a855d0742b9a1cede7ce423b34ec";
rev = "e2516e8cf4f2afb5185337073607eb9e84a61d2d"; sha256 = "16d769kmnrpbdr0ph0whyf4yff5df6zi4kmwx7sz1d3r6c8p6xji";
}; };
}); });
}; };
@ -1021,27 +1021,39 @@ If you need to change a package's attribute(s) from `configuration.nix` you coul
}; };
``` ```
If you are using the `bepasty-server` package somewhere, for example in `systemPackages` or indirectly from `services.bepasty`, then a `nixos-rebuild switch` will rebuild the system but with the `bepasty-server` package using a different `src` attribute. This way one can modify `python` based software/libraries easily. Using `self` and `super` one can also alter dependencies (`buildInputs`) between the old state (`self`) and new state (`super`). `pythonPackages.zerobin` is now globally overridden. All packages and also the
`zerobin` NixOS service use the new definition.
Note that `python-super` refers to the old package set and `python-self`
to the new, overridden version.
To modify only a Python package set instead of a whole Python derivation, use this snippet:
```nix
myPythonPackages = pythonPackages.override {
overrides = self: super: {
zerobin = ...;
};
}
```
### How to override a Python package using overlays? ### How to override a Python package using overlays?
To alter a python package using overlays, you would use the following approach: Use the following overlay template:
```nix ```nix
self: super: self: super:
{ {
python = super.python.override { python = super.python.override {
packageOverrides = python-self: python-super: { packageOverrides = python-self: python-super: {
bepasty-server = python-super.bepasty-server.overrideAttrs ( oldAttrs: { zerobin = python-super.zerobin.overrideAttrs (oldAttrs: {
src = self.pkgs.fetchgit { src = super.fetchgit {
url = "https://github.com/bepasty/bepasty-server"; url = "https://github.com/sametmax/0bin";
sha256 = "9ziqshmsf0rjvdhhca55sm0x8jz76fsf2q4rwh4m6lpcf8wr0nps"; rev = "a344dbb18fe7a855d0742b9a1cede7ce423b34ec";
rev = "e2516e8cf4f2afb5185337073607eb9e84a61d2d"; sha256 = "16d769kmnrpbdr0ph0whyf4yff5df6zi4kmwx7sz1d3r6c8p6xji";
}; };
}); });
}; };
}; };
pythonPackages = self.python.pkgs;
} }
``` ```

View File

@ -16,6 +16,7 @@ rec {
isAarch64 = { cpu = { family = "arm"; bits = 64; }; }; isAarch64 = { cpu = { family = "arm"; bits = 64; }; };
isMips = { cpu = { family = "mips"; }; }; isMips = { cpu = { family = "mips"; }; };
isRiscV = { cpu = { family = "riscv"; }; }; isRiscV = { cpu = { family = "riscv"; }; };
isSparc = { cpu = { family = "sparc"; }; };
isWasm = { cpu = { family = "wasm"; }; }; isWasm = { cpu = { family = "wasm"; }; };
is32bit = { cpu = { bits = 32; }; }; is32bit = { cpu = { bits = 32; }; };

View File

@ -93,6 +93,9 @@ rec {
riscv32 = { bits = 32; significantByte = littleEndian; family = "riscv"; }; riscv32 = { bits = 32; significantByte = littleEndian; family = "riscv"; };
riscv64 = { bits = 64; significantByte = littleEndian; family = "riscv"; }; riscv64 = { bits = 64; significantByte = littleEndian; family = "riscv"; };
sparc = { bits = 32; significantByte = bigEndian; family = "sparc"; };
sparc64 = { bits = 64; significantByte = bigEndian; family = "sparc"; };
wasm32 = { bits = 32; significantByte = littleEndian; family = "wasm"; }; wasm32 = { bits = 32; significantByte = littleEndian; family = "wasm"; };
wasm64 = { bits = 64; significantByte = littleEndian; family = "wasm"; }; wasm64 = { bits = 64; significantByte = littleEndian; family = "wasm"; };
}; };

View File

@ -1,43 +1,9 @@
{ lib }: { lib }:
let
zipIntBits = f: x: y:
let
# (intToBits 6) -> [ 0 1 1 ]
intToBits = x:
if x == 0 || x == -1 then
[]
else
let
headbit = if (x / 2) * 2 != x then 1 else 0; # x & 1
tailbits = if x < 0 then ((x + 1) / 2) - 1 else x / 2; # x >> 1
in
[headbit] ++ (intToBits tailbits);
# (bitsToInt [ 0 1 1 ] 0) -> 6
# (bitsToInt [ 0 1 0 ] 1) -> -6
bitsToInt = l: signum:
if l == [] then
(if signum == 0 then 0 else -1)
else
(builtins.head l) + (2 * (bitsToInt (builtins.tail l) signum));
xsignum = if x < 0 then 1 else 0;
ysignum = if y < 0 then 1 else 0;
zipListsWith' = fst: snd:
if fst==[] && snd==[] then
[]
else if fst==[] then
[(f xsignum (builtins.head snd))] ++ (zipListsWith' [] (builtins.tail snd))
else if snd==[] then
[(f (builtins.head fst) ysignum )] ++ (zipListsWith' (builtins.tail fst) [] )
else
[(f (builtins.head fst) (builtins.head snd))] ++ (zipListsWith' (builtins.tail fst) (builtins.tail snd));
in
assert (builtins.isInt x) && (builtins.isInt y);
bitsToInt (zipListsWith' (intToBits x) (intToBits y)) (f xsignum ysignum);
in
rec { rec {
## Simple (higher order) functions
/* The identity function /* The identity function
For when you need a function that does nothing. For when you need a function that does nothing.
@ -59,7 +25,7 @@ rec {
## Named versions corresponding to some builtin operators. ## Named versions corresponding to some builtin operators.
/* Concat two strings */ /* Concatenate two lists */
concat = x: y: x ++ y; concat = x: y: x ++ y;
/* boolean or */ /* boolean or */
@ -69,13 +35,19 @@ rec {
and = x: y: x && y; and = x: y: x && y;
/* bitwise and */ /* bitwise and */
bitAnd = builtins.bitAnd or zipIntBits (a: b: if a==1 && b==1 then 1 else 0); bitAnd = builtins.bitAnd
or import ./zip-int-bits.nix
(a: b: if a==1 && b==1 then 1 else 0);
/* bitwise or */ /* bitwise or */
bitOr = builtins.bitOr or zipIntBits (a: b: if a==1 || b==1 then 1 else 0); bitOr = builtins.bitOr
or import ./zip-int-bits.nix
(a: b: if a==1 || b==1 then 1 else 0);
/* bitwise xor */ /* bitwise xor */
bitXor = builtins.bitXor or zipIntBits (a: b: if a!=b then 1 else 0); bitXor = builtins.bitXor
or import ./zip-int-bits.nix
(a: b: if a!=b then 1 else 0);
/* bitwise not */ /* bitwise not */
bitNot = builtins.sub (-1); bitNot = builtins.sub (-1);
@ -93,10 +65,22 @@ rec {
*/ */
mergeAttrs = x: y: x // y; mergeAttrs = x: y: x // y;
# Flip the order of the arguments of a binary function. /* Flip the order of the arguments of a binary function.
Example:
flip concat [1] [2]
=> [ 2 1 ]
*/
flip = f: a: b: f b a; flip = f: a: b: f b a;
# Apply function if argument is non-null /* Apply function if argument is non-null.
Example:
mapNullable (x: x+1) null
=> null
mapNullable (x: x+1) 22
=> 23
*/
mapNullable = f: a: if isNull a then a else f a; mapNullable = f: a: if isNull a then a else f a;
# Pull in some builtins not included elsewhere. # Pull in some builtins not included elsewhere.
@ -105,20 +89,30 @@ rec {
isInt isFloat add sub lessThan isInt isFloat add sub lessThan
seq deepSeq genericClosure; seq deepSeq genericClosure;
inherit (lib.strings) fileContents;
release = fileContents ../.version; ## nixpks version strings
versionSuffix = let suffixFile = ../.version-suffix; in
if pathExists suffixFile then fileContents suffixFile else "pre-git";
# Return the Nixpkgs version number. # The current full nixpkgs version number.
version = release + versionSuffix; version = release + versionSuffix;
# The current nixpkgs version number as string.
release = lib.strings.fileContents ../.version;
# The current nixpkgs version suffix as string.
versionSuffix =
let suffixFile = ../.version-suffix;
in if pathExists suffixFile
then lib.strings.fileContents suffixFile
else "pre-git";
nixpkgsVersion = builtins.trace "`lib.nixpkgsVersion` is deprecated, use `lib.version` instead!" version; nixpkgsVersion = builtins.trace "`lib.nixpkgsVersion` is deprecated, use `lib.version` instead!" version;
# Whether we're being called by nix-shell. # Whether we're being called by nix-shell.
inNixShell = builtins.getEnv "IN_NIX_SHELL" != ""; inNixShell = builtins.getEnv "IN_NIX_SHELL" != "";
## Integer operations
# Return minimum/maximum of two numbers. # Return minimum/maximum of two numbers.
min = x: y: if x < y then x else y; min = x: y: if x < y then x else y;
max = x: y: if x > y then x else y; max = x: y: if x > y then x else y;
@ -133,6 +127,9 @@ rec {
*/ */
mod = base: int: base - (int * (builtins.div base int)); mod = base: int: base - (int * (builtins.div base int));
## Comparisons
/* C-style comparisons /* C-style comparisons
a < b, compare a b => -1 a < b, compare a b => -1
@ -162,17 +159,20 @@ rec {
cmp "fooa" "a" => -1 cmp "fooa" "a" => -1
# while # while
compare "fooa" "a" => 1 compare "fooa" "a" => 1
*/ */
splitByAndCompare = p: yes: no: a: b: splitByAndCompare = p: yes: no: a: b:
if p a if p a
then if p b then yes a b else -1 then if p b then yes a b else -1
else if p b then 1 else no a b; else if p b then 1 else no a b;
/* Reads a JSON file. */ /* Reads a JSON file. */
importJSON = path: importJSON = path:
builtins.fromJSON (builtins.readFile path); builtins.fromJSON (builtins.readFile path);
## Warnings and asserts
/* See https://github.com/NixOS/nix/issues/749. Eventually we'd like these /* See https://github.com/NixOS/nix/issues/749. Eventually we'd like these
to expand to Nix builtins that carry metadata so that Nix can filter out to expand to Nix builtins that carry metadata so that Nix can filter out
the INFO messages without parsing the message string. the INFO messages without parsing the message string.
@ -188,28 +188,36 @@ rec {
warn = msg: builtins.trace "WARNING: ${msg}"; warn = msg: builtins.trace "WARNING: ${msg}";
info = msg: builtins.trace "INFO: ${msg}"; info = msg: builtins.trace "INFO: ${msg}";
# | Add metadata about expected function arguments to a function.
# The metadata should match the format given by ## Function annotations
# builtins.functionArgs, i.e. a set from expected argument to a bool
# representing whether that argument has a default or not. /* Add metadata about expected function arguments to a function.
# setFunctionArgs : (a → b) → Map String Bool → (a → b) The metadata should match the format given by
# builtins.functionArgs, i.e. a set from expected argument to a bool
# This function is necessary because you can't dynamically create a representing whether that argument has a default or not.
# function of the { a, b ? foo, ... }: format, but some facilities setFunctionArgs : (a b) Map String Bool (a b)
# like callPackage expect to be able to query expected arguments.
This function is necessary because you can't dynamically create a
function of the { a, b ? foo, ... }: format, but some facilities
like callPackage expect to be able to query expected arguments.
*/
setFunctionArgs = f: args: setFunctionArgs = f: args:
{ # TODO: Should we add call-time "type" checking like built in? { # TODO: Should we add call-time "type" checking like built in?
__functor = self: f; __functor = self: f;
__functionArgs = args; __functionArgs = args;
}; };
# | Extract the expected function arguments from a function. /* Extract the expected function arguments from a function.
# This works both with nix-native { a, b ? foo, ... }: style This works both with nix-native { a, b ? foo, ... }: style
# functions and functions with args set with 'setFunctionArgs'. It functions and functions with args set with 'setFunctionArgs'. It
# has the same return type and semantics as builtins.functionArgs. has the same return type and semantics as builtins.functionArgs.
# setFunctionArgs : (a → b) → Map String Bool. setFunctionArgs : (a b) Map String Bool.
*/
functionArgs = f: f.__functionArgs or (builtins.functionArgs f); functionArgs = f: f.__functionArgs or (builtins.functionArgs f);
/* Check whether something is a function or something
annotated with function args.
*/
isFunction = f: builtins.isFunction f || isFunction = f: builtins.isFunction f ||
(f ? __functor && isFunction (f.__functor f)); (f ? __functor && isFunction (f.__functor f));
} }

39
lib/zip-int-bits.nix Normal file
View File

@ -0,0 +1,39 @@
/* Helper function to implement a fallback for the bit operators
`bitAnd`, `bitOr` and `bitXOr` on older nix version.
See ./trivial.nix
*/
f: x: y:
let
# (intToBits 6) -> [ 0 1 1 ]
intToBits = x:
if x == 0 || x == -1 then
[]
else
let
headbit = if (x / 2) * 2 != x then 1 else 0; # x & 1
tailbits = if x < 0 then ((x + 1) / 2) - 1 else x / 2; # x >> 1
in
[headbit] ++ (intToBits tailbits);
# (bitsToInt [ 0 1 1 ] 0) -> 6
# (bitsToInt [ 0 1 0 ] 1) -> -6
bitsToInt = l: signum:
if l == [] then
(if signum == 0 then 0 else -1)
else
(builtins.head l) + (2 * (bitsToInt (builtins.tail l) signum));
xsignum = if x < 0 then 1 else 0;
ysignum = if y < 0 then 1 else 0;
zipListsWith' = fst: snd:
if fst==[] && snd==[] then
[]
else if fst==[] then
[(f xsignum (builtins.head snd))] ++ (zipListsWith' [] (builtins.tail snd))
else if snd==[] then
[(f (builtins.head fst) ysignum )] ++ (zipListsWith' (builtins.tail fst) [] )
else
[(f (builtins.head fst) (builtins.head snd))] ++ (zipListsWith' (builtins.tail fst) (builtins.tail snd));
in
assert (builtins.isInt x) && (builtins.isInt y);
bitsToInt (zipListsWith' (intToBits x) (intToBits y)) (f xsignum ysignum)

View File

@ -589,6 +589,11 @@
github = "c0bw3b"; github = "c0bw3b";
name = "Renaud"; name = "Renaud";
}; };
c0deaddict = {
email = "josvanbakel@protonmail.com";
github = "c0deaddict";
name = "Jos van Bakel";
};
c0dehero = { c0dehero = {
email = "codehero@nerdpol.ch"; email = "codehero@nerdpol.ch";
name = "CodeHero"; name = "CodeHero";
@ -862,6 +867,11 @@
github = "danharaj"; github = "danharaj";
name = "Dan Haraj"; name = "Dan Haraj";
}; };
danieldk = {
email = "me@danieldk.eu";
github = "danieldk";
name = "Daniël de Kok";
};
danielfullmer = { danielfullmer = {
email = "danielrf12@gmail.com"; email = "danielrf12@gmail.com";
github = "danielfullmer"; github = "danielfullmer";
@ -2732,6 +2742,11 @@
github = "neeasade"; github = "neeasade";
name = "Nathan Isom"; name = "Nathan Isom";
}; };
neonfuz = {
email = "neonfuz@gmail.com";
github = "neonfuz";
name = "Sage Raflik";
};
nequissimus = { nequissimus = {
email = "tim@nequissimus.com"; email = "tim@nequissimus.com";
github = "nequissimus"; github = "nequissimus";

View File

@ -362,6 +362,15 @@ inherit (pkgs.nixos {
The module <option>services.networking.hostapd</option> now uses WPA2 by default. The module <option>services.networking.hostapd</option> now uses WPA2 by default.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<varname>s6Dns</varname>, <varname>s6Networking</varname>,
<varname>s6LinuxUtils</varname> and <varname>s6PortableUtils</varname>
renamed to
<varname>s6-dns</varname>, <varname>s6-networking</varname>,
<varname>s6-linux-utils</varname> and <varname>s6-portable-utils</varname> respectively.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
</section> </section>

View File

@ -10,7 +10,7 @@ version=$(nix-instantiate --eval --strict '<nixpkgs>' -A lib.version | sed s/'"'
major=${version:0:5} major=${version:0:5}
echo "NixOS version is $version ($major)" echo "NixOS version is $version ($major)"
stateDir=/var/tmp/ec2-image-$version stateDir=/home/deploy/amis/ec2-image-$version
echo "keeping state in $stateDir" echo "keeping state in $stateDir"
mkdir -p $stateDir mkdir -p $stateDir
@ -161,6 +161,7 @@ for type in $types; do
# Create a snapshot. # Create a snapshot.
if [ -z "$snapId" ]; then if [ -z "$snapId" ]; then
echo "creating snapshot..." echo "creating snapshot..."
# FIXME: this can fail with InvalidVolume.NotFound. Eventual consistency yay.
snapId=$(aws ec2 create-snapshot --volume-id "$volId" --region "$region" --description "$description" | jq -r .SnapshotId) snapId=$(aws ec2 create-snapshot --volume-id "$volId" --region "$region" --description "$description" | jq -r .SnapshotId)
if [ "$snapId" = null ]; then exit 1; fi if [ "$snapId" = null ]; then exit 1; fi
echo -n "$snapId" > $stateDir/$region.$type.snap-id echo -n "$snapId" > $stateDir/$region.$type.snap-id

View File

@ -9,7 +9,9 @@ let
cfg = config.networking; cfg = config.networking;
dnsmasqResolve = config.services.dnsmasq.enable && dnsmasqResolve = config.services.dnsmasq.enable &&
config.services.dnsmasq.resolveLocalQueries; config.services.dnsmasq.resolveLocalQueries;
hasLocalResolver = config.services.bind.enable || dnsmasqResolve; hasLocalResolver = config.services.bind.enable ||
config.services.unbound.enable ||
dnsmasqResolve;
resolvconfOptions = cfg.resolvconfOptions resolvconfOptions = cfg.resolvconfOptions
++ optional cfg.dnsSingleRequest "single-request" ++ optional cfg.dnsSingleRequest "single-request"

View File

@ -240,22 +240,22 @@ let self = {
"17.09".sa-east-1.hvm-ebs = "ami-4762202b"; "17.09".sa-east-1.hvm-ebs = "ami-4762202b";
"17.09".ap-south-1.hvm-ebs = "ami-4e376021"; "17.09".ap-south-1.hvm-ebs = "ami-4e376021";
# 18.03.131792.becbe4dbe16 # 18.03.132946.1caae7247b8
"18.03".eu-west-1.hvm-ebs = "ami-cda4fab4"; "18.03".eu-west-1.hvm-ebs = "ami-065c46ec";
"18.03".eu-west-2.hvm-ebs = "ami-d96786be"; "18.03".eu-west-2.hvm-ebs = "ami-64f31903";
"18.03".eu-west-3.hvm-ebs = "ami-6b0cba16"; "18.03".eu-west-3.hvm-ebs = "ami-5a8d3d27";
"18.03".eu-central-1.hvm-ebs = "ami-5e2b75b5"; "18.03".eu-central-1.hvm-ebs = "ami-09faf9e2";
"18.03".us-east-1.hvm-ebs = "ami-d464cba9"; "18.03".us-east-1.hvm-ebs = "ami-8b3538f4";
"18.03".us-east-2.hvm-ebs = "ami-fd221298"; "18.03".us-east-2.hvm-ebs = "ami-150b3170";
"18.03".us-west-1.hvm-ebs = "ami-ff0d1d9f"; "18.03".us-west-1.hvm-ebs = "ami-ce06ebad";
"18.03".us-west-2.hvm-ebs = "ami-c05c3bb8"; "18.03".us-west-2.hvm-ebs = "ami-586c3520";
"18.03".ca-central-1.hvm-ebs = "ami-cc72f4a8"; "18.03".ca-central-1.hvm-ebs = "ami-aca72ac8";
"18.03".ap-southeast-1.hvm-ebs = "ami-b61633ca"; "18.03".ap-southeast-1.hvm-ebs = "ami-aa0b4d40";
"18.03".ap-southeast-2.hvm-ebs = "ami-530fc131"; "18.03".ap-southeast-2.hvm-ebs = "ami-d0f254b2";
"18.03".ap-northeast-1.hvm-ebs = "ami-90d6c0ec"; "18.03".ap-northeast-1.hvm-ebs = "ami-456511a8";
"18.03".ap-northeast-2.hvm-ebs = "ami-a1248bcf"; "18.03".ap-northeast-2.hvm-ebs = "ami-3366d15d";
"18.03".sa-east-1.hvm-ebs = "ami-b090c6dc"; "18.03".sa-east-1.hvm-ebs = "ami-163e1f7a";
"18.03".ap-south-1.hvm-ebs = "ami-32c9ec5d"; "18.03".ap-south-1.hvm-ebs = "ami-6a390b05";
latest = self."18.03"; latest = self."18.03";
}; in self }; in self

View File

@ -555,12 +555,12 @@ rec {
spotbugs = buildEclipseUpdateSite rec { spotbugs = buildEclipseUpdateSite rec {
name = "spotbugs-${version}"; name = "spotbugs-${version}";
version = "3.1.5"; version = "3.1.6";
src = fetchzip { src = fetchzip {
stripRoot = false; stripRoot = false;
url = "https://github.com/spotbugs/spotbugs/releases/download/${version}/eclipsePlugin.zip"; url = "https://github.com/spotbugs/spotbugs/releases/download/${version}/eclipsePlugin.zip";
sha256 = "0fxdirz6ik9rqykm2lcr720apsaqgngr4c7q793rjb9b3bn30c85"; sha256 = "1qsams12n64slp00nfc9v943sy9bzffzm7anqqaz2hjw64iia7fh";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,7 +1,7 @@
# TODO tidy up eg The patchelf code is patching gvim even if you don't build it.. # TODO tidy up eg The patchelf code is patching gvim even if you don't build it..
# but I have gvim with python support now :) - Marc # but I have gvim with python support now :) - Marc
args@{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, gettext args@{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, gettext
, composableDerivation, writeText, lib, config, glib, gtk2, gtk3, python, perl, tcl, ruby , writeText, lib, config, glib, gtk2, gtk3, python, perl, tcl, ruby
, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
, libICE , libICE
, vimPlugins , vimPlugins
@ -10,13 +10,27 @@ args@{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, ge
# apple frameworks # apple frameworks
, CoreServices, CoreData, Cocoa, Foundation, libobjc, cf-private , CoreServices, CoreData, Cocoa, Foundation, libobjc, cf-private
, wrapPythonDrv ? false , features ? "huge" # One of tiny, small, normal, big or huge
, wrapPythonDrv ? false
, guiSupport ? config.vim.gui or "auto"
, luaSupport ? config.vim.lua or true
, perlSupport ? config.vim.perl or false # Perl interpreter
, pythonSupport ? config.vim.python or true # Python interpreter
, rubySupport ? config.vim.ruby or true # Ruby interpreter
, nlsSupport ? config.vim.nls or false # Enable NLS (gettext())
, tclSupport ? config.vim.tcl or false # Include Tcl interpreter
, multibyteSupport ? config.vim.multibyte or false # Enable multibyte editing support
, cscopeSupport ? config.vim.cscope or true # Enable cscope interface
, netbeansSupport ? config.netbeans or true # Enable NetBeans integration support.
, ximSupport ? config.vim.xim or true # less than 15KB, needed for deadkeys
# By default, compile with darwin support if we're compiling on darwin, but
# allow this to be disabled by setting config.vim.darwin to false
, darwinSupport ? stdenv.isDarwin && (config.vim.darwin or true) # Enable Darwin support
, ftNixSupport ? config.vim.ftNix or true # Add .nix filetype detection and minimal syntax highlighting support
, ... }: with args; , ... }: with args;
let let
inherit (args.composableDerivation) composableDerivation edf;
nixosRuntimepath = writeText "nixos-vimrc" '' nixosRuntimepath = writeText "nixos-vimrc" ''
set nocompatible set nocompatible
syntax on syntax on
@ -48,148 +62,113 @@ let
''; '';
common = callPackage ./common.nix {}; common = callPackage ./common.nix {};
in
composableDerivation {
} (fix: rec {
name = "vim_configurable-${version}"; isPython3 = python.isPy3 or false;
inherit (common) version postPatch hardeningDisable enableParallelBuilding meta; in stdenv.mkDerivation rec {
src = builtins.getAttr source { name = "vim_configurable-${version}";
"default" = common.src; # latest release
"vim-nox" = inherit (common) version postPatch hardeningDisable enableParallelBuilding meta;
{
# vim nox branch: client-server without X by uing sockets
# REGION AUTO UPDATE: { name="vim-nox"; type="hg"; url="https://code.google.com/r/yukihironakadaira-vim-cmdsrv-nox/"; branch="cmdsrv-nox"; }
src = (fetchurl { url = "http://mawercer.de/~nix/repos/vim-nox-hg-2082fc3.tar.bz2"; sha256 = "293164ca1df752b7f975fd3b44766f5a1db752de6c7385753f083499651bd13a"; });
name = "vim-nox-hg-2082fc3";
# END
}.src;
};
patches = [ ./cflags-prune.diff ]; src = builtins.getAttr source {
"default" = common.src; # latest release
configureFlags "vim-nox" =
= [ "--enable-gui=${args.gui}" "--with-features=${args.features}" ]; {
# vim nox branch: client-server without X by uing sockets
nativeBuildInputs = [ pkgconfig ]; # REGION AUTO UPDATE: { name="vim-nox"; type="hg"; url="https://code.google.com/r/yukihironakadaira-vim-cmdsrv-nox/"; branch="cmdsrv-nox"; }
src = (fetchurl { url = "http://mawercer.de/~nix/repos/vim-nox-hg-2082fc3.tar.bz2"; sha256 = "293164ca1df752b7f975fd3b44766f5a1db752de6c7385753f083499651bd13a"; });
buildInputs name = "vim-nox-hg-2082fc3";
= [ ncurses libX11 libXext libSM libXpm libXt libXaw libXau # END
libXmu glib libICE ] ++ (if args.gui == "gtk3" then [gtk3] else [gtk2]); }.src;
# most interpreters aren't tested yet.. (see python for example how to do it)
flags = {
ftNix = {
patches = [ ./ft-nix-support.patch ];
preConfigure = ''
cp ${vimPlugins.vim-nix.src}/ftplugin/nix.vim runtime/ftplugin/nix.vim
cp ${vimPlugins.vim-nix.src}/indent/nix.vim runtime/indent/nix.vim
cp ${vimPlugins.vim-nix.src}/syntax/nix.vim runtime/syntax/nix.vim
'';
};
}
// edf {
name = "darwin";
enable = {
buildInputs = [ CoreServices CoreData Cocoa Foundation libobjc cf-private ];
NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
};
} #Disable Darwin (macOS) support.
// edf { name = "xsmp"; } #Disable XSMP session management
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
// edf { name = "mzscheme"; feat = "mzschemeinterp";} #Include MzScheme interpreter.
// edf { name = "perl"; feat = "perlinterp"; enable = { nativeBuildInputs = [perl]; };} #Include Perl interpreter.
// edf {
name = "python";
feat = "python${if python ? isPy3 then "3" else ""}interp";
enable = {
buildInputs = [ python ];
} // lib.optionalAttrs wrapPythonDrv {
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram "$out/bin/vim" --prefix PATH : "${python}/bin"
'';
} // lib.optionalAttrs stdenv.isDarwin {
configureFlags
= [ "--enable-python${if python ? isPy3 then "3" else ""}interp=yes"
"--with-python${if python ? isPy3 then "3" else ""}-config-dir=${python}/lib"
"--disable-python${if python ? isPy3 then "" else "3"}interp" ];
};
}
// edf { name = "tcl"; feat = "tclinterp"; enable = { buildInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildInputs = [ruby]; };} #Include Ruby interpreter.
// edf {
name = "lua";
feat = "luainterp";
enable = {
buildInputs = [lua];
configureFlags = [
"--with-lua-prefix=${args.lua}"
"--enable-luainterp"
];
};
}
// edf { name = "cscope"; } #Include cscope interface.
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
// edf { name = "netbeans"; } #Disable NetBeans integration support.
// edf { name = "sniff"; feat = "sniff" ; } #Include Sniff interface.
// edf { name = "multibyte"; } #Include multibyte editing support.
// edf { name = "hangulinput"; feat = "hangulinput" ;} #Include Hangul input support.
// edf { name = "xim"; } #Include XIM input support.
// edf { name = "fontset"; } #Include X fontset output support.
// edf { name = "acl"; } #Don't check for ACL support.
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
// edf { name = "nls"; enable = {nativeBuildInputs = [gettext];}; } #Don't support NLS (gettext()).
;
cfg = {
luaSupport = config.vim.lua or true;
pythonSupport = config.vim.python or true;
rubySupport = config.vim.ruby or true;
nlsSupport = config.vim.nls or false;
tclSupport = config.vim.tcl or false;
multibyteSupport = config.vim.multibyte or false;
cscopeSupport = config.vim.cscope or true;
netbeansSupport = config.netbeans or true; # eg envim is using it
ximSupport = config.vim.xim or true; # less than 15KB, needed for deadkeys
# by default, compile with darwin support if we're compiling on darwin, but
# allow this to be disabled by setting config.vim.darwin to false
darwinSupport = stdenv.isDarwin && (config.vim.darwin or true);
# add .nix filetype detection and minimal syntax highlighting support
ftNixSupport = config.vim.ftNix or true;
}; };
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gtk3/gnome/gnome2/motif/athena/neXtaw/photon/carbon patches = [ ./cflags-prune.diff ] ++ stdenv.lib.optional ftNixSupport ./ft-nix-support.patch;
/*
// edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes
// edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes
// edf "gnome_check" "gnome_check" { } #If GTK GUI, check for GNOME default=no
// edf "motif_check" "motif_check" { } #If auto-select GUI, check for Motif default=yes
// edf "athena_check" "athena_check" { } #If auto-select GUI, check for Athena default=yes
// edf "nextaw_check" "nextaw_check" { } #If auto-select GUI, check for neXtaw default=yes
// edf "carbon_check" "carbon_check" { } #If auto-select GUI, check for Carbon default=yes
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
*/
preInstall = '' configureFlags = [
mkdir -p $out/share/applications $out/share/icons/{hicolor,locolor}/{16x16,32x32,48x48}/apps "--enable-gui=${guiSupport}"
''; "--with-features=${features}"
"--disable-xsmp" # XSMP session management
"--disable-xsmp_interact" # XSMP interaction
"--disable-workshop" # Sun Visual Workshop support
"--disable-sniff" # Sniff interface
"--disable-hangulinput" # Hangul input support
"--disable-fontset" # X fontset output support
"--disable-acl" # ACL support
"--disable-gpm" # GPM (Linux mouse daemon)
"--disable-mzschemeinterp"
"--disable-gtk_check"
"--disable-gtk2_check"
"--disable-gnome_check"
"--disable-motif_check"
"--disable-athena_check"
"--disable-nextaf_check"
"--disable-carbon_check"
"--disable-gtktest"
]
++ stdenv.lib.optionals luaSupport [
"--with-lua-prefix=${args.lua}"
"--enable-luainterp"
]
++ stdenv.lib.optionals pythonSupport [
"--enable-python${if isPython3 then "3" else ""}"
]
++ stdenv.lib.optionals (pythonSupport && stdenv.isDarwin) [ # Why only for Darwin?
"--enable-python${if isPython3 then "3" else ""}interp=yes" # Duplicate?
"--with-python${if isPython3 then "3" else ""}-config-dir=${python}/lib"
"--disable-python${if isPython3 then "" else "3"}interp"
]
++ stdenv.lib.optional nlsSupport "--enable-nls"
++ stdenv.lib.optional perlSupport "--enable-perlinterp"
++ stdenv.lib.optional rubySupport "--enable-rubyinterp"
++ stdenv.lib.optional tclSupport "--enable-tclinterp"
++ stdenv.lib.optional multibyteSupport "--enable-multibyte"
++ stdenv.lib.optional cscopeSupport "--enable-cscope"
++ stdenv.lib.optional netbeansSupport "--enable-netbeans"
++ stdenv.lib.optional ximSupport "--enable-xim";
postInstall = stdenv.lib.optionalString stdenv.isLinux '' nativeBuildInputs = [
pkgconfig
]
++ stdenv.lib.optional wrapPythonDrv makeWrapper
++ stdenv.lib.optional nlsSupport gettext
++ stdenv.lib.optional perlSupport perl
;
buildInputs = [ ncurses libX11 libXext libSM libXpm libXt libXaw libXau
libXmu glib libICE ]
++ (if guiSupport == "gtk3" then [gtk3] else [gtk2])
++ stdenv.lib.optionals darwinSupport [ CoreServices CoreData Cocoa Foundation libobjc cf-private ]
++ stdenv.lib.optional luaSupport lua
++ stdenv.lib.optional pythonSupport python
++ stdenv.lib.optional tclSupport tcl
++ stdenv.lib.optional rubySupport ruby;
preConfigure = ''
'' + stdenv.lib.optionalString ftNixSupport ''
cp ${vimPlugins.vim-nix.src}/ftplugin/nix.vim runtime/ftplugin/nix.vim
cp ${vimPlugins.vim-nix.src}/indent/nix.vim runtime/indent/nix.vim
cp ${vimPlugins.vim-nix.src}/syntax/nix.vim runtime/syntax/nix.vim
'';
NIX_LDFLAGS = stdenv.lib.optionalString (darwinSupport && stdenv.isDarwin)
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
postInstall = ''
'' + stdenv.lib.optionalString stdenv.isLinux ''
patchelf --set-rpath \ patchelf --set-rpath \
"$(patchelf --print-rpath $out/bin/vim):${lib.makeLibraryPath buildInputs}" \ "$(patchelf --print-rpath $out/bin/vim):${lib.makeLibraryPath buildInputs}" \
"$out"/bin/{vim,gvim} "$out"/bin/{vim,gvim}
ln -sfn '${nixosRuntimepath}' "$out"/share/vim/vimrc ln -sfn '${nixosRuntimepath}' "$out"/share/vim/vimrc
'' + stdenv.lib.optionalString wrapPythonDrv ''
wrapProgram "$out/bin/vim" --prefix PATH : "${python}/bin"
'';
preInstall = ''
mkdir -p $out/share/applications $out/share/icons/{hicolor,locolor}/{16x16,32x32,48x48}/apps
''; '';
dontStrip = 1; dontStrip = 1;
}) }

View File

@ -1,110 +1,94 @@
args@{ fetchgit, stdenv, ncurses, pkgconfig, gettext args@{ fetchgit, stdenv, ncurses, pkgconfig, gettext
, composableDerivation, lib, config, python, perl, tcl, ruby, qt4 , lib, config, python, perl, tcl, ruby, qt4
, libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu
, libICE, ... }: with args; , libICE
, lua
, features
, luaSupport ? config.vim.lua or true
, perlSupport ? config.vim.perl or false # Perl interpreter
, pythonSupport ? config.vim.python or true
, rubySupport ? config.vim.ruby or true
, nlsSupport ? config.vim.nls or false
, tclSupport ? config.vim.tcl or false
, multibyteSupport ? config.vim.multibyte or false
, cscopeSupport ? config.vim.cscope or false
, netbeansSupport ? config.netbeans or true # eg envim is using it
# by default, compile with darwin support if we're compiling on darwin, but
# allow this to be disabled by setting config.vim.darwin to false
, darwinSupport ? stdenv.isDarwin && (config.vim.darwin or true)
# add .nix filetype detection and minimal syntax highlighting support
, ftNixSupport ? config.vim.ftNix or true
, ... }: with args;
let tag = "20140827"; let tag = "20140827";
sha256 = "0ncgbcm23z25naicxqkblz0mcl1zar2qwgi37y5ar8q8884w9ml2"; sha256 = "0ncgbcm23z25naicxqkblz0mcl1zar2qwgi37y5ar8q8884w9ml2";
in in {
let inherit (args.composableDerivation) composableDerivation edf; in name = "qvim-7.4." + tag;
composableDerivation {
} (fix: {
name = "qvim-7.4." + tag; enableParallelBuilding = true; # test this
enableParallelBuilding = true; # test this src = fetchgit {
url = https://bitbucket.org/equalsraf/vim-qt.git;
src = fetchgit { rev = "refs/tags/package-" + tag;
url = https://bitbucket.org/equalsraf/vim-qt.git ; inherit sha256;
rev = "refs/tags/package-" + tag;
inherit sha256;
};
# FIXME: adopt Darwin fixes from vim/default.nix, then chage meta.platforms.linux
# to meta.platforms.unix
preConfigure = assert (! stdenv.isDarwin); "";
configureFlags = [ "--with-vim-name=qvim" "--enable-gui=qt" "--with-features=${args.features}" ];
nativeBuildInputs
= [ ncurses pkgconfig libX11 libXext libSM libXpm libXt libXaw libXau
libXmu libICE qt4];
# most interpreters aren't tested yet.. (see python for example how to do it)
flags = {
ftNix = {
# because we cd to src in the main patch phase, we can't just add this
# patch to the list, we have to apply it manually
postPatch = ''
cd runtime
patch -p2 < ${./ft-nix-support.patch}
cd ..
'';
};
}
// edf { name = "darwin"; } #Disable Darwin (macOS) support.
// edf { name = "xsmp"; } #Disable XSMP session management
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
// edf { name = "perl"; feat = "perlinterp"; enable = { nativeBuildInputs = [perl]; };} #Include Perl interpreter.
// edf {
name = "python";
feat = "pythoninterp";
enable = {
nativeBuildInputs = [ python ];
} // lib.optionalAttrs stdenv.isDarwin {
configureFlags
= [ "--enable-pythoninterp=yes"
"--with-python-config-dir=${python}/lib" ];
};
}
// edf { name = "tcl"; enable = { nativeBuildInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { nativeBuildInputs = [ruby]; };} #Include Ruby interpreter.
// edf {
name = "lua";
feat = "luainterp";
enable = {
nativeBuildInputs = [lua];
configureFlags = [
"--with-lua-prefix=${args.lua}"
"--enable-luainterp"
];
};
}
// edf { name = "cscope"; } #Include cscope interface.
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
// edf { name = "netbeans"; } #Disable NetBeans integration support.
// edf { name = "sniff"; feat = "sniff" ; } #Include Sniff interface.
// edf { name = "multibyte"; } #Include multibyte editing support.
// edf { name = "hangulinput"; feat = "hangulinput" ;} #Include Hangul input support.
// edf { name = "xim"; } #Include XIM input support.
// edf { name = "fontset"; } #Include X fontset output support.
// edf { name = "acl"; } #Don't check for ACL support.
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
// edf { name = "nls"; enable = {nativeBuildInputs = [gettext];}; } #Don't support NLS (gettext()).
;
cfg = {
luaSupport = config.vim.lua or true;
pythonSupport = config.vim.python or true;
rubySupport = config.vim.ruby or true;
nlsSupport = config.vim.nls or false;
tclSupport = config.vim.tcl or false;
multibyteSupport = config.vim.multibyte or false;
cscopeSupport = config.vim.cscope or false;
netbeansSupport = config.netbeans or true; # eg envim is using it
# by default, compile with darwin support if we're compiling on darwin, but
# allow this to be disabled by setting config.vim.darwin to false
darwinSupport = stdenv.isDarwin && (config.vim.darwin or true);
# add .nix filetype detection and minimal syntax highlighting support
ftNixSupport = config.vim.ftNix or true;
}; };
# FIXME: adopt Darwin fixes from vim/default.nix, then chage meta.platforms.linux
# to meta.platforms.unix
preConfigure = assert (! stdenv.isDarwin); "";
configureFlags = [
"--with-vim-name=qvim"
"--enable-gui=qt"
"--with-features=${features}"
"--disable-xsmp"
"--disable-xsmp_interact"
"--disable-workshop" # Sun Visual Workshop support
"--disable-sniff" # Sniff interface
"--disable-hangulinput" # Hangul input support
"--disable-fontset" # X fontset output support
"--disable-acl" # ACL support
"--disable-gpm" # GPM (Linux mouse daemon)
"--disable-mzscheme"
]
++ stdenv.lib.optionals luaSupport [
"--with-lua-prefix=${lua}"
"--enable-luainterp"
]
++ stdenv.lib.optional pythonSupport "--enable-pythoninterp"
++ stdenv.lib.optional (pythonSupport && stdenv.isDarwin) "--with-python-config-dir=${python}/lib"
++ stdenv.lib.optional nlsSupport "--enable-nls"
++ stdenv.lib.optional perlSupport "--enable-perlinterp"
++ stdenv.lib.optional rubySupport "--enable-rubyinterp"
++ stdenv.lib.optional tclSupport "--enable-tcl"
++ stdenv.lib.optional multibyteSupport "--enable-multibyte"
++ stdenv.lib.optional darwinSupport "--enable-darwin"
++ stdenv.lib.optional cscopeSupport "--enable-cscope";
nativeBuildInputs = [ ncurses pkgconfig libX11 libXext libSM libXpm libXt libXaw
libXau libXmu libICE qt4
]
++ stdenv.lib.optional nlsSupport gettext
++ stdenv.lib.optional perlSupport perl
++ stdenv.lib.optional pythonSupport python
++ stdenv.lib.optional tclSupport tcl
++ stdenv.lib.optional rubySupport ruby
++ stdenv.lib.optional luaSupport lua
;
postPatch = ''
'' + stdenv.lib.optionalString ftNixSupport ''
# because we cd to src in the main patch phase, we can't just add this
# patch to the list, we have to apply it manually
cd runtime
patch -p2 < ${./ft-nix-support.patch}
cd ..
'';
postInstall = stdenv.lib.optionalString stdenv.isLinux '' postInstall = stdenv.lib.optionalString stdenv.isLinux ''
rpath=`patchelf --print-rpath $out/bin/qvim`; rpath=`patchelf --print-rpath $out/bin/qvim`;
for i in $nativeBuildInputs; do for i in $nativeBuildInputs; do
@ -125,5 +109,5 @@ composableDerivation {
maintainers = with maintainers; [ smironov ttuegel ]; maintainers = with maintainers; [ smironov ttuegel ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
}) }

View File

@ -1,9 +1,9 @@
{ stdenv, fetchFromGitHub, pythonPackages }: { stdenv, fetchFromGitHub, python3Packages }:
with pythonPackages; with python3Packages;
buildPythonApplication rec { buildPythonApplication rec {
version = "1.23.0"; version = "1.23.0";
name = "rtv-${version}"; pname = "rtv";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "michael-lazar"; owner = "michael-lazar";
@ -19,7 +19,7 @@ buildPythonApplication rec {
py.test py.test
''; '';
buildInputs = [ checkInputs = [
coverage coverage
coveralls coveralls
docopt docopt
@ -30,18 +30,11 @@ buildPythonApplication rec {
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [
backports_functools_lru_cache
beautifulsoup4 beautifulsoup4
configparser
contextlib2
decorator decorator
kitchen kitchen
mailcap-fix
mccabe
requests requests
six six
tornado
pyyaml
]; ];
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, lib, ... }:
stdenv.mkDerivation rec {
name = "kubetail-${version}";
version = "1.6.1";
src = fetchFromGitHub {
owner = "johanhaleby";
repo = "kubetail";
rev = "${version}";
sha256 = "10ql1kdsmyrk73jb6f5saf2q38znm0vdihscj3c9n0qhyhk9blpl";
};
installPhase = ''
install -Dm755 kubetail $out/bin/kubetail
'';
meta = with lib; {
description = "Bash script to tail Kubernetes logs from multiple pods at the same time";
longDescription = ''
Bash script that enables you to aggregate (tail/follow) logs from
multiple pods into one stream. This is the same as running "kubectl logs
-f " but for multiple pods.
'';
homepage = https://github.com/johanhaleby/kubetail;
license = licenses.asl20;
maintainers = with maintainers; [ kalbasit ];
platforms = platforms.all;
};
}

View File

@ -77,6 +77,6 @@ let unwrapped = stdenv.mkDerivation rec {
in if plugins == [] then unwrapped in if plugins == [] then unwrapped
else import ./wrapper.nix { else import ./wrapper.nix {
inherit stdenv makeWrapper symlinkJoin plugins; inherit makeWrapper symlinkJoin plugins;
pidgin = unwrapped; pidgin = unwrapped;
} }

View File

@ -1,18 +1,10 @@
{ stdenv, fetchPypi, buildPythonApplication, makeDesktopItem { stdenv, python3, makeDesktopItem }:
# mandatory
, numpydoc, qtconsole, qtawesome, jedi, pycodestyle, psutil
, pyflakes, rope, nbconvert, mccabe, pyopengl, cloudpickle
# optional
, numpy ? null, scipy ? null, matplotlib ? null
# optional
, pylint ? null
}:
buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "spyder"; pname = "spyder";
version = "3.2.8"; version = "3.2.8";
src = fetchPypi { src = python3.pkgs.fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0iwcby2bxvayz0kp282yh864br55w6gpd8rqcdj1cp3jbn3q6vg5"; sha256 = "0iwcby2bxvayz0kp282yh864br55w6gpd8rqcdj1cp3jbn3q6vg5";
}; };
@ -22,7 +14,7 @@ buildPythonApplication rec {
sed -i -e '/pyqt5/d' setup.py sed -i -e '/pyqt5/d' setup.py
''; '';
propagatedBuildInputs = [ propagatedBuildInputs = with python3.pkgs; [
jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint
numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle
]; ];

View File

@ -74,21 +74,21 @@ assert drmSupport -> available libdrm;
let let
# Purity: Waf is normally downloaded by bootstrap.py, but # Purity: Waf is normally downloaded by bootstrap.py, but
# for purity reasons this behavior should be avoided. # for purity reasons this behavior should be avoided.
wafVersion = "1.9.15"; wafVersion = "2.0.9";
waf = fetchurl { waf = fetchurl {
urls = [ "https://waf.io/waf-${wafVersion}" urls = [ "https://waf.io/waf-${wafVersion}"
"http://www.freehackers.org/~tnagy/release/waf-${wafVersion}" ]; "http://www.freehackers.org/~tnagy/release/waf-${wafVersion}" ];
sha256 = "0qrnlv91cb0v221w8a0fi4wxm99q2hpz10rkyyk4akcsvww6xrw5"; sha256 = "0j7sbn3w6bgslvwwh5v9527w3gi2sd08kskrgxamx693y0b0i3ia";
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "mpv-${version}"; name = "mpv-${version}";
version = "0.28.2"; version = "0.29.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mpv-player"; owner = "mpv-player";
repo = "mpv"; repo = "mpv";
rev = "v${version}"; rev = "v${version}";
sha256 = "0bldxhqjz7z9fgvx4k40l49awpay17fscp8ypswb459yicy8npmg"; sha256 = "0i2nl65diqsjyz28dj07h6d8gq6ix72ysfm0nhs8514hqccaihs3";
}; };
postPatch = '' postPatch = ''

View File

@ -185,6 +185,8 @@ stdenv.mkDerivation {
"mips64" = "btsmip"; "mips64" = "btsmip";
"mips64el" = "ltsmip"; "mips64el" = "ltsmip";
}.${targetPlatform.parsed.cpu.name} }.${targetPlatform.parsed.cpu.name}
else if targetPlatform.isPowerPC then "powerpc"
else if targetPlatform.isSparc then "sparc"
else throw "unknown emulation for platform: " + targetPlatform.config; else throw "unknown emulation for platform: " + targetPlatform.config;
in targetPlatform.platform.bfdEmulation or (fmt + sep + arch); in targetPlatform.platform.bfdEmulation or (fmt + sep + arch);

View File

@ -16,10 +16,11 @@ infoFile: let
script = writeText "build-maven-repository.sh" '' script = writeText "build-maven-repository.sh" ''
${lib.concatStrings (map (dep: let ${lib.concatStrings (map (dep: let
inherit (dep) inherit (dep)
url sha1 groupId artifactId version url sha1 groupId artifactId
authenticated metadata repository-id; version metadata repository-id;
versionDir = dep.unresolved-version or version; versionDir = dep.unresolved-version or version;
authenticated = dep.authenticated or false;
fetch = (if authenticated then requireFile else fetchurl) { fetch = (if authenticated then requireFile else fetchurl) {
inherit url sha1; inherit url sha1;

View File

@ -0,0 +1 @@
postFixupHooks+=

View File

@ -1,5 +1,4 @@
{ stdenv, fetchurl, pkgconfig, dbus-glib, glib, ORBit2, libxml2 { stdenv, fetchurl, pkgconfig, dbus-glib, glib, ORBit2, libxml2, polkit, python2, intltool }:
, polkit, intltool }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gconf-${version}"; name = "gconf-${version}";
@ -12,7 +11,7 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "man" ]; outputs = [ "out" "dev" "man" ];
buildInputs = [ ORBit2 libxml2 ] buildInputs = [ ORBit2 libxml2 python2 ]
# polkit requires pam, which requires shadow.h, which is not available on # polkit requires pam, which requires shadow.h, which is not available on
# darwin # darwin
++ stdenv.lib.optional (!stdenv.isDarwin) polkit; ++ stdenv.lib.optional (!stdenv.isDarwin) polkit;

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "closure-compiler-${version}"; name = "closure-compiler-${version}";
version = "20180610"; version = "20180716";
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/closure-compiler/compiler-${version}.tar.gz"; url = "https://dl.google.com/closure-compiler/compiler-${version}.tar.gz";
sha256 = "1qg9a1whmrkrifqrsb9m541cgr3rf1nnkqlv4q7rq30m8bdilvk5"; sha256 = "06yc85pbcw1v36j12qwxkk0pbhziglp3zjkv3xza2v68zvyqy6hd";
}; };
sourceRoot = "."; sourceRoot = ".";

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation ( rec { stdenv.mkDerivation ( rec {
name = "ponyc-${version}"; name = "ponyc-${version}";
version = "0.24.0"; version = "0.24.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ponylang"; owner = "ponylang";
repo = "ponyc"; repo = "ponyc";
rev = version; rev = version;
sha256 = "1yq82jj0c9nxrx4vxcb3s6yr154kaj2a3wrk12m6fm3dscsqsqq1"; sha256 = "0g32bccbbwad9894zv2wjimbp8bpcj4ldddfdm4p2n8vcw6vi5y3";
}; };
buildInputs = [ llvm makeWrapper which ]; buildInputs = [ llvm makeWrapper which ];

View File

@ -152,6 +152,10 @@ go.stdenv.mkDerivation (
fi fi
} }
if (( "''${NIX_DEBUG:-0}" >= 1 )); then
buildFlagsArray+=(-x)
fi
if [ ''${#buildFlagsArray[@]} -ne 0 ]; then if [ ''${#buildFlagsArray[@]} -ne 0 ]; then
declare -p buildFlagsArray > $TMPDIR/buildFlagsArray declare -p buildFlagsArray > $TMPDIR/buildFlagsArray
else else

View File

@ -737,9 +737,6 @@ self: super: {
# https://github.com/bos/math-functions/issues/25 # https://github.com/bos/math-functions/issues/25
math-functions = dontCheck super.math-functions; math-functions = dontCheck super.math-functions;
# broken test suite
servant-server = dontCheck super.servant-server;
# build servant docs from the repository # build servant docs from the repository
servant = servant =
let let
@ -764,9 +761,6 @@ self: super: {
''; '';
}); });
# Glob == 0.7.x
servant-auth = doJailbreak super.servant-auth;
# https://github.com/pontarius/pontarius-xmpp/issues/105 # https://github.com/pontarius/pontarius-xmpp/issues/105
pontarius-xmpp = dontCheck super.pontarius-xmpp; pontarius-xmpp = dontCheck super.pontarius-xmpp;
@ -835,9 +829,6 @@ self: super: {
# https://github.com/fizruk/http-api-data/issues/49 # https://github.com/fizruk/http-api-data/issues/49
http-api-data = dontCheck super.http-api-data; http-api-data = dontCheck super.http-api-data;
# https://github.com/snoyberg/yaml/issues/106
yaml = disableCabalFlag super.yaml "system-libyaml";
# https://github.com/diagrams/diagrams-lib/issues/288 # https://github.com/diagrams/diagrams-lib/issues/288
diagrams-lib = overrideCabal super.diagrams-lib (drv: { doCheck = !pkgs.stdenv.isi686; }); diagrams-lib = overrideCabal super.diagrams-lib (drv: { doCheck = !pkgs.stdenv.isi686; });
@ -1079,6 +1070,9 @@ self: super: {
# Test suite depends on cabal-install # Test suite depends on cabal-install
doctest = dontCheck super.doctest; doctest = dontCheck super.doctest;
# https://github.com/haskell-servant/servant-auth/issues/113
servant-auth-client = dontCheck super.servant-auth-client;
# Over-specified constraint on X11 ==1.8.*. # Over-specified constraint on X11 ==1.8.*.
xmonad = doJailbreak super.xmonad; xmonad = doJailbreak super.xmonad;

View File

@ -43,7 +43,7 @@ core-packages:
default-package-overrides: default-package-overrides:
# Newer versions require contravariant-1.5.*, which many builds refuse at the moment. # Newer versions require contravariant-1.5.*, which many builds refuse at the moment.
- base-compat-batteries ==0.10.1 - base-compat-batteries ==0.10.1
# LTS Haskell 12.1 # LTS Haskell 12.2
- abstract-deque ==0.3 - abstract-deque ==0.3
- abstract-deque-tests ==0.3 - abstract-deque-tests ==0.3
- abstract-par ==0.3.3 - abstract-par ==0.3.3
@ -68,10 +68,10 @@ default-package-overrides:
- aeson-picker ==0.1.0.4 - aeson-picker ==0.1.0.4
- aeson-pretty ==0.8.7 - aeson-pretty ==0.8.7
- aeson-qq ==0.8.2 - aeson-qq ==0.8.2
- aeson-typescript ==0.1.0.6 - aeson-typescript ==0.1.1.0
- aeson-utils ==0.3.0.2 - aeson-utils ==0.3.0.2
- aeson-yak ==0.1.1.3 - aeson-yak ==0.1.1.3
- Agda ==2.5.4 - Agda ==2.5.4.1
- al ==0.1.4.2 - al ==0.1.4.2
- alarmclock ==0.5.0.2 - alarmclock ==0.5.0.2
- alerts ==0.1.0.0 - alerts ==0.1.0.0
@ -536,8 +536,8 @@ default-package-overrides:
- data-inttrie ==0.1.4 - data-inttrie ==0.1.4
- data-lens-light ==0.1.2.2 - data-lens-light ==0.1.2.2
- data-memocombinators ==0.5.1 - data-memocombinators ==0.5.1
- data-msgpack ==0.0.11 - data-msgpack ==0.0.12
- data-msgpack-types ==0.0.1 - data-msgpack-types ==0.0.2
- data-or ==1.0.0.5 - data-or ==1.0.0.5
- data-ordlist ==0.4.7.0 - data-ordlist ==0.4.7.0
- data-ref ==0.0.1.1 - data-ref ==0.0.1.1
@ -666,7 +666,7 @@ default-package-overrides:
- equivalence ==0.3.2 - equivalence ==0.3.2
- erf ==2.0.0.0 - erf ==2.0.0.0
- errors ==2.3.0 - errors ==2.3.0
- errors-ext ==0.4.1 - errors-ext ==0.4.2
- error-util ==0.0.1.2 - error-util ==0.0.1.2
- ersatz ==0.4.3 - ersatz ==0.4.3
- etc ==0.4.0.3 - etc ==0.4.0.3
@ -1010,12 +1010,12 @@ default-package-overrides:
- HsOpenSSL ==0.11.4.14 - HsOpenSSL ==0.11.4.14
- HsOpenSSL-x509-system ==0.1.0.3 - HsOpenSSL-x509-system ==0.1.0.3
- hsp ==0.10.0 - hsp ==0.10.0
- hspec ==2.5.4 - hspec ==2.5.5
- hspec-attoparsec ==0.1.0.2 - hspec-attoparsec ==0.1.0.2
- hspec-checkers ==0.1.0.2 - hspec-checkers ==0.1.0.2
- hspec-contrib ==0.5.0 - hspec-contrib ==0.5.0
- hspec-core ==2.5.4 - hspec-core ==2.5.5
- hspec-discover ==2.5.4 - hspec-discover ==2.5.5
- hspec-expectations ==0.8.2 - hspec-expectations ==0.8.2
- hspec-expectations-lifted ==0.10.0 - hspec-expectations-lifted ==0.10.0
- hspec-expectations-pretty-diff ==0.7.2.4 - hspec-expectations-pretty-diff ==0.7.2.4
@ -1067,7 +1067,7 @@ default-package-overrides:
- hweblib ==0.6.3 - hweblib ==0.6.3
- hw-excess ==0.2.0.2 - hw-excess ==0.2.0.2
- hw-fingertree-strict ==0.1.1.1 - hw-fingertree-strict ==0.1.1.1
- hw-hedgehog ==0.1.0.1 - hw-hedgehog ==0.1.0.2
- hw-hspec-hedgehog ==0.1.0.5 - hw-hspec-hedgehog ==0.1.0.5
- hw-int ==0.0.0.3 - hw-int ==0.0.0.3
- hw-ip ==0.1.0.0 - hw-ip ==0.1.0.0
@ -1099,7 +1099,7 @@ default-package-overrides:
- ieee754 ==0.8.0 - ieee754 ==0.8.0
- if ==0.1.0.0 - if ==0.1.0.0
- iff ==0.0.6 - iff ==0.0.6
- ihaskell ==0.9.0.3 - ihaskell ==0.9.1.0
- ihs ==0.1.0.2 - ihs ==0.1.0.2
- ilist ==0.3.1.0 - ilist ==0.3.1.0
- imagesize-conduit ==1.1 - imagesize-conduit ==1.1
@ -1142,7 +1142,7 @@ default-package-overrides:
- ip6addr ==1.0.0 - ip6addr ==1.0.0
- iproute ==1.7.5 - iproute ==1.7.5
- IPv6Addr ==1.1.0 - IPv6Addr ==1.1.0
- ipython-kernel ==0.9.0.2 - ipython-kernel ==0.9.1.0
- irc ==0.6.1.0 - irc ==0.6.1.0
- irc-client ==1.1.0.4 - irc-client ==1.1.0.4
- irc-conduit ==0.3.0.1 - irc-conduit ==0.3.0.1
@ -1444,7 +1444,7 @@ default-package-overrides:
- NoHoed ==0.1.1 - NoHoed ==0.1.1
- nonce ==1.0.7 - nonce ==1.0.7
- nondeterminism ==1.4 - nondeterminism ==1.4
- non-empty ==0.3 - non-empty ==0.3.0.1
- non-empty-sequence ==0.2.0.2 - non-empty-sequence ==0.2.0.2
- non-negative ==0.1.2 - non-negative ==0.1.2
- nsis ==0.3.2 - nsis ==0.3.2
@ -1712,8 +1712,8 @@ default-package-overrides:
- regex-tdfa ==1.2.3.1 - regex-tdfa ==1.2.3.1
- regex-tdfa-text ==1.0.0.3 - regex-tdfa-text ==1.0.0.3
- reinterpret-cast ==0.1.0 - reinterpret-cast ==0.1.0
- relational-query ==0.12.0.1 - relational-query ==0.12.1.0
- relational-query-HDBC ==0.7.0.1 - relational-query-HDBC ==0.7.1.1
- relational-record ==0.2.2.0 - relational-record ==0.2.2.0
- relational-schemas ==0.1.6.2 - relational-schemas ==0.1.6.2
- renderable ==0.2.0.1 - renderable ==0.2.0.1
@ -1741,7 +1741,7 @@ default-package-overrides:
- roles ==0.2.0.0 - roles ==0.2.0.0
- rot13 ==0.2.0.1 - rot13 ==0.2.0.1
- RSA ==2.3.0 - RSA ==2.3.0
- rss-conduit ==0.4.2.1 - rss-conduit ==0.4.2.2
- runmemo ==1.0.0.1 - runmemo ==1.0.0.1
- rvar ==0.2.0.3 - rvar ==0.2.0.3
- s3-signer ==0.5.0.0 - s3-signer ==0.5.0.0
@ -1824,7 +1824,7 @@ default-package-overrides:
- servant-tracing ==0.1.0.2 - servant-tracing ==0.1.0.2
- servant-websockets ==1.1.0 - servant-websockets ==1.1.0
- servant-yaml ==0.1.0.0 - servant-yaml ==0.1.0.0
- serverless-haskell ==0.6.2 - serverless-haskell ==0.6.3
- serversession ==1.0.1 - serversession ==1.0.1
- serversession-frontend-wai ==1.0 - serversession-frontend-wai ==1.0
- servius ==1.2.1.0 - servius ==1.2.1.0
@ -1851,7 +1851,7 @@ default-package-overrides:
- simple-reflect ==0.3.3 - simple-reflect ==0.3.3
- simple-sendfile ==0.2.27 - simple-sendfile ==0.2.27
- simplest-sqlite ==0.1.0.0 - simplest-sqlite ==0.1.0.0
- simple-vec3 ==0.4.0.7 - simple-vec3 ==0.4.0.8
- since ==0.0.0 - since ==0.0.0
- singleton-bool ==0.1.4 - singleton-bool ==0.1.4
- singleton-nats ==0.4.1 - singleton-nats ==0.4.1
@ -1950,7 +1950,7 @@ default-package-overrides:
- strive ==5.0.6 - strive ==5.0.6
- structs ==0.1.1 - structs ==0.1.1
- stylish-haskell ==0.9.2.0 - stylish-haskell ==0.9.2.0
- summoner ==1.0.4 - summoner ==1.0.5
- sum-type-boilerplate ==0.1.1 - sum-type-boilerplate ==0.1.1
- sundown ==0.6 - sundown ==0.6
- superbuffer ==0.3.1.1 - superbuffer ==0.3.1.1
@ -2304,9 +2304,9 @@ default-package-overrides:
- xss-sanitize ==0.3.6 - xss-sanitize ==0.3.6
- xxhash-ffi ==0.2.0.0 - xxhash-ffi ==0.2.0.0
- yaml ==0.8.32 - yaml ==0.8.32
- yeshql ==4.1.0.0 - yeshql ==4.1.0.1
- yeshql-core ==4.1.0.0 - yeshql-core ==4.1.0.1
- yeshql-hdbc ==4.1.0.0 - yeshql-hdbc ==4.1.0.1
- yesod ==1.6.0 - yesod ==1.6.0
- yesod-alerts ==0.1.2.0 - yesod-alerts ==0.1.2.0
- yesod-auth ==1.6.4.1 - yesod-auth ==1.6.4.1

View File

@ -309,6 +309,9 @@ self: super: builtins.intersectAttrs super {
# https://github.com/bos/pcap/issues/5 # https://github.com/bos/pcap/issues/5
pcap = addExtraLibrary super.pcap pkgs.libpcap; pcap = addExtraLibrary super.pcap pkgs.libpcap;
# https://github.com/snoyberg/yaml/issues/106
yaml = disableCabalFlag super.yaml "system-libyaml";
# The cabal files for these libraries do not list the required system dependencies. # The cabal files for these libraries do not list the required system dependencies.
miniball = overrideCabal super.miniball (drv: { miniball = overrideCabal super.miniball (drv: {
librarySystemDepends = [ pkgs.miniball ]; librarySystemDepends = [ pkgs.miniball ];

File diff suppressed because it is too large Load Diff

View File

@ -1,21 +1,63 @@
# pcre functionality is tested in nixos/tests/php-pcre.nix # pcre functionality is tested in nixos/tests/php-pcre.nix
{ lib, stdenv, fetchurl, flex, bison
{ lib, stdenv, fetchurl, composableDerivation, flex, bison , mysql, libxml2, readline, zlib, curl, postgresql, gettext
, mysql, libxml2, readline, zlib, curl, postgresql, gettext, html-tidy
, openssl, pcre, pkgconfig, sqlite, config, libjpeg, libpng, freetype , openssl, pcre, pkgconfig, sqlite, config, libjpeg, libpng, freetype
, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds , libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, freetds
, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium }: , uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy
}:
with lib;
let let
php7 = versionAtLeast version "7.0";
generic = generic =
{ version, sha256 }: { version
, sha256
, imapSupport ? config.php.imap or (!stdenv.isDarwin)
, ldapSupport ? config.php.ldap or true
, mhashSupport ? config.php.mhash or true
, mysqlSupport ? (config.php.mysql or true) && (!php7)
, mysqlndSupport ? config.php.mysqlnd or false
, mysqliSupport ? config.php.mysqli or true
, pdo_mysqlSupport ? config.php.pdo_mysql or true
, libxml2Support ? config.php.libxml2 or true
, apxs2Support ? config.php.apxs2 or (!stdenv.isDarwin)
, embedSupport ? config.php.embed or false
, bcmathSupport ? config.php.bcmath or true
, socketsSupport ? config.php.sockets or true
, curlSupport ? config.php.curl or true
, curlWrappersSupport ? (config.php.curlWrappers or true) && (!php7)
, gettextSupport ? config.php.gettext or true
, pcntlSupport ? config.php.pcntl or true
, postgresqlSupport ? config.php.postgresql or true
, pdo_pgsqlSupport ? config.php.pdo_pgsql or true
, readlineSupport ? config.php.readline or true
, sqliteSupport ? config.php.sqlite or true
, soapSupport ? config.php.soap or true
, zlibSupport ? config.php.zlib or true
, opensslSupport ? config.php.openssl or true
, mbstringSupport ? config.php.mbstring or true
, gdSupport ? config.php.gd or true
, intlSupport ? config.php.intl or true
, exifSupport ? config.php.exif or true
, xslSupport ? config.php.xsl or false
, mcryptSupport ? config.php.mcrypt or true
, bz2Support ? config.php.bz2 or false
, zipSupport ? config.php.zip or true
, ftpSupport ? config.php.ftp or true
, fpmSupport ? config.php.fpm or true
, gmpSupport ? config.php.gmp or true
, mssqlSupport ? (config.php.mssql or (!stdenv.isDarwin)) && (!php7)
, ztsSupport ? config.php.zts or false
, calendarSupport ? config.php.calendar or true
, sodiumSupport ? (config.php.sodium or true) && (versionAtLeast version "7.2")
, tidySupport ? false
}:
let php7 = lib.versionAtLeast version "7.0"; let
mysqlndSupport = config.php.mysqlnd or false; mysqlBuildInputs = optional (!mysqlndSupport) mysql.connector-c;
mysqlBuildInputs = lib.optional (!mysqlndSupport) mysql.connector-c; libmcrypt' = libmcrypt.override { disablePosixThreads = true; };
in stdenv.mkDerivation {
in composableDerivation.composableDerivation {} (fixed: {
inherit version; inherit version;
@ -25,258 +67,99 @@ let
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ flex bison pcre ] buildInputs = [ flex bison pcre ]
++ lib.optional stdenv.isLinux systemd; ++ optional stdenv.isLinux systemd
++ optionals imapSupport [ uwimap openssl pam ]
++ optionals curlSupport [ curl openssl ]
++ optionals ldapSupport [ openldap openssl ]
++ optionals gdSupport [ libpng libjpeg freetype ]
++ optionals opensslSupport [ openssl openssl.dev ]
++ optional apxs2Support apacheHttpd
++ optional (ldapSupport && stdenv.isLinux) cyrus_sasl
++ optional mhashSupport libmhash
++ optional zlibSupport zlib
++ optional libxml2Support libxml2
++ optional readlineSupport readline
++ optional sqliteSupport sqlite
++ optional postgresqlSupport postgresql
++ optional pdo_pgsqlSupport postgresql
++ optional pdo_mysqlSupport mysqlBuildInputs
++ optional mysqlSupport mysqlBuildInputs
++ optional mysqliSupport mysqlBuildInputs
++ optional gmpSupport gmp
++ optional gettextSupport gettext
++ optional intlSupport icu
++ optional xslSupport libxslt
++ optional mcryptSupport libmcrypt'
++ optional bz2Support bzip2
++ optional (mssqlSupport && !stdenv.isDarwin) freetds
++ optional sodiumSupport libsodium
++ optional tidySupport html-tidy;
CXXFLAGS = lib.optional stdenv.cc.isClang "-std=c++11"; CXXFLAGS = optional stdenv.cc.isClang "-std=c++11";
flags = {
# much left to do here... configureFlags = [
"--with-config-file-scan-dir=/etc/php.d"
"--with-pcre-regex=${pcre.dev} PCRE_LIBDIR=${pcre}"
]
++ optional stdenv.isDarwin "--with-iconv=${libiconv}"
++ optional stdenv.isLinux "--with-fpm-systemd"
++ optionals imapSupport [
"--with-imap=${uwimap}"
"--with-imap-ssl"
]
++ optionals ldapSupport [
"--with-ldap=/invalid/path"
"LDAP_DIR=${openldap.dev}"
"LDAP_INCDIR=${openldap.dev}/include"
"LDAP_LIBDIR=${openldap.out}/lib"
]
++ optional (ldapSupport && stdenv.isLinux) "--with-ldap-sasl=${cyrus_sasl.dev}"
++ optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
++ optional embedSupport "--enable-embed"
++ optional mhashSupport "--with-mhash"
++ optional curlSupport "--with-curl=${curl.dev}"
++ optional curlWrappersSupport "--with-curlwrappers"
++ optional zlibSupport "--with-zlib=${zlib.dev}"
++ optional libxml2Support "--with-libxml-dir=${libxml2.dev}"
++ optional pcntlSupport "--enable-pcntl"
++ optional readlineSupport "--with-readline=${readline.dev}"
++ optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
++ optional postgresqlSupport "--with-pgsql=${postgresql}"
++ optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
++ optional pdo_mysqlSupport "--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else mysql.connector-c}"
++ optional mysqlSupport "--with-mysql${if mysqlndSupport then "=mysqlnd" else ""}"
++ optionals mysqliSupport [
"--with-mysqli=${if mysqlndSupport then "mysqlnd" else "${mysql.connector-c}/bin/mysql_config"}"
]
++ optional bcmathSupport "--enable-bcmath"
# FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
++ optionals gdSupport [
"--with-gd"
"--with-freetype-dir=${freetype.dev}"
"--with-png-dir=${libpng.dev}"
"--with-jpeg-dir=${libjpeg.dev}"
]
++ optional gmpSupport "--with-gmp=${gmp.dev}"
++ optional soapSupport "--enable-soap"
++ optional socketsSupport "--enable-sockets"
++ optional opensslSupport "--with-openssl"
++ optional mbstringSupport "--enable-mbstring"
++ optional gettextSupport "--with-gettext=${gettext}"
++ optional intlSupport "--enable-intl"
++ optional exifSupport "--enable-exif"
++ optional xslSupport "--with-xsl=${libxslt.dev}"
++ optional mcryptSupport "--with-mcrypt=${libmcrypt'}"
++ optional bz2Support "--with-bz2=${bzip2.dev}"
++ optional zipSupport "--enable-zip"
++ optional ftpSupport "--enable-ftp"
++ optional fpmSupport "--enable-fpm"
++ optional (mssqlSupport && !stdenv.isDarwin) "--with-mssql=${freetds}"
++ optional ztsSupport "--enable-maintainer-zts"
++ optional calendarSupport "--enable-calendar"
++ optional sodiumSupport "--with-sodium=${libsodium.dev}"
++ optional tidySupport "--with-tidy=${html-tidy}";
# SAPI modules:
apxs2 = {
configureFlags = ["--with-apxs2=${apacheHttpd.dev}/bin/apxs"];
buildInputs = [apacheHttpd];
};
embed = {
configureFlags = ["--enable-embed"];
};
# Extensions
imap = {
configureFlags = [
"--with-imap=${uwimap}"
"--with-imap-ssl"
];
buildInputs = [ uwimap openssl pam ];
};
ldap = {
configureFlags = [
"--with-ldap=/invalid/path"
"LDAP_DIR=${openldap.dev}"
"LDAP_INCDIR=${openldap.dev}/include"
"LDAP_LIBDIR=${openldap.out}/lib"
(lib.optional stdenv.isLinux "--with-ldap-sasl=${cyrus_sasl.dev}")
];
buildInputs = [openldap openssl] ++ lib.optional stdenv.isLinux cyrus_sasl;
};
mhash = {
configureFlags = ["--with-mhash"];
buildInputs = [libmhash];
};
curl = {
configureFlags = ["--with-curl=${curl.dev}"];
buildInputs = [curl openssl];
};
curlWrappers = {
configureFlags = ["--with-curlwrappers"];
};
zlib = {
configureFlags = ["--with-zlib=${zlib.dev}"];
buildInputs = [zlib];
};
libxml2 = {
configureFlags = [
"--with-libxml-dir=${libxml2.dev}"
];
buildInputs = [ libxml2 ];
};
pcntl = {
configureFlags = [ "--enable-pcntl" ];
};
readline = {
configureFlags = ["--with-readline=${readline.dev}"];
buildInputs = [ readline ];
};
sqlite = {
configureFlags = ["--with-pdo-sqlite=${sqlite.dev}"];
buildInputs = [ sqlite ];
};
postgresql = {
configureFlags = ["--with-pgsql=${postgresql}"];
buildInputs = [ postgresql ];
};
pdo_pgsql = {
configureFlags = ["--with-pdo-pgsql=${postgresql}"];
buildInputs = [ postgresql ];
};
mysql = {
configureFlags = ["--with-mysql${if mysqlndSupport then "=mysqlnd" else ""}"];
buildInputs = mysqlBuildInputs;
};
mysqli = {
configureFlags = ["--with-mysqli=${if mysqlndSupport then "mysqlnd" else "${mysql.connector-c}/bin/mysql_config"}"];
buildInputs = mysqlBuildInputs;
};
mysqli_embedded = {
configureFlags = ["--enable-embedded-mysqli"];
depends = "mysqli";
assertion = fixed.mysqliSupport;
};
pdo_mysql = {
configureFlags = ["--with-pdo-mysql=${if mysqlndSupport then "mysqlnd" else mysql.connector-c}"];
buildInputs = mysqlBuildInputs;
};
bcmath = {
configureFlags = ["--enable-bcmath"];
};
gd = {
# FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
configureFlags = [
"--with-gd"
"--with-freetype-dir=${freetype.dev}"
"--with-png-dir=${libpng.dev}"
"--with-jpeg-dir=${libjpeg.dev}"
];
buildInputs = [ libpng libjpeg freetype ];
};
gmp = {
configureFlags = ["--with-gmp=${gmp.dev}"];
buildInputs = [ gmp ];
};
soap = {
configureFlags = ["--enable-soap"];
};
sockets = {
configureFlags = ["--enable-sockets"];
};
openssl = {
configureFlags = ["--with-openssl"];
buildInputs = [openssl openssl.dev];
};
mbstring = {
configureFlags = ["--enable-mbstring"];
};
gettext = {
configureFlags = ["--with-gettext=${gettext}"];
buildInputs = [gettext];
};
intl = {
configureFlags = ["--enable-intl"];
buildInputs = [icu];
};
exif = {
configureFlags = ["--enable-exif"];
};
xsl = {
configureFlags = ["--with-xsl=${libxslt.dev}"];
buildInputs = [libxslt];
};
mcrypt = let libmcrypt' = libmcrypt.override { disablePosixThreads = true; }; in {
configureFlags = ["--with-mcrypt=${libmcrypt'}"];
buildInputs = [libmcrypt'];
};
bz2 = {
configureFlags = ["--with-bz2=${bzip2.dev}"];
buildInputs = [bzip2];
};
zip = {
configureFlags = ["--enable-zip"];
};
ftp = {
configureFlags = ["--enable-ftp"];
};
fpm = {
configureFlags = ["--enable-fpm"];
};
mssql = stdenv.lib.optionalAttrs (!stdenv.isDarwin) {
configureFlags = ["--with-mssql=${freetds}"];
buildInputs = [freetds];
};
zts = {
configureFlags = ["--enable-maintainer-zts"];
};
calendar = {
configureFlags = ["--enable-calendar"];
};
sodium = {
configureFlags = ["--with-sodium=${libsodium.dev}"];
buildInputs = [libsodium];
};
tidy = {
configureFlags = [ "--with-tidy=${html-tidy}" ];
buildInputs = [ html-tidy ];
};
};
cfg = {
imapSupport = config.php.imap or (!stdenv.isDarwin);
ldapSupport = config.php.ldap or true;
mhashSupport = config.php.mhash or true;
mysqlSupport = (!php7) && (config.php.mysql or true);
mysqliSupport = config.php.mysqli or true;
pdo_mysqlSupport = config.php.pdo_mysql or true;
libxml2Support = config.php.libxml2 or true;
apxs2Support = config.php.apxs2 or (!stdenv.isDarwin);
embedSupport = config.php.embed or false;
bcmathSupport = config.php.bcmath or true;
socketsSupport = config.php.sockets or true;
curlSupport = config.php.curl or true;
curlWrappersSupport = (!php7) && (config.php.curlWrappers or true);
gettextSupport = config.php.gettext or true;
pcntlSupport = config.php.pcntl or true;
postgresqlSupport = config.php.postgresql or true;
pdo_pgsqlSupport = config.php.pdo_pgsql or true;
readlineSupport = config.php.readline or true;
sqliteSupport = config.php.sqlite or true;
soapSupport = config.php.soap or true;
zlibSupport = config.php.zlib or true;
opensslSupport = config.php.openssl or true;
mbstringSupport = config.php.mbstring or true;
gdSupport = config.php.gd or true;
intlSupport = config.php.intl or true;
exifSupport = config.php.exif or true;
xslSupport = config.php.xsl or false;
mcryptSupport = config.php.mcrypt or true;
bz2Support = config.php.bz2 or false;
zipSupport = config.php.zip or true;
ftpSupport = config.php.ftp or true;
fpmSupport = config.php.fpm or true;
gmpSupport = config.php.gmp or true;
mssqlSupport = (!php7) && (config.php.mssql or (!stdenv.isDarwin));
ztsSupport = config.php.zts or false;
calendarSupport = config.php.calendar or true;
sodiumSupport = (lib.versionAtLeast version "7.2") && config.php.sodium or true;
tidySupport = php7 && config.php.tidy or true;
};
hardeningDisable = [ "bindnow" ]; hardeningDisable = [ "bindnow" ];
@ -298,12 +181,6 @@ let
--includedir=$dev/include) --includedir=$dev/include)
''; '';
configureFlags = [
"--with-config-file-scan-dir=/etc/php.d"
"--with-pcre-regex=${pcre.dev} PCRE_LIBDIR=${pcre}"
] ++ lib.optional stdenv.isDarwin "--with-iconv=${libiconv}"
++ lib.optional stdenv.isLinux "--with-fpm-systemd";
postInstall = '' postInstall = ''
cp php.ini-production $out/etc/php.ini cp php.ini-production $out/etc/php.ini
''; '';
@ -332,7 +209,7 @@ let
patches = if !php7 then [ ./fix-paths.patch ] else [ ./fix-paths-php7.patch ]; patches = if !php7 then [ ./fix-paths.patch ] else [ ./fix-paths-php7.patch ];
postPatch = lib.optional stdenv.isDarwin '' postPatch = optional stdenv.isDarwin ''
substituteInPlace configure --replace "-lstdc++" "-lc++" substituteInPlace configure --replace "-lstdc++" "-lc++"
''; '';
@ -340,7 +217,7 @@ let
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
}); };
in { in {
php56 = generic { php56 = generic {

View File

@ -0,0 +1,26 @@
{ stdenv, fetchFromGitHub, cmake, zlib }:
stdenv.mkDerivation rec {
name = "libmysofa-${version}";
version = "0.6";
src = fetchFromGitHub {
owner = "hoene";
repo = "libmysofa";
rev = "v${version}";
sha256 = "160gcmsn6dwaca29bs95nsgjdalwc299lip0h37k3jcbxxkchgsh";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
cmakeFlags = [ "-DBUILD_TESTS=OFF" ];
meta = with stdenv.lib; {
description = "Reader for AES SOFA files to get better HRTFs";
homepage = https://github.com/hoene/libmysofa;
license = licenses.bsd3;
platforms = platforms.all;
maintainers = with maintainers; [ jfrankenau ];
};
}

View File

@ -0,0 +1,59 @@
diff -urN dbxml-6.1.4.orig/dbxml/src/dbxml/nodeStore/NsUpdate.cpp dbxml-6.1.4/dbxml/src/dbxml/nodeStore/NsUpdate.cpp
--- dbxml-6.1.4.orig/dbxml/src/dbxml/nodeStore/NsUpdate.cpp 2017-05-01 16:05:29.000000000 +0100
+++ dbxml-6.1.4/dbxml/src/dbxml/nodeStore/NsUpdate.cpp 2017-09-04 11:50:20.000000000 +0100
@@ -1359,21 +1359,13 @@
void NsUpdate::attributeRemoved(const DbXmlNodeImpl &node)
{
string key = makeKey(node);
-#if defined(_MSC_VER) && (_MSC_VER>1600)
attrMap_.insert(make_pair(key,node.getIndex()));
-#else
- attrMap_.insert(make_pair<const std::string, int>(key,node.getIndex()));
-#endif
}
void NsUpdate::textRemoved(const DbXmlNodeImpl &node)
{
string key = makeKey(node);
-#if defined(_MSC_VER) && (_MSC_VER>1600)
textDeleteMap_.insert(make_pair(key,node.getIndex()));
-#else
- textDeleteMap_.insert(make_pair<const std::string, int>(key,node.getIndex()));
-#endif
}
void NsUpdate::textRemoved(int index, const NsNid &nid,
@@ -1381,21 +1373,13 @@
const std::string &cname)
{
string key = makeKey(nid, did, cname);
-#if defined(_MSC_VER) && (_MSC_VER>1600)
textDeleteMap_.insert(make_pair(key,index));
-#else
- textDeleteMap_.insert(make_pair<const std::string, int>(key,index));
-#endif
}
void NsUpdate::textInserted(int index, const DbXmlNodeImpl &node)
{
string key = makeKey(node);
-#if defined(_MSC_VER) && (_MSC_VER>1600)
textInsertMap_.insert(make_pair(key,index));
-#else
- textInsertMap_.insert(make_pair<const std::string, int>(key,index));
-#endif
}
void NsUpdate::textInserted(int index, const NsNid &nid,
@@ -1403,11 +1387,7 @@
const std::string &cname)
{
string key = makeKey(nid, did, cname);
-#if defined(_MSC_VER) && (_MSC_VER>1600)
textInsertMap_.insert(make_pair(key,index));
-#else
- textInsertMap_.insert(make_pair<const std::string, int>(key,index));
-#endif
}
//

View File

@ -0,0 +1,38 @@
{ stdenv, fetchurl, db62, xercesc, xqilla }:
stdenv.mkDerivation rec {
name = "dbxml-${version}";
version = "6.1.4";
src = fetchurl {
url = "http://download.oracle.com/berkeley-db/${name}.tar.gz";
sha256 = "a8fc8f5e0c3b6e42741fa4dfc3b878c982ff8f5e5f14843f6a7e20d22e64251a";
};
patches = [
./cxx11.patch
./incorrect-optimization.patch
];
buildInputs = [
db62 xercesc xqilla
];
configureFlags = [
"--with-berkeleydb=${db62.out}"
"--with-xerces=${xercesc}"
"--with-xqilla=${xqilla}"
];
preConfigure = ''
cd dbxml
'';
meta = with stdenv.lib; {
homepage = https://www.oracle.com/database/berkeley-db/xml.html;
description = "Embeddable XML database based on Berkeley DB";
license = licenses.agpl3;
maintainers = with maintainers; [ danieldk ];
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,34 @@
Patch provided by Lauren Foutz. See:
https://community.oracle.com/thread/4093422
--- dbxml-6.1.4-orig/dbxml/src/dbxml/query/ParentOfChildJoinQP.cpp
+++ dbxml-6.1.4/dbxml/src/dbxml/query/ParentOfChildJoinQP.cpp
@@ -139,28 +139,16 @@ bool ParentOfChildIterator::doJoin(Dynam
// Invarient 4: When ancestorStack_ is empty we can output the
// buffered results_, since any more results will come after them in
// document order.
while(true) {
context->testInterrupt();
- /*
- * If current parent's node level already be larger than
- * childen's, abandon current parent and move to next one.
- */
- if (parents_ != NULL &&
- parents_->getNodeLevel() > children_->getNodeLevel()) {
- if(!parents_->next(context)) {
- delete parents_;
- parents_ = 0;
- }
- }
-
int cmp = parents_ == 0 ? -1 : isDescendantOf(children_, parents_, /*orSelf*/false);
if(cmp < 0) {
if(!ancestorStack_.empty()) {
// We've found the closest ancestor - is it a parent?
if(ancestorStack_.back()->getNodeLevel() == (children_->getNodeLevel() - 1)) {
// Maintain invarient 3
if(results_.empty() || NodeInfo::compare(results_.back(), ancestorStack_.back()) < 0)
results_.push_back(ancestorStack_.back());

View File

@ -77,6 +77,7 @@
#, libiec61883 ? null, libavc1394 ? null # iec61883 (also uses libraw1394) #, libiec61883 ? null, libavc1394 ? null # iec61883 (also uses libraw1394)
#, libmfx ? null # Hardware acceleration vis libmfx #, libmfx ? null # Hardware acceleration vis libmfx
, libmodplug ? null # ModPlug support , libmodplug ? null # ModPlug support
, libmysofa ? null # HRTF support via SOFAlizer
#, libnut ? null # NUT (de)muxer, native (de)muser exists #, libnut ? null # NUT (de)muxer, native (de)muser exists
, libogg ? null # Ogg container used by vorbis & theora , libogg ? null # Ogg container used by vorbis & theora
, libopus ? null # Opus de/encoder , libopus ? null # Opus de/encoder
@ -344,6 +345,7 @@ stdenv.mkDerivation rec {
#(enableFeature (if isLinux then libiec61883 != null && libavc1394 != null && libraw1394 != null else false) "libiec61883") #(enableFeature (if isLinux then libiec61883 != null && libavc1394 != null && libraw1394 != null else false) "libiec61883")
#(enableFeature (libmfx != null) "libmfx") #(enableFeature (libmfx != null) "libmfx")
(enableFeature (libmodplug != null) "libmodplug") (enableFeature (libmodplug != null) "libmodplug")
(enableFeature (libmysofa != null) "libmysofa")
#(enableFeature (libnut != null) "libnut") #(enableFeature (libnut != null) "libnut")
(enableFeature (libopus != null) "libopus") (enableFeature (libopus != null) "libopus")
(enableFeature (libssh != null) "libssh") (enableFeature (libssh != null) "libssh")
@ -405,7 +407,7 @@ stdenv.mkDerivation rec {
buildInputs = [ buildInputs = [
bzip2 celt fontconfig freetype frei0r fribidi game-music-emu gnutls gsm bzip2 celt fontconfig freetype frei0r fribidi game-music-emu gnutls gsm
libjack2 ladspaH lame libass libbluray libbs2b libcaca libdc1394 libmodplug libjack2 ladspaH lame libass libbluray libbs2b libcaca libdc1394 libmodplug libmysofa
libogg libopus libssh libtheora libvdpau libvorbis libvpx libwebp libX11 libogg libopus libssh libtheora libvdpau libvorbis libvpx libwebp libX11
libxcb libXv lzma openal openjpeg libpulseaudio rtmpdump opencore-amr libxcb libXv lzma openal openjpeg libpulseaudio rtmpdump opencore-amr
samba SDL2 soxr speex vid-stab vo-amrwbenc wavpack x264 x265 xavs xvidcore samba SDL2 soxr speex vid-stab vo-amrwbenc wavpack x264 x265 xavs xvidcore

View File

@ -0,0 +1,152 @@
{ stdenvNoLibs, buildPackages, buildPlatform, hostPlatform
, gcc, glibc
, libiberty
}:
stdenvNoLibs.mkDerivation rec {
name = "libgcc-${version}";
inherit (gcc.cc) src version;
outputs = [ "out" "dev" ];
strictDeps = true;
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ libiberty ];
postUnpack = ''
mkdir -p ./build
buildRoot=$(readlink -e "./build")
'';
postPatch = ''
sourceRoot=$(readlink -e "./libgcc")
'';
preConfigure = ''
cd "$buildRoot"
''
# Drop in libiberty, as external builds are not expected
+ ''
(
mkdir -p build-${buildPlatform.config}/libiberty/
cd build-${buildPlatform.config}/libiberty/
ln -s ${buildPackages.libiberty}/lib/libiberty.a ./
)
''
# A few misc bits of gcc need to be built.
#
# - We "shift" the tools over to fake platforms perspective from the previous
# stage.
#
# - We define GENERATOR_FILE so nothing bothers looking for GNU GMP.
#
# - We remove the `libgcc.mvar` deps so that the bootstrap xgcc isn't built.
+ ''
mkdir -p "$buildRoot/gcc"
cd "$buildRoot/gcc"
(
export AS_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$AS_FOR_BUILD
export CC_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CC_FOR_BUILD
export CPP_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CPP_FOR_BUILD
export CXX_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CXX_FOR_BUILD
export LD_FOR_BUILD=${buildPackages.stdenv.cc.bintools}/bin/$LD_FOR_BUILD
export AS=$AS_FOR_BUILD
export CC=$CC_FOR_BUILD
export CPP=$CPP_FOR_BUILD
export CXX=$CXX_FOR_BUILD
export LD=$LD_FOR_BUILD
export AS_FOR_TARGET=${stdenvNoLibs.cc}/bin/$AS
export CC_FOR_TARGET=${stdenvNoLibs.cc}/bin/$CC
export CPP_FOR_TARGET=${stdenvNoLibs.cc}/bin/$CPP
export LD_FOR_TARGET=${stdenvNoLibs.cc.bintools}/bin/$LD
export NIX_BUILD_CFLAGS_COMPILE+=' -DGENERATOR_FILE=1'
"$sourceRoot/../gcc/configure" $gccConfigureFlags
sed -e 's,libgcc.mvars:.*$,libgcc.mvars:,' -i Makefile
make \
config.h \
libgcc.mvars \
tconfig.h \
tm.h \
options.h \
insn-constants.h \
insn-modes.h \
gcov-iov.h
)
mkdir -p "$buildRoot/gcc/include"
''
# Preparing to configure + build libgcc itself
+ ''
mkdir -p "$buildRoot/gcc/${hostPlatform.config}/libgcc"
cd "$buildRoot/gcc/${hostPlatform.config}/libgcc"
configureScript=$sourceRoot/configure
chmod +x "$configureScript"
export AS_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$AS_FOR_BUILD
export CC_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CC_FOR_BUILD
export CPP_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CPP_FOR_BUILD
export CXX_FOR_BUILD=${buildPackages.stdenv.cc}/bin/$CXX_FOR_BUILD
export LD_FOR_BUILD=${buildPackages.stdenv.cc.bintools}/bin/$LD_FOR_BUILD
export AS=${stdenvNoLibs.cc}/bin/$AS
export CC=${stdenvNoLibs.cc}/bin/$CC
export CPP=${stdenvNoLibs.cc}/bin/$CPP
export CXX=${stdenvNoLibs.cc}/bin/$CXX
export LD=${stdenvNoLibs.cc.bintools}/bin/$LD
export AS_FOR_TARGET=${stdenvNoLibs.cc}/bin/$AS_FOR_TARGET
export CC_FOR_TARGET=${stdenvNoLibs.cc}/bin/$CC_FOR_TARGET
export CPP_FOR_TARGET=${stdenvNoLibs.cc}/bin/$CPP_FOR_TARGET
export LD_FOR_TARGET=${stdenvNoLibs.cc.bintools}/bin/$LD_FOR_TARGET
'';
gccConfigureFlags = [
"--build=${buildPlatform.config}"
"--host=${buildPlatform.config}"
"--target=${hostPlatform.config}"
"--disable-bootstrap"
"--disable-multilib" "--with-multilib-list="
"--enable-languages=c"
"--disable-fixincludes"
"--disable-intl"
"--disable-lto"
"--disable-libatomic"
"--disable-libbacktrace"
"--disable-libcpp"
"--disable-libssp"
"--disable-libquadmath"
"--disable-libgomp"
"--disable-libvtv"
"--disable-vtable-verify"
"--with-system-zlib"
] ++ stdenvNoLibs.lib.optional (hostPlatform.libc == "glibc")
"--with-glibc-version=${glibc.version}";
configurePlatforms = [ "build" "host" ];
configureFlags = [
"--disable-dependency-tracking"
# $CC cannot link binaries, let alone run then
"cross_compiling=true"
# Do not have dynamic linker without libc
"--enable-static"
"--disable-shared"
];
makeFlags = [ "MULTIBUILDTOP:=../" ];
postInstall = ''
moveToOutput "lib/gcc/${hostPlatform.config}/${version}/include" "$dev"
mkdir -p "$out/lib" "$dev/include"
ln -s "$out/lib/gcc/${hostPlatform.config}/${version}"/* "$out/lib"
ln -s "$dev/lib/gcc/${hostPlatform.config}/${version}/include"/* "$dev/include/"
'';
}

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libfilezilla-${version}"; name = "libfilezilla-${version}";
version = "0.12.3"; version = "0.13.0";
src = fetchurl { src = fetchurl {
url = "http://download.filezilla-project.org/libfilezilla/${name}.tar.bz2"; url = "http://download.filezilla-project.org/libfilezilla/${name}.tar.bz2";
sha256 = "1v606kcz2rdmmlwxrv3xvwh7ia1nh6jfc9bhjw2r4ai3rm16gch5"; sha256 = "0sk8kz2zrvf7kp9jrp3l4rpipv4xh0hg8d4h734xyag7vd03rjpz";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,11 +1,50 @@
{ stdenv, fetchurl, patchelf }: { stdenv
stdenv.mkDerivation rec { , fetchurl
, patchelf
, cudaSupport ? false, symlinkJoin, cudatoolkit, cudnn, nvidia_x11
}:
with stdenv.lib;
let
tfType = if cudaSupport then "gpu" else "cpu";
system =
if stdenv.isx86_64
then if stdenv.isLinux then "linux-x86_64"
else if stdenv.isDarwin then "darwin-x86_64" else unavailable
else unavailable;
unavailable = throw "libtensorflow is not available for this platform!";
cudatoolkit_joined = symlinkJoin {
name = "unsplit_cudatoolkit";
paths = [ cudatoolkit.out
cudatoolkit.lib ];};
rpath = makeLibraryPath ([stdenv.cc.libc stdenv.cc.cc.lib] ++
optionals cudaSupport [ cudatoolkit_joined cudnn nvidia_x11 ]);
patchLibs =
if stdenv.isDarwin
then ''
install_name_tool -id $out/lib/libtensorflow.so $out/lib/libtensorflow.so
install_name_tool -id $out/lib/libtensorflow_framework.so $out/lib/libtensorflow_framework.so
''
else ''
${patchelf}/bin/patchelf --set-rpath "${rpath}:$out/lib" $out/lib/libtensorflow.so
${patchelf}/bin/patchelf --set-rpath "${rpath}" $out/lib/libtensorflow_framework.so
'';
in stdenv.mkDerivation rec {
pname = "libtensorflow"; pname = "libtensorflow";
version = "1.8.0"; version = "1.8.0";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://storage.googleapis.com/tensorflow/${pname}/${pname}-cpu-linux-x86_64-${version}.tar.gz"; url = "https://storage.googleapis.com/tensorflow/${pname}/${pname}-${tfType}-${system}-${version}.tar.gz";
sha256 = "0qzy15rc3x961cyi3bqnygrcnw4x69r28xkwhpwrv1r0gi6k73ha"; sha256 =
if system == "linux-x86_64" then
if cudaSupport
then "0m1g4sqr9as0jgfx7wlyay2nkad6wgvsyk2gvhfkqkq5sm1vbx85"
else "0qzy15rc3x961cyi3bqnygrcnw4x69r28xkwhpwrv1r0gi6k73ha"
else if system == "darwin-x86_64" then
if cudaSupport
then unavailable
else "0q8lmyj8l50hl6l48c640ixanvhqf2836bicyl9p2x8sj97b7y8l"
else unavailable;
}; };
# Patch library to use our libc, libstdc++ and others # Patch library to use our libc, libstdc++ and others
@ -15,18 +54,16 @@ stdenv.mkDerivation rec {
tar -C $out -xzf $src tar -C $out -xzf $src
chmod +w $out/lib/libtensorflow.so chmod +w $out/lib/libtensorflow.so
chmod +w $out/lib/libtensorflow_framework.so chmod +w $out/lib/libtensorflow_framework.so
${patchelf}/bin/patchelf --set-rpath "${stdenv.cc.libc}/lib:${stdenv.cc.cc.lib}/lib:$out/lib" $out/lib/libtensorflow.so ${patchLibs}
${patchelf}/bin/patchelf --set-rpath "${stdenv.cc.libc}/lib:${stdenv.cc.cc.lib}/lib" $out/lib/libtensorflow_framework.so
chmod -w $out/lib/libtensorflow.so chmod -w $out/lib/libtensorflow.so
chmod -w $out/lib/libtensorflow_framework.so chmod -w $out/lib/libtensorflow_framework.so
''; '';
meta = with stdenv.lib; { meta = {
inherit version;
description = "C API for TensorFlow"; description = "C API for TensorFlow";
license = licenses.asl20;
maintainers = [maintainers.basvandijk];
platforms = platforms.linux;
homepage = https://www.tensorflow.org/versions/master/install/install_c; homepage = https://www.tensorflow.org/versions/master/install/install_c;
license = licenses.asl20;
platforms = with platforms; linux ++ darwin;
maintainers = [maintainers.basvandijk];
}; };
} }

View File

@ -1,9 +1,10 @@
{ stdenv, lib, fetchurl { stdenv, lib, fetchurl
, zlib, xz, python2, findXMLCatalogs, libiconv , zlib, xz, python2, findXMLCatalogs
, buildPlatform, hostPlatform , buildPlatform, hostPlatform
, pythonSupport ? buildPlatform == hostPlatform , pythonSupport ? buildPlatform == hostPlatform
, icuSupport ? false, icu ? null , icuSupport ? false, icu ? null
, enableStatic ? false , enableShared ? hostPlatform.libc != "msvcrt"
, enableStatic ? !enableShared,
}: }:
let let
@ -35,22 +36,14 @@ in stdenv.mkDerivation rec {
lib.optional pythonSupport "--with-python=${python}" lib.optional pythonSupport "--with-python=${python}"
++ lib.optional icuSupport "--with-icu" ++ lib.optional icuSupport "--with-icu"
++ [ "--exec_prefix=$dev" ] ++ [ "--exec_prefix=$dev" ]
++ lib.optional enableStatic "--enable-static"; ++ lib.optional enableStatic "--enable-static"
++ lib.optional (!enableShared) "--disable-shared";
enableParallelBuilding = true; enableParallelBuilding = true;
doCheck = (stdenv.hostPlatform == stdenv.buildPlatform) && !stdenv.isDarwin && doCheck = (stdenv.hostPlatform == stdenv.buildPlatform) && !stdenv.isDarwin &&
hostPlatform.libc != "musl"; hostPlatform.libc != "musl";
crossAttrs = lib.optionalAttrs (hostPlatform.libc == "msvcrt") {
# creating the DLL is broken ATM
dontDisableStatic = true;
configureFlags = configureFlags ++ [ "--disable-shared" ];
# libiconv is a header dependency - propagating is enough
propagatedBuildInputs = [ findXMLCatalogs libiconv ];
};
preInstall = lib.optionalString pythonSupport preInstall = lib.optionalString pythonSupport
''substituteInPlace python/libxml2mod.la --replace "${python}" "$py"''; ''substituteInPlace python/libxml2mod.la --replace "${python}" "$py"'';
installFlags = lib.optionalString pythonSupport installFlags = lib.optionalString pythonSupport

View File

@ -22,9 +22,10 @@ stdenv.mkDerivation rec {
unset CPP unset CPP
''; '';
crossAttrs = { # Use `lib.optionalString` next mass rebuild.
makeFlags = "CROSS_COMPILE=${stdenv.cc.targetPrefix}"; makeFlags = if stdenv.buildPlatform == stdenv.hostPlatform
}; then null
else "CROSS_COMPILE=${stdenv.cc.targetPrefix}";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://fedorahosted.org/newt/; homepage = https://fedorahosted.org/newt/;

View File

@ -15,17 +15,16 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
doCheck = true; doCheck = stdenv.buildPlatform == stdenv.hostPlatform;
checkTarget = "test"; checkTarget = "test";
enableParallelBuilding = true; enableParallelBuilding = true;
crossAttrs = { cmakeFlags = [
cmakeFlags = "-DBuildTests=OFF"; "-DBuildTests=${if doCheck then "ON" else "OFF"}"
doCheck = false; ] ++ stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [
} // stdenv.lib.optionalAttrs (hostPlatform.libc == "msvcrt") { "-DCMAKE_SYSTEM_NAME=Windows"
cmakeFlags = "-DBuildTests=OFF -DCMAKE_SYSTEM_NAME=Windows"; ];
};
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Header only C++ library for the JSON file format"; description = "Header only C++ library for the JSON file format";

View File

@ -1,4 +1,5 @@
{ stdenv, fetchFromGitHub, cmake, qhull, flann, boost, vtk, eigen, pkgconfig, qtbase { stdenv, fetchFromGitHub, fetchpatch, cmake
, qhull, flann, boost, vtk, eigen, pkgconfig, qtbase
, libusb1, libpcap, libXt, libpng, Cocoa, AGL, cf-private, OpenGL , libusb1, libpcap, libXt, libpng, Cocoa, AGL, cf-private, OpenGL
}: }:
@ -12,6 +13,14 @@ stdenv.mkDerivation rec {
sha256 = "05wvqqi2fyk5innw4mg356r71c1hmc9alc7xkf4g81ds3b3867xq"; sha256 = "05wvqqi2fyk5innw4mg356r71c1hmc9alc7xkf4g81ds3b3867xq";
}; };
patches = [
# boost-1.67 compatibility
(fetchpatch {
url = "https://github.com/PointCloudLibrary/pcl/commit/2309bdab20fb2a385d374db6a87349199279db18.patch";
sha256 = "112p4687xrm0vsm0magmkvsm1hpks9hj42fm0lncy3yy2j1v3r4h";
name = "boost167-random.patch";
})];
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig cmake ]; nativeBuildInputs = [ pkgconfig cmake ];

View File

@ -1,5 +1,4 @@
{ stdenv, fetchurl, fetchpatch, substituteAll { stdenv, lib, fetchurl, fetchpatch, substituteAll
, hostPlatform
, libXrender, libXinerama, libXcursor, libXv, libXext , libXrender, libXinerama, libXcursor, libXv, libXext
, libXfixes, libXrandr, libSM, freetype, fontconfig, zlib, libjpeg, libpng , libXfixes, libXrandr, libSM, freetype, fontconfig, zlib, libjpeg, libpng
, libmng, which, libGLSupported, libGLU, openssl, dbus, cups, pkgconfig , libmng, which, libGLSupported, libGLU, openssl, dbus, cups, pkgconfig
@ -17,8 +16,6 @@
, cf-private, libobjc, ApplicationServices, OpenGL, Cocoa, AGL, libcxx , cf-private, libobjc, ApplicationServices, OpenGL, Cocoa, AGL, libcxx
}: }:
with stdenv.lib;
let let
v_maj = "4.8"; v_maj = "4.8";
v_min = "7"; v_min = "7";
@ -51,12 +48,12 @@ stdenv.mkDerivation rec {
substituteInPlace configure --replace /bin/pwd pwd substituteInPlace configure --replace /bin/pwd pwd
substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i mkspecs/*/*.conf sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i mkspecs/*/*.conf
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + lib.optionalString stdenv.isDarwin ''
# remove impure reference to /usr/lib/libstdc++.6.dylib # remove impure reference to /usr/lib/libstdc++.6.dylib
# there might be more references, but this is the only one I could find # there might be more references, but this is the only one I could find
substituteInPlace tools/macdeployqt/tests/tst_deployment_mac.cpp \ substituteInPlace tools/macdeployqt/tests/tst_deployment_mac.cpp \
--replace /usr/lib/libstdc++.6.dylib "${stdenv.cc}/lib/libstdc++.6.dylib" --replace /usr/lib/libstdc++.6.dylib "${stdenv.cc}/lib/libstdc++.6.dylib"
'' + stdenv.lib.optionalString stdenv.cc.isClang '' '' + lib.optionalString stdenv.cc.isClang ''
substituteInPlace src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp \ substituteInPlace src/3rdparty/webkit/Source/WebCore/html/HTMLImageElement.cpp \
--replace 'optionalHeight > 0' 'optionalHeight != NULL' --replace 'optionalHeight > 0' 'optionalHeight != NULL'
@ -65,14 +62,15 @@ stdenv.mkDerivation rec {
''; '';
patches = patches =
[ ./glib-2.32.patch lib.optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
./glib-2.32.patch
./libressl.patch ./libressl.patch
./parallel-configure.patch ./parallel-configure.patch
./clang-5-darwin.patch ./clang-5-darwin.patch
./qt-4.8.7-unixmake-darwin.patch ./qt-4.8.7-unixmake-darwin.patch
(substituteAll { (substituteAll {
src = ./dlopen-absolute-paths.diff; src = ./dlopen-absolute-paths.diff;
cups = if cups != null then stdenv.lib.getLib cups else null; cups = if cups != null then lib.getLib cups else null;
icu = icu.out; icu = icu.out;
libXfixes = libXfixes.out; libXfixes = libXfixes.out;
glibc = stdenv.cc.libc.out; glibc = stdenv.cc.libc.out;
@ -89,25 +87,25 @@ stdenv.mkDerivation rec {
sha256 = "07lrva7bjh6i40p7b3ml26a2jlznri8bh7y7iyx5zmvb1gfxmj34"; sha256 = "07lrva7bjh6i40p7b3ml26a2jlznri8bh7y7iyx5zmvb1gfxmj34";
}) })
] ]
++ stdenv.lib.optional gtkStyle (substituteAll ({ ++ lib.optional gtkStyle (substituteAll ({
src = ./dlopen-gtkstyle.diff; src = ./dlopen-gtkstyle.diff;
# substituteAll ignores env vars starting with capital letter # substituteAll ignores env vars starting with capital letter
gtk = gtk2.out; gtk = gtk2.out;
} // stdenv.lib.optionalAttrs gnomeStyle { } // lib.optionalAttrs gnomeStyle {
gconf = GConf.out; gconf = GConf.out;
libgnomeui = libgnomeui.out; libgnomeui = libgnomeui.out;
gnome_vfs = gnome_vfs.out; gnome_vfs = gnome_vfs.out;
})) }))
++ stdenv.lib.optional flashplayerFix (substituteAll { ++ lib.optional flashplayerFix (substituteAll {
src = ./dlopen-webkit-nsplugin.diff; src = ./dlopen-webkit-nsplugin.diff;
gtk = gtk2.out; gtk = gtk2.out;
gdk_pixbuf = gdk_pixbuf.out; gdk_pixbuf = gdk_pixbuf.out;
}) })
++ stdenv.lib.optional stdenv.isAarch64 (fetchpatch { ++ lib.optional stdenv.isAarch64 (fetchpatch {
url = "https://src.fedoraproject.org/rpms/qt/raw/ecf530486e0fb7fe31bad26805cde61115562b2b/f/qt-aarch64.patch"; url = "https://src.fedoraproject.org/rpms/qt/raw/ecf530486e0fb7fe31bad26805cde61115562b2b/f/qt-aarch64.patch";
sha256 = "1fbjh78nmafqmj7yk67qwjbhl3f6ylkp6x33b1dqxfw9gld8b3gl"; sha256 = "1fbjh78nmafqmj7yk67qwjbhl3f6ylkp6x33b1dqxfw9gld8b3gl";
}) })
++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [ ++ lib.optionals stdenv.hostPlatform.isMusl [
./qt-musl.patch ./qt-musl.patch
./qt-musl-iconv-no-bom.patch ./qt-musl-iconv-no-bom.patch
./patch-qthread-stacksize.diff ./patch-qthread-stacksize.diff
@ -127,15 +125,27 @@ stdenv.mkDerivation rec {
--jobs=$NIX_BUILD_CORES --jobs=$NIX_BUILD_CORES
" "
unset LD # Makefile uses gcc for linking; setting LD interferes unset LD # Makefile uses gcc for linking; setting LD interferes
'' + optionalString stdenv.cc.isClang '' '' + lib.optionalString stdenv.cc.isClang ''
sed -i 's/QMAKE_CC = gcc/QMAKE_CC = clang/' mkspecs/common/g++-base.conf sed -i 's/QMAKE_CC = gcc/QMAKE_CC = clang/' mkspecs/common/g++-base.conf
sed -i 's/QMAKE_CXX = g++/QMAKE_CXX = clang++/' mkspecs/common/g++-base.conf sed -i 's/QMAKE_CXX = g++/QMAKE_CXX = clang++/' mkspecs/common/g++-base.conf
'' + lib.optionalString stdenv.hostPlatform.isWindows ''
sed -i -e 's/ g++/ ${stdenv.cc.targetPrefix}g++/' \
-e 's/ gcc/ ${stdenv.cc.targetPrefix}gcc/' \
-e 's/ ar/ ${stdenv.cc.targetPrefix}ar/' \
-e 's/ strip/ ${stdenv.cc.targetPrefix}strip/' \
-e 's/ windres/ ${stdenv.cc.targetPrefix}windres/' \
mkspecs/win32-g++/qmake.conf
''; '';
prefixKey = "-prefix "; prefixKey = "-prefix ";
configureFlags = ${if stdenv.hostPlatform == stdenv.buildPlatform then null else "configurePlatforms"} = [];
'' configureFlags = let
platformFlag =
if stdenv.hostPlatform != stdenv.buildPlatform
then "-xplatform"
else "-platform";
in (if stdenv.hostPlatform == stdenv.buildPlatform then ''
-v -no-separate-debug-info -release -fast -confirm-license -opensource -v -no-separate-debug-info -release -fast -confirm-license -opensource
-${if stdenv.isFreeBSD then "no-" else ""}opengl -xrender -xrandr -xinerama -xcursor -xinput -xfixes -fontconfig -${if stdenv.isFreeBSD then "no-" else ""}opengl -xrender -xrandr -xinerama -xcursor -xinput -xfixes -fontconfig
@ -152,23 +162,30 @@ stdenv.mkDerivation rec {
-no-phonon ${if buildWebkit then "" else "-no"}-webkit ${if buildMultimedia then "" else "-no"}-multimedia -audio-backend -no-phonon ${if buildWebkit then "" else "-no"}-webkit ${if buildMultimedia then "" else "-no"}-multimedia -audio-backend
${if developerBuild then "-developer-build" else ""} ${if developerBuild then "-developer-build" else ""}
'' + optionalString stdenv.isDarwin "-platform unsupported/macx-clang-libc++"; '' else ''
-static -release -confirm-license -opensource
-no-opengl -no-phonon
-no-svg
-make qmake -make libs -nomake tools
-nomake demos -nomake examples -nomake docs
'') + lib.optionalString stdenv.hostPlatform.isDarwin "${platformFlag} unsupported/macx-clang-libc++"
+ lib.optionalString stdenv.hostPlatform.isMinGW "${platformFlag} win32-g++-4.6";
propagatedBuildInputs = propagatedBuildInputs =
[ libXrender libXrandr libXinerama libXcursor libXext libXfixes libXv libXi [ libXrender libXrandr libXinerama libXcursor libXext libXfixes libXv libXi
libSM zlib libpng openssl dbus freetype fontconfig glib ] libSM zlib libpng openssl dbus freetype fontconfig glib ]
# Qt doesn't directly need GLU (just GL), but many apps use, it's small and doesn't remain a runtime-dep if not used # Qt doesn't directly need GLU (just GL), but many apps use, it's small and doesn't remain a runtime-dep if not used
++ optional libGLSupported libGLU ++ lib.optional libGLSupported libGLU
++ optional ((buildWebkit || buildMultimedia) && stdenv.isLinux ) alsaLib ++ lib.optional ((buildWebkit || buildMultimedia) && stdenv.isLinux ) alsaLib
++ optionals (buildWebkit || buildMultimedia) [ gstreamer gst-plugins-base ]; ++ lib.optionals (buildWebkit || buildMultimedia) [ gstreamer gst-plugins-base ];
# The following libraries are only used in plugins # The following libraries are only used in plugins
buildInputs = buildInputs =
[ cups # Qt dlopen's libcups instead of linking to it [ cups # Qt dlopen's libcups instead of linking to it
postgresql sqlite libjpeg libmng libtiff icu ] postgresql sqlite libjpeg libmng libtiff icu ]
++ optionals (mysql != null) [ mysql.connector-c ] ++ lib.optionals (mysql != null) [ mysql.connector-c ]
++ optionals gtkStyle [ gtk2 gdk_pixbuf ] ++ lib.optionals gtkStyle [ gtk2 gdk_pixbuf ]
++ optionals stdenv.isDarwin [ cf-private ApplicationServices OpenGL Cocoa AGL libcxx libobjc ]; ++ lib.optionals stdenv.isDarwin [ cf-private ApplicationServices OpenGL Cocoa AGL libcxx libobjc ];
nativeBuildInputs = [ perl pkgconfig which ]; nativeBuildInputs = [ perl pkgconfig which ];
@ -177,14 +194,14 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = NIX_CFLAGS_COMPILE =
# with gcc7 the warnings blow the log over Hydra's limit # with gcc7 the warnings blow the log over Hydra's limit
[ "-Wno-expansion-to-defined" "-Wno-unused-local-typedefs" ] [ "-Wno-expansion-to-defined" "-Wno-unused-local-typedefs" ]
++ optional stdenv.isLinux "-std=gnu++98" # gnu++ in (Obj)C flags is no good on Darwin ++ lib.optional stdenv.isLinux "-std=gnu++98" # gnu++ in (Obj)C flags is no good on Darwin
++ optionals (stdenv.isFreeBSD || stdenv.isDarwin) ++ lib.optionals (stdenv.isFreeBSD || stdenv.isDarwin)
[ "-I${glib.dev}/include/glib-2.0" "-I${glib.out}/lib/glib-2.0/include" ] [ "-I${glib.dev}/include/glib-2.0" "-I${glib.out}/lib/glib-2.0/include" ]
++ optional stdenv.isDarwin "-I${libcxx}/include/c++/v1"; ++ lib.optional stdenv.isDarwin "-I${libcxx}/include/c++/v1";
NIX_LDFLAGS = optionalString (stdenv.isFreeBSD || stdenv.isDarwin) "-lglib-2.0"; NIX_LDFLAGS = lib.optionalString (stdenv.isFreeBSD || stdenv.isDarwin) "-lglib-2.0";
preBuild = optionalString stdenv.isDarwin '' preBuild = lib.optionalString stdenv.isDarwin ''
# resolve "extra qualification on member" error # resolve "extra qualification on member" error
sed -i 's/struct ::TabletProximityRec;/struct TabletProximityRec;/' \ sed -i 's/struct ::TabletProximityRec;/struct TabletProximityRec;/' \
src/gui/kernel/qt_cocoa_helpers_mac_p.h src/gui/kernel/qt_cocoa_helpers_mac_p.h
@ -196,44 +213,19 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
rm -rf $out/tests rm -rf $out/tests
''
# I don't know why it does not install qmake
+ lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
cp bin/qmake* $out/bin
''; '';
crossAttrs = { dontStrip = if stdenv.hostPlatform == stdenv.buildPlatform then null else true;
# I've not tried any case other than i686-pc-mingw32.
# -nomake tools: it fails linking some asian language symbols
# -no-svg: it fails to build on mingw64
configureFlags = ''
-static -release -confirm-license -opensource
-no-opengl -no-phonon
-no-svg
-make qmake -make libs -nomake tools
-nomake demos -nomake examples -nomake docs
'' + optionalString hostPlatform.isMinGW " -xplatform win32-g++-4.6";
patches = [];
preConfigure = ''
sed -i -e 's/ g++/ ${stdenv.cc.targetPrefix}g++/' \
-e 's/ gcc/ ${stdenv.cc.targetPrefix}gcc/' \
-e 's/ ar/ ${stdenv.cc.targetPrefix}ar/' \
-e 's/ strip/ ${stdenv.cc.targetPrefix}strip/' \
-e 's/ windres/ ${stdenv.cc.targetPrefix}windres/' \
mkspecs/win32-g++/qmake.conf
'';
# I don't know why it does not install qmake
postInstall = ''
cp bin/qmake* $out/bin
'';
configurePlatforms = [];
dontStrip = true;
} // optionalAttrs hostPlatform.isMinGW {
propagatedBuildInputs = [ ];
};
meta = { meta = {
homepage = http://qt-project.org/; homepage = http://qt-project.org/;
description = "A cross-platform application framework for C++"; description = "A cross-platform application framework for C++";
license = licenses.lgpl21Plus; # or gpl3 license = lib.licenses.lgpl21Plus; # or gpl3
maintainers = with maintainers; [ orivej lovek323 phreedom sander ]; maintainers = with lib.maintainers; [ orivej lovek323 phreedom sander ];
platforms = platforms.unix; platforms = lib.platforms.unix;
}; };
} }

View File

@ -14,15 +14,18 @@ in stdenv.mkDerivation rec {
sha256 = "0skdv3wff1i78hb0y771apw0cak5rzxbwbh6l922snfm01z9k1ws"; sha256 = "0skdv3wff1i78hb0y771apw0cak5rzxbwbh6l922snfm01z9k1ws";
}; };
outputs = [ "lib" "dev" "doc" "out" ];
dontDisableStatic = true; dontDisableStatic = true;
enableParallelBuilding = true; enableParallelBuilding = true;
configureFlags = [ configureFlags = [
"--enable-force-devr" # assume /dev/random works "--enable-force-devr" # assume /dev/random works
"--libdir=\${prefix}/lib" "--libdir=\${lib}/lib"
"--includedir=\${prefix}/include" "--dynlibdir=\${lib}/lib"
"--sysdepdir=\${prefix}/lib/skalibs/sysdeps" "--includedir=\${dev}/include"
"--sysdepdir=\${lib}/lib/skalibs/sysdeps"
] ]
++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ]) ++ (if stdenv.isDarwin then [ "--disable-shared" ] else [ "--enable-shared" ])
# On darwin, the target triplet from -dumpmachine includes version number, but # On darwin, the target triplet from -dumpmachine includes version number, but
@ -32,12 +35,17 @@ in stdenv.mkDerivation rec {
# http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph # http://www.skarnet.org/cgi-bin/archive.cgi?1:mss:623:heiodchokfjdkonfhdph
++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.system}"); ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.system}");
postInstall = ''
mkdir -p $doc/share/doc/skalibs
mv doc $doc/share/doc/skalibs/html
'';
meta = { meta = {
homepage = http://skarnet.org/software/skalibs/; homepage = http://skarnet.org/software/skalibs/;
description = "A set of general-purpose C programming libraries"; description = "A set of general-purpose C programming libraries";
platforms = stdenv.lib.platforms.all; platforms = stdenv.lib.platforms.all;
license = stdenv.lib.licenses.isc; license = stdenv.lib.licenses.isc;
maintainers = with stdenv.lib.maintainers; [ pmahoney ]; maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ];
}; };
} }

View File

@ -2,23 +2,19 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "zeromq-${version}"; name = "zeromq-${version}";
version = "4.2.3"; version = "4.2.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zeromq"; owner = "zeromq";
repo = "libzmq"; repo = "libzmq";
rev = "v${version}"; rev = "v${version}";
sha256 = "1yadf4vz4m49lpwwwscxs6wf4v9dgqgxkwgwpby9lvb4pv8qbmaf"; sha256 = "18mjmbhvfhr4463dqayl5hdjfy5rx7na1xsq9dsvlaz9qlr5fskw";
}; };
nativeBuildInputs = [ cmake asciidoc ]; nativeBuildInputs = [ cmake asciidoc ];
enableParallelBuilding = true; enableParallelBuilding = true;
postPatch = ''
sed -i 's,''${PACKAGE_PREFIX_DIR}/,,g' ZeroMQConfig.cmake.in
'';
doCheck = false; # fails all the tests (ctest) doCheck = false; # fails all the tests (ctest)
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -8,11 +8,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "Flask-PyMongo"; pname = "Flask-PyMongo";
version = "0.5.2"; version = "2.0.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "aab5ddab8f443e8a011e024f618bb89e078bdcc2274597079469fdf5ddc032b5"; sha256 = "6a02add52ac245064720c2bb8b02074b9a5a0d9498279510ea2a537512fd3fa5";
}; };
checkInputs = [ pytest ]; checkInputs = [ pytest ];

View File

@ -1,12 +1,12 @@
{ lib, buildPythonPackage, fetchPypi, git, gitdb2, mock, nose, ddt }: { lib, buildPythonPackage, fetchPypi, git, gitdb2, mock, nose, ddt }:
buildPythonPackage rec { buildPythonPackage rec {
version = "2.1.9"; version = "2.1.11";
pname = "GitPython"; pname = "GitPython";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0a9in1jfv9ssxhckl6sasw45bhm762y2r5ikgb2pk2g8yqdc6z64"; sha256 = "8237dc5bfd6f1366abeee5624111b9d6879393d84745a507de0fda86043b65a8";
}; };
checkInputs = [ mock nose ddt ]; checkInputs = [ mock nose ddt ];

View File

@ -1,4 +1,4 @@
{ buildPythonPackage, fetchPypi, isPy3k }: { buildPythonPackage, fetchPypi, isPy3k, pytest }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "JPype1"; pname = "JPype1";
@ -11,8 +11,10 @@ buildPythonPackage rec {
patches = [ ./set-compiler-language.patch ]; patches = [ ./set-compiler-language.patch ];
# Test loader complains about non-test module on python3. checkInputs = [ pytest ];
doCheck = !isPy3k;
# ImportError: Failed to import test module: test.testlucene
doCheck = false;
meta = { meta = {
homepage = "https://github.com/originell/jpype/"; homepage = "https://github.com/originell/jpype/";

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "WSME"; pname = "WSME";
version = "0.9.2"; version = "0.9.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "e790ac755a7e36eaa796d3966d3878677896dbc7d1c2685cb85c06b744c21976"; sha256 = "e24fcff24392a0b176e560ffc6591b1f658342bbc992f84e0e8a3c53fd92580a";
}; };
postPatch = '' postPatch = ''

View File

@ -3,11 +3,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "adal"; pname = "adal";
version = "1.0.1"; version = "1.0.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "71b0e9b479320f76af4bcd268f7359580ba2e217228e83ff7529f51a9845f393"; sha256 = "4c020807b3f3cfd90f59203077dd5e1f59671833f8c3c5028ec029ed5072f9ce";
}; };
propagatedBuildInputs = [ requests pyjwt dateutil ]; propagatedBuildInputs = [ requests pyjwt dateutil ];

View File

@ -10,11 +10,11 @@
# wrapped to be able to find aioconsole and any other packages. # wrapped to be able to find aioconsole and any other packages.
buildPythonPackage rec { buildPythonPackage rec {
pname = "aioconsole"; pname = "aioconsole";
version = "0.1.8"; version = "0.1.10";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "5d2c60c0cbf87c663ef3a0b394980ff86f56ebd3c47cc87df6c410e774216c50"; sha256 = "3fab07073648d70d8345e0eb745bd81fcd02b5e2b080c4663faea8c8ab281c0a";
}; };
# hardcodes a test dependency on an old version of pytest-asyncio # hardcodes a test dependency on an old version of pytest-asyncio

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "alembic"; pname = "alembic";
version = "0.9.10"; version = "1.0.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1cd32df9a3b8c1749082ef60ffbe05ff16617b6afadfdabc680dcb9344af33d7"; sha256 = "52d73b1d750f1414fa90c25a08da47b87de1e4ad883935718a8f36396e19e78e";
}; };
buildInputs = [ pytest pytestcov mock coverage ]; buildInputs = [ pytest pytestcov mock coverage ];

View File

@ -1,16 +1,17 @@
{ stdenv, buildPythonPackage, fetchPypi { stdenv, buildPythonPackage, fetchPypi
, pytest }: , pytest, setuptools_scm }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "apipkg"; pname = "apipkg";
version = "1.4"; version = "1.5";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "2e38399dbe842891fe85392601aab8f40a8f4cc5a9053c326de35a1cc0297ac6"; sha256 = "37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6";
}; };
buildInputs = [ pytest ]; buildInputs = [ setuptools_scm ];
checkInputs = [ pytest ];
checkPhase = '' checkPhase = ''
py.test py.test

View File

@ -0,0 +1,21 @@
{ lib
, buildPythonPackage
, fetchPypi
}:
buildPythonPackage rec {
pname = "appnope";
version = "0.1.0";
src = fetchPypi {
inherit pname version;
sha256 = "8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71";
};
meta = {
description = "Disable App Nap on macOS";
homepage = https://pypi.python.org/pypi/appnope;
platforms = lib.platforms.darwin;
license = lib.licenses.bsd3;
};
}

View File

@ -0,0 +1,24 @@
{ lib
, buildPythonPackage
, fetchPypi
, glibcLocales
}:
buildPythonPackage rec {
pname = "Arpeggio";
version = "1.9.0";
src = fetchPypi {
inherit pname version;
sha256 = "a5258b84f76661d558492fa87e42db634df143685a0e51802d59cae7daad8732";
};
# Shall not be needed for next release
LC_ALL = "en_US.UTF-8";
buildInputs = [ glibcLocales ];
meta = {
description = "Packrat parser interpreter";
license = lib.licenses.mit;
};
}

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "astor"; pname = "astor";
version = "0.6.2"; version = "0.7.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "ff6d2e2962d834acb125cc4dcc80c54a8c17c253f4cc9d9c43b5102a560bb75d"; sha256 = "95c30d87a6c2cf89aa628b87398466840f0ad8652f88eb173125a6df8533fb8d";
}; };
# disable tests broken with python3.6: https://github.com/berkerpeksag/astor/issues/89 # disable tests broken with python3.6: https://github.com/berkerpeksag/astor/issues/89

View File

@ -1,32 +1,25 @@
{ lib, fetchPypi, buildPythonPackage, python, logilab_common, six { lib, fetchPypi, buildPythonPackage, pythonOlder, isPyPy
, lazy-object-proxy, wrapt, singledispatch, enum34, pythonOlder , lazy-object-proxy, six, wrapt, typing, typed-ast
, backports_functools_lru_cache , pytestrunner, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "astroid"; pname = "astroid";
version = "1.6.5"; version = "2.0.1";
disabled = pythonOlder "3.4";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "fc9b582dba0366e63540982c3944a9230cbc6f303641c51483fa547dcc22393a"; sha256 = "218e36cf8d98a42f16214e8670819ce307fa707d1dcf7f9af84c7aede1febc7f";
}; };
propagatedBuildInputs = [ logilab_common six lazy-object-proxy wrapt ] # From astroid/__pkginfo__.py
++ lib.optionals (pythonOlder "3.4") [ enum34 singledispatch] propagatedBuildInputs = [ lazy-object-proxy six wrapt ]
++ lib.optionals (pythonOlder "3.3") [ backports_functools_lru_cache ]; ++ lib.optional (pythonOlder "3.5") typing
++ lib.optional (pythonOlder "3.7" && !isPyPy) typed-ast;
postPatch = '' checkInputs = [ pytestrunner pytest ];
cd astroid/tests
for i in $(ls unittest*); do mv -v $i test_$i; done
cd ../..
rm -vf astroid/tests/test_unittest_inference.py
rm -vf astroid/tests/test_unittest_manager.py
'';
checkPhase = ''
${python.interpreter} -m unittest discover
'';
meta = with lib; { meta = with lib; {
description = "A abstract syntax tree for Python with inference support"; description = "A abstract syntax tree for Python with inference support";

View File

@ -4,12 +4,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "asyncssh"; pname = "asyncssh";
version = "1.13.2"; version = "1.13.3";
disabled = pythonOlder "3.4"; disabled = pythonOlder "3.4";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "e4c07577d021c68d4c8e6d1897987424cc25b58e0726f31ff72476a34ddb6deb"; sha256 = "eb5b190badc5cd2a506a1b6ced3e92f948166974eef7d1abab61acc67aa379e6";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -0,0 +1,28 @@
{ lib
, buildPythonPackage
, fetchurl
, stdenv
, darwin
}:
buildPythonPackage rec {
pname = "audiotools";
version = "3.1.1";
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
AudioToolbox
AudioUnit
CoreServices
]);
src = fetchurl {
url = "https://github.com/tuffy/python-audio-tools/archive/v${version}.tar.gz";
sha256 = "0ymlxvqkqhzk4q088qwir3dq0zgwqlrrdfnq7f0iq97g05qshm2c";
};
meta = {
description = "Utilities and Python modules for handling audio";
homepage = "http://audiotools.sourceforge.net/";
license = lib.licenses.gpl2Plus;
};
}

View File

@ -0,0 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, nose
, pillow
, numpy
, ffmpeg_2
, git
, libav
, pkgconfig
}:
buildPythonPackage rec {
pname = "av";
version = "0.4.1";
src = fetchPypi {
inherit pname version;
sha256 = "bf9a8d113392c6a445f424e16f9e64ac53d1db1548731e6326763d555647c24f";
};
buildInputs = [ nose pillow numpy ffmpeg_2 git libav pkgconfig ];
# Because of https://github.com/mikeboers/PyAV/issues/152
doCheck = false;
meta = {
description = "Pythonic bindings for FFmpeg/Libav";
homepage = https://github.com/mikeboers/PyAV/;
license = lib.licenses.bsd2;
};
}

View File

@ -10,11 +10,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aws-sam-translator"; pname = "aws-sam-translator";
version = "1.6.0"; version = "1.6.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1da15d459150eb631af4f400ca336901da6a564b543fe3d7a75169ca2c9f36cb"; sha256 = "23160f717bd65de810fa538b7c145eae4384d10adb460e375d148de7f283bd10";
}; };
# Tests are not included in the PyPI package # Tests are not included in the PyPI package

View File

@ -9,11 +9,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aws-xray-sdk"; pname = "aws-xray-sdk";
version = "1.1.1"; version = "1.1.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "13470b95a2f55036a5d7b6642250d8f3a519a6c454cd91f55778b1bb4bf5b89d"; sha256 = "8ec3c6c82e76c03799ec209ed59642d78f62218db6a430f7e2d20491cac3c5ef";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -9,13 +9,13 @@
if !(pythonOlder "3.3") then null else buildPythonPackage rec { if !(pythonOlder "3.3") then null else buildPythonPackage rec {
pname = "backports.lzma"; pname = "backports.lzma";
version = "0.0.9"; version = "0.0.13";
disabled = isPy3k; disabled = isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "9ba5d94214a79900ee297a594b8e154cd8e4a54d26eb06243c0e2f3ad5286539"; sha256 = "50829db66f0445442f6c796bba0ca62d1f87f54760c4682b6d1489e729a43744";
}; };
buildInputs = [ lzma ]; buildInputs = [ lzma ];

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "backports.unittest_mock"; pname = "backports.unittest_mock";
version = "1.3"; version = "1.4";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0xdkx5wf5a2w2zd2pshk7z2cvbv6db64c1x6v9v1a18ja7bn9nf6"; sha256 = "73df9093bc7a2cc8e7018d08d6983dc5bcb2a47d7e7e107b9e8d0711f1702ef8";
}; };
propagatedBuildInputs = [ mock ]; propagatedBuildInputs = [ mock ];

View File

@ -2,12 +2,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "billiard"; pname = "billiard";
version = "3.5.0.3"; version = "3.5.0.4";
disabled = isPyPy; disabled = isPyPy;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1d7b22bdc47aa52841120fcd22a74ae4fc8c13e9d3935643098184f5788c3ce6"; sha256 = "ed65448da5877b5558f19d2f7f11f8355ea76b3e63e1c0a6059f47cfae5f1c84";
}; };
buildInputs = [ pytest case ]; buildInputs = [ pytest case ];

View File

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "biopython"; pname = "biopython";
version = "1.71"; version = "1.72";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "4f1770a29a5b18fcaca759bbc888083cdde2b301f073439ff640570d4a93e033"; sha256 = "ab6b492443adb90c66267b3d24d602ae69a93c68f4b9f135ba01cb06d36ce5a2";
}; };
propagatedBuildInputs = [ numpy ]; propagatedBuildInputs = [ numpy ];

View File

@ -9,20 +9,20 @@ let
}; };
setuptools_source = fetchPypi { setuptools_source = fetchPypi {
pname = "setuptools"; pname = "setuptools";
version = "39.2.0"; version = "40.0.0";
format = "wheel"; format = "wheel";
sha256 = "8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926"; sha256 = "d68abee4eed409fbe8c302ac4d8429a1ffef912cd047a903b5701c024048dd49";
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "pip"; pname = "pip";
version = "10.0.1"; version = "18.0";
name = "${python.libPrefix}-bootstrapped-${pname}-${version}"; name = "${python.libPrefix}-bootstrapped-${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
format = "wheel"; format = "wheel";
sha256 = "717cdffb2833be8409433a93746744b59505f42146e8d37de6c62b430e25d6d7"; sha256 = "070e4bf493c7c2c9f6a08dd797dd3c066d64074c38e9e8a0fb4e6541f266d96c";
}; };
unpackPhase = '' unpackPhase = ''

View File

@ -11,11 +11,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "botocore"; pname = "botocore";
version = "1.10.57"; version = "1.10.64";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0mif7c12643hac6zxq89gv0wjf4r3vqlmm01bm68psljaj40jnpi"; sha256 = "977e8ab657747b3e60f4b597b9f732cbe467b12ecc52a9c5b2121c0006d41a63";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "zc.buildout"; pname = "zc.buildout";
version = "2.11.5"; version = "2.12.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "537a22715d82362cddd811da08d11a31d30d5161ce7994b208bd85ebb348d122"; sha256 = "1e180b62fd129a68cb3a9ec8eb0ef457e18921269a93e87ef2cc34519415332d";
}; };
patches = [ ./nix.patch ]; patches = [ ./nix.patch ];

View File

@ -2,7 +2,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "bumps"; pname = "bumps";
version = "0.7.8"; version = "0.7.10";
propagatedBuildInputs = [six]; propagatedBuildInputs = [six];
@ -12,7 +12,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "57b71855b7659e9c8dc21722a3ed0b33efb2ead2916b22ced3b83339bcdff1a2"; sha256 = "07917abf7e598f2a42456ca4f704c6da2a5489eaea0b9a7c61ed8a26506737c8";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -2,12 +2,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "buttersink"; pname = "buttersink";
version = "0.6.8"; version = "0.6.9";
disabled = isPy3k; disabled = isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "04gc63kfcqkw4qba5rijqk01xiphf04yk7hky9180ii64v2ip0j3"; sha256 = "c9c05982c44fbb85f17b7ef0e8bee11f375c03d89bcba50cbc2520013512107a";
}; };
propagatedBuildInputs = [ boto crcmod psutil ]; propagatedBuildInputs = [ boto crcmod psutil ];

View File

@ -1,21 +1,30 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, wrapt
, pyserial , pyserial
, nose , nose
, mock }: , mock
, pytest
, pytest-timeout }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "python-can"; pname = "python-can";
version = "2.1.0"; version = "2.2.1";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "4a5c01dd67feeda35f88e6c12ea14ac8cabd426b9be0cc5f9fd083fe90a9dbfc"; sha256 = "b5e93b2ee32bdd597d9d908afe5171c402a04c9678ba47b60f33506738b1375b";
}; };
propagatedBuildInputs = [ pyserial ]; propagatedBuildInputs = [ wrapt pyserial ];
checkInputs = [ nose mock ]; checkInputs = [ nose mock pytest pytest-timeout ];
checkPhase = ''
pytest -k "not test_writer_and_reader \
and not test_reader \
and not test_socketcan_on_ci_server"
'';
meta = with lib; { meta = with lib; {
homepage = https://github.com/hardbyte/python-can; homepage = https://github.com/hardbyte/python-can;

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cement"; pname = "cement";
version = "2.10.2"; version = "2.10.12";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "d50c5980bf3e2456e515178ba097d16e36be0fbcab7811a60589d22f45b64f55"; sha256 = "58efb4eacd9ec977ce797a364a13851de6e42392bbde5287d44294f06c5a2f70";
}; };
# Disable test tests since they depend on a memcached server running on # Disable test tests since they depend on a memcached server running on

View File

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "chainer"; pname = "chainer";
version = "4.1.0"; version = "4.3.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "49a4a691708626f742cc6fc949fce6b313e3379bd64886eb19e002b1122cc329"; sha256 = "a83044256edb1946c47cb9ae687d195c2aa0deaef46ab85a8ffc4a01f7001683";
}; };
checkInputs = [ checkInputs = [

View File

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cheroot"; pname = "cheroot";
version = "6.3.2"; version = "6.3.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "52f915d077ce6201e59c95c4a2ef89617d9b90e6185defb40c03ff3515d2066f"; sha256 = "8e3ac15e1efffc81425a693e99b3c09d7ea4bf947255d8d4c38e2cf76f3a4d25";
}; };
propagatedBuildInputs = [ more-itertools six ]; propagatedBuildInputs = [ more-itertools six ];

View File

@ -7,11 +7,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "CherryPy"; pname = "CherryPy";
version = "16.0.2"; version = "17.0.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "858fbff27235a392026b1d821ad815b587815c94fbb14312e2e64cc23766b9c3"; sha256 = "3cdb5fbae183db49ab1f1a90643d521aa060c93f90001cc99c19d8d15b7a3fb7";
}; };
propagatedBuildInputs = [ cheroot portend routes six ]; propagatedBuildInputs = [ cheroot portend routes six ];

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "click-log"; pname = "click-log";
version = "0.2.1"; version = "0.3.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1r1x85023cslb2pwldd089jjk573mk3w78cnashs77wrx7yz8fj9"; sha256 = "16fd1ca3fc6b16c98cea63acf1ab474ea8e676849dc669d86afafb0ed7003124";
}; };
propagatedBuildInputs = [ click ]; propagatedBuildInputs = [ click ];

View File

@ -5,11 +5,11 @@
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "cmd2"; pname = "cmd2";
version = "0.9.1"; version = "0.9.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1wpw4f9zix30hfncm0hwxjjdx78zq26x3r8s9nvsq9vnxf41xb49"; sha256 = "cffc94ad46425f80dfb243f53f456b11cea3f45e683504a60b64618a6d28b417";
}; };
LC_ALL="en_US.UTF-8"; LC_ALL="en_US.UTF-8";

View File

@ -1,12 +1,12 @@
{ stdenv, buildPythonPackage, fetchPypi, isPy3k, rdkafka, requests, avro3k, avro}: { stdenv, buildPythonPackage, fetchPypi, isPy3k, rdkafka, requests, avro3k, avro}:
buildPythonPackage rec { buildPythonPackage rec {
version = "0.11.4"; version = "0.11.5";
pname = "confluent-kafka"; pname = "confluent-kafka";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "8cf480199685127c9692b0bf1e15eac82e71ae34b7967a016ab31a318741abb1"; sha256 = "bfb5807bfb5effd74f2cfe65e4e3e8564a9e72b25e099f655d8ad0d362a63b9f";
}; };
buildInputs = [ rdkafka requests ] ++ (if isPy3k then [ avro3k ] else [ avro ]) ; buildInputs = [ rdkafka requests ] ++ (if isPy3k then [ avro3k ] else [ avro ]) ;

View File

@ -3,11 +3,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "python-consul"; pname = "python-consul";
version = "1.0.1"; version = "1.1.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0feb7a14b6869bbfa9eb4868e823f040e3642b84e80c39ffdff3a8b7fd7017c4"; sha256 = "168f1fa53948047effe4f14d53fc1dab50192e2a2cf7855703f126f469ea11f4";
}; };
buildInputs = [ requests six pytest ]; buildInputs = [ requests six pytest ];

View File

@ -21,7 +21,7 @@
}: }:
let let
version = "2.2.2"; version = "2.3";
in assert version == cryptography_vectors.version; buildPythonPackage rec { in assert version == cryptography_vectors.version; buildPythonPackage rec {
# also bump cryptography_vectors # also bump cryptography_vectors
pname = "cryptography"; pname = "cryptography";
@ -29,7 +29,7 @@ in assert version == cryptography_vectors.version; buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "9fc295bf69130a342e7a19a39d7bbeb15c0bcaabc7382ec33ef3b2b7d18d2f63"; sha256 = "c132bab45d4bd0fff1d3fe294d92b0a6eb8404e93337b3127bdec9f21de117e6";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View File

@ -5,11 +5,11 @@
buildPythonPackage rec { buildPythonPackage rec {
# also bump cryptography # also bump cryptography
pname = "cryptography_vectors"; pname = "cryptography_vectors";
version = "2.2.2"; version = "2.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "28b52c84bae3a564ce51bfb0753cbe360218bd648c64efa2808c886c18505688"; sha256 = "356a2ded84ae379e556515eec9b68dd74957651a38465d10605bb9fbae280f15";
}; };
# No tests included # No tests included

View File

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cupy"; pname = "cupy";
version = "4.1.0"; version = "4.3.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "3e714fa21401ab1d278b648543fae56fbce97e389076ebf03b4189f88c2d61e0"; sha256 = "ea818ff7f36cf6e5b3d3faef5af36a501c8bdeb78805820afa2999789ed698d5";
}; };
checkInputs = [ checkInputs = [

View File

@ -2,13 +2,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cx_Oracle"; pname = "cx_Oracle";
version = "6.3.1"; version = "6.4.1";
buildInputs = [ odpic ]; buildInputs = [ odpic ];
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0200j6jh80rpgzxmvgcxmkshaj4zadq32g2i97nlwiq3f7q374l7"; sha256 = "3519bf3263c9892aaadc844735aca02d3773ed9b92f97e069cd1726882a7d1b6";
}; };
preConfigure = '' preConfigure = ''

View File

@ -12,11 +12,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dask"; pname = "dask";
version = "0.18.0"; version = "0.18.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "ebaa0f144b43a00e7b9b3b9cb557e8ebada5fcbb982cdaba1802cd8c4c5720f0"; sha256 = "8fba559911788010ecedf58e540004d56d09f7829a1400dd72b74ffedafafabc";
}; };
checkInputs = [ pytest ]; checkInputs = [ pytest ];

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dbf"; pname = "dbf";
version = "0.97.7"; version = "0.97.11";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "855800d12df87855096eeafc58f34c9092407e8faf197f48073e7bc2b1938de0"; sha256 = "8aa5a73d8b140aa3c511a3b5b204a67d391962e90c66b380dd048fcae6ddbb68";
}; };
propagatedBuildInputs = [ aenum ] ++ stdenv.lib.optional (pythonOlder "3.4") [ enum34 ]; propagatedBuildInputs = [ aenum ] ++ stdenv.lib.optional (pythonOlder "3.4") [ enum34 ];

View File

@ -2,11 +2,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "deprecation"; pname = "deprecation";
version = "2.0.4"; version = "2.0.5";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "2c259bfc0237f16bbe36cb32b6d81addd919b8f4bc7253738576816e82841b96"; sha256 = "cbe7d15006bc339709be5e02b14884ecc479639c1a3714a908de3a8ca13b5ca9";
}; };
propagatedBuildInputs = [ packaging ]; propagatedBuildInputs = [ packaging ];

View File

@ -6,11 +6,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dill"; pname = "dill";
version = "0.2.8.1"; version = "0.2.8.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "53a6d7bf74f737a514cb89f72d0cb8b80dbd44a9cbbffaa14bffb57f4d7c3822"; sha256 = "624dc244b94371bb2d6e7f40084228a2edfff02373fe20e018bef1ee92fdd5b3";
}; };
# Messy test suite. Even when running the tests like tox does, it fails # Messy test suite. Even when running the tests like tox does, it fails

View File

@ -2,7 +2,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "django-sites"; pname = "django-sites";
version = "0.9"; version = "0.10";
meta = { meta = {
description = '' description = ''
@ -15,7 +15,7 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "05nrydk4a5a99qrxjrcnacs8nbbq5pfjikdpj4w9yn5yfayp057s"; sha256 = "f6f9ae55a05288a95567f5844222052b6b997819e174f4bde4e7c23763be6fc3";
}; };
propagatedBuildInputs = [ django ]; propagatedBuildInputs = [ django ];

View File

@ -6,13 +6,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "Django"; pname = "Django";
version = "2.0.6"; version = "2.0.7";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "3eb25c99df1523446ec2dc1b00e25eb2ecbdf42c9d8b0b8b32a204a8db9011f8"; sha256 = "97886b8a13bbc33bfeba2ff133035d3eca014e2309dff2b6da0bdfc0b8656613";
}; };
patches = stdenv.lib.optionals withGdal [ patches = stdenv.lib.optionals withGdal [

View File

@ -3,12 +3,12 @@
, ipaddress, backports_ssl_match_hostname, docker_pycreds , ipaddress, backports_ssl_match_hostname, docker_pycreds
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "3.4.0"; version = "3.4.1";
pname = "docker"; pname = "docker";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "e9cc39e24905e67ba9e2df14c94488f5cf030fb72ae1c60de505ce5ea90503f7"; sha256 = "ad077b49660b711d20f50f344f70cfae014d635ef094bf21b0d7df5f0aeedf99";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -6,12 +6,12 @@
, enum34, functools32, , enum34, functools32,
}: }:
buildPythonApplication rec { buildPythonApplication rec {
version = "1.21.2"; version = "1.22.0";
pname = "docker-compose"; pname = "docker-compose";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0b0wihlyk89y6n0mly2vbljzqai1hhs6yzplskwdah2lfn9p3c38"; sha256 = "915cdd0ea7aff349d27a8e0585124ac38695635201770a35612837b25e234677";
}; };
# lots of networking and other fails # lots of networking and other fails

View File

@ -4,11 +4,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dogpile.cache"; pname = "dogpile.cache";
version = "0.6.5"; version = "0.6.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "631197e78b4471bb0e93d0a86264c45736bc9ae43b4205d581dcc34fbe9b5f31"; sha256 = "044d4ea0a0abc72491044f3d3df8e1fc9e8fa7a436c6e9a0da5850d23a0d16c1";
}; };
# Disable concurrency tests that often fail, # Disable concurrency tests that often fail,

View File

@ -3,11 +3,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "dropbox"; pname = "dropbox";
version = "8.9.0"; version = "9.0.0";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "e7eeac47f35e73b34023b7a3089380e74bacd0cce4b57e1e347539dfb53681d2"; sha256 = "385c62c2983c3804ba0064762f9e5f4753ea20a132c727b4961d3b68e1372ac8";
}; };
# Set DROPBOX_TOKEN environment variable to a valid token. # Set DROPBOX_TOKEN environment variable to a valid token.

View File

@ -4,12 +4,12 @@
, git, glibcLocales }: , git, glibcLocales }:
buildPythonPackage rec { buildPythonPackage rec {
version = "0.19.3"; version = "0.19.5";
pname = "dulwich"; pname = "dulwich";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "0d1ab6adf5e8e9bc30cce6e2f924ca06e50241fb1bb17a585fc8d98e3c09c4a4"; sha256 = "34f99e575fe1f1e89cca92cec1ddd50b4991199cb00609203b28df9eb83ce259";
}; };
LC_ALL = "en_US.UTF-8"; LC_ALL = "en_US.UTF-8";

View File

@ -1,5 +1,5 @@
{ buildPythonPackage, fetchFromGitHub, pillow, click, dlib, numpy { buildPythonPackage, fetchFromGitHub, pillow, click, dlib, numpy
, face_recognition_models, stdenv, flake8, tox, pytest, glibcLocales , face_recognition_models, stdenv, flake8, pytest, glibcLocales
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -19,7 +19,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ]; propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ];
checkInputs = [ flake8 tox pytest glibcLocales ]; checkInputs = [ flake8 pytest glibcLocales ];
checkPhase = '' checkPhase = ''
LC_ALL="en_US.UTF-8" py.test LC_ALL="en_US.UTF-8" py.test
''; '';

View File

@ -8,11 +8,11 @@ assert pythonOlder "3.3" -> ipaddress != null;
buildPythonPackage rec { buildPythonPackage rec {
pname = "Faker"; pname = "Faker";
version = "0.8.16"; version = "0.8.17";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "04645d946256b835c675c1cef7c03817a164b0c4e452018fd50b212ddff08c22"; sha256 = "0e9a1227a3a0f3297a485715e72ee6eb77081b17b629367042b586e38c03c867";
}; };
checkInputs = [ checkInputs = [

Some files were not shown because too many files have changed in this diff Show More