summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2021-01-11 01:02:21 +0000
committerGitHub <noreply@github.com>2021-01-11 01:02:21 +0000
commit36bab113bfe0793dc458a8627a4eba3d88da12ec (patch)
treea4e5bb03f6923378d701c420b91ff4a14bf569b4 /pkgs
parentdd7235715565d6dde51b3cf5861d17484084b426 (diff)
parentf337a3fc227b056e044388b15e646a091697a4e5 (diff)
downloadnixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar.gz
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar.bz2
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar.lz
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar.xz
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.tar.zst
nixpkgs-36bab113bfe0793dc458a8627a4eba3d88da12ec.zip
Merge master into staging-next
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix28
-rw-r--r--pkgs/data/themes/openzone/default.nix24
-rw-r--r--pkgs/development/compilers/vyper/default.nix54
-rw-r--r--pkgs/development/interpreters/gauche/boot.nix43
-rw-r--r--pkgs/development/interpreters/gauche/default.nix23
-rw-r--r--pkgs/development/python-modules/aioguardian/default.nix62
-rw-r--r--pkgs/development/python-modules/aiowinreg/default.nix28
-rw-r--r--pkgs/development/python-modules/json-schema-for-humans/default.nix43
-rw-r--r--pkgs/development/python-modules/pyiqvia/default.nix53
-rw-r--r--pkgs/development/python-modules/sortedcollections/default.nix22
-rw-r--r--pkgs/development/python-modules/staticjinja/default.nix36
-rw-r--r--pkgs/development/python-modules/teslajsonpy/default.nix39
-rw-r--r--pkgs/games/vassal/default.nix15
-rw-r--r--pkgs/os-specific/linux/kernel/linux-lqx.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-zen.nix4
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix6
-rw-r--r--pkgs/tools/X11/icon-slicer/default.nix29
-rw-r--r--pkgs/tools/audio/google-music-scripts/default.nix4
-rw-r--r--pkgs/tools/networking/v2ray/default.nix21
-rw-r--r--pkgs/tools/security/monsoon/default.nix32
-rw-r--r--pkgs/top-level/all-packages.nix18
-rw-r--r--pkgs/top-level/python-packages.nix12
22 files changed, 543 insertions, 57 deletions
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 7045d6811d3..68b3871f29f 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -5,23 +5,45 @@
 , alsaLib
 , SDL2
 , libiconv
+, CoreAudio
+, CoreMIDI
+, CoreServices
+, Cocoa
 }:
 
 stdenv.mkDerivation rec {
   pname = "ft2-clone";
-  version = "1.41_fix";
+  version = "1.42";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    sha256 = "0c7jli79ckachl5n2rbhc4yzml8nc36pl9yzxcwgaz544q8pzmaa";
+    sha256 = "0w3c1rgm8qlqi50gavrcjz40xb0nkis4i9mvpwmvzmdv9nipxry9";
   };
 
+  # Adapt the linux-only CMakeLists to darwin (more reliable than make-macos.sh)
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    sed -i -e 's@__LINUX_ALSA__@__MACOSX_CORE__@' -e 's@asound@@' CMakeLists.txt
+  '';
+
   nativeBuildInputs = [ cmake ];
   buildInputs = [ SDL2 ]
     ++ stdenv.lib.optional stdenv.isLinux alsaLib
