diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 162151d457c..23e585871ac 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7076,6 +7076,11 @@ githubId = 1817528; name = "Igor Polyakov"; }; + iquerejeta = { + github = "iquerejeta"; + githubId = 31273774; + name = "Inigo Querejeta-Azurmendi"; + }; irenes = { name = "Irene Knapp"; email = "ireneista@gmail.com"; @@ -17999,6 +18004,16 @@ fingerprint = "9F19 3AE8 AA25 647F FC31 46B5 416F 303B 43C2 0AC3"; }]; }; + yvan-sraka = { + email = "yvan@sraka.xyz"; + github = "yvan-sraka"; + githubId = 705213; + keys = [{ + fingerprint = "FE9A 953C 97E4 54FE 6598 BFDD A4FB 3EAA 6F45 2379"; + }]; + matrix = "@/yvan:matrix.org"; + name = "Yvan Sraka"; + }; yvesf = { email = "yvesf+nix@xapek.org"; github = "yvesf"; diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index 17c254d53de..50847f663f5 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -72,6 +72,8 @@ - If [`system.stateVersion`](#opt-system.stateVersion) is >=23.05, `pkgs.nextcloud26` will be installed by default. - Please note that an upgrade from v25 (or older) to v27 directly is not possible. Please upgrade to `nextcloud26` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud26;`](options.html#opt-services.nextcloud.package). +- New options were added to `services.searx` for better SearXNG support, including options for the built-in rate limiter and bot protection and automatically configuring a local redis server. + - A new option was added to the virtualisation module that enables specifying explicitly named network interfaces in QEMU VMs. The existing `virtualisation.vlans` is still supported for cases where the name of the network interface is irrelevant. - DocBook option documentation is no longer supported, all module documentation now uses markdown. diff --git a/nixos/modules/services/networking/searx.nix b/nixos/modules/services/networking/searx.nix index 6c57ddbde2d..40648c72481 100644 --- a/nixos/modules/services/networking/searx.nix +++ b/nixos/modules/services/networking/searx.nix @@ -10,6 +10,8 @@ let settingsFile = pkgs.writeText "settings.yml" (builtins.toJSON cfg.settings); + limiterSettingsFile = (pkgs.formats.toml { }).generate "limiter.toml" cfg.limiterSettings; + generateConfig = '' cd ${runDir} @@ -65,6 +67,15 @@ in ''; }; + redisCreateLocally = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc '' + Configure a local Redis server for SearXNG. This is required if you + want to enable the rate limiter and bot protection of SearXNG. + ''; + }; + settings = mkOption { type = types.attrsOf settingType; default = { }; @@ -111,6 +122,31 @@ in ''; }; + limiterSettings = mkOption { + type = types.attrsOf settingType; + default = { }; + example = literalExpression '' + { + real_ip = { + x_for = 1; + ipv4_prefix = 32; + ipv6_prefix = 56; + } + botdetection.ip_lists.block_ip = [ + # "93.184.216.34" # example.org + ]; + } + ''; + description = lib.mdDoc '' + Limiter settings for SearXNG. + + ::: {.note} + For available settings, see the SearXNG + [schema file](https://github.com/searxng/searxng/blob/master/searx/botdetection/limiter.toml). + ::: + ''; + }; + package = mkOption { type = types.package; default = pkgs.searx; @@ -158,6 +194,17 @@ in ###### implementation config = mkIf cfg.enable { + assertions = [ + { + assertion = (cfg.limiterSettings != { }) -> cfg.package.pname == "searxng"; + message = "services.searx.limiterSettings requires services.searx.package to be searxng."; + } + { + assertion = cfg.redisCreateLocally -> cfg.package.pname == "searxng"; + message = "services.searx.redisCreateLocally requires services.searx.package to be searxng."; + } + ]; + environment.systemPackages = [ cfg.package ]; users.users.searx = @@ -206,6 +253,7 @@ in services.searx.settings = { # merge NixOS settings with defaults settings.yml use_default_settings = mkDefault true; + redis.url = lib.mkIf cfg.redisCreateLocally "unix://${config.services.redis.servers.searx.unixSocket}"; }; services.uwsgi = mkIf (cfg.runInUwsgi) { @@ -231,7 +279,16 @@ in } // cfg.uwsgiConfig; }; + services.redis.servers.searx = lib.mkIf cfg.redisCreateLocally { + enable = true; + user = "searx"; + port = 0; + }; + + environment.etc."searxng/limiter.toml" = lib.mkIf (cfg.limiterSettings != { }) { + source = limiterSettingsFile; + }; }; - meta.maintainers = with maintainers; [ rnhmjoj ]; + meta.maintainers = with maintainers; [ rnhmjoj _999eagle ]; } diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix index fb9774bafde..e75239e059d 100644 --- a/nixos/modules/services/networking/ssh/sshd.nix +++ b/nixos/modules/services/networking/ssh/sshd.nix @@ -279,10 +279,12 @@ in settings = mkOption { description = lib.mdDoc "Configuration for `sshd_config(5)`."; default = { }; - example = literalExpression ''{ - UseDns = true; - PasswordAuthentication = false; - }''; + example = literalExpression '' + { + UseDns = true; + PasswordAuthentication = false; + } + ''; type = types.submodule ({name, ...}: { freeformType = settingsFormat.type; options = { diff --git a/nixos/modules/services/networking/thelounge.nix b/nixos/modules/services/networking/thelounge.nix index 2c4c32bc7cf..321e46fb5d4 100644 --- a/nixos/modules/services/networking/thelounge.nix +++ b/nixos/modules/services/networking/thelounge.nix @@ -48,14 +48,16 @@ in extraConfig = mkOption { default = { }; type = types.attrs; - example = literalExpression ''{ - reverseProxy = true; - defaults = { - name = "Your Network"; - host = "localhost"; - port = 6697; - }; - }''; + example = literalExpression '' + { + reverseProxy = true; + defaults = { + name = "Your Network"; + host = "localhost"; + port = 6697; + }; + } + ''; description = lib.mdDoc '' The Lounge's {file}`config.js` contents as attribute set (will be converted to JSON to generate the configuration file). diff --git a/nixos/modules/services/web-servers/ttyd.nix b/nixos/modules/services/web-servers/ttyd.nix index e0a8b5179e0..3b1d87ccb48 100644 --- a/nixos/modules/services/web-servers/ttyd.nix +++ b/nixos/modules/services/web-servers/ttyd.nix @@ -78,11 +78,12 @@ in clientOptions = mkOption { type = types.attrsOf types.str; default = {}; - example = literalExpression ''{ - fontSize = "16"; - fontFamily = "Fira Code"; - - }''; + example = literalExpression '' + { + fontSize = "16"; + fontFamily = "Fira Code"; + } + ''; description = lib.mdDoc '' Attribute set of client options for xtermjs. diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix index 159dd33457e..a7183daf5e0 100644 --- a/nixos/modules/system/boot/networkd.nix +++ b/nixos/modules/system/boot/networkd.nix @@ -1897,7 +1897,7 @@ let bridgeVLANOptions = { options = { - bridgeMDBConfig = mkOption { + bridgeVLANConfig = mkOption { default = {}; example = { VLAN = 20; }; type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridgeVLAN; @@ -2388,17 +2388,6 @@ let ''; }; - bridgeVLANConfig = mkOption { - default = {}; - example = { VLAN = "10-20"; }; - type = types.addCheck (types.attrsOf unitOption) check.network.sectionBridgeVLAN; - description = lib.mdDoc '' - Each attribute in this set specifies an option in the - `[BridgeVLAN]` section of the unit. See - {manpage}`systemd.network(5)` for details. - ''; - }; - bridgeVLANs = mkOption { default = []; example = [ { bridgeVLANConfig = { VLAN = "10-20"; }; } ]; diff --git a/nixos/modules/virtualisation/proxmox-image.nix b/nixos/modules/virtualisation/proxmox-image.nix index b5d4ecd0268..1074b02d0eb 100644 --- a/nixos/modules/virtualisation/proxmox-image.nix +++ b/nixos/modules/virtualisation/proxmox-image.nix @@ -98,10 +98,12 @@ with lib; qemuExtraConf = mkOption { type = with types; attrsOf (oneOf [ str int ]); default = {}; - example = literalExpression ''{ - cpu = "host"; - onboot = 1; - }''; + example = literalExpression '' + { + cpu = "host"; + onboot = 1; + } + ''; description = lib.mdDoc '' Additional options appended to qemu-server.conf ''; diff --git a/nixos/tests/systemd-networkd-dhcpserver.nix b/nixos/tests/systemd-networkd-dhcpserver.nix index b52c1499718..a016f059456 100644 --- a/nixos/tests/systemd-networkd-dhcpserver.nix +++ b/nixos/tests/systemd-networkd-dhcpserver.nix @@ -1,6 +1,12 @@ # This test predominantly tests systemd-networkd DHCP server, by # setting up a DHCP server and client, and ensuring they are mutually # reachable via the DHCP allocated address. +# Two DHCP servers are set up on bridge VLANs, testing to make sure that +# bridge VLAN settings are correctly applied. +# +# br0 ----untagged---v +# +---PVID 1+VLAN 2---[bridge]---PVID 2---eth1 +# vlan2 ---VLAN 2----^ import ./make-test-python.nix ({pkgs, ...}: { name = "systemd-networkd-dhcpserver"; meta = with pkgs.lib.maintainers; { @@ -16,6 +22,28 @@ import ./make-test-python.nix ({pkgs, ...}: { firewall.enable = false; }; systemd.network = { + netdevs = { + br0 = { + enable = true; + netdevConfig = { + Name = "br0"; + Kind = "bridge"; + }; + extraConfig = '' + [Bridge] + VLANFiltering=yes + DefaultPVID=none + ''; + }; + vlan2 = { + enable = true; + netdevConfig = { + Name = "vlan2"; + Kind = "vlan"; + }; + vlanConfig.Id = 2; + }; + }; networks = { # systemd-networkd will load the first network unit file # that matches, ordered lexiographically by filename. @@ -24,9 +52,32 @@ import ./make-test-python.nix ({pkgs, ...}: { # however, hence why this network is named such. "01-eth1" = { name = "eth1"; + networkConfig.Bridge = "br0"; + bridgeVLANs = [ + { bridgeVLANConfig = { PVID = 2; EgressUntagged = 2; }; } + ]; + }; + "02-br0" = { + name = "br0"; networkConfig = { DHCPServer = true; Address = "10.0.0.1/24"; + VLAN = ["vlan2"]; + }; + dhcpServerConfig = { + PoolOffset = 100; + PoolSize = 1; + }; + bridgeVLANs = [ + { bridgeVLANConfig = { PVID = 1; EgressUntagged = 1; }; } + { bridgeVLANConfig = { VLAN = 2; }; } + ]; + }; + "02-vlan2" = { + name = "vlan2"; + networkConfig = { + DHCPServer = true; + Address = "10.0.2.1/24"; }; dhcpServerConfig = { PoolOffset = 100; @@ -52,7 +103,7 @@ import ./make-test-python.nix ({pkgs, ...}: { start_all() router.wait_for_unit("systemd-networkd-wait-online.service") client.wait_for_unit("systemd-networkd-wait-online.service") - client.wait_until_succeeds("ping -c 5 10.0.0.1") - router.wait_until_succeeds("ping -c 5 10.0.0.100") + client.wait_until_succeeds("ping -c 5 10.0.2.1") + router.wait_until_succeeds("ping -c 5 10.0.2.100") ''; }) diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index 6481f76f5ef..0b2afc81f4d 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -128,6 +128,12 @@ }: self: super: { + alpha-nvim = super.alpha-nvim.overrideAttrs(oa: { + dependencies = [ + self.nvim-web-devicons # required by the startify theme + ]; + nvimRequireCheck = "alpha"; + }); autosave-nvim = super.autosave-nvim.overrideAttrs(old: { dependencies = with super; [ plenary-nvim ]; diff --git a/pkgs/applications/misc/pdfposter/default.nix b/pkgs/applications/misc/pdfposter/default.nix new file mode 100644 index 00000000000..5261fe3dbfe --- /dev/null +++ b/pkgs/applications/misc/pdfposter/default.nix @@ -0,0 +1,44 @@ +{ lib, python3, fetchPypi }: +let + localPython = python3.override { + self = localPython; + packageOverrides = self: super: { + # Can be removed once this is merged + # https://gitlab.com/pdftools/pdfposter/-/merge_requests/7 + pypdf2 = super.pypdf2.overridePythonAttrs (oldAttrs: rec { + version = "2.11.1"; + format = "setuptools"; + src = fetchPypi { + pname = "PyPDF2"; + inherit version; + hash = "sha256-PHut1RLCFxHrF4nC6tv5YnkonA+URS7lSoZHO/vv1zI="; + }; + }); + }; + }; +in +with localPython.pkgs; buildPythonApplication rec { + pname = "pdfposter"; + version = "0.8.1"; + format = "setuptools"; + + propagatedBuildInputs = [ pypdf2 ]; + + src = fetchPypi { + pname = "pdftools.pdfposter"; + inherit version; + hash = "sha256-yWFtHgVKAWs4dRlSk8t8cB2KBJeBOa0Frh3BLR9txS0="; + }; + + pythonImportsCheck = [ + "pdftools.pdfposter" + "pdftools.pdfposter.cmd" + ]; + + meta = with lib; { + description = "Split large pages of a PDF into smaller ones for poster printing"; + homepage = "https://pdfposter.readthedocs.io"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ wamserma ]; + }; +} diff --git a/pkgs/applications/networking/cluster/kluctl/default.nix b/pkgs/applications/networking/cluster/kluctl/default.nix index c8bd51aeb7f..cf053a62621 100644 --- a/pkgs/applications/networking/cluster/kluctl/default.nix +++ b/pkgs/applications/networking/cluster/kluctl/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "kluctl"; - version = "2.20.6"; + version = "2.20.7"; src = fetchFromGitHub { owner = "kluctl"; repo = "kluctl"; rev = "v${version}"; - hash = "sha256-B8+HKqIuJaH+6ViBxWfiAAmXieQKcwAW565SwUpIJKI="; + hash = "sha256-NcvPo+6f2EYhitzOl2VPz8MtFIsYBuOA7EJnD4TJdmI="; }; vendorHash = "sha256-x5Zy8H7DzxU+uBCUL6edv8x2LwiIjXl5UrRUMDtUEk8="; diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index 9fdf4f22271..bc561877f51 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -36,14 +36,14 @@ let in assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins; stdenv.mkDerivation rec { - version = "4.0.0"; + version = "4.0.1"; pname = "weechat"; hardeningEnable = [ "pie" ]; src = fetchurl { url = "https://weechat.org/files/src/weechat-${version}.tar.xz"; - hash = "sha256-W9de4V8zkqCtF07nxUUY2uzjh4R3ZwwH8Q1uv5iCQPk="; + hash = "sha256-G5UzEjr0J5IrPX+r7elY3IU5LVCIHZfQt5htj1FFVuk="; }; outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins; diff --git a/pkgs/development/compilers/cairo/default.nix b/pkgs/development/compilers/cairo/default.nix index b39c26d424a..8dee9a93d20 100644 --- a/pkgs/development/compilers/cairo/default.nix +++ b/pkgs/development/compilers/cairo/default.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage rec { pname = "cairo"; - version = "1.1.0"; + version = "1.1.1"; src = fetchFromGitHub { owner = "starkware-libs"; repo = "cairo"; rev = "v${version}"; - hash = "sha256-8dzDe4Kw9OASD0i3bMooqEclStxS/Ta/tOVCcFhvwSI="; + hash = "sha256-hlFPYYZsifH6ZTEDC+f1dLbHEn/wg4T7RoiYoibskjs="; }; - cargoHash = "sha256-IY3RE+EeNRhUSZX+bqojhPl6y8qm+i9C0zQmNApmat8="; + cargoHash = "sha256-WLNt8IZkdCcHFQwnTZlcEmYlyhOoIEk1/s+obXhj+Qo="; nativeCheckInputs = [ rustfmt diff --git a/pkgs/development/libraries/ayatana-ido/default.nix b/pkgs/development/libraries/ayatana-ido/default.nix index 4a1bed05a3f..c618a2ee3b5 100644 --- a/pkgs/development/libraries/ayatana-ido/default.nix +++ b/pkgs/development/libraries/ayatana-ido/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "ayatana-ido"; - version = "0.9.2"; + version = "0.10.0"; src = fetchFromGitHub { owner = "AyatanaIndicators"; repo = pname; rev = version; - sha256 = "sha256-0LswdcV4VSg5o5uJ6vfw713eDnMbodZPQ9d2djxHc6k="; + sha256 = "sha256-jpNsH8c5ObnO+/AqsribvyFZhm7mmCFGNx9p4QHZKQE="; }; nativeBuildInputs = [ pkg-config cmake ]; diff --git a/pkgs/development/libraries/blst/default.nix b/pkgs/development/libraries/blst/default.nix new file mode 100644 index 00000000000..d49fdb84f89 --- /dev/null +++ b/pkgs/development/libraries/blst/default.nix @@ -0,0 +1,39 @@ +{ stdenv, lib, fetchFromGitHub, autoreconfHook }: + +stdenv.mkDerivation ( finalAttrs: { + pname = "blst"; + version = "0.3.10"; + + src = fetchFromGitHub { + owner = "supranational"; + repo = "blst"; + rev = "v${finalAttrs.version}"; + hash = "sha256-xero1aTe2v4IhWIJaEDUsVDOfE77dOV5zKeHWntHogY="; + }; + + buildPhase = '' + runHook preBuild + + ./build.sh + + runHook postBuild + ''; + installPhase = '' + runHook preInstall + + mkdir -p $out/lib + cp ./libblst.a $out/lib/ + + runHook postInstall + ''; + + doCheck = true; + + meta = with lib; { + description = "Multilingual BLS12-381 signature library"; + homepage = "https://github.com/supranational/blst"; + license = licenses.isc; + maintainers = with maintainers; [ iquerejeta yvan-sraka ]; + platforms = platforms.all; + }; +}) diff --git a/pkgs/development/misc/newlib/default.nix b/pkgs/development/misc/newlib/default.nix index 4ec603f250d..d162753608b 100644 --- a/pkgs/development/misc/newlib/default.nix +++ b/pkgs/development/misc/newlib/default.nix @@ -73,10 +73,12 @@ stdenv.mkDerivation (finalAttrs: { cd $out${finalAttrs.passthru.libdir} for f in librdimon.a libc.a libg.a; do - cp "$f" "''${f%%\.a}_nano.a" + # Some libraries are only available for specific architectures. + # For example, librdimon.a is only available on ARM. + [ -f "$f" ] && cp "$f" "''${f%%\.a}_nano.a" done ) - ''; + '' + ''[ "$(find $out -type f | wc -l)" -gt 0 ] || (echo '$out is empty' 1>&2 && exit 1)''; passthru = { incdir = "/${stdenv.targetPlatform.config}/include"; diff --git a/pkgs/development/python-modules/awkward/default.nix b/pkgs/development/python-modules/awkward/default.nix index 85f504f49ab..27bd89a039f 100644 --- a/pkgs/development/python-modules/awkward/default.nix +++ b/pkgs/development/python-modules/awkward/default.nix @@ -14,14 +14,14 @@ buildPythonPackage rec { pname = "awkward"; - version = "2.2.3"; + version = "2.2.4"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-yx/z8lTqVWnMTp7TlH+rtAHb3cskm1iViZedhfs0EUI="; + hash = "sha256-v06mYdoP/WfIfz6x6+MJvS4YOsTsyWqhCyAykZ1d5v4="; }; nativeBuildInputs = [ @@ -55,6 +55,7 @@ buildPythonPackage rec { meta = with lib; { description = "Manipulate JSON-like data with NumPy-like idioms"; homepage = "https://github.com/scikit-hep/awkward"; + changelog = "https://github.com/scikit-hep/awkward/releases/tag/v${version}"; license = licenses.bsd3; maintainers = with maintainers; [ veprbl ]; }; diff --git a/pkgs/development/python-modules/hcloud/default.nix b/pkgs/development/python-modules/hcloud/default.nix index 20e2b8c94f2..1ae31975bde 100644 --- a/pkgs/development/python-modules/hcloud/default.nix +++ b/pkgs/development/python-modules/hcloud/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "hcloud"; - version = "1.22.0"; + version = "1.23.1"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-9F7bgkVL1hE9YeL8JxOAHNJ2iw6ey7UBOQU95DPDIis="; + hash = "sha256-rIaGcAMZZRd4BeLYmHAtfCCY6b5a+HDu5GO87/wNLkU="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/jenkins-job-builder/default.nix b/pkgs/development/python-modules/jenkins-job-builder/default.nix index c926a8fffeb..b0bb96216a6 100644 --- a/pkgs/development/python-modules/jenkins-job-builder/default.nix +++ b/pkgs/development/python-modules/jenkins-job-builder/default.nix @@ -9,11 +9,11 @@ buildPythonPackage rec { pname = "jenkins-job-builder"; - version = "4.3.0"; + version = "5.0.2"; src = fetchPypi { inherit pname version; - hash = "sha256-pvka8TLMEclzJ2Iw4iLSiR1ioV3frzQStLu21+kSSHI="; + hash = "sha256-XHsV3Mf2I7gwhgJKDPv3Ce+u9dcllLvMGeeeRg/q3NE="; }; postPatch = '' diff --git a/pkgs/development/python-modules/mediapy/default.nix b/pkgs/development/python-modules/mediapy/default.nix index 563c37a042d..28f754e98ed 100644 --- a/pkgs/development/python-modules/mediapy/default.nix +++ b/pkgs/development/python-modules/mediapy/default.nix @@ -10,13 +10,13 @@ buildPythonPackage rec { pname = "mediapy"; - version = "1.1.6"; + version = "1.1.8"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - hash = "sha256-n0S3YEAJZNi+pRIaIT+U3JoiXQJtaoGZASg6aV5YVjQ="; + hash = "sha256-mVhBM+NQEkLYByp/kCPFJCAY26La5CWjcPl6PgclA9A="; }; propagatedBuildInputs = [ ipython matplotlib numpy pillow ]; diff --git a/pkgs/development/python-modules/mypy-boto3-s3/default.nix b/pkgs/development/python-modules/mypy-boto3-s3/default.nix index 3b692d98c0e..ba784ef9d4c 100644 --- a/pkgs/development/python-modules/mypy-boto3-s3/default.nix +++ b/pkgs/development/python-modules/mypy-boto3-s3/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "mypy-boto3-s3"; - version = "1.26.155"; + version = "1.26.163"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-Kjmau6jEW3uz82I7r4aFhiXXsOWpAu3+fZ+hj8vrL3s="; + hash = "sha256-R9NjnNCXqhQtyspDtDH6en7vtW4Vluv/Yl9XHxa9diM="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/neo4j/default.nix b/pkgs/development/python-modules/neo4j/default.nix index ae665301c59..22f817b7ebc 100644 --- a/pkgs/development/python-modules/neo4j/default.nix +++ b/pkgs/development/python-modules/neo4j/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "neo4j"; - version = "5.9.0"; + version = "5.10.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "neo4j"; repo = "neo4j-python-driver"; rev = "refs/tags/${version}"; - hash = "sha256-HyoIr2ZIOAzFlMrkIDV71JJAFwrxCqExMFXF3U2p9Po="; + hash = "sha256-UD7y/OVoYyEL+68CW+kc8m8poATqRRSwoP6XQyUbGC0="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/netapp-ontap/default.nix b/pkgs/development/python-modules/netapp-ontap/default.nix index cedb2fa064c..28a953f29f1 100644 --- a/pkgs/development/python-modules/netapp-ontap/default.nix +++ b/pkgs/development/python-modules/netapp-ontap/default.nix @@ -12,13 +12,13 @@ buildPythonPackage rec { pname = "netapp-ontap"; - version = "9.12.1.0"; + version = "9.13.1.0"; format = "setuptools"; src = fetchPypi { pname = "netapp_ontap"; inherit version; - sha256 = "sha256-eqFj2xYl4X1TB4Rxajpor5zgJdoISJk89KpARAHI/W0="; + sha256 = "sha256-jPKfPJXtzARRlSuwkfJeZueQouwaaa0D6rZ+BcpILq0="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/odp-amsterdam/default.nix b/pkgs/development/python-modules/odp-amsterdam/default.nix index 1ad03a48a95..99c3f9e4699 100644 --- a/pkgs/development/python-modules/odp-amsterdam/default.nix +++ b/pkgs/development/python-modules/odp-amsterdam/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "odp-amsterdam"; - version = "5.1.0"; + version = "5.1.1"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "klaasnicolaas"; repo = "python-odp-amsterdam"; rev = "refs/tags/v${version}"; - hash = "sha256-ECRm9I/wHb82F8UBqPQWd60wLybIloCJiTxXDb3GnGs="; + hash = "sha256-DaL2CTrhWqBwl3kktF1wndxzrreA24C3zXmp4ghf/4s="; }; postPatch = '' diff --git a/pkgs/development/python-modules/pamela/default.nix b/pkgs/development/python-modules/pamela/default.nix index 7fd62dae2cd..eb1ebff4813 100644 --- a/pkgs/development/python-modules/pamela/default.nix +++ b/pkgs/development/python-modules/pamela/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "pamela"; - version = "1.0.0"; + version = "1.1.0"; src = fetchPypi { inherit pname version; - sha256 = "65c9389bef7d1bb0b168813b6be21964df32016923aac7515bdf05366acbab6c"; + sha256 = "sha256-1LE5/mAOGS4Xaio2gFkgemv/oOeHmHmxP0/LoBY0gb4="; }; postUnpack = '' diff --git a/pkgs/development/python-modules/pdfposter/default.nix b/pkgs/development/python-modules/pdfposter/default.nix deleted file mode 100644 index e2f5211ecaf..00000000000 --- a/pkgs/development/python-modules/pdfposter/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ lib, buildPythonPackage, fetchPypi, pypdf2 }: - -buildPythonPackage rec { - pname = "pdftools.pdfposter"; - version = "0.8.1"; - format = "setuptools"; - - propagatedBuildInputs = [ pypdf2 ]; - - src = fetchPypi { - inherit pname version; - hash = "sha256-yWFtHgVKAWs4dRlSk8t8cB2KBJeBOa0Frh3BLR9txS0="; - }; - - pythonImportsCheck = [ - "pdftools.pdfposter" - "pdftools.pdfposter.cmd" - ]; - - meta = with lib; { - description = "Split large pages of a PDF into smaller ones for poster printing"; - homepage = "https://pdfposter.readthedocs.io"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ wamserma ]; - }; -} diff --git a/pkgs/development/python-modules/pontos/default.nix b/pkgs/development/python-modules/pontos/default.nix index f387cd2b31f..e0209fa5ac6 100644 --- a/pkgs/development/python-modules/pontos/default.nix +++ b/pkgs/development/python-modules/pontos/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "pontos"; - version = "23.6.1"; + version = "23.6.2"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "greenbone"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-HBDijU5R1furmlP1ykmjbbBWXh/LSVE2zuuJ80D9Yng="; + hash = "sha256-kLBkTOV4vllAGtnFWo44KxC0UPrYqWEOpC5oai+dIC8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/pytorch-lightning/default.nix b/pkgs/development/python-modules/pytorch-lightning/default.nix index 17c179fbcc1..e3fcc696201 100644 --- a/pkgs/development/python-modules/pytorch-lightning/default.nix +++ b/pkgs/development/python-modules/pytorch-lightning/default.nix @@ -20,14 +20,14 @@ buildPythonPackage rec { pname = "pytorch-lightning"; - version = "2.0.2"; + version = "2.0.4"; format = "pyproject"; src = fetchFromGitHub { owner = "Lightning-AI"; repo = "pytorch-lightning"; rev = "refs/tags/${version}"; - hash = "sha256-MSztKWjg/7J+4+sv4sqFlucaYuQlGoehtcUTiqNUlPA="; + hash = "sha256-gF0Tx/G06SwwrtIM7RPz/P+Qhmc3zgFQPsAT7qf8RtI="; }; preConfigure = '' diff --git a/pkgs/servers/web-apps/searx/default.nix b/pkgs/servers/web-apps/searx/default.nix index 60a8e22a484..995d2d9fee0 100644 --- a/pkgs/servers/web-apps/searx/default.nix +++ b/pkgs/servers/web-apps/searx/default.nix @@ -14,6 +14,10 @@ toPythonModule (buildPythonApplication rec { sha256 = "sha256-+Wsg1k/h41luk5aVfSn11/lGv8hZYVvpHLbbYHfsExw="; }; + patches = [ + ./fix-flask-babel-3.0.patch + ]; + postPatch = '' sed -i 's/==.*$//' requirements.txt ''; diff --git a/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch b/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch new file mode 100644 index 00000000000..d69cc30b60a --- /dev/null +++ b/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch @@ -0,0 +1,27 @@ +commit 38b3a4f70e3226a091c53300659752c595b120f9 +Author: rnhmjoj +Date: Fri Jun 30 21:48:35 2023 +0200 + + Fix for flask-babel 3.0 + +diff --git a/searx/webapp.py b/searx/webapp.py +index 2027e72d..f3174a45 100755 +--- a/searx/webapp.py ++++ b/searx/webapp.py +@@ -167,7 +167,7 @@ _flask_babel_get_translations = flask_babel.get_translations + def _get_translations(): + if has_request_context() and request.form.get('use-translation') == 'oc': + babel_ext = flask_babel.current_app.extensions['babel'] +- return Translations.load(next(babel_ext.translation_directories), 'oc') ++ return Translations.load(babel_ext.translation_directories[0], 'oc') + + return _flask_babel_get_translations() + +@@ -188,7 +188,6 @@ def _get_browser_or_settings_language(request, lang_list): + return settings['search']['default_lang'] or 'en' + + +-@babel.localeselector + def get_locale(): + if 'locale' in request.form\ + and request.form['locale'] in settings['locales']: diff --git a/pkgs/tools/admin/chamber/default.nix b/pkgs/tools/admin/chamber/default.nix index 9afabb33e55..c03b1eb8ac4 100644 --- a/pkgs/tools/admin/chamber/default.nix +++ b/pkgs/tools/admin/chamber/default.nix @@ -2,18 +2,18 @@ buildGoModule rec { pname = "chamber"; - version = "2.13.0"; + version = "2.13.1"; src = fetchFromGitHub { owner = "segmentio"; repo = pname; rev = "v${version}"; - sha256 = "sha256-1alRyAwT+vlzj7L6KG62R7PRKbMkevowUdD6he4ZQ/I="; + sha256 = "sha256-F4JVAW6aKbEofTshF6vny5hnTFnfUKuRyc9zaUxSjG4="; }; CGO_ENABLED = 0; - vendorHash = "sha256-pyC2iMGx1seSBR3f316oNM0YiN3y1489uybpgHyN8NM="; + vendorHash = "sha256-xFZmTsX5OrLu1AkKDHaa5N277J5dLGf5F9ATWirtnXY="; ldflags = [ "-s" "-w" "-X main.Version=v${version}" ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 20b2417f9a4..7b42eeb42cd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -348,6 +348,8 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) CoreServices; }; + blst = callPackage ../development/libraries/blst { }; + bodyclose = callPackage ../development/tools/bodyclose { }; bootstrap-studio = callPackage ../development/web/bootstrap-studio { }; @@ -11387,6 +11389,8 @@ with pkgs; pdfcrack = callPackage ../tools/security/pdfcrack { }; + pdfposter = callPackage ../applications/misc/pdfposter { }; + pdfsandwich = callPackage ../tools/typesetting/pdfsandwich { }; pdftag = callPackage ../tools/graphics/pdftag { }; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index d5cedbe65e2..5d4a015ff53 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -194,6 +194,7 @@ mapAliases ({ pam = python-pam; # added 2020-09-07. PasteDeploy = pastedeploy; # added 2021-10-07 pathpy = path; # added 2022-04-12 + pdfposter = throw "pdfposter was promoted to a top-level attribute"; # Added 2023-06-29 pdfminer = pdfminer-six; # added 2022-05-25 pep257 = pydocstyle; # added 2022-04-12 poetry = throw "poetry was promoted to a top-level attribute, use poetry-core to build Python packages"; # added 2023-01-09 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4ea87c05174..6d36f88d764 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7524,8 +7524,6 @@ self: super: with self; { pdfminer-six = callPackage ../development/python-modules/pdfminer-six { }; - pdfposter = callPackage ../development/python-modules/pdfposter { }; - pdfrw = callPackage ../development/python-modules/pdfrw { }; pdftotext = callPackage ../development/python-modules/pdftotext { };