Merge staging-next into staging

This commit is contained in:
Frederik Rietdijk 2020-09-22 18:31:56 +02:00
commit 7bff759fac
142 changed files with 3478 additions and 882 deletions

View File

@ -567,7 +567,7 @@ test run would be:
checkPhase = "pytest";
```
However, many repositories' test suites do not translate well to nix's build
However, many repositories' test suites do not translate well to nix's build
sandbox, and will generally need many tests to be disabled.
To filter tests using pytest, one can do the following:

View File

@ -203,40 +203,59 @@ rec {
/* If this option is true, attrsets like { __pretty = fn; val = ; }
will use fn to convert val to a pretty printed representation.
(This means fn is type Val -> String.) */
allowPrettyValues ? false
}@args: v: with builtins;
allowPrettyValues ? false,
/* If this option is true, the output is indented with newlines for attribute sets and lists */
multiline ? true
}@args: let
go = indent: v: with builtins;
let isPath = v: typeOf v == "path";
introSpace = if multiline then "\n${indent} " else " ";
outroSpace = if multiline then "\n${indent}" else " ";
in if isInt v then toString v
else if isFloat v then "~${toString v}"
else if isString v then ''"${libStr.escape [''"''] v}"''
else if isString v then
let
# Separate a string into its lines
newlineSplits = filter (v: ! isList v) (builtins.split "\n" v);
# For a '' string terminated by a \n, which happens when the closing '' is on a new line
multilineResult = "''" + introSpace + concatStringsSep introSpace (lib.init newlineSplits) + outroSpace + "''";
# For a '' string not terminated by a \n, which happens when the closing '' is not on a new line
multilineResult' = "''" + introSpace + concatStringsSep introSpace newlineSplits + "''";
# For single lines, replace all newlines with their escaped representation
singlelineResult = "\"" + libStr.escape [ "\"" ] (concatStringsSep "\\n" newlineSplits) + "\"";
in if multiline && length newlineSplits > 1 then
if lib.last newlineSplits == "" then multilineResult else multilineResult'
else singlelineResult
else if true == v then "true"
else if false == v then "false"
else if null == v then "null"
else if isPath v then toString v
else if isList v then "[ "
+ libStr.concatMapStringsSep " " (toPretty args) v
+ " ]"
else if isList v then
if v == [] then "[ ]"
else "[" + introSpace
+ libStr.concatMapStringsSep introSpace (go (indent + " ")) v
+ outroSpace + "]"
else if isFunction v then
let fna = lib.functionArgs v;
showFnas = concatStringsSep ", " (libAttr.mapAttrsToList
(name: hasDefVal: if hasDefVal then name + "?" else name)
fna);
in if fna == {} then "<function>"
else "<function, args: {${showFnas}}>"
else if isAttrs v then
# apply pretty values if allowed
if attrNames v == [ "__pretty" "val" ] && allowPrettyValues
then v.__pretty v.val
# TODO: there is probably a better representation?
else if v == {} then "{ }"
else if v ? type && v.type == "derivation" then
"<δ:${v.name}>"
# "<δ:${concatStringsSep "," (builtins.attrNames v)}>"
else "{ "
+ libStr.concatStringsSep " " (libAttr.mapAttrsToList
"<derivation ${v.drvPath}>"
else "{" + introSpace
+ libStr.concatStringsSep introSpace (libAttr.mapAttrsToList
(name: value:
"${toPretty args name} = ${toPretty args value};") v)
+ " }"
else if isFunction v then
let fna = lib.functionArgs v;
showFnas = concatStringsSep "," (libAttr.mapAttrsToList
(name: hasDefVal: if hasDefVal then "(${name})" else name)
fna);
in if fna == {} then "<λ>"
else "<λ:{${showFnas}}>"
"${libStr.escapeNixIdentifier name} = ${go (indent + " ") value};") v)
+ outroSpace + "}"
else abort "generators.toPretty: should never happen (v = ${v})";
in go "";
# PLIST handling
toPlist = {}: v: let

View File

@ -107,6 +107,10 @@ rec {
/* "Merge" option definitions by checking that they all have the same value. */
mergeEqualOption = loc: defs:
if defs == [] then abort "This case should never happen."
# Return early if we only have one element
# This also makes it work for functions, because the foldl' below would try
# to compare the first element with itself, which is false for functions
else if length defs == 1 then (elemAt defs 0).value
else foldl' (val: def:
if def.value != val then
throw "The option `${showOption loc}' has conflicting definitions, in ${showFiles (getFiles defs)}."

View File

@ -445,32 +445,90 @@ runTests {
expected = builtins.toJSON val;
};
testToPretty = {
expr = mapAttrs (const (generators.toPretty {})) rec {
testToPretty =
let
deriv = derivation { name = "test"; builder = "/bin/sh"; system = builtins.currentSystem; };
in {
expr = mapAttrs (const (generators.toPretty { multiline = false; })) rec {
int = 42;
float = 0.1337;
bool = true;
emptystring = "";
string = ''fno"rd'';
newlinestring = "\n";
path = /. + "/foo";
null_ = null;
function = x: x;
functionArgs = { arg ? 4, foo }: arg;
list = [ 3 4 function [ false ] ];
emptylist = [];
attrs = { foo = null; "foo bar" = "baz"; };
drv = derivation { name = "test"; system = builtins.currentSystem; };
emptyattrs = {};
drv = deriv;
};
expected = rec {
int = "42";
float = "~0.133700";
bool = "true";
emptystring = ''""'';
string = ''"fno\"rd"'';
newlinestring = "\"\\n\"";
path = "/foo";
null_ = "null";
function = "<λ>";
functionArgs = "<λ:{(arg),foo}>";
function = "<function>";
functionArgs = "<function, args: {arg?, foo}>";
list = "[ 3 4 ${function} [ false ] ]";
attrs = "{ \"foo\" = null; \"foo bar\" = \"baz\"; }";
drv = "<δ:test>";
emptylist = "[ ]";
attrs = "{ foo = null; \"foo bar\" = \"baz\"; }";
emptyattrs = "{ }";
drv = "<derivation ${deriv.drvPath}>";
};
};
testToPrettyMultiline = {
expr = mapAttrs (const (generators.toPretty { })) rec {
list = [ 3 4 [ false ] ];
attrs = { foo = null; bar.foo = "baz"; };
newlinestring = "\n";
multilinestring = ''
hello
there
test
'';
multilinestring' = ''
hello
there
test'';
};
expected = rec {
list = ''
[
3
4
[
false
]
]'';
attrs = ''
{
bar = {
foo = "baz";
};
foo = null;
}'';
newlinestring = "''\n \n''";
multilinestring = ''
'''
hello
there
test
''''';
multilinestring' = ''
'''
hello
there
test''''';
};
};

View File

@ -233,6 +233,35 @@ checkConfigError 'infinite recursion encountered' config.foo ./freeform-attrsOf.
checkConfigError 'The option .* is used but not defined' config.foo ./freeform-lazyAttrsOf.nix ./freeform-unstr-dep-str.nix
checkConfigOutput 24 config.foo ./freeform-lazyAttrsOf.nix ./freeform-unstr-dep-str.nix ./define-value-string.nix
## types.anything
# Check that attribute sets are merged recursively
checkConfigOutput null config.value.foo ./types-anything/nested-attrs.nix
checkConfigOutput null config.value.l1.foo ./types-anything/nested-attrs.nix
checkConfigOutput null config.value.l1.l2.foo ./types-anything/nested-attrs.nix
checkConfigOutput null config.value.l1.l2.l3.foo ./types-anything/nested-attrs.nix
# Attribute sets that are coercible to strings shouldn't be recursed into
checkConfigOutput foo config.value.outPath ./types-anything/attrs-coercible.nix
# Multiple lists aren't concatenated together
checkConfigError 'The option .* has conflicting definitions' config.value ./types-anything/lists.nix
# Check that all equalizable atoms can be used as long as all definitions are equal
checkConfigOutput 0 config.value.int ./types-anything/equal-atoms.nix
checkConfigOutput false config.value.bool ./types-anything/equal-atoms.nix
checkConfigOutput '""' config.value.string ./types-anything/equal-atoms.nix
checkConfigOutput / config.value.path ./types-anything/equal-atoms.nix
checkConfigOutput null config.value.null ./types-anything/equal-atoms.nix
checkConfigOutput 0.1 config.value.float ./types-anything/equal-atoms.nix
# Functions can't be merged together
checkConfigError "The option .* has conflicting definitions" config.value.multiple-lambdas ./types-anything/functions.nix
checkConfigOutput '<LAMBDA>' config.value.single-lambda ./types-anything/functions.nix
# Check that all mk* modifiers are applied
checkConfigError 'attribute .* not found' config.value.mkiffalse ./types-anything/mk-mods.nix
checkConfigOutput '{ }' config.value.mkiftrue ./types-anything/mk-mods.nix
checkConfigOutput 1 config.value.mkdefault ./types-anything/mk-mods.nix
checkConfigOutput '{ }' config.value.mkmerge ./types-anything/mk-mods.nix
checkConfigOutput true config.value.mkbefore ./types-anything/mk-mods.nix
checkConfigOutput 1 config.value.nested.foo ./types-anything/mk-mods.nix
checkConfigOutput baz config.value.nested.bar.baz ./types-anything/mk-mods.nix
cat <<EOF
====== module tests ======
$pass Pass

View File

@ -0,0 +1,12 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config.value = {
outPath = "foo";
err = throw "err";
};
}

View File

@ -0,0 +1,26 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config = lib.mkMerge [
{
value.int = 0;
value.bool = false;
value.string = "";
value.path = /.;
value.null = null;
value.float = 0.1;
}
{
value.int = 0;
value.bool = false;
value.string = "";
value.path = /.;
value.null = null;
value.float = 0.1;
}
];
}

View File

@ -0,0 +1,17 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config = lib.mkMerge [
{
value.single-lambda = x: x;
value.multiple-lambdas = x: x;
}
{
value.multiple-lambdas = x: x;
}
];
}

View File

@ -0,0 +1,16 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config = lib.mkMerge [
{
value = [ null ];
}
{
value = [ null ];
}
];
}

View File

@ -0,0 +1,44 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config = lib.mkMerge [
{
value.mkiffalse = lib.mkIf false {};
}
{
value.mkiftrue = lib.mkIf true {};
}
{
value.mkdefault = lib.mkDefault 0;
}
{
value.mkdefault = 1;
}
{
value.mkmerge = lib.mkMerge [
{}
];
}
{
value.mkbefore = lib.mkBefore true;
}
{
value.nested = lib.mkMerge [
{
foo = lib.mkDefault 0;
bar = lib.mkIf false 0;
}
(lib.mkIf true {
foo = lib.mkIf true (lib.mkForce 1);
bar = {
baz = lib.mkDefault "baz";
};
})
];
}
];
}

