diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 88fb7f06828..83968bd49bf 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -3991,6 +3991,16 @@
githubId = 19825977;
name = "Hiren Shah";
};
+ hiro98 = {
+ email = "hiro@protagon.space";
+ github = "vale981";
+ githubId = 4025991;
+ name = "Valentin Boettcher";
+ keys = [{
+ longkeyid = "rsa2048/0xC22D4DE4D7B32D19";
+ fingerprint = "45A9 9917 578C D629 9F5F B5B4 C22D 4DE4 D7B3 2D19";
+ }];
+ };
hjones2199 = {
email = "hjones2199@gmail.com";
github = "hjones2199";
@@ -7031,6 +7041,12 @@
githubId = 628342;
name = "Tim Steinbach";
};
+ netcrns = {
+ email = "jason.wing@gmx.de";
+ github = "netcrns";
+ githubId = 34162313;
+ name = "Jason Wing";
+ };
netixx = {
email = "dev.espinetfrancois@gmail.com";
github = "netixx";
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index 38a541485e5..8153754af0f 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -155,6 +155,7 @@ let
GITLAB_REDIS_CONFIG_FILE = pkgs.writeText "redis.yml" (builtins.toJSON redisConfig);
prometheus_multiproc_dir = "/run/gitlab";
RAILS_ENV = "production";
+ MALLOC_ARENA_MAX = "2";
};
gitlab-rake = pkgs.stdenv.mkDerivation {
@@ -652,6 +653,105 @@ in {
description = "Extra configuration to merge into shell-config.yml";
};
+ puma.workers = mkOption {
+ type = types.int;
+ default = 2;
+ apply = x: builtins.toString x;
+ description = ''
+ The number of worker processes Puma should spawn. This
+ controls the amount of parallel Ruby code can be
+ executed. GitLab recommends Number of CPU cores -
+ 1
, but at least two.
+
+
+
+ Each worker consumes quite a bit of memory, so
+ be careful when increasing this.
+
+
+ '';
+ };
+
+ puma.threadsMin = mkOption {
+ type = types.int;
+ default = 0;
+ apply = x: builtins.toString x;
+ description = ''
+ The minimum number of threads Puma should use per
+ worker.
+
+
+
+ Each thread consumes memory and contributes to Global VM
+ Lock contention, so be careful when increasing this.
+
+
+ '';
+ };
+
+ puma.threadsMax = mkOption {
+ type = types.int;
+ default = 4;
+ apply = x: builtins.toString x;
+ description = ''
+ The maximum number of threads Puma should use per
+ worker. This limits how many threads Puma will automatically
+ spawn in response to requests. In contrast to workers,
+ threads will never be able to run Ruby code in parallel, but
+ give higher IO parallelism.
+
+
+
+ Each thread consumes memory and contributes to Global VM
+ Lock contention, so be careful when increasing this.
+
+
+ '';
+ };
+
+ sidekiq.memoryKiller.enable = mkOption {
+ type = types.bool;
+ default = true;
+ description = ''
+ Whether the Sidekiq MemoryKiller should be turned
+ on. MemoryKiller kills Sidekiq when its memory consumption
+ exceeds a certain limit.
+
+ See
+ for details.
+ '';
+ };
+
+ sidekiq.memoryKiller.maxMemory = mkOption {
+ type = types.int;
+ default = 2000;
+ apply = x: builtins.toString (x * 1024);
+ description = ''
+ The maximum amount of memory, in MiB, a Sidekiq worker is
+ allowed to consume before being killed.
+ '';
+ };
+
+ sidekiq.memoryKiller.graceTime = mkOption {
+ type = types.int;
+ default = 900;
+ apply = x: builtins.toString x;
+ description = ''
+ The time MemoryKiller waits after noticing excessive memory
+ consumption before killing Sidekiq.
+ '';
+ };
+
+ sidekiq.memoryKiller.shutdownWait = mkOption {
+ type = types.int;
+ default = 30;
+ apply = x: builtins.toString x;
+ description = ''
+ The time allowed for all jobs to finish before Sidekiq is
+ killed forcefully.
+ '';
+ };
+
extraConfig = mkOption {
type = types.attrs;
default = {};
@@ -993,7 +1093,11 @@ in {
] ++ optional (cfg.databaseHost == "") "postgresql.service";
wantedBy = [ "gitlab.target" ];
partOf = [ "gitlab.target" ];
- environment = gitlabEnv;
+ environment = gitlabEnv // (optionalAttrs cfg.sidekiq.memoryKiller.enable {
+ SIDEKIQ_MEMORY_KILLER_MAX_RSS = cfg.sidekiq.memoryKiller.maxMemory;
+ SIDEKIQ_MEMORY_KILLER_GRACE_TIME = cfg.sidekiq.memoryKiller.graceTime;
+ SIDEKIQ_MEMORY_KILLER_SHUTDOWN_WAIT = cfg.sidekiq.memoryKiller.shutdownWait;
+ });
path = with pkgs; [
postgresqlPackage
git
@@ -1005,13 +1109,15 @@ in {
# Needed for GitLab project imports
gnutar
gzip
+
+ procps # Sidekiq MemoryKiller
];
serviceConfig = {
Type = "simple";
User = cfg.user;
Group = cfg.group;
TimeoutSec = "infinity";
- Restart = "on-failure";
+ Restart = "always";
WorkingDirectory = "${cfg.packages.gitlab}/share/gitlab";
ExecStart="${cfg.packages.gitlab.rubyEnv}/bin/sidekiq -C \"${cfg.packages.gitlab}/share/gitlab/config/sidekiq_queues.yml\" -e production";
};
@@ -1145,7 +1251,13 @@ in {
TimeoutSec = "infinity";
Restart = "on-failure";
WorkingDirectory = "${cfg.packages.gitlab}/share/gitlab";
- ExecStart = "${cfg.packages.gitlab.rubyEnv}/bin/puma -C ${cfg.statePath}/config/puma.rb -e production";
+ ExecStart = concatStringsSep " " [
+ "${cfg.packages.gitlab.rubyEnv}/bin/puma"
+ "-e production"
+ "-C ${cfg.statePath}/config/puma.rb"
+ "-w ${cfg.puma.workers}"
+ "-t ${cfg.puma.threadsMin}:${cfg.puma.threadsMax}"
+ ];
};
};
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 6e728d711db..4f42f53c1e1 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -48,7 +48,7 @@ in
buildkite-agents = handleTest ./buildkite-agents.nix {};
caddy = handleTest ./caddy.nix {};
cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
- cage = handleTest ./cage.nix {};
+ cage = handleTestOn ["x86_64-linux"] ./cage.nix {};
cagebreak = handleTest ./cagebreak.nix {};
calibre-web = handleTest ./calibre-web.nix {};
cassandra_2_1 = handleTest ./cassandra.nix { testPackage = pkgs.cassandra_2_1; };
diff --git a/nixos/tests/cage.nix b/nixos/tests/cage.nix
index 69cc76d315f..53476c2fbe8 100644
--- a/nixos/tests/cage.nix
+++ b/nixos/tests/cage.nix
@@ -25,6 +25,11 @@ import ./make-test-python.nix ({ pkgs, ...} :
testScript = { nodes, ... }: let
user = nodes.machine.config.users.users.alice;
in ''
+ # Need to switch to a different VGA card / GPU driver because Cage segfaults with the default one (std):
+ # machine # [ 14.355893] .cage-wrapped[736]: segfault at 20 ip 00007f035fa0d8c7 sp 00007ffce9e4a2f0 error 4 in libwlroots.so.8[7f035fa07000+5a000]
+ # machine # [ 14.358108] Code: 4f a8 ff ff eb aa 0f 1f 44 00 00 c3 0f 1f 80 00 00 00 00 41 54 49 89 f4 55 31 ed 53 48 89 fb 48 8d 7f 18 48 8d 83 b8 00 00 00 <80> 7f 08 00 75 0d 48 83 3f 00 0f 85 91 00 00 00 48 89 fd 48 83 c7
+ os.environ["QEMU_OPTS"] = "-vga virtio"
+
with subtest("Wait for cage to boot up"):
start_all()
machine.wait_for_file("/run/user/${toString user.uid}/wayland-0.lock")
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index badda6b17ee..aa1ef4f8eff 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -1,24 +1,26 @@
-{ lib, stdenv, fetchurl, fetchsvn, makeWrapper, unzip, jre, libXxf86vm }:
+{ lib, stdenv, fetchurl, fetchsvn, makeWrapper, unzip, jre, libXxf86vm
+, extraJavaOpts ? "-Djosm.restart=true -Djava.net.useSystemProxies=true"
+}:
let
pname = "josm";
- version = "17702";
+ version = "17833";
srcs = {
jar = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
- sha256 = "1p7p0jd87sxrs5n0r82apkilx0phgmjw7vpdg8qrr5msda4rsmpk";
+ sha256 = "sha256-i3seRVfCLXNvUkWAAPZK0XloRHuXWCNp1tqnVr7CQ7Y=";
};
macosx = fetchurl {
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java16.zip";
- sha256 = "0r17cphxm852ykb8mkil29rr7sb0bj5w69qd5wz8zf2f9djk9npk";
+ sha256 = "sha256-PM/wNXqtEwalhorWHqVHWsaiGv60SFrHXZrb1Mw/QqQ=";
};
pkg = fetchsvn {
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
rev = version;
- sha256 = "1b7dryvakph8znh2ahgywch66l4bl5rmgsr79axnz1xi12g8ac12";
+ sha256 = "sha256-IjCFngixh2+7SifrV3Ohi1BjIOP+QSWg/QjeqbbP7aw=";
};
};
in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
inherit pname version;
dontUnpack = true;
@@ -36,8 +38,7 @@ stdenv.mkDerivation {
# Add libXxf86vm to path because it is needed by at least Kendzi3D plugin
makeWrapper ${jre}/bin/java $out/bin/josm \
- --add-flags "-Djosm.restart=true -Djava.net.useSystemProxies=true" \
- --add-flags "-jar $out/share/josm/josm.jar" \
+ --add-flags "${extraJavaOpts} -jar $out/share/josm/josm.jar" \
--prefix LD_LIBRARY_PATH ":" '${libXxf86vm}/lib'
'';
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 48723249323..3aec071a329 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -9,7 +9,7 @@
, hunspell, libevent, libstartup_notification
, libvpx_1_8
, icu67, libpng, jemalloc, glib, pciutils
-, autoconf213, which, gnused, rustPackages, rustPackages_1_45
+, autoconf213, which, gnused, rustPackages
, rust-cbindgen, nodejs, nasm, fetchpatch
, gnum4
, debugBuild ? false
@@ -90,19 +90,13 @@ let
then "/Applications/${binaryNameCapitalized}.app/Contents/MacOS"
else "/bin";
- # 78 ESR won't build with rustc 1.47
- inherit (if lib.versionAtLeast ffversion "82" then rustPackages else rustPackages_1_45)
- rustc cargo;
+ inherit (rustPackages) rustc cargo;
# Darwin's stdenv provides the default llvmPackages version, match that since
# clang LTO on Darwin is broken so the stdenv is not being changed.
- # Target the LLVM version that rustc -Vv reports it is built with for LTO.
- # rustPackages_1_45 -> LLVM 10, rustPackages -> LLVM 11
llvmPackages = if stdenv.isDarwin
then buildPackages.llvmPackages
- else if lib.versionAtLeast rustc.llvm.version "11"
- then buildPackages.llvmPackages_11
- else buildPackages.llvmPackages_10;
+ else buildPackages.llvmPackages_11;
# When LTO for Darwin is fixed, the following will need updating as lld
# doesn't work on it. For now it is fine since ltoSupport implies no Darwin.
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index b242e8a7726..36d97b5a87c 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -146,7 +146,7 @@ in stdenv.mkDerivation {
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" \
--add-flags ${escapeShellArg commandLineArgs}
- for elf in $out/share/google/$appname/{chrome,chrome-sandbox,nacl_helper}; do
+ for elf in $out/share/google/$appname/{chrome,chrome-sandbox,crashpad_handler,nacl_helper}; do
patchelf --set-rpath $rpath $elf
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $elf
done
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 501956ec938..0508830918f 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,15 +2,15 @@
buildGoModule rec {
pname = "helm";
- version = "3.5.3";
+ version = "3.5.4";
src = fetchFromGitHub {
owner = "helm";
repo = "helm";
rev = "v${version}";
- sha256 = "sha256-7xO07JDy6ujWlDF+5Xd3myRQ8ajTppCXz9fNe4yizVw=";
+ sha256 = "sha256-u8GJVOubPlIG88TFG5+OvbovMz4Q595wWo2YCwuTgG8=";
};
- vendorSha256 = "sha256-lpEoUgABtJczwShNdvD+zYAPDFTJqILSei2YY6mQ2mw=";
+ vendorSha256 = "sha256-zdZxGiwgx8c0zt9tQebJi7k/LNNYjhNInsVeBbxPsgE=";
doCheck = false;
diff --git a/pkgs/applications/networking/dyndns/dyndnsc/default.nix b/pkgs/applications/networking/dyndns/dyndnsc/default.nix
index 65d46305741..66b1d2639d6 100644
--- a/pkgs/applications/networking/dyndns/dyndnsc/default.nix
+++ b/pkgs/applications/networking/dyndns/dyndnsc/default.nix
@@ -2,11 +2,11 @@
python3Packages.buildPythonApplication rec {
pname = "dyndnsc";
- version = "0.5.1";
+ version = "0.6.1";
src = python3Packages.fetchPypi {
inherit pname version;
- hash = "sha256-Sy6U0XhIQ9mPmznmWKqoyqE34vaE84fwlivouaF7Dd0=";
+ sha256 = "13078d29eea2f9a4ca01f05676c3309ead5e341dab047e0d51c46f23d4b7fbb4";
};
postPatch = ''
@@ -19,9 +19,10 @@ python3Packages.buildPythonApplication rec {
dnspython
netifaces
requests
+ json-logging
setuptools
];
- checkInputs = with python3Packages; [ bottle pytestCheckHook ];
+ checkInputs = with python3Packages; [ bottle mock pytest-console-scripts pytestCheckHook ];
disabledTests = [
# dnswanip connects to an external server to discover the
diff --git a/pkgs/applications/version-management/yadm/default.nix b/pkgs/applications/version-management/yadm/default.nix
index b75af94af56..fc8bee5fcb7 100644
--- a/pkgs/applications/version-management/yadm/default.nix
+++ b/pkgs/applications/version-management/yadm/default.nix
@@ -1,17 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, git, gnupg }:
+{ lib, stdenv, fetchFromGitHub, git, gnupg, installShellFiles }:
-let version = "2.5.0"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
pname = "yadm";
- inherit version;
+ version = "3.1.0";
buildInputs = [ git gnupg ];
+ nativeBuildInputs = [ installShellFiles ];
+
src = fetchFromGitHub {
owner = "TheLocehiliosan";
repo = "yadm";
rev = version;
- sha256 = "128qlx8mp7h5ifapqqgsj3fwghn3q6x6ya0y33h5r7gnassd3njr";
+ sha256 = "0ga0p28nvqilswa07bzi93adk7wx6d5pgxlacr9wl9v1h6cds92s";
};
dontConfigure = true;
@@ -20,12 +21,16 @@ stdenv.mkDerivation {
installPhase = ''
runHook preInstall
install -Dt $out/bin yadm
- install -Dt $out/share/man/man1 yadm.1
- install -D completion/yadm.zsh_completion $out/share/zsh/site-functions/_yadm
- install -D completion/yadm.bash_completion $out/share/bash-completion/completions/yadm.bash
runHook postInstall
'';
+ postInstall = ''
+ installManPage yadm.1
+ installShellCompletion --cmd yadm \
+ --zsh completion/zsh/_yadm \
+ --bash completion/bash/yadm
+ '';
+
meta = {
homepage = "https://github.com/TheLocehiliosan/yadm";
description = "Yet Another Dotfiles Manager";
@@ -35,7 +40,7 @@ stdenv.mkDerivation {
* Provides a way to use alternate files on a specific OS or host.
* Supplies a method of encrypting confidential data so it can safely be stored in your repository.
'';
- license = lib.licenses.gpl3;
+ license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ abathur ];
platforms = lib.platforms.unix;
};
diff --git a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
index b2a9fc33255..62ebe39788f 100644
--- a/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
+++ b/pkgs/applications/video/kodi-packages/inputstream-adaptive/default.nix
@@ -2,13 +2,13 @@
buildKodiBinaryAddon rec {
pname = "inputstream-adaptive";
namespace = "inputstream.adaptive";
- version = "2.6.13";
+ version = "2.6.14";
src = fetchFromGitHub {
owner = "xbmc";
repo = "inputstream.adaptive";
rev = "${version}-${rel}";
- sha256 = "1xvinmwyx7mai84i8c394dqw86zb6ib9wnxjmv7zpky6x64lvv10";
+ sha256 = "sha256-5hYB9J4syY+2XOTdg9h7xLk8MMEG88EETIgkUmz4KOU=";
};
extraNativeBuildInputs = [ gtest ];
diff --git a/pkgs/applications/window-managers/cage/default.nix b/pkgs/applications/window-managers/cage/default.nix
index 103be0e53d7..1632ae027c0 100644
--- a/pkgs/applications/window-managers/cage/default.nix
+++ b/pkgs/applications/window-managers/cage/default.nix
@@ -8,20 +8,15 @@
stdenv.mkDerivation rec {
pname = "cage";
- version = "0.1.2.1";
+ version = "0.1.3";
src = fetchFromGitHub {
owner = "Hjdskes";
repo = "cage";
rev = "v${version}";
- sha256 = "1i4rm3dpmk7gkl6hfs6a7vwz76ba7yqcdp63nlrdbnq81m9cy2am";
+ sha256 = "0ixl45g0m8b75gvbjm3gf5qg0yplspgs0xpm2619wn5sygc47sb1";
};
- postPatch = ''
- substituteInPlace meson.build --replace \
- "0.1.2" "${version}"
- '';
-
nativeBuildInputs = [ meson ninja pkg-config wayland scdoc makeWrapper ];
buildInputs = [
diff --git a/pkgs/development/libraries/amdvlk/default.nix b/pkgs/development/libraries/amdvlk/default.nix
index 1d0256f3b27..5693a5968b6 100644
--- a/pkgs/development/libraries/amdvlk/default.nix
+++ b/pkgs/development/libraries/amdvlk/default.nix
@@ -21,13 +21,13 @@ let
in stdenv.mkDerivation rec {
pname = "amdvlk";
- version = "2021.Q1.6";
+ version = "2021.Q2.2";
src = fetchRepoProject {
name = "${pname}-src";
manifest = "https://github.com/GPUOpen-Drivers/AMDVLK.git";
rev = "refs/tags/v-${version}";
- sha256 = "FSQ/bYlvdw0Ih3Yl329o8Gizw0YcZTLtiI222Ju4M8w=";
+ sha256 = "4k9ZkBxJGuNUO44F9D+u54eUREl5/8zxjxhaShhzGv0=";
};
buildInputs = [
@@ -70,12 +70,8 @@ in stdenv.mkDerivation rec {
installPhase = ''
install -Dm755 -t $out/lib icd/amdvlk${suffix}.so
- install -Dm644 -t $out/share/vulkan/icd.d ../drivers/AMDVLK/json/Redhat/amd_icd${suffix}.json
-
- substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \
- "/usr/lib64" "$out/lib"
- substituteInPlace $out/share/vulkan/icd.d/amd_icd${suffix}.json --replace \
- "/usr/lib" "$out/lib"
+ install -Dm644 -t $out/share/vulkan/icd.d icd/amd_icd${suffix}.json
+ install -Dm644 -t $out/share/vulkan/implicit_layer.d icd/amd_icd${suffix}.json
patchelf --set-rpath "$rpath" $out/lib/amdvlk${suffix}.so
'';
diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix
index 8f6d9fcab5e..ccf1c470364 100644
--- a/pkgs/development/libraries/libgpiod/default.nix
+++ b/pkgs/development/libraries/libgpiod/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "libgpiod";
- version = "1.6.2";
+ version = "1.6.3";
src = fetchurl {
url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
- sha256 = "1k8mxkzvd6y9aawxghddrjkldzskhb6607qhbwjfl9f945ns87qa";
+ sha256 = "sha256-60RgcL4URP19MtMrvKU8Lzu7CiEZPbhhmM9gULeihEE=";
};
patches = [
diff --git a/pkgs/development/python-modules/importlib-resources/2.nix b/pkgs/development/python-modules/importlib-resources/2.nix
new file mode 100644
index 00000000000..1034c311130
--- /dev/null
+++ b/pkgs/development/python-modules/importlib-resources/2.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools-scm
+, importlib-metadata
+, typing
+, singledispatch
+, python
+}:
+
+buildPythonPackage rec {
+ pname = "importlib-resources";
+ version = "3.3.1";
+
+ src = fetchPypi {
+ pname = "importlib_resources";
+ inherit version;
+ sha256 = "0ed250dbd291947d1a298e89f39afcc477d5a6624770503034b72588601bcc05";
+ };
+
+ nativeBuildInputs = [ setuptools-scm ];
+ propagatedBuildInputs = [
+ importlib-metadata
+ singledispatch
+ typing
+ ];
+
+ checkPhase = ''
+ ${python.interpreter} -m unittest discover
+ '';
+
+ meta = with lib; {
+ description = "Read resources from Python packages";
+ homepage = "https://importlib-resources.readthedocs.io/";
+ license = licenses.asl20;
+ maintainers = [ ];
+ };
+}
diff --git a/pkgs/development/python-modules/importlib-resources/default.nix b/pkgs/development/python-modules/importlib-resources/default.nix
index cd8fec1e54e..2388fb1b26d 100644
--- a/pkgs/development/python-modules/importlib-resources/default.nix
+++ b/pkgs/development/python-modules/importlib-resources/default.nix
@@ -1,8 +1,7 @@
{ lib
, buildPythonPackage
, fetchPypi
-, setuptools_scm
-, toml
+, setuptools-scm
, importlib-metadata
, typing ? null
, singledispatch ? null
@@ -11,15 +10,16 @@
}:
buildPythonPackage rec {
- pname = "importlib_resources";
+ pname = "importlib-resources";
version = "5.1.2";
src = fetchPypi {
- inherit pname version;
+ pname = "importlib_resources";
+ inherit version;
sha256 = "642586fc4740bd1cad7690f836b3321309402b20b332529f25617ff18e8e1370";
};
- nativeBuildInputs = [ setuptools_scm toml ];
+ nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [
importlib-metadata
] ++ lib.optional (pythonOlder "3.4") singledispatch
@@ -34,5 +34,6 @@ buildPythonPackage rec {
description = "Read resources from Python packages";
homepage = "https://importlib-resources.readthedocs.io/";
license = licenses.asl20;
+ maintainers = [ ];
};
}
diff --git a/pkgs/development/python-modules/json-logging/default.nix b/pkgs/development/python-modules/json-logging/default.nix
new file mode 100644
index 00000000000..3d34cb2475a
--- /dev/null
+++ b/pkgs/development/python-modules/json-logging/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, pytestCheckHook
+, wheel
+, flask
+, sanic
+, fastapi
+, uvicorn
+, requests
+}:
+
+buildPythonPackage rec {
+ pname = "json-logging";
+ version = "1.3.0";
+
+ src = fetchFromGitHub {
+ owner = "bobbui";
+ repo = "json-logging-python";
+ rev = version;
+ hash = "sha256-0eIhOi30r3ApyVkiBdTQps5tNj7rI+q8TjNWxTnhtMQ=";
+ };
+ patches = [
+ # Fix tests picking up test modules instead of real packages.
+ (fetchpatch {
+ url = "https://github.com/bobbui/json-logging-python/commit/6fdb64deb42fe48b0b12bda0442fd5ac5f03107f.patch";
+ sha256 = "sha256-BLfARsw2FdvY22NCaFfdFgL9wTmEZyVIi3CQpB5qU0Y=";
+ })
+ ];
+
+ # - Quart is not packaged for Nixpkgs.
+ # - FastAPI is broken, see #112701 and tiangolo/fastapi#2335.
+ checkInputs = [ wheel flask /*quart*/ sanic /*fastapi*/ uvicorn requests pytestCheckHook ];
+ disabledTests = [ "quart" "fastapi" ];
+ disabledTestPaths = [ "tests/test_fastapi.py" ];
+ # Tests spawn servers and try to connect to them.
+ __darwinAllowLocalNetworking = true;
+
+ meta = with lib; {
+ description = "Python library to emit logs in JSON format";
+ longDescription = ''
+ Python logging library to emit JSON log that can be easily indexed and searchable by logging infrastructure such as ELK, EFK, AWS Cloudwatch, GCP Stackdriver.
+ '';
+ homepage = "https://github.com/bobbui/json-logging-python";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ AluisioASG ];
+ };
+}
diff --git a/pkgs/development/python-modules/pyface/default.nix b/pkgs/development/python-modules/pyface/default.nix
index 7ad1fb41526..3a29fd79f77 100644
--- a/pkgs/development/python-modules/pyface/default.nix
+++ b/pkgs/development/python-modules/pyface/default.nix
@@ -1,5 +1,5 @@
{ lib, fetchPypi, buildPythonPackage
-, setuptools, six, traits
+, importlib-metadata, importlib-resources, six, traits
}:
buildPythonPackage rec {
@@ -11,10 +11,12 @@ buildPythonPackage rec {
sha256 = "a7031ec4cfff034affc822e47ff5e6c1a0272e576d79465cdbbe25f721740322";
};
- propagatedBuildInputs = [ setuptools six traits ];
+ propagatedBuildInputs = [ importlib-metadata importlib-resources six traits ];
doCheck = false; # Needs X server
+ pythonImportsCheck = [ "pyface" ];
+
meta = with lib; {
description = "Traits-capable windowing framework";
homepage = "https://github.com/enthought/pyface";
diff --git a/pkgs/development/python-modules/pytest-console-scripts/default.nix b/pkgs/development/python-modules/pytest-console-scripts/default.nix
new file mode 100644
index 00000000000..aaecd191e93
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-console-scripts/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytestCheckHook
+, python
+, mock
+, setuptools-scm
+}:
+
+buildPythonPackage rec {
+ pname = "pytest-console-scripts";
+ version = "1.2.0";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "4a2138d7d567bc581fe081b6a5975849a2a36b3925cb0f066d2380103e13741c";
+ };
+ postPatch = ''
+ # setuptools-scm is pinned to <6 because it dropped Python 3.5
+ # support. That's not something that affects us.
+ substituteInPlace setup.py --replace "'setuptools_scm<6'" "'setuptools_scm'"
+ # Patch the shebang of a script generated during test.
+ substituteInPlace tests/test_run_scripts.py --replace "#!/usr/bin/env python" "#!${python.interpreter}"
+ '';
+
+ SETUPTOOLS_SCM_PRETEND_VERSION = version;
+ nativeBuildInputs = [ setuptools-scm ];
+
+ checkInputs = [ mock pytestCheckHook ];
+
+ meta = with lib; {
+ description = "Pytest plugin for testing console scripts";
+ longDescription = ''
+ Pytest-console-scripts is a pytest plugin for running python scripts from within tests.
+ It's quite similar to subprocess.run(), but it also has an in-process mode, where the scripts are executed by the interpreter that's running pytest (using some amount of sandboxing).
+ '';
+ homepage = "https://github.com/kvas-it/pytest-console-scripts";
+ license = licenses.mit;
+ maintainers = with maintainers; [ AluisioASG ];
+ };
+}
diff --git a/pkgs/development/python-modules/pytest-sanic/default.nix b/pkgs/development/python-modules/pytest-sanic/default.nix
index 84330cfd62e..ae1c56f95b7 100644
--- a/pkgs/development/python-modules/pytest-sanic/default.nix
+++ b/pkgs/development/python-modules/pytest-sanic/default.nix
@@ -46,5 +46,9 @@ buildPythonPackage rec {
homepage = "https://github.com/yunstanford/pytest-sanic/";
license = licenses.asl20;
maintainers = [ maintainers.costrouc ];
+ # pytest-sanic is incompatible with Sanic 21.3, see
+ # https://github.com/sanic-org/sanic/issues/2095 and
+ # https://github.com/yunstanford/pytest-sanic/issues/50.
+ broken = lib.versionAtLeast sanic.version "21.3.0";
};
}
diff --git a/pkgs/development/python-modules/sanic-auth/default.nix b/pkgs/development/python-modules/sanic-auth/default.nix
index c78b6f13d15..38d73d461c2 100644
--- a/pkgs/development/python-modules/sanic-auth/default.nix
+++ b/pkgs/development/python-modules/sanic-auth/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, sanic, pytestCheckHook }:
+{ lib, buildPythonPackage, fetchPypi, sanic, sanic-testing, pytestCheckHook }:
buildPythonPackage rec {
pname = "Sanic-Auth";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [ sanic ];
- checkInputs = [ pytestCheckHook ];
+ checkInputs = [ pytestCheckHook sanic-testing ];
pythonImportsCheck = [ "sanic_auth" ];
diff --git a/pkgs/development/python-modules/sanic-routing/default.nix b/pkgs/development/python-modules/sanic-routing/default.nix
new file mode 100644
index 00000000000..76eb72dc708
--- /dev/null
+++ b/pkgs/development/python-modules/sanic-routing/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, pytest-asyncio
+}:
+
+buildPythonPackage rec {
+ pname = "sanic-routing";
+ version = "0.6.2";
+
+ src = fetchFromGitHub {
+ owner = "sanic-org";
+ repo = "sanic-routing";
+ rev = "v${version}";
+ hash = "sha256-ZMl8PB9E401pUfUJ4tW7nBx1TgPQQtx9erVni3zP+lo=";
+ };
+
+ checkInputs = [ pytestCheckHook pytest-asyncio ];
+ pythonImportsCheck = [ "sanic_routing" ];
+
+ meta = with lib; {
+ description = "Core routing component for the Sanic web framework";
+ homepage = "https://github.com/sanic-org/sanic-routing";
+ license = licenses.mit;
+ maintainers = with maintainers; [ AluisioASG ];
+ };
+}
diff --git a/pkgs/development/python-modules/sanic-testing/default.nix b/pkgs/development/python-modules/sanic-testing/default.nix
new file mode 100644
index 00000000000..fa1dfc6870b
--- /dev/null
+++ b/pkgs/development/python-modules/sanic-testing/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, httpcore
+, httpx
+, pytest-asyncio
+, sanic
+, websockets
+}:
+
+buildPythonPackage rec {
+ pname = "sanic-testing";
+ version = "0.3.1";
+
+ src = fetchFromGitHub {
+ owner = "sanic-org";
+ repo = "sanic-testing";
+ rev = "v${version}";
+ hash = "sha256-hBAq+/BKs0a01M89Nb8HaClqxB+W5PTfjVzef/m9SWs=";
+ };
+
+ propagatedBuildInputs = [ httpx sanic websockets httpcore ];
+
+ # `sanic` is explicitly set to null when building `sanic` itself
+ # to prevent infinite recursion. In that case we skip running
+ # the package at all.
+ doCheck = sanic != null;
+ dontUsePythonImportsCheck = sanic == null;
+
+ checkInputs = [ pytestCheckHook pytest-asyncio ];
+ pythonImportsCheck = [ "sanic_testing" ];
+
+ meta = with lib; {
+ description = "Core testing clients for the Sanic web framework";
+ homepage = "https://github.com/sanic-org/sanic-testing";
+ license = licenses.mit;
+ maintainers = with maintainers; [ AluisioASG ];
+ };
+}
diff --git a/pkgs/development/python-modules/sanic/default.nix b/pkgs/development/python-modules/sanic/default.nix
index e5995ed0b1e..31dcc86e0bc 100644
--- a/pkgs/development/python-modules/sanic/default.nix
+++ b/pkgs/development/python-modules/sanic/default.nix
@@ -1,42 +1,44 @@
{ lib, buildPythonPackage, fetchPypi, doCheck ? true
-, aiofiles, httptools, httpx, multidict, ujson, uvloop, websockets
-, pytestCheckHook, beautifulsoup4, gunicorn, httpcore, uvicorn
-, pytest-asyncio, pytest-benchmark, pytest-dependency, pytest-sanic, pytest-sugar, pytestcov
+, aiofiles, httptools, multidict, sanic-routing, ujson, uvloop, websockets
+, pytestCheckHook, beautifulsoup4, gunicorn, uvicorn, sanic-testing
+, pytest-benchmark, pytest-sanic, pytest-sugar, pytestcov
}:
buildPythonPackage rec {
pname = "sanic";
- version = "21.3.2";
+ version = "21.3.4";
src = fetchPypi {
inherit pname version;
- sha256 = "84a04c5f12bf321bed3942597787f1854d15c18f157aebd7ced8c851ccc49e08";
+ sha256 = "1cbd12b9138b3ca69656286b0be91fff02b826e8cb72dd76a2ca8c5eb1288d8e";
};
postPatch = ''
+ # Loosen dependency requirements.
substituteInPlace setup.py \
- --replace '"multidict==5.0.0"' '"multidict"' \
- --replace '"httpx==0.15.4"' '"httpx"' \
- --replace '"httpcore==0.3.0"' '"httpcore"' \
- --replace '"pytest==5.2.1"' '"pytest"'
+ --replace '"pytest==5.2.1"' '"pytest"' \
+ --replace '"gunicorn==20.0.4"' '"gunicorn"' \
+ --replace '"pytest-sanic",' ""
+ # Patch a request headers test to allow brotli encoding
+ # (we build httpx with brotli support, upstream doesn't).
+ substituteInPlace tests/test_headers.py \
+ --replace "deflate\r\n" "deflate, br\r\n"
'';
propagatedBuildInputs = [
- aiofiles httptools httpx multidict ujson uvloop websockets
+ sanic-routing httptools uvloop ujson aiofiles websockets multidict
];
checkInputs = [
- pytestCheckHook beautifulsoup4 gunicorn httpcore uvicorn
- pytest-asyncio pytest-benchmark pytest-dependency pytest-sanic pytest-sugar pytestcov
+ sanic-testing gunicorn pytestcov beautifulsoup4 pytest-sanic pytest-sugar
+ pytest-benchmark pytestCheckHook uvicorn
];
inherit doCheck;
disabledTests = [
"test_gunicorn" # No "examples" directory in pypi distribution.
- "test_logo" # Fails to filter out "DEBUG asyncio:selector_events.py:59 Using selector: EpollSelector"
"test_zero_downtime" # No "examples.delayed_response.app" module in pypi distribution.
- "test_reloader_live" # OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 42104)
];
__darwinAllowLocalNetworking = true;
@@ -45,8 +47,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "A microframework based on uvloop, httptools, and learnings of flask";
- homepage = "https://github.com/channelcat/sanic/";
+ homepage = "https://github.com/sanic-org/sanic/";
license = licenses.mit;
- maintainers = [ maintainers.costrouc ];
+ maintainers = with maintainers; [ costrouc AluisioASG ];
};
}
diff --git a/pkgs/development/tools/analysis/rizin/cutter.nix b/pkgs/development/tools/analysis/rizin/cutter.nix
index a4c2d0d45c1..c1d8ab99063 100644
--- a/pkgs/development/tools/analysis/rizin/cutter.nix
+++ b/pkgs/development/tools/analysis/rizin/cutter.nix
@@ -11,13 +11,13 @@
mkDerivation rec {
pname = "cutter";
- version = "2.0.1";
+ version = "2.0.2";
src = fetchFromGitHub {
owner = "rizinorg";
repo = "cutter";
rev = "v${version}";
- sha256 = "sha256-IQCJOUgefSdMSa27E6I/CL35Kx5pHq/u+5Q0FHUAR1E=";
+ sha256 = "sha256-CVVUXx6wt9vH3B7NrrlRGnOIrhXQPjV7GmX3O+KtMSM=";
fetchSubmodules = true;
};
diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix
index 20184ac53a1..4e9543ef371 100644
--- a/pkgs/development/tools/analysis/rizin/default.nix
+++ b/pkgs/development/tools/analysis/rizin/default.nix
@@ -23,11 +23,11 @@
stdenv.mkDerivation rec {
pname = "rizin";
- version = "0.2.0";
+ version = "0.2.1";
src = fetchurl {
url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz";
- sha256 = "sha256-CGHeo247syha+rVtiAQz0XkEYK9p4DHTnLK2FhBOvE8=";
+ sha256 = "sha256-lxVsPI+qLenZ0pelvxtHlQ6fhWdQeqoEEHrUGZ5Rdmg=";
};
mesonFlags = [
diff --git a/pkgs/development/tools/database/movine/default.nix b/pkgs/development/tools/database/movine/default.nix
new file mode 100644
index 00000000000..fd5debcb9a2
--- /dev/null
+++ b/pkgs/development/tools/database/movine/default.nix
@@ -0,0 +1,54 @@
+{ rustPlatform
+, fetchFromGitHub
+, lib
+, stdenv
+, pkg-config
+, postgresql
+, sqlite
+, openssl
+, Security
+, libiconv
+}:
+
+rustPlatform.buildRustPackage rec {
+ pname = "movine";
+ version = "0.11.0";
+
+ src = fetchFromGitHub {
+ owner = "byronwasti";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0rms8np8zd23xzrd5avhp2q1ndhdc8f49lfwpff9h0slw4rnzfnj";
+ };
+
+ cargoSha256 = "sha256-4ghfenwmauR4Ft9n7dvBflwIMXPdFq1vh6FpIegHnZk=";
+
+ nativeBuildInputs = [ pkg-config ];
+ buildInputs = [ postgresql sqlite ] ++ (
+ if !stdenv.isDarwin then [ openssl ] else [ Security libiconv ]
+ );
+
+ meta = with lib; {
+ description = "A migration manager written in Rust, that attempts to be smart yet minimal";
+ homepage = "https://github.com/byronwasti/movine";
+ license = licenses.mit;
+ longDescription = ''
+ Movine is a simple database migration manager that aims to be compatible
+ with real-world migration work. Many migration managers get confused
+ with complicated development strategies for migrations. Oftentimes
+ migration managers do not warn you if the SQL saved in git differs from
+ what was actually run on the database. Movine solves this issue by
+ keeping track of the unique hashes for the up.sql and
+ down.sql for each migration, and provides tools for
+ fixing issues. This allows users to easily keep track of whether their
+ local migration history matches the one on the database.
+
+ This project is currently in early stages.
+
+ Movine does not aim to be an ORM.
+ Consider diesel instead if
+ you want an ORM.
+ '';
+ maintainers = with maintainers; [ netcrns ];
+ };
+}
diff --git a/pkgs/development/tools/roswell/default.nix b/pkgs/development/tools/roswell/default.nix
new file mode 100644
index 00000000000..98445ea875a
--- /dev/null
+++ b/pkgs/development/tools/roswell/default.nix
@@ -0,0 +1,38 @@
+{ lib, stdenv, fetchFromGitHub, curl, autoconf, automake, makeWrapper, sbcl }:
+
+stdenv.mkDerivation rec {
+ pname = "roswell";
+ version = "21.01.14.108";
+
+ src = fetchFromGitHub {
+ owner = "roswell";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1hj9q3ig7naky3pb3jkl9yjc9xkg0k7js3glxicv0aqffx9hkp3p";
+ };
+
+ preConfigure = ''
+ sh bootstrap
+ '';
+
+ configureFlags = [ "--prefix=${placeholder "out"}" ];
+
+ postInstall = ''
+ wrapProgram $out/bin/ros \
+ --add-flags 'lisp=sbcl-bin/system sbcl-bin.version=system' \
+ --prefix PATH : ${lib.makeBinPath [ sbcl ]} --argv0 ros
+ '';
+
+ nativeBuildInputs = [ autoconf automake makeWrapper ];
+
+ buildInputs = [ sbcl curl ];
+
+ meta = with lib; {
+ description = "Roswell is a Lisp implementation installer/manager, launcher, and much more";
+ license = licenses.mit;
+ maintainers = with maintainers; [ hiro98 ];
+ platforms = platforms.linux;
+ homepage = "https://github.com/roswell/roswell";
+ mainProgram = "ros";
+ };
+}
diff --git a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix
index b474c48e341..5ee39c5bf33 100644
--- a/pkgs/os-specific/linux/firmware/sof-firmware/default.nix
+++ b/pkgs/os-specific/linux/firmware/sof-firmware/default.nix
@@ -3,29 +3,28 @@
with lib;
stdenv.mkDerivation rec {
pname = "sof-firmware";
- version = "1.6";
+ version = "1.7";
src = fetchFromGitHub {
owner = "thesofproject";
repo = "sof-bin";
- rev = "cbdec6963b2c2d58b0080955d3c11b96ff4c92f0";
- sha256 = "0la2pw1zpv50cywiqcfb00cxqvjc73drxwjchyzi54l508817nxh";
+ rev = "v${version}";
+ sha256 = "sha256-Z0Z4HLsIIuW8E1kFNhAECmzj1HkJVfbEw13B8V7PZLk=";
};
- phases = [ "unpackPhase" "installPhase" ];
+ dontFixup = true; # binaries must not be stripped or patchelfed
installPhase = ''
- mkdir -p $out/lib/firmware
-
- patchShebangs go.sh
- ROOT=$out SOF_VERSION=v${version} ./go.sh
+ mkdir -p $out/lib/firmware/intel/
+ cp -a sof-v${version} $out/lib/firmware/intel/sof
+ cp -a sof-tplg-v${version} $out/lib/firmware/intel/sof-tplg
'';
meta = with lib; {
description = "Sound Open Firmware";
homepage = "https://www.sofproject.org/";
license = with licenses; [ bsd3 isc ];
- maintainers = with maintainers; [ lblasc evenbrenden ];
+ maintainers = with maintainers; [ lblasc evenbrenden hmenke ];
platforms = with platforms; linux;
};
}
diff --git a/pkgs/os-specific/linux/fuse/common.nix b/pkgs/os-specific/linux/fuse/common.nix
index cca1ecf5d24..c1217f66938 100644
--- a/pkgs/os-specific/linux/fuse/common.nix
+++ b/pkgs/os-specific/linux/fuse/common.nix
@@ -1,7 +1,7 @@
{ version, sha256Hash }:
{ lib, stdenv, fetchFromGitHub, fetchpatch
-, fusePackages, util-linux, gettext
+, fusePackages, util-linux, gettext, shadow
, meson, ninja, pkg-config
, autoreconfHook
, python3Packages, which
@@ -54,13 +54,14 @@ in stdenv.mkDerivation rec {
# $PATH, so it should also work on non-NixOS systems.
export NIX_CFLAGS_COMPILE="-DFUSERMOUNT_DIR=\"/run/wrappers/bin\""
- sed -e 's@/bin/@${util-linux}/bin/@g' -i lib/mount_util.c
+ substituteInPlace lib/mount_util.c --replace "/bin/" "${util-linux}/bin/"
'' + (if isFuse3 then ''
# The configure phase will delete these files (temporary workaround for
# ./fuse3-install_man.patch)
install -D -m444 doc/fusermount3.1 $out/share/man/man1/fusermount3.1
install -D -m444 doc/mount.fuse3.8 $out/share/man/man8/mount.fuse3.8
'' else ''
+ substituteInPlace util/mount.fuse.c --replace '"su"' '"${shadow.su}/bin/su"'
sed -e 's@CONFIG_RPATH=/usr/share/gettext/config.rpath@CONFIG_RPATH=${gettext}/share/gettext/config.rpath@' -i makeconf.sh
./makeconf.sh
'');
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 7d83d68e73c..765118be119 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -36,10 +36,10 @@ rec {
else legacy_390;
beta = generic {
- version = "460.27.04";
- sha256_64bit = "plTqtc5QZQwM0f3MeMZV0N5XOiuSXCCDklL/qyy8HM8=";
- settingsSha256 = "hU9J0VSrLXs7N14zq6U5LbBLZXEIyTfih/Bj6eFcMf0=";
- persistencedSha256 = "PmqhoPskqhJe2FxMrQh9zX1BWQCR2kkfDwvA89+XALA=";
+ version = "465.27";
+ sha256_64bit = "fmn/qFve5qqqa26n4dsoOwGZ+ash5Bon3JBI8kncMXE=";
+ settingsSha256 = "3BFLCx0dcrQY4Mv1joMsiVPwTPyufgsNT5pFgp1Mk/A=";
+ persistencedSha256 = "HtoFGTiBnAeQyRTOMlve5poaQh63LHRD+DHJxZO+c90=";
};
# Vulkan developer beta driver
diff --git a/pkgs/servers/http/gitlab-pages/default.nix b/pkgs/servers/http/gitlab-pages/default.nix
index 920a3299929..33c556fb54a 100644
--- a/pkgs/servers/http/gitlab-pages/default.nix
+++ b/pkgs/servers/http/gitlab-pages/default.nix
@@ -2,23 +2,23 @@
buildGoModule rec {
pname = "gitlab-pages";
- version = "1.35.0";
+ version = "1.38.0";
src = fetchFromGitLab {
owner = "gitlab-org";
repo = "gitlab-pages";
rev = "v${version}";
- sha256 = "sha256-5AkzbOutBXy59XvMwfyH6A8ETwjP2QokG/Rz31/nCpk=";
+ sha256 = "sha256-QaqZGTkNAzQEqlwccAWPDP91BSc9vRDEsCBca/lEXW4=";
};
- vendorSha256 = "sha256-g8FDWpZmbZSkJAzoEiI8/JZLTTgG7uJ4sS35axaEXLY=";
+ vendorSha256 = "sha256-uuwuiGQWLIQ5UJuCKDBEvCPo2+AXtJ54ARK431qiakc=";
subPackages = [ "." ];
- doCheck = false; # Broken
meta = with lib; {
description = "Daemon used to serve static websites for GitLab users";
homepage = "https://gitlab.com/gitlab-org/gitlab-pages";
+ changelog = "https://gitlab.com/gitlab-org/gitlab-pages/-/blob/v${version}/CHANGELOG.md";
license = licenses.mit;
- maintainers = with maintainers; [ das_j ];
+ maintainers = with maintainers; [ ajs124 das_j ];
};
}
diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix
index ff1c4c7b892..75e1084e0bd 100644
--- a/pkgs/tools/misc/ffsend/default.nix
+++ b/pkgs/tools/misc/ffsend/default.nix
@@ -1,5 +1,6 @@
{ lib, stdenv, fetchFromGitLab, rustPlatform, cmake, pkg-config, openssl
-, darwin, installShellFiles
+, installShellFiles
+, CoreFoundation, CoreServices, Security, AppKit, libiconv
, x11Support ? stdenv.isLinux || stdenv.hostPlatform.isBSD
, xclip ? null, xsel ? null
@@ -29,7 +30,7 @@ buildRustPackage rec {
nativeBuildInputs = [ cmake pkg-config installShellFiles ];
buildInputs =
- if stdenv.isDarwin then (with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices Security AppKit ])
+ if stdenv.isDarwin then [ libiconv CoreFoundation CoreServices Security AppKit ]
else [ openssl ];
preBuild = lib.optionalString (x11Support && usesX11) (
diff --git a/pkgs/tools/networking/fastd/default.nix b/pkgs/tools/networking/fastd/default.nix
index ed7bb0b01d3..af75641a5b9 100644
--- a/pkgs/tools/networking/fastd/default.nix
+++ b/pkgs/tools/networking/fastd/default.nix
@@ -1,5 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, bison, meson, ninja, pkg-config
-, libuecc, libsodium, libcap, json_c, openssl }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, bison
+, meson
+, ninja
+, pkg-config
+, libuecc
+, libsodium
+, libcap
+, json_c
+, openssl
+}:
stdenv.mkDerivation rec {
pname = "fastd";
@@ -12,8 +23,27 @@ stdenv.mkDerivation rec {
sha256 = "1p4k50dk8byrghbr0fwmgwps8df6rlkgcd603r14i71m5g27z5gw";
};
- nativeBuildInputs = [ pkg-config bison meson ninja ];
- buildInputs = [ libuecc libsodium libcap json_c openssl ];
+ nativeBuildInputs = [
+ bison
+ meson
+ ninja
+ pkg-config
+ ];
+
+ buildInputs = [
+ json_c
+ libcap
+ libsodium
+ libuecc
+ openssl
+ ];
+
+ # some options are only available on x86
+ mesonFlags = lib.optionals (!stdenv.isx86_64 && !stdenv.isi686) [
+ "-Dcipher_salsa20_xmm=disabled"
+ "-Dcipher_salsa2012_xmm=disabled"
+ "-Dmac_ghash_pclmulqdq=disabled"
+ ];
enableParallelBuilding = true;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index fb68267c98d..be6ebd26f27 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4459,7 +4459,9 @@ in
ferm = callPackage ../tools/networking/ferm { };
- ffsend = callPackage ../tools/misc/ffsend { };
+ ffsend = callPackage ../tools/misc/ffsend {
+ inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Security AppKit;
+ };
fgallery = callPackage ../tools/graphics/fgallery { };
@@ -11543,6 +11545,8 @@ in
sbcl_2_1_2 = callPackage ../development/compilers/sbcl/2.1.2.nix {};
sbcl = sbcl_2_1_2;
+ roswell = callPackage ../development/tools/roswell/default.nix { };
+
scala_2_10 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.10"; jre = jdk8; };
scala_2_11 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.11"; jre = jdk8; };
scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; jre = jdk8; };
@@ -16660,6 +16664,10 @@ in
mono-addins = callPackage ../development/libraries/mono-addins { };
+ movine = callPackage ../development/tools/database/movine {
+ inherit (darwin.apple_sdk.frameworks) Security;
+ };
+
movit = callPackage ../development/libraries/movit { };
mosquitto = callPackage ../servers/mqtt/mosquitto { };
@@ -22338,9 +22346,7 @@ in
caerbannog = callPackage ../applications/misc/caerbannog { };
- cage = callPackage ../applications/window-managers/cage {
- wlroots = wlroots_0_12;
- };
+ cage = callPackage ../applications/window-managers/cage { };
calf = callPackage ../applications/audio/calf {
inherit (gnome2) libglade;
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 10c07d8d4b4..ec7afc633ea 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -3443,6 +3443,8 @@ in {
jsonlines = callPackage ../development/python-modules/jsonlines { };
+ json-logging = callPackage ../development/python-modules/json-logging { };
+
jsonmerge = callPackage ../development/python-modules/jsonmerge { };
json-merge-patch = callPackage ../development/python-modules/json-merge-patch { };
@@ -6259,6 +6261,8 @@ in {
pytest-click = callPackage ../development/python-modules/pytest-click { };
+ pytest-console-scripts = callPackage ../development/python-modules/pytest-console-scripts { };
+
pytest-cov = self.pytestcov; # self 2021-01-04
pytestcov = callPackage ../development/python-modules/pytest-cov { };
@@ -7195,9 +7199,22 @@ in {
samsungtvws = callPackage ../development/python-modules/samsungtvws { };
+ sanic = callPackage ../development/python-modules/sanic {
+ # pytest-sanic is doing ok for the sole purpose of testing Sanic.
+ pytest-sanic = self.pytest-sanic.overridePythonAttrs (oldAttrs: {
+ doCheck = false;
+ meta.broken = false;
+ });
+ # Don't pass any `sanic` to avoid dependency loops. `sanic-testing`
+ # has special logic to disable tests when this is the case.
+ sanic-testing = self.sanic-testing.override { sanic = null; };
+ };
+
sanic-auth = callPackage ../development/python-modules/sanic-auth { };
- sanic = callPackage ../development/python-modules/sanic { };
+ sanic-routing = callPackage ../development/python-modules/sanic-routing { };
+
+ sanic-testing = callPackage ../development/python-modules/sanic-testing { };
sapi-python-client = callPackage ../development/python-modules/sapi-python-client { };
diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix
index 915c2edec70..81bdcdb93db 100644
--- a/pkgs/top-level/python2-packages.nix
+++ b/pkgs/top-level/python2-packages.nix
@@ -178,6 +178,8 @@ with self; with super; {
importlib-metadata = callPackage ../development/python-modules/importlib-metadata/2.nix { };
+ importlib-resources = callPackage ../development/python-modules/importlib-resources/2.nix { };
+
ipaddr = callPackage ../development/python-modules/ipaddr { };
ipykernel = callPackage ../development/python-modules/ipykernel/4.nix { };