Merge remote-tracking branch 'origin/master' into haskell-updates

This commit is contained in:
(cdep)illabout 2021-05-20 10:08:26 +09:00
commit 408d7aabb4
No known key found for this signature in database
GPG Key ID: 462E0C03D11422F4
114 changed files with 2679 additions and 1010 deletions

View File

@ -48,6 +48,14 @@ with lib.maintainers; {
scope = "Maintain Cinnamon desktop environment and applications made by the LinuxMint team.";
};
chia = {
members = [
atemu
lourkeur
];
scope = "Maintain the Chia blockchain and its dependencies";
};
deshaw = {
# Verify additions to this team with at least one already existing member of the team.
members = [

View File

@ -84,12 +84,12 @@ nixpkgs https://nixos.org/channels/nixpkgs-unstable</screen>
</para>
<para>
You'll need <literal>nixos-generate-config</literal> and
<literal>nixos-install</literal> and we'll throw in some man pages and
<literal>nixos-enter</literal> just in case you want to chroot into your
NixOS partition. They are installed by default on NixOS, but you don't have
<literal>nixos-install</literal>, but this also makes some man pages
and <literal>nixos-enter</literal> available, just in case you want to chroot into your
NixOS partition. NixOS installs these by default, but you don't have
NixOS yet..
</para>
<screen><prompt>$ </prompt>nix-env -f '&lt;nixpkgs/nixos&gt;' --arg configuration {} -iA config.system.build.{nixos-generate-config,nixos-install,nixos-enter,manual.manpages}</screen>
<screen><prompt>$ </prompt>nix-env -f '&lt;nixpkgs>' -iA nixos-install-tools</screen>
</listitem>
<listitem>
<note>

View File

@ -158,6 +158,11 @@
section of the NixOS manual</link> for more information.
</para>
</listitem>
<listitem>
<para>
<xref linkend="opt-services.nebula.networks" /> <link xlink:href="https://github.com/slackhq/nebula">Nebula VPN</link>
</para>
</listitem>
</itemizedlist>
</section>

View File

@ -62,7 +62,7 @@ in
'';
};
enable = mkEnableOption "Whether to enable Kubernetes addon manager.";
enable = mkEnableOption "Kubernetes addon manager.";
};
###### implementation

View File

@ -42,6 +42,7 @@ with lib;
User = "clickhouse";
Group = "clickhouse";
ConfigurationDirectory = "clickhouse-server";
AmbientCapabilities = "CAP_SYS_NICE";
StateDirectory = "clickhouse";
LogsDirectory = "clickhouse";
ExecStart = "${pkgs.clickhouse}/bin/clickhouse-server --config-file=${pkgs.clickhouse}/etc/clickhouse-server/config.xml";

View File

@ -15,18 +15,6 @@ in {
options = {
services.flatpak = {
enable = mkEnableOption "flatpak";
guiPackages = mkOption {
internal = true;
type = types.listOf types.package;
default = [];
example = literalExample "[ pkgs.gnome.gnome-software ]";
description = ''
Packages that provide an interface for flatpak
(like gnome-software) that will be automatically available
to all users when flatpak is enabled.
'';
};
};
};
@ -40,7 +28,7 @@ in {
}
];
environment.systemPackages = [ pkgs.flatpak ] ++ cfg.guiPackages;
environment.systemPackages = [ pkgs.flatpak ];
services.dbus.packages = [ pkgs.flatpak ];

View File

@ -86,7 +86,9 @@ account_threepid_delegates:
${optionalString (cfg.account_threepid_delegates.email != null) "email: ${cfg.account_threepid_delegates.email}"}
${optionalString (cfg.account_threepid_delegates.msisdn != null) "msisdn: ${cfg.account_threepid_delegates.msisdn}"}
room_invite_state_types: ${builtins.toJSON cfg.room_invite_state_types}
room_prejoin_state:
disable_default_event_types: ${boolToString cfg.room_prejoin_state.disable_default_event_types}
additional_event_types: ${builtins.toJSON cfg.room_prejoin_state.additional_event_types}
${optionalString (cfg.macaroon_secret_key != null) ''
macaroon_secret_key: "${cfg.macaroon_secret_key}"
''}
@ -577,11 +579,28 @@ in {
Delegate SMS sending to this local process (https://localhost:8090)
'';
};
room_invite_state_types = mkOption {
room_prejoin_state.additional_event_types = mkOption {
default = [];
type = types.listOf types.str;
default = ["m.room.join_rules" "m.room.canonical_alias" "m.room.avatar" "m.room.name"];
description = ''
A list of event types that will be included in the room_invite_state
Additional events to share with users who received an invite.
'';
};
room_prejoin_state.disable_default_event_types = mkOption {
default = false;
type = types.bool;
description = ''
Whether to disable the default state-event types for users invited to a room.
These are:
<itemizedlist>
<listitem><para>m.room.join_rules</para></listitem>
<listitem><para>m.room.canonical_alias</para></listitem>
<listitem><para>m.room.avatar</para></listitem>
<listitem><para>m.room.encryption</para></listitem>
<listitem><para>m.room.name</para></listitem>
<listitem><para>m.room.create</para></listitem>
</itemizedlist>
'';
};
macaroon_secret_key = mkOption {
@ -728,6 +747,12 @@ in {
<nixpkgs/nixos/tests/matrix-synapse.nix>
'')
(mkRemovedOptionModule [ "services" "matrix-synapse" "web_client" ] "")
(mkRemovedOptionModule [ "services" "matrix-synapse" "room_invite_state_types" ] ''
You may add additional event types via
`services.matrix-synapse.room_prejoin_state.additional_event_types` and
disable the default events via
`services.matrix-synapse.room_prejoin_state.disable_default_event_types`.
'')
];
meta.doc = ./matrix-synapse.xml;

View File

@ -292,11 +292,6 @@ in
# If gnome is installed, build vim for gtk3 too.
nixpkgs.config.vim.gui = "gtk3";
# Install gnome-software if flatpak is enabled
services.flatpak.guiPackages = [
pkgs.gnome.gnome-software
];
})
(mkIf flashbackEnabled {
@ -467,31 +462,39 @@ in
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-utilities.bst
(mkIf serviceCfg.core-utilities.enable {
environment.systemPackages = (with pkgs.gnome; removePackagesByName [
baobab
cheese
eog
epiphany
gedit
gnome-calculator
gnome-calendar
gnome-characters
gnome-clocks
gnome-contacts
gnome-font-viewer
gnome-logs
gnome-maps
gnome-music
pkgs.gnome-photos
gnome-screenshot
gnome-system-monitor
gnome-weather
nautilus
pkgs.gnome-connections
simple-scan
totem
yelp
] config.environment.gnome.excludePackages);
environment.systemPackages =
with pkgs.gnome;
removePackagesByName
([
baobab
cheese
eog
epiphany
gedit
gnome-calculator
gnome-calendar
gnome-characters
gnome-clocks
gnome-contacts
gnome-font-viewer
gnome-logs
gnome-maps
gnome-music
pkgs.gnome-photos
gnome-screenshot
gnome-system-monitor
gnome-weather
nautilus
pkgs.gnome-connections
simple-scan
totem
yelp
] ++ lib.optionals config.services.flatpak.enable [
# Since PackageKit Nix support is not there yet,
# only install gnome-software if flatpak is enabled.
gnome-software
])
config.environment.gnome.excludePackages;
# Enable default program modules
# Since some of these have a corresponding package, we only

View File

@ -303,6 +303,7 @@ in
openarena = handleTest ./openarena.nix {};
openldap = handleTest ./openldap.nix {};
opensmtpd = handleTest ./opensmtpd.nix {};
opensmtpd-rspamd = handleTest ./opensmtpd-rspamd.nix {};
openssh = handleTest ./openssh.nix {};
openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {};
openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};

View File

@ -33,7 +33,7 @@ in
hardware.opengl.enable = true;
programs.xwayland.enable = true;
environment.systemPackages = [ pkgs.cagebreak pkgs.wallutils ];
environment.systemPackages = [ pkgs.cagebreak pkgs.wayland-utils ];
virtualisation.memorySize = 1024;
# Need to switch to a different VGA card / GPU driver than the default one (std) so that Cagebreak can launch:
@ -51,7 +51,7 @@ in
machine.wait_for_file("${XDG_RUNTIME_DIR}/wayland-0")
with subtest("ensure wayland works with wayinfo from wallutils"):
print(machine.succeed("env XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR} wayinfo"))
print(machine.succeed("env XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR} wayland-info"))
# TODO: Fix the XWayland test (log the cagebreak output to debug):
# with subtest("ensure xwayland works with xterm"):

View File

@ -4,6 +4,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
machine = {
services.clickhouse.enable = true;
virtualisation.memorySize = 4096;
};
testScript =

View File

@ -0,0 +1,142 @@
import ./make-test-python.nix {
name = "opensmtpd-rspamd";
nodes = {
smtp1 = { pkgs, ... }: {
imports = [ common/user-account.nix ];
networking = {
firewall.allowedTCPPorts = [ 25 143 ];
useDHCP = false;
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
{ address = "192.168.1.1"; prefixLength = 24; }
];
};
environment.systemPackages = [ pkgs.opensmtpd ];
services.opensmtpd = {
enable = true;
extraServerArgs = [ "-v" ];
serverConfiguration = ''
listen on 0.0.0.0
action dovecot_deliver mda \
"${pkgs.dovecot}/libexec/dovecot/deliver -d %{user.username}"
match from any for local action dovecot_deliver
action do_relay relay
# DO NOT DO THIS IN PRODUCTION!
# Setting up authentication requires a certificate which is painful in
# a test environment, but THIS WOULD BE DANGEROUS OUTSIDE OF A
# WELL-CONTROLLED ENVIRONMENT!
match from any for any action do_relay
'';
};
services.dovecot2 = {
enable = true;
enableImap = true;
mailLocation = "maildir:~/mail";
protocols = [ "imap" ];
};
};
smtp2 = { pkgs, ... }: {
imports = [ common/user-account.nix ];
virtualisation.memorySize = 512;
networking = {
firewall.allowedTCPPorts = [ 25 143 ];
useDHCP = false;
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
{ address = "192.168.1.2"; prefixLength = 24; }
];
};
environment.systemPackages = [ pkgs.opensmtpd ];
services.rspamd = {
enable = true;
locals."worker-normal.inc".text = ''
bind_socket = "127.0.0.1:11333";
'';
};
services.opensmtpd = {
enable = true;
extraServerArgs = [ "-v" ];
serverConfiguration = ''
filter rspamd proc-exec "${pkgs.opensmtpd-filter-rspamd}/bin/filter-rspamd"
listen on 0.0.0.0 filter rspamd
action dovecot_deliver mda \
"${pkgs.dovecot}/libexec/dovecot/deliver -d %{user.username}"
match from any for local action dovecot_deliver
'';
};
services.dovecot2 = {
enable = true;
enableImap = true;
mailLocation = "maildir:~/mail";
protocols = [ "imap" ];
};
};
client = { pkgs, ... }: {
networking = {
useDHCP = false;
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
{ address = "192.168.1.3"; prefixLength = 24; }
];
};
environment.systemPackages = let
sendTestMail = pkgs.writeScriptBin "send-a-test-mail" ''
#!${pkgs.python3.interpreter}
import smtplib, sys
with smtplib.SMTP('192.168.1.1') as smtp:
smtp.sendmail('alice@[192.168.1.1]', 'bob@[192.168.1.2]', """
From: alice@smtp1
To: bob@smtp2
Subject: Test
Hello World
Here goes the spam test
XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X
""")
'';
checkMailBounced = pkgs.writeScriptBin "check-mail-bounced" ''
#!${pkgs.python3.interpreter}
import imaplib
with imaplib.IMAP4('192.168.1.1', 143) as imap:
imap.login('alice', 'foobar')
imap.select()
status, refs = imap.search(None, 'ALL')
assert status == 'OK'
assert len(refs) == 1
status, msg = imap.fetch(refs[0], 'BODY[TEXT]')
assert status == 'OK'
content = msg[0][1]
print("===> content:", content)
assert b"An error has occurred while attempting to deliver a message" in content
'';
in [ sendTestMail checkMailBounced ];
};
};
testScript = ''
start_all()
client.wait_for_unit("network-online.target")
smtp1.wait_for_unit("opensmtpd")
smtp2.wait_for_unit("opensmtpd")
smtp2.wait_for_unit("rspamd")
smtp2.wait_for_unit("dovecot2")
# To prevent sporadic failures during daemon startup, make sure
# services are listening on their ports before sending requests
smtp1.wait_for_open_port(25)
smtp2.wait_for_open_port(25)
smtp2.wait_for_open_port(143)
smtp2.wait_for_open_port(11333)
client.succeed("send-a-test-mail")
smtp1.wait_until_fails("smtpctl show queue | egrep .")
client.succeed("check-mail-bounced >&2")
'';
meta.timeout = 1800;
}

View File

@ -0,0 +1,69 @@
{ lib, fetchFromGitHub, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "chia";
version = "1.1.5";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "chia-blockchain";
rev = version;
sha256 = "ZUxWOlJGQpeQCtWt0PSdcbMackHdeuNFkxHvYDPcU8Y=";
};
patches = [
# tweak version requirements to what's available in Nixpkgs
./dependencies.patch
];
nativeBuildInputs = [
python3Packages.setuptools-scm
];
# give a hint to setuptools_scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
propagatedBuildInputs = with python3Packages; [
aiohttp
aiosqlite
bitstring
blspy
chiapos
chiavdf
chiabip158
click
clvm
clvm-rs
clvm-tools
colorlog
concurrent-log-handler
cryptography
keyrings-cryptfile
pyyaml
setproctitle
setuptools # needs pkg_resources at runtime
sortedcontainers
websockets
];
checkInputs = [
python3Packages.pytestCheckHook
];
disabledTests = [
"test_spend_through_n"
"test_spend_zero_coin"
];
preCheck = ''
export HOME=`mktemp -d`
'';
meta = with lib; {
homepage = "https://www.chia.net/";
description = "Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure.";
license = with licenses; [ asl20 ];
maintainers = teams.chia.members;
platforms = platforms.all;
};
}

View File