View File

@ -0,0 +1,22 @@
{ lib, ... }: {
options.value = lib.mkOption {
type = lib.types.anything;
};
config = lib.mkMerge [
{
value.foo = null;
}
{
value.l1.foo = null;
}
{
value.l1.l2.foo = null;
}
{
value.l1.l2.l3.foo = null;
}
];
}

View File

@ -104,6 +104,42 @@ rec {
# When adding new types don't forget to document them in
# nixos/doc/manual/development/option-types.xml!
types = rec {
anything = mkOptionType {
name = "anything";
description = "anything";
check = value: true;
merge = loc: defs:
let
getType = value:
if isAttrs value && isCoercibleToString value
then "stringCoercibleSet"
else builtins.typeOf value;
# Returns the common type of all definitions, throws an error if they
# don't have the same type
commonType = foldl' (type: def:
if getType def.value == type
then type
else throw "The option `${showOption loc}' has conflicting option types in ${showFiles (getFiles defs)}"
) (getType (head defs).value) defs;
mergeFunction = {
# Recursively merge attribute sets
set = (attrsOf anything).merge;
# Safe and deterministic behavior for lists is to only accept one definition
# listOf only used to apply mkIf and co.
list =
if length defs > 1
then throw "The option `${showOption loc}' has conflicting definitions, in ${showFiles (getFiles defs)}."
else (listOf anything).merge;
# This is the type of packages, only accept a single definition
stringCoercibleSet = mergeOneOption;
# Otherwise fall back to only allowing all equal definitions
}.${commonType} or mergeEqualOption;
in mergeFunction loc defs;
};
unspecified = mkOptionType {
name = "unspecified";
};

View File

@ -1224,6 +1224,12 @@
githubId = 3043718;
name = "Brett Lyons";
};
bryanasdev000 = {
email = "bryanasdev000@gmail.com";
github = "bryanasdev000";
githubId = 53131727;
name = "Bryan Albuquerque";
};
btlvr = {
email = "btlvr@protonmail.com";
github = "btlvr";
@ -1439,6 +1445,12 @@
githubId = 89596;
name = "Florian Friesdorf";
};
charvp = {
email = "nixpkgs@cvpetegem.be";
github = "charvp";
githubId = 42220376;
name = "Charlotte Van Petegem";
};
chattered = {
email = "me@philscotted.com";
name = "Phil Scott";

View File

@ -21,16 +21,6 @@
</para>
<variablelist>
<varlistentry>
<term>
<varname>types.attrs</varname>
</term>
<listitem>
<para>
A free-form attribute set.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>types.bool</varname>
@ -64,6 +54,64 @@
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>types.anything</varname>
</term>
<listitem>
<para>
A type that accepts any value and recursively merges attribute sets together.
This type is recommended when the option type is unknown.
<example xml:id="ex-types-anything">
<title><literal>types.anything</literal> Example</title>
<para>
Two definitions of this type like
<programlisting>
{
str = lib.mkDefault "foo";
pkg.hello = pkgs.hello;
fun.fun = x: x + 1;
}
</programlisting>
<programlisting>
{
str = lib.mkIf true "bar";
pkg.gcc = pkgs.gcc;
fun.fun = lib.mkForce (x: x + 2);
}
</programlisting>
will get merged to
<programlisting>
{
str = "bar";
pkg.gcc = pkgs.gcc;
pkg.hello = pkgs.hello;
fun.fun = x: x + 2;
}
</programlisting>
</para>
</example>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<varname>types.attrs</varname>
</term>
<listitem>
<para>
A free-form attribute set.
<warning><para>
This type will be deprecated in the future because it doesn't recurse
into attribute sets, silently drops earlier attribute definitions, and
doesn't discharge <literal>lib.mkDefault</literal>, <literal>lib.mkIf
</literal> and co. For allowing arbitrary attribute sets, prefer
<literal>types.attrsOf types.anything</literal> instead which doesn't
have these problems.
</para></warning>
</para>
</listitem>
</varlistentry>
</variablelist>
<para>

View File

@ -22,10 +22,10 @@ let
src = ./nixos-install.sh;
inherit (pkgs) runtimeShell;
nix = config.nix.package.out;
path = makeBinPath [
pkgs.nixUnstable
path = makeBinPath [
pkgs.nixUnstable
pkgs.jq
nixos-enter
nixos-enter
];
};

View File

@ -629,7 +629,9 @@ in {
config = mkIf cfg.enable {
assertions = [
( let
legacy = builtins.match "(.*):(.*)" cfg.listenAddress;
# Match something with dots (an IPv4 address) or something ending in
# a square bracket (an IPv6 addresses) followed by a port number.
legacy = builtins.match "(.*\\..*|.*]):([[:digit:]]+)" cfg.listenAddress;
in {
assertion = legacy == null;
message = ''

View File

@ -90,4 +90,5 @@ in with pkgs; {
kafka_2_2 = makeKafkaTest "kafka_2_2" apacheKafka_2_2;
kafka_2_3 = makeKafkaTest "kafka_2_3" apacheKafka_2_3;
kafka_2_4 = makeKafkaTest "kafka_2_4" apacheKafka_2_4;
kafka_2_5 = makeKafkaTest "kafka_2_5" apacheKafka_2_5;
}

View File

@ -31,8 +31,13 @@ import ./make-test-python.nix ({ pkgs, ...} :
# start signal desktop
machine.execute("su - alice -c signal-desktop &")
# wait for the "Link your phone to Signal Desktop" message
machine.wait_for_text("Link your phone to Signal Desktop")
# Wait for the Signal window to appear. Since usually the tests
# are run sandboxed and therfore with no internet, we can not wait
# for the message "Link your phone ...". Nor should we wait for
# the "Failed to connect to server" message, because when manually
# running this test it will be not sandboxed.
machine.wait_for_text("Signal")
machine.wait_for_text("File Edit View Window Help")
machine.screenshot("signal_desktop")
'';
})

View File

@ -2,14 +2,14 @@
, usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
let
version = "0.5.1";
version = "0.5.2";
in stdenv.mkDerivation {
pname = "openmpt123";
inherit version;
src = fetchurl {
url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
sha256 = "1vpalfsrkbx4vyrh1qy564lr91jwdxlbjivv5gzf8zcywxasf0xa";
sha256 = "1cwpc4j90dpxa2siia68rg9qwwm2xk6bhxnslfjj364507jy6s4l";
};
enableParallelBuilding = true;

View File

@ -64,7 +64,7 @@ let
in
stdenv.mkDerivation {
pname = "spotify";
pname = "spotify-unwrapped";
inherit version;
# fetch from snapcraft instead of the debian repository most repos fetch from.

View File

@ -0,0 +1,31 @@
{ symlinkJoin
, lib
, spotify-unwrapped
, makeWrapper
# High-DPI support: Spotify's --force-device-scale-factor argument; not added
# if `null`, otherwise, should be a number.
, deviceScaleFactor ? null
}:
symlinkJoin {
name = "spotify-${spotify-unwrapped.version}";
paths = [ spotify-unwrapped.out ];
nativeBuildInputs = [ makeWrapper ];
preferLocalBuild = true;
passthru.unwrapped = spotify-unwrapped;
postBuild = ''
wrapProgram $out/bin/spotify \
${lib.optionalString (deviceScaleFactor != null) ''
--add-flags ${lib.escapeShellArg "--force-device-scale-factor=${
builtins.toString deviceScaleFactor
}"}
''}
'';
meta = spotify-unwrapped.meta // {
priority = (spotify-unwrapped.meta.priority or 0) - 1;
};
}

View File

@ -87,7 +87,7 @@ stdenv.mkDerivation rec {
homepage = "https://bitcoin.org/";
downloadPage = "https://bitcoincore.org/bin/bitcoin-core-${version}/";
changelog = "https://bitcoincore.org/en/releases/${version}/";
maintainers = with maintainers; [ roconnor AndersonTorres ];
maintainers = with maintainers; [ roconnor ];
license = licenses.mit;
platforms = platforms.unix;
};

View File

@ -4,11 +4,11 @@
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "clightning";
version = "0.9.0-1";
version = "0.9.1";
src = fetchurl {
url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
sha256 = "01cwcrqysqsrf96bbbj0grm8j5m46a3acgwy0kzxdx05jdzld9sc";
sha256 = "4923e2fa001cfc2403d1bed368710499d5def322e6384b8eea2bd39d3351a417";
};
enableParallelBuilding = true;

View File

@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
private as you make transactions without waits, similar to cash.
'';
homepage = "https://www.dash.org";
maintainers = with maintainers; [ AndersonTorres ];
maintainers = with maintainers; [ ];
platforms = platforms.unix;
license = licenses.mit;
};

View File

@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
'';
homepage = "http://www.dogecoin.com/";
license = licenses.mit;
maintainers = with maintainers; [ edwtjo offline AndersonTorres ];
maintainers = with maintainers; [ edwtjo offline ];
platforms = platforms.linux;
};
}

View File

@ -50,6 +50,6 @@ mkDerivation rec {
platforms = platforms.unix;
license = licenses.mit;
broken = stdenv.isDarwin;
maintainers = with maintainers; [ offline AndersonTorres ];
maintainers = with maintainers; [ offline ];
};
}

View File

@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
homepage = "https://namecoin.org";
license = licenses.mit;
maintainers = with maintainers; [ doublec AndersonTorres infinisil ];
maintainers = with maintainers; [ doublec infinisil ];
platforms = platforms.linux;
};
}

View File

