summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/interpreters/python/default.nix4
-rw-r--r--pkgs/development/libraries/SDL_compat/default.nix4
-rw-r--r--pkgs/development/libraries/amtk/default.nix4
-rw-r--r--pkgs/development/libraries/cjose/default.nix4
-rw-r--r--pkgs/development/libraries/gnome-online-accounts/default.nix11
-rw-r--r--pkgs/development/libraries/gtk/4.x.nix12
-rw-r--r--pkgs/development/libraries/gvfs/default.nix33
-rw-r--r--pkgs/development/libraries/libshumate/default.nix4
-rw-r--r--pkgs/development/libraries/libuninameslist/default.nix4
-rw-r--r--pkgs/development/libraries/re2/default.nix79
-rw-r--r--pkgs/development/libraries/webp-pixbuf-loader/default.nix60
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix17
-rw-r--r--pkgs/development/misc/brev-cli/default.nix4
-rw-r--r--pkgs/development/python-modules/ansible-lint/default.nix2
-rw-r--r--pkgs/development/python-modules/black/default.nix17
-rw-r--r--pkgs/development/python-modules/geventhttpclient/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-iam/default.nix4
-rw-r--r--pkgs/development/python-modules/jc/default.nix4
-rw-r--r--pkgs/development/python-modules/oslo-db/default.nix4
-rw-r--r--pkgs/development/python-modules/playwright/default.nix6
-rw-r--r--pkgs/development/python-modules/policy-sentry/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-hawk/default.nix2
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/common.nix8
-rw-r--r--pkgs/development/tools/datree/default.nix4
-rw-r--r--pkgs/development/tools/godot/3/default.nix (renamed from pkgs/development/tools/godot/default.nix)0
-rw-r--r--pkgs/development/tools/godot/3/dont_clobber_environment.patch (renamed from pkgs/development/tools/godot/dont_clobber_environment.patch)0
-rw-r--r--pkgs/development/tools/godot/3/export-templates.nix (renamed from pkgs/development/tools/godot/export-templates.nix)0
-rw-r--r--pkgs/development/tools/godot/3/headless.nix (renamed from pkgs/development/tools/godot/headless.nix)0
-rw-r--r--pkgs/development/tools/godot/3/pkg_config_additions.patch (renamed from pkgs/development/tools/godot/pkg_config_additions.patch)0
-rw-r--r--pkgs/development/tools/godot/3/server.nix (renamed from pkgs/development/tools/godot/server.nix)0
-rw-r--r--pkgs/development/tools/godot/4/default.nix125
-rw-r--r--pkgs/development/tools/godot/4/xfixes.patch12
-rw-r--r--pkgs/development/tools/rust/cargo-llvm-lines/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-update/default.nix6
34 files changed, 317 insertions, 131 deletions
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 59136d0c1ff..7d66b597b37 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -215,9 +215,9 @@ in {
       major = "3";
       minor = "11";
       patch = "0";
-      suffix = "rc2";
+      suffix = "";
     };
-    sha256 = "sha256-JbNcx9gsWtNNhnsXmhwWldEpvl7RSiHka2t/I1CotJA=";
+    sha256 = "sha256-pX3ILXc1hhe6ZbmEHO4eO0QfOGw3id3AZ27KB38pUcM=";
     inherit (darwin) configd;
     inherit passthruFun;
   };