-    ++ stdenv.lib.optional stdenv.isDarwin libiconv;
+    ++ stdenv.lib.optionals stdenv.isDarwin [
+         libiconv
+         CoreAudio
+         CoreMIDI
+         CoreServices
+         Cocoa
+       ];
+
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin [
+    "-framework CoreAudio"
+    "-framework CoreMIDI"
+    "-framework CoreServices"
+    "-framework Cocoa"
+  ];
 
   passthru.tests = {
     ft2-clone-starts = nixosTests.ft2-clone;
diff --git a/pkgs/data/themes/openzone/default.nix b/pkgs/data/themes/openzone/default.nix
new file mode 100644
index 00000000000..cce23bd76ea
--- /dev/null
+++ b/pkgs/data/themes/openzone/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, icon-slicer, xcursorgen }:
+stdenv.mkDerivation rec {
+  pname = "openzone-cursors";
+  version = "1.2.9";
+
+  src = fetchFromGitHub {
+    owner = "ducakar";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "02c536mc17ccsrzgma366k3wlm02ivklvr30fafxl981zgghlii4";
+  };
+
+  nativeBuildInputs = [ icon-slicer xcursorgen ];
+
+  makeFlags = [ "DESTDIR=$(out)" ];
+
+  meta = with stdenv.lib; {
+    description = "Clean and sharp X11/Wayland cursor theme";
+    homepage = "https://www.gnome-look.org/p/999999/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ zaninime ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/compilers/vyper/default.nix b/pkgs/development/compilers/vyper/default.nix
new file mode 100644
index 00000000000..3a584ab2018
--- /dev/null
+++ b/pkgs/development/compilers/vyper/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, lib, buildPythonPackage, fetchPypi, writeText, asttokens
+, pycryptodome, pytest_xdist, pytestcov, recommonmark, semantic-version, sphinx
+, sphinx_rtd_theme, pytestrunner }:
+
+let
+  sample-contract = writeText "example.vy" ''
+    count: int128
+
+    @external
+    def __init__(foo: address):
+        self.count = 1
+  '';
+in
+
+buildPythonPackage rec {
+  pname = "vyper";
+  version = "0.2.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0d9fv630ayd1989qnklldh08vksa2lf0r06lm914qy5r5cvbl1v2";
+  };
+
+  nativeBuildInputs = [ pytestrunner ];
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'asttokens==' 'asttokens>=' \
+      --replace 'subprocess.check_output("git rev-parse HEAD".split())' "' '" \
+      --replace 'commithash.decode("utf-8").strip()' "'069936fa3fee8646ff362145593128d7ef07da38'"
+  '';
+
+  propagatedBuildInputs = [
+    asttokens
+    pycryptodome
+    semantic-version
+
+    # docs
+    recommonmark
+    sphinx
+    sphinx_rtd_theme
+  ];
+
+  checkPhase = ''
+    $out/bin/vyper "${sample-contract}"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Pythonic Smart Contract Language for the EVM";
+    homepage = "https://github.com/vyperlang/vyper";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ siraben ];
+  };
+}
diff --git a/pkgs/development/interpreters/gauche/boot.nix b/pkgs/development/interpreters/gauche/boot.nix
new file mode 100644
index 00000000000..7fbc66406e6
--- /dev/null
+++ b/pkgs/development/interpreters/gauche/boot.nix
@@ -0,0 +1,43 @@
+{ stdenv, lib, fetchurl, pkg-config, texinfo, libiconv, gdbm, openssl, zlib
+, mbedtls, cacert }:
+
+stdenv.mkDerivation rec {
+  pname = "gauche-bootstrap";
+  version = "0.9.9";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/gauche/Gauche-${version}.tgz";
+    sha256 = "1yzpszhw52vkpr65r5d4khf3489mnnvnw58dd2wsvvx7499k5aac";
+  };
+
+  nativeBuildInputs = [ pkg-config texinfo ];
+
+  buildInputs = [ libiconv gdbm openssl zlib mbedtls cacert ];
+
+  postPatch = ''
+    patchShebangs .
+  '';
+
+  configureFlags = [
+    "--with-iconv=${libiconv}"
+    "--with-dbm=gdbm"
+    "--with-zlib=${zlib}"
+    "--with-ca-bundle=${cacert}/etc/ssl/certs/ca-bundle.crt"
+    # TODO: Enable slib
+    #       Current slib in nixpkgs is specialized to Guile
+    # "--with-slib=${slibGuile}/lib/slib"
+  ];
+
+  enableParallelBuilding = true;
+
+  # TODO: Fix tests that fail in sandbox build
+  doCheck = false;
+
+  meta = with lib; {
+    description = "R7RS Scheme scripting engine";
+    homepage = "https://practical-scheme.net/gauche/";
+    maintainers = with maintainers; [ mnacamura ];
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/interpreters/gauche/default.nix b/pkgs/development/interpreters/gauche/default.nix
index 58653fae890..75a931c5562 100644
--- a/pkgs/development/interpreters/gauche/default.nix
+++ b/pkgs/development/interpreters/gauche/default.nix
@@ -1,20 +1,25 @@
-{ stdenv, fetchurl, pkgconfig, texinfo, libiconv, gdbm, openssl, zlib
-, mbedtls, cacert
-}:
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, gaucheBootstrap, pkg-config, texinfo
+,  libiconv, gdbm, openssl, zlib, mbedtls, cacert }:
 
 stdenv.mkDerivation rec {
   pname = "gauche";
-  version = "0.9.9";
+  version = "0.9.10";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/gauche/Gauche-${version}.tgz";
-    sha256 = "1yzpszhw52vkpr65r5d4khf3489mnnvnw58dd2wsvvx7499k5aac";
+  src = fetchFromGitHub {
+    owner = "shirok";
+    repo = pname;
+    rev = "release${lib.replaceChars [ "." ] [ "_" ] version}";
+    sha256 = "0ki1w7sa10ivmg51sqjskby0gsznb0d3738nz80x589033km5hmb";
   };
 
-  nativeBuildInputs = [ pkgconfig texinfo ];
+  nativeBuildInputs = [ gaucheBootstrap pkg-config texinfo autoreconfHook ];
 
   buildInputs = [ libiconv gdbm openssl zlib mbedtls cacert ];
 
+  autoreconfPhase = ''
+    ./DIST gen
+  '';
+
   postPatch = ''
     patchShebangs .
   '';
@@ -34,7 +39,7 @@ stdenv.mkDerivation rec {
   # TODO: Fix tests that fail in sandbox build
   doCheck = false;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "R7RS Scheme scripting engine";
     homepage = "https://practical-scheme.net/gauche/";
     maintainers = with maintainers; [ mnacamura ];
diff --git a/pkgs/development/python-modules/aioguardian/default.nix b/pkgs/development/python-modules/aioguardian/default.nix
new file mode 100644
index 00000000000..f6822ede08c
--- /dev/null
+++ b/pkgs/development/python-modules/aioguardian/default.nix
@@ -0,0 +1,62 @@
+{ lib
+, aiohttp
+, async-timeout
+, asyncio-dgram
+, asynctest
+, buildPythonPackage
+, cryptography
+, fetchFromGitHub
+, poetry
+, pytest-aiohttp
+, pytest-asyncio
+, pytestCheckHook
+, pythonAtLeast
+, voluptuous
+}:
+
+buildPythonPackage rec {
+  pname = "aioguardian";
+  version = "1.0.4";
+  disabled = pythonAtLeast "3.9";
+
+  src = fetchFromGitHub {
+    owner = "bachya";
+    repo = pname;
+    rev = version;
+    sha256 = "1cbxcsxh9c8r2zx3lsjdns26sm2qmlwnqgah2sfzbgp1lay23vvq";
+  };
+
+  format = "pyproject";
+
+  nativeBuildInputs = [ poetry ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+    asyncio-dgram
+    voluptuous
+  ];
+
+  checkInputs = [
+    asyncio-dgram
+    asynctest
+    pytest-aiohttp
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  # Ignore the examples as they are prefixed with test_
+  pytestFlagsArray = [ "--ignore examples/" ];
+  pythonImportsCheck = [ "aioguardian" ];
+
+  meta = with lib; {
+    description = " Python library to interact with Elexa Guardian devices";
+    longDescription = ''
+      aioguardian is a Pytho3, asyncio-focused library for interacting with the
+      Guardian line of water valves and sensors from Elexa.
+    '';
+    homepage = "https://github.com/bachya/aioguardian";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiowinreg/default.nix b/pkgs/development/python-modules/aiowinreg/default.nix
new file mode 100644
index 00000000000..c6375b21efe
--- /dev/null
+++ b/pkgs/development/python-modules/aiowinreg/default.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aiowinreg";
+  version = "0.0.3";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0gxhx9m45yyr1rmgs7f1jchkgxk2zipk9g3s5ix90d267in8hsn9";
+  };
+
+  # Project doesn't have tests
+  doCheck = false;
+  pythonImportsCheck = [ "aiowinreg" ];
+
+  meta = with lib; {
+    description = "Python module to parse the registry hive";
+    homepage = "https://github.com/skelsec/aiowinreg";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/json-schema-for-humans/default.nix b/pkgs/development/python-modules/json-schema-for-humans/default.nix
new file mode 100644
index 00000000000..bc32f57f50a
--- /dev/null
+++ b/pkgs/development/python-modules/json-schema-for-humans/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, fetchurl
+, pbr, click, dataclasses-json, htmlmin, jinja2, markdown2, pygments, pytz, pyyaml, requests, pytestCheckHook, beautifulsoup4, tox
+}:
+
+buildPythonPackage rec {
+  pname = "json-schema-for-humans";
+  version = "0.27.0";
+
+  src = fetchFromGitHub {
+    owner = "coveooss";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1r40i192z6aasil5vsgcgp5yvx392dhhqnfc2qxbxvpja6l3p6p2";
+  };
+
+  patches = [ (fetchurl {
+    url = "https://github.com/coveooss/json-schema-for-humans/commit/1fe2e2391da5a796204fd1889e4a11a53f83f7c9.patch";
+    sha256 = "0kpydpddlg0rib9snl8albhbrrs6d3ds292gpgpg7bdpqrwamdib";
+  }) (fetchurl {
+    url = "https://github.com/astro/json-schema-for-humans/commit/9bcc9b461102062dff214ca1ec2375b8aea53711.patch";
+    sha256 = "142a07v8bn1j20b7177yb60f4944kbx4cdqqq2nz6xkxmamw704d";
+  }) ];
+
+  nativeBuildInputs = [ pbr ];
+  propagatedBuildInputs = [
+    click dataclasses-json htmlmin jinja2 markdown2
+    pygments pytz pyyaml requests
+  ];
+
+  preBuild = ''
+    export PBR_VERSION=0.0.1
+  '';
+
+  checkInputs = [ pytestCheckHook beautifulsoup4 ];
+  pytestFlagsArray = [ "--ignore tests/generate_test.py" ];
+
+  meta = with stdenv.lib; {
+    description = "Quickly generate HTML documentation from a JSON schema";
+    homepage    = "https://github.com/coveooss/json-schema-for-humans";
+    license     = licenses.asl20;
+    maintainers = with maintainers; [ astro ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyiqvia/default.nix b/pkgs/development/python-modules/pyiqvia/default.nix
new file mode 100644
index 00000000000..762e39fe4b1
--- /dev/null
+++ b/pkgs/development/python-modules/pyiqvia/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, buildPythonPackage
+, aiohttp
+, aresponses
+, fetchFromGitHub
+, poetry
+, pytest-aiohttp
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pyiqvia";
+  version = "0.3.1";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "bachya";
+    repo = pname;
+    rev = version;
+    sha256 = "1yjsbq4p040a35n8g2l0wgnv83wkjirv4rj73s2mjzn3cxf395bz";
+  };
+
+  nativeBuildInputs = [ poetry ];
+
+  propagatedBuildInputs = [ aiohttp ];
+
+  checkInputs = [
+    aresponses
+    pytest-aiohttp
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  # Ignore the examples as they are prefixed with test_
+  pytestFlagsArray = [ "--ignore examples/" ];
+  pythonImportsCheck = [ "pyiqvia" ];
+
+  meta = with lib; {
+    description = "Python3 API for IQVIA data";
+    longDescription = ''
+      pyiqvia is an async-focused Python library for allergen, asthma, and
+      disease data from the IQVIA family of websites (such as https://pollen.com,
+      https://flustar.com and more).
+    '';
+    homepage = "https://github.com/bachya/pyiqvia";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/sortedcollections/default.nix b/pkgs/development/python-modules/sortedcollections/default.nix
index 3742c625205..b0b3df19bac 100644
--- a/pkgs/development/python-modules/sortedcollections/default.nix
+++ b/pkgs/development/python-modules/sortedcollections/default.nix
@@ -1,27 +1,31 @@
 { stdenv
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, pytestCheckHook
 , sortedcontainers
 }:
 
 buildPythonPackage rec {
   pname = "sortedcollections";
-  version = "1.2.1";
+  version = "1.2.3";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0sihzm5aqz7r3irh4jn6rzicb7lf81d27z7vl6kaslnhwcsizhsq";
+  src = fetchFromGitHub {
+    owner = "grantjenks";
+    repo = "python-sortedcollections";
+    rev = "v${version}";
+    sha256 = "06ifkbhkj5fpsafibw0fs7b778g7q0gd03crvbjk04k0f3wjxc5z";
   };
 
   propagatedBuildInputs = [ sortedcontainers ];
 
-  # No tests in PyPi tarball
-  doCheck = false;
+  checkInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "sortedcollections" ];
 
   meta = with stdenv.lib; {
     description = "Python Sorted Collections";
     homepage = "http://www.grantjenks.com/docs/sortedcollections/";
-    license = licenses.asl20;
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
   };
-
 }
diff --git a/pkgs/development/python-modules/staticjinja/default.nix b/pkgs/development/python-modules/staticjinja/default.nix
index cba55e5aca2..d49bae2eab9 100644
--- a/pkgs/development/python-modules/staticjinja/default.nix
+++ b/pkgs/development/python-modules/staticjinja/default.nix
@@ -1,24 +1,45 @@
 { lib
-, fetchPypi
+, fetchFromGitHub
 , buildPythonPackage
+, isPy27
 , docopt
 , easywatch
 , jinja2
+, pytestCheckHook
+, markdown
 }:
 
 buildPythonPackage rec {
   pname = "staticjinja";
   version = "0.4.0";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "597837899008409359680ee9cd04779639b9c0eb3380b6545025d26a702ba36c";
+  disabled = isPy27; # 0.4.0 drops python2 support
+
+  # For some reason, in pypi the tests get disabled when using
+  # PY_IGNORE_IMPORTMISMATCH, so we just fetch from GitHub
+  src = fetchFromGitHub {
+    owner = "staticjinja";
+    repo = pname;
+    rev = version;
+    sha256 = "0pysk8pzmcg1nfxz8m4i6bvww71w2zg6xp33zgg5vrf8yd2dfx9i";
   };
 
-  propagatedBuildInputs = [ jinja2 docopt easywatch ];
+  propagatedBuildInputs = [
+    jinja2
+    docopt
+    easywatch
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+    markdown
+  ];
 
-  # There are no tests on pypi
-  doCheck = false;
+  # Import paths differ by a "build/lib" subdirectory, but the files are
+  # the same, so we ignore import mismatches.
+  preCheck = ''
+    export PY_IGNORE_IMPORTMISMATCH=1
+  '';
 
   meta = with lib; {
     description = "A library and cli tool that makes it easy to build static sites using Jinja2";
@@ -27,4 +48,3 @@ buildPythonPackage rec {
     maintainers = with maintainers; [ fgaz ];
   };
 }
-
diff --git a/pkgs/development/python-modules/teslajsonpy/default.nix b/pkgs/development/python-modules/teslajsonpy/default.nix
new file mode 100644
index 00000000000..c4520b1c198
--- /dev/null
+++ b/pkgs/development/python-modules/teslajsonpy/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, aiohttp
+, backoff
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, wrapt
+}:
+
+buildPythonPackage rec {
+  pname = "teslajsonpy";
+  version = "0.10.4";
+
+  src = fetchFromGitHub {
+    owner = "zabuldon";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "18frynmy47i9c24mdy819y2dnjwmhnmkly5mbmhikpbmm6d0yjf1";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    backoff
+    wrapt
+  ];
+
+  checkInputs = [ pytestCheckHook ];
+
+  # Not all Home Assistant related check pass
+  disabledTests = [ "test_values_on_init" ];
+  pythonImportsCheck = [ "teslajsonpy" ];
+
+  meta = with lib; {
+    description = "Python library to work with Tesla API";
+    homepage = "https://github.com/zabuldon/teslajsonpy";
+    license = with licenses; [ asl20 ];
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/games/vassal/default.nix b/pkgs/games/vassal/default.nix
index 413d98d26ac..dd6c4e36e3c 100644
--- a/pkgs/games/vassal/default.nix
+++ b/pkgs/games/vassal/default.nix
@@ -1,11 +1,12 @@
-{ stdenv, fetchurl, jre, makeWrapper }:
+{ stdenv, fetchzip, jre, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "VASSAL-3.3.2";
+  pname = "VASSAL";
+  version = "3.4.12";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/vassalengine/${name}-linux.tar.bz2";
-    sha256 = "1abhlkl27gyfa1lghvv76xa6ks5hiwv2s9wb9ddadm0m07f87n1w";
+  src = fetchzip {
+    url = "https://github.com/vassalengine/vassal/releases/download/${version}/${pname}-${version}-linux.tar.bz2";
+    sha256 = "0xn403fxz6ay5lv8whyfdq611kvxj5q309bj317yw5cxbb08w1yb";
   };
 
   buildInputs = [ makeWrapper ];
@@ -13,7 +14,7 @@ stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out/bin $out/share/vassal $out/doc
 
-    cp CHANGES LICENSE README $out
+    cp CHANGES LICENSE README.md $out
     cp -R lib/* $out/share/vassal
     cp -R doc/* $out/doc
 
@@ -28,7 +29,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
       description = "A free, open-source boardgame engine";
       homepage = "http://www.vassalengine.org/";
-      license = licenses.lgpl21;
+      license = licenses.lgpl21Only;
       maintainers = with maintainers; [ tvestelind ];
       platforms = platforms.linux;
   };
diff --git a/pkgs/os-specific/linux/kernel/linux-lqx.nix b/pkgs/os-specific/linux/kernel/linux-lqx.nix
index 7c10ef55bb6..c8f5df788b7 100644
--- a/pkgs/os-specific/linux/kernel/linux-lqx.nix
+++ b/pkgs/os-specific/linux/kernel/linux-lqx.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, buildLinux, linux_zen, ... } @ args:
 
 let
-  version = "5.10.5";
+  version = "5.10.6";
 in
 
 buildLinux (args // {
@@ -13,7 +13,7 @@ buildLinux (args // {
     owner = "zen-kernel";
     repo = "zen-kernel";
     rev = "v${version}-lqx1";
-    sha256 = "1qnxmxahx1wpwhpjz6gdm5zdy1gd8ic3p7vqbz55vx4ygn865gyv";
+    sha256 = "0vvb00311yhf08ib3yvkjwk2j45f8r268ywg5299yjgbyl6g95kg";
   };
 
   extraMeta = {
diff --git a/pkgs/os-specific/linux/kernel/linux-zen.nix b/pkgs/os-specific/linux/kernel/linux-zen.nix
index dc28f37338b..118272d2876 100644
--- a/pkgs/os-specific/linux/kernel/linux-zen.nix
+++ b/pkgs/os-specific/linux/kernel/linux-zen.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, buildLinux, ... } @ args:
 
 let
-  version = "5.10.1";
+  version = "5.10.6";
 in
 
 buildLinux (args // {
@@ -13,7 +13,7 @@ buildLinux (args // {
     owner = "zen-kernel";
     repo = "zen-kernel";
     rev = "v${version}-zen1";
-    sha256 = "1c77x53ixyn64b4qq6br6ckicmjs316c8k08yfxibmhv72av1wcp";
+    sha256 = "0asn4ysnzv845g35ca9sdi89sc7clcc88xmx64pcxmh033civ5fw";
   };
 
   extraMeta = {
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index c961ffe538c..9b44d199d40 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -328,7 +328,7 @@
     "growatt_server" = ps: with ps; [ ]; # missing inputs: growattServer
     "gstreamer" = ps: with ps; [ ]; # missing inputs: gstreamer-player
     "gtfs" = ps: with ps; [ ]; # missing inputs: pygtfs
-    "guardian" = ps: with ps; [ ]; # missing inputs: aioguardian
+    "guardian" = ps: with ps; [ aioguardian ];
     "habitica" = ps: with ps; [ ]; # missing inputs: habitipy
     "hangouts" = ps: with ps; [ ]; # missing inputs: hangups
     "harman_kardon_avr" = ps: with ps; [ ]; # missing inputs: hkavr
@@ -398,7 +398,7 @@
     "iperf3" = ps: with ps; [ ]; # missing inputs: iperf3
     "ipma" = ps: with ps; [ ]; # missing inputs: pyipma
     "ipp" = ps: with ps; [ pyipp ];
-    "iqvia" = ps: with ps; [ numpy ]; # missing inputs: pyiqvia
+    "iqvia" = ps: with ps; [ numpy pyiqvia ];
     "irish_rail_transport" = ps: with ps; [ ]; # missing inputs: pyirishrail
     "islamic_prayer_times" = ps: with ps; [ ]; # missing inputs: prayer_times_calculator
     "iss" = ps: with ps; [ ]; # missing inputs: pyiss
@@ -828,7 +828,7 @@
     "temper" = ps: with ps; [ ]; # missing inputs: temperusb
     "template" = ps: with ps; [ ];
     "tensorflow" = ps: with ps; [ numpy pillow tensorflow-build_2 ]; # missing inputs: pycocotools tf-models-official
-    "tesla" = ps: with ps; [ ]; # missing inputs: teslajsonpy
+    "tesla" = ps: with ps; [ teslajsonpy ];
     "tfiac" = ps: with ps; [ ]; # missing inputs: pytfiac
     "thermoworks_smoke" = ps: with ps; [ stringcase ]; # missing inputs: thermoworks_smoke
     "thethingsnetwork" = ps: with ps; [ ];
diff --git a/pkgs/tools/X11/icon-slicer/default.nix b/pkgs/tools/X11/icon-slicer/default.nix
new file mode 100644
index 00000000000..18d6d468af8
--- /dev/null
+++ b/pkgs/tools/X11/icon-slicer/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkg-config, gdk-pixbuf, popt }:
+stdenv.mkDerivation rec {
+  pname = "icon-slicer";
+  version = "0.3";
+
+  src = fetchurl {
+    url = "https://freedesktop.org/software/icon-slicer/releases/icon-slicer-${version}.tar.gz";
+    sha256 = "0kdnc08k2rs8llfg7xgvnrsk60x59pv5fqz6kn2ifnn2s1nj3w05";
+  };
+
+  patches = [
+    # Fixes hotspot `y` coordinate. The `x` coordinate is used on the y-axis.
+    (fetchurl {
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/hotspotfix.patch?h=icon-slicer";
+      sha256 = "1l1dc1x5p4hys02arkmq3x6b1xdi510969d25g928zr4gf4an03h";
+    })
+  ];
+
+  nativeBuildInputs = [ popt pkg-config ];
+  buildInputs = [ gdk-pixbuf ];
+
+  meta = with stdenv.lib; {
+    description = "Utility for generating icon themes and libXcursor cursor themes";
+    homepage = "https://www.freedesktop.org/wiki/Software/icon-slicer/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ zaninime ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/audio/google-music-scripts/default.nix b/pkgs/tools/audio/google-music-scripts/default.nix
index 272cf902539..481a7ecb75b 100644
--- a/pkgs/tools/audio/google-music-scripts/default.nix
+++ b/pkgs/tools/audio/google-music-scripts/default.nix
@@ -26,11 +26,11 @@ buildPythonApplication rec {
     sha256 = "0apwgj86whrc077dfymvyb4qwj19bawyrx49g4kg364895v0rbbq";
   };
 
-  # pendulum pinning was to prevent PEP517 from trying to build from source
+  # there are already later releases present
   postPatch = ''
     substituteInPlace setup.py \
       --replace "tomlkit>=0.5,<0.6" "tomlkit" \
-      --replace "pendulum>=2.0,<=3.0,!=2.0.5,!=2.1.0" "pendulum"
+      --replace "attrs>=18.2,<19.4" "attrs"
   '';
 
   propagatedBuildInputs = [
diff --git a/pkgs/tools/networking/v2ray/default.nix b/pkgs/tools/networking/v2ray/default.nix
index 4d553670e35..02250469548 100644
--- a/pkgs/tools/networking/v2ray/default.nix
+++ b/pkgs/tools/networking/v2ray/default.nix
@@ -3,22 +3,22 @@
 }:
 
 let
-  version = "4.33.0";
+  version = "4.34.0";
 
   src = fetchFromGitHub {
     owner = "v2fly";
     repo = "v2ray-core";
     rev = "v${version}";
-    sha256 = "05w714i56nipp7m985g6zqq6ljz0w5ihxrgs93j10llfdd089iig";
+    sha256 = "0x6smffpvnrk76plnsk31qqznkyz06dh4sazncp2l3y9va8k2jb1";
   };
 
-  vendorSha256 = "0ix5kxldgbcb10jh0l64lrh8qzla4qvsxi6vanb73y7lbsix120w";
+  vendorSha256 = "077jnjsmhzr0idrk7pifr5s2r9yjf1v9bvj177n2k2ln8w3wgx3g";
 
   assets = {
     # MIT licensed
     "geoip.dat" = let
-      geoipRev = "202012030015";
-      geoipSha256 = "1qy9h0721y5kjcp0s859lhj253jfi3d3i658gpc4kmij2l5dxm5w";
+      geoipRev = "202101070033";
+      geoipSha256 = "11naj51pzchdrjmkp1dqzcby1i2fhbq0mncwm4d5q5mh3chyizsf";
     in fetchurl {
       url = "https://github.com/v2fly/geoip/releases/download/${geoipRev}/geoip.dat";
       sha256 = geoipSha256;
@@ -26,8 +26,8 @@ let
 
     # MIT licensed
     "geosite.dat" = let
-      geositeRev = "20201207123222";
-      geositeSha256 = "03xckk39rrda42cam2awbsh0gib6rhmz28asc8vx29lsp9g2bj6n";
+      geositeRev = "20210106164413";
+      geositeSha256 = "0chc7jb3yzgrrjkpd3s1rlim5qgf6j2kp952fvkhpwmnap86aip7";
     in fetchurl {
       url = "https://github.com/v2fly/domain-list-community/releases/download/${geositeRev}/dlc.dat";
       sha256 = geositeSha256;
@@ -48,11 +48,10 @@ let
     doCheck = false;
 
     buildPhase = ''
+      buildFlagsArray=(-v -p $NIX_BUILD_CORES -ldflags="-s -w")
       runHook preBuild
-
-      go build -o v2ray v2ray.com/core/main
-      go build -o v2ctl v2ray.com/core/infra/control/main
-
+      go build "''${buildFlagsArray[@]}" -o v2ray ./main
+      go build "''${buildFlagsArray[@]}" -o v2ctl -tags confonly ./infra/control/main
       runHook postBuild
     '';
 
diff --git a/pkgs/tools/security/monsoon/default.nix b/pkgs/tools/security/monsoon/default.nix
new file mode 100644
index 00000000000..c2a5aa1debf
--- /dev/null
+++ b/pkgs/tools/security/monsoon/default.nix
@@ -0,0 +1,32 @@
+{ buildGoModule
+, fetchFromGitHub
+, stdenv
+}:
+
+buildGoModule rec {
+  pname = "monsoon";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "RedTeamPentesting";
+    repo = "monsoon";
+    rev = "v${version}";
+    sha256 = "01c84s11m645mqaa2vdnbsj0kb842arqjhicgjv0ahb7qdw65zz4";
+  };
+
+  vendorSha256 = "1g84az07hv8w0jha2yl4f5jm0p9nkbawgw9l7cpmn8ckbfa54l7q";
+
+  # tests fails on darwin
+  doCheck = !stdenv.isDarwin;
+
+  meta = with stdenv.lib; {
+    description = "Fast HTTP enumerator";
+    longDescription = ''
+      A fast HTTP enumerator that allows you to execute a large number of HTTP
+      requests, filter the responses and display them in real-time.
+    '';
+    homepage = "https://github.com/RedTeamPentesting/monsoon";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 859b97ffd16..ebaf61a4de2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2374,6 +2374,8 @@ in
 
   inchi = callPackage ../development/libraries/inchi {};
 
+  icon-slicer = callPackage ../tools/X11/icon-slicer { };
+
   ifm = callPackage ../tools/graphics/ifm {};
 
   ink = callPackage ../tools/misc/ink { };
@@ -2504,6 +2506,8 @@ in
 
   mons = callPackage ../tools/misc/mons {};
 
+  monsoon = callPackage ../tools/security/monsoon {};
+
   mousetweaks = callPackage ../applications/accessibility/mousetweaks {
     inherit (pkgs.xorg) libX11 libXtst libXfixes;
   };
@@ -5128,6 +5132,8 @@ in
 
   jsduck = callPackage ../development/tools/jsduck { };
 
+  json-schema-for-humans = with python3Packages; toPythonApplication json-schema-for-humans;
+
   jtc = callPackage ../development/tools/jtc { };
 
   jumpapp = callPackage ../tools/X11/jumpapp {};
@@ -7727,6 +7733,8 @@ in
 
   stabber = callPackage ../misc/stabber { };
 
+  staticjinja = with python3.pkgs; toPythonApplication staticjinja;
+
   stress = callPackage ../tools/system/stress { };
 
   stress-ng = callPackage ../tools/system/stress-ng { };
@@ -10527,6 +10535,8 @@ in
     vala_0_48
     vala;
 
+  vyper = with python3Packages; toPythonApplication vyper;
+
   wcc = callPackage ../development/compilers/wcc { };
 
   wla-dx = callPackage ../development/compilers/wla-dx { };
@@ -20268,6 +20278,8 @@ in
 
   open-sans = callPackage ../data/fonts/open-sans { };
 
+  openzone-cursors = callPackage ../data/themes/openzone { };
+
   orbitron = callPackage ../data/fonts/orbitron { };
 
   orion = callPackage ../data/themes/orion {};
@@ -21608,12 +21620,16 @@ in
     autoreconfHook = buildPackages.autoreconfHook269;
   };
 
-  ft2-clone = callPackage ../applications/audio/ft2-clone { };
+  ft2-clone = callPackage ../applications/audio/ft2-clone {
+    inherit (darwin.apple_sdk.frameworks) CoreAudio CoreMIDI CoreServices Cocoa;
+  };
 
   fvwm = callPackage ../applications/window-managers/fvwm { };
 
   ganttproject-bin = callPackage ../applications/misc/ganttproject-bin { };
 
+  gaucheBootstrap = callPackage ../development/interpreters/gauche/boot.nix { };
+
   gauche = callPackage ../development/interpreters/gauche { };
 
   gcal = callPackage ../applications/misc/gcal { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 3f8a0fc7259..a3afe73c4db 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -212,6 +212,8 @@ in {
 
   aioftp = callPackage ../development/python-modules/aioftp { };
 
+  aioguardian = callPackage ../development/python-modules/aioguardian { };
+
   aioh2 = callPackage ../development/python-modules/aioh2 { };
 
   aioharmony = callPackage ../development/python-modules/aioharmony { };
@@ -272,6 +274,8 @@ in {
 
   aiounittest = callPackage ../development/python-modules/aiounittest { };
 
+  aiowinreg = callPackage ../development/python-modules/aiowinreg { };
+
   aiozeroconf = callPackage ../development/python-modules/aiozeroconf { };
 
   airly = callPackage ../development/python-modules/airly { };
@@ -3253,6 +3257,8 @@ in {
 
   json-merge-patch = callPackage ../development/python-modules/json-merge-patch { };
 
+  json-schema-for-humans = callPackage ../development/python-modules/json-schema-for-humans { };
+
   jsonnet = buildPythonPackage { inherit (pkgs.jsonnet) name src; };
 
   jsonpatch = callPackage ../development/python-modules/jsonpatch { };
@@ -5360,6 +5366,8 @@ in {
 
   pyipp = callPackage ../development/python-modules/pyipp { };
 
+  pyiqvia = callPackage ../development/python-modules/pyiqvia { };
+
   pyjet = callPackage ../development/python-modules/pyjet { };
 
   pyjks = callPackage ../development/python-modules/pyjks { };
@@ -7425,6 +7433,8 @@ in {
 
   termstyle = callPackage ../development/python-modules/termstyle { };
 
+  teslajsonpy = callPackage ../development/python-modules/teslajsonpy { };
+
   tess = callPackage ../development/python-modules/tess { };
 
   tesserocr = callPackage ../development/python-modules/tesserocr { };
@@ -7902,6 +7912,8 @@ in {
 
   vxi11 = callPackage ../development/python-modules/vxi11 { };
 
+  vyper = callPackage ../development/compilers/vyper { };
+
   w3lib = callPackage ../development/python-modules/w3lib { };
 
   wadllib = callPackage ../development/python-modules/wadllib { };