@ -19,9 +19,9 @@ let
sha256Hash = "sha256-qbxmR9g8DSKzcP09bJuc+am79BSXWG39UQxFEb1bZ88=";
};
latestVersion = { # canary & dev
version = "4.2.0.10"; # "Android Studio 4.2 Canary 10"
build = "202.6811877";
sha256Hash = "sha256-ZKfETCECIOq+q/5N+I13ceb5dqGMGTXMGrqSeTL9KCc=";
version = "4.2.0.11"; # "Android Studio 4.2 Canary 11"
build = "202.6825553";
sha256Hash = "sha256-la3J0mgUxJA50l1PLr9FPMKI5QYkoBRriVyu3aVq7io=";
};
in {
# Attributes are named by their corresponding release channels

View File

@ -0,0 +1,36 @@
{ stdenv, fetchurl, makeWrapper, jdk }:
stdenv.mkDerivation rec {
pname = "bluej";
version = "4.2.2";
src = fetchurl {
# We use the deb here. First instinct might be to go for the "generic" JAR
# download, but that is actually a graphical installer that is much harder
# to unpack than the deb.
url = "https://www.bluej.org/download/files/BlueJ-linux-${builtins.replaceStrings ["."] [""] version}.deb";
sha256 = "5c2241f2208e98fcf9aad7c7a282bcf16e6fd543faa5fdb0b99b34d1023113c3";
};
nativeBuildInputs = [ makeWrapper ];
unpackPhase = ''
ar xf $src
tar xf data.tar.xz
'';
installPhase = ''
mkdir -p $out
cp -r usr/* $out
makeWrapper ${jdk}/bin/java $out/bin/bluej \
--add-flags "-Djavafx.embed.singleThread=true -Dawt.useSystemAAFontSettings=on -Xmx512M -cp \"$out/share/bluej/bluej.jar\" bluej.Boot"
'';
meta = with stdenv.lib; {
description = "A simple integrated development environment for Java";
homepage = "https://www.bluej.org/";
license = licenses.gpl2ClasspathPlus;
maintainers = [ maintainers.charvp ];
platforms = platforms.unix;
};
}

View File

@ -1,26 +1,32 @@
{ stdenv, fetchFromGitHub, cmake, qt4 }:
{ lib, mkDerivation, fetchpatch, fetchFromGitHub, cmake, qttools, qtwebkit }:
stdenv.mkDerivation rec {
mkDerivation rec {
pname = "fontmatrix";
version = "0.6.0";
version = "0.6.0-qt5";
src = fetchFromGitHub {
owner = "fontmatrix";
owner = "fcoiffie";
repo = "fontmatrix";
rev = "v${version}";
sha256 = "0aqndj1jhm6hjpwmj1qm92z2ljh7w78a5ff5ag47qywqha1ngn05";
rev = "1ff8382d8c85c18d9962918f461341ff4fe21993";
sha256 = "0yx1gbsjj9ddq1kiqplif1w5x5saw250zbmhmd4phqmaqzr60w0h";
};
buildInputs = [ qt4 ];
# Add missing QAction include
patches = [ (fetchpatch {
url = "https://github.com/fcoiffie/fontmatrix/commit/dc6de8c414ae21516b72daead79c8db88309b102.patch";
sha256 = "092860fdyf5gq67jqfxnlgwzjgpizi6j0njjv3m62aiznrhig7c8";
})];
buildInputs = [ qttools qtwebkit ];
nativeBuildInputs = [ cmake ];
hardeningDisable = [ "format" ];
meta = with stdenv.lib; {
meta = with lib; {
description = "Fontmatrix is a free/libre font explorer for Linux, Windows and Mac";
homepage = "https://github.com/fontmatrix/fontmatrix";
license = licenses.gpl2;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
pname = "fuzzel";
version = "1.4.1";
version = "1.4.2";
src = fetchgit {
url = "https://codeberg.org/dnkl/fuzzel";
rev = "${version}";
sha256 = "18pg46xry7q4i19mpjfz942c6vkqlrj4q18p85zldzv9gdsxnm9c";
sha256 = "0c0p9spklzmy9f7abz3mvw0vp6zgnk3ns1i6ks95ljjb3kqy9vs2";
};
nativeBuildInputs = [ pkg-config meson ninja scdoc git ];
@ -19,5 +19,6 @@ stdenv.mkDerivation rec {
license = licenses.mit;
maintainers = with maintainers; [ fionera ];
platforms = with platforms; linux;
changelog = "https://codeberg.org/dnkl/fuzzel/releases/tag/${version}";
};
}

View File

@ -2,11 +2,11 @@
python3Packages.buildPythonApplication rec {
pname = "gallery_dl";
version = "1.14.5";
version = "1.15.0";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "03xkrmwk4bvkqai9ghdm5arw9i4zhnfbabdn99lr1cv5prq7m4p3";
sha256 = "1g9hmb5637x8bhm2wzarqnxzj0i93fcdm1myvld2d97a2d32hy6m";
};
doCheck = false;

View File

@ -36,6 +36,6 @@ stdenv.mkDerivation rec {
description = "Quick access to current weather conditions and forecasts";
license = licenses.isc;
maintainers = [ maintainers.matthiasbeyer ];
platforms = platforms.linux; # my only platform
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@ -2,7 +2,7 @@
let
pname = "Sylk";
version = "2.8.2";
version = "2.8.4";
in
appimageTools.wrapType2 rec {
@ -10,7 +10,7 @@ appimageTools.wrapType2 rec {
src = fetchurl {
url = "http://download.ag-projects.com/Sylk/Sylk-${version}-x86_64.AppImage";
hash = "sha256:0figpfm5cgbryq6v26k9gj42zgbk335bsa3bzyxpvz2slq8rzb2y";
hash = "sha256-2s4ezyszNZD9YBj69f62aqtJWwFeida6G/fOA1exu2M=";
};
profile = ''

View File

@ -21,7 +21,7 @@
, pulseaudioSupport ? stdenv.isLinux, libpulseaudio
, ffmpegSupport ? true
, gtk3Support ? true, gtk2, gtk3, wrapGAppsHook
, waylandSupport ? true, libxkbcommon
, waylandSupport ? true, libxkbcommon, pipewire
, gssSupport ? true, kerberos
## privacy-related options
@ -94,6 +94,11 @@ stdenv.mkDerivation ({
patches = [
./env_var_for_system_dir.patch
(fetchpatch {
# https://src.fedoraproject.org/rpms/firefox/blob/master/f/firefox-pipewire-0-3.patch
url = "https://src.fedoraproject.org/rpms/firefox/raw/e99b683a352cf5b2c9ff198756859bae408b5d9d/f/firefox-pipewire-0-3.patch";
sha256 = "0qc62di5823r7ly2lxkclzj9rhg2z7ms81igz44nv0fzv3dszdab";
})
]
++ patches;
@ -123,7 +128,7 @@ stdenv.mkDerivation ({
++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed
++ lib.optional gtk3Support gtk3
++ lib.optional gssSupport kerberos
++ lib.optional waylandSupport libxkbcommon
++ lib.optionals waylandSupport [ libxkbcommon pipewire ]
++ lib.optionals stdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos
AVFoundation MediaToolbox CoreLocation
Foundation libobjc AddressBook cups ];
@ -135,6 +140,11 @@ stdenv.mkDerivation ({
postPatch = ''
rm -rf obj-x86_64-pc-linux-gnu
# needed for enabling webrtc+pipewire
substituteInPlace \
media/webrtc/trunk/webrtc/modules/desktop_capture/desktop_capture_generic_gn/moz.build \
--replace /usr/include ${pipewire.dev}/include
'' + lib.optionalString (lib.versionAtLeast ffversion "80") ''
substituteInPlace dom/system/IOUtils.h \
--replace '#include "nspr/prio.h"' '#include "prio.h"'

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "luakit";
version = "2.1";
version = "2.2";
src = fetchFromGitHub {
owner = "luakit";
repo = "luakit";
rev = version;
sha256 = "05mm76g72fs48410pbij4mw0s3nqji3r7f3mnr2fvhv02xqj05aa";
sha256 = "sha256-rpHW5VyntmmtekdNcZMIw8Xdv4cfiqJaaHj4ZFFGjYc=";
};
nativeBuildInputs = [
@ -54,9 +54,17 @@ stdenv.mkDerivation rec {
'';
meta = with stdenv.lib; {
description = "Fast, small, webkit based browser framework extensible in Lua";
description = "Fast, small, webkit-based browser framework extensible in Lua";
longDescription = ''
Luakit is a highly configurable browser framework based on the WebKit web
content engine and the GTK+ toolkit. It is very fast, extensible with Lua,
and licensed under the GNU GPLv3 license. It is primarily targeted at
power users, developers and anyone who wants to have fine-grained control
over their web browsers behaviour and interface.
'';
homepage = "https://luakit.github.io/";
license = licenses.gpl3;
platforms = platforms.linux; # Only tested linux
license = licenses.gpl3Only;
platforms = platforms.unix;
maintainers = [ maintainers.AndersonTorres ];
};
}

View File

@ -16,18 +16,19 @@
, wrapGAppsHook
, gobject-introspection
, glib-networking
, librest
, python3
}:
stdenv.mkDerivation rec {
version = "1.1.0";
version = "1.2.1";
pname = "cawbird";
src = fetchFromGitHub {
owner = "IBBoard";
repo = "cawbird";
rev = "v${version}";
sha256 = "0zghryx5y47ff8kxa65lvgmy1cnhvhazxml7r1lxixxj3d88wh7p";
sha256 = "11s8x48syy5wjj23ab4bn5jxhi7l5sx7aw6q2ggk99v042hxh3h2";
};
nativeBuildInputs = [
@ -50,6 +51,7 @@ stdenv.mkDerivation rec {
dconf
gspell
glib-networking
librest
] ++ (with gst_all_1; [
gstreamer
gst-plugins-base

View File

@ -1,25 +0,0 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
pname = "heptio-ark";
version = "0.10.0";
goPackagePath = "github.com/heptio/ark";
src = fetchFromGitHub {
rev = "v${version}";
owner = "heptio";
repo = "ark";
sha256 = "18h9hvp95va0hyl268gnzciwy1dqmc57bpifbj885870rdfp0ffv";
};
excludedPackages = [ "issue-template-gen" ];
meta = with stdenv.lib; {
description = "A utility for managing disaster recovery, specifically for your Kubernetes cluster resources and persistent volumes";
homepage = "https://heptio.github.io/ark/";
license = licenses.asl20;
maintainers = [maintainers.mbode];
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,34 @@
{ stdenv, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "popeye";
version = "0.8.10";
src = fetchFromGitHub {
rev = "v${version}";
owner = "derailed";
repo = "popeye";
sha256 = "1cx39xipvvhb12nhvg7kfssnqafajni662b070ynlw8p870bj0sn";
};
buildFlagsArray = ''
-ldflags=
-s -w
-X github.com/derailed/popeye/cmd.version=${version}
-X github.com/derailed/popeye/cmd.commit=b7a876eafd4f7ec5683808d8d6880c41c805056a
-X github.com/derailed/popeye/cmd.date=2020-08-25T23:02:30Z
'';
vendorSha256 = "0b2bawc9wnqwgvrv614rq5y4ns9di65zqcbb199y2ijpsaw5d9a7";
doCheck = false;
meta = with stdenv.lib; {
description = "A Kubernetes cluster resource sanitizer";
homepage = "https://github.com/derailed/popeye";
changelog = "https://github.com/derailed/popeye/releases/tag/v${version}";
license = licenses.asl20;
maintainers = [ maintainers.bryanasdev000 ];
platforms = platforms.linux;
};
}

View File

@ -27,6 +27,11 @@ buildPythonApplication rec {
sha256 = "161mszmxqp3wypnda48ama2mmq8yjilkxahwc1mxjwzy1n19sn7v";
};
postPatch = ''
substituteInPlace setup.py \
--replace "IPython==7.16.1" "IPython"
'';
checkInputs = [ pytestCheckHook ];
disabledTests = [

View File

@ -0,0 +1,45 @@
{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
pname = "velero";
version = "1.5.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "vmware-tanzu";
repo = "velero";
sha256 = "1rmymwmglcia5j0c692g34hlffba1yqs2s0iyjpafma2zabrcnai";
};
buildFlagsArray = ''
-ldflags=
-s -w
-X github.com/vmware-tanzu/velero/pkg/buildinfo.Version=${version}
-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitSHA=87d86a45a6ca66c6c942c7c7f08352e26809426c
-X github.com/vmware-tanzu/velero/pkg/buildinfo.GitTreeState=clean
'';
vendorSha256 = "1izl7z689jf3i3wax7rfpk0jjly7nsi7vzasy1j9v5cwjy2d5z4v";
excludedPackages = [ "issue-template-gen" ];
doCheck = false;
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
$out/bin/velero completion bash > helm.bash
$out/bin/velero completion zsh > helm.zsh
installShellCompletion helm.{bash,zsh}
'';
meta = with stdenv.lib; {
description =
"A utility for managing disaster recovery, specifically for your Kubernetes cluster resources and persistent volumes";
homepage = "https://velero.io/";
changelog =
"https://github.com/vmware-tanzu/velero/releases/tag/v${version}";
license = licenses.asl20;
maintainers = [ maintainers.mbode maintainers.bryanasdev000 ];
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,82 @@
{ stdenv
, fetchurl
, fetchpatch
# native
, meson
, ninja
, pkg-config
, gettext
, desktop-file-utils
, appstream-glib
, wrapGAppsHook
, python3
# Not native
, gst_all_1
, gsettings-desktop-schemas
, gtk3
, glib
, networkmanager
, libpulseaudio
}:
stdenv.mkDerivation rec {
pname = "gnome-network-displays";
version = "0.90.4";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "04snnfz5jxxpjkrwa7dchc2h4shszi8mq9g3ihvsvipgzjw3d498";
};
patches = [
# Undeclared dependency on gio-unix-2.0, see:
# https://github.com/NixOS/nixpkgs/issues/36468 and
# https://gitlab.gnome.org/GNOME/gnome-network-displays/-/merge_requests/147
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-network-displays/-/commit/ef3f3ff565acd8238da46de604a1e750d4f02f07.diff";
sha256 = "1ljiwgqia6am4lansg70qnwkch9mp1fr6bga98s5fwyiaw6b6f4p";
})
# Fixes an upstream bug: https://gitlab.gnome.org/GNOME/gnome-network-displays/-/issues/147
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-network-displays/-/commit/23164b58f4d5dd59de988525906d6e5e82c5a63c.patch";
sha256 = "0x32dvkzv9m04q41aicscpf4aspghx81a65462kjqnsavi64lga5";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
gettext
desktop-file-utils
appstream-glib
wrapGAppsHook
python3
];
buildInputs = [
gtk3
glib
gsettings-desktop-schemas
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-ugly
gst_all_1.gst-rtsp-server
networkmanager
libpulseaudio
];
preConfigure = ''
patchShebangs ./build-aux/meson/postinstall.py
'';
meta = with stdenv.lib; {
homepage = "https://gitlab.gnome.org/GNOME/gnome-network-displays";
description = "Miracast implementation for GNOME";
maintainers = with maintainers; [ doronbehar ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View File

@ -14,9 +14,10 @@
, swig
, gettext
, fetchpatch
, coreutils
}:
let
preConfigure = (import ./script.nix);
preConfigure = (import ./script.nix {inherit coreutils;});
in
stdenv.mkDerivation rec {
pname = "zeek";

View File

@ -1,4 +1,10 @@
{coreutils}:
''
sed -i 's|/bin/mv|${coreutils}/bin/mv|' scripts/base/frameworks/logging/writers/ascii.zeek
sed -i 's|/bin/mv|${coreutils}/bin/mv|' scripts/policy/misc/trim-trace-file.zeek
sed -i 's|/bin/cat|${coreutils}/bin/cat|' scripts/base/frameworks/notice/actions/pp-alarms.zeek
sed -i 's|/bin/cat|${coreutils}/bin/cat|' scripts/base/frameworks/notice/main.zeek
sed -i "1i##! test dpd" $PWD/scripts/base/frameworks/dpd/__load__.zeek
sed -i "1i##! test x509" $PWD/scripts/base/files/x509/__load__.zeek
sed -i "1i##! test files-extract" $PWD/scripts/base/files/extract/__load__.zeek
@ -32,6 +38,7 @@
sed -i "1i##! test dns" $PWD/scripts/base/protocols/dns/__load__.zeek
sed -i "1i##! test ftp" $PWD/scripts/base/protocols/ftp/__load__.zeek
sed -i "1i##! test http" $PWD/scripts/base/protocols/http/__load__.zeek
sed -i "1i##! test tunnels" $PWD/scripts/base/protocols/tunnels/__load__.zeek
sed -i "1i##! test imap" $PWD/scripts/base/protocols/imap/__load__.zeek
sed -i "1i##! test irc" $PWD/scripts/base/protocols/irc/__load__.zeek
sed -i "1i##! test krb" $PWD/scripts/base/protocols/krb/__load__.zeek

View File

@ -2,12 +2,12 @@
mkDerivation rec {
pname = "chatterino2";
version = "2.1.7";
version = "2.2.2";
src = fetchFromGitHub {
owner = "fourtf";
owner = "Chatterino";
repo = pname;
rev = "v${version}";
sha256 = "0bbdzainfa7hlz5p0jfq4y04i3wix7z3i6w193906bi4gr9wilpg";
sha256 = "026cs48hmqkv7k4akbm205avj2pn3x1g7q46chwa707k9km325dz";
fetchSubmodules = true;
};
nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
@ -26,8 +26,9 @@ mkDerivation rec {
improved/extended version of the Twitch web chat. Chatterino 2 is
the second installment of the Twitch chat client series
"Chatterino".
'';
homepage = "https://github.com/fourtf/chatterino2";
'';
homepage = "https://github.com/Chatterino/chatterino2";
changelog = "https://github.com/Chatterino/chatterino2/blob/master/CHANGELOG.md";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ rexim ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub
{ lib, stdenv, fetchFromGitHub
, vala, cmake, ninja, wrapGAppsHook, pkgconfig, gettext
, gobject-introspection, gnome3, glib, gdk-pixbuf, gtk3, glib-networking
, xorg, libXdmcp, libxkbcommon
@ -60,23 +60,39 @@ stdenv.mkDerivation rec {
libgcrypt
libsoup
pcre
xorg.libxcb
xorg.libpthreadstubs
libXdmcp
libxkbcommon
epoxy
at-spi2-core
dbus
icu
libsignal-protocol-c
librsvg
] ++ lib.optionals (!stdenv.isDarwin) [
xorg.libxcb
xorg.libpthreadstubs
libXdmcp
libxkbcommon
];
# Dino looks for plugins with a .so filename extension, even on macOS where
# .dylib is appropriate, and despite the fact that it builds said plugins with
# that as their filename extension
#
# Therefore, on macOS rename all of the plugins to use correct names that Dino
# will load
#
# See https://github.com/dino/dino/wiki/macOS
postFixup = lib.optionalString (stdenv.isDarwin) ''
cd "$out/lib/dino/plugins/"
for f in *.dylib; do
mv "$f" "$(basename "$f" .dylib).so"
done
'';
meta = with stdenv.lib; {
description = "Modern Jabber/XMPP Client using GTK/Vala";
homepage = "https://github.com/dino/dino";
license = licenses.gpl3;
platforms = platforms.linux;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ mic92 qyliss ];
};
}

View File

@ -3,18 +3,18 @@
}:
let
version = "0.7.5";
version = "0.7.6";
in stdenv.mkDerivation rec {
pname = "rambox";
inherit version;
src = {
x86_64-linux = fetchurl {
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-amd64.deb";
sha256 = "108yd5djnap37yh0nbjyqkp5ci1zmydfzqcsbapin40a4f36zm31";
sha256 = "1v9l5nfd25mq448457hg0mj5bzylh0krk411kbr73s7lbaaww1jl";
};
i686-linux = fetchurl {
url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.deb";
sha256 = "1pvh048h6m19rmbscsy69ih0jkyhazmq2pcagmf3kk8gmbi7y6p6";
sha256 = "0zhn5hnpl6fpgshp1vwghq6f1hz3f7gds7rjnhky1352cb6cr89i";
};
}.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");

View File

@ -40,8 +40,8 @@ let
pname = "slack";
version = {
x86_64-darwin = "4.8.0";
x86_64-linux = "4.8.0";
x86_64-darwin = "4.9.0";
x86_64-linux = "4.9.1";
}.${system} or throwSystem;
src = let
@ -49,11 +49,11 @@ let
in {
x86_64-darwin = fetchurl {
url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
sha256 = "0k22w3c3brbc7ivmc5npqy8h7zxfgnbs7bqwii03psymm6sw53j2";
sha256 = "007fflncvvclj4agb6g5hc5k9j5hhz1rpvlcfd8w31rn1vad4abk";
};
x86_64-linux = fetchurl {
url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb";
sha256 = "0q8qpz5nwhps7y5gq1bl8hjw7vsk789srrv39hzc7jrl8f1bxzk0";
sha256 = "1n8br5vlcnf13b8m6727hy4bkmd6wayss96ck4ba9zsjiyj7v74i";
};
}.${system} or throwSystem;

View File

@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "maestral-qt";
version = "1.1.0";
version = "1.2.0";
disabled = python3.pkgs.pythonOlder "3.6";
src = fetchFromGitHub {
owner = "SamSchott";
repo = "maestral-qt";
rev = "v${version}";
sha256 = "0clzzwwbrynfbvawhaaa4mp2qi8smng31mmz0is166z6g67bwdl6";
sha256 = "sha256-bEVxtp2MqEsjQvcVXmrWcwys3AMg+lPcdYn4IlYhyqw=";
};
propagatedBuildInputs = with python3.pkgs; [

View File

@ -333,6 +333,7 @@ stdenv.mkDerivation rec {
eelco
lovesegfault
pierron
vcunat
];
platforms = platforms.linux;
license = licenses.mpl20;

View File

@ -6,6 +6,7 @@
, curl
, dbus
, dbus-glib
, fetchpatch
, fetchurl
, file
, fontconfig
@ -146,6 +147,13 @@ stdenv.mkDerivation rec {
patches = [
./no-buildconfig.patch
(fetchpatch { # included in 78.3.0
name = "empty-UI.patch";
url = "https://hg.mozilla.org/releases/comm-esr78/raw-rev/f085dbd311bc";
# paths: {a,b}/foo -> {a,b}/comm/foo
stripLen = 1; extraPrefix = "comm/";
sha256 = "0x9pw62w93kyd99q9wi2d8llcfzbrqib7fp5kcrjidvhnkxpr6j7";
})
];
postPatch = ''
@ -327,6 +335,7 @@ stdenv.mkDerivation rec {
eelco
lovesegfault
pierron
vcunat
];
platforms = platforms.linux;
license = licenses.mpl20;

View File

@ -5,9 +5,9 @@
# overridable. This is useful when the upstream archive was replaced
# and nixpkgs is not in sync yet.
, officeVersion ? {
version = "976";
version = "978";
edition = "2018";
sha256 = "13yh4lyqakbdqf4r8vw8imy5gwpfva697iqfd85qmp3wimqvzskl";
sha256 = "1c5div1kbyyj48f89wkhc1i1759n70bsbp3w4a42cr0jmllyl60v";
}
, ... } @ args:

View File

@ -5,7 +5,7 @@
# For fixing up execution of /bin/ls, which is necessary for
# product unlocking.
, coreutils, libredirect
, coreutils
, pname, version, edition, suiteName, src, archive
@ -52,22 +52,7 @@ in stdenv.mkDerivation {
runHook postUnpack
'';
installPhase = let
# SoftMaker/FreeOffice collects some system information upon
# unlocking the product. But in doing so, it attempts to execute
# /bin/ls. If the execve syscall fails, the whole unlock
# procedure fails. This works around that by rewriting /bin/ls
# to the proper path.
#
# SoftMaker Office restarts itself upon some operations, such
# changing the theme and unlocking. Unfortunately, we do not
# have control over its environment then and it will fail
# with an error.
lsIntercept = ''
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--set NIX_REDIRECTS "/bin/ls=${coreutils}/bin/ls"
'';
in ''
installPhase = ''
runHook preInstall
mkdir -p $out/share
@ -76,12 +61,9 @@ in stdenv.mkDerivation {
# Wrap rather than symlinking, so that the programs can determine
# their resource path.
mkdir -p $out/bin
makeWrapper $out/share/${pname}${edition}/planmaker $out/bin/${pname}-planmaker \
${lsIntercept}
makeWrapper $out/share/${pname}${edition}/presentations $out/bin/${pname}-presentations \
${lsIntercept}
makeWrapper $out/share/${pname}${edition}/textmaker $out/bin/${pname}-textmaker \
${lsIntercept}
makeWrapper $out/share/${pname}${edition}/planmaker $out/bin/${pname}-planmaker
makeWrapper $out/share/${pname}${edition}/presentations $out/bin/${pname}-presentations
makeWrapper $out/share/${pname}${edition}/textmaker $out/bin/${pname}-textmaker
for size in 16 32 48 64 96 128 256 512 1024; do
mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps

View File

@ -112,7 +112,7 @@ let
git-ignore = callPackage ./git-ignore { };
git-imerge = callPackage ./git-imerge { };
git-imerge = python3Packages.callPackage ./git-imerge { };
git-interactive-rebase-tool = callPackage ./git-interactive-rebase-tool {
inherit (darwin.apple_sdk.frameworks) Security;

View File

@ -1,25 +1,24 @@
{ stdenv, fetchFromGitHub, pythonPackages }:
{ lib, buildPythonApplication, fetchPypi, installShellFiles }:
stdenv.mkDerivation rec {
buildPythonApplication rec {
pname = "git-imerge";
version = "1.1.0";
version = "1.2.0";
src = fetchFromGitHub {
owner = "mhagger";
repo = "git-imerge";
rev = "v${version}";
sha256 = "0vi1w3f0yk4gqhxj2hzqafqq28rihyhyfnp8x7xzib96j2si14a4";
src = fetchPypi {
inherit pname version;
sha256 = "df5818f40164b916eb089a004a47e5b8febae2b4471a827e3aaa4ebec3831a3f";
};
buildInputs = [ pythonPackages.python pythonPackages.wrapPython ];
nativeBuildInputs = [ installShellFiles ];
makeFlags = [ "PREFIX=" "DESTDIR=$(out)" ] ;
meta = with stdenv.lib; {
postInstall = ''
installShellCompletion --bash completions/git-imerge
'';
meta = with lib; {
homepage = "https://github.com/mhagger/git-imerge";
description = "Perform a merge between two branches incrementally";
license = licenses.gpl2;
platforms = platforms.all;
license = licenses.gpl2Plus;
maintainers = [ maintainers.spwhitt ];
};
}

View File

@ -209,6 +209,7 @@ in stdenv.mkDerivation rec {
mkdir -p $out/share/mpv
ln -s ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mpv/subfont.ttf
cp TOOLS/mpv_identify.sh $out/bin
cp TOOLS/umpv $out/bin
'' + optionalString stdenv.isDarwin ''
mkdir -p $out/Applications

View File

@ -1,7 +1,7 @@
{ fetchurl, stdenv }:
let
version = "0.21.1";
version = "0.22.0";
suffix = {
x86_64-linux = "x86_64";
@ -15,13 +15,13 @@ let
};
firecracker-bin = fetchbin "firecracker" {
x86_64-linux = "0g4fja3bz1fsyz8vj99199yblkn46ygf33ldwd1ssw8f957vbwnb";
aarch64-linux = "1qyppcxnh7f42fs4px5rvkk6lza57h2sq9naskvqn5zy4vsvq89s";
x86_64-linux = "1jl7cmw53fbykcji8a0bkdy82mgpfr8km3ab6iwsrswvahh4srx7";
aarch64-linux = "15vi6441gr4jy0698ifashgv1ic7iz0kbm7c28m2jd8z08p6bnlz";
};
jailer-bin = fetchbin "jailer" {
x86_64-linux = "0x89pfmqci9d3i9fi9b9zm94yr2v7pq7kp3drlb952jkdfj0njyk";
aarch64-linux = "03fx9sk88jm23wqm8fraqd1ccfhbqvc310mkfv1f5p2ykhq2ahrk";
x86_64-linux = "0wir7fi1iqvw02908axfaqzp9q5qyg4yk5jicp8s493iz3vhm9h7";
aarch64-linux = "1l3yc9j27vxfyn89xmxi1ir635v7l8ikwpw9a30dhh50wa3rm4jy";
};
in

View File

@ -18,11 +18,11 @@ with lib;
buildGoPackage rec {
pname = "singularity";
version = "3.6.2";
version = "3.6.3";
src = fetchurl {
url = "https://github.com/hpcng/singularity/releases/download/v${version}/singularity-${version}.tar.gz";
sha256 = "16sd08bfa2b1qgpnd3q6k7glw0w1wyrqyf47fz2220yafrryrmyz";
sha256 = "1zd29s8lggv4x5xracgzywayg1skl9qc2bqh1zdxh1wrg9sqbadi";
};
goPackagePath = "github.com/sylabs/singularity";

View File

@ -1,17 +1,29 @@
{ fetchurl, stdenv, gmp }:
{ fetchurl, stdenv, autoconf, automake, libtool, gmp
, darwin
}:
stdenv.mkDerivation rec {
pname = "bigloo";
version = "4.1a-2";
version = "4.3h";
src = fetchurl {
url = "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo${version}.tar.gz";
sha256 = "09yrz8r0jpj7bda39fdxzrrdyhi851nlfajsyf0b6jxanz6ygcjx";
url = "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo-${version}.tar.gz";
sha256 = "0fw08096sf8ma2cncipnidnysxii0h0pc7kcqkjhkhdchknp8vig";
};
nativeBuildInputs = [ autoconf automake libtool ];
buildInputs = stdenv.lib.optional stdenv.isDarwin
darwin.apple_sdk.frameworks.ApplicationServices
;
propagatedBuildInputs = [ gmp ];
preConfigure =
# For libuv on darwin
stdenv.lib.optionalString stdenv.isDarwin ''
export LIBTOOLIZE=libtoolize
'' +
# Help libgc's configure.
'' export CXXCPP="$CXX -E"
'';

View File

@ -1,21 +1,27 @@
{ stdenv, fetchurl, bigloo }:
# Compute the “release” version of bigloo (before the first dash, if any)
let bigloo-release =
let inherit (stdenv.lib) head splitString; in
head (splitString "-" (builtins.parseDrvName bigloo.name).version)
; in
stdenv.mkDerivation rec {
name = "hop-2.5.1";
name = "hop-3.3.0";
src = fetchurl {
url = "ftp://ftp-sop.inria.fr/indes/fp/Hop/${name}.tar.gz";
sha256 = "1bvp7pc71bln5yvfj87s8750c6l53wjl6f8m12v62q9926adhwys";
sha256 = "14gf9ihmw95zdnxsqhn5jymfivpfq5cg9v0y7yjd5i7c787dncp5";
};
postPatch = ''
substituteInPlace configure --replace "(os-tmp)" '(getenv "TMPDIR")'
'';
buildInputs = [ bigloo ];
preConfigure = ''
export NIX_LDFLAGS="$NIX_LDFLAGS -lbigloogc-4.1a";
'';
configureFlags = [
"--bigloo=${bigloo}/bin/bigloo"
"--bigloolibdir=${bigloo}/lib/bigloo/4.1a/"
"--bigloolibdir=${bigloo}/lib/bigloo/${bigloo-release}/"
];
meta = with stdenv.lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl }:
{ stdenv, fetchurl, fetchpatch }:
stdenv.mkDerivation rec {
pname = "mcpp";
@ -11,6 +11,14 @@ stdenv.mkDerivation rec {
configureFlags = [ "--enable-mcpplib" ];
patches = [
(fetchpatch {
name = "CVE-2019-14274.patch";
url = "https://github.com/h8liu/mcpp/commit/ea453aca2742be6ac43ba4ce0da6f938a7e5a5d8.patch";
sha256 = "0svkdr3w9b45v6scgzvggw9nsh6a3k7g19fqk0w3vlckwmk5ydzr";
})
];
meta = with stdenv.lib; {
homepage = "http://mcpp.sourceforge.net/";
description = "A portable c preprocessor";

View File

@ -1,59 +0,0 @@
From acab088fd6af0b2ef2df1396aeb93bfc2e020fa5 Mon Sep 17 00:00:00 2001
From: "Yukihiro \"Matz\" Matsumoto" <matz@ruby.or.jp>
Date: Mon, 27 Apr 2020 18:52:43 +0900
Subject: [PATCH 1/2] Updating `parse.y for recent `bison` (retry).
---
mrbgems/mruby-compiler/core/parse.y | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
index 6a1faf4e..2a4f740e 100644
--- a/mrbgems/mruby-compiler/core/parse.y
+++ b/mrbgems/mruby-compiler/core/parse.y
@@ -1323,7 +1323,7 @@ heredoc_end(parser_state *p)
%}
-%pure-parser
+%define api.pure
%parse-param {parser_state *p}
%lex-param {parser_state *p}
--
2.27.0
From 3cc682d943b29e84928a847a23f411ddbace74b7 Mon Sep 17 00:00:00 2001
From: "Yukihiro \"Matz\" Matsumoto" <matz@ruby.or.jp>
Date: Fri, 15 May 2020 12:30:13 +0900
Subject: [PATCH 2/2] Remove `YYERROR_VERBOSE` which no longer supported since
`bison 3.6`.
Instead we added `%define parse.error verbose`.
---
mrbgems/mruby-compiler/core/parse.y | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
index 2a4f740e..eee6a5e5 100644
--- a/mrbgems/mruby-compiler/core/parse.y
+++ b/mrbgems/mruby-compiler/core/parse.y
@@ -9,7 +9,6 @@
#ifdef PARSER_DEBUG
# define YYDEBUG 1
#endif
-#define YYERROR_VERBOSE 1
#define YYSTACK_USE_ALLOCA 1
#include <ctype.h>
@@ -1323,6 +1322,7 @@ heredoc_end(parser_state *p)
%}
+%define parse.error verbose
%define api.pure
%parse-param {parser_state *p}
%lex-param {parser_state *p}
--
2.27.0

View File

@ -2,26 +2,24 @@
stdenv.mkDerivation rec {
pname = "mruby";
version = "2.1.1";
version = "2.1.2";
src = fetchFromGitHub {
owner = "mruby";
repo = "mruby";
rev = version;
sha256 = "gEEb0Vn/G+dNgeY6r0VP8bMSPrEOf5s+0GoOcnIPtEU=";
sha256 = "0fhfv8pi7i8jn2vgk2n2rjnbnfa12nhj514v8i4k353n7q4pmkh3";
};
nativeBuildInputs = [ ruby bison rake ];
patches = [ ./bison-36-compat.patch ];
# Necessary so it uses `gcc` instead of `ld` for linking.
# https://github.com/mruby/mruby/blob/35be8b252495d92ca811d76996f03c470ee33380/tasks/toolchains/gcc.rake#L25
preBuild = if stdenv.isLinux then "unset LD" else null;
installPhase = ''
mkdir $out
cp -R build/host/{bin,lib} $out
cp -R include build/host/{bin,lib} $out
'';
doCheck = true;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, ncurses ? null, perl ? null }:
{ stdenv, fetchurl, ncurses ? null, perl ? null, lib }:
stdenv.mkDerivation rec {
name = "liboping-1.10.0";
@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
sha256 = "1n2wkmvw6n80ybdwkjq8ka43z2x8mvxq49byv61b52iyz69slf7b";
};
NIX_CFLAGS_COMPILE = "-Wno-error=format-truncation";
NIX_CFLAGS_COMPILE = lib.optionalString
stdenv.cc.isGNU "-Wno-error=format-truncation";
buildInputs = [ ncurses perl ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, cmake }:
{ stdenv, fetchFromGitHub, cmake, lib }:
stdenv.mkDerivation rec {
pname = "libversion";
@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
cmakeFlags = lib.optional stdenv.isDarwin [
"-DCMAKE_SKIP_BUILD_RPATH=OFF" # needed for tests
];
preCheck = ''
export LD_LIBRARY_PATH=/build/source/build/libversion/''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH
'';

View File

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub, cmake, eigen }:
stdenv.mkDerivation rec {
pname = "orocos-kdl";
version = "1.4.0";
src = fetchFromGitHub {
owner = "orocos";
repo = "orocos_kinematics_dynamics";
rev = "v${version}";
sha256 = "0qj56j231h0rnjbglakammxn2lwmhy5f2qa37v1f6pcn81dn13vv";
};
sourceRoot = "source/orocos_kdl";
nativeBuildInputs = [ cmake ];
buildInputs = [ eigen ];
meta = with lib; {
description = "Kinematics and Dynamics Library";
homepage = "https://www.orocos.org/kdl.html";
license = licenses.lgpl21Only;
maintainers = with maintainers; [ lopsided98 ];
platforms = platforms.all;
};
}

View File

@ -5,7 +5,9 @@
, blas
, lapack
, gfortran
, lapackSupport ? true }:
, suitesparse
, lapackSupport ? true
, kluSupport ? true }:
assert (!blas.isILP64) && (!lapack.isILP64);
@ -13,7 +15,20 @@ stdenv.mkDerivation rec {
pname = "sundials";
version = "5.3.0";
buildInputs = [ python ] ++ stdenv.lib.optionals (lapackSupport) [ gfortran blas lapack ];
buildInputs = [
python
] ++ stdenv.lib.optionals (lapackSupport) [
gfortran
blas
lapack
]
# KLU support is based on Suitesparse.
# It is tested upstream according to the section 1.1.4 of
# [INSTALL_GUIDE.pdf](https://raw.githubusercontent.com/LLNL/sundials/master/INSTALL_GUIDE.pdf)
++ stdenv.lib.optionals (kluSupport) [
suitesparse
];
nativeBuildInputs = [ cmake ];
src = fetchurl {
@ -35,6 +50,10 @@ stdenv.mkDerivation rec {
"-DSUNDIALS_INDEX_TYPE=int32_t"
"-DLAPACK_ENABLE=ON"
"-DLAPACK_LIBRARIES=${lapack}/lib/liblapack${stdenv.hostPlatform.extensions.sharedLibrary}"
] ++ stdenv.lib.optionals (kluSupport) [
"-DKLU_ENABLE=ON"
"-DKLU_INCLUDE_DIR=${suitesparse.dev}/include"
"-DKLU_LIBRARY_DIR=${suitesparse}/lib"
];
doCheck = true;

View File

@ -205,6 +205,7 @@
, "vscode-css-languageserver-bin"
, "vscode-html-languageserver-bin"
, "vscode-json-languageserver-bin"
, { "vscode-lldb-build-deps": "../../misc/vscode-extensions/vscode-lldb/build-deps" }
, "vue-cli"
, "vue-language-server"
, "web-ext"

File diff suppressed because it is too large Load Diff

View File

@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-apron-${version}";
version = "0.9.12";
version = "0.9.13";
src = fetchFromGitHub {
owner = "antoinemine";
repo = "apron";
rev = "v${version}";
sha256 = "0bciv4wz52p57q0aggmvixvqrsd1slflfyrm1z6fy5c44f4fmjjn";
sha256 = "14ymjahqdxj26da8wik9d5dzlxn81b3z1iggdl7rn2nn06jy7lvy";
};
buildInputs = [ perl gmp mpfr ppl ocaml findlib camlidl ];

View File

@ -6,9 +6,9 @@
let source =
if stdenv.lib.versionAtLeast ocaml.version "4.02"
then {
version = "1.9";
url = "https://github.com/ocaml/Zarith/archive/release-1.9.tar.gz";
sha256 = "1xrqcaj5gp52xp4ybpnblw8ciwlgrr0zi7rg7hnk8x83isjkpmwx";
version = "1.10";
url = "https://github.com/ocaml/Zarith/archive/release-1.10.tar.gz";
sha256 = "1qxrl0v2mk9wghc1iix3n0vfz2jbg6k5wpn1z7p02m2sqskb0zhb";
} else {
version = "1.3";
url = "http://forge.ocamlcore.org/frs/download.php/1471/zarith-1.3.tgz";

View File

@ -1,7 +1,23 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k
, pbr, six, simplegeneric, netaddr, pytz, webob
, cornice, nose, webtest, pecan, transaction, cherrypy, sphinx
, flask, flask-restful, suds-jurko, glibcLocales }:
{ lib
, buildPythonPackage
, fetchPypi
, pbr
, six
, simplegeneric
, netaddr
, pytz
, webob
# Test inputs
, cherrypy
, flask
, flask-restful
, glibcLocales
, nose
, pecan
, sphinx
, transaction
, webtest
}:
buildPythonPackage rec {
pname = "WSME";
@ -12,38 +28,37 @@ buildPythonPackage rec {
sha256 = "965b9ce48161e5c50d84aedcf50dca698f05bf07e9d489201bccaec3141cd304";
};
postPatch = ''
# remove turbogears tests as we don't have it packaged
rm tests/test_tg*
# WSME seems incompatible with recent SQLAlchemy version
rm wsmeext/tests/test_sqlalchemy*
# https://bugs.launchpad.net/wsme/+bug/1510823
${if isPy3k then "rm tests/test_cornice.py" else ""}
'';
checkPhae = ''
nosetests --exclude test_buildhtml \
--exlcude test_custom_clientside_error \
--exclude test_custom_non_http_clientside_error
'';
# UnicodeEncodeError, ImportError, ...
doCheck = !isPy3k;
nativeBuildInputs = [ pbr ];
propagatedBuildInputs = [
six simplegeneric netaddr pytz webob
netaddr
pytz
simplegeneric
six
webob
];
checkInputs = [
cornice nose webtest pecan transaction cherrypy sphinx
flask flask-restful suds-jurko glibcLocales
nose
cherrypy
flask
flask-restful
glibcLocales
pecan
sphinx
transaction
webtest
];
# from tox.ini, tests don't work with pytest
checkPhase = ''
nosetests wsme/tests tests/pecantest tests/test_sphinxext.py tests/test_flask.py --verbose
'';
meta = with lib; {
description = "Simplify the writing of REST APIs, and extend them with additional protocols";
homepage = "http://git.openstack.org/cgit/openstack/wsme";
homepage = "https://pythonhosted.org/WSME/";
changelog = "https://pythonhosted.org/WSME/changes.html";
license = licenses.mit;
};
}

View File

@ -0,0 +1,28 @@
{ stdenv, buildPythonPackage, fetchPypi, setuptools_scm, isPy27, pytestCheckHook
, requests, arrow, logfury, tqdm }:
buildPythonPackage rec {
pname = "b2sdk";
version = "1.1.4";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "0g527qdda105r5g9yjh4lxzlmz34m2bdz8dydqqy09igdsmiyi9j";
};
pythonImportsCheck = [ "b2sdk" ];
nativebuildInputs = [ setuptools_scm ];
propagatedBuildInputs = [ requests arrow logfury tqdm ];
# requires unpackaged dependencies like liccheck
doCheck = false;
meta = with stdenv.lib; {
description = "Client library and utilities for access to B2 Cloud Storage (backblaze).";
homepage = "https://github.com/Backblaze/b2-sdk-python";
license = licenses.mit;
};
}

View File

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub
, buildPythonApplication, python
, mock, pathpy, pyhamcrest, pytest, pytest-html
, pytestCheckHook, mock, pathpy, pyhamcrest, pytest-html
, glibcLocales
, colorama, cucumber-tag-expressions, parse, parse-type, six
}:
@ -16,7 +16,7 @@ buildPythonApplication rec {
sha256 = "1ssgixmqlg8sxsyalr83a1970njc2wg3zl8idsmxnsljwacv7qwv";
};
checkInputs = [ mock pathpy pyhamcrest pytest pytest-html ];
checkInputs = [ pytestCheckHook mock pathpy pyhamcrest pytest-html ];
buildInputs = [ glibcLocales ];
propagatedBuildInputs = [ colorama cucumber-tag-expressions parse parse-type six ];
@ -24,14 +24,14 @@ buildPythonApplication rec {
patchShebangs bin
'';
doCheck = true;
# timing-based test flaky on Darwin
# https://github.com/NixOS/nixpkgs/pull/97737#issuecomment-691489824
disabledTests = stdenv.lib.optionals stdenv.isDarwin [ "test_step_decorator_async_run_until_complete" ];
checkPhase = ''
postCheck = ''
export LANG="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
pytest tests
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' features/
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' tools/test-features/
${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' issue.features/

View File

@ -33,11 +33,11 @@
buildPythonPackage rec {
pname = "bokeh";
version = "2.1.1";
version = "2.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "2dfabf228f55676b88acc464f416e2b13ee06470a8ad1dd3e609bb789425fbad";
sha256 = "qC6e69eh4uu3+PwerYAv79EKhNrvjsS/yYYSEyOUhVU=";
};
patches = [

View File

@ -25,11 +25,11 @@ let
package = buildPythonPackage rec {
pname = "buildbot";
version = "2.8.2";
version = "2.8.4";
src = fetchPypi {
inherit pname version;
sha256 = "0rdrz2zkd6xaf9kb5l41xmbfzq618sz498w23irshih4c802pdv5";
sha256 = "0i2sbxhsqyk2yr234il0zsyp1rf2v1l5hmzvw0yrgds6jpr19cqv";
};
propagatedBuildInputs = [

View File

@ -6,7 +6,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "1yz3k6dg15q4911x8kjy396dccfgrs50mjz278l09p6zmm71llax";
sha256 = "1p9qnrqx72y4jrhawgbpwisgily7zg4rh39hpky4x56d5afvjgqc";
};
postPatch = ''

View File

@ -7,7 +7,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "19qwr0h6qavznx8rfjq6zjccyd2y7x4nc8asldvay3b44xfsr385";
sha256 = "1hi44jbnafp7iqncad01hwr087aqmdszvc2if0d9gw6bm159zf4s";
};
# Remove unneccessary circular dependency on buildbot
@ -34,7 +34,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "1wfhwmb1d32k8isk7k8525pmkfih8hlvy53zsj19l3gvjm0da9gw";
sha256 = "1vkh4kdlnm9z5r62b4vxx6qxc90g65gm1m4qxfc6xjk1265i1w6h";
};
buildInputs = [ buildbot-pkg ];
@ -56,7 +56,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "0g62v0maz3b9bmjvvjcin6ayg0f5k0n8m93zk75lagyr69g5vaka";
sha256 = "0v94p1m9fb6m6ik5xyi7bs4jrsgvnyf3sl7f4w1qmb24xc47k2gj";
};
buildInputs = [ buildbot-pkg ];
@ -78,7 +78,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "0dlq8pchgccc66gfdlssydacisia5fbwc8b4gd8f9gcbish8jmf7";
sha256 = "13bg289al6dmyrin3l6ih3sk7hm660m69kls3kpagg6j6nmpa5wz";
};
buildInputs = [ buildbot-pkg ];
@ -100,7 +100,7 @@
src = fetchPypi {
inherit pname version;
sha256 = "193nni55py6yzw730yyp5va2n4313sjf6a7jmi0xs9bivvvzg5w9";
sha256 = "11cr7m7m8ah8qqjcqj7qvjjak62cx1sq41cazd4i3r07dyhc3ypn";
};
buildInputs = [ buildbot-pkg ];

View File

@ -7,7 +7,7 @@ buildPythonPackage (rec {
src = fetchPypi {
inherit pname version;
sha256 = "0p1w6ailp6xpa6ckl5prj413ilxx5s3lga5mzqxj9nn00vni8ik2";
sha256 = "1v1bcc2m4pz90rsh5pjb9m9agkvhqdk1viyf64gi1h85h191vkib";
};
propagatedBuildInputs = [ twisted future ];

View File

@ -0,0 +1,41 @@
{ stdenv
, buildPythonPackage
, fetchFromGitHub
, python
, dbus, dbus-python, pytest, pytestcov, pytest-asyncio, pytest-timeout
}:
buildPythonPackage rec {
pname = "dbus-next";
version = "0.1.4";
src = fetchFromGitHub {
owner = "altdesktop";
repo = "python-dbus-next";
rev = "v${version}";
sha256 = "sha256-C/aFDHmt6Qws6ek+++wM5GRN6TEvMGMiFktKIXRdGL0=";
};
checkInputs = [
dbus
dbus-python
pytest
pytestcov
pytest-asyncio
pytest-timeout
];
# test_peer_interface hits a timeout
checkPhase = ''
dbus-run-session --config-file=${dbus.daemon}/share/dbus-1/session.conf \
${python.interpreter} -m pytest -sv --cov=dbus_next \
-k "not test_peer_interface"
'';
meta = with stdenv.lib; {
homepage = "https://github.com/altdesktop/python-dbus-next";
description = "A zero-dependency DBus library for Python with asyncio support";
license = licenses.mit;
maintainers = with maintainers; [ sfrijters ];
};
}

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "dipy";
version = "1.1.1";
version = "1.2.0";
disabled = isPy27;
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "dipy";
repo = pname;
rev = version;
sha256 = "08abx0f4li6ya62ilc59miw4mk6wndizahyylxhgcrpacb6ydw28";
sha256 = "0x49lph400ndlvk419nd2g9ss4jg75xr7xh88ggv5d2ama19v7py";
};
nativeBuildInputs = [ cython packaging ];

View File

@ -6,13 +6,13 @@
buildPythonPackage rec {
pname = "Django";
version = "2.2.15";
version = "2.2.16";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "3e2f5d172215862abf2bac3138d8a04229d34dbd2d0dab42c6bf33876cc22323";
sha256 = "1535g2r322cl4x52fb0dmzlbg23539j2wx6027j54p22xvjlbkv2";
};
patches = stdenv.lib.optional withGdal

View File

@ -3,11 +3,11 @@
buildPythonPackage rec {
pname = "dropbox";
version = "10.3.1";
version = "10.4.1";
src = fetchPypi {
inherit pname version;
sha256 = "6de5f6f36aad32d4382f3d0ad88ee85a22d81d638c960667b8e1ada05db2f98c";
sha256 = "sha256-INA50DD3wfVPItGCgywZCe5bViatUkaaGdJ0vwcEHgY=";
};
# Set DROPBOX_TOKEN environment variable to a valid token.

View File

@ -0,0 +1,31 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pytest
}:
buildPythonPackage rec {
pname = "http-parser";
version = "0.9.0";
format = "pyproject";
src = fetchFromGitHub {
owner = "benoitc";
repo = pname;
rev = version;
sha256 = "05byv1079qi7ypvzm13yf5nc23ink6gr6c5wrhq7fwld4syscy2q";
};
checkInputs = [ pytest ];
checkPhase = "pytest testing/";
pythonImportsCheck = [ "http_parser" ];
meta = with lib; {
description = "HTTP request/response parser for python in C";
homepage = "https://github.com/benoitc/http-parser";
license = licenses.mit;
maintainers = with maintainers; [ hexa ];
};
}

View File

@ -3,27 +3,28 @@
, fetchFromGitHub
, pythonOlder
, python
, blinker, bugsnag, click, dropbox, fasteners, keyring, keyrings-alt, pathspec, Pyro5, requests, u-msgpack-python, watchdog
, blinker, bugsnag, click, dbus-next, dropbox, fasteners, keyring, keyrings-alt, pathspec, Pyro5, requests, sqlalchemy, u-msgpack-python, watchdog
, sdnotify
, systemd
}:
buildPythonPackage rec {
pname = "maestral";
version = "1.1.0";
version = "1.2.0";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "SamSchott";
repo = "maestral";
rev = "v${version}";
sha256 = "0d1pxbg69ll07w4bbpzs7zz1yn82qyrym95b0mqmhrrg2ysxjngg";
sha256 = "sha256-/xm6sGios5N68X94GqFFzH1jNSMK1OnvQiEykU9IAZU=";
};
propagatedBuildInputs = [
blinker
bugsnag
click
dbus-next
dropbox
fasteners
keyring
@ -31,6 +32,7 @@ buildPythonPackage rec {
pathspec
Pyro5
requests
sqlalchemy
u-msgpack-python
watchdog
] ++ stdenv.lib.optionals stdenv.isLinux [

View File

@ -1,5 +1,6 @@
{ lib, buildPythonPackage, fetchPypi, pythonOlder, isPy27
, decorator
, http-parser
, importlib-metadata
, python
, python_magic
@ -8,11 +9,11 @@
buildPythonPackage rec {
pname = "mocket";
version = "3.8.9";
version = "3.9.0";
src = fetchPypi {
inherit pname version;
sha256 = "12gfqp7y7w6bgky3daxdggdzp08cg9ss64hbf5f49kywvsmcs01i";
sha256 = "1n1h9xbi1my0vgjsh7mfkd51qfa6imjzxnwqccsvshqa8grcv1wm";
};
patchPhase = ''
@ -24,6 +25,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [
decorator
http-parser
python_magic
urllib3
six

View File

@ -0,0 +1,27 @@
{ lib, buildPythonPackage, fetchPypi, python, mock, nose, pytest, six }:
with lib;
buildPythonPackage rec {
pname = "mohawk";
version = "1.1.0";
src = fetchPypi {
inherit pname version;
sha256 = "08wppsv65yd0gdxy5zwq37yp6jmxakfz4a2yx5wwq2d222my786j";
};
propagatedBuildInputs = [ six ];
checkInputs = [ mock nose pytest ];
checkPhase = ''
pytest mohawk/tests.py
'';
meta = {
description = "Python library for Hawk HTTP authorization.";
homepage = "https://github.com/kumar303/mohawk";
license = licenses.mpl20;
maintainers = [ ];
};
}

View File

@ -3,11 +3,11 @@
}:
buildPythonPackage rec {
pname = "parse";
version = "1.16.0";
version = "1.18.0";
src = fetchPypi {
inherit pname version;
sha256 = "cd89e57aed38dcf3e0ff8253f53121a3b23e6181758993323658bffc048a5c19";
sha256 = "91666032d6723dc5905248417ef0dc9e4c51df9526aaeef271eacad6491f06a4";
};
checkPhase = ''

View File

@ -1,38 +1,59 @@
{ stdenv
, fetchPypi
, buildPythonPackage
, isPy27
# Python deps
, singledispatch
, logutils
, webtest
, Mako
, singledispatch
, six
, webtest
# Test Inputs
, pytestCheckHook
, genshi
, Kajiki
, sqlalchemy
, gunicorn
, jinja2
, virtualenv
, Kajiki
, mock
, sqlalchemy
, uwsgi
, virtualenv
}:
buildPythonPackage rec {
pname = "pecan";
version = "1.3.3";
version = "1.4.0";
src = fetchPypi {
inherit pname version;
sha256 = "b5461add4e3f35a7ee377b3d7f72ff13e93f40f3823b3208ab978b29bde936ff";
sha256 = "4b2acd6802a04b59e306d0a6ccf37701d24376f4dc044bbbafba3afdf9d3389a";
};
propagatedBuildInputs = [ singledispatch logutils ];
buildInputs = [
webtest Mako genshi Kajiki sqlalchemy gunicorn jinja2 virtualenv
propagatedBuildInputs = [
logutils
Mako
singledispatch
six
webtest
];
checkInputs = [ mock ];
checkInputs = [
pytestCheckHook
genshi
gunicorn
jinja2
mock
sqlalchemy
virtualenv
] ++ stdenv.lib.optionals isPy27 [ Kajiki ];
pytestFlagsArray = [
"--pyargs pecan "
];
meta = with stdenv.lib; {
description = "Pecan";
homepage = "https://github.com/pecan/pecan";
homepage = "http://www.pecanpy.org/";
changelog = "https://pecan.readthedocs.io/en/latest/changes.html";
};
}

View File

@ -0,0 +1,20 @@
{ lib, stdenv, toPythonModule, cmake, orocos-kdl, python, sip }:
toPythonModule (stdenv.mkDerivation {
pname = "pykdl";
inherit (orocos-kdl) version src;
sourceRoot = "source/python_orocos_kdl";
nativeBuildInputs = [ cmake ];
buildInputs = [ orocos-kdl ];
propagatedBuildInputs = [ python sip ];
meta = with lib; {
description = "Kinematics and Dynamics Library (Python bindings)";
homepage = "https://www.orocos.org/kdl.html";
license = licenses.lgpl21Only;
maintainers = with maintainers; [ lopsided98 ];
platforms = platforms.all;
};
})

View File

@ -22,6 +22,7 @@ buildPythonPackage rec {
checkPhase = ''
py.test tests
behave --format progress --stop --tags=-wip
'';
meta = {

View File

@ -0,0 +1,34 @@
{ lib
, buildPythonPackage
, fetchPypi
, isPy27
, nose
, lxml
, requests
}:
buildPythonPackage rec {
pname = "pyxnat";
version = "1.3";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "113d13cs5ab7wy4vmyqyh8isjhlgfvan7y2g8n25vcpn3j4j00h0";
};
propagatedBuildInputs = [ lxml requests ];
checkInputs = [ nose ];
checkPhase = "nosetests pyxnat/tests";
doCheck = false; # requires a docker container running an XNAT server
pythonImportsCheck = [ "pyxnat" ];
meta = with lib; {
homepage = "https://pyxnat.github.io/pyxnat";
description = "Python API to XNAT";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
};
}

View File

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, isPy27
, fetchFromGitHub
, pytestCheckHook
, pytestcov
, dill
, numpy
, pytorch
, threadpoolctl
, tqdm
}:
buildPythonPackage rec {
pname = "rising";
version = "0.2.0post0";
disabled = isPy27;
src = fetchFromGitHub {
owner = "PhoenixDL";
repo = pname;
rev = "v${version}";
sha256 = "0fb9894ppcp18wc2dhhjizj8ja53gbv9wpql4mixxxdz8z2bn33c";
};
propagatedBuildInputs = [ numpy pytorch threadpoolctl tqdm ];
checkInputs = [ dill pytestcov pytestCheckHook ];
disabledTests = [ "test_affine" ]; # deprecated division operator '/'
meta = {
description = "High-performance data loading and augmentation library in PyTorch";
homepage = "https://rising.rtfd.io";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bcdarwin ];
};
}

View File

@ -6,6 +6,7 @@
, cython
, enum34
, gfortran
, isPy27
, isPy3k
, numpy
, pytest
@ -18,6 +19,8 @@ buildPythonPackage rec {
pname = "scikits.odes";
version = "2.6.1";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "0kbf2n16h9s35x6pavlx6sff0pqr68i0x0609z92a4vadni32n6b";

View File

@ -3,11 +3,11 @@
buildPythonPackage rec {
pname = "spyder-kernels";
version = "1.9.3";
version = "1.9.4";
src = fetchPypi {
inherit pname version;
sha256 = "877109d0691376f8ffb380ec1daf9b867958231065660277dbc5ccf0b4bf87d0";
sha256 = "ca9d997c475b714b54d2fd67aa140837ec3630e91cbbc2e0cd190f1b0bd9fe9d";
};
propagatedBuildInputs = [
@ -23,7 +23,9 @@ buildPythonPackage rec {
meta = with stdenv.lib; {
description = "Jupyter kernels for Spyder's console";
homepage = "https://github.com/spyder-ide/spyder-kernels";
homepage = "https://docs.spyder-ide.org/current/ipythonconsole.html";
downloadPage = "https://github.com/spyder-ide/spyder-kernels/releases";
changelog = "https://github.com/spyder-ide/spyder-kernels/blob/master/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ gebner ];
};

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "spyder";
version = "4.1.4";
version = "4.1.5";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "6946b2128afaf1b64e878a74d33f9abd60c91f75949b3d05f305b3c3f5fec1e2";
sha256 = "d467f020b694193873a237ce6744ae36bd5a59f4d2b7ffbeb15dda68b03f5aa1";
};
nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ];
@ -42,7 +42,10 @@ buildPythonPackage rec {
# remove dependency on pyqtwebengine
# this is still part of the pyqt 5.11 version we have in nixpkgs
sed -i /pyqtwebengine/d setup.py
substituteInPlace setup.py --replace "pyqt5<5.13" "pyqt5"
substituteInPlace setup.py \
--replace "pyqt5<5.13" "pyqt5" \
--replace "parso==0.7.0" "parso" \
--replace "jedi==0.17.1" "jedi"
'';
postInstall = ''
@ -69,7 +72,9 @@ buildPythonPackage rec {
environment for the Python language with advanced editing, interactive
testing, debugging and introspection features.
'';
homepage = "https://github.com/spyder-ide/spyder/";
homepage = "https://www.spyder-ide.org/";
downloadPage = "https://github.com/spyder-ide/spyder/releases";
changelog = "https://github.com/spyder-ide/spyder/blob/master/CHANGELOG.md";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ gebner ];

View File

@ -132,6 +132,13 @@ let
})
./lift-gast-restriction.patch
(fetchpatch {
# fix compilation with numpy >= 1.19
name = "add-const-overload.patch";
url = "https://github.com/tensorflow/tensorflow/commit/75ea0b31477d6ba9e990e296bbbd8ca4e7eebadf.patch";
sha256 = "1xp1icacig0xm0nmb05sbrf4nw4xbln9fhc308birrv8286zx7wv";
})
# cuda 10.2 does not have "-bin2c-path" option anymore
# https://github.com/tensorflow/tensorflow/issues/34429
../cuda-10.2-no-bin2c-path.patch

View File

@ -11,11 +11,11 @@
buildPythonPackage rec {
pname = "xarray";
version = "0.16.0";
version = "0.16.1";
src = fetchPypi {
inherit pname version;
sha256 = "1js3xr3fl9bwid8hl3w2pnigqzjd2rvkncald5x1x5fg7wjy8pb6";
sha256 = "5e1af056ff834bf62ca57da917159328fab21b1f8c25284f92083016bb2d92a5";
};
checkInputs = [ pytest ];

View File

@ -12,13 +12,13 @@
buildPythonPackage rec {
pname = "xlib";
version = "0.25";
version = "0.28";
src = fetchFromGitHub {
owner = "python-xlib";
repo = "python-xlib";
rev = version;
sha256 = "1nncx7v9chmgh56afg6dklz3479s5zg3kq91mzh4mj512y0skyki";
sha256 = "13551vi65034pjf2g7zkw5dyjqcjfyk32a640g5jr055ssf0bjkc";
};
checkPhase = ''

View File

@ -1,6 +1,7 @@
{ lib
, buildPythonApplication
, buildPythonPackage
, fetchPypi
, pkgs
, argcomplete
, pyyaml
, xmltodict
@ -9,31 +10,40 @@
, flake8
, jq
, pytest
, unixtools
, toml
}:
buildPythonApplication rec {
buildPythonPackage rec {
pname = "yq";
version = "2.10.1";
version = "2.11.0";
propagatedBuildInputs = [ pyyaml xmltodict jq argcomplete ];
src = fetchPypi {
inherit pname version;
sha256 = "1gp9q5w1bjbw7wmba5hm8ippwvkind0p02n07fqa9jlqglhxhm46";
};
propagatedBuildInputs = [
pyyaml
xmltodict
argcomplete
];
doCheck = true;
checkInputs = [
unixtools.script
pytest
coverage
flake8
jq
pkgs.jq
toml
];
checkPhase = "pytest ./test/test.py";
# tests fails if stdin is not a tty
checkPhase = "echo | script -c 'pytest ./test/test.py'";
src = fetchPypi {
inherit pname version;
sha256 = "1h6nnkp53mm4spwy8nyxwvh9j6p4lxvf20j4bgjskhnhaw3jl9gn";
};
pythonImportsCheck = [ "yq" ];
meta = with lib; {
description = "Command-line YAML processor - jq wrapper for YAML documents.";

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