diff --git a/pkgs/development/libraries/SDL_compat/default.nix b/pkgs/development/libraries/SDL_compat/default.nix
index d2c9958b9c2..d0cb80fb6b4 100644
--- a/pkgs/development/libraries/SDL_compat/default.nix
+++ b/pkgs/development/libraries/SDL_compat/default.nix
@@ -18,13 +18,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "SDL_compat";
-  version = "1.2.56";
+  version = "1.2.60";
 
   src = fetchFromGitHub {
     owner = "libsdl-org";
     repo = "sdl12-compat";
     rev = "release-" + version;
-    hash = "sha256-qd+hdJygJ+D2Ult6kmhUJmoPjasOFnBziTI8QtNiclI=";
+    hash = "sha256-8b9rFI4iRpBJqeJ2KRJ9vRyv9gYwa9jRWCuXRfA3x50=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/amtk/default.nix b/pkgs/development/libraries/amtk/default.nix
index ab8cbf61741..26f9e757440 100644
--- a/pkgs/development/libraries/amtk/default.nix
+++ b/pkgs/development/libraries/amtk/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "amtk";
-  version = "5.5.1";
+  version = "5.5.2";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "7Ilt0BfiwUNoUuXmCXD80IML0SFI1XzBvcDZOCa925w=";
+    sha256 = "x33S2PVex2tQItmW5RJ82S7GqhePo+jzP1fbukXfiIY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/cjose/default.nix b/pkgs/development/libraries/cjose/default.nix
index 1ce4ba8fe3d..972b3dee441 100644
--- a/pkgs/development/libraries/cjose/default.nix
+++ b/pkgs/development/libraries/cjose/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cjose";
-  version = "0.6.2";
+  version = "0.6.2.1";
 
   src = fetchFromGitHub {
     owner = "zmartzone";
     repo = "cjose";
     rev = "v${version}";
-    sha256 = "sha256-FHKuaf4Gg3On7d3UBbGD8k1gA8kGsCOaWtLMohr5woA=";
+    sha256 = "sha256-QgSO4jFouowDJeUTT4kUEXD+ctQ7JiY/5DkiPyb+Z/I=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config doxygen ];
diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix
index 9ffa5d2a0d7..5344534aec5 100644
--- a/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -8,6 +8,7 @@
 , ninja
 , libxslt
 , gtk3
+, enableBackend ? stdenv.isLinux
 , webkitgtk_4_1
 , json-glib
 , librest_1_0
@@ -33,7 +34,7 @@ stdenv.mkDerivation rec {
   pname = "gnome-online-accounts";
   version = "3.46.0";
 
-  outputs = [ "out" "man" "dev" "devdoc" ];
+  outputs = [ "out" "dev" ] ++ lib.optionals enableBackend [ "man" "devdoc" ];
 
   # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87
   src = fetchFromGitLab {
@@ -46,8 +47,9 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "-Dfedora=false" # not useful in NixOS or for NixOS users.
-    "-Dgtk_doc=true"
-    "-Dman=true"
+    "-Dgoabackend=${lib.boolToString enableBackend}"
+    "-Dgtk_doc=${lib.boolToString enableBackend}"
+    "-Dman=${lib.boolToString enableBackend}"
     "-Dmedia_server=true"
   ];
 
@@ -79,6 +81,7 @@ stdenv.mkDerivation rec {
     libxml2
     libsecret
     libsoup_3
+  ] ++ lib.optionals enableBackend [
     webkitgtk_4_1
   ];
 
@@ -94,7 +97,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Projects/GnomeOnlineAccounts";
     description = "Single sign-on framework for GNOME";
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.lgpl2Plus;
     maintainers = teams.gnome.members;
   };
diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix
index 7a6c7813224..ac4b0b34794 100644
--- a/pkgs/development/libraries/gtk/4.x.nix
+++ b/pkgs/development/libraries/gtk/4.x.nix
@@ -63,7 +63,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gtk4";
-  version = "4.8.1";
+  version = "4.8.2";
 
   outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
   outputBin = "dev";
@@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
-    sha256 = "XOjY3piiO9DI7KGmEJThwAm18AncvWC0XpkKjbG3Qv0=";
+    sha256 = "hbehYLbgLq+k59OPBG+HIPq1N9P+c8AchkMzqYOmkqk=";
   };
 
   depsBuildBuild = [
@@ -179,7 +179,6 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     files=(
-      build-aux/meson/post-install.py
       build-aux/meson/gen-demo-header.py
       demos/gtk-demo/geninclude.py
       gdk/broadway/gen-c-array.py
@@ -191,13 +190,6 @@ stdenv.mkDerivation rec {
     chmod +x ''${files[@]}
     patchShebangs ''${files[@]}
 
-  '' +
-  # Run-time dependency gi-docgen found: NO (tried pkgconfig and cmake)
-  # it should be a build-time dep for build
-  # TODO: send upstream
-  ''
-    substituteInPlace meson.build \
-      --replace "'gi-docgen', ver" "'gi-docgen', native:true, ver"
   '';
 
   preInstall = ''
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index 28ced142caf..d80d7f82bfd 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -7,6 +7,7 @@
 , gettext
 , dbus
 , glib
+, udevSupport ? stdenv.isLinux
 , libgudev
 , udisks2
 , libgcrypt
@@ -72,26 +73,27 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    libgudev
-    udisks2
     libgcrypt
     dbus
     libgphoto2
     avahi
     libarchive
+    libimobiledevice
+    libbluray
+    libnfs
+    openssh
+    gsettings-desktop-schemas
+    libsoup_3
+  ] ++ lib.optionals udevSupport [
+    libgudev
+    udisks2
     fuse3
     libcdio
     samba
     libmtp
     libcap
     polkit
-    libimobiledevice
-    libbluray
     libcdio-paranoia
-    libnfs
-    openssh
-    gsettings-desktop-schemas
-    libsoup_3
   ] ++ lib.optionals gnomeSupport [
     gcr
     glib-networking # TLS support
@@ -103,6 +105,17 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dsystemduserunitdir=${placeholder "out"}/lib/systemd/user"
     "-Dtmpfilesdir=no"
+  ] ++ lib.optionals (!udevSupport) [
+    "-Dgudev=false"
+    "-Dudisks2=false"
+    "-Dfuse=false"
+    "-Dcdda=false"
+    "-Dsmb=false"
+    "-Dmtp=false"
+    "-Dadmin=false"
+    "-Dgphoto2=false"
+    "-Dlibusb=false"
+    "-Dlogind=false"
   ] ++ lib.optionals (!gnomeSupport) [
     "-Dgcr=false"
     "-Dgoa=false"
@@ -128,7 +141,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Virtual Filesystem support library" + optionalString gnomeSupport " (full GNOME support)";
     license = licenses.lgpl2Plus;
-    platforms = platforms.linux;
-    maintainers = [ ] ++ teams.gnome.members;
+    platforms = platforms.unix;
+    maintainers = teams.gnome.members;
   };
 }
diff --git a/pkgs/development/libraries/libshumate/default.nix b/pkgs/development/libraries/libshumate/default.nix
index 2c1f4365b5a..ef56f936dcc 100644
--- a/pkgs/development/libraries/libshumate/default.nix
+++ b/pkgs/development/libraries/libshumate/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libshumate";
-  version = "1.0.1";
+  version = "1.0.2";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "libshumate";
     rev = version;
-    sha256 = "fpHMfxnPnGJSfJe4kJ28+704QjjRwYddOZAB17QxXno=";
+    sha256 = "zmPsWdTbM+T50X0BsVTn1Aw/5N6sL5hIQiRG5WSG1eg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libuninameslist/default.nix b/pkgs/development/libraries/libuninameslist/default.nix
index cd615ed81fe..7915e7b50f6 100644
--- a/pkgs/development/libraries/libuninameslist/default.nix
+++ b/pkgs/development/libraries/libuninameslist/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libuninameslist";
-  version = "20211114";
+  version = "20221022";
 
   src = fetchFromGitHub {
     owner = "fontforge";
     repo = pname;
     rev = version;
-    sha256 = "sha256-izxG2mx+D83s78eL19ERUaLrw9FPjlJRcFZw3+xzLDQ=";
+    sha256 = "sha256-YLlSe2++DpcptuAxLduTYAY2m9D8JSGDcvzijpAv1rU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/re2/default.nix b/pkgs/development/libraries/re2/default.nix
index 2e163a79d59..857da102bb8 100644
--- a/pkgs/development/libraries/re2/default.nix
+++ b/pkgs/development/libraries/re2/default.nix
@@ -1,16 +1,13 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, nix-update-script
-
-# for passthru.tests
-, bazel
+, cmake
+, ninja
 , chromium
 , grpc
 , haskellPackages
 , mercurial
-, ninja
-, python3
+, python3Packages
 }:
 
 stdenv.mkDerivation rec {
@@ -21,48 +18,54 @@ stdenv.mkDerivation rec {
     owner = "google";
     repo = "re2";
     rev = version;
-    sha256 = "sha256-UontAjOXpnPcOgoFHjf+1WSbCR7h58/U7nn4meT200Y=";
+    hash = "sha256-UontAjOXpnPcOgoFHjf+1WSbCR7h58/U7nn4meT200Y=";
   };
 
-  preConfigure = ''
-    substituteInPlace Makefile --replace "/usr/local" "$out"
-    # we're using gnu sed, even on darwin
-    substituteInPlace Makefile  --replace "SED_INPLACE=sed -i '''" "SED_INPLACE=sed -i"
-  '';
+  outputs = [ "out" "dev" ];
 
-  buildFlags = lib.optionals stdenv.hostPlatform.isStatic [ "static" ];
+  nativeBuildInputs = [ cmake ninja ];
 
-  enableParallelBuilding = true;
+  postPatch = ''
+    substituteInPlace re2Config.cmake.in \
+      --replace "\''${PACKAGE_PREFIX_DIR}/" ""
+  '';
 
-  preCheck = "patchShebangs runtests";
-  doCheck = true;
-  checkTarget = if stdenv.hostPlatform.isStatic then "static-test" else "test";
+  # Needed for case-insensitive filesystems (i.e. MacOS) because a file named
+  # BUILD already exists.
+  cmakeBuildDir = "build_dir";
+
+  cmakeFlags = lib.optional (!stdenv.hostPlatform.isStatic) "-DBUILD_SHARED_LIBS:BOOL=ON";
 
-  installTargets = lib.optionals stdenv.hostPlatform.isStatic [ "static-install" ];
+  # This installs a pkg-config definition.
+  postInstall = ''
+    pushd "$src"
+    make common-install prefix="$dev" SED_INPLACE="sed -i"
+    popd
+  '';
 
-  doInstallCheck = true;
-  installCheckTarget = if stdenv.hostPlatform.isStatic then "static-testinstall" else "testinstall";
+  doCheck = true;
 
-  passthru = {
-    updateScript = nix-update-script {
-      attrPath = pname;
-    };
-    tests = {
-      inherit
-        chromium
-        grpc
-        mercurial;
-      inherit (python3.pkgs)
-        fb-re2
-        google-re2;
-      haskellPackages-re2 = haskellPackages.re2;
-    };
+  passthru.tests = {
+    inherit
+      chromium
+      grpc
+      mercurial;
+    inherit (python3Packages)
+      fb-re2
+      google-re2;
+    haskell-re2 = haskellPackages.re2;
   };
 
-  meta = {
+  meta = with lib; {
+    description = "A regular expression library";
+    longDescription = ''
+      RE2 is a fast, safe, thread-friendly alternative to backtracking regular
+      expression engines like those used in PCRE, Perl, and Python. It is a C++
+      library.
+    '';
+    license = licenses.bsd3;
     homepage = "https://github.com/google/re2";
-    description = "An efficient, principled regular expression library";
-    license = lib.licenses.bsd3;
-    platforms = with lib.platforms; all;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/webp-pixbuf-loader/default.nix b/pkgs/development/libraries/webp-pixbuf-loader/default.nix
index 82ce1e4796d..82c2d6a3218 100644
--- a/pkgs/development/libraries/webp-pixbuf-loader/default.nix
+++ b/pkgs/development/libraries/webp-pixbuf-loader/default.nix
@@ -1,9 +1,16 @@
-{ lib, stdenv, fetchFromGitHub
-, meson, ninja, pkg-config, makeWrapper
-, gdk-pixbuf, libwebp
+{ lib
+, stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, makeWrapper
+, gdk-pixbuf
+, libwebp
 }:
+
 let
-  moduleDir = gdk-pixbuf.moduleDir;
+  inherit (gdk-pixbuf) moduleDir;
 
   # turning lib/gdk-pixbuf-#.#/#.#.#/loaders into lib/gdk-pixbuf-#.#/#.#.#/loaders.cache
   # removeSuffix is just in case moduleDir gets a trailing slash
@@ -15,36 +22,47 @@ stdenv.mkDerivation rec {
 
   src = fetchFromGitHub {
     owner = "aruiz";
-    repo = pname;
+    repo = "webp-pixbuf-loader";
     rev = version;
     sha256 = "sha256-dcdydWYrXZJjo4FxJtvzGzrQLOs87/BmxshFZwsT2ws=";
   };
 
-  # It looks for gdk-pixbuf-thumbnailer in this package's bin rather than the gdk-pixbuf bin. We need to patch that.
-  postPatch = ''
-    substituteInPlace webp-pixbuf.thumbnailer.in --replace @bindir@/gdk-pixbuf-thumbnailer $out/bin/webp-thumbnailer
-  '';
+  nativeBuildInputs = [
+    gdk-pixbuf
+    meson
+    ninja
+    pkg-config
+    makeWrapper
+  ];
 
-  nativeBuildInputs = [ gdk-pixbuf meson ninja pkg-config makeWrapper ];
-  buildInputs = [ gdk-pixbuf libwebp ];
+  buildInputs = [
+    gdk-pixbuf
+    libwebp
+  ];
 
   mesonFlags = [
     "-Dgdk_pixbuf_query_loaders_path=${gdk-pixbuf.dev}/bin/gdk-pixbuf-query-loaders"
     "-Dgdk_pixbuf_moduledir=${placeholder "out"}/${moduleDir}"
   ];
 
-  # It assumes gdk-pixbuf-thumbnailer can find the webp loader in the loaders.cache referenced by environment variable, breaking containment.
-  # So we replace it with a wrapped executable.
-  postInstall = ''
-    mkdir -p $out/bin
-    makeWrapper ${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer $out/bin/webp-thumbnailer \
-      --set GDK_PIXBUF_MODULE_FILE $out/${loadersPath}
+  postPatch = ''
+    # It looks for gdk-pixbuf-thumbnailer in this package's bin rather than the gdk-pixbuf bin. We need to patch that.
+    substituteInPlace webp-pixbuf.thumbnailer.in \
+      --replace "@bindir@/gdk-pixbuf-thumbnailer" "$out/bin/webp-thumbnailer"
   '';
 
-  # environment variables controlling loaders.cache generation by gdk-pixbuf-query-loaders
   preInstall = ''
-    export GDK_PIXBUF_MODULE_FILE=$out/${loadersPath}
-    export GDK_PIXBUF_MODULEDIR=$out/${moduleDir}
+    # environment variables controlling loaders.cache generation by gdk-pixbuf-query-loaders
+    export GDK_PIXBUF_MODULE_FILE="$out/${loadersPath}"
+    export GDK_PIXBUF_MODULEDIR="$out/${moduleDir}"
+  '';
+
+  postInstall = ''
+    # It assumes gdk-pixbuf-thumbnailer can find the webp loader in the loaders.cache referenced by environment variable, breaking containment.
+    # So we replace it with a wrapped executable.
+    mkdir -p "$out/bin"
+    makeWrapper "${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer" "$out/bin/webp-thumbnailer" \
+      --set GDK_PIXBUF_MODULE_FILE "$out/${loadersPath}"
   '';
 
   meta = with lib; {
@@ -52,7 +70,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/aruiz/webp-pixbuf-loader";
     license = licenses.lgpl2Plus;
     platforms = platforms.unix;
-    maintainers = [ maintainers.cwyc ];
+    maintainers = teams.gnome.members ++ [ maintainers.cwyc ];
     # meson.build:16:0: ERROR: Program or command 'gcc' not found or not executable
     broken = stdenv.isDarwin;
   };
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
index 5339a0c54cb..5f1b7f3f34d 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
@@ -14,15 +14,17 @@
 , xdg-desktop-portal
 , wayland
 , gnome
+, librsvg
+, webp-pixbuf-loader
 }:
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-gnome";
-  version = "43.0";
+  version = "43.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "DhhnpFvKpd2yQKTP2yLdBVz4fwchC547twlJ88e+FqY=";
+    sha256 = "Ca22bG2RU+bwXfZtqirWKl3g42Zl6dIpUXO7DdxTtM0=";
   };
 
   nativeBuildInputs = [
@@ -47,6 +49,17 @@ stdenv.mkDerivation rec {
     "-Dsystemduserunitdir=${placeholder "out"}/lib/systemd/user"
   ];
 
+  postInstall = ''
+    # Pull in WebP support for gnome-backgrounds.
+    # In postInstall to run before gappsWrapperArgsHook.
+    export GDK_PIXBUF_MODULE_FILE="${gnome._gdkPixbufCacheBuilder_DO_NOT_USE {
+      extraLoaders = [
+        librsvg
+        webp-pixbuf-loader
+      ];
+    }}"
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/pkgs/development/misc/brev-cli/default.nix b/pkgs/development/misc/brev-cli/default.nix
index 1908ca08875..d73a1ac7a2d 100644
--- a/pkgs/development/misc/brev-cli/default.nix
+++ b/pkgs/development/misc/brev-cli/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "brev-cli";
-  version = "0.6.128";
+  version = "0.6.130";
 
   src = fetchFromGitHub {
     owner = "brevdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/B7sb7uheMomdppnpCCzmDP8WpXFpjXYNwLByN5Jtrw=";
+    sha256 = "sha256-sMtMLuf/tpCrMLImrDMvOyk7x3bK3K3flrfrvRnbLmw=";
   };
 
   vendorSha256 = "sha256-cNwfK1LpguRfM/ORebU6v+JLIxDJdT5y+zM3KmEamEw=";
diff --git a/pkgs/development/python-modules/ansible-lint/default.nix b/pkgs/development/python-modules/ansible-lint/default.nix
index a2f58dba048..95d56af4e80 100644
--- a/pkgs/development/python-modules/ansible-lint/default.nix
+++ b/pkgs/development/python-modules/ansible-lint/default.nix
@@ -101,6 +101,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/ansible/ansible-lint";
     description = "Best practices checker for Ansible";
     license = licenses.mit;
-    maintainers = with maintainers; [ sengaya SuperSandro2000 ];
+    maintainers = with maintainers; [ sengaya ];
   };
 }
diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix
index 4ac4f2fcb3c..2dd909a338a 100644
--- a/pkgs/development/python-modules/black/default.nix
+++ b/pkgs/development/python-modules/black/default.nix
@@ -3,12 +3,14 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
-, setuptools-scm
 , pytestCheckHook
 , aiohttp
 , aiohttp-cors
 , click
 , colorama
+, hatch-fancy-pypi-readme
+, hatch-vcs
+, hatchling
 , mypy-extensions
 , pathspec
 , parameterized
@@ -21,16 +23,21 @@
 
 buildPythonPackage rec {
   pname = "black";
-  version = "22.8.0";
+  version = "22.10.0";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-eS9+tUC6mhfoZWU4cB0+sa/LE047RbcfILJcd6jbfm4=";
+    hash = "sha256-9RNYjaWZlD4M3k4yzJh56CXVhyDWVXBi0QmMWtgAgOE=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  nativeBuildInputs = [
+    hatch-fancy-pypi-readme
+    hatch-vcs
+    hatchling
+  ];
 
   # Necessary for the tests to pass on Darwin with sandbox enabled.
   # Black starts a local server and needs to bind a local address.
diff --git a/pkgs/development/python-modules/geventhttpclient/default.nix b/pkgs/development/python-modules/geventhttpclient/default.nix
index 4904a84c2f3..62568eb6f37 100644
--- a/pkgs/development/python-modules/geventhttpclient/default.nix
+++ b/pkgs/development/python-modules/geventhttpclient/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "geventhttpclient";
-  version = "2.0.2";
+  version = "2.0.8";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-gTWoUgCxcN73KT0B3RVXkx/NG+wax4xSrXzt0iNoubo=";
+    hash = "sha256-X3gsQZZD90vk0JGMDStjlW723ceiEn8Hy7gDOnWrNm8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-iam/default.nix b/pkgs/development/python-modules/google-cloud-iam/default.nix
index 8070d76d414..21ca4ff099f 100644
--- a/pkgs/development/python-modules/google-cloud-iam/default.nix
+++ b/pkgs/development/python-modules/google-cloud-iam/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-iam";
-  version = "2.8.2";
+  version = "2.9.0";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-QrMYsuj9BremQGxociZRGIm/4aQRDHC7dRz6uo1PzOI=";
+    sha256 = "sha256-/FPuPDJC+AuRNCtKv7pFrpsOlopPFEV/KggDWulRU8A=";
   };
 
   propagatedBuildInputs = [ google-api-core libcst proto-plus ];
diff --git a/pkgs/development/python-modules/jc/default.nix b/pkgs/development/python-modules/jc/default.nix
index f0c808459d2..9c097335b2c 100644
--- a/pkgs/development/python-modules/jc/default.nix
+++ b/pkgs/development/python-modules/jc/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "jc";
-  version = "1.22.0";
+  version = "1.22.1";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "kellyjonbrazil";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-cRa52rFZlSH0D5u9L7NcWbQGCNdOlRE2koRi8VgVpAo=";
+    sha256 = "sha256-cD+Fzjtj2rqe6zCIBYmBiUGlZTkIvjM+Aw+/gE1bbRY=";
   };
 
   propagatedBuildInputs = [ ruamel-yaml xmltodict pygments ];
diff --git a/pkgs/development/python-modules/oslo-db/default.nix b/pkgs/development/python-modules/oslo-db/default.nix
index 6f50c4cbffb..65d98db529e 100644
--- a/pkgs/development/python-modules/oslo-db/default.nix
+++ b/pkgs/development/python-modules/oslo-db/default.nix
@@ -16,12 +16,12 @@
 
 buildPythonPackage rec {
   pname = "oslo-db";
-  version = "12.1.0";
+  version = "12.2.0";
 
   src = fetchPypi {
     pname = "oslo.db";
     inherit version;
-    sha256 = "sha256-NekFa19t537lMlld8CX6iG4qstxIN4v11vTobdN8v3Y=";
+    sha256 = "sha256-wAA/+oqFjUfbFYIxSWWC9jgFpgqvIg4AlKhVM3MwGuc=";
   };
 
   nativeBuildInputs = [ pbr ];
diff --git a/pkgs/development/python-modules/playwright/default.nix b/pkgs/development/python-modules/playwright/default.nix
index d9adb09e0db..66a249a3d35 100644
--- a/pkgs/development/python-modules/playwright/default.nix
+++ b/pkgs/development/python-modules/playwright/default.nix
@@ -43,7 +43,7 @@ let
       sha256 = {
         x86_64-linux = "0x71b4kb8hlyacixipgfbgjgrbmhckxpbmrs2xk8iis7n5kg7539";
         aarch64-linux = "125lih7g2gj91k7j196wy5a5746wyfr8idj3ng369yh5wl7lfcfv";
-        x86_64-darwin = "sha256-TzprR95KHYBu9SruI4BgwCaqI7KKe3HuzgCO1A5YFiM=";
+        x86_64-darwin = "0z2kww4iby1izkwn6z2ai94y87bkjvwak8awdmjm8sgg00pa9l1a";
         aarch64-darwin = "0qajh4ac5lr1sznb2c471r5c5g2r0dk2pyqz8vhvnbk36r524h1h";
       }.${system} or throwSystem;
     };
@@ -126,8 +126,8 @@ let
       --set FONTCONFIG_FILE ${fontconfig}
   '' + lib.optionalString withFirefox ''
     FIREFOX_REVISION=$(jq -r '.browsers[] | select(.name == "firefox").revision' $BROWSERS_JSON)
-    mkdir -p $out/firefox-$FIREFOX_REVISION
-    ln -s ${firefox}/bin/firefox $out/firefox-$FIREFOX_REVISION/firefox
+    mkdir -p $out/firefox-$FIREFOX_REVISION/firefox
+    ln -s ${firefox}/bin/firefox $out/firefox-$FIREFOX_REVISION/firefox/firefox
   '' + ''
     FFMPEG_REVISION=$(jq -r '.browsers[] | select(.name == "ffmpeg").revision' $BROWSERS_JSON)
     mkdir -p $out/ffmpeg-$FFMPEG_REVISION
diff --git a/pkgs/development/python-modules/policy-sentry/default.nix b/pkgs/development/python-modules/policy-sentry/default.nix
index edb30132c3c..b1aac2f1e17 100644
--- a/pkgs/development/python-modules/policy-sentry/default.nix
+++ b/pkgs/development/python-modules/policy-sentry/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "policy-sentry";
-  version = "0.12.4";
+  version = "0.12.5";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "salesforce";
     repo = "policy_sentry";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-eAydoWalAuhiZs06vU/D1JndxKBZZBsWqEFFbAvvfzA=";
+    sha256 = "sha256-DwWX8ztqnm/KYkiarG9KXkHcVxYE6Cc285oOMz9gkqc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/requests-hawk/default.nix b/pkgs/development/python-modules/requests-hawk/default.nix
index c59cf9cd88a..52790b5f2cc 100644
--- a/pkgs/development/python-modules/requests-hawk/default.nix
+++ b/pkgs/development/python-modules/requests-hawk/default.nix
@@ -13,7 +13,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Hawk authentication strategy for the requests python library.";
-    homepage = "https://github.com/sam-washington/requests-hawk";
+    homepage = "https://github.com/mozilla-services/requests-hawk";
     license = licenses.asl20;
     maintainers = with maintainers; [ austinbutler ];
   };
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/common.nix b/pkgs/development/tools/continuous-integration/woodpecker/common.nix
index 932fa934b1b..d6b337f4892 100644
--- a/pkgs/development/tools/continuous-integration/woodpecker/common.nix
+++ b/pkgs/development/tools/continuous-integration/woodpecker/common.nix
@@ -1,8 +1,8 @@
 { lib, fetchFromGitHub }:
 let
-  version = "0.15.3";
-  srcSha256 = "sha256-HOOH3H2SXLcT2oW/xL80TO+ZSI+Haulnznpb4hlCQow=";
-  yarnSha256 = "sha256-x9g0vSoexfknqLejgcNIigmkFnqYsmhcQNTOStcj68o=";
+  version = "0.15.5";
+  srcSha256 = "yaA2PKw4xuqd8vGXh/GhcJJHw4mJ1z97tWJTREE14ow=";
+  yarnSha256 = "1jpb4gblmknl81f6iclqg8ba82ca931q38xpm0kzki8y5ayk9n67";
 in
 {
   inherit version yarnSha256;
@@ -31,6 +31,6 @@ in
   meta = with lib; {
     homepage = "https://woodpecker-ci.org/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ambroisie ];
+    maintainers = with maintainers; [ ambroisie techknowlogick ];
   };
 }
diff --git a/pkgs/development/tools/datree/default.nix b/pkgs/development/tools/datree/default.nix
index 2552f768dc1..631f03d9c25 100644
--- a/pkgs/development/tools/datree/default.nix
+++ b/pkgs/development/tools/datree/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "datree";
-  version = "1.6.40";
+  version = "1.6.42";
 
   src = fetchFromGitHub {
     owner = "datreeio";
     repo = "datree";
     rev = version;
-    hash = "sha256-UATF7oR7EarfqFvJhwdyz7qMxpwkk9oabk2LB/w6Y3E=";
+    hash = "sha256-4sj+zyFYtG/C6oDuQno/rkyxgdnnvAn9GZ5qvqA+UhA=";
   };
 
   vendorSha256 = "sha256-gjD24nyQ8U1WwhUbq8N4dvzFK74t3as7wWZK7rh9yiw=";
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/3/default.nix
index 97c9786e8fd..97c9786e8fd 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/3/default.nix
diff --git a/pkgs/development/tools/godot/dont_clobber_environment.patch b/pkgs/development/tools/godot/3/dont_clobber_environment.patch
index 74e1241513b..74e1241513b 100644
--- a/pkgs/development/tools/godot/dont_clobber_environment.patch
+++ b/pkgs/development/tools/godot/3/dont_clobber_environment.patch
diff --git a/pkgs/development/tools/godot/export-templates.nix b/pkgs/development/tools/godot/3/export-templates.nix
index 74a78573a98..74a78573a98 100644
--- a/pkgs/development/tools/godot/export-templates.nix
+++ b/pkgs/development/tools/godot/3/export-templates.nix
diff --git a/pkgs/development/tools/godot/headless.nix b/pkgs/development/tools/godot/3/headless.nix
index 3e43a4f27f0..3e43a4f27f0 100644
--- a/pkgs/development/tools/godot/headless.nix
+++ b/pkgs/development/tools/godot/3/headless.nix
diff --git a/pkgs/development/tools/godot/pkg_config_additions.patch b/pkgs/development/tools/godot/3/pkg_config_additions.patch
index 23506a604a9..23506a604a9 100644
--- a/pkgs/development/tools/godot/pkg_config_additions.patch
+++ b/pkgs/development/tools/godot/3/pkg_config_additions.patch
diff --git a/pkgs/development/tools/godot/server.nix b/pkgs/development/tools/godot/3/server.nix
index 06adf1bbfeb..06adf1bbfeb 100644
--- a/pkgs/development/tools/godot/server.nix
+++ b/pkgs/development/tools/godot/3/server.nix
diff --git a/pkgs/development/tools/godot/4/default.nix b/pkgs/development/tools/godot/4/default.nix
new file mode 100644
index 00000000000..177e2448cc3
--- /dev/null
+++ b/pkgs/development/tools/godot/4/default.nix
@@ -0,0 +1,125 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, installShellFiles
+, autoPatchelfHook
+, pkg-config
+, scons
+, vulkan-loader
+, libX11
+, libXcursor
+, libXinerama
+, libXi
+, libXrandr
+, libXext
+, libXfixes
+, libGLU
+, freetype
+, alsa-lib
+, libpulseaudio
+, dbus
+, speechd
+, fontconfig
+, udev
+, withPulseaudio ? false
+, withDbus ? true
+, withSpeechd ? false
+, withFontconfig ? true
+, withUdev ? true
+, withTouch ? true
+}:
+
+let
+  # Options from godot/platform/linuxbsd/detect.py
+  options = {
+    pulseaudio = withPulseaudio;
+    dbus = withDbus; # Use D-Bus to handle screensaver and portal desktop settings
+    speechd = withSpeechd; # Use Speech Dispatcher for Text-to-Speech support
+    fontconfig = withFontconfig; # Use fontconfig for system fonts support
+    udev = withUdev; # Use udev for gamepad connection callbacks
+    touch = withTouch; # Enable touch events
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "godot";
+  version = "4.0-beta3";
+
+  src = fetchFromGitHub {
+    owner = "godotengine";
+    repo = "godot";
+    rev = "01ae26d31befb6679ecd92cd3c73aa5a76162e95";
+    sha256 = "sha256-Q+zMviGevezjcQKJPOm7zAu4liJ5z8Rl73TYmjRR3MY=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    autoPatchelfHook
+    installShellFiles
+  ];
+
+  buildInputs = [
+    scons
+    libGLU
+    libX11
+    libXcursor
+    libXinerama
+    libXi
+    libXrandr
+    libXext
+    libXfixes
+  ]
+  ++ runtimeDependencies
+  # Necessary to make godot see fontconfig.lib and dbus.lib
+  ++ lib.optional withFontconfig fontconfig
+  ++ lib.optional withDbus dbus;
+
+  runtimeDependencies = [
+    vulkan-loader
+    alsa-lib
+  ]
+  ++ lib.optional withPulseaudio libpulseaudio
+  ++ lib.optional withDbus dbus.lib
+  ++ lib.optional withSpeechd speechd
+  ++ lib.optional withFontconfig fontconfig.lib
+  ++ lib.optional withUdev udev;
+
+  patches = [
+    # Godot expects to find xfixes inside xi, but nix's pkg-config only
+    # gives the libs for the requested package (ignoring the propagated-build-inputs)
+    ./xfixes.patch
+  ];
+
+  enableParallelBuilding = true;
+
+  sconsFlags = "platform=linuxbsd target=editor production=true";
+  preConfigure = ''
+    sconsFlags+=" ${
+      lib.concatStringsSep " "
+      (lib.mapAttrsToList (k: v: "${k}=${builtins.toJSON v}") options)
+    }"
+  '';
+
+  outputs = [ "out" "man" ];
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    cp bin/godot.* $out/bin/godot
+
+    installManPage misc/dist/linux/godot.6
+
+    mkdir -p "$out"/share/{applications,icons/hicolor/scalable/apps}
+    cp misc/dist/linux/org.godotengine.Godot.desktop "$out/share/applications/"
+    substituteInPlace "$out/share/applications/org.godotengine.Godot.desktop" \
+      --replace "Exec=godot" "Exec=$out/bin/godot"
+    cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg"
+    cp icon.png "$out/share/icons/godot.png"
+  '';
+
+  meta = with lib; {
+    homepage = "https://godotengine.org";
+    description = "Free and Open Source 2D and 3D game engine";
+    license = licenses.mit;
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = with maintainers; [ twey shiryel ];
+  };
+}
diff --git a/pkgs/development/tools/godot/4/xfixes.patch b/pkgs/development/tools/godot/4/xfixes.patch
new file mode 100644
index 00000000000..b3d0b7aa3cc
--- /dev/null
+++ b/pkgs/development/tools/godot/4/xfixes.patch
@@ -0,0 +1,12 @@
+diff --git a/platform/linuxbsd/detect.py b/platform/linuxbsd/detect.py
+index ac69f3806b..14acbf5c58 100644
+--- a/platform/linuxbsd/detect.py
++++ b/platform/linuxbsd/detect.py
+@@ -191,6 +191,7 @@ def configure(env: "Environment"):
+         env.ParseConfig("pkg-config xrandr --cflags --libs")
+         env.ParseConfig("pkg-config xrender --cflags --libs")
+         env.ParseConfig("pkg-config xi --cflags --libs")
++        env.ParseConfig("pkg-config xfixes --cflags --libs")
+ 
+     if env["touch"]:
+         env.Append(CPPDEFINES=["TOUCH_ENABLED"])
diff --git a/pkgs/development/tools/rust/cargo-llvm-lines/default.nix b/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
index 688347f886b..aaec96bfa8a 100644
--- a/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
+++ b/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-llvm-lines";
-  version = "0.4.18";
+  version = "0.4.19";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    sha256 = "sha256-MQ+T/BwDXPm9xTsujAGrWnIuhJBbij2VaXiRYpNj6ZM=";
+    sha256 = "sha256-W8y7HENOmCqlhgD5r0pT4fIzxKkW/yIpLgkx/3PzvZI=";
   };
 
