diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 7eaed583f78..e2bf9f5f49e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2471,6 +2471,12 @@ githubId = 1708810; name = "Daniel Vianna"; }; + dnr = { + email = "dnr@dnr.im"; + github = "dnr"; + githubId = 466723; + name = "David Reiss"; + }; dochang = { email = "dochang@gmail.com"; github = "dochang"; @@ -7631,6 +7637,16 @@ githubId = 610615; name = "Chih-Mao Chen"; }; + plabadens = { + name = "Pierre Labadens"; + email = "labadens.pierre+nixpkgs@gmail.com"; + github = "plabadens"; + githubId = 4303706; + keys = [{ + longkeyid = "rsa2048/0xF55814E4D6874375"; + fingerprint = "B00F E582 FD3F 0732 EA48 3937 F558 14E4 D687 4375"; + }]; + }; plchldr = { email = "mail@oddco.de"; github = "plchldr"; diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix index fe263dd6692..c852620d798 100644 --- a/pkgs/applications/misc/electron-cash/default.nix +++ b/pkgs/applications/misc/electron-cash/default.nix @@ -3,35 +3,45 @@ python3Packages.buildPythonApplication rec { pname = "electron-cash"; - version = "4.2.0"; + version = "4.2.4"; src = fetchFromGitHub { owner = "Electron-Cash"; repo = "Electron-Cash"; rev = version; - sha256 = "0ixsx4224jilc5zis6wbsbxqxv10mm5sksrzq15xp30zz0bzb6md"; + sha256 = "sha256-hiOS0cTaPqllb31p+6nU4GYvw/E1Hdn8yd3sppzGkqg="; }; propagatedBuildInputs = with python3Packages; [ - dnspython - ecdsa - jsonrpclib-pelix - matplotlib - pbkdf2 + # requirements pyaes - pycrypto - pyqt5 - pysocks - qrcode + ecdsa requests - tlslite-ng + qrcode + protobuf + jsonrpclib-pelix + pysocks qdarkstyle + python-dateutil stem + certifi + pathvalidate + dnspython - # plugins - keepkey + # requirements-binaries + pyqt5 + psutil + pycryptodomex + cryptography + + # requirements-hw + cython trezor + keepkey btchip + hidapi + pyscard + pysatochip ]; nativeBuildInputs = [ wrapQtAppsHook ]; @@ -83,7 +93,7 @@ python3Packages.buildPythonApplication rec { ''; homepage = "https://www.electroncash.org/"; platforms = platforms.linux; - maintainers = with maintainers; [ lassulus nyanloutre ]; + maintainers = with maintainers; [ lassulus nyanloutre oxalica ]; license = licenses.mit; }; } diff --git a/pkgs/applications/misc/free42/default.nix b/pkgs/applications/misc/free42/default.nix index 51867a6acee..4ae1e8aede8 100644 --- a/pkgs/applications/misc/free42/default.nix +++ b/pkgs/applications/misc/free42/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "free42"; - version = "3.0.1"; + version = "3.0.2"; src = fetchFromGitHub { owner = "thomasokken"; repo = pname; rev = "v${version}"; - sha256 = "sha256-Htk2NHgYVL622URx67BUtounAUopLTahaSqfAqd3+ZI="; + sha256 = "sha256-dU8c+tpt+4nCWQj3P2rl6CJNtWFcXaYb3ZESg8hAllQ="; }; nativeBuildInputs = [ copyDesktopItems pkg-config ]; @@ -84,7 +84,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/thomasokken/free42"; description = "A software clone of HP-42S Calculator"; license = licenses.gpl2Only; - maintainers = with maintainers; [ AndersonTorres ]; + maintainers = with maintainers; [ AndersonTorres plabadens ]; platforms = with platforms; unix; }; } diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix index 285e1db536d..fd5b2fff8b9 100644 --- a/pkgs/applications/networking/cluster/k3s/default.nix +++ b/pkgs/applications/networking/cluster/k3s/default.nix @@ -44,7 +44,7 @@ with lib; # Those pieces of software we entirely ignore upstream's handling of, and just # make sure they're in the path if desired. let - k3sVersion = "1.20.4+k3s1"; # k3s git tag + k3sVersion = "1.20.5+k3s1"; # k3s git tag traefikChartVersion = "1.81.0"; # taken from ./scripts/download at the above k3s tag k3sRootVersion = "0.8.1"; # taken from ./scripts/download at the above k3s tag k3sCNIVersion = "0.8.6-k3s1"; # taken from ./scripts/version.sh at the above k3s tag @@ -79,7 +79,7 @@ let owner = "rancher"; repo = "plugins"; rev = "v${version}"; - sha256 = "13kx9msn5y9rw8v1p717wx0wbjqln59g6y3qfb1760aiwknva35q"; + sha256 = "sha256-uAy17eRRAXPCcnh481KxFMvFQecnnBs24jn5YnVNfY4="; }; meta = { @@ -96,7 +96,7 @@ let url = "https://github.com/k3s-io/k3s"; rev = "v${k3sVersion}"; leaveDotGit = true; # ./scripts/version.sh depends on git - sha256 = "0rmn3nh8a94axv6lb2xjnn3gpq0scnvj69bvcs74azvw62fvq016"; + sha256 = "sha256-7RAZkSTh15BEZ3p6u2xE9vd5fpy4KBYrl2TjtpIiStM="; }; # Stage 1 of the k3s build: # Let's talk about how k3s is structured. @@ -243,16 +243,17 @@ stdenv.mkDerivation rec { iproute2 bridge-utils ethtool - util-linux + util-linux # kubelet wants 'nsenter' from util-linux: https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-705994388 ipset conntrack-tools ]; buildInputs = [ k3sBin - makeWrapper ] ++ k3sRuntimeDeps; + nativeBuildInputs = [ makeWrapper ]; + unpackPhase = "true"; # And, one final derivation (you thought the last one was it, right?) diff --git a/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix b/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix new file mode 100644 index 00000000000..7cbe5558533 --- /dev/null +++ b/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix @@ -0,0 +1,30 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubelogin"; + version = "1.23.0"; + + src = fetchFromGitHub { + owner = "int128"; + repo = pname; + rev = "v${version}"; + sha256 = "0n94nx17c6ln2nd6d9yr93vc251y1xphq1wj2vzs4j2l8dqfyjpn"; + }; + + subPackages = ["."]; + + vendorSha256 = "1dvrk6z6k66wawgb50n8hbgdd8fly399mlbgnvxi671vfi7lkz09"; + + # Rename the binary instead of symlinking to avoid conflict with the + # Azure version of kubelogin + postInstall = '' + mv $out/bin/kubelogin $out/bin/kubectl-oidc_login + ''; + + meta = with lib; { + description = "A Kubernetes credential plugin implementing OpenID Connect (OIDC) authentication"; + inherit (src.meta) homepage; + license = licenses.asl20; + maintainers = with maintainers; [ benley ]; + }; +} diff --git a/pkgs/development/libraries/flint/default.nix b/pkgs/development/libraries/flint/default.nix index 7bfa701db73..2c540d13008 100644 --- a/pkgs/development/libraries/flint/default.nix +++ b/pkgs/development/libraries/flint/default.nix @@ -1,6 +1,5 @@ { lib, stdenv , fetchurl -, fetchpatch , gmp , mpir , mpfr @@ -13,10 +12,10 @@ assert withBlas -> openblas != null && blas.implementation == "openblas" && lapa stdenv.mkDerivation rec { pname = "flint"; - version = "2.5.2"; # remove libflint.so.MAJOR patch when updating + version = "2.7.1"; src = fetchurl { url = "http://www.flintlib.org/flint-${version}.tar.gz"; - sha256 = "11syazv1a8rrnac3wj3hnyhhflpqcmq02q8pqk2m6g2k6h0gxwfb"; + sha256 = "07j8r96kdzp19cy3a5yvpjxf90mkd6103yr2n42qmpv7mgcjyvhq"; }; buildInputs = [ gmp @@ -41,14 +40,6 @@ stdenv.mkDerivation rec { # issues with ntl -- https://github.com/wbhart/flint2/issues/487 NIX_CXXSTDLIB_COMPILE = "-std=c++11"; - patches = [ - (fetchpatch { - # Always produce libflint.so.MAJOR; will be included in the next flint version - # See https://github.com/wbhart/flint2/pull/347 - url = "https://github.com/wbhart/flint2/commit/49fbcd8f736f847d3f9667f9f7d5567ef4550ecb.patch"; - sha256 = "09w09bpq85kjf752bd3y3i5lvy59b8xjiy7qmrcxzibx2a21pj73"; - }) - ]; doCheck = true; meta = { inherit version; diff --git a/pkgs/development/libraries/libnbd/default.nix b/pkgs/development/libraries/libnbd/default.nix index 6afced2d6d1..2cd634325b2 100644 --- a/pkgs/development/libraries/libnbd/default.nix +++ b/pkgs/development/libraries/libnbd/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "libnbd"; - version = "1.7.4"; + version = "1.7.5"; src = fetchurl { url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-development/${pname}-${version}.tar.gz"; - sha256 = "0d586c8mbk50hjslq32n70sdp2a7lbsjv9zhky4w6jy950rrdfqh"; + sha256 = "sha256-UxQx/wnKnCB3uC9xEfq1F0l3kHAJjp9GzbeRugKyFsk="; }; nativeBuildInputs = [ @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { - Shell (nbdsh) for command line and scripting. ''; license = with licenses; lgpl21Plus; - maintainers = with maintainers; [ AndersonTorres ]; + maintainers = with maintainers; [ AndersonTorres humancalico ]; platforms = with platforms; linux; }; } diff --git a/pkgs/development/ocaml-modules/irmin/ppx.nix b/pkgs/development/ocaml-modules/irmin/ppx.nix index 1d605763ab5..abb21fd7c53 100644 --- a/pkgs/development/ocaml-modules/irmin/ppx.nix +++ b/pkgs/development/ocaml-modules/irmin/ppx.nix @@ -2,11 +2,11 @@ buildDunePackage rec { pname = "ppx_irmin"; - version = "2.5.1"; + version = "2.5.2"; src = fetchurl { url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz"; - sha256 = "131pcgmpys6danprcbxzf4pdsl0ka74bpmmxz8db4507cvxhsz3n"; + sha256 = "ac8d75144cafdaf4b5e106b540a27338245510b7e33a8c412d393c9d50cae490"; }; minimumOCamlVersion = "4.08"; diff --git a/pkgs/development/python-modules/baseline/default.nix b/pkgs/development/python-modules/baseline/default.nix new file mode 100644 index 00000000000..0bee2295ed5 --- /dev/null +++ b/pkgs/development/python-modules/baseline/default.nix @@ -0,0 +1,27 @@ +{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, pytestCheckHook }: + +buildPythonPackage rec { + pname = "baseline"; + version = "1.2.1"; + disabled = !isPy3k; + + src = fetchFromGitHub { + owner = "dmgass"; + repo = "baseline"; + rev = "95a0b71806ed16310eb0f27bc48aa5e21f731423"; + sha256 = "0qjg46ipyfjflvjqzqr5p7iylwwqn2mhhrq952d01vi8wvfds10d"; + }; + + checkInputs = [ pytestCheckHook ]; + + meta = with lib; { + description = "Easy String Baseline"; + longDescription = '' + This tool streamlines creation and maintenance of tests which compare + string output against a baseline. + ''; + homepage = "https://github.com/dmgass/baseline"; + license = licenses.mit; + maintainers = with maintainers; [ dnr ]; + }; +} diff --git a/pkgs/development/python-modules/exif/default.nix b/pkgs/development/python-modules/exif/default.nix new file mode 100644 index 00000000000..2c549030e6d --- /dev/null +++ b/pkgs/development/python-modules/exif/default.nix @@ -0,0 +1,30 @@ +{ lib, buildPythonPackage, fetchFromGitLab, isPy3k, plum-py, pytestCheckHook, baseline }: + +buildPythonPackage rec { + pname = "exif"; + version = "1.2.0"; + disabled = !isPy3k; + + src = fetchFromGitLab { + owner = "TNThieding"; + repo = "exif"; + rev = "686857c677f489759db90b1ad61fa1cc1cac5f9a"; + sha256 = "0z2if23kmi0iyxviz32mlqs997i3dqpqfz6nznlwkhkkb6rkwwnh"; + }; + + propagatedBuildInputs = [ plum-py ]; + + postPatch = '' + substituteInPlace setup.py \ + --replace "plum-py==0.3.1" "plum-py>=0.3.1" + ''; + + checkInputs = [ pytestCheckHook baseline ]; + + meta = with lib; { + description = "Read and modify image EXIF metadata using Python"; + homepage = "https://gitlab.com/TNThieding/exif"; + license = licenses.mit; + maintainers = with maintainers; [ dnr ]; + }; +} diff --git a/pkgs/development/python-modules/pathvalidate/default.nix b/pkgs/development/python-modules/pathvalidate/default.nix new file mode 100644 index 00000000000..75dff606e9b --- /dev/null +++ b/pkgs/development/python-modules/pathvalidate/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchPypi, pythonOlder }: + +buildPythonPackage rec { + pname = "pathvalidate"; + version = "2.4.1"; + disabled = pythonOlder "3.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-PJvZTH7CPpz7IR/741audfl51sCZosdF7pSQ9STzJGg="; + }; + + # Requires `pytest-md-report`, causing infinite recursion. + doCheck = false; + + pythonImportsCheck = [ "pathvalidate" ]; + + meta = with lib; { + description = "A Python library to sanitize/validate a string such as filenames/file-paths/etc"; + homepage = "https://github.com/thombashi/pathvalidate"; + license = licenses.mit; + maintainers = with maintainers; [ oxalica ]; + }; +} diff --git a/pkgs/development/python-modules/plum-py/default.nix b/pkgs/development/python-modules/plum-py/default.nix new file mode 100644 index 00000000000..50a33266c8f --- /dev/null +++ b/pkgs/development/python-modules/plum-py/default.nix @@ -0,0 +1,29 @@ +{ lib, buildPythonPackage, fetchFromGitLab, isPy3k, pytest, baseline }: + +buildPythonPackage rec { + pname = "plum-py"; + version = "0.4.0"; + disabled = !isPy3k; + + src = fetchFromGitLab { + owner = "dangass"; + repo = "plum"; + rev = "6a9ff863c0e9fa21f7b2230d25402155a5522e4b"; + sha256 = "1iv62yb704c61b0dvsmyp3j6xpbmay532g9ny4pw4zbg3l69vd5j"; + }; + + postPatch = '' + substituteInPlace src/plum/int/flag/_flag.py \ + --replace 'if sys.version_info < (3, 7):' 'if True:' + ''; + + checkInputs = [ pytest baseline ]; + checkPhase = "pytest tests"; + + meta = with lib; { + description = "Classes and utilities for packing/unpacking bytes"; + homepage = "https://plum-py.readthedocs.io/en/latest/index.html"; + license = licenses.mit; + maintainers = with maintainers; [ dnr ]; + }; +} diff --git a/pkgs/development/python-modules/pysatochip/default.nix b/pkgs/development/python-modules/pysatochip/default.nix new file mode 100644 index 00000000000..f24571a78cf --- /dev/null +++ b/pkgs/development/python-modules/pysatochip/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchPypi, pyscard, ecdsa, pyaes +, pythonOlder }: + +buildPythonPackage rec { + pname = "pysatochip"; + version = "0.11.4"; + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-Jj/zZIS9aXmZ2xdi29Eun7iRIrIk9oBlrtN9+6opIMo="; + }; + + propagatedBuildInputs = [ pyscard ecdsa pyaes ]; + + pythonImportsCheck = [ "pysatochip" ]; + + meta = with lib; { + description = "Simple python library to communicate with a Satochip hardware wallet"; + homepage = "https://github.com/Toporin/pysatochip"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ oxalica ]; + }; +} diff --git a/pkgs/development/python-modules/wakeonlan/default.nix b/pkgs/development/python-modules/wakeonlan/default.nix index 340a407ab3f..36689eb13a1 100644 --- a/pkgs/development/python-modules/wakeonlan/default.nix +++ b/pkgs/development/python-modules/wakeonlan/default.nix @@ -44,7 +44,7 @@ buildPythonPackage rec { meta = with lib; { description = "A small python module for wake on lan"; homepage = "https://github.com/remcohaszing/pywakeonlan"; - license = licenses.wtfpl; + license = licenses.mit; maintainers = with maintainers; [ peterhoeg ]; }; } diff --git a/pkgs/development/web/nodejs/v10.nix b/pkgs/development/web/nodejs/v10.nix index abb10aa4447..5c107b20f4a 100644 --- a/pkgs/development/web/nodejs/v10.nix +++ b/pkgs/development/web/nodejs/v10.nix @@ -8,7 +8,7 @@ let in buildNodejs { inherit enableNpm; - version = "10.24.0"; - sha256 = "1k1srdis23782hnd1ymgczs78x9gqhv77v0am7yb54gqcspp70hm"; + version = "10.24.1"; + sha256 = "032801kg24j04xmf09m0vxzlcz86sv21s24lv9l4cfv08k1c4byp"; patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff; } diff --git a/pkgs/development/web/nodejs/v12.nix b/pkgs/development/web/nodejs/v12.nix index fc9a170dd90..54f4352c53e 100644 --- a/pkgs/development/web/nodejs/v12.nix +++ b/pkgs/development/web/nodejs/v12.nix @@ -8,7 +8,7 @@ let in buildNodejs { inherit enableNpm; - version = "12.22.0"; - sha256 = "08xsc1pw6352v5lz92ppfhrcmqnbm6m5wmjfs9frz26lp875yp6z"; + version = "12.22.1"; + sha256 = "12drpkffn79xx84pffg9y2cn9fiwycgaa2rjj3ix6visfzvhsrfx"; patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff; } diff --git a/pkgs/development/web/nodejs/v14.nix b/pkgs/development/web/nodejs/v14.nix index 9a40bf8654d..0d48003268c 100644 --- a/pkgs/development/web/nodejs/v14.nix +++ b/pkgs/development/web/nodejs/v14.nix @@ -8,7 +8,7 @@ let in buildNodejs { inherit enableNpm; - version = "14.16.0"; - sha256 = "19nz2mhmn6ikahxqyna1dn25pb5v3z9vsz9zb2flb6zp2yk4hxjf"; + version = "14.16.1"; + sha256 = "1hxsk83g2plv6vv3ir1ngca0rwqdy3lq70r504d2qv3msszdnjp4"; patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff; } diff --git a/pkgs/tools/backup/gphotos-sync/default.nix b/pkgs/tools/backup/gphotos-sync/default.nix new file mode 100644 index 00000000000..e7cd29e1a81 --- /dev/null +++ b/pkgs/tools/backup/gphotos-sync/default.nix @@ -0,0 +1,44 @@ +{ lib, fetchFromGitHub, python3Packages }: + +python3Packages.buildPythonApplication rec { + pname = "gphotos-sync"; + version = "2.14.2"; + + src = fetchFromGitHub { + owner = "gilesknap"; + repo = "gphotos-sync"; + rev = version; + sha256 = "0cfmbrdy6w18hb623rjn0a4hnn3n63jw2jlmgn4a2k1sjqhpx3bf"; + }; + + propagatedBuildInputs = with python3Packages; [ + appdirs + attrs + exif + psutil + pyyaml + requests_oauthlib + ]; + checkInputs = with python3Packages; [ + pytestCheckHook + mock + ]; + checkPhase = '' + export HOME=$(mktemp -d) + + # patch to skip all tests that do network access + cat >>test/test_setup.py <