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

@ -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

@ -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)" ] ;
postInstall = ''
installShellCompletion --bash completions/git-imerge
'';
meta = with stdenv.lib; {
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.";

View file

@ -1,16 +1,16 @@
{ lib, buildGoPackage, fetchFromGitLab, fetchurl }:
let
version = "13.3.1";
version = "13.4.0";
# Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
docker_x86_64 = fetchurl {
url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-x86_64.tar.xz";
sha256 = "0bm6vgdy0lhy1cw6rjsifihxrin33h8c5xwca0mgwd4f7ad64dgs";
sha256 = "0rdnrnkm9pcdzi3ddmk0ia9r6lv548by08q1nrb7683jywr7bin3";
};
docker_arm = fetchurl {
url = "https://gitlab-runner-downloads.s3.amazonaws.com/v${version}/helper-images/prebuilt-arm.tar.xz";
sha256 = "1pjpqmi45c0d41cwrb8vb4lkcqarq430mni37h1bsijgqiap8rqk";
sha256 = "1nd32vqp096h36p89c0v21yijn3dzz4ix5bwsbl20mc8m802wvg7";
};
in
buildGoPackage rec {
@ -30,7 +30,7 @@ buildGoPackage rec {
owner = "gitlab-org";
repo = "gitlab-runner";
rev = "v${version}";
sha256 = "15v5m420vv3vxmmga65j0agaa7b9mn1iywkq2ggpnrnznk5m613f";
sha256 = "124gplxs3a6kyc7b7mwsf0l02i9qi0ifjn3r2m7vq5wvk31qa97b";
};
patches = [ ./fix-shell-path.patch ];

View file

@ -1,19 +1,49 @@
{ lib, fetchurl, ocamlPackages }:
{ lib, fetchurl, fetchzip, ocamlPackages }:
with ocamlPackages; buildDunePackage rec {
pname = "ocamlformat";
version = "0.15.0";
with ocamlPackages;
minimumOCamlVersion = "4.06";
let
mkOCamlformat = {
version,
sha256,
buildInputs,
useDune2 ? true,
tarballName ? "ocamlformat-${version}.tbz",
# The 'src' argument can be removed when 0.11.0 is pruned
src ? fetchurl {
url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/${tarballName}";
inherit sha256;
}
}:
buildDunePackage rec {
pname = "ocamlformat";
useDune2 = true;
minimumOCamlVersion = "4.06";
src = fetchurl {
url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}.tbz";
sha256 = "0190vz59n6ma9ca1m3syl3mc8i1smj1m3d8x1jp21f710y4llfr6";
};
inherit src version useDune2 buildInputs;
buildInputs = [
meta = {
homepage = "https://github.com/ocaml-ppx/ocamlformat";
description = "Auto-formatter for OCaml code";
maintainers = [ lib.maintainers.Zimmi48 lib.maintainers.marsam ];
license = lib.licenses.mit;
};
};
post_0_11_buildInputs = [
base
cmdliner
fpath
ocaml-migrate-parsetree
odoc
re
stdio
uuseg
uutf
];
post_0_14_buildInputs = [
base
cmdliner
fpath
ocaml-migrate-parsetree
@ -25,11 +55,62 @@ with ocamlPackages; buildDunePackage rec {
fix
menhir
];
in
meta = {
homepage = "https://github.com/ocaml-ppx/ocamlformat";
description = "Auto-formatter for OCaml code";
maintainers = [ lib.maintainers.Zimmi48 lib.maintainers.marsam ];
license = lib.licenses.mit;
# Older versions should be removed when their usage decrease
# This script scraps Github looking for OCamlformat's options and versions usage:
# https://gist.github.com/Julow/110dc94308d6078225e0665e3eccd433
rec {
ocamlformat_0_11_0 = mkOCamlformat rec {
version = "0.11.0";
src = fetchzip {
url = "https://github.com/ocaml-ppx/ocamlformat/archive/0.11.0.tar.gz";
inherit sha256;
};
sha256 = "0zvjn71jd4d3znnpgh0yphb2w8ggs457b6bl6cg1fmpdgxnds6yx";
useDune2 = false;
buildInputs = post_0_11_buildInputs;
};
ocamlformat_0_12 = mkOCamlformat {
version = "0.12";
sha256 = "1zi8x597dhp2822j6j28s84yyiqppl7kykpwqqclx6ybypvlzdpj";
useDune2 = false;
buildInputs = post_0_11_buildInputs;
};
ocamlformat_0_13_0 = mkOCamlformat rec {
version = "0.13.0";
sha256 = "0ki2flqi3xkhw9mfridivb6laxm7gml8rj9qz42vqmy9yx76jjxq";
tarballName = "ocamlformat-${version}-2.tbz";
useDune2 = false;
buildInputs = post_0_11_buildInputs;
};
ocamlformat_0_14_0 = mkOCamlformat {
version = "0.14.0";
sha256 = "070c0x6z5y0lyls56zm34g8lyc093wkr0jfp50dvrkr9fk1sx2wi";
buildInputs = post_0_14_buildInputs;
};
ocamlformat_0_14_1 = mkOCamlformat {
version = "0.14.1";
sha256 = "03wn46xib63748157xchj7gflkw5000fcjw6n89h9g82q9slazaa";
buildInputs = post_0_14_buildInputs;
};
ocamlformat_0_14_2 = mkOCamlformat {
version = "0.14.2";
sha256 = "16phz1sg9b070p6fm8d42j0piizg05vghdjmw8aj7xm82b1pm7sz";
buildInputs = post_0_14_buildInputs;
};
ocamlformat_0_15_0 = mkOCamlformat {
version = "0.15.0";
sha256 = "0190vz59n6ma9ca1m3syl3mc8i1smj1m3d8x1jp21f710y4llfr6";
buildInputs = post_0_14_buildInputs;
};
ocamlformat = ocamlformat_0_15_0;
}

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