-  cargoSha256 = "sha256-EeUXRcK/4Xl25Q30RnNNF/eAv4zCu6epwrAorfIu21k=";
+  cargoSha256 = "sha256-TXwxFrEUVK8caw/MXa7vtb4SSjsYTZN2PAf/T4K7qL4=";
 
   meta = with lib; {
     description = "Count the number of lines of LLVM IR across all instantiations of a generic function";
diff --git a/pkgs/development/tools/rust/cargo-update/default.nix b/pkgs/development/tools/rust/cargo-update/default.nix
index 86b914fa33f..ba5c8589241 100644
--- a/pkgs/development/tools/rust/cargo-update/default.nix
+++ b/pkgs/development/tools/rust/cargo-update/default.nix
@@ -15,14 +15,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-update";
-  version = "10.0.1";
+  version = "11.0.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-TerrXrHw5sh4ayaJs0cdSkjR8u0TIVWOSfnbUfnXP4c=";
+    sha256 = "sha256-bqDbMQXzOlNQBVufEwBeH9XOjS3gpacowzHVTwu8XhA=";
   };
 
-  cargoSha256 = "sha256-gURGLXbixgrkEAAqbVM7Qdt1i7t9xtBHBJ4fjQq0fjw=";
+  cargoSha256 = "sha256-oHp4olxnTeVXxhhWqWPBZXRfYZRtzuPfP3rENJAJQMo=";
 
   nativeBuildInputs = [ cmake installShellFiles pkg-config ronn ];