diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md index c0f1342a94f..e13101ed309 100644 --- a/doc/languages-frameworks/python.section.md +++ b/doc/languages-frameworks/python.section.md @@ -639,7 +639,7 @@ are disabled. #### Using pythonImportsCheck -Although unit tests are highly prefered to valid correctness of a package. Not +Although unit tests are highly prefered to validate correctness of a package, not all packages have test suites that can be ran easily, and some have none at all. To help ensure the package still works, `pythonImportsCheck` can attempt to import the listed modules. @@ -1569,13 +1569,11 @@ In a `setup.py` or `setup.cfg` it is common to declare dependencies: ### Contributing guidelines -Following rules are desired to be respected: +The following rules are desired to be respected: * Python libraries are called from `python-packages.nix` and packaged with `buildPythonPackage`. The expression of a library should be in `pkgs/development/python-modules//default.nix`. -* Libraries in `pkgs/top-level/python-packages.nix` are sorted - alphanumerically to avoid merge conflicts and ease locating attributes. * Python applications live outside of `python-packages.nix` and are packaged with `buildPythonApplication`. * Make sure libraries build for all Python interpreters. @@ -1585,8 +1583,11 @@ Following rules are desired to be respected: case, when you disable tests, leave a comment explaining why. * Commit names of Python libraries should reflect that they are Python libraries, so write for example `pythonPackages.numpy: 1.11 -> 1.12`. -* Attribute names in `python-packages.nix` should be normalized according to - [PEP 0503](https://www.python.org/dev/peps/pep-0503/#normalized-names). This - means that characters should be converted to lowercase and `.` and `_` should - be replaced by a single `-` (foo-bar-baz instead of Foo__Bar.baz ) -* Attribute names in `python-packages.nix` should be sorted alphanumerically. +* Attribute names in `python-packages.nix` as well as `pname`s should match the + library's name on PyPI, but be normalized according to [PEP + 0503](https://www.python.org/dev/peps/pep-0503/#normalized-names). This means + that characters should be converted to lowercase and `.` and `_` should be + replaced by a single `-` (foo-bar-baz instead of Foo__Bar.baz). + If necessary, `pname` has to be given a different value within `fetchPypi`. +* Attribute names in `python-packages.nix` should be sorted alphanumerically to + avoid merge conflicts and ease locating attributes. diff --git a/nixos/doc/manual/Makefile b/nixos/doc/manual/Makefile index b86a7600575..b2b6481b20c 100644 --- a/nixos/doc/manual/Makefile +++ b/nixos/doc/manual/Makefile @@ -1,5 +1,5 @@ .PHONY: all -all: manual-combined.xml format +all: manual-combined.xml .PHONY: debug debug: generated manual-combined.xml diff --git a/nixos/doc/manual/development/writing-documentation.xml b/nixos/doc/manual/development/writing-documentation.xml index 32e00544cef..89fab666561 100644 --- a/nixos/doc/manual/development/writing-documentation.xml +++ b/nixos/doc/manual/development/writing-documentation.xml @@ -25,7 +25,8 @@ $ cd /path/to/nixpkgs/nixos/doc/manual -$ make +$ nix-shell +nix-shell$ make diff --git a/nixos/modules/services/networking/wireguard.nix b/nixos/modules/services/networking/wireguard.nix index e07020349cf..9f76f7f7cd0 100644 --- a/nixos/modules/services/networking/wireguard.nix +++ b/nixos/modules/services/networking/wireguard.nix @@ -238,7 +238,7 @@ let wantedBy = [ "wireguard-${name}.service" ]; requiredBy = [ "wireguard-${name}.service" ]; before = [ "wireguard-${name}.service" ]; - path = with pkgs; [ wireguard ]; + path = with pkgs; [ wireguard-tools ]; serviceConfig = { Type = "oneshot"; diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix index 8e6113a716d..7f412d528db 100644 --- a/pkgs/applications/audio/openmpt123/default.nix +++ b/pkgs/applications/audio/openmpt123/default.nix @@ -2,14 +2,14 @@ , usePulseAudio ? config.pulseaudio or false, libpulseaudio }: let - version = "0.5.5"; + version = "0.5.6"; in stdenv.mkDerivation { pname = "openmpt123"; inherit version; src = fetchurl { url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz"; - sha256 = "sha256-8eAUg+vxpoDZ7AMMmvIPXypawPHgZCwYvVWTz6qc62s="; + sha256 = "sha256-F96ngrM0wUb0rNlIx8Mf/dKvyJnrNH6+Ab4WBup59Lg="; }; enableParallelBuilding = true; diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix index b55266e5f37..78f9fc082e3 100644 --- a/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix +++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-notify-send/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A WeeChat script that sends highlight and message notifications through notify-send"; - homepage = "https://github.com/s3rvac/weechat-notify-srnd"; + homepage = "https://github.com/s3rvac/weechat-notify-send"; license = licenses.mit; maintainers = with maintainers; [ tobim ]; }; diff --git a/pkgs/applications/networking/pyload/beautifulsoup.nix b/pkgs/applications/networking/pyload/beautifulsoup.nix deleted file mode 100644 index 8eb0c2298fd..00000000000 --- a/pkgs/applications/networking/pyload/beautifulsoup.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ pythonPackages, isPy3k, pkgs }: - -pythonPackages.buildPythonPackage { - name = "beautifulsoup-3.2.1"; - disabled = isPy3k; - - src = pkgs.fetchurl { - url = "http://www.crummy.com/software/BeautifulSoup/download/3.x/BeautifulSoup-3.2.1.tar.gz"; - sha256 = "1nshbcpdn0jpcj51x0spzjp519pkmqz0n0748j7dgpz70zlqbfpm"; - }; - - # error: invalid command 'test' - doCheck = false; - - meta = { - homepage = "http://www.crummy.com/software/BeautifulSoup/"; - license = "bsd"; - description = "Undemanding HTML/XML parser"; - }; -} diff --git a/pkgs/applications/networking/pyload/default.nix b/pkgs/applications/networking/pyload/default.nix deleted file mode 100644 index f70359cf7ac..00000000000 --- a/pkgs/applications/networking/pyload/default.nix +++ /dev/null @@ -1,60 +0,0 @@ -{ lib, fetchFromGitHub, fetchpatch, pythonPackages, gocr, unrar, rhino, spidermonkey_38 }: - -let - beautifulsoup = pythonPackages.callPackage ./beautifulsoup.nix { - inherit pythonPackages; - }; - -in pythonPackages.buildPythonApplication rec { - version = "0.4.9-next"; - name = "pyLoad-" + version; - - src = fetchFromGitHub { - owner = "pyload"; - repo = "pyload"; - rev = "721ea9f089217b9cb0f2799c051116421faac081"; - sha256 = "1ad4r9slx1wgvd2fs4plfbpzi4i2l2bk0lybzsb2ncgh59m87h54"; - }; - - patches = - let - # gets merged in next release version of pyload - configParserPatch = fetchpatch { - url = "https://patch-diff.githubusercontent.com/raw/pyload/pyload/pull/2625.diff"; - sha256 = "1bisgx78kcr5c0x0i3h0ch5mykns5wx5wx7gvjj0pc71lfzlxzb9"; - }; - setupPyPatch = fetchpatch { - url = "https://patch-diff.githubusercontent.com/raw/pyload/pyload/pull/2638.diff"; - sha256 = "006g4qbl582262ariflbyfrszcx8ck2ac1cpry1f82f76p4cgf6z"; - }; - in [ configParserPatch setupPyPatch ]; - - buildInputs = [ - unrar rhino spidermonkey_38 gocr pythonPackages.paver - ]; - - propagatedBuildInputs = with pythonPackages; [ - pycurl jinja2 beaker thrift simplejson pycrypto feedparser tkinter - beautifulsoup send2trash - ]; - - #remove this once the PR patches above are merged. Needed because githubs diff endpoint - #does not support diff -N - prePatch = '' - touch module/config/__init__.py - ''; - - preBuild = '' - ${pythonPackages.paver}/bin/paver generate_setup - ''; - - doCheck = false; - - meta = with lib; { - description = "Free and open source downloader for 1-click-hosting sites"; - homepage = "https://github.com/pyload/pyload"; - license = licenses.gpl3; - maintainers = [ maintainers.mahe ]; - platforms = platforms.all; - }; -} diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix index f926391ac48..263a555ab4c 100644 --- a/pkgs/applications/office/gnumeric/default.nix +++ b/pkgs/applications/office/gnumeric/default.nix @@ -7,11 +7,11 @@ let inherit (python3Packages) python pygobject3; in stdenv.mkDerivation rec { pname = "gnumeric"; - version = "1.12.48"; + version = "1.12.49"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "14556b0vyxdvdwjlin0rv7jk0vq4nplbmvp9j89bhkfk84xf7k2p"; + sha256 = "kcBy7JXDLgCxVv/oAVyTsyuO3zaPkEFDYZPPoy6E7Vc="; }; configureFlags = [ "--disable-component" ]; diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix index cc36dc9ff52..64c98768fdd 100644 --- a/pkgs/applications/version-management/gitea/default.nix +++ b/pkgs/applications/version-management/gitea/default.nix @@ -1,5 +1,12 @@ -{ lib, buildGoPackage, fetchurl, makeWrapper -, git, bash, gzip, openssh, pam +{ lib +, buildGoPackage +, fetchurl +, makeWrapper +, git +, bash +, gzip +, openssh +, pam , sqliteSupport ? true , pamSupport ? true , nixosTests @@ -9,11 +16,12 @@ with lib; buildGoPackage rec { pname = "gitea"; - version = "1.13.5"; + version = "1.13.6"; + # not fetching directly from the git repo, because that lacks several vendor files for the web UI src = fetchurl { url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz"; - sha256 = "08c5gp4qp65mnq4ggzfmyc7n3zcp0js86fz4nj5p249zs9vn1ypd"; + sha256 = "1f0fsqcmmqygv0r796ddr2fjhh333i9nr0cqk9x2b2kbs1z264vf"; }; unpackPhase = '' @@ -36,16 +44,18 @@ buildGoPackage rec { buildInputs = optional pamSupport pam; - preBuild = let - tags = optional pamSupport "pam" + preBuild = + let + tags = optional pamSupport "pam" ++ optional sqliteSupport "sqlite sqlite_unlock_notify"; - tagsString = concatStringsSep " " tags; - in '' - export buildFlagsArray=( - -tags="${tagsString}" - -ldflags='-X "main.Version=${version}" -X "main.Tags=${tagsString}"' - ) - ''; + tagsString = concatStringsSep " " tags; + in + '' + export buildFlagsArray=( + -tags="${tagsString}" + -ldflags='-X "main.Version=${version}" -X "main.Tags=${tagsString}"' + ) + ''; outputs = [ "out" "data" ]; diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix index 004d2732f3a..a8e73339ee1 100644 --- a/pkgs/development/interpreters/joker/default.nix +++ b/pkgs/development/interpreters/joker/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "joker"; - version = "0.15.7"; + version = "0.16.0"; src = fetchFromGitHub { rev = "v${version}"; owner = "candid82"; repo = "joker"; - sha256 = "01mlizkflajad4759yl60ymibymrvanhc22jaffj50k9b77v97kq"; + sha256 = "sha256-ckbKxWzcISo9yOXuwgOiSfR2hs+5od0Ru0Ku2I52Gu8="; }; - vendorSha256 = "031ban30kx84r54fj9aq96pwkz9nqh4p9yzs4l8i1wqmy52rldvl"; + vendorSha256 = "sha256-AYoespfzFLP/jIIxbw5K653wc7sSfLY8K7di8GZ64wA="; doCheck = false; diff --git a/pkgs/development/interpreters/spidermonkey/38.nix b/pkgs/development/interpreters/spidermonkey/38.nix deleted file mode 100644 index 482561a901e..00000000000 --- a/pkgs/development/interpreters/spidermonkey/38.nix +++ /dev/null @@ -1,72 +0,0 @@ -{ lib, stdenv, fetchurl, pkg-config, gnused_422, perl, python2, zip, libffi, readline, icu, zlib, buildPackages -, libobjc }: - -with lib; - -stdenv.mkDerivation rec { - version = "38.8.0"; - pname = "spidermonkey"; - - src = fetchurl { - url = "mirror://mozilla/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.bz2"; - sha256 = "10lrync6cxnjlnadc0j3vg8r2dq9b3wwanw8qj1h6ncxwb7asxcl"; - }; - - buildInputs = [ libffi readline icu zlib ] - ++ lib.optional stdenv.isDarwin libobjc; - nativeBuildInputs = [ pkg-config perl python2 zip gnused_422 ]; - - postUnpack = "sourceRoot=\${sourceRoot}/js/src"; - - preConfigure = '' - export CXXFLAGS="-fpermissive" - export LIBXUL_DIST=$out - export PYTHON="${buildPackages.python2.interpreter}" - ''; - - configureFlags = [ - "--enable-threadsafe" - "--with-system-ffi" - "--enable-posix-nspr-emulation" - "--with-system-zlib" - "--with-system-icu" - "--enable-readline" - - # enabling these because they're wanted by 0ad. They may or may - # not be good defaults for other uses. - "--enable-gcgenerational" - "--enable-shared-js" - ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ - # Spidermonkey seems to use different host/build terminology for cross - # compilation here. - "--host=${stdenv.buildPlatform.config}" - "--target=${stdenv.hostPlatform.config}" - ]; - - configurePlatforms = []; - - depsBuildBuild = [ buildPackages.stdenv.cc ]; - - # This addresses some build system bug. It's quite likely to be safe - # to re-enable parallel builds if the source revision changes. - enableParallelBuilding = true; - - postFixup = '' - # The headers are symlinks to a directory that doesn't get put - # into $out, so they end up broken. Fix that by just resolving the - # symlinks. - for i in $(find $out -type l); do - cp --remove-destination "$(readlink "$i")" "$i"; - done - ''; - - meta = with lib; { - description = "Mozilla's JavaScript engine written in C/C++"; - homepage = "https://developer.mozilla.org/en/SpiderMonkey"; - # TODO: MPL/GPL/LGPL tri-license. - - maintainers = [ maintainers.abbradar ]; - platforms = platforms.unix; - knownVulnerabilities = [ "SpiderMonkey 38 is outdated and contains known security vulnerabilities." ]; # as per https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Releases/38 - }; -} diff --git a/pkgs/development/libraries/udunits/default.nix b/pkgs/development/libraries/udunits/default.nix index deed5b64d2c..b8ea203ef17 100644 --- a/pkgs/development/libraries/udunits/default.nix +++ b/pkgs/development/libraries/udunits/default.nix @@ -1,26 +1,49 @@ -{ lib, stdenv, fetchFromGitHub, autoreconfHook, - texinfo, bison, flex, expat, file +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, bison +, expat +, file +, flex +, texinfo }: stdenv.mkDerivation rec { pname = "udunits"; - version = "2.2.27.6"; + version = "unstable-2021-03-17"; src = fetchFromGitHub { owner = "Unidata"; repo = "UDUNITS-2"; - rev = "v${version}"; - sha256 = "0621pac24c842dyipzaa59rh6pza9phdqi3snd4cq4pib0wjw6gm"; + rev = "c83da987387db1174cd2266b73dd5dd556f4476b"; + hash = "sha256-+HW21+r65OroCxMK2/B5fe7zHs4hD4xyoJK2bhdJGyQ="; }; - nativeBuildInputs = [ autoreconfHook texinfo bison flex file ]; - buildInputs = [ expat ]; + nativeBuildInputs = [ + autoreconfHook + texinfo + bison + flex + file + ]; + buildInputs = [ + expat + ]; meta = with lib; { homepage = "https://www.unidata.ucar.edu/software/udunits/"; description = "A C-based package for the programatic handling of units of physical quantities"; - license = licenses.bsdOriginal; + longDescription = '' + The UDUNITS package supports units of physical quantities. Its C library + provides for arithmetic manipulation of units and for conversion of + numeric values between compatible units. The package contains an extensive + unit database, which is in XML format and user-extendable. The package + also contains a command-line utility for investigating units and + converting values. + ''; + license = licenses.asl20; + maintainers = with maintainers; [ AndersonTorres pSub ]; platforms = platforms.linux; - maintainers = with maintainers; [ pSub ]; }; } diff --git a/pkgs/development/python-modules/android-backup/default.nix b/pkgs/development/python-modules/android-backup/default.nix new file mode 100644 index 00000000000..319c9514183 --- /dev/null +++ b/pkgs/development/python-modules/android-backup/default.nix @@ -0,0 +1,37 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pycrypto +, pythonOlder +, enum34 +, python +}: + +buildPythonPackage rec { + pname = "android-backup"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "bluec0re"; + repo = "android-backup-tools"; + rev = "v${version}"; + sha256 = "0c436hv64ddqrjs77pa7z6spiv49pjflbmgg31p38haj5mzlrqvw"; + }; + + propagatedBuildInputs = [ + pycrypto + ] ++ lib.optional (pythonOlder "3.4") enum34; + + checkPhase = '' + ${python.interpreter} -m android_backup.tests + ''; + + pythonImportsCheck = [ "android_backup" ]; + + meta = with lib; { + description = "Unpack and repack android backups"; + homepage = https://github.com/bluec0re/android-backup-tools; + license = licenses.asl20; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/azure-eventgrid/default.nix b/pkgs/development/python-modules/azure-eventgrid/default.nix index 9d413cf7a69..3d8e4df5654 100644 --- a/pkgs/development/python-modules/azure-eventgrid/default.nix +++ b/pkgs/development/python-modules/azure-eventgrid/default.nix @@ -9,12 +9,12 @@ buildPythonPackage rec { pname = "azure-eventgrid"; - version = "4.0.0"; + version = "4.1.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "a8b1d4aa9386efa923bad1a07da9f9098facd3b654d036a900a54de77d06eabe"; + sha256 = "c4f29b2d9b717dad7919048f0a458dd84f83637c3d5c8f5a7e64634b22086719"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/croniter/default.nix b/pkgs/development/python-modules/croniter/default.nix index 30807035579..577fef8d79d 100644 --- a/pkgs/development/python-modules/croniter/default.nix +++ b/pkgs/development/python-modules/croniter/default.nix @@ -2,7 +2,7 @@ , buildPythonPackage , fetchPypi , python-dateutil -, pytest +, pytestCheckHook , pytz , natsort , tzlocal @@ -10,11 +10,11 @@ buildPythonPackage rec { pname = "croniter"; - version = "0.3.37"; + version = "1.0.9"; src = fetchPypi { inherit pname version; - sha256 = "12ced475dfc107bf7c6c1440af031f34be14cd97bbbfaf0f62221a9c11e86404"; + sha256 = "708532f70584207e23ef2989ca40f367e6238bfe050133a1aff43e1e0e6f6092"; }; propagatedBuildInputs = [ @@ -23,15 +23,11 @@ buildPythonPackage rec { ]; checkInputs = [ - pytest + pytestCheckHook pytz tzlocal ]; - checkPhase = '' - pytest src/croniter - ''; - meta = with lib; { description = "croniter provides iteration for datetime object with cron like format"; homepage = "https://github.com/kiorky/croniter"; diff --git a/pkgs/development/python-modules/databricks-connect/default.nix b/pkgs/development/python-modules/databricks-connect/default.nix index f4a94955681..17116eb130f 100644 --- a/pkgs/development/python-modules/databricks-connect/default.nix +++ b/pkgs/development/python-modules/databricks-connect/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "databricks-connect"; - version = "7.3.10"; + version = "8.1.0"; src = fetchPypi { inherit pname version; - sha256 = "8aa75740900f9b4bcc6d3f2bd815408dba30dc9a512bcc950b93e7353ec45133"; + sha256 = "3726c648cc60796294356e2617acc534d2503824ccfbdff26abbea595eb83135"; }; sourceRoot = "."; diff --git a/pkgs/development/python-modules/mautrix/default.nix b/pkgs/development/python-modules/mautrix/default.nix index 6632b88b723..6a6e3536733 100644 --- a/pkgs/development/python-modules/mautrix/default.nix +++ b/pkgs/development/python-modules/mautrix/default.nix @@ -1,14 +1,14 @@ { lib, buildPythonPackage, fetchPypi, aiohttp, pythonOlder -, sqlalchemy, ruamel_yaml, CommonMark, lxml, fetchpatch +, sqlalchemy, ruamel_yaml, CommonMark, lxml }: buildPythonPackage rec { pname = "mautrix"; - version = "0.8.16"; + version = "0.8.17"; src = fetchPypi { inherit pname version; - sha256 = "ccaa1691affa5f257e13d61f7c46088ff0affdd782331b01bfdcbd0b3eb5e10e"; + sha256 = "9a15a8e39f9d0b36c91dfe0f5dd1efc8752cc1d317057840a3dbffd6ee90e068"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/python-miio/default.nix b/pkgs/development/python-modules/python-miio/default.nix index 78c89408ac2..54ee1954579 100644 --- a/pkgs/development/python-modules/python-miio/default.nix +++ b/pkgs/development/python-modules/python-miio/default.nix @@ -1,47 +1,71 @@ { lib , buildPythonPackage +, pythonOlder , fetchPypi -, appdirs +, poetry , click -, construct -, croniter , cryptography -, importlib-metadata -, pytest -, pytest-mock +, construct , zeroconf , attrs , pytz +, appdirs , tqdm , netifaces +, android-backup +, importlib-metadata +, croniter +, defusedxml +, pytestCheckHook +, pytest-mock +, pyyaml }: buildPythonPackage rec { pname = "python-miio"; - version = "0.5.4"; + version = "0.5.5.1"; + + disabled = pythonOlder "3.6"; + + format = "pyproject"; src = fetchPypi { inherit pname version; - sha256 = "5a6fd3bb2cc2f75cdfe5673f36a5a418144d08add6e53b384cb146e99f27bd39"; + sha256 = "sha256-3IBObrytkn6rLUT+wMlwzreqQ4AfCgxiMTJm2Iwm+5E="; }; postPatch = '' - substituteInPlace setup.py \ - --replace "zeroconf>=0.25.1,<0.26.0" "zeroconf" - substituteInPlace setup.py \ - --replace "pytz>=2019.3,<2020.0" "pytz" - substituteInPlace setup.py \ - --replace "cryptography>=2.9,<3.0" "cryptography" - ''; - - checkInputs = [ pytest pytest-mock]; - propagatedBuildInputs = [ appdirs click construct croniter cryptography importlib-metadata zeroconf attrs pytz tqdm netifaces ]; - - checkPhase = '' - pytest + substituteInPlace pyproject.toml \ + --replace 'croniter = "^0"' 'croniter = "*"' \ + --replace 'defusedxml = "^0.6"' 'defusedxml = "*"' ''; + nativeBuildInputs = [ + poetry + ]; + + propagatedBuildInputs = [ + click + cryptography + construct + zeroconf + attrs + pytz + appdirs + tqdm + netifaces + android-backup + croniter + defusedxml + ] ++ lib.optional (pythonOlder "3.8") importlib-metadata; + + checkInputs = [ + pytestCheckHook + pytest-mock + pyyaml + ]; + meta = with lib; { description = "Python library for interfacing with Xiaomi smart appliances"; homepage = "https://github.com/rytilahti/python-miio"; diff --git a/pkgs/development/python-modules/sasmodels/default.nix b/pkgs/development/python-modules/sasmodels/default.nix index 06d2d40d180..08c9e7ce3eb 100644 --- a/pkgs/development/python-modules/sasmodels/default.nix +++ b/pkgs/development/python-modules/sasmodels/default.nix @@ -1,20 +1,30 @@ -{ lib, fetchFromGitHub, buildPythonPackage, pytest, numpy, scipy, matplotlib, docutils -, pyopencl, opencl-headers +{ lib +, fetchFromGitHub +, buildPythonPackage +, pytest_5 +, numpy +, scipy +, matplotlib +, docutils +, pyopencl +, opencl-headers }: buildPythonPackage rec { pname = "sasmodels"; - version = "1.0.2"; + version = "1.0.4"; src = fetchFromGitHub { owner = "SasView"; repo = "sasmodels"; rev = "v${version}"; - sha256 = "1qvh7q0fkls5r8r9mrph6igcvv8x3qsslqsc5jf1n20alcs5zjrl"; + sha256 = "0h2k81dm92sm0z086qy3ipw6y6cfgpb7ppl7lhjmx6816s3k50sa"; }; buildInputs = [ opencl-headers ]; - checkInputs = [ pytest ]; + # Note: the 1.0.5 release should be compatible with pytest6, so this can + # be set back to 'pytest' at that point + checkInputs = [ pytest_5 ]; propagatedBuildInputs = [ docutils matplotlib numpy scipy pyopencl ]; checkPhase = '' diff --git a/pkgs/development/python-modules/xdis/default.nix b/pkgs/development/python-modules/xdis/default.nix index 280470957dc..3da25743594 100644 --- a/pkgs/development/python-modules/xdis/default.nix +++ b/pkgs/development/python-modules/xdis/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { pname = "xdis"; - version = "5.0.5"; + version = "5.0.8"; disabled = isPy27; src = fetchFromGitHub { owner = "rocky"; repo = "python-xdis"; rev = version; - sha256 = "01248nh8y5szin6ymd3hrl8qnsg4xijsk3lxyks8zk9cjh008lmq"; + sha256 = "01g1bk7rscwmvr2i183z0y2bs1iw7bxk7c5rcf9gf25242nppv6a"; }; checkInputs = [ pytest ]; @@ -22,10 +22,11 @@ buildPythonPackage rec { checkPhase = '' make check ''; + pythonImportsCheck = [ "xdis" ]; meta = with lib; { description = "Python cross-version byte-code disassembler and marshal routines"; homepage = "https://github.com/rocky/python-xdis/"; - license = licenses.gpl2; + license = licenses.gpl2Plus; }; } diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix index 5ba6718a6bd..4a402111b08 100644 --- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix +++ b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix @@ -2,16 +2,16 @@ makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }: buildGoModule rec { name = "buildkite-agent-${version}"; - version = "3.27.0"; + version = "3.28.1"; src = fetchFromGitHub { owner = "buildkite"; repo = "agent"; rev = "v${version}"; - sha256 = "sha256-JfOCht+awc0I22vtRD5hgowgdVkcJR3qSxnxLoc3XZY="; + sha256 = "sha256-5YOXYOAh/0fOagcqdK2IEwm5XDCxyfTeTzwBGtsQRCs="; }; - vendorSha256 = "sha256-4zKe8y+9fedvCt/XmPf0HxtyqLz+FP4Ylt6k9KBjaIw="; + vendorSha256 = "sha256-3UXZxeiL0WO4X/3/hW8ubL1TormGbn9X/k0PX+/cLuM="; postPatch = '' substituteInPlace bootstrap/shell/shell.go --replace /bin/bash ${bash}/bin/bash diff --git a/pkgs/tools/misc/github-backup/default.nix b/pkgs/tools/misc/github-backup/default.nix new file mode 100644 index 00000000000..1fcaf3a4711 --- /dev/null +++ b/pkgs/tools/misc/github-backup/default.nix @@ -0,0 +1,30 @@ +{ lib +, python3 +, git +, git-lfs +}: + +python3.pkgs.buildPythonApplication rec { + pname = "github-backup"; + version = "0.39.0"; + + src = python3.pkgs.fetchPypi { + inherit pname version; + sha256 = "71829df4bdbe5bd55c324a97008405a6b4c6113edb1a2a6a8b73a7059fe64a47"; + }; + + makeWrapperArgs = [ + "--prefix" "PATH" ":" (lib.makeBinPath [ git git-lfs ]) + ]; + + # has no unit tests + doCheck = false; + + meta = with lib; { + description = "Backup a github user or organization"; + homepage = "https://github.com/josegonzalez/python-github-backup"; + changelog = "https://github.com/josegonzalez/python-github-backup/blob/${version}/CHANGES.rst"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/tools/misc/plowshare/default.nix b/pkgs/tools/misc/plowshare/default.nix index 0b5005b9c82..2cfbf5ae91a 100644 --- a/pkgs/tools/misc/plowshare/default.nix +++ b/pkgs/tools/misc/plowshare/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, makeWrapper, curl, recode, spidermonkey_38 }: +{ lib, stdenv, fetchFromGitHub, makeWrapper, curl, recode, spidermonkey_78 }: stdenv.mkDerivation rec { @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { make PREFIX="$out" install for fn in plow{del,down,list,mod,probe,up}; do - wrapProgram "$out/bin/$fn" --prefix PATH : "${lib.makeBinPath [ curl recode spidermonkey_38 ]}" + wrapProgram "$out/bin/$fn" --prefix PATH : "${lib.makeBinPath [ curl recode spidermonkey_78 ]}" done ''; diff --git a/pkgs/tools/misc/starship/default.nix b/pkgs/tools/misc/starship/default.nix index a3543c433ae..c589590abcf 100644 --- a/pkgs/tools/misc/starship/default.nix +++ b/pkgs/tools/misc/starship/default.nix @@ -11,13 +11,13 @@ rustPlatform.buildRustPackage rec { pname = "starship"; - version = "0.50.0"; + version = "0.51.0"; src = fetchFromGitHub { owner = "starship"; repo = pname; rev = "v${version}"; - sha256 = "1bnnqrxsmp3z2qksd8h4lfbq4kxxy1cg4yynadz66lxyzabv2v21"; + sha256 = "1bmnwvjhw2ba7yqn9if83d57b8qbrbqgy2br8q2drz4ylk0gjirg"; }; nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ pkg-config ]; @@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec { done ''; - cargoSha256 = "0plk47i2xrn3x5yr3gw3pq74maqf4krb8d6i4sf8gil4mnpcgxir"; + cargoSha256 = "1d4ca8yzx437x53i7z2kddv9db89zy6ywbgl6y1cwwd6wscbrxcq"; preCheck = '' HOME=$TMPDIR diff --git a/pkgs/tools/security/sipvicious/default.nix b/pkgs/tools/security/sipvicious/default.nix new file mode 100644 index 00000000000..36b619da433 --- /dev/null +++ b/pkgs/tools/security/sipvicious/default.nix @@ -0,0 +1,27 @@ +{ lib +, buildPythonApplication +, fetchFromGitHub +}: + +buildPythonApplication rec { + pname = "sipvicious"; + version = "0.3.2"; + + src = fetchFromGitHub { + owner = "EnableSecurity"; + repo = pname; + rev = "v${version}"; + sha256 = "0hna4xyjhdwi6z2aqqp25ydkb1qznlil95w2iqrr576wcrciznd5"; + }; + + # Project has no tests + doCheck = false; + pythonImportsCheck = [ "sipvicious" ]; + + meta = with lib; { + description = " Set of tools to audit SIP based VoIP systems"; + homepage = "https://github.com/EnableSecurity/sipvicious"; + license = with licenses; [ gpl3Plus ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/tools/text/jsawk/default.nix b/pkgs/tools/text/jsawk/default.nix index 951f236d04a..4efaf56ccf6 100644 --- a/pkgs/tools/text/jsawk/default.nix +++ b/pkgs/tools/text/jsawk/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, makeWrapper, spidermonkey_38 }: +{ lib, stdenv, fetchFromGitHub, makeWrapper, spidermonkey_78 }: stdenv.mkDerivation { pname = "jsawk"; @@ -15,7 +15,7 @@ stdenv.mkDerivation { mkdir -p $out/bin cp $src/jsawk $out/bin/ wrapProgram $out/bin/jsawk \ - --prefix PATH : "${spidermonkey_38}/bin" + --prefix PATH : "${spidermonkey_78}/bin" ''; meta = { diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index dbac4dccb88..5fa99d5f9a8 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -565,6 +565,7 @@ mapAliases ({ procps-ng = procps; # added 2018-06-08 prometheus-cups-exporter = throw "outdated and broken by design; removed by developer."; # added 2021-03-16 pygmentex = texlive.bin.pygmentex; # added 2019-12-15 + pyload = throw "pyload has been removed from nixpkgs, as it was unmaintained."; # added 2021-03-21 pyo3-pack = maturin; pmenu = throw "pmenu has been removed from nixpkgs, as its maintainer is no longer interested in the package."; # added 2019-12-10 pulseaudioLight = pulseaudio; # added 2018-04-25 @@ -695,6 +696,7 @@ mapAliases ({ speedtest_cli = speedtest-cli; # added 2015-02-17 spice_gtk = spice-gtk; # added 2018-02-25 spice_protocol = spice-protocol; # added 2018-02-25 + spidermonkey_38 = throw "spidermonkey_38 has been removed. Please use spidermonkey_78 instead."; # added 2021-03-21 spidermonkey_52 = throw "spidermonkey_52 has been removed. Please use spidermonkey_78 instead."; # added 2019-10-16 spidermonkey_60 = throw "spidermonkey_60 has been removed. Please use spidermonkey_78 instead."; # added 2021-03-21 spring-boot = spring-boot-cli; # added 2020-04-24 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 792da5ceedb..008443b2d26 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4791,6 +4791,8 @@ in gitfs = callPackage ../tools/filesystems/gitfs { }; + github-backup = callPackage ../tools/misc/github-backup { }; + gitin = callPackage ../applications/version-management/git-and-tools/gitin { }; gitinspector = callPackage ../applications/version-management/gitinspector { }; @@ -8083,6 +8085,8 @@ in sipsak = callPackage ../tools/networking/sipsak { }; + sipvicious = python3Packages.callPackage ../tools/security/sipvicious { }; + siril = callPackage ../applications/science/astronomy/siril { }; sisco.lv2 = callPackage ../applications/audio/sisco.lv2 { }; @@ -11800,11 +11804,6 @@ in sparkleshare = callPackage ../applications/version-management/sparkleshare { }; spidermonkey_1_8_5 = callPackage ../development/interpreters/spidermonkey/1.8.5.nix { }; - spidermonkey_38 = callPackage ../development/interpreters/spidermonkey/38.nix ({ - inherit (darwin) libobjc; - } // (lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { - stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' - })); spidermonkey_68 = callPackage ../development/interpreters/spidermonkey/68.nix { }; spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix { }; @@ -29651,8 +29650,6 @@ in pykms = callPackage ../tools/networking/pykms { }; - pyload = callPackage ../applications/networking/pyload {}; - pyupgrade = with python3Packages; toPythonApplication pyupgrade; pwntools = with python3Packages; toPythonApplication pwntools; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9374062f477..c67940dc2f5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -370,6 +370,8 @@ in { amqplib = callPackage ../development/python-modules/amqplib { }; + android-backup = callPackage ../development/python-modules/android-backup { }; + androidtv = callPackage ../development/python-modules/androidtv { }; androguard = callPackage ../development/python-modules/androguard { };