@ -0,0 +1,13 @@
diff --git a/setup.py b/setup.py
index c5cf95db..b783a9e6 100644
--- a/setup.py
+++ b/setup.py
@@ -8,7 +8,7 @@ dependencies = [
"clvm==0.9.6",
"clvm_rs==0.1.7",
"clvm_tools==0.4.3",
- "aiohttp==3.7.4", # HTTP server for full node rpc
+ "aiohttp==3.7.4.post0", # HTTP server for full node rpc
"aiosqlite==0.17.0", # asyncio wrapper for sqlite, to store blocks
"bitstring==3.1.7", # Binary data management library
"colorlog==5.0.1", # Adds color to logs

View File

@ -6,7 +6,9 @@
, cryptopp
, curl
, fetchFromGitHub
, ffmpeg_3 # build fails with latest ffmpeg, see https://github.com/meganz/MEGAcmd/issues/523
# build fails with latest ffmpeg, see https://github.com/meganz/MEGAcmd/issues/523.
# to be re-enabled when patch available
# , ffmpeg
, freeimage
, gcc-unwrapped
, libmediainfo
@ -44,7 +46,7 @@ stdenv.mkDerivation rec {
c-ares
cryptopp
curl
ffmpeg_3
# ffmpeg
freeimage
gcc-unwrapped
libmediainfo
@ -67,7 +69,7 @@ stdenv.mkDerivation rec {
"--with-cares"
"--with-cryptopp"
"--with-curl"
"--with-ffmpeg"
# "--with-ffmpeg"
"--with-freeimage"
"--with-libmediainfo"
"--with-libuv"

View File

@ -19,13 +19,13 @@ let
in
buildGoModule rec {
pname = "argo";
version = "3.0.3";
version = "3.0.4";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo";
rev = "v${version}";
sha256 = "sha256-6w0FwVmzICsjWH7lE2ZnIhictNFTpo8pQ2Wvsyn925A=";
sha256 = "sha256-zswX6nt7AxxTMznbY4Rk0A8j2PpSNht+gbTMbDr2yuY=";
};
vendorSha256 = "sha256-YjVAoMyGKMHLGEPeOOkCKCzeWFiUsXfJIKcw5GYoljg=";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "helmfile";
version = "0.139.3";
version = "0.139.6";
src = fetchFromGitHub {
owner = "roboll";
repo = "helmfile";
rev = "v${version}";
sha256 = "sha256-Cg4FFTowrWMDfpaMJwrOSs3ykZxH378OMR+1+vJt5e8=";
sha256 = "sha256-pAo8MmQqqSICB4rguhkGHJqyB9fBBzpp7NEaa59rVb4=";
};
vendorSha256 = "sha256-Hs09CT/KSwYL2AKLseOjWB5Xvvr5TvbzwDywsGQ9kMw=";

View File

@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
x86_64-linux = "Linux-64bit";
aarch64-linux = "Linux-arm64";
x86_64-darwin = "macOS-64bit";
aarch64-darwin = "macOS-arm64";
}.${system} or (throw "Unsupported system: ${system}");
fetchsrc = version: sha256: fetchzip {
url = "https://github.com/vmware-tanzu/octant/releases/download/v${version}/octant_${version}_${suffix}.tar.gz";
@ -21,6 +22,7 @@ stdenv.mkDerivation rec {
x86_64-linux = "sha256-VFlZP5d6/YhzVIhveqMc4HfapBt0K/XjtqjCQNc514A=";
aarch64-linux = "sha256-RfdMfimmoHG4ixBtUVJ/V+mDhQ9aD+yeohkeUMUP8Zg=";
x86_64-darwin = "sha256-2Qgl3RdA4mMRTqR7o3Q86Zip5wtgvFp1vZn689FUtSI=";
aarch64-darwin = "sha256-+eZVg+B5YYf+XnDhNd6OU4+yFM9GtyiavcAr/EXh7XE=";
};
dontConfigure = true;
@ -59,6 +61,6 @@ stdenv.mkDerivation rec {
'';
license = licenses.asl20;
maintainers = with maintainers; [ jk ];
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
};
}

View File

@ -164,9 +164,9 @@ in rec {
});
terraform_0_15 = pluggable (generic {
version = "0.15.3";
sha256 = "12dny8f89ry75ljarhdqlwgzv6py75s1wcmb62n5fp9nk03bjf2p";
vendorSha256 = "13ap1arn81lcxry08j42ck6lgvdcvdxgah6d40pmpkzkw9jcf55b";
version = "0.15.4";
sha256 = "14pxnmxy0c7idn8vgns70fxm2835gbz5vd1hmwzvhm394vr62frp";
vendorSha256 = "12hrpxay6k3kz89ihyhl91c4lw4wp821ppa245w9977fq09fhnx0";
patches = [ ./provider-path-0_15.patch ];
passthru = { inherit plugins; };
});

View File

@ -1,6 +1,6 @@
diff -Naur terraform.old/command/init.go terraform.new/command/init.go
--- terraform.old/command/init.go
+++ terraform.new/command/init.go
diff -Naur terraform.old/internal/command/init.go terraform.new/internal/command/init.go
--- terraform.old/internal/command/init.go
+++ terraform.new/internal/command/init.go
@@ -3,6 +3,7 @@
import (
"context"

View File

@ -1,12 +1,13 @@
{ lib, stdenv, fetchFromGitLab, cmake, gfortran, perl
, openblas, hdf5-cpp, python3, texlive
, armadillo, mpi, globalarrays, openssh
, makeWrapper, fetchpatch
, makeWrapper
} :
let
version = "20.10";
gitLabRev = "v${version}";
version = "21.02";
# The tag keeps moving, fix a hash instead
gitLabRev = "41cee871945ac712e86ee971425a49a8fc60a936";
python = python3.withPackages (ps : with ps; [ six pyparsing ]);
@ -18,13 +19,13 @@ in stdenv.mkDerivation {
owner = "Molcas";
repo = "OpenMolcas";
rev = gitLabRev;
sha256 = "0xr9plgb0cfmxxqmd3wrhvl0hv2jqqfqzxwzs1jysq2m9cxl314v";
sha256 = "0cap53gy1wds2qaxbijw09fqhvfxphfkr93nhp9xdq84yxh4wzv6";
};
patches = [
# Required to handle openblas multiple outputs
./openblasPath.patch
];
];
nativeBuildInputs = [ perl cmake texlive.combined.scheme-minimal makeWrapper ];
buildInputs = [
@ -57,6 +58,10 @@ in stdenv.mkDerivation {
export PATH=$PATH:$out/bin
'';
postInstall = ''
mv $out/pymolcas $out/bin
'';
postFixup = ''
# Wrong store path in shebang (no Python pkgs), force re-patching
sed -i "1s:/.*:/usr/bin/env python:" $out/bin/pymolcas

View File

@ -1,6 +1,10 @@
{ lib, stdenv, fetchFromGitHub, python3Packages, readline, bc }:
with lib;
{ lib
, stdenv
, fetchFromGitHub
, readline
, bc
, python3Packages
}:
stdenv.mkDerivation rec {
pname = "bcal";
@ -13,23 +17,21 @@ stdenv.mkDerivation rec {
sha256 = "4vR5rcbNkoEdSRNoMH9qMHP3iWFxejkVfXNiYfwbo/A=";
};
nativeBuildInputs = [ python3Packages.pytest ];
buildInputs = [ readline ];
installFlags = [ "PREFIX=$(out)" ];
doCheck = true;
checkInputs = [ bc ];
checkPhase = ''
python3 -m pytest test.py
'';
installFlags = [ "DESTDIR=$(out)" "PREFIX=" ];
checkInputs = [ bc python3Packages.pytestCheckHook ];
meta = {
pytestFlagsArray = [ "test.py" ];
meta = with lib; {
description = "Storage conversion and expression calculator";
homepage = "https://github.com/jarun/bcal";
license = licenses.gpl3Only;
platforms = [ "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
platforms = platforms.unix;
maintainers = with maintainers; [ jfrankenau ];
};
}

View File

@ -12,14 +12,23 @@ assert withThread -> libpthreadstubs != null;
stdenv.mkDerivation rec {
pname = "pari";
version = "2.11.4";
version = "2.13.1";
src = fetchurl {
# Versions with current majorMinor values are at http://pari.math.u-bordeaux.fr/pub/pari/unix/${pname}-${version}.tar.gz
url = "https://pari.math.u-bordeaux.fr/pub/pari/OLD/${lib.versions.majorMinor version}/${pname}-${version}.tar.gz";
sha256 = "sha256-v8iPxPc1L0hA5uNSxy8DacvqikVAOxg0piafNwmXCxw=";
urls = [
"https://pari.math.u-bordeaux.fr/pub/pari/unix/${pname}-${version}.tar.gz"
# old versions are at the url below
"https://pari.math.u-bordeaux.fr/pub/pari/OLD/${lib.versions.majorMinor version}/${pname}-${version}.tar.gz"
];
sha256 = "sha256-gez31wzNquIwFlz/Ynyc4uwpe48i+fQHQiedhfht/LE=";
};
patches = [
# rebased version of 3edb98db78, see
# https://pari.math.u-bordeaux.fr/cgi-bin/bugreport.cgi?bug=2284
./rnfdisc.patch
];
buildInputs = [
gmp
readline

View File

@ -0,0 +1,51 @@
commit 0d8a3ac970291c62b56104172418b3f2ca30927c
Author: Bill Allombert <Bill.Allombert@math.u-bordeaux.fr>
Date: Sun Mar 28 13:27:24 2021 +0200
rnfdisc_factored: remove spurious Q_primpart [#2284]
diff --git a/src/basemath/base2.c b/src/basemath/base2.c
index 7e7d0db9d..c461826f4 100644
--- a/src/basemath/base2.c
+++ b/src/basemath/base2.c
@@ -3582,7 +3582,7 @@ rnfdisc_factored(GEN nf, GEN pol, GEN *pd)
nf = checknf(nf);
pol = rnfdisc_get_T(nf, pol, &lim);
- disc = nf_to_scalar_or_basis(nf, nfX_disc(nf, Q_primpart(pol)));
+ disc = nf_to_scalar_or_basis(nf, nfX_disc(nf, pol));
pol = nfX_to_monic(nf, pol, NULL);
fa = idealfactor_partial(nf, disc, lim);
P = gel(fa,1); l = lg(P);
diff --git a/src/test/32/rnf b/src/test/32/rnf
index 1e743f415..c016dce00 100644
--- a/src/test/32/rnf
+++ b/src/test/32/rnf
@@ -853,9 +853,10 @@ error("inconsistent dimensions in idealtwoelt.")
0
0
1
-[[7361, 3786, 318, 5823; 0, 1, 0, 0; 0, 0, 1, 0; 0, 0, 0, 1], [-3, 6, -2, 0]
-~]
-[2, -1]
+[[433, 322, 318, 1318/17; 0, 1, 0, 12/17; 0, 0, 1, 5/17; 0, 0, 0, 1/17], [25
+/17, -12/17, 12/17, 16/17]~]
+[1, -1]
+[[12, 0, 0, 0; 0, 12, 4, 0; 0, 0, 4, 0; 0, 0, 0, 4], [6, 5, -1, 2]~]
*** at top-level: rnfdedekind(nf,P,pr2,1)
*** ^-----------------------
*** rnfdedekind: sorry, Dedekind in the difficult case is not yet implemented.
diff --git a/src/test/in/rnf b/src/test/in/rnf
index 7851ae291..318d5349e 100644
--- a/src/test/in/rnf
+++ b/src/test/in/rnf
@@ -212,6 +212,9 @@ k = nfinit(y^4 + 10*y^2 + 17);
rnfdisc(k, x^2 - x + 1/Mod(y,k.pol))
rnfdisc(k, x^2 - x + 1/2)
+k = nfinit(y^4 - 10*y^2 + 1);
+rnfdisc(k,x^2-(y^3/2+y^2-5*y/2+1))
+
\\ ERRORS, keep at end of file
rnfdedekind(nf, P, pr2, 1)
rnfdedekind(nf, P)

View File

@ -78,6 +78,18 @@ stdenv.mkDerivation rec {
# ignore a deprecation warning for usage of `cmp` in the attrs library in the doctests
./patches/ignore-cmp-deprecation.patch
# https://trac.sagemath.org/ticket/30801. this patch has
# positive_review but has not been merged upstream yet, so we
# don't use fetchSageDiff because it returns a file that contains
# each commit as a separate patch instead of a single diff, and
# some commits from the pari update branch are already in 9.3.rc5
# (auto-resolvable merge conflicts).
(fetchpatch {
name = "pari-2.13.1.patch";
url = "https://github.com/sagemath/sagetrac-mirror/compare/d6c5cd9be78cc448ee4c54bac93385b1244a234c...10a4531721d2700fd717e2b3a1364508ffd971c3.diff";
sha256 = "sha256-zMjRMEReoiTvmt+vvV0Ij1jtyLSLwSXBEVXqgvmq1D4=";
})
];
patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "gh";
version = "1.10.0";
version = "1.10.1";
src = fetchFromGitHub {
owner = "cli";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-nQc10uTb7yQoH9rlMQiexttdAnnPRGaHCrzZNqkZcIc=";
sha256 = "sha256-ESwgG1sMkR44KpO7k5HNR3gPBgOqIADpS6fSOqqNn2Q=";
};
vendorSha256 = "sha256-A7Bo0HQ5Z2SXY32jWCYgwvvInD3xYLSXvipzeaQTDiM=";

View File

@ -1,12 +1,19 @@
{ lib, buildPythonApplication, fetchPypi, pyyaml }:
{ lib, buildPythonApplication, fetchFromGitHub, pyyaml }:
buildPythonApplication rec {
version = "0.1.5";
version = "0.2.0pre-2021-05-18";
pname = "podman-compose";
src = fetchPypi {
inherit pname version;
sha256 = "1sgbc889zq127qhxa9frhswa1mid19fs5qnyzfihx648y5i968pv";
# "This project is still under development." -- README.md
#
# As of May 2021, the latest release (0.1.5) has fewer than half of all
# commits. This project seems to have no release management, so the last
# commit is the best one until proven otherwise.
src = fetchFromGitHub {
repo = "podman-compose";
owner = "containers";
rev = "62d2024feecf312e9591cc145f49cee9c70ab4fe";
sha256 = "17992imkvi6129wvajsp0iz5iicfmh53i20qy2mzz17kcz30r2pp";
};
propagatedBuildInputs = [ pyyaml ];

View File

@ -1,14 +1,24 @@
{ mkDerivation, lib, fetchFromGitHub, nix-update-script, cmake, ninja, qtbase, pantheon }:
{ mkDerivation
, stdenv
, lib
, fetchFromGitHub
, nix-update-script
, cmake
, ninja
, qtbase
, qt5
, xorg
}:
mkDerivation rec {
pname = "adwaita-qt";
version = "1.1.4";
version = "1.3.0";
src = fetchFromGitHub {
owner = "FedoraQt";
repo = pname;
rev = version;
sha256 = "19s97wm96g3828dp8m85j3lsn1n6h5h2zqk4652hcqcgq6xb6gv5";
sha256 = "1fkivdiz4al84nhgg1srj33l109j9si63biw3asy339cyyzj28c9";
};
nativeBuildInputs = [
@ -18,11 +28,14 @@ mkDerivation rec {
buildInputs = [
qtbase
qt5.qtx11extras
] ++ lib.optionals stdenv.isLinux [
xorg.libxcb
];
postPatch = ''
# Fix plugin dir
substituteInPlace style/CMakeLists.txt \
substituteInPlace src/style/CMakeLists.txt \
--replace "DESTINATION \"\''${QT_PLUGINS_DIR}/styles" "DESTINATION \"$qtPluginPrefix/styles"
'';
@ -37,6 +50,6 @@ mkDerivation rec {
homepage = "https://github.com/FedoraQt/adwaita-qt";
license = licenses.gpl2Plus;
maintainers = teams.gnome.members ++ (with maintainers; [ ]);
platforms = platforms.linux;
platforms = platforms.all;
};
}

View File

@ -2,21 +2,19 @@
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-fuzzy-app-search";
version = "4";
version = "4.0.1";
src = fetchFromGitLab {
owner = "Czarlie";
repo = "gnome-fuzzy-app-search";
rev = "da9c15d39958d9c3b38df3b616fd40b85aed24e5";
sha256 = "1r3qha530s97x818znn1wi76f4x9bhlgi7jlxfwjnrwys62cv5fn";
rev = "v${version}";
sha256 = "127n3jc5d6cl0yrpjf8acdj76br97knks1wx4f6jcswkx9x47w0a";
};
uuid = "gnome-fuzzy-app-search@gnome-shell-extensions.Czarlie.gitlab.com";
nativeBuildInputs = [ glib ];
patches = [ ./fix-desktop-file-paths.patch ];
makeFlags = [ "INSTALL_PATH=$(out)/share/gnome-shell/extensions" ];
meta = with lib; {

View File

@ -1,50 +0,0 @@
diff --git a/applicationsUtils.js b/applicationsUtils.js
index 728223b..aa9f291 100644
--- a/applicationsUtils.js
+++ b/applicationsUtils.js
@@ -44,27 +44,24 @@ var Search = new Lang.Class({
* @return {Void}
*/
_init: function () {
- let dir = [
- "/usr/share/applications",
- GLib.get_home_dir() + "/.local/share/applications",
- ];
-
- // listen object - file/monitor list
- this._listen = dir.map((path) => {
- let file = Gio.File.new_for_path(path);
- let monitor = file.monitor(Gio.FileMonitorFlags.NONE, null);
-
- // refresh on each directory change
- monitor.connect(
- "changed",
- Lang.bind(this, this._handleMonitorChanged)
- );
-
- return {
- file: file,
- monitor: monitor,
- };
- });
+ this._listen = [...new Set(GLib.get_system_data_dirs())]
+ .filter((path) => path.endsWith("/share"))
+ .map((path) => Gio.File.new_for_path(path + "/applications"))
+ .filter((file) => file.query_exists(null))
+ .map((file) => {
+ let monitor = file.monitor(Gio.FileMonitorFlags.NONE, null);
+
+ // refresh on each directory change
+ monitor.connect(
+ "changed",
+ Lang.bind(this, this._handleMonitorChanged)
+ );
+
+ return {
+ file: file,
+ monitor: monitor,
+ };
+ });
this._interval = null;
this._data = {};

View File

@ -19,7 +19,7 @@
stdenv.mkDerivation rec {
pname = "elementary-calculator";
version = "1.6.0";
version = "1.6.1";
repoName = "calculator";
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
sha256 = "sha256-kDqUwTi3XnFGUwAjnWcaKqDylUFqpus9WurLoqbV1xk=";
sha256 = "sha256-LGY111wPldxuSfqhZ2E2TeJjexcGbfS25RjLw+Wi99c=";
};
passthru = {

View File

@ -139,6 +139,7 @@ let
plasma-integration = callPackage ./plasma-integration {};
plasma-nm = callPackage ./plasma-nm {};
plasma-pa = callPackage ./plasma-pa.nix { inherit gconf; };
plasma-sdk = callPackage ./plasma-sdk.nix {};
plasma-systemmonitor = callPackage ./plasma-systemmonitor.nix { };
plasma-thunderbolt = callPackage ./plasma-thunderbolt.nix { };
plasma-vault = callPackage ./plasma-vault {};

View File

@ -0,0 +1,41 @@
{ mkDerivation
, lib
, extra-cmake-modules
, karchive
, kcompletion
, kconfig
, kconfigwidgets
, kcoreaddons
, kdbusaddons
, kdeclarative
, ki18n
, kiconthemes
, kio
, plasma-framework
, kservice
, ktexteditor
, kwidgetsaddons
, kdoctools
, qtbase
}:
mkDerivation {
name = "plasma-sdk";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
karchive
kcompletion
kconfig
kconfigwidgets
kcoreaddons
kdbusaddons
kdeclarative
ki18n
kiconthemes
kio
plasma-framework
kservice
ktexteditor
kwidgetsaddons
];
}

View File

@ -1,5 +1,5 @@
{ stdenv, lib, fetchurl, writeText, gradleGen, pkg-config, perl, cmake
, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsaLib, ffmpeg_3, python, ruby
, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsaLib, ffmpeg, python, ruby
, openjdk11-bootstrap }:
let
@ -19,7 +19,7 @@ let
sha256 = "1h7qsylr7rnwnbimqjyn3whszp9kv4h3gpicsrb3mradxc9yv194";
};
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg_3 ];
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsaLib ffmpeg ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python ruby ];
dontUseCmakeConfigure = true;

View File

@ -7,7 +7,7 @@
, python3
, z3Support ? true
, z3 ? null
, cvc4Support ? true
, cvc4Support ? gccStdenv.isLinux
, cvc4 ? null
, cln ? null
, gmp ? null
@ -98,7 +98,6 @@ let
description = "Compiler for Ethereum smart contract language Solidity";
homepage = "https://github.com/ethereum/solidity";
license = licenses.gpl3;
platforms = with platforms; linux; # darwin is currently broken
maintainers = with maintainers; [ dbrock akru lionello sifmelcara ];
inherit version;
};

View File

@ -9,4 +9,7 @@ callPackage ./generic.nix (rec {
branch = "3.4.8";
sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch";
darwinFrameworks = [ Cocoa CoreMedia ];
knownVulnerabilities = [
"CVE-2021-30123"
];
} // args)

View File

@ -8,11 +8,11 @@ assert odbcSupport -> unixODBC != null;
stdenv.mkDerivation rec {
pname = "freetds";
version = "1.2.18";
version = "1.2.21";
src = fetchurl {
url = "https://www.freetds.org/files/stable/${pname}-${version}.tar.bz2";
sha256 = "sha256-ENR+YJhs/FH4Fw+p6rpDEU7r3eC6bmscSBPYbwIaqt0=";
sha256 = "sha256-pea79tbz3AgWsZy9CDCNJ6CEsEkmqqBaxn+AjqB9PY0=";
};
buildInputs = [

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "gensio";
version = "2.2.4";
version = "2.2.5";
src = fetchFromGitHub {
owner = "cminyard";
repo = pname;
rev = "v${version}";
sha256 = "sha256-tdMdIudB8zZWXF+Q0YhFo9Q4VHjLJh3rdfQsYhgo2DU=";
sha256 = "sha256-QC07NGgZa++qHyGZY3fjosjJVuRFfc7HYmdGxQHAz4s=";
};
passthru = {

View File

@ -0,0 +1,22 @@
{ stdenv, lib, cmake, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "filesystem";
version = "1.5.4";
src = fetchFromGitHub {
owner = "gulrak";
repo = "filesystem";
rev = "v${version}";
hash = "sha256-SvNUzKoNiSIM0no+A0NUT6hmeUH9SzgLQLrC5XOC0Ho=";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "header-only single-file C++ std::filesystem compatible helper library";
homepage = "https://github.com/gulrak/filesystem";
license = licenses.mit;
maintainers = with maintainers; [ lourkeur ];
};
}

View File

@ -42,6 +42,12 @@ stdenv.mkDerivation rec {
url = "https://github.com/mono/gtk-sharp/commit/401df51bc461de93c1a78b6a7a0d5adc63cf186c.patch";
sha256 = "0hrkcr5a7wkixnyp60v4d6j3arsb63h54rd30lc5ajfjb3p92kcf";
})
# @see https://github.com/mono/gtk-sharp/pull/263
(fetchpatch {
name = "disambiguate_Gtk.Range.patch";
url = "https://github.com/mono/gtk-sharp/commit/a00552ad68ae349e89e440dca21b86dbd6bccd30.patch";
sha256 = "1ylplr9g9x7ybsgrydsgr6p3g7w6i46yng1hnl3afgn4vj45rag2";
})
];
dontStrip = true;

View File

@ -76,6 +76,13 @@ let
./opencl-headers-dir.patch
];
# Uses linker flags that are not supported on Darwin.
postPatch = lib.optionalString stdenv.isDarwin ''
sed -i -e '/SET_LINUX_EXPORTS_FILE/d' CMakeLists.txt
substituteInPlace CMakeLists.txt \
--replace '-Wl,--no-undefined' ""
'';
nativeBuildInputs = [ cmake git llvm.dev ];
buildInputs = [ libclang llvm spirv-llvm-translator ];

View File

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "ucx";
version = "1.10.0";
version = "1.10.1";
src = fetchFromGitHub {
owner = "openucx";
repo = "ucx";
rev = "v${version}";
sha256 = "1j2gfw4anixb5ajgiyn7bcca8pgjvsaf0y0b2xz88s9hdx0h6gs9";
sha256 = "1jl7wrmcpf6lakpi1gvjcs18cy0mmwgsv5wdd80zyl41cpd8gm8d";
};
nativeBuildInputs = [ autoreconfHook doxygen ];

View File

@ -111,6 +111,8 @@ stdenv.mkDerivation rec {
license = licenses.mit; # Expat version
platforms = if withLibraries then platforms.linux else platforms.unix;
maintainers = with maintainers; [ primeos codyopel qyliss ];
# big sur doesn't support gcc stdenv and wayland doesn't build with clang
broken = stdenv.isDarwin;
};
passthru.version = version;

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "aioshelly";
version = "0.6.2";
version = "0.6.3";
src = fetchFromGitHub {
owner = "home-assistant-libs";
repo = pname;
rev = version;
sha256 = "sha256-vlIon+VAHeJiaSIVMEKEpwQC4gXA52vxfEkiQMC9yiw=";
sha256 = "sha256-c4EFR7rcYdrCdM0AfmX/d7cP4woh6P1iAjeSQV9ieKM=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,58 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchFromGitHub
, setuptools-scm
, substituteAll
, cmake
, boost
, gmp
, pybind11
, pythonOlder
}:
buildPythonPackage rec {
pname = "blspy";
version = "1.0.2";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-N1mk83uZrzSty2DyXfKiVp85z/jmztiUSRXKfNBRJV4=";
};
patches = [
# prevent CMake from trying to get libraries on the Internet
(substituteAll {
src = ./dont_fetch_dependencies.patch;
pybind11_src = pybind11.src;
relic_src = fetchFromGitHub {
owner = "relic-toolkit";
repo = "relic";
rev = "1885ae3b681c423c72b65ce1fe70910142cf941c"; # pinned by blspy
hash = "sha256-tsSZTcssl8t7Nqdex4BesgQ+ACPgTdtHnJFvS9josN0=";
};
})
];
nativeBuildInputs = [ cmake setuptools-scm ];
buildInputs = [ boost gmp.static pybind11 ];
pythonImportsCheck = [
"blspy"
];
# Note: upstream testsuite is just a single test.py script outside of any framework
doCheck = false;
# CMake needs to be run by setuptools rather than by its hook
dontConfigure = true;
meta = with lib; {
description = "BLS signatures with aggregation";
homepage = "https://github.com/Chia-Network/bls-signatures/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,38 @@
diff --git a/python-bindings/CMakeLists.txt b/python-bindings/CMakeLists.txt
index 255e3bb..5f99c3a 100644
--- a/python-bindings/CMakeLists.txt
+++ b/python-bindings/CMakeLists.txt
@@ -6,8 +6,7 @@ include(FetchContent)
FetchContent_Declare(
pybind11
- GIT_REPOSITORY https://github.com/pybind/pybind11.git
- GIT_TAG v2.6.2
+ SOURCE_DIR @pybind11_src@
)
FetchContent_MakeAvailable(pybind11 relic)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index faecc61..3272116 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -4,18 +4,9 @@ set (CMAKE_CXX_STANDARD 17)
# CMake 3.14+
include(FetchContent)
-if (DEFINED ENV{RELIC_MAIN})
- set(RELIC_GIT_TAG "origin/main")
-else ()
- set(RELIC_GIT_TAG "1885ae3b681c423c72b65ce1fe70910142cf941c")
-endif ()
-
-message(STATUS "Relic will be built from: ${RELIC_GIT_TAG}")
-
FetchContent_Declare(
relic
- GIT_REPOSITORY https://github.com/relic-toolkit/relic.git
- GIT_TAG ${RELIC_GIT_TAG}
+ SOURCE_DIR @relic_src@
)
FetchContent_MakeAvailable(relic)

View File

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, fetchPypi
, cmake
, pybind11
, pythonOlder
, pytestCheckHook
, setuptools-scm
}:
buildPythonPackage rec {
pname = "chiabip158";
version = "1.0";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-dG6A4n30uPswQWY/Wmi75HK4ZMCDNr9Lt05FRWEPYV8=";
};
nativeBuildInputs = [ cmake setuptools-scm ];
buildInputs = [ pybind11 ];
checkInputs = [
pytestCheckHook
];
# CMake needs to be run by setuptools rather than by its hook
dontConfigure = true;
meta = with lib; {
description = "Chia's implementation of BIP 158";
homepage = "https://www.chia.net/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,48 @@
{ lib
, substituteAll
, buildPythonPackage
, fetchPypi
, cmake
, cxxopts
, ghc_filesystem
, pybind11
, pythonOlder
, psutil
, setuptools-scm
}:
buildPythonPackage rec {
pname = "chiapos";
version = "1.0.1";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-kJx57EtwPBrGMpjnSzeYYhWqc/g1N1Bg8slW5oZKjg8=";
};
patches = [
# prevent CMake from trying to get libraries on the Internet
(substituteAll {
src = ./dont_fetch_dependencies.patch;
inherit cxxopts ghc_filesystem;
pybind11_src = pybind11.src;
})
];
nativeBuildInputs = [ cmake setuptools-scm ];
buildInputs = [ pybind11 ];
checkInputs = [ psutil ];
# CMake needs to be run by setuptools rather than by its hook
dontConfigure = true;
meta = with lib; {
description = "Chia proof of space library";
homepage = "https://www.chia.net/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,31 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b4a2f5..86f849c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -18,22 +18,19 @@ include(FetchContent)
FetchContent_Declare(
pybind11-src
- GIT_REPOSITORY https://github.com/pybind/pybind11.git
- GIT_TAG v2.6.2
+ SOURCE_DIR @pybind11_src@
)
FetchContent_MakeAvailable(pybind11-src)
FetchContent_Declare(
cxxopts
- GIT_REPOSITORY https://github.com/jarro2783/cxxopts.git
- GIT_TAG v2.2.1
+ SOURCE_DIR @cxxopts@
)
FetchContent_MakeAvailable(cxxopts)
FetchContent_Declare(
gulrak
- GIT_REPOSITORY https://github.com/gulrak/filesystem.git
- GIT_TAG v1.5.4
+ SOURCE_DIR @ghc_filesystem@
)
FetchContent_MakeAvailable(gulrak)

View File

@ -0,0 +1,53 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, setuptools-scm
, substituteAll
, cmake
, boost
, gmp
, pybind11
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "chiavdf";
version = "1.0.1";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-z0od/VrH580+9641lKNI7jbVMlJZKCWnoT+GljnFxmU=";
};
patches = [
# prevent CMake from trying to get libraries on the Internet
(substituteAll {
src = ./dont_fetch_dependencies.patch;
pybind11_src = pybind11.src;
})
];
# x86 instructions are needed for this component
BUILD_VDF_CLIENT = lib.optionalString (!stdenv.isx86_64) "N";
nativeBuildInputs = [ cmake setuptools-scm ];
buildInputs = [ boost gmp pybind11 ];
checkInputs = [
pytestCheckHook
];
# CMake needs to be run by setuptools rather than by its hook
dontConfigure = true;
meta = with lib; {
description = "Chia verifiable delay function utilities";
homepage = "https://www.chia.net/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,14 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c975128..a9f6910 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -31,8 +31,7 @@ include(FetchContent)
FetchContent_Declare(
pybind11-src
- GIT_REPOSITORY https://github.com/pybind/pybind11.git
- GIT_TAG v2.6.2
+ SOURCE_DIR @pybind11_src@
)
FetchContent_MakeAvailable(pybind11-src)

View File

@ -0,0 +1,98 @@
{ stdenv
, lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, matplotlib
, networkx
, numpy
, pandas
, requests
, scipy
, sortedcontainers
, sympy
, tqdm
, typing-extensions
# Contrib requirements
, withContribRequires ? false
, autoray ? null
, opt-einsum
, ply
, pylatex ? null
, pyquil ? null
, quimb ? null
# test inputs
, pytestCheckHook
, freezegun
, pytest-asyncio
}:
buildPythonPackage rec {
pname = "cirq-core";
version = "0.11.0";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "quantumlib";
repo = "cirq";
rev = "v${version}";
hash = "sha256-JaKTGnkYhzIFb35SGaho8DRupoT0JFYKA5+rJEq4oXw=";
};
sourceRoot = "source/${pname}";
postPatch = ''
substituteInPlace requirements.txt \
--replace "matplotlib~=3.0" "matplotlib" \
--replace "networkx~=2.4" "networkx" \
--replace "numpy~=1.16" "numpy" \
--replace "requests~=2.18" "requests"
'';
propagatedBuildInputs = [
matplotlib
networkx
numpy
pandas
requests
scipy
sortedcontainers
sympy
tqdm
typing-extensions
] ++ lib.optionals withContribRequires [
autoray
opt-einsum
ply
pylatex
pyquil
quimb
];
checkInputs = [
pytestCheckHook
pytest-asyncio
freezegun
];
pytestFlagsArray = lib.optionals (!withContribRequires) [
# requires external (unpackaged) libraries, so untested.
"--ignore=cirq/contrib/"
];
disabledTests = [
"test_metadata_search_path" # tries to import flynt, which isn't in Nixpkgs
"test_benchmark_2q_xeb_fidelities" # fails due pandas MultiIndex. Maybe issue with pandas version in nix?
] ++ lib.optionals stdenv.hostPlatform.isAarch64 [
# Seem to fail due to math issues on aarch64?
"expectation_from_wavefunction"
"test_single_qubit_op_to_framed_phase_form_output_on_example_case"
];
meta = with lib; {
description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.";
homepage = "https://github.com/quantumlib/cirq";
changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}";
license = licenses.asl20;
maintainers = with maintainers; [ drewrisinger ];
};
}

View File

@ -0,0 +1,29 @@
{ lib
, buildPythonPackage
, pythonOlder
, cirq-core
, google-api-core
, protobuf
# test inputs
, pytestCheckHook
, freezegun
}:
buildPythonPackage rec {
pname = "cirq-google";
inherit (cirq-core) version src meta;
sourceRoot = "source/${pname}";
postPatch = ''
substituteInPlace requirements.txt --replace "protobuf~=3.13.0" "protobuf"
'';
propagatedBuildInputs = [
cirq-core
google-api-core
protobuf
];
checkInputs = [ pytestCheckHook freezegun ];
}

View File

@ -1,114 +1,28 @@
{ stdenv
, lib
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, google-api-core
, matplotlib
, networkx
, numpy
, pandas
, protobuf
, requests
, scipy
, sortedcontainers
, sympy
, tqdm
, typing-extensions
, cirq-core
, cirq-google
# test inputs
, freezegun
, pytestCheckHook
, pytest-asyncio
, pytest-benchmark
, ply
, pydot
, pyyaml
, pygraphviz
}:
buildPythonPackage rec {
pname = "cirq";
version = "0.10.0";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "quantumlib";
repo = "cirq";
rev = "v${version}";
sha256 = "0xinml44n2lfl0q2lb2apmn69gsszlwim83082f66vyk0gpwd4lr";
};
postPatch = ''
substituteInPlace requirements.txt \
--replace "matplotlib~=3.0" "matplotlib" \
--replace "networkx~=2.4" "networkx" \
--replace "numpy~=1.16" "numpy" \
--replace "protobuf~=3.13.0" "protobuf"
'';
inherit (cirq-core) version src meta;
propagatedBuildInputs = [
google-api-core
matplotlib
networkx
numpy
pandas
protobuf
requests
scipy
sortedcontainers
sympy
tqdm
typing-extensions
cirq-core
cirq-google
];
# pythonImportsCheck = [ "cirq" "cirq.Circuit" ]; # cirq's importlib hook doesn't work here
checkInputs = [
pytestCheckHook
freezegun
pytest-asyncio
pytest-benchmark
ply
pydot
pyyaml
pygraphviz
checkInputs = [ pytestCheckHook ];
# Don't run submodule or development tool tests
disabledTestPaths = [
"cirq-google"
"cirq-core"
"dev_tools"
];
pytestFlagsArray = [
"--ignore=dev_tools" # Only needed when developing new code, which is out-of-scope
"--ignore=cirq/contrib/" # requires external (unpackaged) python packages, so untested.
"--benchmark-disable" # Don't need to run benchmarks when packaging.
];
disabledTests = lib.optionals stdenv.isAarch64 [
# Seem to fail due to math issues on aarch64?
"expectation_from_wavefunction"
"test_single_qubit_op_to_framed_phase_form_output_on_example_case"
] ++ [
# slow tests, for quicker building
"test_anneal_search_method_calls"
"test_density_matrix_from_state_tomography_is_correct"
"test_example_runs_qubit_characterizations"
"test_example_runs_hello_line_perf"
"test_example_runs_bc_mean_field_perf"
"test_main_loop"
"test_clifford_circuit_2"
"test_decompose_specific_matrices"
"test_two_qubit_randomized_benchmarking"
"test_kak_decomposition_perf"
"test_example_runs_simon"
"test_decompose_random_unitary"
"test_decompose_size_special_unitary"
"test_api_retry_5xx_errors"
"test_xeb_fidelity"
"test_example_runs_phase_estimator_perf"
"test_cross_entropy_benchmarking"
];
meta = with lib; {
description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.";
homepage = "https://github.com/quantumlib/cirq";
changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}";
license = licenses.asl20;
maintainers = with maintainers; [ drewrisinger ];
};
}

View File

@ -1,6 +1,6 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchFromGitHub
, setuptools
, pytz
, tzlocal
@ -10,15 +10,20 @@
, freezegun
, mock
, nose
, pytestCheckHook
, pytest-xdist
}:
buildPythonPackage rec {
pname = "clickhouse-driver";
version = "0.2.0";
src = fetchPypi {
inherit pname version;
sha256 = "62d37f93872d5a13eb6b0d52bab2b593ed0e14cf9200949aa2d02f9801064c0f";
# pypi source doesn't contain tests
src = fetchFromGitHub {
owner = "mymarilyn";
repo = "clickhouse-driver";
rev = "96b7ba448c63ca2670cc9aa70d4a0e08826fb650";
sha256 = "sha256-HFKUxJOlBCVlu7Ia8heGpwX6+HdKuwSy92s3v+GKGwE=";
};
propagatedBuildInputs = [
@ -34,9 +39,30 @@ buildPythonPackage rec {
freezegun
mock
nose
pytest-xdist
pytestCheckHook
];
doCheck = true;
postPatch = ''
substituteInPlace setup.py \
--replace "lz4<=3.0.1" "lz4<=4"
'';
# remove source to prevent pytest testing source instead of the build artifacts
# (the source doesn't contain the extension modules)
preCheck = ''
rm -rf clickhouse_driver
'';
# some test in test_buffered_reader.py doesn't seem to return
disabledTestPaths = [ "tests/test_buffered_reader.py" ];
pytestFlagsArray = [ "-n" "$NIX_BUILD_CORES" ];
# most tests require `clickhouse`
# TODO: enable tests after `clickhouse` unbroken
doCheck = false;
pythonImportsCheck = [ "clickhouse_driver" ];
meta = with lib; {

View File

@ -0,0 +1,47 @@
{ lib
, fetchFromGitHub
, buildPythonPackage
, rustPlatform
, pythonOlder
, openssl
, perl
}:
buildPythonPackage rec {
pname = "clvm_rs";
version = "0.1.7";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "clvm_rs";
rev = version;
sha256 = "sha256-ves23q1uQ3lexwK9l1xGRss05jYObJDi/aY9Yvp4aPU=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-3kPzM2EX61ZvU6VKXY1OG/ic+9FU3Et4RuKp+3QYzSo=";
};
format = "pyproject";
nativeBuildInputs = [
perl # used by openssl-sys to configure
] ++ (with rustPlatform; [
cargoSetupHook
maturinBuildHook
]);
buildInputs = [ openssl ];
pythonImportsCheck = [ "clvm_rs" ];
meta = with lib; {
homepage = "https://chialisp.com/";
description = "Rust implementation of clvm";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,51 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, clvm
, setuptools-scm
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "clvm_tools";
version = "0.4.3";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "clvm_tools";
rev = version;
sha256 = "sha256-bWz3YCrakob/kROq+LOA+yD1wtIbInVrmDqtg4/cV4g=";
};
nativeBuildInputs = [
setuptools-scm
];
propagatedBuildInputs = [
clvm
];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"clvm_tools"
];
disabledTests = [
"test_cmd_unknown-1_txt"
];
# give a hint to setuptools_scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION="v${version}";
meta = with lib; {
description = "Tools for clvm development";
homepage = "https://www.chialisp.com/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,52 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, blspy
, setuptools-scm
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "clvm";
version = "0.9.6";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "Chia-Network";
repo = "clvm";
rev = version;
sha256 = "sha256-XBQEilDFhx0kT9bEMD4jX+SDk3cAC1BUCWhbtpgrLcA=";
};
nativeBuildInputs = [
setuptools-scm
];
# give a hint to setuptools_scm on package version
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
propagatedBuildInputs = [
blspy
];
checkInputs = [
pytestCheckHook
];
disabledTestPaths = [
# all tests in this file have a circular dependency on clvm-tools
"tests/cmds_test.py"
];
pythonImportsCheck = [
"clvm"
];
meta = with lib; {
description = "Chia Lisp virtual machine";
homepage = "https://www.chia.net/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, portalocker
}:
buildPythonPackage rec {
pname = "concurrent-log-handler";
version = "0.9.19";
src = fetchPypi {
inherit pname version;
hash = "sha256-sS95q+0/lBIcJc6cJM21fYiSguxv9h9VNasgaNw31Ak=";
};
propagatedBuildInputs = [
portalocker
];
pythonImportsCheck = [
"concurrent_log_handler"
];
doCheck = false; # upstream has no tests
meta = with lib; {
description = "Python logging handler that allows multiple processes to safely write to the same log file concurrently";
homepage = "https://www.chia.net/";
license = licenses.asl20;
maintainers = teams.chia.members;
};
}

View File

@ -1,35 +1,28 @@
{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, pytest, scipy }:
{ lib, buildPythonPackage, fetchFromGitHub, pytestrunner, pytest, scipy, pytestCheckHook }:
buildPythonPackage {
pname = "fastpair";
version = "2016-07-05";
version = "2021-05-19";
src = fetchFromGitHub {
owner = "carsonfarmer";
repo = "fastpair";
rev = "92364962f6b695661f35a117bf11f96584128a8d";
sha256 = "1pv9sxycxdk567s5gs947rhlqngrb9nn9yh4dhdvg1ix1i8dca71";
rev = "d3170fd7e4d6e95312e7e1cb02e84077a3f06379";
sha256 = "1l8zgr8awg27lhlkpa2dsvghrb7b12jl1bkgpzg5q7pg8nizl9mx";
};
nativeBuildInputs = [ pytestrunner ];
checkInputs = [ pytest ];
checkInputs = [ pytest pytestCheckHook ];
propagatedBuildInputs = [
scipy
];
# Does not support pytest 4 https://github.com/carsonfarmer/fastpair/issues/14
doCheck = false;
checkPhase = ''
pytest fastpair
'';
meta = with lib; {
homepage = "https://github.com/carsonfarmer/fastpair";
description = "Data-structure for the dynamic closest-pair problem";
license = licenses.mit;
maintainers = with maintainers; [ cmcdragonkai ];
maintainers = with maintainers; [ cmcdragonkai rakesh4g ];
};
}

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "hatasmota";
version = "0.2.12";
version = "0.2.13";
src = fetchFromGitHub {
owner = "emontnemery";
repo = pname;
rev = version;
sha256 = "sha256-rf0EB9PxageMQhPzG96oWovt+5L/u68VPllzPT4yp2A=";
sha256 = "sha256-RzBEiO8IfeMls7ssCZ2yhL78UVrpZykwDl1IUshqOu8=";
};
propagatedBuildInputs = [

View File

@ -35,6 +35,12 @@ buildPythonPackage rec {
rm __init__.py
'';
checkInputs = [ pytestCheckHook ];
disabledTests = [
# known flaky tests: https://github.com/scikit-learn-contrib/hdbscan/issues/420
"test_mem_vec_diff_clusters"
"test_all_points_mem_vec_diff_clusters"
"test_approx_predict_diff_clusters"
];
meta = with lib; {
description = "Hierarchical Density-Based Spatial Clustering of Applications with Noise, a clustering algorithm with a scikit-learn compatible API";

View File

@ -9,13 +9,13 @@
buildPythonPackage rec {
pname = "karton-autoit-ripper";
version = "1.0.0";
version = "1.0.1";
src = fetchFromGitHub {
owner = "CERT-Polska";
repo = pname;
rev = "v${version}";
sha256 = "0vdsxkbjcr0inpcfjh45gl72ipzklkhgs06fdpkyy9y0cfx3zq7z";
sha256 = "1bsqpf9w6d9fjysmnafaglg2w41gsafs2xz4dzcgc7n92shpcs8w";
};
propagatedBuildInputs = [
@ -28,7 +28,6 @@ buildPythonPackage rec {
postPatch = ''
substituteInPlace requirements.txt \
--replace "autoit-ripper==1.0.0" "autoit-ripper" \
--replace "karton.core==4.0.4" "karton-core" \
--replace "malduck==3.1.0" "malduck>=3.1.0" \
--replace "regex==2020.2.20" "regex>=2020.2.20"
'';

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "karton-config-extractor";
version = "2.0.0";
version = "2.0.1";
src = fetchFromGitHub {
owner = "CERT-Polska";
repo = pname;
rev = "v${version}";
sha256 = "sha256-vijyqki2x813H2xbmz2JIXlh87J5l6NFoZcOu8xi61o=";
sha256 = "1kq0gbfz9y0n0bcblyrmwv4la3lcf86lf80794sdvyvn49g0brny";
};
propagatedBuildInputs = [

View File

@ -8,13 +8,13 @@
buildPythonPackage rec {
pname = "karton-yaramatcher";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
owner = "CERT-Polska";
repo = pname;
rev = "v${version}";
sha256 = "0yb9l5z826zli5cpcj234dmjdjha2g1lcwxyvpxm95whkhapc2cf";
sha256 = "0mv8v1gk6p21pw9kx6cxr76l6c5fxd3p6dk85cwfzz100h8mdvar";
};
propagatedBuildInputs = [
@ -22,12 +22,6 @@ buildPythonPackage rec {
yara-python
];
postPatch = ''
substituteInPlace requirements.txt \
--replace "karton-core==4.0.5" "karton-core" \
--replace "yara-python==4.0.2" "yara-python" \
'';
checkPhase = ''
runHook preCheck
${python.interpreter} -m unittest discover

View File

@ -0,0 +1,59 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, argon2_cffi
, keyring
, pycryptodome
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "keyrings.cryptfile";
# NOTE: newer releases are bugged/incompatible
# https://github.com/frispete/keyrings.cryptfile/issues/15
version = "1.3.4";
disabled = pythonOlder "3.5";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-jW+cKMm+xef8C+fl0CGe+6SEkYBHDjFX2/kLCZ62j6c=";
};
patches = [
# upstream setup.cfg has an option that is not supported
./fix-testsuite.patch
# change of API in keyrings.testing
(fetchpatch {
url = "https://github.com/frispete/keyrings.cryptfile/commit/6fb9e45f559b8b69f7a0a519c0bece6324471d79.patch";
sha256 = "sha256-1878pMO9Ed1zs1pl+7gMjwx77HbDHdE1CryN8TPfPdU=";
})
];
propagatedBuildInputs = [
argon2_cffi
keyring
pycryptodome
];
pythonImportsCheck = [
"keyrings.cryptfile"
];
checkInputs = [
pytestCheckHook
];
disabledTests = [
"test_set_properties"
"UncryptedFileKeyringTestCase"
];
meta = with lib; {
description = "Encrypted file keyring backend";
homepage = "https://github.com/frispete/keyrings.cryptfile";
license = licenses.mit;
maintainers = teams.chia.members;
};
}

View File

@ -0,0 +1,14 @@
diff --git a/setup.cfg b/setup.cfg
index ec7eb30..7ffd831 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -5,9 +5,6 @@ dists = clean --all sdist bdist_wheel
[wheel]
universal = 1
-[tool:pytest]
-addopts = -s --cov=keyrings/cryptfile
-
[egg_info]
tag_build =
tag_date = 0

View File

@ -0,0 +1,59 @@
{ lib
, betamax
, buildPythonPackage
, cachetools
, coloredlogs
, emoji
, fetchPypi
, nose
, python
, pythonOlder
, pytz
, requests
}:
buildPythonPackage rec {
pname = "locationsharinglib";
version = "4.1.6";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "092j8z01nwjqh5zr7aj8mxl1zjd3j2irhrs39dhn47bd6db2a6ij";
};
propagatedBuildInputs = [
coloredlogs
requests
cachetools
pytz
];
checkInputs = [
betamax
emoji
nose
];
postPatch = ''
# Tests requirements want to pull in multiple modules which we don't need
substituteInPlace setup.py \
--replace "tests_require=test_requirements" "tests_require=[]"
'';
checkPhase = ''
runHook preCheck
# Only coverage no real unit tests
${python.interpreter} setup.py nosetests
runHook postCheck
'';
pythonImportsCheck = [ "locationsharinglib" ];
meta = with lib; {
description = "Python package to retrieve coordinates from a Google account";
homepage = "https://locationsharinglib.readthedocs.io/";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -90,7 +90,7 @@ buildPythonPackage rec {
${opensslLegacyStatic.out}/lib/libcrypto.a \
deps/openssl-OpenSSL_${legacyOpenSSLVersion}/
ln -s ${opensslLegacyStatic.out.dev}/include deps/openssl-OpenSSL_${legacyOpenSSLVersion}/include
ln -s ${opensslLegacyStatic.bin} deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
ln -s ${opensslLegacyStatic.bin}/bin deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps
mkdir -p deps/openssl-OpenSSL_${modernOpenSSLVersion}/
cp ${opensslStatic.out}/lib/libssl.a \

View File

@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "pyflume";
version = "0.6.4";
version = "0.7.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ChrisMandich";
repo = "PyFlume";
rev = "v${version}";
sha256 = "1dm560hh6fl1waiwsq8m31apmvvwhc3y95bfdb7449bs8k96dmxq";
sha256 = "129sz33a270v120bzl9l98nmvdzn7ns4cf9w2v18lmzlldbyz2vn";
};
prePatch = ''

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "pysonos";
version = "0.0.48";
version = "0.0.49";
disabled = !isPy3k;
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "amelchio";
repo = pname;
rev = "v${version}";
sha256 = "sha256-jHfckJJT6cycY9qvXzwmm0UYYaUDCkUE98c2sT9VPpw=";
sha256 = "sha256-f8MBf2E7kHzvdt7oBwdJZ91jlU6I5np1FhOmxgxbqYw=";
};
propagatedBuildInputs = [

View File

@ -2,8 +2,7 @@
, fetchPypi
, fetchNuGet
, buildPythonPackage
, python
, pytest
, pytestCheckHook
, pycparser
, psutil
, pkg-config
@ -15,29 +14,36 @@
let
UnmanagedExports127 = fetchNuGet {
baseName = "UnmanagedExports";
version = "1.2.7";
sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
outputFiles = [ "*" ];
};
NUnit371 = fetchNuGet {
baseName = "NUnit";
version = "3.7.1";
sha256 = "1yc6dwaam4w2ss1193v735nnl79id78yswmpvmjr1w4bgcbdza4l";
outputFiles = [ "*" ];
};
dotnetPkgs = [
(fetchNuGet {
baseName = "UnmanagedExports";
version = "1.2.7";
sha256 = "0bfrhpmq556p0swd9ssapw4f2aafmgp930jgf00sy89hzg2bfijf";
outputFiles = [ "*" ];
})
(fetchNuGet {
baseName = "NUnit";
version = "3.12.0";
sha256 = "1880j2xwavi8f28vxan3hyvdnph4nlh5sbmh285s4lc9l0b7bdk2";
outputFiles = [ "*" ];
})
(fetchNuGet {
baseName = "System.ValueTuple";
version = "4.5.0";
sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy";
outputFiles = [ "*" ];
})
];
in
buildPythonPackage rec {
pname = "pythonnet";
version = "2.4.0";
version = "2.5.2";
src = fetchPypi {
inherit pname version;
sha256 = "1ach9jic7a9rd3vmc4bphkr9fq01a0qk81f8a7gr9npwzmkqx8x3";
sha256 = "1qzdc6jd7i9j7p6bcihnr98y005gv1358xqdr1plpbpnl6078a5p";
};
postPatch = ''
@ -50,7 +56,6 @@ buildPythonPackage rec {
'';
nativeBuildInputs = [
pytest
pycparser
pkg-config
@ -59,13 +64,15 @@ buildPythonPackage rec {
mono
NUnit371
UnmanagedExports127
];
] ++ dotnetPkgs;
buildInputs = [
glib
mono
];
checkInputs = [
pytestCheckHook
psutil # needed for memory leak tests
];
@ -73,22 +80,21 @@ buildPythonPackage rec {
rm -rf packages
mkdir packages
ln -s ${NUnit371}/lib/dotnet/NUnit/ packages/NUnit.3.7.1
ln -s ${UnmanagedExports127}/lib/dotnet/NUnit/ packages/UnmanagedExports.1.2.7
${builtins.concatStringsSep "\n" (
builtins.map (
x: ''ln -s ${x}/lib/dotnet/${x.baseName} ./packages/${x.baseName}.${x.version}''
) dotnetPkgs)}
# Setting TERM=xterm fixes an issue with terminfo in mono: System.Exception: Magic number is wrong: 542
export TERM=xterm
'';
checkPhase = ''
${python.interpreter} -m pytest
'';
meta = with lib; {
description = ".Net and Mono integration for Python";
homepage = "https://pythonnet.github.io";
license = licenses.mit;
# <https://github.com/pythonnet/pythonnet/issues/898>
badPlatforms = [ "aarch64-linux" ];
maintainers = with maintainers; [ jraygauthier ];
broken = true;
};
}

View File

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, isPy27
, click
, click-log
@ -45,6 +46,14 @@ buildPythonPackage rec {
pytest-subtesthack
];
patches = [
(fetchpatch {
name = "update-usage-deprecated-method.patch";
url = "https://github.com/pimutils/vdirsyncer/commit/7577fa21177442aacc2d86640ef28cebf1c4aaef.patch";
sha256 = "0inkr1wfal20kssij8l5myhpjivxg8wlvhppqc3lvml9d1i75qbh";
})
];
postPatch = ''
substituteInPlace setup.py --replace "click>=5.0,<6.0" "click"
'';

View File

@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "ytmusicapi";
version = "0.16.0";
version = "0.17.1";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "sha256-/94/taeBI6xZ3uN/wfMnk/NPmk+j0+aaH8CAZBEsK10=";
sha256 = "sha256-b5+AGf9qFqQbx4Rq4RovK2NllYsB+sXVMFU4AvbDkzI=";
};
propagatedBuildInputs = [

View File

@ -9,12 +9,12 @@
buildPythonPackage rec {
pname = "zeroconf";
version = "0.30.0";
version = "0.31.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-elpjZq4FpI2wTf1ciILumKE/LQ4fxtCaXxvQo9HRCcc=";
sha256 = "sha256-U6GAJIRxxvgb0f/8vOA+2T19jq8QkFyRIaweqZbRmEQ=";
};
propagatedBuildInputs = [ ifaddr ];

View File

@ -1,4 +1,4 @@
{ lib, rustPlatform, fetchFromGitHub }:
{ lib, stdenv, rustPlatform, fetchFromGitHub, CoreServices }:
rustPlatform.buildRustPackage rec {
pname = "bacon";
@ -13,6 +13,8 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "1pii5ajl3xgylrm20pkwbd1lk7gv0pshl1cxjfna0l63q56v7f21";
buildInputs = lib.optional stdenv.isDarwin CoreServices;
meta = with lib; {
description = "Background rust code checker";
homepage = "https://github.com/Canop/bacon";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "earthly";
version = "0.5.12";
version = "0.5.13";
src = fetchFromGitHub {
owner = "earthly";
repo = "earthly";
rev = "v${version}";
sha256 = "sha256-jG4KaDCzx0PAJu6Hr+xnKsAdz97LmGUF0El3rSiLQPo=";
sha256 = "sha256-XN3E1oCIlohALnaP17WOB7/1vaklmyAfVZLxrBOXhbo=";
};
vendorSha256 = "sha256-q3dDV0eop2NxXHFrlppWsZrO2Hz1q5xhs1DnB6PvG9g=";

View File

@ -101,6 +101,7 @@ rec {
i686-linux = "b76e69ad4b654384b4f1647f0cb362e78c1d99be7b814d7d32abc22294639ace";
armv7l-linux = "cc4be8e0c348bc8db5002cf6c63c1d02fcb594f1f8bfc358168738c930098857";
aarch64-linux = "75665dd5b2b9938bb4572344d459db65f46c5f7c637a32946c5a822cc23a77dc";
aarch64-darwin = "0c782b1d4eb848bae780f4e3a236caa1671486264c1f8e72fde98f1256d8f9e5";
headers = "0ip1wxgflifs86vk4xpz1555xa7yjy64ygqgd5a2g723148m52rk";
};
@ -110,6 +111,7 @@ rec {
i686-linux = "16023d86b88c7fccafd491c020d064caa2138d6a3493664739714555f72e5b06";
armv7l-linux = "53cc1250ff62f2353d8dd37552cbd7bdcaaa756106faee8b809303bed00e040a";
aarch64-linux = "3eddc0c507a43cce4e714bfe509d99218b5ab99f4660dd173aac2a895576dc71";
aarch64-darwin = "2bc8f37af68e220f93fb9abc62d1c56d8b64baaf0ef9ef974f24ddcbe4f8b488";
headers = "1ji9aj7qr4b27m5kprsgsrl21rjphz5bbnmn6q0n2x84l429nyfb";
};
}

View File

@ -26,7 +26,8 @@ let
homepage = "https://github.com/electron/electron";
license = licenses.mit;
maintainers = with maintainers; [ travisbhartwell manveru prusnak ];
platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ];
platforms = [ "x86_64-darwin" "x86_64-linux" "i686-linux" "armv7l-linux" "aarch64-linux" ]
++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ];
knownVulnerabilities = optional (versionOlder version "6.0.0") "Electron version ${version} is EOL";
};
@ -46,6 +47,7 @@ let
armv7l-linux = "linux-armv7l";
aarch64-linux = "linux-arm64";
x86_64-darwin = "darwin-x64";
aarch64-darwin = "darwin-arm64";
};
get = as: platform: as.${platform.system} or

View File

@ -17,6 +17,7 @@ SYSTEMS=(
[armv7l-linux]=linux-armv7l
[aarch64-linux]=linux-arm64
[x86_64-darwin]=darwin-x64
[aarch64-darwin]=darwin-arm64
)
hashfile="$(nix-prefetch-url --print-path "https://github.com/electron/electron/releases/download/v${VERSION}/SHASUMS256.txt" 2>/dev/null | tail -n1)"
@ -27,8 +28,10 @@ headers="$(nix-prefetch-url "https://atom.io/download/electron/v${VERSION}/node-
echo " electron_${VERSION%%.*} = mkElectron \"${VERSION}\" {"
for S in "${!SYSTEMS[@]}"; do
hash="$(grep " *electron-v${VERSION}-${SYSTEMS[$S]}.zip$" "$hashfile"|cut -f1 -d' ')"
echo " $S = \"$hash\";"
hash="$(grep " *electron-v${VERSION}-${SYSTEMS[$S]}.zip$" "$hashfile"|cut -f1 -d' ' || :)"
if [[ -n $hash ]]; then
echo " $S = \"$hash\";"
fi
done
echo " headers = \"$headers\";"

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "luaformatter";
version = "1.3.5";
version = "1.3.6";
src = fetchFromGitHub {
owner = "koihik";
repo = "luaformatter";
rev = version;
sha256 = "sha256-TMo6zRfhVAXVh0tIC0PecaJCKr0ev45jOKm2+reTtS4=";
sha256 = "0440kdab5i0vhlk71sbprdrhg362al8jqpy7w2vdhcz1fpi5cm0b";
fetchSubmodules = true;
};

View File

@ -2,7 +2,7 @@
stdenv.mkDerivation rec {
pname = "metals";
version = "0.10.2";
version = "0.10.3";
deps = stdenv.mkDerivation {
name = "${pname}-deps-${version}";
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
'';
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = "1yck935pcj9cg3qxzrmvgd16afsckz8wgmzf2rlmii2c1glrbq9c";
outputHash = "1psmsiwd3xlbrvkdvr2zgs2b66kw8w2jvvqa399g7jhixh2fpbx4";
};
nativeBuildInputs = [ makeWrapper ];

View File

@ -1,7 +1,6 @@
{ lib, stdenv, fetchFromGitHub, jdk, gradleGen, makeDesktopItem, copyDesktopItems, perl, writeText, runtimeShell, makeWrapper, glib, wrapGAppsHook }:
{ lib, stdenv, fetchFromGitHub, jdk11, gradleGen, makeDesktopItem, copyDesktopItems, perl, writeText, runtimeShell, makeWrapper, glib, wrapGAppsHook }:
let
# The default one still uses jdk8 (#89731)
gradle = (gradleGen.override (old: { java = jdk; })).gradle_6_8;
gradle = (gradleGen.override (old: { java = jdk11; })).gradle_6_8;
pname = "scenebuilder";
version = "15.0.1";
@ -17,7 +16,7 @@ let
name = "${pname}-deps";
inherit src;
nativeBuildInputs = [ jdk perl gradle ];
nativeBuildInputs = [ jdk11 perl gradle ];
buildPhase = ''
export GRADLE_USER_HOME=$(mktemp -d);
@ -77,7 +76,7 @@ let
in stdenv.mkDerivation rec {
inherit pname src version;
nativeBuildInputs = [ jdk gradle makeWrapper glib wrapGAppsHook ];
nativeBuildInputs = [ jdk11 gradle makeWrapper glib wrapGAppsHook ];
dontWrapGApps = true; # prevent double wrapping
@ -101,7 +100,7 @@ in stdenv.mkDerivation rec {
'';
postFixup = ''
makeWrapper ${jdk}/bin/java $out/bin/${pname} --add-flags "-jar $out/share/${pname}/${pname}.jar" "''${gappsWrapperArgs[@]}"
makeWrapper ${jdk11}/bin/java $out/bin/${pname} --add-flags "-jar $out/share/${pname}/${pname}.jar" "''${gappsWrapperArgs[@]}"
'';
desktopItems = [ desktopItem ];

View File

@ -8,7 +8,7 @@ let
in
buildNodejs {
inherit enableNpm;
version = "14.16.1";
sha256 = "1hxsk83g2plv6vv3ir1ngca0rwqdy3lq70r504d2qv3msszdnjp4";
version = "14.17.0";
sha256 = "1vf989canwcx0wdpngvkbz2x232yccp7fzs1vcbr60rijgzmpq2n";
patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff;
}

View File

@ -8,6 +8,6 @@ let
in
buildNodejs {
inherit enableNpm;
version = "16.1.0";
sha256 = "0z0808mw674mshgbmhgngqfkrdix3b61f77xcdz7bwf1j87j7ad0";
version = "16.2.0";
sha256 = "1krm3cnpbnqg4mfl3cpp8x2i1rr6hba9qbl60wyg5f5g8ac3pyfh";
}

View File

@ -1,5 +1,18 @@
{ lib, stdenv, fetchFromGitHub, qtbase, openscenegraph, mygui, bullet, ffmpeg_3
, boost, cmake, SDL2, unshield, openal, libXt, pkg-config }:
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, pkg-config
, openscenegraph
, mygui
, bullet
, ffmpeg
, boost
, SDL2
, unshield
, openal
, libXt
}:
let
openscenegraph_ = openscenegraph.overrideDerivation (self: {
@ -11,9 +24,9 @@ let
sha256 = "0d74hijzmj82nx3jkv5qmr3pkgvplra0b8fbjx1y3vmzxamb0axd";
};
});
in
stdenv.mkDerivation rec {
in
mkDerivation rec {
version = "0.46.0";
pname = "openmw";
@ -25,10 +38,23 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ boost ffmpeg_3 bullet mygui openscenegraph_ SDL2 unshield openal libXt qtbase ];
buildInputs = [
SDL2
boost
bullet
ffmpeg
libXt
mygui
openal
openscenegraph_
unshield
];
cmakeFlags = [
"-DDESIRED_QT_VERSION:INT=5"
# as of 0.46, openmw is broken with GLVND
"-DOpenGL_GL_PREFERENCE=LEGACY"
];
dontWrapQtApps = true;
@ -37,7 +63,7 @@ stdenv.mkDerivation rec {
description = "An unofficial open source engine reimplementation of the game Morrowind";
homepage = "http://openmw.org";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ];
platforms = platforms.linux;
};
}

View File

@ -1,96 +1,134 @@
{ lib, stdenv, cmake, openmw, fetchFromGitHub, luajit, makeWrapper, mygui }:
{ lib
, stdenv
, cmake
, openmw
, fetchFromGitHub
, formats
, luajit
, makeWrapper
, symlinkJoin
, mygui
, crudini
}:
# revisions are taken from https://github.com/GrimKriegor/TES3MP-deploy
let
# TES3MP_STABLE_VERSION_FILE
compatHash = "292536439eeda58becdb7e441fe2e61ebb74529e";
rakNet = fetchFromGitHub {
owner = "TES3MP";
repo = "CrabNet";
# usually fixed:
# https://github.com/GrimKriegor/TES3MP-deploy/blob/d2a4a5d3acb64b16d9b8ca85906780aeea8d311b/tes3mp-deploy.sh#L589
rev = "4eeeaad2f6c11aeb82070df35169694b4fb7b04b";
sha256 = "0p0li9l1i5lcliswm5w9jql0zff9i6fwhiq0bl130m4i7vpr4cr3";
};
rakNetLibrary = stdenv.mkDerivation {
name = "RakNetLibrary";
src = rakNet;
nativeBuildInputs = [ cmake ];
installPhase = ''
install -Dm755 lib/libRakNetLibStatic.a $out/lib/libRakNetLibStatic.a
'';
};
coreScripts = fetchFromGitHub {
owner = "TES3MP";
repo = "CoreScripts";
# usually latest in stable branch (e.g. 0.7.0)
rev = "24aae91d9ddad38cdb3b0e0a13af59f142803e94";
sha256 = "1rfmxxr9ircfagdpbdrzl26msdhx1i3g974cblbv69078cradfh3";
};
# https://github.com/TES3MP/openmw-tes3mp/issues/555
mygui_ = mygui.overrideAttrs (oldAttrs: rec {
version = "3.2.2";
# raknet could also be split into dev and lib outputs
raknet = stdenv.mkDerivation {
pname = "raknet";
version = "unstable-2018-07-14";
src = fetchFromGitHub {
owner = "MyGUI";
repo = "mygui";
rev = "MyGUI${version}";
sha256 = "1wk7jmwm55rhlqqcyvqsxdmwvl70bysl9azh4kd9n57qlmgk3zmw";
owner = "TES3MP";
repo = "CrabNet";
# usually fixed:
# https://github.com/GrimKriegor/TES3MP-deploy/blob/d2a4a5d3acb64b16d9b8ca85906780aeea8d311b/tes3mp-deploy.sh#L589
rev = "4eeeaad2f6c11aeb82070df35169694b4fb7b04b";
sha256 = "0p0li9l1i5lcliswm5w9jql0zff9i6fwhiq0bl130m4i7vpr4cr3";
};
nativeBuildInputs = [ cmake ];
installPhase = ''
install -Dm555 lib/libRakNetLibStatic.a $out/lib/libRakNetLibStatic.a
'';
};
coreScripts = stdenv.mkDerivation {
pname = "corescripts";
version = "unstable-2020-07-27";
src = fetchFromGitHub {
owner = "TES3MP";
repo = "CoreScripts";
# usually latest in stable branch (e.g. 0.7.1)
rev = "3c2d31595344db586d8585db0ef1fc0da89898a0";
sha256 = "sha256-m/pt2Et58HOMc1xqllGf4hjPLXNcc14+X0h84ouZDeg=";
};
buildCommand = ''
dir=$out/share/openmw-tes3mp
mkdir -p $dir
cp -r $src $dir/CoreScripts
'';
};
# build an unwrapped version so we don't have to rebuild it all over again in
# case the scripts or wrapper scripts change.
unwrapped = openmw.overrideAttrs (oldAttrs: rec {
pname = "openmw-tes3mp-unwrapped";
version = "unstable-2020-08-07";
src = fetchFromGitHub {
owner = "TES3MP";
repo = "openmw-tes3mp";
# usually latest in stable branch (e.g. 0.7.1)
rev = "ce5df6d18546e37aac9746d99c00d27a7f34b00d";
sha256 = "sha256-xLslShNA6rVFl9kt6BNGDpSYMpO25jBTCteLJoSTXdg=";
};
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
buildInputs = oldAttrs.buildInputs ++ [ luajit ];
cmakeFlags = oldAttrs.cmakeFlags ++ [
"-DBUILD_OPENCS=OFF"
"-DRakNet_INCLUDES=${raknet.src}/include"
"-DRakNet_LIBRARY_RELEASE=${raknet}/lib/libRakNetLibStatic.a"
"-DRakNet_LIBRARY_DEBUG=${raknet}/lib/libRakNetLibStatic.a"
];
# https://github.com/TES3MP/openmw-tes3mp/issues/552
patches = [ ./tes3mp.patch ];
NIX_CFLAGS_COMPILE = "-fpermissive";
preConfigure = ''
substituteInPlace files/version.in \
--subst-var-by OPENMW_VERSION_COMMITHASH ${src.rev}
'';
# move everything that we wrap out of the way
postInstall = ''
mkdir -p $out/libexec
mv $out/bin/tes3mp-* $out/libexec
'';
meta = with lib; {
description = "Multiplayer for TES3:Morrowind based on OpenMW";
homepage = "https://tes3mp.com/";
license = licenses.gpl3Only;
maintainers = with maintainers; [ peterhoeg ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
});
in openmw.overrideAttrs (oldAttrs: rec {
version = "2019-11-19";
name = "openmw-tes3mp-${version}";
src = fetchFromGitHub {
owner = "TES3MP";
repo = "openmw-tes3mp";
# usually latest in stable branch (e.g. 0.7.0)
rev = "ad9ee80641a3e22d0780daca051df7f4e90f3615";
sha256 = "03a1vldiv5lk7yq6lhicx3qz8hjfxhind2dj0w9lg5839ljyk6jv";
cfgFile = (formats.ini { }).generate "tes3mp-server.cfg" {
Plugins.home = "${coreScripts}/share/openmw-tes3mp/CoreScripts";
};
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeWrapper ];
buildInputs = [ luajit mygui_ ] ++ oldAttrs.buildInputs;
in
symlinkJoin rec {
name = "openmw-tes3mp-${unwrapped.version}";
inherit (unwrapped) version meta;
cmakeFlags = oldAttrs.cmakeFlags ++ [
"-DBUILD_OPENCS=OFF"
"-DRakNet_INCLUDES=${rakNet}/include"
"-DRakNet_LIBRARY_RELEASE=${rakNetLibrary}/lib/libRakNetLibStatic.a"
"-DRakNet_LIBRARY_DEBUG=${rakNetLibrary}/lib/libRakNetLibStatic.a"
];
nativeBuildInputs = [ makeWrapper ];
dontWrapQtApps = true;
paths = [ unwrapped ];
# https://github.com/TES3MP/openmw-tes3mp/issues/552
patches = [
./tes3mp.patch
];
NIX_CFLAGS_COMPILE = "-fpermissive";
# crudini --merge will create the file if it doesn't exist
postBuild = ''
mkdir -p $out/bin
preConfigure = ''
substituteInPlace files/version.in \
--subst-var-by OPENMW_VERSION_COMMITHASH ${compatHash}
'';
dir=\''${XDG_CONFIG_HOME:-\$HOME/.config}/openmw
postInstall = ''
# components/process/processinvoker.cpp: path.prepend(QLatin1String("./"))
wrapProgram $out/bin/tes3mp-browser \
makeWrapper ${unwrapped}/libexec/tes3mp-browser $out/bin/tes3mp-browser \
--run "cd $out/bin"
wrapProgram $out/bin/tes3mp-server \
--run "mkdir -p ~/.config/openmw" \
--run "cd ~/.config/openmw" \
--run "[ -d CoreScripts ] || cp --no-preserve=mode -r ${coreScripts} CoreScripts" \
--run "[ -f tes3mp-server.cfg ] || echo \"[Plugins] home = \$HOME/.config/openmw/CoreScripts\" > tes3mp-server.cfg" \
makeWrapper ${unwrapped}/libexec/tes3mp-server $out/bin/tes3mp-server \
--run "mkdir -p $dir" \
--run "${crudini}/bin/crudini --merge $dir/${cfgFile.name} < ${cfgFile}" \
--run "cd $out/bin"
'';
meta = with lib; {
description = "Multiplayer for TES3:Morrowind based on OpenMW";
homepage = "https://tes3mp.com/";
license = licenses.gpl3;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = with maintainers; [ ];
};
})
}

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
pname = "r2mod_cli";
version = "1.0.7";
version = "1.2.0";
src = fetchFromGitHub {
owner = "Foldex";
repo = "r2mod_cli";
rev = "v${version}";
sha256 = "13n2y9gsgb8hnr64y083x9c90j3b4awcmdn81mqmwcydpby3q848";
sha256 = "sha256-VNqdVDBR6+eNOeUthPXLfz+0VoaNfSj4f04HLvjg6/0=";
};
buildInputs = [ bashInteractive ];

View File

@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, which, pkg-config, makeWrapper
, ffmpeg_3, libGLU, libGL, freetype, libxml2, python3
, ffmpeg, libGLU, libGL, freetype, libxml2, python3
, libobjc, AppKit, Foundation
, alsaLib ? null
, libdrm ? null
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config wayland ]
++ optional withVulkan makeWrapper;
buildInputs = [ ffmpeg_3 freetype libxml2 libGLU libGL python3 SDL2 which ]
buildInputs = [ ffmpeg freetype libxml2 libGLU libGL python3 SDL2 which ]
++ optional enableNvidiaCgToolkit nvidia_cg_toolkit
++ optional withVulkan vulkan-loader
++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ]

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "hdparm";
version = "9.60";
version = "9.61";
src = fetchurl {
url = "mirror://sourceforge/hdparm/hdparm-${version}.tar.gz";
sha256 = "1k1mcv7naiacw1y6bdd1adnjfiq1kkx2ivsadjwmlkg4fff775w3";
sha256 = "sha256-2hocOIfxC4OX6OAgE8qmEULg5yyw1zmXQhyi8vTfU0M=";
};
preBuild = ''

View File

@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/tomaspinho/rtl8821ce";
license = licenses.gpl2Only;
platforms = platforms.linux;
broken = stdenv.isAarch64;
maintainers = with maintainers; [ hhm ];
};
}

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, libtool, lldClang, ninja
{ lib, stdenv, fetchFromGitHub, cmake, libtool, lldClang, ninja
, boost, brotli, capnproto, cctz, clang-unwrapped, double-conversion
, icu, jemalloc, libcpuid, libxml2, lld, llvm, lz4, libmysqlclient, openssl, perl
, poco, protobuf, python3, rapidjson, re2, rdkafka, readline, sparsehash, unixODBC
@ -7,16 +7,16 @@
stdenv.mkDerivation rec {
pname = "clickhouse";
version = "20.11.4.13";
version = "21.3.11.5";
broken = stdenv.buildPlatform.is32bit; # not supposed to work on 32-bit https://github.com/ClickHouse/ClickHouse/pull/23959#issuecomment-835343685
src = fetchFromGitHub {
owner = "ClickHouse";
repo = "ClickHouse";
rev = "v${version}-stable";
rev = "v${version}-lts";
fetchSubmodules = true;
sha256 = "0c87k0xqwj9sc3xy2f3ngfszgjiz4rzd787bdg6fxp94w1adjhny";
sha256 = "sha256-V62Z82p21qtvSOsoXM225/Wkc9F+dvVMz0xpVjhgZVo=";
};
nativeBuildInputs = [ cmake libtool lldClang.bintools ninja ];
@ -27,20 +27,9 @@ stdenv.mkDerivation rec {
xxHash zstd
];
patches = [
# This patch is only required for 20.11.4.13 - it should be included in the
# next stable release from upstream by default
(fetchpatch {
url = "https://github.com/ClickHouse/ClickHouse/commit/e31753b4db7aa0a72a85757dc11fc403962e30db.patch";
sha256 = "12ax02dh9y9k8smkj6v50yfr46iprscbrvd4bb9vfbx8xqgw7grb";
})
];
postPatch = ''
patchShebangs src/
substituteInPlace contrib/openssl-cmake/CMakeLists.txt \
--replace '/usr/bin/env perl' perl
substituteInPlace src/Storages/System/StorageSystemLicenses.sh \
--replace 'git rev-parse --show-toplevel' '$src'
substituteInPlace utils/check-style/check-duplicate-includes.sh \

View File

@ -2,7 +2,7 @@
# Do not edit!
{
version = "2021.5.4";
version = "2021.5.5";
components = {
"abode" = ps: with ps; [ abodepy ];
"accuweather" = ps: with ps; [ accuweather ];
@ -89,7 +89,7 @@
"bloomsky" = ps: with ps; [ ];
"blueprint" = ps: with ps; [ ];
"bluesound" = ps: with ps; [ xmltodict ];
"bluetooth_le_tracker" = ps: with ps; [ ]; # missing inputs: pygatt[GATTTOOL]
"bluetooth_le_tracker" = ps: with ps; [ pygatt ];
"bluetooth_tracker" = ps: with ps; [ bt_proximity pybluez ];
"bme280" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense
"bme680" = ps: with ps; [ bme680 smbus-cffi ];
@ -316,7 +316,7 @@
"google_assistant" = ps: with ps; [ aiohttp-cors ];
"google_cloud" = ps: with ps; [ google-cloud-texttospeech ];
"google_domains" = ps: with ps; [ ];
"google_maps" = ps: with ps; [ ]; # missing inputs: locationsharinglib
"google_maps" = ps: with ps; [ locationsharinglib ];
"google_pubsub" = ps: with ps; [ google-cloud-pubsub ];
"google_translate" = ps: with ps; [ gtts ];
"google_travel_time" = ps: with ps; [ googlemaps ];
@ -755,7 +755,7 @@
"sinch" = ps: with ps; [ ]; # missing inputs: clx-sdk-xms
"sisyphus" = ps: with ps; [ ]; # missing inputs: sisyphus-control
"sky_hub" = ps: with ps; [ ]; # missing inputs: pyskyqhub
"skybeacon" = ps: with ps; [ ]; # missing inputs: pygatt[GATTTOOL]
"skybeacon" = ps: with ps; [ pygatt ];
"skybell" = ps: with ps; [ skybellpy ];
"slack" = ps: with ps; [ slackclient ];
"sleepiq" = ps: with ps; [ sleepyq ];

View File

@ -2,6 +2,7 @@
, lib
, fetchFromGitHub
, python3
, inetutils
, nixosTests
# Look up dependencies of specified components in component-packages.nix
@ -55,6 +56,46 @@ let
(mkOverride "ring-doorbell" "0.6.2"
"fbd537722a27b3b854c26506d894b7399bb8dc57ff36083285971227a2d46560")
# Pinned due to API changes in pyflunearyou>=2.0
(self: super: {
pyflunearyou = super.pyflunearyou.overridePythonAttrs (oldAttrs: rec {
version = "1.0.7";
src = fetchFromGitHub {
owner = "bachya";
repo = "pyflunearyou";
rev = version;
sha256 = "0hq55k298m9a90qb3lasw9bi093hzndrah00rfq94bp53aq0is99";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace "poetry.masonry.api" "poetry.core.masonry.api" \
--replace 'msgpack = "^0.6.2"' 'msgpack = "*"' \
--replace 'ujson = "^1.35"' 'ujson = "*"'
'';
});
})
# Pinned due to API changes in pylast 4.2.1
(mkOverride "pylast" "4.2.0"
"0zd0dn2l738ndz62vpa751z0ldnm91dcz9zzbvxv53r08l0s9yf3")
# Pinned due to API changes in pyopenuv>=1.1.0
(self: super: {
pyopenuv = super.pyopenuv.overridePythonAttrs (oldAttrs: rec {
version = "1.0.13";
src = fetchFromGitHub {
owner = "bachya";
repo = "pyopenuv";
rev = version;
sha256 = "1gx9xjkyvqqy8410lnbshq1j5y4cb0cdc4m505g17rwdzdwb01y8";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace "poetry.masonry.api" "poetry.core.masonry.api"
'';
});
})
# Pinned due to API changes in pyruckus>0.12
(self: super: {
pyruckus = super.pyruckus.overridePythonAttrs (oldAttrs: rec {
@ -114,7 +155,7 @@ let
extraBuildInputs = extraPackages py.pkgs;
# Don't forget to run parse-requirements.py after updating
hassVersion = "2021.5.4";
hassVersion = "2021.5.5";
in with py.pkgs; buildPythonApplication rec {
pname = "homeassistant";
@ -133,7 +174,7 @@ in with py.pkgs; buildPythonApplication rec {
owner = "home-assistant";
repo = "core";
rev = version;
sha256 = "1jxbxzhcnvxf6qkik2qmpdml41q6hlkazjqaxygyw7pyj094fp8v";
sha256 = "1vdxygjik1ay58xgyr1rk12cgy63raqi4fldnd4mlhs4i21c7ff8";
};
# leave this in, so users don't have to constantly update their downstream patch handling
@ -199,33 +240,69 @@ in with py.pkgs; buildPythonApplication rec {
# services. Before adding new components to this list make sure we have all
# its dependencies packaged and listed in ./component-packages.nix.
componentTests = [
"abode"
"accuweather"
"acmeda"
"adguard"
"advantage_air"
"agent_dvr"
"air_quality"
"airly"
"airnow"
"airvisual"
"alarm_control_panel"
"alarmdecoder"
"alert"
"alexa"
"almond"
"ambiclimate"
"ambient_station"
"analytics"
"androidtv"
"alert"
"apache_kafka"
"api"
"apple_tv"
"apprise"
"arlo"
"asuswrt"
"august"
"aurora"
"auth"
"automation"
"awair"
"aws"
"axis"
"bayesian"
"binary_sensor"
"blackbird"
"blueprint"
"bluetooth_le_tracker"
"braviatv"
"broadlink"
"brother"
"bsblan"
"caldav"
"calendar"
"camera"
"canary"
"cast"
"cert_expiry"
"climacell"
"climate"
"cloud"
"cloudflare"
"comfoconnect"
"command_line"
"compensation"
"config"
"configurator"
"conversation"
"coronavirus"
"counter"
"cover"
"daikin"
"darksky"
"datadog"
"deconz"
"default_config"
"demo"
@ -235,22 +312,42 @@ in with py.pkgs; buildPythonApplication rec {
"device_sun_light_trigger"
"device_tracker"
"devolo_home_control"
"dexcom"
"dhcp"
"dialogflow"
"discovery"
"dsmr"
"dte_energy_bridge"
"duckdns"
"dyson"
"eafm"
"econet"
"efergy"
"emonitor"
"emulated_hue"
"esphome"
"fan"
"everlights"
"ezviz"
"faa_delays"
"facebook"
"facebox"
"fail2ban"
"fan"
"feedreader"
"ffmpeg"
"fido"
"file"
"filesize"
"filter"
"firmata"
"flo"
"flume"
"flunearyou"
"flux"
"folder"
"folder_watcher"
"freebox"
"freedns"
"fritz"
"fritzbox"
"fritzbox_callmonitor"
@ -259,59 +356,97 @@ in with py.pkgs; buildPythonApplication rec {
"generic_thermostat"
"geo_json_events"
"geo_location"
"geofency"
"glances"
"google"
"google_assistant"
"google_domains"
"google_pubsub"
"google_translate"
"google_travel_time"
"google_wifi"
"gpslogger"
"graphite"
"group"
"guardian"
"harmony"
"hassio"
"hddtemp"
"history"
"history_stats"
"home_connect"
"home_plus_control"
"homeassistant"
"homekit"
"homekit_controller"
"homeassistant"
"homematic"
"homematicip_cloud"
"html5"
"http"
"hue"
"humidifier"
"hyperion"
"ialarm"
"iaqualink"
"icloud"
"ifttt"
"image"
"image_processing"
"imap_email_content"
"influxdb"
"input_boolean"
"input_datetime"
"input_text"
"input_number"
"input_select"
"input_text"
"insteon"
"integration"
"intent"
"intent_script"
"ios"
"ipp"
"iqvia"
"islamic_prayer_times"
"jewish_calendar"
"kira"
"kmtronic"
"knx"
"kodi"
"lastfm"
"lcn"
"light"
"litterrobot"
"local_file"
"local_ip"
"locative"
"lock"
"logbook"
"logentries"
"logger"
"london_air"
"lovelace"
"luftdaten"
"lutron_caseta"
"lyric"
"mailbox"
"manual"
"manual_mqtt"
"mazda"
"media_player"
"media_source"
"meraki"
"met"
"met_eireann"
"microsoft_face"
"microsoft_face_detect"
"microsoft_face_identify"
"mikrotik"
"min_max"
"minecraft_server"
"minio"
"mobile_app"
"modbus"
"mold_indicator"
"moon"
"motioneye"
"mqtt"
@ -321,33 +456,66 @@ in with py.pkgs; buildPythonApplication rec {
"mqtt_statestream"
"mullvad"
"mutesync"
"my"
"myq"
"mysensors"
"namecheapdns"
"neato"
"netatmo"
"nexia"
"no_ip"
"notify"
"notion"
"nuki"
"number"
"nws"
"nx584"
"omnilogic"
"onboarding"
"ondilo_ico"
"openalpr_cloud"
"openalpr_local"
"openerz"
"openhardwaremonitor"
"opentherm_gw"
"openuv"
"openweathermap"
"opnsense"
"ovo_energy"
"owntracks"
"ozw"
"panel_custom"
"panel_iframe"
"persistent_notification"
"person"
"philips_js"
"pi_hole"
"picnic"
"ping"
"plaato"
"plant"
"plex"
"plugwise"
"poolsense"
"profiler"
"prometheus"
"proximity"
"push"
"pushbullet"
"pvpc_hourly_pricing"
"python_script"
"rachio"
"radarr"
"rainmachine"
"random"
"recollect_waste"
"recorder"
"reddit"
"remote"
"rest"
"rest_command"
"ring"
"risco"
"rituals_perfume_genie"
"rmvtransport"
"roku"
@ -355,66 +523,125 @@ in with py.pkgs; buildPythonApplication rec {
"rss_feed_template"
"ruckus_unleashed"
"safe_mode"
"samsungtv"
"scene"
"screenlogic"
"script"
"search"
"season"
"sensor"
"sentry"
"sharkiq"
"shell_command"
"shelly"
"shopping_list"
"sigfox"
"sighthound"
"simplisafe"
"simulated"
"slack"
"sleepiq"
"sma"
"smhi"
"sensor"
"slack"
"smappee"
"smartthings"
"smarttub"
"smhi"
"smtp"
"smappee"
"snips"
"solaredge"
"soma"
"somfy"
"sonos"
"soundtouch"
"spaceapi"
"speedtestdotnet"
"spotify"
"sql"
"squeezebox"
"ssdp"
"startca"
"statistics"
"statsd"
"stream"
"stt"
"subaru"
"sun"
"surepetcare"
"switch"
"switcher_kis"
"system_health"
"system_log"
"tado"
"tag"
"tasmota"
"tcp"
"telegram"
"tellduslive"
"template"
"tesla"
"threshold"
"tile"
"time_date"
"timer"
"tod"
"tomato"
"toon"
"tplink"
"trace"
"transmission"
"trend"
"tts"
"tuya"
"twentemilieu"
"twilio"
"twinkly"
"twitch"
"uk_transport"
"unifi"
"unifi_direct"
"universal"
"updater"
"upnp"
"uptime"
"usgs_earthquakes_feed"
"utility_meter"
"uvc"
"vacuum"
"velbus"
"vera"
"verisure"
"version"
"vesync"
"vizio"
"voicerss"
"volumio"
"vultr"
"wake_on_lan"
"water_heater"
"waze_travel_time"
"weather"
"webhook"
"webostv"
"websocket_api"
"wemo"
"wiffi"
"wilight"
"wled"
"workday"
"worldclock"
"wsdot"
"wunderground"
"xiaomi"
"xiaomi_aqara"
"xiaomi_miio"
"yamaha"
"yandex_transport"
"yandextts"
"yeelight"
"zeroconf"
"zerproc"
"zha"
"zodiac"
"zone"
"zwave"
"zwave_js"
@ -423,19 +650,35 @@ in with py.pkgs; buildPythonApplication rec {
];
pytestFlagsArray = [
# limit amout of runners to reduce race conditions
"-n auto"
# parallelize test run
"--numprocesses auto"
# assign tests grouped by file to workers
"--dist loadfile"
# retry racy tests that end in "RuntimeError: Event loop is closed"
"--reruns 3"
"--only-rerun RuntimeError"
# assign tests grouped by file to workers
"--dist loadfile"
# enable full variable printing on error
"--showlocals"
# tests are located in tests/
"tests"
# screenlogic/test_config_flow.py: Tries to send out UDP broadcasts
"--deselect tests/components/screenlogic/test_config_flow.py::test_form_cannot_connect"
# asuswrt/test_config_flow.py: Sandbox network limitations, fails with unexpected error
"--deselect tests/components/asuswrt/test_config_flow.py::test_on_connect_failed"
# shelly/test_config_flow.py: Tries to join multicast group
"--deselect tests/components/shelly/test_config_flow.py::test_form"
"--deselect tests/components/shelly/test_config_flow.py::test_title_without_name"
"--deselect tests/components/shelly/test_config_flow.py::test_form_auth"
"--deselect tests/components/shelly/test_config_flow.py::test_form_errors_test_connection"
"--deselect tests/components/shelly/test_config_flow.py::test_user_setup_ignored_device"
"--deselect tests/components/shelly/test_config_flow.py::test_form_auth_errors_test_connection"
"--deselect tests/components/shelly/test_config_flow.py::test_form_auth_errors_test_connection"
"--deselect tests/components/shelly/test_config_flow.py::test_form_auth_errors_test_connection"
"--deselect tests/components/shelly/test_config_flow.py::test_zeroconf"
"--deselect tests/components/shelly/test_config_flow.py::test_zeroconf_sleeping_device"
"--deselect tests/components/shelly/test_config_flow.py::test_zeroconf_sleeping_device_error"
"--deselect tests/components/shelly/test_config_flow.py::test_zeroconf_sleeping_device_error"
"--deselect tests/components/shelly/test_config_flow.py::test_zeroconf_require_auth"
# tests are located in tests/
"tests"
# dynamically add packages required for component tests
] ++ map (component: "tests/components/" + component) componentTests;
@ -464,6 +707,9 @@ in with py.pkgs; buildPythonApplication rec {
"test_executor_shutdown_can_interrupt_threads"
# {'theme_color': '#03A9F4'} != {'theme_color': 'blue'}
"test_webhook_handle_get_config"
# onboarding tests rpi_power component, for which we are lacking rpi_bad_power library
"test_onboarding_core_sets_up_rpi_power"
"test_onboarding_core_no_rpi_power"
];
preCheck = ''
@ -472,6 +718,9 @@ in with py.pkgs; buildPythonApplication rec {
# the tests require the existance of a media dir
mkdir /build/media
# put ping binary into PATH, e.g. for wake_on_lan tests
export PATH=${inetutils}/bin:$PATH
# error out when component test directory is missing, otherwise hidden by xdist execution :(
for component in ${lib.concatStringsSep " " (map lib.escapeShellArg componentTests)}; do
test -d "tests/components/$component" || {

View File

@ -62,5 +62,6 @@ stdenv.mkDerivation rec {
};
passthru.tests = {
basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd;
rspamd-integration = nixosTests.opensmtpd-rspamd;
};
}

View File

@ -0,0 +1,30 @@
{ lib
, buildGoModule
, fetchFromGitHub
, nixosTests
}:
buildGoModule rec {
pname = "opensmtpd-filter-rspamd";
version = "0.1.7";
src = fetchFromGitHub {
owner = "poolpOrg";
repo = "filter-rspamd";
rev = "v${version}";
sha256 = "pcHj4utpf/AIUv8/7mE8BLbE8LYkzNKfc4T4hIHgGeI=";
};
vendorSha256 = "sNF2c+22FMvKoROkA/3KtSnRdJh4YZLaIx35HD896HI=";
passthru.tests = {
opensmtpd-rspamd-integration = nixosTests.opensmtpd-rspamd;
};
meta = with lib; {
homepage = "https://github.com/poolpOrg/filter-rspamd";
description = "OpenSMTPD filter integration for the Rspamd daemon";
license = licenses.isc;
maintainers = with maintainers; [ Flakebi ];
};
}

View File

@ -12,11 +12,11 @@ let
in
buildPythonApplication rec {
pname = "matrix-synapse";
version = "1.33.2";
version = "1.34.0";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-9WZjuVvWpzCR1MjeMXfja/YV2YFHdo7QbjgUWDymCpM=";
sha256 = "sha256-lXVJfhcH9lKOCHn5f4Lc/OjgEYa5IpauKRhBsFXNWLw=";
};
patches = [

View File

@ -2,7 +2,7 @@
buildGoModule rec {
pname = "grafana";
version = "7.5.2";
version = "7.5.6";
excludedPackages = [ "release_publisher" ];
@ -10,17 +10,24 @@ buildGoModule rec {
rev = "v${version}";
owner = "grafana";
repo = "grafana";
sha256 = "sha256-8Qy5YgJZpvaAjeBAi092Jxg4yAD1fYmMteTRm5b0Q+g=";
sha256 = "1683as90p4zkzhaj52vy60bcmpr77zynys87mjzh3s6ks3xfxn2x";
};
srcStatic = fetchurl {
url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
sha256 = "sha256-yVswMNOLX/AFtv45TXm8WcHEytyYgtjvi7V0dRewDdc=";
sha256 = "1mywvm4d116y56rffiywk1hx6wxj1418gf7q0v0hfdlwk1lqi9nz";
};
vendorSha256 = "sha256-oh3GB6Iaqy05IS2MU5LJqTXnlr0vtkACZA6wpmW7W2Q=";
vendorSha256 = "01a5v292x59fmayjkqnf4c8k8viasxr2s2khs4yrv6p829lx3hq2";
# grafana-aws-sdk is specified with two versions which causes a problem later:
# go: inconsistent vendoring in /build/source:
# github.com/grafana/grafana-aws-sdk@v0.3.0: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt
# Remove the older one here to fix this.
postPatch = ''
substituteInPlace go.mod \
--replace 'github.com/grafana/grafana-aws-sdk v0.3.0' ""
substituteInPlace pkg/cmd/grafana-server/main.go \
--replace 'var version = "5.0.0"' 'var version = "${version}"'
'';

View File

@ -3,13 +3,13 @@
}:
let
version = "2.26.0";
version = "2.27.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "prometheus";
repo = "prometheus";
sha256 = "06zr10zx3f526wcxj77smcl8wk55mhlnikd0b8vbjl9yyb0qc5mz";
sha256 = "0836ygyvld5skjycd7366i6vyf451s6cay5ng6c2fwq0skvp2gj2";
};
goPackagePath = "github.com/prometheus/prometheus";
@ -31,7 +31,7 @@ in buildGoModule rec {
pname = "prometheus";
inherit src version;
vendorSha256 = "0h14pmk74lxj7z39jb4xwvx3whwkaxn9686y23sgrpkra5sk6dbm";
vendorSha256 = "0dq3p7hga7m1aq78har5rr136hlb0kp8zhh2wzqlkxrk1f33w54p";
excludedPackages = [ "documentation/prometheus-mixin" ];

View File

@ -15,27 +15,18 @@
"@codemirror/search": "^0.18.2",
"@codemirror/state": "^0.18.2",
"@codemirror/view": "^0.18.3",
"@forevolve/bootstrap-dark": "^1.0.0",
"@fortawesome/fontawesome-svg-core": "^1.2.14",
"@fortawesome/free-solid-svg-icons": "^5.7.1",
"@fortawesome/react-fontawesome": "^0.1.4",
"@reach/router": "^1.2.1",
"@types/jest": "^26.0.10",
"@types/jquery": "^3.5.1",
"@types/node": "^12.11.1",
"@types/reach__router": "^1.2.6",
"@types/react": "^16.8.2",
"@types/react-copy-to-clipboard": "^5.0.0",
"@types/react-dom": "^16.8.0",
"@types/react-resize-detector": "^5.0.0",
"@types/sanitize-html": "^1.20.2",
"bootstrap": "^4.2.1",
"codemirror-promql": "^0.14.0",
"bootstrap": "^4.6.0",
"codemirror-promql": "^0.15.0",
"css.escape": "^1.5.1",
"downshift": "^3.4.8",
"enzyme-to-json": "^3.4.3",
"fuzzy": "^0.1.3",
"i": "^0.3.6",
"jest-fetch-mock": "^3.0.3",
"jquery": "^3.5.1",
"jquery.flot.tooltip": "^0.9.0",
"jsdom": "^16.4.0",
@ -48,11 +39,13 @@
"react-resize-detector": "^5.0.7",
"react-scripts": "3.4.4",
"react-test-renderer": "^16.9.0",
"reactstrap": "^8.0.1",
"sanitize-html": "^1.20.1",
"reactstrap": "^8.9.0",
"sanitize-html": "^2.3.3",
"sass": "1.32.10",
"tempusdominus-bootstrap-4": "^5.1.2",
"tempusdominus-core": "^5.0.3",
"typescript": "^3.3.3"
"typescript": "^3.3.3",
"use-media": "^1.4.0"
},
"scripts": {
"start": "react-scripts start",
@ -79,8 +72,17 @@
"@types/enzyme": "^3.10.3",
"@types/enzyme-adapter-react-16": "^1.0.5",
"@types/flot": "0.0.31",
"@types/jest": "^26.0.10",
"@types/jquery": "^3.5.1",
"@types/moment-timezone": "^0.5.10",
"@types/reactstrap": "^8.0.5",
"@types/node": "^12.11.1",
"@types/reach__router": "^1.2.6",
"@types/react": "^16.8.2",
"@types/react-copy-to-clipboard": "^5.0.0",
"@types/react-dom": "^16.8.0",
"@types/react-resize-detector": "^5.0.0",
"@types/reactstrap": "^8.7.2",
"@types/sanitize-html": "^1.20.2",
"@types/sinon": "^9.0.4",
"@typescript-eslint/eslint-plugin": "2.x",
"@typescript-eslint/parser": "2.x",

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