summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--lib/systems/platforms.nix4
-rw-r--r--maintainers/maintainer-list.nix16
-rw-r--r--nixos/modules/config/appstream.nix4
-rw-r--r--nixos/modules/config/fonts/fontdir.nix8
-rw-r--r--nixos/modules/config/locale.nix19
-rw-r--r--nixos/modules/config/nsswitch.nix24
-rw-r--r--nixos/modules/config/pulseaudio.nix26
-rw-r--r--nixos/modules/config/unix-odbc-drivers.nix6
-rw-r--r--nixos/modules/config/xdg/autostart.nix4
-rw-r--r--nixos/modules/config/xdg/icons.nix4
-rw-r--r--nixos/modules/config/xdg/menus.nix4
-rw-r--r--nixos/modules/config/xdg/sounds.nix4
-rw-r--r--nixos/modules/hardware/cpu/intel-sgx.nix14
-rw-r--r--nixos/modules/hardware/ksm.nix4
-rw-r--r--nixos/modules/i18n/input-method/fcitx.nix4
-rw-r--r--nixos/modules/i18n/input-method/ibus.nix6
-rw-r--r--nixos/modules/installer/tools/tools.nix18
-rw-r--r--nixos/modules/misc/man-db.nix4
-rw-r--r--nixos/modules/misc/mandoc.nix8
-rw-r--r--nixos/modules/misc/version.nix16
-rw-r--r--nixos/modules/programs/atop.nix20
-rw-r--r--nixos/modules/programs/bash/bash.nix20
-rw-r--r--nixos/modules/programs/dconf.nix4
-rw-r--r--nixos/modules/programs/fish.nix30
-rw-r--r--nixos/modules/programs/less.nix20
-rw-r--r--nixos/modules/programs/nano.nix6
-rw-r--r--nixos/modules/programs/proxychains.nix34
-rw-r--r--nixos/modules/programs/spacefm.nix10
-rw-r--r--nixos/modules/programs/starship.nix4
-rw-r--r--nixos/modules/security/lock-kernel-modules.nix4
-rw-r--r--nixos/modules/security/polkit.nix8
-rw-r--r--nixos/modules/services/backup/restic.nix11
-rw-r--r--nixos/modules/services/matrix/mautrix-telegram.nix1
-rw-r--r--nixos/modules/system/boot/loader/generations-dir/generations-dir.nix10
-rw-r--r--nixos/modules/system/boot/systemd.nix70
-rw-r--r--nixos/modules/system/boot/systemd/initrd.nix40
-rw-r--r--nixos/modules/system/boot/tmp.nix10
-rw-r--r--nixos/modules/system/etc/etc.nix30
-rw-r--r--nixos/modules/tasks/encrypted-devices.nix14
-rw-r--r--nixos/modules/tasks/snapraid.nix24
-rw-r--r--nixos/modules/tasks/swraid.nix2
-rw-r--r--nixos/modules/virtualisation/anbox.nix12
-rw-r--r--nixos/modules/virtualisation/build-vm.nix8
-rw-r--r--nixos/modules/virtualisation/containers.nix20
-rw-r--r--nixos/modules/virtualisation/digital-ocean-image.nix12
-rw-r--r--nixos/modules/virtualisation/digital-ocean-init.nix8
-rw-r--r--nixos/modules/virtualisation/docker-rootless.nix12
-rw-r--r--nixos/modules/virtualisation/openvswitch.nix8
-rw-r--r--nixos/modules/virtualisation/virtualbox-image.nix28
-rw-r--r--nixos/modules/virtualisation/xen-dom0.nix24
-rw-r--r--nixos/tests/restic.nix9
-rw-r--r--pkgs/applications/editors/poke/default.nix38
-rw-r--r--pkgs/applications/editors/vim/plugins/deprecated.json4
-rw-r--r--pkgs/applications/editors/vim/plugins/generated.nix1020
-rw-r--r--pkgs/applications/editors/vim/plugins/overrides.nix6
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-plugin-names1
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix13
-rw-r--r--pkgs/applications/graphics/pineapple-pictures/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/argocd-autopilot/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/cilium/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kn/default.nix4
-rw-r--r--pkgs/applications/networking/irc/senpai/default.nix6
-rw-r--r--pkgs/applications/video/clapper/default.nix4
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/development/compilers/ghc/9.4.1.nix381
-rw-r--r--pkgs/development/haskell-modules/cabal2nix-unstable.nix6
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix23
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix51
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml8
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml2
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml7
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix11
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1033
-rw-r--r--pkgs/development/libraries/cmark-gfm/default.nix4
-rw-r--r--pkgs/development/tools/just/default.nix6
-rw-r--r--pkgs/games/grapejuice/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/zen-kernels.nix2
-rw-r--r--pkgs/servers/unifi/default.nix4
-rw-r--r--pkgs/tools/admin/kics/default.nix37
-rw-r--r--pkgs/tools/misc/lottieconverter/default.nix42
-rw-r--r--pkgs/tools/networking/bgpq4/default.nix4
-rw-r--r--pkgs/tools/networking/frp/default.nix4
-rw-r--r--pkgs/tools/package-management/deploy-rs/default.nix24
-rw-r--r--pkgs/tools/security/semgrep/common.nix14
-rw-r--r--pkgs/tools/text/hck/default.nix6
-rw-r--r--pkgs/top-level/all-packages.nix6
-rw-r--r--pkgs/top-level/haskell-packages.nix22
87 files changed, 2377 insertions, 1152 deletions
diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix
index d93d292a9fb..41c25484cea 100644
--- a/lib/systems/platforms.nix
+++ b/lib/systems/platforms.nix
@@ -483,8 +483,8 @@ rec {
   };
 
   # can execute on 32bit chip
-  gcc_mips32r2_o32 = { gcc = { arch = "mips32r2"; abi = "o32"; }; };
-  gcc_mips32r6_o32 = { gcc = { arch = "mips32r6"; abi = "o32"; }; };
+  gcc_mips32r2_o32 = { gcc = { arch = "mips32r2"; abi =  "32"; }; };
+  gcc_mips32r6_o32 = { gcc = { arch = "mips32r6"; abi =  "32"; }; };
   gcc_mips64r2_n32 = { gcc = { arch = "mips64r2"; abi = "n32"; }; };
   gcc_mips64r6_n32 = { gcc = { arch = "mips64r6"; abi = "n32"; }; };
   gcc_mips64r2_64  = { gcc = { arch = "mips64r2"; abi =  "64"; }; };
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 802370d286e..455939cc5d2 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -9890,6 +9890,12 @@
       fingerprint = "196A BFEC 6A1D D1EC 7594  F8D1 F625 47D0 75E0 9767";
     }];
   };
+  patryk4815 = {
+    email = "patryk.sondej@gmail.com";
+    github = "patryk4815";
+    githubId = 3074260;
+    name = "Patryk Sondej";
+  };
   patternspandemic = {
     email = "patternspandemic@live.com";
     github = "patternspandemic";
@@ -12714,6 +12720,16 @@
     githubId = 886074;
     name = "Matthieu Coudron";
   };
+  teutat3s = {
+    email = "teutates@mailbox.org";
+    matrix = "@teutat3s:pub.solar";
+    github = "teutat3s";
+    githubId = 10206665;
+    name = "teutat3s";
+    keys = [{
+      fingerprint = "81A1 1C61 F413 8C84 9139  A4FA 18DA E600 A6BB E705";
+    }];
+  };
   tex = {
     email = "milan.svoboda@centrum.cz";
     github = "tex";
diff --git a/nixos/modules/config/appstream.nix b/nixos/modules/config/appstream.nix
index a72215c2f56..5b48f6e1705 100644
--- a/nixos/modules/config/appstream.nix
+++ b/nixos/modules/config/appstream.nix
@@ -6,9 +6,9 @@ with lib;
     appstream.enable = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to install files to support the
-        <link xlink:href="https://www.freedesktop.org/software/appstream/docs/index.html">AppStream metadata specification</link>.
+        [AppStream metadata specification](https://www.freedesktop.org/software/appstream/docs/index.html).
       '';
     };
   };
diff --git a/nixos/modules/config/fonts/fontdir.nix b/nixos/modules/config/fonts/fontdir.nix
index 560918302ca..30e0dfe2566 100644
--- a/nixos/modules/config/fonts/fontdir.nix
+++ b/nixos/modules/config/fonts/fontdir.nix
@@ -30,9 +30,9 @@ in
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to create a directory with links to all fonts in
-          <filename>/run/current-system/sw/share/X11/fonts</filename>.
+          {file}`/run/current-system/sw/share/X11/fonts`.
         '';
       };
 
@@ -40,9 +40,9 @@ in
         type = types.bool;
         default = config.programs.xwayland.enable;
         defaultText = literalExpression "config.programs.xwayland.enable";
-        description = ''
+        description = lib.mdDoc ''
           Whether to decompress fonts in
-          <filename>/run/current-system/sw/share/X11/fonts</filename>.
+          {file}`/run/current-system/sw/share/X11/fonts`.
         '';
       };
 
diff --git a/nixos/modules/config/locale.nix b/nixos/modules/config/locale.nix
index 6f056588187..7716e121c71 100644
--- a/nixos/modules/config/locale.nix
+++ b/nixos/modules/config/locale.nix
@@ -22,9 +22,8 @@ in
         default = null;
         type = timezone;
         example = "America/New_York";
-        description = ''
-          The time zone used when displaying times and dates. See <link
-          xlink:href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones"/>
+        description = lib.mdDoc ''
+          The time zone used when displaying times and dates. See <https://en.wikipedia.org/wiki/List_of_tz_database_time_zones>
           for a comprehensive list of possible values for this setting.
 
           If null, the timezone will default to UTC and can be set imperatively
@@ -35,7 +34,7 @@ in
       hardwareClockInLocalTime = mkOption {
         default = false;
         type = types.bool;
-        description = "If set, keep the hardware clock in local time instead of UTC.";
+        description = lib.mdDoc "If set, keep the hardware clock in local time instead of UTC.";
       };
 
     };
@@ -44,18 +43,18 @@ in
 
       latitude = mkOption {
         type = types.float;
-        description = ''
+        description = lib.mdDoc ''
           Your current latitude, between
-          <literal>-90.0</literal> and <literal>90.0</literal>. Must be provided
+          `-90.0` and `90.0`. Must be provided
           along with longitude.
         '';
       };
 
       longitude = mkOption {
         type = types.float;
-        description = ''
+        description = lib.mdDoc ''
           Your current longitude, between
-          between <literal>-180.0</literal> and <literal>180.0</literal>. Must be
+          between `-180.0` and `180.0`. Must be
           provided along with latitude.
         '';
       };
@@ -63,9 +62,9 @@ in
       provider = mkOption {
         type = types.enum [ "manual" "geoclue2" ];
         default = "manual";
-        description = ''
+        description = lib.mdDoc ''
           The location provider to use for determining your location. If set to
-          <literal>manual</literal> you must also provide latitude/longitude.
+          `manual` you must also provide latitude/longitude.
         '';
       };
 
diff --git a/nixos/modules/config/nsswitch.nix b/nixos/modules/config/nsswitch.nix
index e494ff5f74d..b004072813b 100644
--- a/nixos/modules/config/nsswitch.nix
+++ b/nixos/modules/config/nsswitch.nix
@@ -13,10 +13,10 @@ with lib;
       type = types.listOf types.path;
       internal = true;
       default = [];
-      description = ''
+      description = lib.mdDoc ''
         Search path for NSS (Name Service Switch) modules.  This allows
         several DNS resolution methods to be specified via
-        <filename>/etc/nsswitch.conf</filename>.
+        {file}`/etc/nsswitch.conf`.
       '';
       apply = list:
         {
@@ -28,8 +28,8 @@ with lib;
     system.nssDatabases = {
       passwd = mkOption {
         type = types.listOf types.str;
-        description = ''
-          List of passwd entries to configure in <filename>/etc/nsswitch.conf</filename>.
+        description = lib.mdDoc ''
+          List of passwd entries to configure in {file}`/etc/nsswitch.conf`.
 
           Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
 
@@ -40,8 +40,8 @@ with lib;
 
       group = mkOption {
         type = types.listOf types.str;
-        description = ''
-          List of group entries to configure in <filename>/etc/nsswitch.conf</filename>.
+        description = lib.mdDoc ''
+          List of group entries to configure in {file}`/etc/nsswitch.conf`.
 
           Note that "files" is always prepended while "systemd" is appended if nscd is enabled.
 
@@ -52,8 +52,8 @@ with lib;
 
       shadow = mkOption {
         type = types.listOf types.str;
-        description = ''
-          List of shadow entries to configure in <filename>/etc/nsswitch.conf</filename>.
+        description = lib.mdDoc ''
+          List of shadow entries to configure in {file}`/etc/nsswitch.conf`.
 
           Note that "files" is always prepended.
 
@@ -64,8 +64,8 @@ with lib;
 
       hosts = mkOption {
         type = types.listOf types.str;
-        description = ''
-          List of hosts entries to configure in <filename>/etc/nsswitch.conf</filename>.
+        description = lib.mdDoc ''
+          List of hosts entries to configure in {file}`/etc/nsswitch.conf`.
 
           Note that "files" is always prepended, and "dns" and "myhostname" are always appended.
 
@@ -76,8 +76,8 @@ with lib;
 
       services = mkOption {
         type = types.listOf types.str;
-        description = ''
-          List of services entries to configure in <filename>/etc/nsswitch.conf</filename>.
+        description = lib.mdDoc ''
+          List of services entries to configure in {file}`/etc/nsswitch.conf`.
 
           Note that "files" is always prepended.
 
diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix
index 01555d28b73..aa3ca549f09 100644
--- a/nixos/modules/config/pulseaudio.nix
+++ b/nixos/modules/config/pulseaudio.nix
@@ -89,7 +89,7 @@ in {
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to enable the PulseAudio sound server.
         '';
       };
@@ -97,7 +97,7 @@ in {
       systemWide = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           If false, a PulseAudio server is launched automatically for
           each user that tries to use the sound system. The server runs
           with user privileges. If true, one system-wide PulseAudio
@@ -112,7 +112,7 @@ in {
       support32Bit = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to include the 32-bit pulseaudio libraries in the system or not.
           This is only useful on 64-bit systems and currently limited to x86_64-linux.
         '';
@@ -120,7 +120,7 @@ in {
 
       configFile = mkOption {
         type = types.nullOr types.path;
-        description = ''
+        description = lib.mdDoc ''
           The path to the default configuration options the PulseAudio server
           should use. By default, the "default.pa" configuration
           from the PulseAudio distribution is used.
@@ -130,8 +130,8 @@ in {
       extraConfig = mkOption {
         type = types.lines;
         default = "";
-        description = ''
-          Literal string to append to <literal>configFile</literal>
+        description = lib.mdDoc ''
+          Literal string to append to `configFile`
           and the config file generated by the pulseaudio module.
         '';
       };
@@ -139,7 +139,7 @@ in {
       extraClientConf = mkOption {
         type = types.lines;
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Extra configuration appended to pulse/client.conf file.
         '';
       };
@@ -151,10 +151,10 @@ in {
                   else pkgs.pulseaudio;
         defaultText = literalExpression "pkgs.pulseaudio";
         example = literalExpression "pkgs.pulseaudioFull";
-        description = ''
+        description = lib.mdDoc ''
           The PulseAudio derivation to use.  This can be used to enable
           features (such as JACK support, Bluetooth) via the
-          <literal>pulseaudioFull</literal> package.
+          `pulseaudioFull` package.
         '';
       };
 
@@ -162,7 +162,7 @@ in {
         type = types.listOf types.package;
         default = [];
         example = literalExpression "[ pkgs.pulseaudio-modules-bt ]";
-        description = ''
+        description = lib.mdDoc ''
           Extra pulseaudio modules to use. This is intended for out-of-tree
           pulseaudio modules like extra bluetooth codecs.
 
@@ -174,7 +174,7 @@ in {
         logLevel = mkOption {
           type = types.str;
           default = "notice";
-          description = ''
+          description = lib.mdDoc ''
             The log level that the system-wide pulseaudio daemon should use,
             if activated.
           '';
@@ -183,7 +183,7 @@ in {
         config = mkOption {
           type = types.attrsOf types.unspecified;
           default = {};
-          description = "Config of the pulse daemon. See <literal>man pulse-daemon.conf</literal>.";
+          description = lib.mdDoc "Config of the pulse daemon. See `man pulse-daemon.conf`.";
           example = literalExpression ''{ realtime-scheduling = "yes"; }'';
         };
       };
@@ -205,7 +205,7 @@ in {
             type = types.listOf types.str;
             default = [];
             example = literalExpression ''[ "127.0.0.1" "192.168.1.0/24" ]'';
-            description = ''
+            description = lib.mdDoc ''
               A list of IP subnets that are allowed to stream to the server.
             '';
           };
diff --git a/nixos/modules/config/unix-odbc-drivers.nix b/nixos/modules/config/unix-odbc-drivers.nix
index 055c3b2364e..7bd3fa1600b 100644
--- a/nixos/modules/config/unix-odbc-drivers.nix
+++ b/nixos/modules/config/unix-odbc-drivers.nix
@@ -20,10 +20,10 @@ in {
       type = types.listOf types.package;
       default = [];
       example = literalExpression "with pkgs.unixODBCDrivers; [ sqlite psql ]";
-      description = ''
+      description = lib.mdDoc ''
         Specifies Unix ODBC drivers to be registered in
-        <filename>/etc/odbcinst.ini</filename>.  You may also want to
-        add <literal>pkgs.unixODBC</literal> to the system path to get
+        {file}`/etc/odbcinst.ini`.  You may also want to
+        add `pkgs.unixODBC` to the system path to get
         a command line client to connect to ODBC databases.
       '';
     };
diff --git a/nixos/modules/config/xdg/autostart.nix b/nixos/modules/config/xdg/autostart.nix
index 40984cb5ec5..a4fdbda911a 100644
--- a/nixos/modules/config/xdg/autostart.nix
+++ b/nixos/modules/config/xdg/autostart.nix
@@ -10,9 +10,9 @@ with lib;
     xdg.autostart.enable = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to install files to support the
-        <link xlink:href="https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html">XDG Autostart specification</link>.
+        [XDG Autostart specification](https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html).
       '';
     };
   };
diff --git a/nixos/modules/config/xdg/icons.nix b/nixos/modules/config/xdg/icons.nix
index 1e91670cf03..8d44a431445 100644
--- a/nixos/modules/config/xdg/icons.nix
+++ b/nixos/modules/config/xdg/icons.nix
@@ -10,9 +10,9 @@ with lib;
     xdg.icons.enable = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to install files to support the
-        <link xlink:href="https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html">XDG Icon Theme specification</link>.
+        [XDG Icon Theme specification](https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html).
       '';
     };
   };
diff --git a/nixos/modules/config/xdg/menus.nix b/nixos/modules/config/xdg/menus.nix
index 6735a7a5c43..b8f829e8154 100644
--- a/nixos/modules/config/xdg/menus.nix
+++ b/nixos/modules/config/xdg/menus.nix
@@ -10,9 +10,9 @@ with lib;
     xdg.menus.enable = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to install files to support the
-        <link xlink:href="https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html">XDG Desktop Menu specification</link>.
+        [XDG Desktop Menu specification](https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html).
       '';
     };
   };
diff --git a/nixos/modules/config/xdg/sounds.nix b/nixos/modules/config/xdg/sounds.nix
index 0b94f550929..713d68131fc 100644
--- a/nixos/modules/config/xdg/sounds.nix
+++ b/nixos/modules/config/xdg/sounds.nix
@@ -10,9 +10,9 @@ with lib;
     xdg.sounds.enable = mkOption {
       type = types.bool;
       default = true;
-      description = ''
+      description = lib.mdDoc ''
         Whether to install files to support the
-        <link xlink:href="https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/">XDG Sound Theme specification</link>.
+        [XDG Sound Theme specification](https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/).
       '';
     };
   };
diff --git a/nixos/modules/hardware/cpu/intel-sgx.nix b/nixos/modules/hardware/cpu/intel-sgx.nix
index 1355ee753f0..76664133a08 100644
--- a/nixos/modules/hardware/cpu/intel-sgx.nix
+++ b/nixos/modules/hardware/cpu/intel-sgx.nix
@@ -6,13 +6,13 @@ let
 in
 {
   options.hardware.cpu.intel.sgx.enableDcapCompat = mkOption {
-    description = ''
+    description = lib.mdDoc ''
       Whether to enable backward compatibility for SGX software build for the
       out-of-tree Intel SGX DCAP driver.
 
-      Creates symbolic links for the SGX devices <literal>/dev/sgx_enclave</literal>
-      and <literal>/dev/sgx_provision</literal> to make them available as
-      <literal>/dev/sgx/enclave</literal>  and <literal>/dev/sgx/provision</literal>,
+      Creates symbolic links for the SGX devices `/dev/sgx_enclave`
+      and `/dev/sgx_provision` to make them available as
+      `/dev/sgx/enclave`  and `/dev/sgx/provision`,
       respectively.
     '';
     type = types.bool;
@@ -22,17 +22,17 @@ in
   options.hardware.cpu.intel.sgx.provision = {
     enable = mkEnableOption "access to the Intel SGX provisioning device";
     user = mkOption {
-      description = "Owner to assign to the SGX provisioning device.";
+      description = lib.mdDoc "Owner to assign to the SGX provisioning device.";
       type = types.str;
       default = "root";
     };
     group = mkOption {
-      description = "Group to assign to the SGX provisioning device.";
+      description = lib.mdDoc "Group to assign to the SGX provisioning device.";
       type = types.str;
       default = defaultPrvGroup;
     };
     mode = mkOption {
-      description = "Mode to set for the SGX provisioning device.";
+      description = lib.mdDoc "Mode to set for the SGX provisioning device.";
       type = types.str;
       default = "0660";
     };
diff --git a/nixos/modules/hardware/ksm.nix b/nixos/modules/hardware/ksm.nix
index 829c3532c45..ba7a1c12169 100644
--- a/nixos/modules/hardware/ksm.nix
+++ b/nixos/modules/hardware/ksm.nix
@@ -15,9 +15,9 @@ in {
     sleep = mkOption {
       type = types.nullOr types.int;
       default = null;
-      description = ''
+      description = lib.mdDoc ''
         How many milliseconds ksmd should sleep between scans.
-        Setting it to <literal>null</literal> uses the kernel's default time.
+        Setting it to `null` uses the kernel's default time.
       '';
     };
   };
diff --git a/nixos/modules/i18n/input-method/fcitx.nix b/nixos/modules/i18n/input-method/fcitx.nix
index 7738581b893..043ec3d55c1 100644
--- a/nixos/modules/i18n/input-method/fcitx.nix
+++ b/nixos/modules/i18n/input-method/fcitx.nix
@@ -22,9 +22,9 @@ in
           let
             enginesDrv = filterAttrs (const isDerivation) pkgs.fcitx-engines;
             engines = concatStringsSep ", "
-              (map (name: "<literal>${name}</literal>") (attrNames enginesDrv));
+              (map (name: "`${name}`") (attrNames enginesDrv));
           in
-            "Enabled Fcitx engines. Available engines are: ${engines}.";
+            lib.mdDoc "Enabled Fcitx engines. Available engines are: ${engines}.";
       };
     };
 
diff --git a/nixos/modules/i18n/input-method/ibus.nix b/nixos/modules/i18n/input-method/ibus.nix
index 907f6451fce..520db128acd 100644
--- a/nixos/modules/i18n/input-method/ibus.nix
+++ b/nixos/modules/i18n/input-method/ibus.nix
@@ -43,15 +43,15 @@ in
           let
             enginesDrv = filterAttrs (const isDerivation) pkgs.ibus-engines;
             engines = concatStringsSep ", "
-              (map (name: "<literal>${name}</literal>") (attrNames enginesDrv));
+              (map (name: "`${name}`") (attrNames enginesDrv));
           in
-            "Enabled IBus engines. Available engines are: ${engines}.";
+            lib.mdDoc "Enabled IBus engines. Available engines are: ${engines}.";
       };
       panel = mkOption {
         type = with types; nullOr path;
         default = null;
         example = literalExpression ''"''${pkgs.plasma5Packages.plasma-desktop}/lib/libexec/kimpanel-ibus-panel"'';
-        description = "Replace the IBus panel with another panel.";
+        description = lib.mdDoc "Replace the IBus panel with another panel.";
       };
     };
   };
diff --git a/nixos/modules/installer/tools/tools.nix b/nixos/modules/installer/tools/tools.nix
index 8719a509d64..4490ad84e14 100644
--- a/nixos/modules/installer/tools/tools.nix
+++ b/nixos/modules/installer/tools/tools.nix
@@ -75,15 +75,15 @@ in
     configuration = mkOption {
       internal = true;
       type = types.str;
-      description = ''
-        The NixOS module that <literal>nixos-generate-config</literal>
-        saves to <literal>/etc/nixos/configuration.nix</literal>.
+      description = lib.mdDoc ''
+        The NixOS module that `nixos-generate-config`
+        saves to `/etc/nixos/configuration.nix`.
 
         This is an internal option. No backward compatibility is guaranteed.
         Use at your own risk!
 
         Note that this string gets spliced into a Perl script. The perl
-        variable <literal>$bootLoaderConfig</literal> can be used to
+        variable `$bootLoaderConfig` can be used to
         splice in the boot loader configuration.
       '';
     };
@@ -92,15 +92,15 @@ in
       internal = true;
       type = types.listOf types.lines;
       default = [];
-      description = ''
-        Text to preseed the desktop configuration that <literal>nixos-generate-config</literal>
-        saves to <literal>/etc/nixos/configuration.nix</literal>.
+      description = lib.mdDoc ''
+        Text to preseed the desktop configuration that `nixos-generate-config`
+        saves to `/etc/nixos/configuration.nix`.
 
         This is an internal option. No backward compatibility is guaranteed.
         Use at your own risk!
 
         Note that this string gets spliced into a Perl script. The perl
-        variable <literal>$bootLoaderConfig</literal> can be used to
+        variable `$bootLoaderConfig` can be used to
         splice in the boot loader configuration.
       '';
     };
@@ -110,7 +110,7 @@ in
     internal = true;
     type = types.bool;
     default = false;
-    description = ''
+    description = lib.mdDoc ''
       Disable nixos-rebuild, nixos-generate-config, nixos-installer
       and other NixOS tools. This is useful to shrink embedded,
       read-only systems which are not expected to be rebuild or
diff --git a/nixos/modules/misc/man-db.nix b/nixos/modules/misc/man-db.nix
index 7aeb02d883a..d267ad12564 100644
--- a/nixos/modules/misc/man-db.nix
+++ b/nixos/modules/misc/man-db.nix
@@ -36,8 +36,8 @@ in
         type = lib.types.package;
         default = pkgs.man-db;
         defaultText = lib.literalExpression "pkgs.man-db";
-        description = ''
-          The <literal>man-db</literal> derivation to use. Useful to override
+        description = lib.mdDoc ''
+          The `man-db` derivation to use. Useful to override
           configuration options used for the package.
         '';
       };
diff --git a/nixos/modules/misc/mandoc.nix b/nixos/modules/misc/mandoc.nix
index 838f2087656..d67c42bff6a 100644
--- a/nixos/modules/misc/mandoc.nix
+++ b/nixos/modules/misc/mandoc.nix
@@ -16,9 +16,9 @@ in {
         type = with lib.types; listOf str;
         default = [ "share/man" ];
         example = lib.literalExpression "[ \"share/man\" \"share/man/fr\" ]";
-        description = ''
+        description = lib.mdDoc ''
           Change the manpath, i. e. the directories where
-          <citerefentry><refentrytitle>man</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+          {manpage}`man(1)`
           looks for section-specific directories of man pages.
           You only need to change this setting if you want extra man pages
           (e. g. in non-english languages). All values must be strings that
@@ -31,8 +31,8 @@ in {
         type = lib.types.package;
         default = pkgs.mandoc;
         defaultText = lib.literalExpression "pkgs.mandoc";
-        description = ''
-          The <literal>mandoc</literal> derivation to use. Useful to override
+        description = lib.mdDoc ''
+          The `mandoc` derivation to use. Useful to override
           configuration options used for the package.
         '';
       };
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix
index da458a57484..bdc3e5623be 100644
--- a/nixos/modules/misc/version.nix
+++ b/nixos/modules/misc/version.nix
@@ -49,42 +49,42 @@ in
     nixos.version = mkOption {
       internal = true;
       type = types.str;
-      description = "The full NixOS version (e.g. <literal>16.03.1160.f2d4ee1</literal>).";
+      description = lib.mdDoc "The full NixOS version (e.g. `16.03.1160.f2d4ee1`).";
     };
 
     nixos.release = mkOption {
       readOnly = true;
       type = types.str;
       default = trivial.release;
-      description = "The NixOS release (e.g. <literal>16.03</literal>).";
+      description = lib.mdDoc "The NixOS release (e.g. `16.03`).";
     };
 
     nixos.versionSuffix = mkOption {
       internal = true;
       type = types.str;
       default = trivial.versionSuffix;
-      description = "The NixOS version suffix (e.g. <literal>1160.f2d4ee1</literal>).";
+      description = lib.mdDoc "The NixOS version suffix (e.g. `1160.f2d4ee1`).";
     };
 
     nixos.revision = mkOption {
       internal = true;
       type = types.nullOr types.str;
       default = trivial.revisionWithDefault null;
-      description = "The Git revision from which this NixOS configuration was built.";
+      description = lib.mdDoc "The Git revision from which this NixOS configuration was built.";
     };
 
     nixos.codeName = mkOption {
       readOnly = true;
       type = types.str;
       default = trivial.codeName;
-      description = "The NixOS release code name (e.g. <literal>Emu</literal>).";
+      description = lib.mdDoc "The NixOS release code name (e.g. `Emu`).";
     };
 
     stateVersion = mkOption {
       type = types.str;
       default = cfg.release;
       defaultText = literalExpression "config.${opt.release}";
-      description = ''
+      description = lib.mdDoc ''
         Every once in a while, a new NixOS release may change
         configuration defaults in a way incompatible with stateful
         data. For instance, if the default version of PostgreSQL
@@ -108,13 +108,13 @@ in
       internal = true;
       type = types.str;
       default = "https://nixos.org/channels/nixos-unstable";
-      description = "Default NixOS channel to which the root user is subscribed.";
+      description = lib.mdDoc "Default NixOS channel to which the root user is subscribed.";
     };
 
     configurationRevision = mkOption {
       type = types.nullOr types.str;
       default = null;
-      description = "The Git revision of the top-level flake from which this configuration was built.";
+      description = lib.mdDoc "The Git revision of the top-level flake from which this configuration was built.";
     };
 
   };
diff --git a/nixos/modules/programs/atop.nix b/nixos/modules/programs/atop.nix
index a31078a891a..a0763d2dcf6 100644
--- a/nixos/modules/programs/atop.nix
+++ b/nixos/modules/programs/atop.nix
@@ -20,7 +20,7 @@ in
         type = types.package;
         default = pkgs.atop;
         defaultText = literalExpression "pkgs.atop";
-        description = ''
+        description = lib.mdDoc ''
           Which package to use for Atop.
         '';
       };
@@ -29,7 +29,7 @@ in
         enable = mkOption {
           type = types.bool;
           default = false;
-          description = ''
+          description = lib.mdDoc ''
             Whether to install and enable the netatop kernel module.
             Note: this sets the kernel taint flag "O" for loading out-of-tree modules.
           '';
@@ -38,7 +38,7 @@ in
           type = types.package;
           default = config.boot.kernelPackages.netatop;
           defaultText = literalExpression "config.boot.kernelPackages.netatop";
-          description = ''
+          description = lib.mdDoc ''
             Which package to use for netatop.
           '';
         };
@@ -47,7 +47,7 @@ in
       atopgpu.enable = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to install and enable the atopgpud daemon to get information about
           NVIDIA gpus.
         '';
@@ -56,7 +56,7 @@ in
       setuidWrapper.enable = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to install a setuid wrapper for Atop. This is required to use some of
           the features as non-root user (e.g.: ipc information, netatop, atopgpu).
           Atop tries to drop the root privileges shortly after starting.
@@ -66,7 +66,7 @@ in
       atopService.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether to enable the atop service responsible for storing statistics for
           long-term analysis.
         '';
@@ -74,7 +74,7 @@ in
       atopRotateTimer.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether to enable the atop-rotate timer, which restarts the atop service
           daily to make sure the data files are rotate.
         '';
@@ -82,7 +82,7 @@ in
       atopacctService.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether to enable the atopacct service which manages process accounting.
           This allows Atop to gather data about processes that disappeared in between
           two refresh intervals.
@@ -95,8 +95,8 @@ in
           flags = "a1f";
           interval = 5;
         };
-        description = ''
-          Parameters to be written to <filename>/etc/atoprc</filename>.
+        description = lib.mdDoc ''
+          Parameters to be written to {file}`/etc/atoprc`.
         '';
       };
     };
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 7281126979e..249e99ddc47 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -30,10 +30,10 @@ in
       /*
       enable = mkOption {
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whenever to configure Bash as an interactive shell.
           Note that this tries to make Bash the default
-          <option>users.defaultUserShell</option>,
+          {option}`users.defaultUserShell`,
           which in turn means that you might need to explicitly
           set this variable if you have another shell configured
           with NixOS.
@@ -44,16 +44,16 @@ in
 
       shellAliases = mkOption {
         default = {};
-        description = ''
-          Set of aliases for bash shell, which overrides <option>environment.shellAliases</option>.
-          See <option>environment.shellAliases</option> for an option format description.
+        description = lib.mdDoc ''
+          Set of aliases for bash shell, which overrides {option}`environment.shellAliases`.
+          See {option}`environment.shellAliases` for an option format description.
         '';
         type = with types; attrsOf (nullOr (either str path));
       };
 
       shellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during bash shell initialisation.
         '';
         type = types.lines;
@@ -61,7 +61,7 @@ in
 
       loginShellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during login bash shell initialisation.
         '';
         type = types.lines;
@@ -69,7 +69,7 @@ in
 
       interactiveShellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during interactive bash shell initialisation.
         '';
         type = types.lines;
@@ -92,7 +92,7 @@ in
             fi
           fi
         '';
-        description = ''
+        description = lib.mdDoc ''
           Shell script code used to initialise the bash prompt.
         '';
         type = types.lines;
@@ -100,7 +100,7 @@ in
 
       promptPluginInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code used to initialise bash prompt plugins.
         '';
         type = types.lines;
diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix
index 265c41cbbbc..b5ef42a3b72 100644
--- a/nixos/modules/programs/dconf.nix
+++ b/nixos/modules/programs/dconf.nix
@@ -33,14 +33,14 @@ in
       profiles = mkOption {
         type = types.attrsOf types.path;
         default = {};
-        description = "Set of dconf profile files, installed at <filename>/etc/dconf/profiles/<replaceable>name</replaceable></filename>.";
+        description = lib.mdDoc "Set of dconf profile files, installed at {file}`/etc/dconf/profiles/«name»`.";
         internal = true;
       };
 
       packages = mkOption {
         type = types.listOf types.package;
         default = [];
-        description = "A list of packages which provide dconf profiles and databases in <filename>/etc/dconf</filename>.";
+        description = lib.mdDoc "A list of packages which provide dconf profiles and databases in {file}`/etc/dconf`.";
       };
     };
   };
diff --git a/nixos/modules/programs/fish.nix b/nixos/modules/programs/fish.nix
index 8dd7101947f..357105c3e79 100644
--- a/nixos/modules/programs/fish.nix
+++ b/nixos/modules/programs/fish.nix
@@ -49,7 +49,7 @@ in
 
       enable = mkOption {
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Whether to configure fish as an interactive shell.
         '';
         type = types.bool;
@@ -58,16 +58,16 @@ in
       useBabelfish = mkOption {
         type = types.bool;
         default = false;
-        description = ''
-          If enabled, the configured environment will be translated to native fish using <link xlink:href="https://github.com/bouk/babelfish">babelfish</link>.
-          Otherwise, <link xlink:href="https://github.com/oh-my-fish/plugin-foreign-env">foreign-env</link> will be used.
+        description = lib.mdDoc ''
+          If enabled, the configured environment will be translated to native fish using [babelfish](https://github.com/bouk/babelfish).
+          Otherwise, [foreign-env](https://github.com/oh-my-fish/plugin-foreign-env) will be used.
         '';
       };
 
       vendor.config.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether fish should source configuration snippets provided by other packages.
         '';
       };
@@ -75,7 +75,7 @@ in
       vendor.completions.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether fish should use completion files provided by other packages.
         '';
       };
@@ -83,7 +83,7 @@ in
       vendor.functions.enable = mkOption {
         type = types.bool;
         default = true;
-        description = ''
+        description = lib.mdDoc ''
           Whether fish should autoload fish functions provided by other packages.
         '';
       };
@@ -94,7 +94,7 @@ in
           gco = "git checkout";
           npu = "nix-prefetch-url";
         };
-        description = ''
+        description = lib.mdDoc ''
           Set of fish abbreviations.
         '';
         type = with types; attrsOf str;
@@ -102,16 +102,16 @@ in
 
       shellAliases = mkOption {
         default = {};
-        description = ''
-          Set of aliases for fish shell, which overrides <option>environment.shellAliases</option>.
-          See <option>environment.shellAliases</option> for an option format description.
+        description = lib.mdDoc ''
+          Set of aliases for fish shell, which overrides {option}`environment.shellAliases`.
+          See {option}`environment.shellAliases` for an option format description.
         '';
         type = with types; attrsOf (nullOr (either str path));
       };
 
       shellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during fish shell initialisation.
         '';
         type = types.lines;
@@ -119,7 +119,7 @@ in
 
       loginShellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during fish login shell initialisation.
         '';
         type = types.lines;
@@ -127,7 +127,7 @@ in
 
       interactiveShellInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code called during interactive fish shell initialisation.
         '';
         type = types.lines;
@@ -135,7 +135,7 @@ in
 
       promptInit = mkOption {
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           Shell script code used to initialise fish prompt.
         '';
         type = types.lines;
diff --git a/nixos/modules/programs/less.nix b/nixos/modules/programs/less.nix
index 794146b19fa..9f2d5d91581 100644
--- a/nixos/modules/programs/less.nix
+++ b/nixos/modules/programs/less.nix
@@ -41,12 +41,12 @@ in
         type = types.nullOr types.path;
         default = null;
         example = literalExpression ''"''${pkgs.my-configs}/lesskey"'';
-        description = ''
+        description = lib.mdDoc ''
           Path to lesskey configuration file.
 
-          <option>configFile</option> takes precedence over <option>commands</option>,
-          <option>clearDefaultCommands</option>, <option>lineEditingKeys</option>, and
-          <option>envVariables</option>.
+          {option}`configFile` takes precedence over {option}`commands`,
+          {option}`clearDefaultCommands`, {option}`lineEditingKeys`, and
+          {option}`envVariables`.
         '';
       };
 
@@ -57,13 +57,13 @@ in
           h = "noaction 5\\e(";
           l = "noaction 5\\e)";
         };
-        description = "Defines new command keys.";
+        description = lib.mdDoc "Defines new command keys.";
       };
 
       clearDefaultCommands = mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           Clear all default commands.
           You should remember to set the quit key.
           Otherwise you will not be able to leave less without killing it.
@@ -76,7 +76,7 @@ in
         example = {
           e = "abort";
         };
-        description = "Defines new line-editing keys.";
+        description = lib.mdDoc "Defines new line-editing keys.";
       };
 
       envVariables = mkOption {
@@ -87,14 +87,14 @@ in
         example = {
           LESS = "--quit-if-one-screen";
         };
-        description = "Defines environment variables.";
+        description = lib.mdDoc "Defines environment variables.";
       };
 
       lessopen = mkOption {
         type = types.nullOr types.str;
         default = "|${pkgs.lesspipe}/bin/lesspipe.sh %s";
         defaultText = literalExpression ''"|''${pkgs.lesspipe}/bin/lesspipe.sh %s"'';
-        description = ''
+        description = lib.mdDoc ''
           Before less opens a file, it first gives your input preprocessor a chance to modify the way the contents of the file are displayed.
         '';
       };
@@ -102,7 +102,7 @@ in
       lessclose = mkOption {
         type = types.nullOr types.str;
         default = null;
-        description = ''
+        description = lib.mdDoc ''
           When less closes a file opened in such a way, it will call another program, called the input postprocessor, which may  perform  any  desired  clean-up  action (such  as deleting the replacement file created by LESSOPEN).
         '';
       };
diff --git a/nixos/modules/programs/nano.nix b/nixos/modules/programs/nano.nix
index 5837dd46d7c..16bab620d6e 100644
--- a/nixos/modules/programs/nano.nix
+++ b/nixos/modules/programs/nano.nix
@@ -14,9 +14,9 @@ in
       nanorc = lib.mkOption {
         type = lib.types.lines;
         default = "";
-        description = ''
+        description = lib.mdDoc ''
           The system-wide nano configuration.
-          See <citerefentry><refentrytitle>nanorc</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+          See {manpage}`nanorc(5)`.
         '';
         example = ''
           set nowrap
@@ -27,7 +27,7 @@ in
       syntaxHighlight = lib.mkOption {
         type = lib.types.bool;
         default = true;
-        description = "Whether to enable syntax highlight for various languages.";
+        description = lib.mdDoc "Whether to enable syntax highlight for various languages.";
       };
     };
   };
diff --git a/nixos/modules/programs/proxychains.nix b/nixos/modules/programs/proxychains.nix
index 3f44e23a93e..5d932b2d842 100644
--- a/nixos/modules/programs/proxychains.nix
+++ b/nixos/modules/programs/proxychains.nix
@@ -26,17 +26,17 @@ let
 
       type = mkOption {
         type = types.enum [ "http" "socks4" "socks5" ];
-        description = "Proxy type.";
+        description = lib.mdDoc "Proxy type.";
       };
 
       host = mkOption {
         type = types.str;
-        description = "Proxy host or IP address.";
+        description = lib.mdDoc "Proxy host or IP address.";
       };
 
       port = mkOption {
         type = types.port;
-        description = "Proxy port";
+        description = lib.mdDoc "Proxy port";
       };
     };
   };
@@ -55,26 +55,26 @@ in {
         type = mkOption {
           type = types.enum [ "dynamic" "strict" "random" ];
           default = "strict";
-          description = ''
-            <literal>dynamic</literal> - Each connection will be done via chained proxies
+          description = lib.mdDoc ''
+            `dynamic` - Each connection will be done via chained proxies
             all proxies chained in the order as they appear in the list
             at least one proxy must be online to play in chain
             (dead proxies are skipped)
-            otherwise <literal>EINTR</literal> is returned to the app.
+            otherwise `EINTR` is returned to the app.
 
-            <literal>strict</literal> - Each connection will be done via chained proxies
+            `strict` - Each connection will be done via chained proxies
             all proxies chained in the order as they appear in the list
             all proxies must be online to play in chain
-            otherwise <literal>EINTR</literal> is returned to the app.
+            otherwise `EINTR` is returned to the app.
 
-            <literal>random</literal> - Each connection will be done via random proxy
-            (or proxy chain, see <option>programs.proxychains.chain.length</option>) from the list.
+            `random` - Each connection will be done via random proxy
+            (or proxy chain, see {option}`programs.proxychains.chain.length`) from the list.
           '';
         };
         length = mkOption {
           type = types.nullOr types.int;
           default = null;
-          description = ''
+          description = lib.mdDoc ''
             Chain length for random chain.
           '';
         };
@@ -83,7 +83,7 @@ in {
       proxyDNS = mkOption {
         type = types.bool;
         default = true;
-        description = "Proxy DNS requests - no leak for DNS data.";
+        description = lib.mdDoc "Proxy DNS requests - no leak for DNS data.";
       };
 
       quietMode = mkEnableOption "Quiet mode (no output from the library).";
@@ -91,7 +91,7 @@ in {
       remoteDNSSubnet = mkOption {
         type = types.enum [ 10 127 224 ];
         default = 224;
-        description = ''
+        description = lib.mdDoc ''
           Set the class A subnet number to use for the internal remote DNS mapping, uses the reserved 224.x.x.x range by default.
         '';
       };
@@ -99,24 +99,24 @@ in {
       tcpReadTimeOut = mkOption {
         type = types.int;
         default = 15000;
-        description = "Connection read time-out in milliseconds.";
+        description = lib.mdDoc "Connection read time-out in milliseconds.";
       };
 
       tcpConnectTimeOut = mkOption {
         type = types.int;
         default = 8000;
-        description = "Connection time-out in milliseconds.";
+        description = lib.mdDoc "Connection time-out in milliseconds.";
       };
 
       localnet = mkOption {
         type = types.str;
         default = "127.0.0.0/255.0.0.0";
-        description = "By default enable localnet for loopback address ranges.";
+        description = lib.mdDoc "By default enable localnet for loopback address ranges.";
       };
 
       proxies = mkOption {
         type = types.attrsOf (types.submodule proxyOptions);
-        description = ''
+        description = lib.mdDoc ''
           Proxies to be used by proxychains.
         '';
 
diff --git a/nixos/modules/programs/spacefm.nix b/nixos/modules/programs/spacefm.nix
index f71abcaa332..b4ba9dcdea5 100644
--- a/nixos/modules/programs/spacefm.nix
+++ b/nixos/modules/programs/spacefm.nix
@@ -17,8 +17,8 @@ in
       enable = mkOption {
         type = types.bool;
         default = false;
-        description = ''
-          Whether to install SpaceFM and create <filename>/etc/spacefm/spacefm.conf</filename>.
+        description = lib.mdDoc ''
+          Whether to install SpaceFM and create {file}`/etc/spacefm/spacefm.conf`.
         '';
       };
 
@@ -34,10 +34,10 @@ in
             terminal_su = "''${pkgs.sudo}/bin/sudo";
           }
         '';
-        description = ''
+        description = lib.mdDoc ''
           The system-wide spacefm configuration.
-          Parameters to be written to <filename>/etc/spacefm/spacefm.conf</filename>.
-          Refer to the <link xlink:href="https://ignorantguru.github.io/spacefm/spacefm-manual-en.html#programfiles-etc">relevant entry</link> in the SpaceFM manual.
+          Parameters to be written to {file}`/etc/spacefm/spacefm.conf`.
+          Refer to the [relevant entry](https://ignorantguru.github.io/spacefm/spacefm-manual-en.html#programfiles-etc) in the SpaceFM manual.
         '';
       };
 
diff --git a/nixos/modules/programs/starship.nix b/nixos/modules/programs/starship.nix
index 83d2272003c..ade80b9999e 100644
--- a/nixos/modules/programs/starship.nix
+++ b/nixos/modules/programs/starship.nix
@@ -16,8 +16,8 @@ in {
     settings = mkOption {
       inherit (settingsFormat) type;
       default = { };
-      description = ''
-        Configuration included in <literal>starship.toml</literal>.
+      description = lib.mdDoc ''
+        Configuration included in `starship.toml`.
 
         See https://starship.rs/config/#prompt for documentation.
       '';
diff --git a/nixos/modules/security/lock-kernel-modules.nix b/nixos/modules/security/lock-kernel-modules.nix
index 065587bc286..674ba857818 100644
--- a/nixos/modules/security/lock-kernel-modules.nix
+++ b/nixos/modules/security/lock-kernel-modules.nix
@@ -11,11 +11,11 @@ with lib;
     security.lockKernelModules = mkOption {
       type = types.bool;
       default = false;
-      description = ''
+      description = lib.mdDoc ''
         Disable kernel module loading once the system is fully initialised.
         Module loading is disabled until the next reboot. Problems caused
         by delayed module loading can be fixed by adding the module(s) in
-        question to <option>boot.kernelModules</option>.
+        question to {option}`boot.kernelModules`.
       '';
     };
   };
diff --git a/nixos/modules/security/polkit.nix b/nixos/modules/security/polkit.nix
index 1ba149745c6..0a2d81445ba 100644
--- a/nixos/modules/security/polkit.nix
+++ b/nixos/modules/security/polkit.nix
@@ -29,7 +29,7 @@ in
             if (subject.local) return "yes";
           });
         '';
-      description =
+      description = lib.mdDoc
         ''
           Any polkit rules to be added to config (in JavaScript ;-). See:
           http://www.freedesktop.org/software/polkit/docs/latest/polkit.8.html#polkit-rules
@@ -40,12 +40,12 @@ in
       type = types.listOf types.str;
       default = [ "unix-group:wheel" ];
       example = [ "unix-user:alice" "unix-group:admin" ];
-      description =
+      description = lib.mdDoc
         ''
           Specifies which users are considered “administrators”, for those
           actions that require the user to authenticate as an
-          administrator (i.e. have an <literal>auth_admin</literal>
-          value).  By default, this is all users in the <literal>wheel</literal> group.
+          administrator (i.e. have an `auth_admin`
+          value).  By default, this is all users in the `wheel` group.
         '';
     };
 
diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix
index 333fdd494e3..a0de1124c66 100644
--- a/nixos/modules/services/backup/restic.nix
+++ b/nixos/modules/services/backup/restic.nix
@@ -222,6 +222,15 @@ in
             A script that must run after finishing the backup process.
           '';
         };
+
+        package = mkOption {
+          type = types.package;
+          default = pkgs.restic;
+          defaultText = literalExpression "pkgs.restic";
+          description = ''
+            Restic package to use.
+          '';
+        };
       };
     }));
     default = { };
@@ -254,7 +263,7 @@ in
         (name: backup:
           let
             extraOptions = concatMapStrings (arg: " -o ${arg}") backup.extraOptions;
-            resticCmd = "${pkgs.restic}/bin/restic${extraOptions}";
+            resticCmd = "${backup.package}/bin/restic${extraOptions}";
             filesFromTmpFile = "/run/restic-backups-${name}/includes";
             backupPaths =
               if (backup.dynamicFilesFrom == null)
diff --git a/nixos/modules/services/matrix/mautrix-telegram.nix b/nixos/modules/services/matrix/mautrix-telegram.nix
index 794c4dd9ddc..88e5c38f716 100644
--- a/nixos/modules/services/matrix/mautrix-telegram.nix
+++ b/nixos/modules/services/matrix/mautrix-telegram.nix
@@ -125,6 +125,7 @@ in {
       wantedBy = [ "multi-user.target" ];
       wants = [ "network-online.target" ] ++ cfg.serviceDependencies;
       after = [ "network-online.target" ] ++ cfg.serviceDependencies;
+      path = [ pkgs.lottieconverter ];
 
       preStart = ''
         # Not all secrets can be passed as environment variable (yet)
diff --git a/nixos/modules/system/boot/loader/generations-dir/generations-dir.nix b/nixos/modules/system/boot/loader/generations-dir/generations-dir.nix
index 1437ab38770..5ace5dd06fd 100644
--- a/nixos/modules/system/boot/loader/generations-dir/generations-dir.nix
+++ b/nixos/modules/system/boot/loader/generations-dir/generations-dir.nix
@@ -22,11 +22,11 @@ in
       enable = mkOption {
         default = false;
         type = types.bool;
-        description = ''
+        description = lib.mdDoc ''
           Whether to create symlinks to the system generations under
-          <literal>/boot</literal>.  When enabled,
-          <literal>/boot/default/kernel</literal>,
-          <literal>/boot/default/initrd</literal>, etc., are updated to
+          `/boot`.  When enabled,
+          `/boot/default/kernel`,
+          `/boot/default/initrd`, etc., are updated to
           point to the current generation's kernel image, initial RAM
           disk, and other bootstrap files.
 
@@ -41,7 +41,7 @@ in
       copyKernels = mkOption {
         default = false;
         type = types.bool;
-        description = ''
+        description = lib.mdDoc ''
           Whether copy the necessary boot files into /boot, so
           /nix/store is not needed by the boot loader.
         '';
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index 53cebfd65c6..35280ee0736 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -177,11 +177,11 @@ in
       default = pkgs.systemd;
       defaultText = literalExpression "pkgs.systemd";
       type = types.package;
-      description = "The systemd package.";
+      description = lib.mdDoc "The systemd package.";
     };
 
     systemd.units = mkOption {
-      description = "Definition of systemd units.";
+      description = lib.mdDoc "Definition of systemd units.";
       default = {};
       type = systemdUtils.types.units;
     };
@@ -190,43 +190,43 @@ in
       default = [];
       type = types.listOf types.package;
       example = literalExpression "[ pkgs.systemd-cryptsetup-generator ]";
-      description = "Packages providing systemd units and hooks.";
+      description = lib.mdDoc "Packages providing systemd units and hooks.";
     };
 
     systemd.targets = mkOption {
       default = {};
       type = systemdUtils.types.targets;
-      description = "Definition of systemd target units.";
+      description = lib.mdDoc "Definition of systemd target units.";
     };
 
     systemd.services = mkOption {
       default = {};
       type = systemdUtils.types.services;
-      description = "Definition of systemd service units.";
+      description = lib.mdDoc "Definition of systemd service units.";
     };
 
     systemd.sockets = mkOption {
       default = {};
       type = systemdUtils.types.sockets;
-      description = "Definition of systemd socket units.";
+      description = lib.mdDoc "Definition of systemd socket units.";
     };
 
     systemd.timers = mkOption {
       default = {};
       type = systemdUtils.types.timers;
-      description = "Definition of systemd timer units.";
+      description = lib.mdDoc "Definition of systemd timer units.";
     };
 
     systemd.paths = mkOption {
       default = {};
       type = systemdUtils.types.paths;
-      description = "Definition of systemd path units.";
+      description = lib.mdDoc "Definition of systemd path units.";
     };
 
     systemd.mounts = mkOption {
       default = [];
       type = systemdUtils.types.mounts;
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd mount units.
         This is a list instead of an attrSet, because systemd mandates the names to be derived from
         the 'where' attribute.
@@ -236,7 +236,7 @@ in
     systemd.automounts = mkOption {
       default = [];
       type = systemdUtils.types.automounts;
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd automount units.
         This is a list instead of an attrSet, because systemd mandates the names to be derived from
         the 'where' attribute.
@@ -246,41 +246,41 @@ in
     systemd.slices = mkOption {
       default = {};
       type = systemdUtils.types.slices;
-      description = "Definition of slice configurations.";
+      description = lib.mdDoc "Definition of slice configurations.";
     };
 
     systemd.generators = mkOption {
       type = types.attrsOf types.path;
       default = {};
       example = { systemd-gpt-auto-generator = "/dev/null"; };
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd generators.
-        For each <literal>NAME = VALUE</literal> pair of the attrSet, a link is generated from
-        <literal>/etc/systemd/system-generators/NAME</literal> to <literal>VALUE</literal>.
+        For each `NAME = VALUE` pair of the attrSet, a link is generated from
+        `/etc/systemd/system-generators/NAME` to `VALUE`.
       '';
     };
 
     systemd.shutdown = mkOption {
       type = types.attrsOf types.path;
       default = {};
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd shutdown executables.
-        For each <literal>NAME = VALUE</literal> pair of the attrSet, a link is generated from
-        <literal>/etc/systemd/system-shutdown/NAME</literal> to <literal>VALUE</literal>.
+        For each `NAME = VALUE` pair of the attrSet, a link is generated from
+        `/etc/systemd/system-shutdown/NAME` to `VALUE`.
       '';
     };
 
     systemd.defaultUnit = mkOption {
       default = "multi-user.target";
       type = types.str;
-      description = "Default unit started when the system boots.";
+      description = lib.mdDoc "Default unit started when the system boots.";
     };
 
     systemd.ctrlAltDelUnit = mkOption {
       default = "reboot.target";
       type = types.str;
       example = "poweroff.target";
-      description = ''
+      description = lib.mdDoc ''
         Target that should be started when Ctrl-Alt-Delete is pressed.
       '';
     };
@@ -289,8 +289,8 @@ in
       type = with types; attrsOf (nullOr (oneOf [ str path package ]));
       default = {};
       example = { TZ = "CET"; };
-      description = ''
-        Environment variables passed to <emphasis>all</emphasis> systemd units.
+      description = lib.mdDoc ''
+        Environment variables passed to *all* systemd units.
       '';
     };
 
@@ -298,16 +298,16 @@ in
       type = with types; attrsOf (nullOr (oneOf [ str path package ]));
       default = {};
       example = { SYSTEMD_LOG_LEVEL = "debug"; };
-      description = ''
+      description = lib.mdDoc ''
         Environment variables of PID 1. These variables are
-        <emphasis>not</emphasis> passed to started units.
+        *not* passed to started units.
       '';
     };
 
     systemd.enableCgroupAccounting = mkOption {
       default = true;
       type = types.bool;
-      description = ''
+      description = lib.mdDoc ''
         Whether to enable cgroup accounting.
       '';
     };
@@ -315,7 +315,7 @@ in
     systemd.enableUnifiedCgroupHierarchy = mkOption {
       default = true;
       type = types.bool;
-      description = ''
+      description = lib.mdDoc ''
         Whether to enable the unified cgroup hierarchy (cgroupsv2).
       '';
     };
@@ -324,7 +324,7 @@ in
       default = "";
       type = types.lines;
       example = "DefaultLimitCORE=infinity";
-      description = ''
+      description = lib.mdDoc ''
         Extra config options for systemd. See man systemd-system.conf for
         available options.
       '';
@@ -334,7 +334,7 @@ in
       default = "";
       type = types.lines;
       example = "HibernateDelaySec=1h";
-      description = ''
+      description = lib.mdDoc ''
         Extra config options for systemd sleep state logic.
         See sleep.conf.d(5) man page for available options.
       '';
@@ -344,7 +344,7 @@ in
       default = [ ];
       type = types.listOf types.str;
       example = [ "debug-shell.service" "systemd-quotacheck.service" ];
-      description = ''
+      description = lib.mdDoc ''
         Additional units shipped with systemd that shall be enabled.
       '';
     };
@@ -353,10 +353,10 @@ in
       default = [ ];
       type = types.listOf types.str;
       example = [ "systemd-backlight@.service" ];
-      description = ''
+      description = lib.mdDoc ''
         A list of units to skip when generating system systemd configuration directory. This has
-        priority over upstream units, <option>systemd.units</option>, and
-        <option>systemd.additionalUpstreamSystemUnits</option>. The main purpose of this is to
+        priority over upstream units, {option}`systemd.units`, and
+        {option}`systemd.additionalUpstreamSystemUnits`. The main purpose of this is to
         prevent a upstream systemd unit from being added to the initrd with any modifications made to it
         by other NixOS modules.
       '';
@@ -366,7 +366,7 @@ in
       type = types.nullOr types.path;
       default = null;
       example = "/dev/watchdog";
-      description = ''
+      description = lib.mdDoc ''
         The path to a hardware watchdog device which will be managed by systemd.
         If not specified, systemd will default to /dev/watchdog.
       '';
@@ -376,7 +376,7 @@ in
       type = types.nullOr types.str;
       default = null;
       example = "30s";
-      description = ''
+      description = lib.mdDoc ''
         The amount of time which can elapse before a watchdog hardware device
         will automatically reboot the system. Valid time units include "ms",
         "s", "min", "h", "d", and "w".
@@ -387,7 +387,7 @@ in
       type = types.nullOr types.str;
       default = null;
       example = "10m";
-      description = ''
+      description = lib.mdDoc ''
         The amount of time which can elapse after a reboot has been triggered
         before a watchdog hardware device will automatically reboot the system.
         Valid time units include "ms", "s", "min", "h", "d", and "w".
@@ -398,7 +398,7 @@ in
       type = types.nullOr types.str;
       default = null;
       example = "10m";
-      description = ''
+      description = lib.mdDoc ''
         The amount of time which can elapse when kexec is being executed before
         a watchdog hardware device will automatically reboot the system. This
         option should only be enabled if reloadTime is also enabled. Valid
diff --git a/nixos/modules/system/boot/systemd/initrd.nix b/nixos/modules/system/boot/systemd/initrd.nix
index 5732138cec8..59cdc3077b1 100644
--- a/nixos/modules/system/boot/systemd/initrd.nix
+++ b/nixos/modules/system/boot/systemd/initrd.nix
@@ -150,7 +150,7 @@ in {
     };
 
     contents = mkOption {
-      description = "Set of files that have to be linked into the initrd";
+      description = lib.mdDoc "Set of files that have to be linked into the initrd";
       example = literalExpression ''
         {
           "/etc/hostname".text = "mymachine";
@@ -162,7 +162,7 @@ in {
     };
 
     storePaths = mkOption {
-      description = ''
+      description = lib.mdDoc ''
         Store paths to copy into the initrd as well.
       '';
       type = with types; listOf (oneOf [ singleLineStr package ]);
@@ -170,7 +170,7 @@ in {
     };
 
     extraBin = mkOption {
-      description = ''
+      description = lib.mdDoc ''
         Tools to add to /bin
       '';
       example = literalExpression ''
@@ -183,7 +183,7 @@ in {
     };
 
     suppressedStorePaths = mkOption {
-      description = ''
+      description = lib.mdDoc ''
         Store paths specified in the storePaths option that
         should not be copied.
       '';
@@ -194,7 +194,7 @@ in {
     emergencyAccess = mkOption {
       type = with types; oneOf [ bool (nullOr (passwdEntry str)) ];
       visible = false;
-      description = ''
+      description = lib.mdDoc ''
         Set to true for unauthenticated emergency access, and false for
         no emergency access.
 
@@ -208,7 +208,7 @@ in {
       type = types.listOf types.package;
       default = [];
       visible = false;
-      description = ''
+      description = lib.mdDoc ''
         Packages to include in /bin for the stage 1 emergency shell.
       '';
     };
@@ -218,7 +218,7 @@ in {
       type = types.listOf types.str;
       visible = false;
       example = [ "debug-shell.service" "systemd-quotacheck.service" ];
-      description = ''
+      description = lib.mdDoc ''
         Additional units shipped with systemd that shall be enabled.
       '';
     };
@@ -228,17 +228,17 @@ in {
       type = types.listOf types.str;
       example = [ "systemd-backlight@.service" ];
       visible = false;
-      description = ''
+      description = lib.mdDoc ''
         A list of units to skip when generating system systemd configuration directory. This has
-        priority over upstream units, <option>boot.initrd.systemd.units</option>, and
-        <option>boot.initrd.systemd.additionalUpstreamUnits</option>. The main purpose of this is to
+        priority over upstream units, {option}`boot.initrd.systemd.units`, and
+        {option}`boot.initrd.systemd.additionalUpstreamUnits`. The main purpose of this is to
         prevent a upstream systemd unit from being added to the initrd with any modifications made to it
         by other NixOS modules.
       '';
     };
 
     units = mkOption {
-      description = "Definition of systemd units.";
+      description = lib.mdDoc "Definition of systemd units.";
       default = {};
       visible = false;
       type = systemdUtils.types.units;
@@ -249,49 +249,49 @@ in {
       visible = false;
       type = types.listOf types.package;
       example = literalExpression "[ pkgs.systemd-cryptsetup-generator ]";
-      description = "Packages providing systemd units and hooks.";
+      description = lib.mdDoc "Packages providing systemd units and hooks.";
     };
 
     targets = mkOption {
       default = {};
       visible = false;
       type = systemdUtils.types.initrdTargets;
-      description = "Definition of systemd target units.";
+      description = lib.mdDoc "Definition of systemd target units.";
     };
 
     services = mkOption {
       default = {};
       type = systemdUtils.types.initrdServices;
       visible = false;
-      description = "Definition of systemd service units.";
+      description = lib.mdDoc "Definition of systemd service units.";
     };
 
     sockets = mkOption {
       default = {};
       type = systemdUtils.types.initrdSockets;
       visible = false;
-      description = "Definition of systemd socket units.";
+      description = lib.mdDoc "Definition of systemd socket units.";
     };
 
     timers = mkOption {
       default = {};
       type = systemdUtils.types.initrdTimers;
       visible = false;
-      description = "Definition of systemd timer units.";
+      description = lib.mdDoc "Definition of systemd timer units.";
     };
 
     paths = mkOption {
       default = {};
       type = systemdUtils.types.initrdPaths;
       visible = false;
-      description = "Definition of systemd path units.";
+      description = lib.mdDoc "Definition of systemd path units.";
     };
 
     mounts = mkOption {
       default = [];
       type = systemdUtils.types.initrdMounts;
       visible = false;
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd mount units.
         This is a list instead of an attrSet, because systemd mandates the names to be derived from
         the 'where' attribute.
@@ -302,7 +302,7 @@ in {
       default = [];
       type = systemdUtils.types.automounts;
       visible = false;
-      description = ''
+      description = lib.mdDoc ''
         Definition of systemd automount units.
         This is a list instead of an attrSet, because systemd mandates the names to be derived from
         the 'where' attribute.
@@ -313,7 +313,7 @@ in {
       default = {};
       type = systemdUtils.types.slices;
       visible = false;
-      description = "Definition of slice configurations.";
+      description = lib.mdDoc "Definition of slice configurations.";
     };
   };
 
diff --git a/nixos/modules/system/boot/tmp.nix b/nixos/modules/system/boot/tmp.nix
index cf6d19eb5f0..1f9431710ae 100644
--- a/nixos/modules/system/boot/tmp.nix
+++ b/nixos/modules/system/boot/tmp.nix
@@ -14,23 +14,23 @@ in
     boot.cleanTmpDir = mkOption {
       type = types.bool;
       default = false;
-      description = ''
-        Whether to delete all files in <filename>/tmp</filename> during boot.
+      description = lib.mdDoc ''
+        Whether to delete all files in {file}`/tmp` during boot.
       '';
     };
 
     boot.tmpOnTmpfs = mkOption {
       type = types.bool;
       default = false;
-      description = ''
-         Whether to mount a tmpfs on <filename>/tmp</filename> during boot.
+      description = lib.mdDoc ''
+         Whether to mount a tmpfs on {file}`/tmp` during boot.
       '';
     };
 
     boot.tmpOnTmpfsSize = mkOption {
       type = types.oneOf [ types.str types.types.ints.positive ];
       default = "50%";
-      description = ''
+      description = lib.mdDoc ''
         Size of tmpfs in percentage.
         Percentage is defined by systemd.
       '';
diff --git a/nixos/modules/system/etc/etc.nix b/nixos/modules/system/etc/etc.nix
index ed552fecec5..cfb9c39458e 100644
--- a/nixos/modules/system/etc/etc.nix
+++ b/nixos/modules/system/etc/etc.nix
@@ -82,8 +82,8 @@ in
           "default/useradd".text = "GROUP=100 ...";
         }
       '';
-      description = ''
-        Set of files that have to be linked in <filename>/etc</filename>.
+      description = lib.mdDoc ''
+        Set of files that have to be linked in {file}`/etc`.
       '';
 
       type = with types; attrsOf (submodule (
@@ -93,7 +93,7 @@ in
             enable = mkOption {
               type = types.bool;
               default = true;
-              description = ''
+              description = lib.mdDoc ''
                 Whether this /etc file should be generated.  This
                 option allows specific /etc files to be disabled.
               '';
@@ -101,9 +101,9 @@ in
 
             target = mkOption {
               type = types.str;
-              description = ''
+              description = lib.mdDoc ''
                 Name of symlink (relative to
-                <filename>/etc</filename>).  Defaults to the attribute
+                {file}`/etc`).  Defaults to the attribute
                 name.
               '';
             };
@@ -111,20 +111,20 @@ in
             text = mkOption {
               default = null;
               type = types.nullOr types.lines;
-              description = "Text of the file.";
+              description = lib.mdDoc "Text of the file.";
             };
 
             source = mkOption {
               type = types.path;
-              description = "Path of the source file.";
+              description = lib.mdDoc "Path of the source file.";
             };
 
             mode = mkOption {
               type = types.str;
               default = "symlink";
               example = "0600";
-              description = ''
-                If set to something else than <literal>symlink</literal>,
+              description = lib.mdDoc ''
+                If set to something else than `symlink`,
                 the file is copied instead of symlinked, with the given
                 file mode.
               '';
@@ -133,7 +133,7 @@ in
             uid = mkOption {
               default = 0;
               type = types.int;
-              description = ''
+              description = lib.mdDoc ''
                 UID of created file. Only takes effect when the file is
                 copied (that is, the mode is not 'symlink').
                 '';
@@ -142,7 +142,7 @@ in
             gid = mkOption {
               default = 0;
               type = types.int;
-              description = ''
+              description = lib.mdDoc ''
                 GID of created file. Only takes effect when the file is
                 copied (that is, the mode is not 'symlink').
               '';
@@ -151,20 +151,20 @@ in
             user = mkOption {
               default = "+${toString config.uid}";
               type = types.str;
-              description = ''
+              description = lib.mdDoc ''
                 User name of created file.
                 Only takes effect when the file is copied (that is, the mode is not 'symlink').
-                Changing this option takes precedence over <literal>uid</literal>.
+                Changing this option takes precedence over `uid`.
               '';
             };
 
             group = mkOption {
               default = "+${toString config.gid}";
               type = types.str;
-              description = ''
+              description = lib.mdDoc ''
                 Group name of created file.
                 Only takes effect when the file is copied (that is, the mode is not 'symlink').
-                Changing this option takes precedence over <literal>gid</literal>.
+                Changing this option takes precedence over `gid`.
               '';
             };
 
diff --git a/nixos/modules/tasks/encrypted-devices.nix b/nixos/modules/tasks/encrypted-devices.nix
index 06117d19af4..7837a34b498 100644
--- a/nixos/modules/tasks/encrypted-devices.nix
+++ b/nixos/modules/tasks/encrypted-devices.nix
@@ -16,33 +16,33 @@ let
       enable = mkOption {
         default = false;
         type = types.bool;
-        description = "The block device is backed by an encrypted one, adds this device as a initrd luks entry.";
+        description = lib.mdDoc "The block device is backed by an encrypted one, adds this device as a initrd luks entry.";
       };
 
       blkDev = mkOption {
         default = null;
         example = "/dev/sda1";
         type = types.nullOr types.str;
-        description = "Location of the backing encrypted device.";
+        description = lib.mdDoc "Location of the backing encrypted device.";
       };
 
       label = mkOption {
         default = null;
         example = "rootfs";
         type = types.nullOr types.str;
-        description = "Label of the unlocked encrypted device. Set <literal>fileSystems.&lt;name?&gt;.device</literal> to <literal>/dev/mapper/&lt;label&gt;</literal> to mount the unlocked device.";
+        description = lib.mdDoc "Label of the unlocked encrypted device. Set `fileSystems.<name?>.device` to `/dev/mapper/<label>` to mount the unlocked device.";
       };
 
       keyFile = mkOption {
         default = null;
         example = "/mnt-root/root/.swapkey";
         type = types.nullOr types.str;
-        description = ''
+        description = lib.mdDoc ''
           Path to a keyfile used to unlock the backing encrypted
           device. At the time this keyfile is accessed, the
-          <literal>neededForBoot</literal> filesystems (see
-          <literal>fileSystems.&lt;name?&gt;.neededForBoot</literal>)
-          will have been mounted under <literal>/mnt-root</literal>,
+          `neededForBoot` filesystems (see
+          `fileSystems.<name?>.neededForBoot`)
+          will have been mounted under `/mnt-root`,
           so the keyfile path should usually start with "/mnt-root/".
         '';
       };
diff --git a/nixos/modules/tasks/snapraid.nix b/nixos/modules/tasks/snapraid.nix
index c8dde5b4899..634ffa03111 100644
--- a/nixos/modules/tasks/snapraid.nix
+++ b/nixos/modules/tasks/snapraid.nix
@@ -14,7 +14,7 @@ in
         d2 = "/mnt/disk2/";
         d3 = "/mnt/disk3/";
       };
-      description = "SnapRAID data disks.";
+      description = lib.mdDoc "SnapRAID data disks.";
       type = attrsOf str;
     };
     parityFiles = mkOption {
@@ -27,7 +27,7 @@ in
         "/mnt/diskt/snapraid.5-parity"
         "/mnt/disku/snapraid.6-parity"
       ];
-      description = "SnapRAID parity files.";
+      description = lib.mdDoc "SnapRAID parity files.";
       type = listOf str;
     };
     contentFiles = mkOption {
@@ -37,46 +37,46 @@ in
         "/mnt/disk1/snapraid.content"
         "/mnt/disk2/snapraid.content"
       ];
-      description = "SnapRAID content list files.";
+      description = lib.mdDoc "SnapRAID content list files.";
       type = listOf str;
     };
     exclude = mkOption {
       default = [ ];
       example = [ "*.unrecoverable" "/tmp/" "/lost+found/" ];
-      description = "SnapRAID exclude directives.";
+      description = lib.mdDoc "SnapRAID exclude directives.";
       type = listOf str;
     };
     touchBeforeSync = mkOption {
       default = true;
       example = false;
-      description =
-        "Whether <command>snapraid touch</command> should be run before <command>snapraid sync</command>.";
+      description = lib.mdDoc
+        "Whether {command}`snapraid touch` should be run before {command}`snapraid sync`.";
       type = bool;
     };
     sync.interval = mkOption {
       default = "01:00";
       example = "daily";
-      description = "How often to run <command>snapraid sync</command>.";
+      description = lib.mdDoc "How often to run {command}`snapraid sync`.";
       type = str;
     };
     scrub = {
       interval = mkOption {
         default = "Mon *-*-* 02:00:00";
         example = "weekly";
-        description = "How often to run <command>snapraid scrub</command>.";
+        description = lib.mdDoc "How often to run {command}`snapraid scrub`.";
         type = str;
       };
       plan = mkOption {
         default = 8;
         example = 5;
-        description =
-          "Percent of the array that should be checked by <command>snapraid scrub</command>.";
+        description = lib.mdDoc
+          "Percent of the array that should be checked by {command}`snapraid scrub`.";
         type = int;
       };
       olderThan = mkOption {
         default = 10;
         example = 20;
-        description =
+        description = lib.mdDoc
           "Number of days since data was last scrubbed before it can be scrubbed again.";
         type = int;
       };
@@ -90,7 +90,7 @@ in
         autosave 500
         pool /pool
       '';
-      description = "Extra config options for SnapRAID.";
+      description = lib.mdDoc "Extra config options for SnapRAID.";
       type = lines;
     };
   };
diff --git a/nixos/modules/tasks/swraid.nix b/nixos/modules/tasks/swraid.nix
index 0b53a6d152d..26d6bd914d5 100644
--- a/nixos/modules/tasks/swraid.nix
+++ b/nixos/modules/tasks/swraid.nix
@@ -10,7 +10,7 @@ in {
     };
 
     mdadmConf = lib.mkOption {
-      description = "Contents of <filename>/etc/mdadm.conf</filename> in initrd.";
+      description = lib.mdDoc "Contents of {file}`/etc/mdadm.conf` in initrd.";
       type = lib.types.lines;
       default = "";
     };
diff --git a/nixos/modules/virtualisation/anbox.nix b/nixos/modules/virtualisation/anbox.nix
index c70da573533..6ba71ede7df 100644
--- a/nixos/modules/virtualisation/anbox.nix
+++ b/nixos/modules/virtualisation/anbox.nix
@@ -10,7 +10,7 @@ let
     address = mkOption {
       default = addr;
       type = types.str;
-      description = ''
+      description = lib.mdDoc ''
         IPv${toString v} ${name} address.
       '';
     };
@@ -18,9 +18,9 @@ let
     prefixLength = mkOption {
       default = pref;
       type = types.addCheck types.int (n: n >= 0 && n <= (if v == 4 then 32 else 128));
-      description = ''
+      description = lib.mdDoc ''
         Subnet mask of the ${name} address, specified as the number of
-        bits in the prefix (<literal>${if v == 4 then "24" else "64"}</literal>).
+        bits in the prefix (`${if v == 4 then "24" else "64"}`).
       '';
     };
   };
@@ -37,7 +37,7 @@ in
       default = pkgs.anbox.image;
       defaultText = literalExpression "pkgs.anbox.image";
       type = types.package;
-      description = ''
+      description = lib.mdDoc ''
         Base android image for Anbox.
       '';
     };
@@ -45,7 +45,7 @@ in
     extraInit = mkOption {
       type = types.lines;
       default = "";
-      description = ''
+      description = lib.mdDoc ''
         Extra shell commands to be run inside the container image during init.
       '';
     };
@@ -57,7 +57,7 @@ in
       dns = mkOption {
         default = "1.1.1.1";
         type = types.str;
-        description = ''
+        description = lib.mdDoc ''
           Container DNS server.
         '';
       };
diff --git a/nixos/modules/virtualisation/build-vm.nix b/nixos/modules/virtualisation/build-vm.nix
index 4a4694950f9..e9425441631 100644
--- a/nixos/modules/virtualisation/build-vm.nix
+++ b/nixos/modules/virtualisation/build-vm.nix
@@ -25,8 +25,8 @@ in
   options = {
 
     virtualisation.vmVariant = mkOption {
-      description = ''
-        Machine configuration to be added for the vm script produced by <literal>nixos-rebuild build-vm</literal>.
+      description = lib.mdDoc ''
+        Machine configuration to be added for the vm script produced by `nixos-rebuild build-vm`.
       '';
       inherit (vmVariant) type;
       default = {};
@@ -34,8 +34,8 @@ in
     };
 
     virtualisation.vmVariantWithBootLoader = mkOption {
-      description = ''
-        Machine configuration to be added for the vm script produced by <literal>nixos-rebuild build-vm-with-bootloader</literal>.
+      description = lib.mdDoc ''
+        Machine configuration to be added for the vm script produced by `nixos-rebuild build-vm-with-bootloader`.
       '';
       inherit (vmVariantWithBootLoader) type;
       default = {};
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index cea3d51d3ae..a9a2f3c1488 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -31,7 +31,7 @@ in
       mkOption {
         type = types.bool;
         default = false;
-        description = ''
+        description = lib.mdDoc ''
           This option enables the common /etc/containers configuration module.
         '';
       };
@@ -39,13 +39,13 @@ in
     ociSeccompBpfHook.enable = mkOption {
       type = types.bool;
       default = false;
-      description = "Enable the OCI seccomp BPF hook";
+      description = lib.mdDoc "Enable the OCI seccomp BPF hook";
     };
 
     containersConf.settings = mkOption {
       type = toml.type;
       default = { };
-      description = "containers.conf configuration";
+      description = lib.mdDoc "containers.conf configuration";
     };
 
     containersConf.cniPlugins = mkOption {
@@ -60,7 +60,7 @@ in
           pkgs.cniPlugins.dnsname
         ]
       '';
-      description = ''
+      description = lib.mdDoc ''
         CNI plugins to install on the system.
       '';
     };
@@ -74,14 +74,14 @@ in
           runroot = "/run/containers/storage";
         };
       };
-      description = "storage.conf configuration";
+      description = lib.mdDoc "storage.conf configuration";
     };
 
     registries = {
       search = mkOption {
         type = types.listOf types.str;
         default = [ "docker.io" "quay.io" ];
-        description = ''
+        description = lib.mdDoc ''
           List of repositories to search.
         '';
       };
@@ -89,7 +89,7 @@ in
       insecure = mkOption {
         default = [];
         type = types.listOf types.str;
-        description = ''
+        description = lib.mdDoc ''
           List of insecure repositories.
         '';
       };
@@ -97,7 +97,7 @@ in
       block = mkOption {
         default = [];
         type = types.listOf types.str;
-        description = ''
+        description = lib.mdDoc ''
           List of blocked repositories.
         '';
       };
@@ -116,10 +116,10 @@ in
           };
         }
       '';
-      description = ''
+      description = lib.mdDoc ''
         Signature verification policy file.
         If this option is empty the default policy file from
-        <literal>skopeo</literal> will be used.
+        `skopeo` will be used.
       '';
     };
 
diff --git a/nixos/modules/virtualisation/digital-ocean-image.nix b/nixos/modules/virtualisation/digital-ocean-image.nix
index 0ff2ee591f2..a57c89245f2 100644
--- a/nixos/modules/virtualisation/digital-ocean-image.nix
+++ b/nixos/modules/virtualisation/digital-ocean-image.nix
@@ -13,7 +13,7 @@ in
       type = with types; either (enum [ "auto" ]) int;
       default = "auto";
       example = 4096;
-      description = ''
+      description = lib.mdDoc ''
         Size of disk image. Unit is MB.
       '';
     };
@@ -21,12 +21,12 @@ in
     virtualisation.digitalOceanImage.configFile = mkOption {
       type = with types; nullOr path;
       default = null;
-      description = ''
+      description = lib.mdDoc ''
         A path to a configuration file which will be placed at
-        <literal>/etc/nixos/configuration.nix</literal> and be used when switching
-        to a new configuration. If set to <literal>null</literal>, a default
+        `/etc/nixos/configuration.nix` and be used when switching
+        to a new configuration. If set to `null`, a default
         configuration is used that imports
-        <literal>(modulesPath + "/virtualisation/digital-ocean-config.nix")</literal>.
+        `(modulesPath + "/virtualisation/digital-ocean-config.nix")`.
       '';
     };
 
@@ -34,7 +34,7 @@ in
       type = types.enum [ "gzip" "bzip2" ];
       default = "gzip";
       example = "bzip2";
-      description = ''
+      description = lib.mdDoc ''
         Disk image compression method. Choose bzip2 to generate smaller images that
         take longer to generate but will consume less metered storage space on your
         Digital Ocean account.
diff --git a/nixos/modules/virtualisation/digital-ocean-init.nix b/nixos/modules/virtualisation/digital-ocean-init.nix
index df30104b7d7..e29e34c4775 100644
--- a/nixos/modules/virtualisation/digital-ocean-init.nix
+++ b/nixos/modules/virtualisation/digital-ocean-init.nix
@@ -15,18 +15,18 @@ in {
     type = types.bool;
     default = true;
     example = true;
-    description = "Whether to reconfigure the system from Digital Ocean user data";
+    description = lib.mdDoc "Whether to reconfigure the system from Digital Ocean user data";
   };
   options.virtualisation.digitalOcean.defaultConfigFile = mkOption {
     type = types.path;
     default = defaultConfigFile;
     defaultText = literalDocBook ''
       The default configuration imports user-data if applicable and
-      <literal>(modulesPath + "/virtualisation/digital-ocean-config.nix")</literal>.
+      `(modulesPath + "/virtualisation/digital-ocean-config.nix")`.
     '';
-    description = ''
+    description = lib.mdDoc ''
       A path to a configuration file which will be placed at
-      <literal>/etc/nixos/configuration.nix</literal> and be used when switching to
+      `/etc/nixos/configuration.nix` and be used when switching to
       a new configuration.
     '';
   };
diff --git a/nixos/modules/virtualisation/docker-rootless.nix b/nixos/modules/virtualisation/docker-rootless.nix
index b814fa1c435..f4e4bdc0963 100644
--- a/nixos/modules/virtualisation/docker-rootless.nix
+++ b/nixos/modules/virtualisation/docker-rootless.nix
@@ -18,18 +18,18 @@ in
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = ''
+      description = lib.mdDoc ''
         This option enables docker in a rootless mode, a daemon that manages
         linux containers. To interact with the daemon, one needs to set
-        <command>DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock</command>.
+        {command}`DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock`.
       '';
     };
 
     setSocketVariable = mkOption {
       type = types.bool;
       default = false;
-      description = ''
-        Point <command>DOCKER_HOST</command> to rootless Docker instance for
+      description = lib.mdDoc ''
+        Point {command}`DOCKER_HOST` to rootless Docker instance for
         normal users by default.
       '';
     };
@@ -41,7 +41,7 @@ in
         ipv6 = true;
         "fixed-cidr-v6" = "fd00::/80";
       };
-      description = ''
+      description = lib.mdDoc ''
         Configuration for docker daemon. The attributes are serialized to JSON used as daemon.conf.
         See https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file
       '';
@@ -51,7 +51,7 @@ in
       default = pkgs.docker;
       defaultText = literalExpression "pkgs.docker";
       type = types.package;
-      description = ''
+      description = lib.mdDoc ''
         Docker package to be used in the module.
       '';
     };
diff --git a/nixos/modules/virtualisation/openvswitch.nix b/nixos/modules/virtualisation/openvswitch.nix
index 436a375fb5e..32646f60f8e 100644
--- a/nixos/modules/virtualisation/openvswitch.nix
+++ b/nixos/modules/virtualisation/openvswitch.nix
@@ -13,7 +13,7 @@ in {
     enable = mkOption {
       type = types.bool;
       default = false;
-      description = ''
+      description = lib.mdDoc ''
         Whether to enable Open vSwitch. A configuration daemon (ovs-server)
         will be started.
         '';
@@ -22,9 +22,9 @@ in {
     resetOnStart = mkOption {
       type = types.bool;
       default = false;
-      description = ''
+      description = lib.mdDoc ''
         Whether to reset the Open vSwitch configuration database to a default
-        configuration on every start of the systemd <literal>ovsdb.service</literal>.
+        configuration on every start of the systemd `ovsdb.service`.
         '';
     };
 
@@ -32,7 +32,7 @@ in {
       type = types.package;
       default = pkgs.openvswitch;
       defaultText = literalExpression "pkgs.openvswitch";
-      description = ''
+      description = lib.mdDoc ''
         Open vSwitch package to use.
       '';
     };
diff --git a/nixos/modules/virtualisation/virtualbox-image.nix b/nixos/modules/virtualisation/virtualbox-image.nix
index 1a0c4df42cb..0c095c01ad8 100644
--- a/nixos/modules/virtualisation/virtualbox-image.nix
+++ b/nixos/modules/virtualisation/virtualbox-image.nix
@@ -14,42 +14,42 @@ in {
         type = with types; either (enum [ "auto" ]) int;
         default = "auto";
         example = 50 * 1024;
-        description = ''
+        description = lib.mdDoc ''
           The size of the VirtualBox base image in MiB.
         '';
       };
       baseImageFreeSpace = mkOption {
         type = with types; int;
         default = 30 * 1024;
-        description = ''
+        description = lib.mdDoc ''
           Free space in the VirtualBox base image in MiB.
         '';
       };
       memorySize = mkOption {
         type = types.int;
         default = 1536;
-        description = ''
+        description = lib.mdDoc ''
           The amount of RAM the VirtualBox appliance can use in MiB.
         '';
       };
       vmDerivationName = mkOption {
         type = types.str;
         default = "nixos-ova-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}";
-        description = ''
+        description = lib.mdDoc ''
           The name of the derivation for the VirtualBox appliance.
         '';
       };
       vmName = mkOption {
         type = types.str;
         default = "NixOS ${config.system.nixos.label} (${pkgs.stdenv.hostPlatform.system})";
-        description = ''
+        description = lib.mdDoc ''
           The name of the VirtualBox appliance.
         '';
       };
       vmFileName = mkOption {
         type = types.str;
         default = "nixos-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.ova";
-        description = ''
+        description = lib.mdDoc ''
           The file name of the VirtualBox appliance.
         '';
       };
@@ -60,10 +60,10 @@ in {
           rtcuseutc = "on";
           usb = "off";
         };
-        description = ''
+        description = lib.mdDoc ''
           Parameters passed to the Virtualbox appliance.
 
-          Run <literal>VBoxManage modifyvm --help</literal> to see more options.
+          Run `VBoxManage modifyvm --help` to see more options.
         '';
       };
       exportParams = mkOption {
@@ -72,14 +72,14 @@ in {
           "--vsys" "0" "--vendor" "ACME Inc."
         ];
         default = [];
-        description = ''
+        description = lib.mdDoc ''
           Parameters passed to the Virtualbox export command.
 
-          Run <literal>VBoxManage export --help</literal> to see more options.
+          Run `VBoxManage export --help` to see more options.
         '';
       };
       extraDisk = mkOption {
-        description = ''
+        description = lib.mdDoc ''
           Optional extra disk/hdd configuration.
           The disk will be an 'ext4' partition on a separate VMDK file.
         '';
@@ -93,16 +93,16 @@ in {
           options = {
             size = mkOption {
               type = types.int;
-              description = "Size in MiB";
+              description = lib.mdDoc "Size in MiB";
             };
             label = mkOption {
               type = types.str;
               default = "vm-extra-storage";
-              description = "Label for the disk partition";
+              description = lib.mdDoc "Label for the disk partition";
             };
             mountPoint = mkOption {
               type = types.str;
-              description = "Path where to mount this disk.";
+              description = lib.mdDoc "Path where to mount this disk.";
             };
           };
         });
diff --git a/nixos/modules/virtualisation/xen-dom0.nix b/nixos/modules/virtualisation/xen-dom0.nix
index a999efcb44e..25d06e3c721 100644
--- a/nixos/modules/virtualisation/xen-dom0.nix
+++ b/nixos/modules/virtualisation/xen-dom0.nix
@@ -37,7 +37,7 @@ in
       type = types.package;
       defaultText = literalExpression "pkgs.xen";
       example = literalExpression "pkgs.xen-light";
-      description = ''
+      description = lib.mdDoc ''
         The package used for Xen binary.
       '';
       relatedPackages = [ "xen" "xen-light" ];
@@ -47,7 +47,7 @@ in
       type = types.package;
       defaultText = literalExpression "pkgs.xen";
       example = literalExpression "pkgs.qemu_xen-light";
-      description = ''
+      description = lib.mdDoc ''
         The package with qemu binaries for dom0 qemu and xendomains.
       '';
       relatedPackages = [ "xen"
@@ -59,7 +59,7 @@ in
       mkOption {
         default = [];
         type = types.listOf types.str;
-        description =
+        description = lib.mdDoc
           ''
             Parameters passed to the Xen hypervisor at boot time.
           '';
@@ -70,7 +70,7 @@ in
         default = 0;
         example = 512;
         type = types.addCheck types.int (n: n >= 0);
-        description =
+        description = lib.mdDoc
           ''
             Amount of memory (in MiB) allocated to Domain 0 on boot.
             If set to 0, all memory is assigned to Domain 0.
@@ -81,7 +81,7 @@ in
         name = mkOption {
           default = "xenbr0";
           type = types.str;
-          description = ''
+          description = lib.mdDoc ''
               Name of bridge the Xen domUs connect to.
             '';
         };
@@ -89,7 +89,7 @@ in
         address = mkOption {
           type = types.str;
           default = "172.16.0.1";
-          description = ''
+          description = lib.mdDoc ''
             IPv4 address of the bridge.
           '';
         };
@@ -97,9 +97,9 @@ in
         prefixLength = mkOption {
           type = types.addCheck types.int (n: n >= 0 && n <= 32);
           default = 16;
-          description = ''
+          description = lib.mdDoc ''
             Subnet mask of the bridge interface, specified as the number of
-            bits in the prefix (<literal>24</literal>).
+            bits in the prefix (`24`).
             A DHCP server will provide IP addresses for the whole, remaining
             subnet.
           '';
@@ -108,8 +108,8 @@ in
         forwardDns = mkOption {
           type = types.bool;
           default = false;
-          description = ''
-            If set to <literal>true</literal>, the DNS queries from the
+          description = lib.mdDoc ''
+            If set to `true`, the DNS queries from the
             hosts connected to the bridge will be forwarded to the DNS
             servers specified in /etc/resolv.conf .
             '';
@@ -120,7 +120,7 @@ in
     virtualisation.xen.stored =
       mkOption {
         type = types.path;
-        description =
+        description = lib.mdDoc
           ''
             Xen Store daemon to use. Defaults to oxenstored of the xen package.
           '';
@@ -130,7 +130,7 @@ in
         extraConfig = mkOption {
           type = types.lines;
           default = "";
-          description =
+          description = lib.mdDoc
             ''
               Options defined here will override the defaults for xendomains.
               The default options can be seen in the file included from
diff --git a/nixos/tests/restic.nix b/nixos/tests/restic.nix
index 7523d5e5ed5..75fffe9d9a8 100644
--- a/nixos/tests/restic.nix
+++ b/nixos/tests/restic.nix
@@ -63,6 +63,12 @@ import ./make-test-python.nix (
               inherit repository passwordFile;
               pruneOpts = [ "--keep-last 1" ];
             };
+            custompackage = {
+              inherit repository passwordFile paths;
+              package = pkgs.writeShellScriptBin "restic" ''
+                echo "$@" >> /tmp/fake-restic.log;
+              '';
+            };
           };
 
           environment.sessionVariables.RCLONE_CONFIG_LOCAL_TYPE = "local";
@@ -76,6 +82,7 @@ import ./make-test-python.nix (
           "${pkgs.restic}/bin/restic -r ${repository} -p ${passwordFile} snapshots",
           '${pkgs.restic}/bin/restic --repository-file ${repositoryFile} -p ${passwordFile} snapshots"',
           "${pkgs.restic}/bin/restic -r ${rcloneRepository} -p ${passwordFile} snapshots",
+          "grep 'backup .* /opt' /tmp/fake-restic.log",
       )
       server.succeed(
           "mkdir -p /opt",
@@ -89,6 +96,8 @@ import ./make-test-python.nix (
           '${pkgs.restic}/bin/restic -r ${repository} -p ${passwordFile} snapshots -c | grep -e "^1 snapshot"',
           '${pkgs.restic}/bin/restic --repository-file ${repositoryFile} -p ${passwordFile} snapshots -c | grep -e "^1 snapshot"',
           '${pkgs.restic}/bin/restic -r ${rcloneRepository} -p ${passwordFile} snapshots -c | grep -e "^1 snapshot"',
+          "systemctl start restic-backups-custompackage.service",
+          "grep 'backup .* /opt' /tmp/fake-restic.log",
           "timedatectl set-time '2017-12-13 13:45'",
           "systemctl start restic-backups-remotebackup.service",
           "rm /opt/backupCleanupCommand",
diff --git a/pkgs/applications/editors/poke/default.nix b/pkgs/applications/editors/poke/default.nix
index 77466cfdbea..df20645a33e 100644
--- a/pkgs/applications/editors/poke/default.nix
+++ b/pkgs/applications/editors/poke/default.nix
@@ -5,10 +5,9 @@
 , help2man
 , pkg-config
 , texinfo
-, makeWrapper
 , boehmgc
 , readline
-, guiSupport ? false, tcl, tcllib, tk
+, guiSupport ? false, makeWrapper, tcl, tcllib, tk
 , miSupport ? true, json_c
 , nbdSupport ? !stdenv.isDarwin, libnbd
 , textStylingSupport ? true
@@ -22,14 +21,17 @@ let
   isCross = stdenv.hostPlatform != stdenv.buildPlatform;
 in stdenv.mkDerivation rec {
   pname = "poke";
-  version = "2.3";
+  version = "2.4";
 
   src = fetchurl {
     url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-NpDPERbafLOp7GtPcAPiU+JotRAhKiiP04qv7Q68x2Y=";
+    sha256 = "sha256-hB4oWRfGc4zpgqaTDjDr6t7PsGVaedkYTxb4dqn+bkc=";
   };
 
-  outputs = [ "out" "dev" "info" "lib" "man" ];
+  outputs = [ "out" "dev" "info" "lib" ]
+  # help2man can't cross compile because it runs `poke --help` to
+  # generate the man page
+  ++ lib.optional (!isCross) "man";
 
   postPatch = ''
     patchShebangs .
@@ -39,21 +41,28 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     gettext
-    help2man
     pkg-config
     texinfo
-  ] ++ lib.optional guiSupport makeWrapper;
+  ] ++ lib.optionals (!isCross) [
+    help2man
+  ] ++ lib.optionals guiSupport [
+    makeWrapper
+    tcl.tclPackageHook
+  ];
 
   buildInputs = [ boehmgc readline ]
-  ++ lib.optionals guiSupport [ tk tcl.tclPackageHook tcllib ]
+  ++ lib.optionals guiSupport [ tcl tcllib tk ]
   ++ lib.optional miSupport json_c
   ++ lib.optional nbdSupport libnbd
   ++ lib.optional textStylingSupport gettext
   ++ lib.optional (!isCross) dejagnu;
 
   configureFlags = [
+    # libpoke depends on $datadir/poke, so we specify the datadir in
+    # $lib, and later move anything else it doesn't depend on to $out
     "--datadir=${placeholder "lib"}/share"
   ] ++ lib.optionals guiSupport [
+    "--enable-gui"
     "--with-tcl=${tcl}/lib"
     "--with-tk=${tk}/lib"
     "--with-tkinclude=${tk.dev}/include"
@@ -66,6 +75,16 @@ in stdenv.mkDerivation rec {
 
   postInstall = ''
     moveToOutput share/emacs "$out"
+    moveToOutput share/vim "$out"
+  '';
+
+  postFixup = lib.optionalString guiSupport ''
+    wrapProgram "$out/bin/poke-gui" \
+      --prefix TCLLIBPATH ' ' "$TCLLIBPATH"
+
+    # Prevent tclPackageHook from auto-wrapping all binaries, we only
+    # need to wrap poke-gui
+    unset TCLLIBPATH
   '';
 
   passthru = {
@@ -85,10 +104,11 @@ in stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Interactive, extensible editor for binary data";
     homepage = "http://www.jemarch.net/poke";
+    changelog = "https://git.savannah.gnu.org/cgit/poke.git/plain/ChangeLog?h=releases/poke-${version}";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ AndersonTorres kira-bruneau ];
     platforms = platforms.unix;
-    changelog = "https://git.savannah.gnu.org/cgit/poke.git/plain/ChangeLog?h=releases/poke-${version}";
+    badPlatforms = [ "aarch64-darwin" ]; # Undefined symbols for architecture arm64
   };
 }
 
diff --git a/pkgs/applications/editors/vim/plugins/deprecated.json b/pkgs/applications/editors/vim/plugins/deprecated.json
index b185aa7483d..bdfc403d065 100644
--- a/pkgs/applications/editors/vim/plugins/deprecated.json
+++ b/pkgs/applications/editors/vim/plugins/deprecated.json
@@ -1,4 +1,8 @@
 {
+    "TrueZen-nvim": {
+        "date": "2022-07-27",
+        "new": "true-zen-nvim"
+    },
     "compe-tmux": {
         "date": "2021-12-21",
         "new": "cmp-tmux"
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index f86b4372fc0..14ec64586bb 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -53,12 +53,12 @@ final: prev:
 
   Coqtail = buildVimPluginFrom2Nix {
     pname = "Coqtail";
-    version = "2022-05-19";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "2fc990977e3ec0fb626b2004645c4180954584e0";
-      sha256 = "1w5i0dsbwprkaykbvm1qlr05aj9226h248b9mhjmi9v0zxax8pld";
+      rev = "adb5905c617c06d56a72be4dc012c400aba591ec";
+      sha256 = "0j48r4048f3rxgjmjghiv91f0xy729m7d790vafdg72ml5zabwa9";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -77,24 +77,24 @@ final: prev:
 
   FTerm-nvim = buildVimPluginFrom2Nix {
     pname = "FTerm.nvim";
-    version = "2022-07-07";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "numToStr";
       repo = "FTerm.nvim";
-      rev = "db3bf919c068101195813692dbe95b3d9bb766b2";
-      sha256 = "18zm5xb1jsq19s52d9a83zfqyzkc0pdj98c5ia9svwg8qm2bqg1y";
+      rev = "efd10656724a269e21ba68d65e2b058a4e606424";
+      sha256 = "1wfdw5gm4hnar9w7z4v1s14zm7g7pd6a3b54r4gsdwgr107ql7md";
     };
     meta.homepage = "https://github.com/numToStr/FTerm.nvim/";
   };
 
   FixCursorHold-nvim = buildVimPluginFrom2Nix {
     pname = "FixCursorHold.nvim";
-    version = "2022-02-17";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "antoinemadec";
       repo = "FixCursorHold.nvim";
-      rev = "1bfb32e7ba1344925ad815cb0d7f901dbc0ff7c1";
-      sha256 = "0b1iffk6pa2zwd9fvlgqli72r8qj74b7hqkhlw6awhc7r1qj8m1q";
+      rev = "5aa5ff18da3cdc306bb724cf1a138533768c9f5e";
+      sha256 = "1zaqbwbs01iyqlsxh9r06qiasgrkgqkznrl5xv3fizvpk88y7lz8";
     };
     meta.homepage = "https://github.com/antoinemadec/FixCursorHold.nvim/";
   };
@@ -161,12 +161,12 @@ final: prev:
 
   LeaderF = buildVimPluginFrom2Nix {
     pname = "LeaderF";
-    version = "2022-07-07";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "Yggdroot";
       repo = "LeaderF";
-      rev = "c81ffb908e8011620f371295fdde557aac95e555";
-      sha256 = "0pl1krhs9b51xv9s7s92v7935hywi8fd5wx7vm0r5i0wh9i0g2vp";
+      rev = "aef58eaa7f328d6f5713a04198c80590bbc4ecba";
+      sha256 = "08xacx5n5di51929yiqz51z57ph8scvk4z9pa02r69iq4wa9grzr";
     };
     meta.homepage = "https://github.com/Yggdroot/LeaderF/";
   };
@@ -281,12 +281,12 @@ final: prev:
 
   SchemaStore-nvim = buildVimPluginFrom2Nix {
     pname = "SchemaStore.nvim";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "8f9c4b4be02189181923675fb166a974324188c0";
-      sha256 = "0xrag02ia12ls10dc7yfdm800wz300bpdi8i64vd3xim8zvkn7aj";
+      rev = "ff0d80ed00726a9b20596d165511bd902867457f";
+      sha256 = "0v246d21fw5r6wl10674w6p980l7z16427yq0v2rq1lnlk48y49w";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -329,24 +329,24 @@ final: prev:
 
   SpaceCamp = buildVimPluginFrom2Nix {
     pname = "SpaceCamp";
-    version = "2021-04-07";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "jaredgorski";
       repo = "SpaceCamp";
-      rev = "376af5c2204de61726ea86b596acb2dab9795e1f";
-      sha256 = "0h3wxkswd5z9y46d6272sr210i73j5pwf5faw7qhr1plilfgx4gb";
+      rev = "2678fca10e731f367253f937db5f8b42de674f4f";
+      sha256 = "1rhgjxrsjy9kg1740myyfh9n6pllm2nzxm3vgm4yxr6n6q74cy6n";
     };
     meta.homepage = "https://github.com/jaredgorski/SpaceCamp/";
   };
 
   SpaceVim = buildVimPluginFrom2Nix {
     pname = "SpaceVim";
-    version = "2022-07-08";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "SpaceVim";
       repo = "SpaceVim";
-      rev = "069c620851bdfe1a0b0f978e86034c1b75bcc7ba";
-      sha256 = "0zkfw3hzjw4zirxf263k7kwy16m108nhajwxswlm0hxn6m4xcxyp";
+      rev = "ba187ae41fc33fbd57efb29e1eae69e6dc761e70";
+      sha256 = "15xfdxv2zs0ap1y1fgxz3pmbvjwzhjpxn5s0sgkp328kbihl5832";
     };
     meta.homepage = "https://github.com/SpaceVim/SpaceVim/";
   };
@@ -380,11 +380,11 @@ final: prev:
     version = "2022-07-01";
     src = fetchFromGitHub {
       owner = "Pocco81";
-      repo = "TrueZen.nvim";
+      repo = "true-zen.nvim";
       rev = "fd0af396aa06c4aaa7c021cffca3a64a66a4b11f";
       sha256 = "1q88knxcasjn17yx93lmhlynvrmybg2gxy7933ii49r36nqk0hqi";
     };
-    meta.homepage = "https://github.com/Pocco81/TrueZen.nvim/";
+    meta.homepage = "https://github.com/Pocco81/true-zen.nvim/";
   };
 
   VimCompletesMe = buildVimPluginFrom2Nix {
@@ -498,12 +498,12 @@ final: prev:
 
   aerial-nvim = buildVimPluginFrom2Nix {
     pname = "aerial.nvim";
-    version = "2022-07-06";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "95a66fabb9cc732c410d54d4c803f3d52dae298f";
-      sha256 = "0kkckspjwbaqrwp005naaarrb5spmjfypiy3mi4baxgd5zsw7848";
+      rev = "86b8341bb8c58ece7e7f3f9b2d0310f4a328ab21";
+      sha256 = "1bigmmdr16ypd6khvs3m0lv5agjw06bw3wc5s3zp4rvj91vdz56k";
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
   };
@@ -546,12 +546,12 @@ final: prev:
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2022-07-07";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "ad2f75e4b207debb3b7cf2a007dd2d205fe603bd";
-      sha256 = "05icz5fyic52xbbnw2vvjkgahp9rsdv44gm8gd35gcg622z3mjaw";
+      rev = "e10fcf22dcc0441da3c984e26ae2e467b0ae554f";
+      sha256 = "1lzkx2ayyk1ja17i0dli7632rrg687fqvg2dqin0j9hnz93fx9ql";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -570,12 +570,12 @@ final: prev:
 
   alpha-nvim = buildVimPluginFrom2Nix {
     pname = "alpha-nvim";
-    version = "2022-07-05";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "goolord";
       repo = "alpha-nvim";
-      rev = "411ce27d871f963256c0787bc4133cf945dd89d3";
-      sha256 = "0pggkihpvv9xmwsr8fif0dsab7gg5r7ab7frhbayahzj2jnmaivs";
+      rev = "d688f46090a582be8f9d7b70b4cf999b780e993d";
+      sha256 = "10cajjc18n9hvbb3y1c6al4xpzdnv6rd2kx5mi9q3bnk90kmyq7d";
     };
     meta.homepage = "https://github.com/goolord/alpha-nvim/";
   };
@@ -714,12 +714,12 @@ final: prev:
 
   aurora = buildVimPluginFrom2Nix {
     pname = "aurora";
-    version = "2022-07-03";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "aurora";
-      rev = "835ceb4d8da3bda25b8ec6702c20031cae621e6e";
-      sha256 = "0szpcma5dd9i3l87l9kj7wkx3r8nn9bqhqhi31cqqx4rcc9q67cx";
+      rev = "bc13049ee772cc19f94c69e7f9c198861336a692";
+      sha256 = "05qz9jnhwcswwayvkpghqsffvpkpczj8dknh7gx9dpjh8zvjh8vv";
     };
     meta.homepage = "https://github.com/ray-x/aurora/";
   };
@@ -750,12 +750,12 @@ final: prev:
 
   auto-session = buildVimPluginFrom2Nix {
     pname = "auto-session";
-    version = "2022-07-08";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "auto-session";
-      rev = "375ca80f16f22c9b83ae7f1842ea3f2bcde74258";
-      sha256 = "0qp2rdzppjy30259mw0n4gh23fhcf0qwgyk8b7w8af85jlk3j05x";
+      rev = "50f5f2eaa7ff825c7036dc3c9981ebae7584b48e";
+      sha256 = "1h89cw34dnk3xgvpd12ic9bpll62sa3qpif4sfhb8rjcdxi9b1sl";
     };
     meta.homepage = "https://github.com/rmagatti/auto-session/";
   };
@@ -798,12 +798,12 @@ final: prev:
 
   barbar-nvim = buildVimPluginFrom2Nix {
     pname = "barbar.nvim";
-    version = "2022-07-03";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "romgrk";
       repo = "barbar.nvim";
-      rev = "75ed1b95235d1ef91e7c633f742ce9b8b7beac74";
-      sha256 = "0rjhrbnvzx1k6yyzw836aqfcyf45skm339pzpyfw841q1lnnfq60";
+      rev = "4a19df133df71b51e82302db06b31570d7dedd58";
+      sha256 = "1jjp3rpqvn4ngv91pp3d2v2dlg894412p97z4i88g1ifixdadhiv";
     };
     meta.homepage = "https://github.com/romgrk/barbar.nvim/";
   };
@@ -930,12 +930,12 @@ final: prev:
 
   bufferline-nvim = buildVimPluginFrom2Nix {
     pname = "bufferline.nvim";
-    version = "2022-07-05";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "b5a2b1f66b61df620f92cd3ad13f6d8aa7cda08c";
-      sha256 = "07szcbpn0jq58abhbc2725zd75r7msp5dr5dx09ynhv4kwslwdrl";
+      rev = "c4dd9b4de03b891f648b098c25e4dc1bc48a13e5";
+      sha256 = "0i9xpsg49m4m16m22iixhsfajnbcyw383iql1r9s5r8cwmzax0kq";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
@@ -954,12 +954,12 @@ final: prev:
 
   calendar-vim = buildVimPluginFrom2Nix {
     pname = "calendar.vim";
-    version = "2022-06-25";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "itchyny";
       repo = "calendar.vim";
-      rev = "3fbe34e21e5847fb40314eb0848faabfa609301a";
-      sha256 = "0qgs27ms71zsmp0sx7prvsq3j4qfiw2nigvykdd90931ssb089s6";
+      rev = "2cd2e55ca86e891a359b82a40ffc6f6ba799cbc4";
+      sha256 = "16d4wcx3zb536jpf617xi9a4yhhk9c3ljrrqi9a7nk34j211b13d";
     };
     meta.homepage = "https://github.com/itchyny/calendar.vim/";
   };
@@ -1050,12 +1050,12 @@ final: prev:
 
   clangd_extensions-nvim = buildVimPluginFrom2Nix {
     pname = "clangd_extensions.nvim";
-    version = "2022-05-31";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "clangd_extensions.nvim";
-      rev = "81b56d41d8ab791509a8464b0afc54144be9f23d";
-      sha256 = "13mainbpndl3mlvalghkvykbqjpvdp5pbhk5ma93vgj38sk6ph0d";
+      rev = "2390bf75e25daf738d2cc04aac8f83f62b7f037d";
+      sha256 = "0hj0cazy5mzwswjrdhi8sn2p9v72k35z7cap67crqn321fp4hp0z";
     };
     meta.homepage = "https://github.com/p00f/clangd_extensions.nvim/";
   };
@@ -1194,12 +1194,12 @@ final: prev:
 
   cmp-dap = buildVimPluginFrom2Nix {
     pname = "cmp-dap";
-    version = "2022-06-05";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "cmp-dap";
-      rev = "2c4cecbb9c4d255acc87ccaca727d1ad2f2b8c90";
-      sha256 = "11wg62nf37ka40l9acwxcklzghapwiw3x549vnp397sl70r3w6b2";
+      rev = "e21f0e5d188ee428f8acab1af21839af391607a4";
+      sha256 = "19lv7671imcdcxwz6yzn8lq2gm7jgh52mmr2xk1knq744d7dfld0";
     };
     meta.homepage = "https://github.com/rcarriga/cmp-dap/";
   };
@@ -1266,12 +1266,12 @@ final: prev:
 
   cmp-fuzzy-path = buildVimPluginFrom2Nix {
     pname = "cmp-fuzzy-path";
-    version = "2022-06-30";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "cmp-fuzzy-path";
-      rev = "b5f137ccee80b6c1f9b9243bb56c943d278b7166";
-      sha256 = "1szhcbj31xndf1pi9ra8ikdp7r8qnj3llg96xjak60biw266sbbd";
+      rev = "b4a8c1bebfe5a5d45b36e0b09e72f9f082e9a40c";
+      sha256 = "0zfx0mh4bq2mvppdl6vr5045hdjjqq6wd1xjn7mjwj3mbvnfpk2f";
     };
     meta.homepage = "https://github.com/tzachar/cmp-fuzzy-path/";
   };
@@ -1374,12 +1374,12 @@ final: prev:
 
   cmp-nvim-lsp-signature-help = buildVimPluginFrom2Nix {
     pname = "cmp-nvim-lsp-signature-help";
-    version = "2022-06-20";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-nvim-lsp-signature-help";
-      rev = "007dd2740d9b70f2688db01a39d6d25b7169cd57";
-      sha256 = "194i2b6qbl3z4j2p2s6sig2fac8i9kglkdwdc5h3x2q7avw70yrg";
+      rev = "57c4db7d3a663bd31ef60c4b5ed32683301247e9";
+      sha256 = "0lygd43zfhss9kirlhfc3rq95m0hdkk3cxc85nlfr2xx36plrarc";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-nvim-lsp-signature-help/";
   };
@@ -1458,24 +1458,24 @@ final: prev:
 
   cmp-path = buildVimPluginFrom2Nix {
     pname = "cmp-path";
-    version = "2022-06-29";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "cmp-path";
-      rev = "981baf9525257ac3269e1b6701e376d6fbff6921";
-      sha256 = "14i80iajwnjnnb6c5cmrhcvjdy1p8zvy0hn4gr7qm5pivfh88n74";
+      rev = "447c87cdd6e6d6a1d2488b1d43108bfa217f56e1";
+      sha256 = "0nmxwfn0gp70z26w9x03dk2myx9bbjxqw7zywzvdm28lgr43dwhv";
     };
     meta.homepage = "https://github.com/hrsh7th/cmp-path/";
   };
 
   cmp-rg = buildVimPluginFrom2Nix {
     pname = "cmp-rg";
-    version = "2022-01-13";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "lukas-reineke";
       repo = "cmp-rg";
-      rev = "fd92d70ff36b30924401b0cf7d4ce7344c8235f7";
-      sha256 = "0z8knl4l5a7miw081h290s0g4icqqvn6qibr6jx4x71qwqb21w2y";
+      rev = "7cf6ddc0046591b8a95c737826edf683489c3a66";
+      sha256 = "1xi3vygr5czjx904314ny2pgyxz9s8s7m27cl74ii05np7i27nnz";
     };
     meta.homepage = "https://github.com/lukas-reineke/cmp-rg/";
   };
@@ -1506,12 +1506,12 @@ final: prev:
 
   cmp-tabnine = buildVimPluginFrom2Nix {
     pname = "cmp-tabnine";
-    version = "2022-06-25";
+    version = "2022-07-17";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "cmp-tabnine";
-      rev = "a5081776185e3c7f406e7fc3dd5f0a0ae0288e59";
-      sha256 = "0sccxvdsgy8n57cs6h8mh5inhgl4x6r7pqpp29ms88f4wz5z15p2";
+      rev = "bfc45c962a4e8da957e9972d4f4ddeda92580db0";
+      sha256 = "08lzssdalgr322wkah0gsspkf57spwlv1nz4yxnnlfpg1f51amik";
     };
     meta.homepage = "https://github.com/tzachar/cmp-tabnine/";
   };
@@ -1650,12 +1650,12 @@ final: prev:
 
   coc-lua = buildVimPluginFrom2Nix {
     pname = "coc-lua";
-    version = "2022-07-07";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "josa42";
       repo = "coc-lua";
-      rev = "dbfb10b05ac0c705740e5cff5106b7639a2d8c86";
-      sha256 = "11zs4cw1vylmzr52n9y3w9875ng7fkkcl90xy207j329i0dnn3l8";
+      rev = "e6fe722e82282e5f12e44f2dbe33b3b937603f68";
+      sha256 = "1bmvzkmgl6wlqwd2h23y4gjxychm9zz1dig5p4w7hgx24ivm5izx";
     };
     meta.homepage = "https://github.com/josa42/coc-lua/";
   };
@@ -1795,12 +1795,12 @@ final: prev:
 
   comment-nvim = buildVimPluginFrom2Nix {
     pname = "comment.nvim";
-    version = "2022-06-29";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "numtostr";
       repo = "comment.nvim";
-      rev = "4086630ce2aaf76b2652516ee3169f0b558f6be1";
-      sha256 = "0pzjvwfbd9zlzvwf5k4nrfl64vlrwhahks0nkqjmwqijqyrrbl1q";
+      rev = "78ab4e9785b6da9b7a539df3bd6f70300dc9482b";
+      sha256 = "1dgbhf8l3212rvhs424cdb2qh07k95biazyc0qy5xa7asrdwj1m7";
     };
     meta.homepage = "https://github.com/numtostr/comment.nvim/";
   };
@@ -1939,12 +1939,12 @@ final: prev:
 
   conjure = buildVimPluginFrom2Nix {
     pname = "conjure";
-    version = "2022-07-02";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "Olical";
       repo = "conjure";
-      rev = "2e7f449d06753f2996e186954e96afc60edd5862";
-      sha256 = "0p2c1dcircd30gmln6rx83x8xs1fxfx9fdnc4bvry8wri0yjypb5";
+      rev = "572c9717d82de38f5bc60c2942843ce9b941aed6";
+      sha256 = "0yh1i2jhifdvdpb2zih0fg6v0xp5imy5byx3laijbqvycl2aa8za";
     };
     meta.homepage = "https://github.com/Olical/conjure/";
   };
@@ -1975,24 +1975,24 @@ final: prev:
 
   coq-artifacts = buildVimPluginFrom2Nix {
     pname = "coq.artifacts";
-    version = "2022-07-08";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.artifacts";
-      rev = "f8917e6ee6b73ee938f16422ce9c8550ada6f4f9";
-      sha256 = "1sz483q70nwv5zdv0gnawna27wkgsw4rcjgk9q8pnbdj6a023r91";
+      rev = "e39572495d27ebbcd6ccaf580da193a900c5fad9";
+      sha256 = "0ss009wd68973s7p2905bs2nczcp6k6vj7nsi9kdmh0zg7nw92pm";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.artifacts/";
   };
 
   coq-thirdparty = buildVimPluginFrom2Nix {
     pname = "coq.thirdparty";
-    version = "2022-07-08";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq.thirdparty";
-      rev = "f66a551948c40dc179757cd1325cfe29eee2dbba";
-      sha256 = "1kxl11fds1vh0qjzlamk6gq8z5s7jknsz9ya22h322v83r48z9vq";
+      rev = "3c43d8b07b3ebd1db825ff2cd7f83ee67c78a674";
+      sha256 = "0aqwb98mn7x9zhi7n2xi8pkk00bg5mi1ijam8i2var2bv5wpgm28";
     };
     meta.homepage = "https://github.com/ms-jpq/coq.thirdparty/";
   };
@@ -2011,12 +2011,12 @@ final: prev:
 
   coq_nvim = buildVimPluginFrom2Nix {
     pname = "coq_nvim";
-    version = "2022-07-08";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "efa6824c951d0638ec6134a8686f47b7efeda951";
-      sha256 = "0c28fdh9nr2n5ajpc9dhff69lq9fbz8xba919va6jws5r7nh04zg";
+      rev = "d913a16b930c6fb83ea62c47d9367ed725debaf3";
+      sha256 = "03cwv1mbvvww6p4137z8blap4pbm823yi2qrcg0j4kv39vv432wy";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
@@ -2047,12 +2047,12 @@ final: prev:
 
   crates-nvim = buildVimPluginFrom2Nix {
     pname = "crates.nvim";
-    version = "2022-07-05";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "saecki";
       repo = "crates.nvim";
-      rev = "131df937c3857cf7c17843fe9a92cc59e9104261";
-      sha256 = "08sifqc8a14pa902s4rk1rrxg7vy6z7w107dmg6gr64cr6xmck9s";
+      rev = "868f6e2439e0de3bfaed1e2ec13a5bf32a9b4a5b";
+      sha256 = "0c8a9jsfmp1pfcnxyw1qldv57fcsyrp6svv5q75y2hcnp08yk1ad";
     };
     meta.homepage = "https://github.com/saecki/crates.nvim/";
   };
@@ -2071,12 +2071,12 @@ final: prev:
 
   csharpls-extended-lsp-nvim = buildVimPluginFrom2Nix {
     pname = "csharpls-extended-lsp.nvim";
-    version = "2022-03-08";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "Decodetalkers";
       repo = "csharpls-extended-lsp.nvim";
-      rev = "a1985fd1cd3c67d5e1b1be7c9283222fd46e7615";
-      sha256 = "159mlvz9bb91v8nld2g52r0v4gbdp182l489jdm5pvxc5yf5zl3w";
+      rev = "865ace7f8f4069b4965e86005392dc78eec0858f";
+      sha256 = "154psrw6j92la05g3gv42i8jdaix9va17wkmw4p0ip72wrd2wn0q";
     };
     meta.homepage = "https://github.com/Decodetalkers/csharpls-extended-lsp.nvim/";
   };
@@ -2155,12 +2155,12 @@ final: prev:
 
   dashboard-nvim = buildVimPluginFrom2Nix {
     pname = "dashboard-nvim";
-    version = "2022-06-28";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "glepnir";
       repo = "dashboard-nvim";
-      rev = "88a6077812b1f54819a941d824896f3a75fe5ce4";
-      sha256 = "1v4x5rhjs766j33wz20ws94fc4qii299jw377mpbswkbzjxvf6j6";
+      rev = "6e48e4fd8b03b47d09c686b38e968d5dcd261c8d";
+      sha256 = "098iwm2x2xc63pyyvi4v5xkz1n2kvr76alz7r9wj4lp15mmm5w5p";
     };
     meta.homepage = "https://github.com/glepnir/dashboard-nvim/";
   };
@@ -2251,12 +2251,12 @@ final: prev:
 
   deol-nvim = buildVimPluginFrom2Nix {
     pname = "deol.nvim";
-    version = "2022-05-04";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deol.nvim";
-      rev = "cb48ec3f1c119d68cf633757a236228e3d887bf1";
-      sha256 = "0ckhcx6z1dqlvsaldy3961p3h4qvxgdqdp4i8xkqy4scjvaanvz0";
+      rev = "6a5adf9a8860888076766c8a0d921236ff5deb0e";
+      sha256 = "1b83s7nq4ymg3wjldfqq7in46hjylpschm1lqnfy91prg0r1djmp";
     };
     meta.homepage = "https://github.com/Shougo/deol.nvim/";
   };
@@ -2529,12 +2529,12 @@ final: prev:
 
   diffview-nvim = buildVimPluginFrom2Nix {
     pname = "diffview.nvim";
-    version = "2022-07-04";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "sindrets";
       repo = "diffview.nvim";
-      rev = "16c3985581ee65bccdfbebbe014b24a01adc7d1f";
-      sha256 = "0spkh7sq1gwxpkvxb7ghrvjmw4433k7wswxd1j9vxdnmzmzw89wb";
+      rev = "a45163cb9ee65742cf26b940c2b24cc652f295c9";
+      sha256 = "0vp6id3lqhvn9db5hd2bml5xfsmcy65hn19wbl82pscl6vqx80n4";
     };
     meta.homepage = "https://github.com/sindrets/diffview.nvim/";
   };
@@ -2553,24 +2553,24 @@ final: prev:
 
   doki-theme-vim = buildVimPluginFrom2Nix {
     pname = "doki-theme-vim";
-    version = "2022-06-27";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "doki-theme";
       repo = "doki-theme-vim";
-      rev = "da277b3a52c7c2de42c30ed09ce1987ba2105499";
-      sha256 = "11z064q6bc9rcpf66dwshz1ak0y98d5jq609cm4jdwg3c6gdahm6";
+      rev = "6101e530676eddb7cedf75c731b29f98d6e41c4e";
+      sha256 = "0973x7fqjz0xccqkwf7wyvh8dd5kbqxbbrch2ldl4dmsrfkafjdb";
     };
     meta.homepage = "https://github.com/doki-theme/doki-theme-vim/";
   };
 
   dressing-nvim = buildVimPluginFrom2Nix {
     pname = "dressing.nvim";
-    version = "2022-06-08";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "dressing.nvim";
-      rev = "af179837e1cdddfb164f0296883951b2255c46d2";
-      sha256 = "1i38j2zq6g7rypkwfc0hglp9va6l55jcwpy63fa27jq81bp37nnw";
+      rev = "e9d0de44707fe5ce06be6f6959d33a3fab985a3c";
+      sha256 = "0a10cr3ay429k6pj2i124qigr6pyp5qnkq0lx6q34m8cqjf5gdkr";
     };
     meta.homepage = "https://github.com/stevearc/dressing.nvim/";
   };
@@ -2589,12 +2589,12 @@ final: prev:
 
   edge = buildVimPluginFrom2Nix {
     pname = "edge";
-    version = "2022-07-03";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "ebb933214dfdf13b738b9b129ee7ad447e63d172";
-      sha256 = "0qhm7kz68zl4zc4y52gx53d2zj83p3xc6aa9q2bxfvp0ycxzms8w";
+      rev = "33dbe6b7ac23f8666d36ad27db7f82ff58cb2408";
+      sha256 = "15glvybxj1i8abbhkqc3x7q0jbs9f08k7s5b34p1zwk96vwashk7";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
@@ -2614,12 +2614,12 @@ final: prev:
 
   editorconfig-nvim = buildVimPluginFrom2Nix {
     pname = "editorconfig.nvim";
-    version = "2022-06-30";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "gpanders";
       repo = "editorconfig.nvim";
-      rev = "b96a75a470e5c26caf4e57c594e85ee5d0dc7bf1";
-      sha256 = "0xbb0d4m1m8a406kpia71bnnjkk5w5yfp8ra1s8jj66c3j1hp3d7";
+      rev = "764577498694a1035c7d592149458c5799db69d4";
+      sha256 = "0rsqpyyj0hwpsr036wml9ks0mk80r8jmr57bdb62b4zqacim4iry";
     };
     meta.homepage = "https://github.com/gpanders/editorconfig.nvim/";
   };
@@ -2675,12 +2675,12 @@ final: prev:
 
   everforest = buildVimPluginFrom2Nix {
     pname = "everforest";
-    version = "2022-07-08";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "everforest";
-      rev = "2f48c65da2292ba376079346a65984abea8114f0";
-      sha256 = "18j3kk5q8ibaxc3i2i8jbjjliyllap3a2cngdc6n1chgwzg4qm15";
+      rev = "9a8b4f85a7f1bb0e3019911f2c425b994cedb18f";
+      sha256 = "103ncn51p1b0g6xynlh5ss36dxhxg9d0amzdc47l83i41q562cxc";
     };
     meta.homepage = "https://github.com/sainnhe/everforest/";
   };
@@ -2735,12 +2735,12 @@ final: prev:
 
   feline-nvim = buildVimPluginFrom2Nix {
     pname = "feline.nvim";
-    version = "2022-05-31";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "feline-nvim";
       repo = "feline.nvim";
-      rev = "1ea42671c523a080a01c62c40c2c8e7fc0139a8f";
-      sha256 = "0yrkdzikpcq9phybbzfggdfj4y983y9qw1fvnzpvff7mp11jskqw";
+      rev = "2962c8c4a67f41ef35c58aa367ff2afb7a9691d3";
+      sha256 = "1ypm1yjcsxiy99329wswcfq68rrqh6nvc0w4w70cv7bbswx2ib1m";
     };
     meta.homepage = "https://github.com/feline-nvim/feline.nvim/";
   };
@@ -2759,12 +2759,12 @@ final: prev:
 
   fern-vim = buildVimPluginFrom2Nix {
     pname = "fern.vim";
-    version = "2022-06-13";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "fern.vim";
-      rev = "951a05d3f6ebc785db728ccfdf1759a2cf7c15ff";
-      sha256 = "1d0g3cylci2ph7crmw888jjjpindbmab5h4z9y7qsvl5633aclk4";
+      rev = "23dc0773849919cbfcc12f310dd2187e0267c5ed";
+      sha256 = "1k00ns58z8nfsvw1dxn8ah4rqvnr7jy1b8wvs26j30r705x9qf2r";
     };
     meta.homepage = "https://github.com/lambdalisue/fern.vim/";
   };
@@ -2783,12 +2783,12 @@ final: prev:
 
   fidget-nvim = buildVimPluginFrom2Nix {
     pname = "fidget.nvim";
-    version = "2022-06-12";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "j-hui";
       repo = "fidget.nvim";
-      rev = "46d1110435f1f023c22fa95bb10b3906aecd7bde";
-      sha256 = "0v0jnzj288swbp0w8xa7287sbql1rfgziqdk1gbcgvzs7zlvczbr";
+      rev = "492492e7d50452a9ace8346d31f6d6da40439f0e";
+      sha256 = "1s3qv09gbsjjmqkb85hc4832j18hd21j37rg4iqks0a4n2z5yi4b";
     };
     meta.homepage = "https://github.com/j-hui/fidget.nvim/";
   };
@@ -2856,12 +2856,12 @@ final: prev:
 
   flutter-tools-nvim = buildVimPluginFrom2Nix {
     pname = "flutter-tools.nvim";
-    version = "2022-07-03";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "flutter-tools.nvim";
-      rev = "54a73fd238454c3de0ad5ba56e67492600eb3dc0";
-      sha256 = "1mzz1fpfvqbi9zkqjysrrni7hd98x2iv0gknd63b6s1bfknsgrnk";
+      rev = "789c41dddd602ae3d4d9e91f7c2f2461dc505e93";
+      sha256 = "03g34brqyrcmq59984c9i0kx0fi6ivf9rhp3g047ylkcrazvf5kr";
     };
     meta.homepage = "https://github.com/akinsho/flutter-tools.nvim/";
   };
@@ -2892,12 +2892,12 @@ final: prev:
 
   friendly-snippets = buildVimPluginFrom2Nix {
     pname = "friendly-snippets";
-    version = "2022-07-06";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "24afb4c178d8ea28bfa73f37814ada43be478b1d";
-      sha256 = "09fx4nrj9z0w8idv9pm80dlm57ffy5cxj9yy2agxwiwr0c1lkxsr";
+      rev = "5632135df892a742e5c3bbf97f0f634e273254d4";
+      sha256 = "1j1q6zmbq9xgsmnyg9x8wg6dkasmbd629aw4p6cg0lij1fngc65s";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -2988,24 +2988,24 @@ final: prev:
 
   fzf-lsp-nvim = buildVimPluginFrom2Nix {
     pname = "fzf-lsp.nvim";
-    version = "2022-06-17";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "gfanto";
       repo = "fzf-lsp.nvim";
-      rev = "f19d6902dfdecb3150a9dbe153599524ae080dd8";
-      sha256 = "0rii15z51gz97vc688w5si0jb9vdnzq8vvz3yx52rghm535yv46y";
+      rev = "f8988d7d738a0e9e7aba2f0a9512df6356bbda07";
+      sha256 = "1bl8a3mnz9p9a03pqq3gdxpfxk8j3pjj8g4828nca3df72nk9vrn";
     };
     meta.homepage = "https://github.com/gfanto/fzf-lsp.nvim/";
   };
 
   fzf-lua = buildVimPluginFrom2Nix {
     pname = "fzf-lua";
-    version = "2022-07-08";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "ibhagwan";
       repo = "fzf-lua";
-      rev = "4707adc1ec9c5019590f6070ce578f68ed3a085c";
-      sha256 = "10lhx67y1ik0rd7bcr9r9d2hrdjxzfyj2fx06gp4i8fs9mqc7x3g";
+      rev = "8dade5e9989eb4b99f3551384e090afa9da8b633";
+      sha256 = "13bg8b68k44wc5f8g9ixva4jpql801mfldjgs12k8ljzkbpy89gs";
     };
     meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
   };
@@ -3048,12 +3048,12 @@ final: prev:
 
   gentoo-syntax = buildVimPluginFrom2Nix {
     pname = "gentoo-syntax";
-    version = "2022-05-02";
+    version = "2022-07-13";
     src = fetchFromGitHub {
       owner = "gentoo";
       repo = "gentoo-syntax";
-      rev = "2b77af2d85b1bdc8d78f65f41d6673c240bbc7a1";
-      sha256 = "1spdpyxlh53mwdazzaskwk3y2lb4im2by0l9qq1cz78nwmwm2m4h";
+      rev = "3bc67579b990d53cdcf2ba9b016995b41d2b26a3";
+      sha256 = "1przyjqp6pjgbmiwx378k5dx5p1j18c5f89zqjihr52q0p7x90f0";
     };
     meta.homepage = "https://github.com/gentoo/gentoo-syntax/";
   };
@@ -3156,12 +3156,12 @@ final: prev:
 
   gitsigns-nvim = buildNeovimPluginFrom2Nix {
     pname = "gitsigns.nvim";
-    version = "2022-07-08";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "bb6c3bf6f584e73945a0913bb3adf77b60d6f6a2";
-      sha256 = "19pznbvc75mf3m704h9pidkiv5n04qriyn176yas377hgpwk4h4r";
+      rev = "8b817e76b6399634f3f49e682d6e409844241858";
+      sha256 = "1dpxnk6b7rlj13y15sfsc05k3mzcp1b3dmvpj03af0imp9lq70c3";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -3192,12 +3192,12 @@ final: prev:
 
   glow-nvim = buildVimPluginFrom2Nix {
     pname = "glow.nvim";
-    version = "2022-06-10";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "glow.nvim";
-      rev = "900042f7dda528cb980b7f1056ed7c21d4402826";
-      sha256 = "05dhbxclnn5fz9wapa6gvf7p9qk88ir6ix72sahv0vpjcccr6gk6";
+      rev = "764527caeb36cd68cbf3f6d905584750cb02229d";
+      sha256 = "0yj49bfjsljpza08dc96wdnbiqvgp6dx1zq7ksvhyvc1nsaymm4b";
     };
     meta.homepage = "https://github.com/ellisonleao/glow.nvim/";
   };
@@ -3216,24 +3216,24 @@ final: prev:
 
   gotests-vim = buildVimPluginFrom2Nix {
     pname = "gotests-vim";
-    version = "2021-11-25";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "buoto";
       repo = "gotests-vim";
-      rev = "9adb78b15d0cbb72a3ffb9fbed28faa909b0817b";
-      sha256 = "0lf05rfgw1dmidslbvw5qal45crnb8jfxsfbhbhffqa9da1fkspn";
+      rev = "42abccb59e9889cd1ce427b11b2ffbb36f2a46a6";
+      sha256 = "0fpr23nxcm5ip6qhwqfymkwqy32h2jb7spkhhkmvjj9mzx8w52jm";
     };
     meta.homepage = "https://github.com/buoto/gotests-vim/";
   };
 
   goto-preview = buildVimPluginFrom2Nix {
     pname = "goto-preview";
-    version = "2022-06-30";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "rmagatti";
       repo = "goto-preview";
-      rev = "99407d8e63305a5c68627cee156ca3991a75fd19";
-      sha256 = "12izx7nl094ydi0bdxb4bh4w83gg36jrl024givqqh74i659p2am";
+      rev = "a5af27cff485b325f0ef2dcdf55ae51faed05cba";
+      sha256 = "11dzbl8jh6pwfys87bj9awysmfhhlmyzbhh8vfqdisbmmmqz3c3y";
     };
     meta.homepage = "https://github.com/rmagatti/goto-preview/";
   };
@@ -3300,24 +3300,24 @@ final: prev:
 
   gruvbox-material = buildVimPluginFrom2Nix {
     pname = "gruvbox-material";
-    version = "2022-07-03";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "gruvbox-material";
-      rev = "9c4af27e4335c367b0bc4d86dadaf34e742682b9";
-      sha256 = "0k20840nldp4y7y8izp1g2aghq3ad6mb1qpldprpkprpsgpbm49x";
+      rev = "d60d97144193502e1ba19aa6a5f90284ed418f95";
+      sha256 = "14nv148cl68papwq5sp5f5hjfi6hcq8k4jvijyd9z5l15r56f9ga";
     };
     meta.homepage = "https://github.com/sainnhe/gruvbox-material/";
   };
 
   gruvbox-nvim = buildVimPluginFrom2Nix {
     pname = "gruvbox.nvim";
-    version = "2022-07-06";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "gruvbox.nvim";
-      rev = "aee207e1ae55c44bd6a23c1a85e5e17939e3835b";
-      sha256 = "0ck0wxk373bjp4sbx3sgrzr88w88klwikn99hxfhqmb762vwrp7p";
+      rev = "29c50f1327d9d84436e484aac362d2fa6bca590b";
+      sha256 = "114az2y9xgsds7qn2jgz5amsvafbvbmf376rjppjb1n6789k4gbz";
     };
     meta.homepage = "https://github.com/ellisonleao/gruvbox.nvim/";
   };
@@ -3408,12 +3408,12 @@ final: prev:
 
   hologram-nvim = buildVimPluginFrom2Nix {
     pname = "hologram.nvim";
-    version = "2022-06-16";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "edluffy";
       repo = "hologram.nvim";
-      rev = "d6d3ebe931529681c99aff18bc4d4c2487867e06";
-      sha256 = "0hld4cr09bd0y4k9yz1lls5dqdak605zf5rnv75zi5scbgwly19c";
+      rev = "53906ca0d742c2d3ef00e79a0956e5d60710c959";
+      sha256 = "1hkj6xdhmwmkx9gvh9p3sqvf9zwdjqzzmnn35ida5bj9s5v48s4q";
     };
     meta.homepage = "https://github.com/edluffy/hologram.nvim/";
   };
@@ -3432,24 +3432,24 @@ final: prev:
 
   hop-nvim = buildVimPluginFrom2Nix {
     pname = "hop.nvim";
-    version = "2022-07-07";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "phaazon";
       repo = "hop.nvim";
-      rev = "6bcaeb7c0ea30afe137db11fcf681c373a7171bf";
-      sha256 = "0p5apgszs0hw9jz2jnlbi8zfb79pj6409bx3z253sjprijjf78vq";
+      rev = "ced6c94204c6cd55c583e6bce6397fd1c91eb214";
+      sha256 = "0zf61ny76cnrs21w3iwra2gqq5fdn0hfw3dvw5d37pxc4pp95dyv";
     };
     meta.homepage = "https://github.com/phaazon/hop.nvim/";
   };
 
   hotpot-nvim = buildVimPluginFrom2Nix {
     pname = "hotpot.nvim";
-    version = "2022-06-19";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "hotpot.nvim";
-      rev = "104aa65f9155d34629c9623d5dac39b5b2ad555c";
-      sha256 = "0m0w69mmy471c2axr8n15c8spd7w8zdb0ri2cnf571kpmb68szxr";
+      rev = "b942e8760ea26f6ff3782f675a8d6c1323f3e7d4";
+      sha256 = "1xcrv6ih5jphzlim362k23nc6l306inya0272bjzql4asvgzzmhy";
     };
     meta.homepage = "https://github.com/rktjmp/hotpot.nvim/";
   };
@@ -3552,12 +3552,12 @@ final: prev:
 
   indent-blankline-nvim = buildVimPluginFrom2Nix {
     pname = "indent-blankline.nvim";
-    version = "2022-06-29";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "lukas-reineke";
       repo = "indent-blankline.nvim";
-      rev = "4a58fe6e9854ccfe6c6b0f59abb7cb8301e23025";
-      sha256 = "1wppsqpi5h0qb1vhxryjw0sn0g8yhkpald47cwnr5r3ix5w99wfa";
+      rev = "c15bbe9f23d88b5c0b4ca45a446e01a0a3913707";
+      sha256 = "03l28ja345vz4hrbj9ha864vfyagid116mqi4z8ka2g2nk7s1brd";
     };
     meta.homepage = "https://github.com/lukas-reineke/indent-blankline.nvim/";
   };
@@ -3733,12 +3733,12 @@ final: prev:
 
   kanagawa-nvim = buildVimPluginFrom2Nix {
     pname = "kanagawa.nvim";
-    version = "2022-07-01";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "kanagawa.nvim";
-      rev = "dd13260478149f787753b72689076b34c6a4ded9";
-      sha256 = "15f816yq0igh6lgf3zrp7sk1drxsa88lhpg0pk41f5369yjvf09r";
+      rev = "a423ff33e9f9182cf6ee346ae19df2583ab37f55";
+      sha256 = "1h42x991dgxk7y4vp2gbqqfq6sgvasx9nfjrcsbly2d76mhz8f0f";
     };
     meta.homepage = "https://github.com/rebelot/kanagawa.nvim/";
   };
@@ -3817,12 +3817,12 @@ final: prev:
 
   lean-nvim = buildVimPluginFrom2Nix {
     pname = "lean.nvim";
-    version = "2022-07-07";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "Julian";
       repo = "lean.nvim";
-      rev = "ffa77427c7f39d4263478f747d77a639d5f980d7";
-      sha256 = "1sblifa4h56yf10skg92qjzwjrxw249qx3bvjkqmckfmq352fngw";
+      rev = "60ac136bf74ddf39fb19a1b0cfd261dfced11b1d";
+      sha256 = "03cpyqgzalbvx10w1d23fq8sddd7sagbnipnhbab4fh9223wnfgm";
     };
     meta.homepage = "https://github.com/Julian/lean.nvim/";
   };
@@ -3865,12 +3865,12 @@ final: prev:
 
   lexima-vim = buildVimPluginFrom2Nix {
     pname = "lexima.vim";
-    version = "2022-06-13";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "cohama";
       repo = "lexima.vim";
-      rev = "f06d2fa627c66689ec0ef68fe95765f0af0ded88";
-      sha256 = "00d27f9h4s83c1bsqskv48fhcyd2yf1fn7bpzqgqipbdsj7n04hn";
+      rev = "6723e86c4168b6c1ca6ec463900fd9b370798e99";
+      sha256 = "0mlv9k5nkrbk0dij7ng1xn0rqzhqkh7gg9bvknfxkkf01jlmafgn";
     };
     meta.homepage = "https://github.com/cohama/lexima.vim/";
   };
@@ -4033,48 +4033,48 @@ final: prev:
 
   litee-calltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-calltree.nvim";
-    version = "2022-05-19";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-calltree.nvim";
-      rev = "71f7eee870d8dcf8f8719238eb7ef8435de567a7";
-      sha256 = "1php9n68bw3l1344zz4q0n2pg6cx6ihpva8rzmm8xipxwwvxk8my";
+      rev = "77799885c1929cc4a9d982670afcc6d6bc0506b1";
+      sha256 = "1030rb93dfx3683vdkzjx26hnh5yvfam1cjdc9m5aksj4h81lvrc";
     };
     meta.homepage = "https://github.com/ldelossa/litee-calltree.nvim/";
   };
 
   litee-filetree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-filetree.nvim";
-    version = "2022-06-14";
+    version = "2022-07-13";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-filetree.nvim";
-      rev = "3d3447816beea47ba93753afa7b717f5deb8a26c";
-      sha256 = "0p4wp53lpm9awkbf6cwzxzxjbvqf5r272hlygbiwhv048lbz26xk";
+      rev = "fe0f41da067c7ea5816a3c96d83efa3ba95106df";
+      sha256 = "15h1pnhhddgffmrym7nmacf50nk00hlh4d08kcic6aphnnifll2q";
     };
     meta.homepage = "https://github.com/ldelossa/litee-filetree.nvim/";
   };
 
   litee-symboltree-nvim = buildVimPluginFrom2Nix {
     pname = "litee-symboltree.nvim";
-    version = "2022-05-20";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee-symboltree.nvim";
-      rev = "8f13d50dfda93ce188f39a526773ef9fd6c73add";
-      sha256 = "0n99r4lhd29yx4n2axnyhx9a5v6y8kk6i075x5088hpdd6yi84jq";
+      rev = "426d4db8a66ef4741b16d7fff006402bd5de43a6";
+      sha256 = "1i9zzag0izzm9gmnp6qrvg9j1q7cz0vp8jp9d6sy11hbigrfgjjl";
     };
     meta.homepage = "https://github.com/ldelossa/litee-symboltree.nvim/";
   };
 
   litee-nvim = buildVimPluginFrom2Nix {
     pname = "litee.nvim";
-    version = "2022-06-03";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "ldelossa";
       repo = "litee.nvim";
-      rev = "de1a3d65c0917bcb933ad023768f6b6e74f6ca92";
-      sha256 = "1qmvqh9xw8y7vgnc532glcgv94mbwr0ilaiw100ri2qlr9lri2np";
+      rev = "4d366989f73ac080a782629ea5b5ae609b59940a";
+      sha256 = "1kp9fr2ab2nlrw4nkg79qixd9ir19kgrsgpxdi3kl5k29d0vx6py";
     };
     meta.homepage = "https://github.com/ldelossa/litee.nvim/";
   };
@@ -4129,23 +4129,23 @@ final: prev:
 
   lsp_lines-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_lines.nvim";
-    version = "2022-06-29";
+    version = "2022-07-26";
     src = fetchgit {
             url = "https://git.sr.ht/~whynothugo/lsp_lines.nvim";
-            rev = "ec98ce50102a843f34d4895d5af0e60f8cc1d83f";
-            sha256 = "12i9v3vnbl0djx43y46xli3f5nbf2yly4c7d0mcq8682yxfq149b";
+            rev = "db67e94c813aae166c3d2f119ea7d2e85164922a";
+            sha256 = "0xz30jwccpl0xrigfl503garpjhdfikasnmcd98r1n4jmg5rl1w8";
         };
     meta.homepage = "https://git.sr.ht/~whynothugo/lsp_lines.nvim";
   };
 
   lsp_signature-nvim = buildVimPluginFrom2Nix {
     pname = "lsp_signature.nvim";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "lsp_signature.nvim";
-      rev = "86f0310c095ed72607359fd9a4aef1f375d8fbec";
-      sha256 = "1ha8n1kcxi9x873f1y14zh7sswb7p0cqixs5ijm8j4csi5plvbc1";
+      rev = "aea1e060d465fcb565bc1178e4189fc79524ba61";
+      sha256 = "19dg7k59i088xhyc2kizjgiy87r6v1i2hlj0wyflnzmpaxy4lll1";
     };
     meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/";
   };
@@ -4212,24 +4212,24 @@ final: prev:
 
   lualine-nvim = buildVimPluginFrom2Nix {
     pname = "lualine.nvim";
-    version = "2022-07-06";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "nvim-lualine";
       repo = "lualine.nvim";
-      rev = "c15e3b4c9eb7015dd58688b3d9bb1d659a49d3d1";
-      sha256 = "0s3734i7j28z5l17x8r6lj15rzpkmrpfywq96nhq3vrmnxiaaww1";
+      rev = "5f68f070e4f7158517afc55f125a6f5ed1f7db47";
+      sha256 = "0p900s02gsy03fbfmy7zs3c3qrq4214jkfbswq0ss3gi5biyzij0";
     };
     meta.homepage = "https://github.com/nvim-lualine/lualine.nvim/";
   };
 
   luasnip = buildVimPluginFrom2Nix {
     pname = "luasnip";
-    version = "2022-07-02";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "295cc9e422060b3200234b42cbee6dde1dfee765";
-      sha256 = "1cpqq5miskc87az6ckcgbcpi8acb6hvj57mp7kfddq6s4414svz5";
+      rev = "281a89e374eb04663e18e786db5f215092a56595";
+      sha256 = "1xkysyqqwdhympljg44hgi5fbfgz042qx91vpf85j99wqhaiz4i4";
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
   };
@@ -4248,12 +4248,12 @@ final: prev:
 
   lush-nvim = buildVimPluginFrom2Nix {
     pname = "lush.nvim";
-    version = "2022-07-05";
+    version = "2022-07-13";
     src = fetchFromGitHub {
       owner = "rktjmp";
       repo = "lush.nvim";
-      rev = "5fa6b33f99211ee7b8741bc8731c4156b707b344";
-      sha256 = "12djvkqksh4nbaj6xw7rxqnn5s8jdc03nnfq440vdwzz0i1yidpp";
+      rev = "3df0790319b0985d04e2f09fe879b6c2b15692f2";
+      sha256 = "0a042blv5zrimfvrsmsn6lls5qss2imgkg73h2vi14z2z4jyk266";
     };
     meta.homepage = "https://github.com/rktjmp/lush.nvim/";
   };
@@ -4284,14 +4284,14 @@ final: prev:
 
   marks-nvim = buildVimPluginFrom2Nix {
     pname = "marks.nvim";
-    version = "2022-05-13";
+    version = "2022-06-18";
     src = fetchFromGitHub {
       owner = "chentoast";
       repo = "marks.nvim";
-      rev = "56cfa45f9c20373ed90bc4271eae17ee0d452bae";
-      sha256 = "0qc452ikyrrx28by0awm9jggv05zcph95kygjya1085g9win87l4";
+      rev = "bb257578fef656812d87375f950f4e4018a39ae4";
+      sha256 = "069frp4j53211rkw3yjhx8dr2sqlpmb9frwnb8dijd981c7difk8";
     };
-    meta.homepage = "https://github.com/chentau/marks.nvim/";
+    meta.homepage = "https://github.com/chentoast/marks.nvim/";
   };
 
   matchit-zip = buildVimPluginFrom2Nix {
@@ -4308,12 +4308,12 @@ final: prev:
 
   material-nvim = buildVimPluginFrom2Nix {
     pname = "material.nvim";
-    version = "2022-07-03";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "marko-cerovac";
       repo = "material.nvim";
-      rev = "09844df73a07e5cfad23270318c78ee27e93e5be";
-      sha256 = "0g0c6ka8yymw1y40l4j9a0gqva64kngs0vnpa9mdnb2fswryr0ny";
+      rev = "94414171611bed8603a35f78f75cd543e591c178";
+      sha256 = "1khpg29sn6i2fldabw62wgk1kirp47g4qvr7qh3wmgwfk757zgj8";
     };
     meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
   };
@@ -4332,24 +4332,24 @@ final: prev:
 
   mini-nvim = buildVimPluginFrom2Nix {
     pname = "mini.nvim";
-    version = "2022-07-07";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "fc5b438f4cdad5c02621e4dbe4f02357faa19d50";
-      sha256 = "00csi3jgw773a84ipa3phc5dw8zny7v3hmn8gjy6h541gr5k55g2";
+      rev = "004a53297d1360b604d725acd86e21865fccbcec";
+      sha256 = "0cypyf6w96hpm4lhhgbfdxhf5il1ggqrns6f646lfr399r5vgvyb";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
 
   minimap-vim = buildVimPluginFrom2Nix {
     pname = "minimap.vim";
-    version = "2022-06-20";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "wfxr";
       repo = "minimap.vim";
-      rev = "a9f47afe1032d119a1ceff2714d47e4055564d07";
-      sha256 = "1ihx2vhrwyj3zmhnzwdcq54kygm5zic14ccyld995s7vjc4d15ig";
+      rev = "3801d9dfaa5431e7b83ae6f98423ac077d9f5c3f";
+      sha256 = "1qgrfmbdk420qa7v6r6c6galbr8cg0jkib4i0jvx0m3pdg4sw4rp";
     };
     meta.homepage = "https://github.com/wfxr/minimap.vim/";
   };
@@ -4368,12 +4368,12 @@ final: prev:
 
   mkdir-nvim = buildVimPluginFrom2Nix {
     pname = "mkdir.nvim";
-    version = "2022-03-12";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "jghauser";
       repo = "mkdir.nvim";
-      rev = "01261650382bef195dab8ac39344234b57914f09";
-      sha256 = "1irpi2aqi2pr0ydxsw2d4m2lkhzkqcs6gvz15snvnsckvk03j3v7";
+      rev = "c55d1dee4f099528a1853b28bb28caa802eba217";
+      sha256 = "0zpyvkbw7wfqdxfgidr7zfxqb5ldci4pflx50rsm1hbwai0ybv23";
     };
     meta.homepage = "https://github.com/jghauser/mkdir.nvim/";
   };
@@ -4680,24 +4680,24 @@ final: prev:
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2022-07-05";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "d93f3d8d7efc3f3dd7c5a8079a1186a89905aa2f";
-      sha256 = "1q23i0i1q280iafqdizp4chi43rsb01gmgydrnjsvrz0pvb0i5li";
+      rev = "892be036fa82871f602f20a5245dfd4bc88d2f08";
+      sha256 = "17mgv9qr9bn4ajy825yk5zr3cqhdqz113261vckx43sfia4ligbg";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
 
   neogit = buildVimPluginFrom2Nix {
     pname = "neogit";
-    version = "2022-07-01";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "TimUntersberger";
       repo = "neogit";
-      rev = "585251902917f33b3574f2bc7670f68543bd3481";
-      sha256 = "14fpqhh98kq4fh2sf4rvns8ffrk9zx44k8p5d6z9l39jygwl8xy1";
+      rev = "06e986fab0d0c31ba981b9f21c712dc72b3d237f";
+      sha256 = "0pc90hvjkxjg9q4qcn3h2j2z4s40h3ly9pi4jfp61cnqcqm67nsw";
     };
     meta.homepage = "https://github.com/TimUntersberger/neogit/";
   };
@@ -4752,24 +4752,24 @@ final: prev:
 
   neorg = buildVimPluginFrom2Nix {
     pname = "neorg";
-    version = "2022-07-08";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "01ca7404cca5bb45b06a7cb2a9a0f14fb4451165";
-      sha256 = "1phy3l4far26a8rxyb7ic349iik8zrldyi5qywz0p4h7z5ang40w";
+      rev = "2c4305eb32b10710a043380069c5538632160260";
+      sha256 = "0cbvf0qj31s6pbv0g5nm966v86l1yfan0c7dlyy2lipxhr01x420";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
 
   neoscroll-nvim = buildVimPluginFrom2Nix {
     pname = "neoscroll.nvim";
-    version = "2022-06-15";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "karb94";
       repo = "neoscroll.nvim";
-      rev = "71c8fadd60362383e5e817e95f64776f5e2737d8";
-      sha256 = "1xcj3dmrcnqrk2dzzr137n0g0crfyg3zk3220202v6b4vylairnh";
+      rev = "54c5c419f6ee2b35557b3a6a7d631724234ba97a";
+      sha256 = "09xlpdkbi0rpyh18f80w77454krx65kw463rs12241f5m0bax7xb";
     };
     meta.homepage = "https://github.com/karb94/neoscroll.nvim/";
   };
@@ -4932,12 +4932,12 @@ final: prev:
 
   nightfox-nvim = buildVimPluginFrom2Nix {
     pname = "nightfox.nvim";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "8666cba1552e14f72b6ac9e8c46da56f89deb7ee";
-      sha256 = "1x8y7vnpkbj8y4rw4lyz56ar5mzj411vxbclynrgf24bj4s5hwmn";
+      rev = "4899a1680e5b41436dc92a1f6e5f2a5bbc0b9454";
+      sha256 = "10fxqnrl21my3qfg26gl1wsyxksgniynp9ji23hvm72a38mn2g9v";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -4992,24 +4992,24 @@ final: prev:
 
   nord-nvim = buildVimPluginFrom2Nix {
     pname = "nord.nvim";
-    version = "2022-07-08";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "shaunsingh";
       repo = "nord.nvim";
-      rev = "bc1b3682e4f10add31907ba93233e684fb8ac714";
-      sha256 = "1g1n3ic3s3c6b48fy6ynf9isvv2c5iprjv1lhv9babyf26dw3la2";
+      rev = "baf9ab55a8b8a75325ed8a9673e60e4d8fef6092";
+      sha256 = "0jyn9r7fq2iknmwj1ca1wl9zbyff80n5haa37jcj4sn5cqkfywg5";
     };
     meta.homepage = "https://github.com/shaunsingh/nord.nvim/";
   };
 
   nordic-nvim = buildVimPluginFrom2Nix {
     pname = "nordic.nvim";
-    version = "2022-04-10";
+    version = "2022-07-10";
     src = fetchFromGitHub {
       owner = "andersevenrud";
       repo = "nordic.nvim";
-      rev = "fd9bfa20eb7513ac95fc49952949ae1ee3e0956a";
-      sha256 = "0isxr0a8v7rfcv7cgyz1g9q9m7z9a2ng3bsw4cfq8x3xzhhgka7l";
+      rev = "eb096c03853b8cc24457263c9ceed90256566118";
+      sha256 = "1fmxxlndm8ab5i71242d8vai6fbcddslgvcnkg19c09028khmsmy";
     };
     meta.homepage = "https://github.com/andersevenrud/nordic.nvim/";
   };
@@ -5028,24 +5028,24 @@ final: prev:
 
   nui-nvim = buildVimPluginFrom2Nix {
     pname = "nui.nvim";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "MunifTanjim";
       repo = "nui.nvim";
-      rev = "284e2d1b423953ee22694d50e0564e42a65acce1";
-      sha256 = "0qjfqdwyzcpfi4v0b350hjvh84k98xsbmnk2js7v2xmjnr9vwvgy";
+      rev = "26622d147762f2212bf30e0792df1d0164a73cd9";
+      sha256 = "1is2pbmiv92h4m22la4phpjxrv9zj6lmwmylsm4067yyqsr21jf9";
     };
     meta.homepage = "https://github.com/MunifTanjim/nui.nvim/";
   };
 
   null-ls-nvim = buildVimPluginFrom2Nix {
     pname = "null-ls.nvim";
-    version = "2022-07-06";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "null-ls.nvim";
-      rev = "fbb1929b29beff82e0fc495670f00ef4b3bcbcd3";
-      sha256 = "1fh1gf8vwim2lf4iq2higqr6cqjmmxyk7q6sfc6ksldz3d6xcav4";
+      rev = "9c396ab880bec1097dc4d124c0961cdfa2aa3848";
+      sha256 = "0b4cqsiw57bmpnkak8rc6263sgv8vp1r51rr5b1ljrrhdnwx0adr";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/";
   };
@@ -5124,12 +5124,12 @@ final: prev:
 
   nvim-bqf = buildVimPluginFrom2Nix {
     pname = "nvim-bqf";
-    version = "2022-07-08";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "f5e7f60e91821ca4e63d60fdc3a1428118ed1557";
-      sha256 = "05m1607rycqfwd23gr92ds5bkvcr68cjdpqxzma5wrac0cssdx6x";
+      rev = "8b62211ad7529c314e80b22968eef6ba275c781c";
+      sha256 = "1h7k6yca9axv8qvi11cajwwcjd6xpncpkq0211mg7dhqqb4f9xlj";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -5160,12 +5160,12 @@ final: prev:
 
   nvim-cmp = buildVimPluginFrom2Nix {
     pname = "nvim-cmp";
-    version = "2022-06-29";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "9897465a7663997b7b42372164ffc3635321a2fe";
-      sha256 = "1ic1h8h1h4v5f9f76vahl7yz7smq55x59r7j5h9gdmj97n0p0fp4";
+      rev = "706371f1300e7c0acb98b346f80dad2dd9b5f679";
+      sha256 = "1cwzzdwhsy3fqxwdx0big2qfvqha4m97nml83i1mp31agjk016pk";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
@@ -5256,36 +5256,36 @@ final: prev:
 
   nvim-dap = buildVimPluginFrom2Nix {
     pname = "nvim-dap";
-    version = "2022-06-29";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "f4a3be57f61893cffa1e22aa5e1e7bded495fcf2";
-      sha256 = "0s86y4x1rxkimaz76mbbxavwakmp317fzimn5gypqi36liwv81zq";
+      rev = "b3998a9a1848330ca467c3c88ee96f6b3fc48812";
+      sha256 = "10x8ykxxigj2dzkjs1c5dc9za913lfj4rfg4rxjvx3l7xyzq101a";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
 
   nvim-dap-ui = buildVimPluginFrom2Nix {
     pname = "nvim-dap-ui";
-    version = "2022-07-02";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-dap-ui";
-      rev = "d33b905770f9c674468b0b83bed3aeab41cf9bb0";
-      sha256 = "1a1dpfjkr0pssc3vymzcfwyjnh90qhh7cg3s5qgk2vjvgadixvrg";
+      rev = "b7b71444128f5aa90e4aee8dbfa36b14afddfb7a";
+      sha256 = "1v0jpx6gq3p8n9l3afhrfs9xwszz5mdwfmax5y36dg23ll55lbsv";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/";
   };
 
   nvim-dap-virtual-text = buildVimPluginFrom2Nix {
     pname = "nvim-dap-virtual-text";
-    version = "2022-06-26";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "nvim-dap-virtual-text";
-      rev = "a36982259216afd710f55bcdc220477c74b5bc35";
-      sha256 = "1liw94g5hi7nvki3kjxyp90y9lrp24wa4df8p54nmpkdxwd38kz4";
+      rev = "41bd4b5a698444d30d5827b2d19bcbae4e084ab4";
+      sha256 = "057hjk2y335lg73kjx0ljf84y7nbl2ahsfcd0dnw74mw3fby92fw";
     };
     meta.homepage = "https://github.com/theHamsta/nvim-dap-virtual-text/";
   };
@@ -5304,12 +5304,12 @@ final: prev:
 
   nvim-fzf = buildVimPluginFrom2Nix {
     pname = "nvim-fzf";
-    version = "2022-06-30";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "vijaymarupudi";
       repo = "nvim-fzf";
-      rev = "ea1df3a64b26c3213365d83850cfa40b55f4b24e";
-      sha256 = "0vs7a7rcvr3xv9b4sdv7g8ngfm92qyjdjc31q08g86yf7hiksxzi";
+      rev = "a8dc4bae4c1e1552e0233df796e512ab9ca65e44";
+      sha256 = "0cyq5rq029hnk9p3qw6gfhxvqiz5m788i4w6n4xxb6wif642bd4l";
     };
     meta.homepage = "https://github.com/vijaymarupudi/nvim-fzf/";
   };
@@ -5328,12 +5328,12 @@ final: prev:
 
   nvim-gdb = buildVimPluginFrom2Nix {
     pname = "nvim-gdb";
-    version = "2022-07-07";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "sakhnik";
       repo = "nvim-gdb";
-      rev = "64f3b7b4dfddb0d5cd1aedaf1b5d26d407beaf06";
-      sha256 = "0z6jwmdhwb5a1mr5y4y9llbmzq9dj320k9bcl9m9lmqb1dg5bmvs";
+      rev = "4408d2c10618636101945e9cd9ef9d68fc335e19";
+      sha256 = "1i57n41z8qpn5a626spkvn08jnbnhygia7hw2d0bvlcy56xx5wv4";
     };
     meta.homepage = "https://github.com/sakhnik/nvim-gdb/";
   };
@@ -5352,12 +5352,12 @@ final: prev:
 
   nvim-highlite = buildVimPluginFrom2Nix {
     pname = "nvim-highlite";
-    version = "2022-07-07";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "Iron-E";
       repo = "nvim-highlite";
-      rev = "28f766201cc4b8e268305e1d3c7571cdd19aff78";
-      sha256 = "1gb67qglls3ga82vm0d46ki2mh5xkq9h02z9am1wslikjhsfj5pw";
+      rev = "80e52a18be416790c20e035fa2816aa5e7e34cc9";
+      sha256 = "07g7k1dyycyamk5cx36hnwwza6npqi793pivaqs3w80qmqqqba1s";
     };
     meta.homepage = "https://github.com/Iron-E/nvim-highlite/";
   };
@@ -5388,12 +5388,12 @@ final: prev:
 
   nvim-jdtls = buildVimPluginFrom2Nix {
     pname = "nvim-jdtls";
-    version = "2022-06-30";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "703268d5b8479de4e0c27af93b203d56c1b53d2b";
-      sha256 = "1r55jkvrkx7drfs170801nw4ldh96654fg4nr8zay71i1nyb81w8";
+      rev = "f35efb60a0ba208ff2de063085d8b5603e536f9e";
+      sha256 = "0xx1yrnxad5975cvrrpq08yj3cyapp48f7xjj3gj7z4xxg0lwkzx";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -5448,36 +5448,36 @@ final: prev:
 
   nvim-lint = buildVimPluginFrom2Nix {
     pname = "nvim-lint";
-    version = "2022-06-23";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "5249977a585c3c17d94afdc8f0255a689d3a0057";
-      sha256 = "0d5gh1n2r0knhmlqpgqx2f67fg5828p6pwhpf7zi89jap53skrwn";
+      rev = "4d0abb94776f860ed0eef7c2d7aae96a804cbee5";
+      sha256 = "0b47zj8j1ag8y5avyb9zklfjivj18ns4h6n3n6a0shgyfmihn4r7";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
 
   nvim-lsp-ts-utils = buildVimPluginFrom2Nix {
     pname = "nvim-lsp-ts-utils";
-    version = "2022-05-09";
+    version = "2022-07-17";
     src = fetchFromGitHub {
       owner = "jose-elias-alvarez";
       repo = "nvim-lsp-ts-utils";
-      rev = "441385952278a1df5c91ba0d33e72c148d4654d3";
-      sha256 = "199nf01hjxdalc76xhr306xyisvydjwqhhw40nx1krq9k3xy4z39";
+      rev = "0a6a16ef292c9b61eac6dad00d52666c7f84b0e7";
+      sha256 = "1j45q63fzxlj179f1fl717ap37p7yiji53967j0yv4pdn200xinz";
     };
     meta.homepage = "https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils/";
   };
 
   nvim-lspconfig = buildVimPluginFrom2Nix {
     pname = "nvim-lspconfig";
-    version = "2022-07-07";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "d17179dbddcdf05f69b67ac13e2127c58a6295a7";
-      sha256 = "0r5jqdk1d4azslrpzg275marzxhygl3py95yl3xrizczaikdwz1q";
+      rev = "ba25b747a3cff70c1532c2f28fcc912cf7b938ea";
+      sha256 = "0fnldljq3n7nnmjmwvn8mbfq5m34ca5kq1bgjdjpfsy2w2mhlabc";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -5496,36 +5496,36 @@ final: prev:
 
   nvim-luapad = buildVimPluginFrom2Nix {
     pname = "nvim-luapad";
-    version = "2022-06-14";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "rafcamlet";
       repo = "nvim-luapad";
-      rev = "171e204ed65dc9308833ff80026fc6b7cec22825";
-      sha256 = "1k7zly9xpdrxf6221w2x898fdapagzwjcf8sf6agis7flqhp3j8f";
+      rev = "9815e2659ce8e2ef4b55e401531cf09b6423e0ea";
+      sha256 = "0fkrjrhgkygbm819xgx0fkqndy7n5p0hir47a0kfipv2h7jr5il0";
     };
     meta.homepage = "https://github.com/rafcamlet/nvim-luapad/";
   };
 
   nvim-metals = buildVimPluginFrom2Nix {
     pname = "nvim-metals";
-    version = "2022-07-02";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "scalameta";
       repo = "nvim-metals";
-      rev = "9e68fd2cae91ec8361b4e60ec89adb9a745b91c7";
-      sha256 = "0ggl7pi0ak2xjmxg8d98dcf1sqqbgxh59ii33v37gpkwskpfgh5h";
+      rev = "e6cd8ff487b0140863e683b2ea4cf7f0c14bc504";
+      sha256 = "1mymsa75w9k55qbv38fgm256k5md9bhj400rynvbxvq8lp8907a6";
     };
     meta.homepage = "https://github.com/scalameta/nvim-metals/";
   };
 
   nvim-neoclip-lua = buildVimPluginFrom2Nix {
     pname = "nvim-neoclip.lua";
-    version = "2022-07-03";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "AckslD";
       repo = "nvim-neoclip.lua";
-      rev = "1d167d6a3ba44810a2669b3c5463dd322ac1a6ba";
-      sha256 = "0llg5pf3k5kpyfbwvf7m2pp3v44pzb2q3cviq6acgsqcsk1s7lw0";
+      rev = "74af02e289b3ea465bc8a4d7b9b83adc4e4b8c06";
+      sha256 = "1mh93h1bp4r4w7bm1m3g7758bmsdznna5smid64mry2x4ni002dg";
     };
     meta.homepage = "https://github.com/AckslD/nvim-neoclip.lua/";
   };
@@ -5544,12 +5544,12 @@ final: prev:
 
   nvim-notify = buildVimPluginFrom2Nix {
     pname = "nvim-notify";
-    version = "2022-07-02";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-notify";
-      rev = "74ba257b6cf7fe2b7bb0f6813088ed488baa4a2a";
-      sha256 = "0k27isyrsdqf9is943m51wvvkkh7kw5qxm4c5rbbxd2gzb3ykyn4";
+      rev = "cd2a59f16d3dc8c54dabc58c31c9c539fcef3c2b";
+      sha256 = "14mfvlp44qn3jb4fnicay3cxy0vya5jix41hnvfz1j3bi2c0zng1";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-notify/";
   };
@@ -5580,12 +5580,12 @@ final: prev:
 
   nvim-snippy = buildVimPluginFrom2Nix {
     pname = "nvim-snippy";
-    version = "2022-06-25";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "dcampos";
       repo = "nvim-snippy";
-      rev = "0eff6e2826d92e4b37be6711a1e5bbc945ec3b9f";
-      sha256 = "0i5702amdvrcs7xw0alny8nvm8s1fxq4f9syf9ck3j997x1kfayy";
+      rev = "dc5474332379c31ac8c74e1e5d1c7a27f0b8177e";
+      sha256 = "0w7jyvzj9ybvlhc7jwcinyvpia3cp1d22an89yw9mzlckl2sfwk5";
     };
     meta.homepage = "https://github.com/dcampos/nvim-snippy/";
   };
@@ -5604,12 +5604,12 @@ final: prev:
 
   nvim-spectre = buildVimPluginFrom2Nix {
     pname = "nvim-spectre";
-    version = "2022-07-02";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "nvim-pack";
       repo = "nvim-spectre";
-      rev = "a52139da068ee4d0860810af7c6b6d48d3cde603";
-      sha256 = "1h78va3w6x9xppdn63vq4jfrn86807cnw0dgpxsgc73aqi3m3i24";
+      rev = "b1a084c05bf6cf32a3b55196e5cde44bb94422fb";
+      sha256 = "1k24y4610kmwdnvmk59qvcck22mavc2kd6bh0vzbczf8q1frzd6w";
     };
     meta.homepage = "https://github.com/nvim-pack/nvim-spectre/";
   };
@@ -5628,36 +5628,36 @@ final: prev:
 
   nvim-tree-lua = buildVimPluginFrom2Nix {
     pname = "nvim-tree.lua";
-    version = "2022-07-06";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "kyazdani42";
       repo = "nvim-tree.lua";
-      rev = "4bd919a75f37c7127ccfc746fc59a71068db3ceb";
-      sha256 = "0arzwzmrigsiqpdq9avlb0xmfcrxfvwg3ah0abg5cbv10zagzz8b";
+      rev = "e632ac7c8116ed0ed2e865b4b3e0a17a78de8081";
+      sha256 = "18w1z94k2armcks0xjgb6yxngshc7qkv949vx652gd1i4xy4xzw7";
     };
     meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter";
-    version = "2022-07-08";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "4286c8c74a70202b2673be6fad170aec2f774e96";
-      sha256 = "0qxxv1n0xqgam73bh5yxi18msmr6f34baz33rhf3pir6ihaspjc8";
+      rev = "36ee4890c47a9de5789d6561b19ce36da8b766be";
+      sha256 = "05n3xpk98anp3zlhcr66j536cdlpndqrdayzr7jrh32y57q8smrk";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
 
   nvim-treesitter-context = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-context";
-    version = "2022-07-03";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-context";
-      rev = "dbffef7e76f5c8f3595dea4a5fca854d1185ca92";
-      sha256 = "1cbmm1fpvdhlg2m5pi7jcc1nyp0frzss5wapxrs9s5zsjr07hdix";
+      rev = "0d086d23c0742404e9bd52977712619a621c3da9";
+      sha256 = "109pdbf0098nnrsg72agqsi13z3kghn4fhvcddk2j15yxdp7zwnw";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-context/";
   };
@@ -5688,12 +5688,12 @@ final: prev:
 
   nvim-treesitter-textobjects = buildVimPluginFrom2Nix {
     pname = "nvim-treesitter-textobjects";
-    version = "2022-07-08";
+    version = "2022-07-11";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-textobjects";
-      rev = "ab6bd79a908e1fb7d5ebc03f4e09f47fb493afb3";
-      sha256 = "0knxpg1zgzxzl16p7kcp0czl0xw0913rpimx1hhj4njzp7f4lsl6";
+      rev = "40f20e6788e6ce850802cbd2ca029fbb66b5d043";
+      sha256 = "0a7p0lvkb8x5cngr7h5vbljckx44lvmbmflwi045p1fcb2b9r250";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
   };
@@ -5724,12 +5724,12 @@ final: prev:
 
   nvim-ts-rainbow = buildVimPluginFrom2Nix {
     pname = "nvim-ts-rainbow";
-    version = "2022-07-08";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "nvim-ts-rainbow";
-      rev = "6c0b3b670f67c8eb4dca72e13fcba156f708cb86";
-      sha256 = "1psqjdsl5lrjhcx1cf5l2km0p70sbnpcp4lzm4qg65j6w8bjmv5q";
+      rev = "9dd019e84dc3b470dfdb5b05e3bb26158fef8a0c";
+      sha256 = "0gmh1h28vvrzgmaiz3mv41d7dmvs83r4d2ha8409zvs5bv5d19ad";
     };
     meta.homepage = "https://github.com/p00f/nvim-ts-rainbow/";
   };
@@ -5856,36 +5856,36 @@ final: prev:
 
   onedark-nvim = buildVimPluginFrom2Nix {
     pname = "onedark.nvim";
-    version = "2022-06-24";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "navarasu";
       repo = "onedark.nvim";
-      rev = "4f4bf74bf731cbd779c93a10a6e287ebf16425a2";
-      sha256 = "13bjbalj3wdzywspk60bpb2djyhbl075xwi5f9kagm62fw9c2ji2";
+      rev = "a5d57015fe164e1a65f317116089956e395132d3";
+      sha256 = "0ca5phndl4q5galg0wdirsgp7f8f9ijq7xdvkzdc1icamxgb6sl9";
     };
     meta.homepage = "https://github.com/navarasu/onedark.nvim/";
   };
 
   onedark-vim = buildVimPluginFrom2Nix {
     pname = "onedark.vim";
-    version = "2022-06-27";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "joshdick";
       repo = "onedark.vim";
-      rev = "ff0e0a488ca9d0d146f6e67b6fc3038f760238ea";
-      sha256 = "063390s96464m7nw20sgb3zinwvzawa3ck1ali20gfkywb8qjmll";
+      rev = "1fe54f212f09a03c2b5e277f0fe5b7b9d0b0a4ed";
+      sha256 = "19jhpfwidwigrcwz20qgm4gf5znz61xslfsf90fkr7k45vgwsk4q";
     };
     meta.homepage = "https://github.com/joshdick/onedark.vim/";
   };
 
   onedarkpro-nvim = buildVimPluginFrom2Nix {
     pname = "onedarkpro.nvim";
-    version = "2022-06-27";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "6b66ef86fc473a20d6072fbdb016036c2e3dee37";
-      sha256 = "016fxzl1fig6x041j2alzisy3qzkqls7hxl4770dxv84kl8p8xvp";
+      rev = "2c439754e1a60d42197e79461bf04e358213a654";
+      sha256 = "1bmifx5dzpypjbpq5pdvzzh68w87q5j06biaqvqrsjygaxm0828c";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -5928,12 +5928,12 @@ final: prev:
 
   orgmode = buildVimPluginFrom2Nix {
     pname = "orgmode";
-    version = "2022-07-01";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "nvim-orgmode";
       repo = "orgmode";
-      rev = "72a7a62530e110bd999e9b55d23308d7dbeb39a4";
-      sha256 = "1h2qiga742v6d66181929rw9fdcmp09hmbjfixyhlin6cx6aj2k6";
+      rev = "8cc6fa4599aeae171d3051570a10c94269acf05f";
+      sha256 = "1vnhma09fyll353f85744fa98pzkcdzgy0s51h0wpwa254s75175";
     };
     meta.homepage = "https://github.com/nvim-orgmode/orgmode/";
   };
@@ -5952,12 +5952,12 @@ final: prev:
 
   packer-nvim = buildVimPluginFrom2Nix {
     pname = "packer.nvim";
-    version = "2022-07-07";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "wbthomason";
       repo = "packer.nvim";
-      rev = "e4c2afb37d31e99b399425e102c58b091fbc16be";
-      sha256 = "1826499hcjlz0c777a12qfspfv8jrmmp7sf9bm5m0d3vny1fyiz1";
+      rev = "de109156cfa634ce0256ea4b6a7c32f9186e2f10";
+      sha256 = "0f3gddf3lfqf97r44gjaf63nbymdsxgsgrbqrpqd02ff1fc4ikb1";
     };
     meta.homepage = "https://github.com/wbthomason/packer.nvim/";
   };
@@ -6072,12 +6072,12 @@ final: prev:
 
   plenary-nvim = buildNeovimPluginFrom2Nix {
     pname = "plenary.nvim";
-    version = "2022-07-04";
+    version = "2022-07-10";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "46e8bb9d3a852e0a2678be2d48179db545a9a39a";
-      sha256 = "0jdaayzyk4w39k72yh5asg3rc5ljc1j4w5g22g0bjg3difznkqgy";
+      rev = "986ad71ae930c7d96e812734540511b4ca838aa2";
+      sha256 = "1gxz2ivf2p6p3h3d1xm0lb6s7jixf1l6l759a60n0vxv90a565kq";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -6711,12 +6711,12 @@ final: prev:
 
   sonokai = buildVimPluginFrom2Nix {
     pname = "sonokai";
-    version = "2022-07-03";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "93d6f268f65b8208a46e725da7e0cd759cc7b297";
-      sha256 = "0cwc084219b36z5ln0z6rvsyx9srz6facr1lbnl9iabqb30j9xqd";
+      rev = "888b68bed34a18be8f3341713ccd69b549951d95";
+      sha256 = "1b9m09x1wqndwk3aci6033p3bh4nr0lqjh7pgpz0dllrs1jxzs9a";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
@@ -6783,12 +6783,12 @@ final: prev:
 
   spellsitter-nvim = buildVimPluginFrom2Nix {
     pname = "spellsitter.nvim";
-    version = "2022-07-03";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "spellsitter.nvim";
-      rev = "9a79ce2e670a3bbf85a6669ab5a6e5f6f01f2a13";
-      sha256 = "0m49sqxalr69h5f7b7bplgdnxazmsn82gw4h9gxvjfi9v4xgblil";
+      rev = "eb74c4b1f4240cf1a7860877423195cec6311bd5";
+      sha256 = "0qajg4kjwlwbxjjms580v5aisg1vjid4vbmvzwk6nsfms8nrzn18";
     };
     meta.homepage = "https://github.com/lewis6991/spellsitter.nvim/";
   };
@@ -6831,12 +6831,12 @@ final: prev:
 
   splitjoin-vim = buildVimPluginFrom2Nix {
     pname = "splitjoin.vim";
-    version = "2022-06-30";
+    version = "2022-07-24";
     src = fetchFromGitHub {
       owner = "AndrewRadev";
       repo = "splitjoin.vim";
-      rev = "5553f71bbac9f87a3a3f78d01de24a615744a4b3";
-      sha256 = "1j3z84n6zjdzdjis54nv8zmh8qxaxazxz43bmzpxjqv7g8jgwqs0";
+      rev = "1f7d5841b84b4dd07b7774df5d0601dfdd1efe4e";
+      sha256 = "1flr37ikb78ns5az4g3iqm2l6829m9sm508j55liqwrr6l5746xy";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/AndrewRadev/splitjoin.vim/";
@@ -6844,12 +6844,12 @@ final: prev:
 
   sqlite-lua = buildVimPluginFrom2Nix {
     pname = "sqlite.lua";
-    version = "2022-07-05";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "kkharji";
       repo = "sqlite.lua";
-      rev = "d53bdff134a81e12834c3f7bd431376482132b7c";
-      sha256 = "1y5l3qz3azkbj9xf1dmgd1j6ylgzncn633c4i2s45x88k8bjp2gp";
+      rev = "56c5aacd5e31496d9b3cd3d1b0e570bb9a65d35b";
+      sha256 = "1yx3bar8gsapaka0x9bkm5d7frzz3k1kpwbc7n110f5x3cirf1yx";
     };
     meta.homepage = "https://github.com/kkharji/sqlite.lua/";
   };
@@ -6880,12 +6880,12 @@ final: prev:
 
   stabilize-nvim = buildVimPluginFrom2Nix {
     pname = "stabilize.nvim";
-    version = "2022-05-09";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "luukvbaal";
       repo = "stabilize.nvim";
-      rev = "174dfcd0197ebc7397c854ae8607f9c9e691eef5";
-      sha256 = "1vi1gjkflrkm5fr432r23rbq474h26j9jyagdrkw6mkq3wgh4fcr";
+      rev = "f7c4d93d6822df1770a90b7fdb46f6df5c94052e";
+      sha256 = "01ngpjnpppazq4dqfwrdc2jkgz5ikpxkscsy0gc89lyi4q2srpai";
     };
     meta.homepage = "https://github.com/luukvbaal/stabilize.nvim/";
   };
@@ -6988,12 +6988,12 @@ final: prev:
 
   swayconfig-vim = buildVimPluginFrom2Nix {
     pname = "swayconfig.vim";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "jamespeapen";
       repo = "swayconfig.vim";
-      rev = "ce7757f2486cda9ea62d2c3c83d7b943a7623a05";
-      sha256 = "007y8b0rzk5wflivkq7fgqcsbncpyyn5zm0slqx2fnz8qnvns817";
+      rev = "00705ec60c4c04fac24294ed7a260a09fc32ef9f";
+      sha256 = "03wmikc2l3l788ykmx5pb934zbvxx2z3gmk2z401rii48mzyn6wi";
     };
     meta.homepage = "https://github.com/jamespeapen/swayconfig.vim/";
   };
@@ -7037,12 +7037,12 @@ final: prev:
 
   syntastic = buildVimPluginFrom2Nix {
     pname = "syntastic";
-    version = "2022-07-06";
+    version = "2022-07-10";
     src = fetchFromGitHub {
       owner = "vim-syntastic";
       repo = "syntastic";
-      rev = "6f638ed5bb214213a788c6c1aaa565937efd5e8c";
-      sha256 = "0vgkfdgpkincr89anjhhw0nyk41rp97sgjphr0xs1sf4hq627n5m";
+      rev = "8d5e37c29cf5952fbf300b9230bffe424c61a488";
+      sha256 = "0z2dazzy7af4wrk48wlwl5zlii0qzvrxlf0cqrzk1qxx3z8m2n50";
     };
     meta.homepage = "https://github.com/vim-syntastic/syntastic/";
   };
@@ -7182,12 +7182,12 @@ final: prev:
 
   tcomment_vim = buildVimPluginFrom2Nix {
     pname = "tcomment_vim";
-    version = "2022-04-24";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "tomtom";
       repo = "tcomment_vim";
-      rev = "7fb091aad8d824bef1d7bc9365921c65e26d82ad";
-      sha256 = "1lcaa5184gaifscdqzqv7fs35lmcwhlv0s5n8606xbm4qy1sr7mn";
+      rev = "e77e1bf61b4f1ddc7b13c6160b7389df42aba24d";
+      sha256 = "00cvap0qp016x09h4wkk6d0b9px7q8dplj8fj5c7j95r15k6z2r7";
     };
     meta.homepage = "https://github.com/tomtom/tcomment_vim/";
   };
@@ -7218,12 +7218,12 @@ final: prev:
 
   telescope-coc-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-coc.nvim";
-    version = "2022-07-07";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "fannheyward";
       repo = "telescope-coc.nvim";
-      rev = "8f531dae83882d93cb2a1a7948da2944d292f3b4";
-      sha256 = "00q9xaqg50q1am92321zrdlwknkkmz13al1cpp7y09bsbhair766";
+      rev = "65d73788915a1706bc8c47fa283f3e9515f7ed1b";
+      sha256 = "02fzllnr87s8sfm2b7ax6nvl3hjzniiz93yqf2m7l1gaadpf9axk";
     };
     meta.homepage = "https://github.com/fannheyward/telescope-coc.nvim/";
   };
@@ -7242,12 +7242,12 @@ final: prev:
 
   telescope-file-browser-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-file-browser.nvim";
-    version = "2022-07-04";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-file-browser.nvim";
-      rev = "b5502c660fc135f2d7fdc390693ba900282433b8";
-      sha256 = "0xf3hpk1k4p86lxyjnain8yc5ncb5p6nazn5vllkr8jxpn6f2pag";
+      rev = "c30fcb6214acf8538616e403e0f82a6430bf6801";
+      sha256 = "17pilvq69q66s8bfsyllmphhzganzcd3vgbb3q9w64d5gbpr7jgg";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-file-browser.nvim/";
   };
@@ -7325,6 +7325,18 @@ final: prev:
     meta.homepage = "https://github.com/gbrlsnchs/telescope-lsp-handlers.nvim/";
   };
 
+  telescope-media-files-nvim = buildVimPluginFrom2Nix {
+    pname = "telescope-media-files.nvim";
+    version = "2021-10-21";
+    src = fetchFromGitHub {
+      owner = "nvim-telescope";
+      repo = "telescope-media-files.nvim";
+      rev = "513e4ee385edd72bf0b35a217b7e39f84b6fe93c";
+      sha256 = "1ap3ijh64ynyxzbc62ijfkbwasv506i17pc65bh3w4dfpzn6rlpy";
+    };
+    meta.homepage = "https://github.com/nvim-telescope/telescope-media-files.nvim/";
+  };
+
   telescope-project-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-project.nvim";
     version = "2022-06-12";
@@ -7375,24 +7387,24 @@ final: prev:
 
   telescope-vim-bookmarks-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-vim-bookmarks.nvim";
-    version = "2021-08-12";
+    version = "2022-07-17";
     src = fetchFromGitHub {
       owner = "tom-anders";
       repo = "telescope-vim-bookmarks.nvim";
-      rev = "b7a436eba6102c2bc73f49766a12e79d24ab8fb5";
-      sha256 = "0lak83b8y963hv61z2yfi1nyaapvq2hnhpcx7bc6h8v4jzyjis0n";
+      rev = "92498cbf7c127dea37c3d27117b60dd7ab9baef4";
+      sha256 = "1nflwz7jji4lr621cifg4mq7a6ld4dvaq3dxg7rr4bahh02w5hb5";
     };
     meta.homepage = "https://github.com/tom-anders/telescope-vim-bookmarks.nvim/";
   };
 
   telescope-z-nvim = buildVimPluginFrom2Nix {
     pname = "telescope-z.nvim";
-    version = "2022-01-19";
+    version = "2022-07-15";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-z.nvim";
-      rev = "962766a35b8e8c77f3c92612101d4b2347687c00";
-      sha256 = "1ladvpxri5lbjdh6zvbqa306f9nanx80bxy216glq2sgz7br4f1n";
+      rev = "64e5adc84acd1cd73fd401c026fda54dccd78f72";
+      sha256 = "16018l76an0p7xrvzaxsb2vg5bq7di79snv1fz1k5naajxlpa3b0";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-z.nvim/";
   };
@@ -7411,12 +7423,12 @@ final: prev:
 
   telescope-nvim = buildVimPluginFrom2Nix {
     pname = "telescope.nvim";
-    version = "2022-07-07";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "524c4eb7fb1a9941460ab7c7c09a3bca9cebb7be";
-      sha256 = "07f8j6d0hpg70qdnnfl17l7s396lb7jnda7vz9zh57dhgk0zr5n6";
+      rev = "b5833a682c511885887373aad76272ad70f7b3c2";
+      sha256 = "1czip023gay22dh4zz18pkxaazljm2miqhhifvwf39vrbx8sywdx";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -7519,12 +7531,12 @@ final: prev:
 
   tlib_vim = buildVimPluginFrom2Nix {
     pname = "tlib_vim";
-    version = "2022-06-14";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "tomtom";
       repo = "tlib_vim";
-      rev = "223c696eab4a3a59a33352531e42c74c721510e7";
-      sha256 = "1x9s9ypk934lkqpcyvycij5803y1vz5i3q8p8di6d6jv04ylvgvl";
+      rev = "d3bdad7b5e4253dc7ce6793342d7b8755c67ff0c";
+      sha256 = "14r3nn1lq1cx2jr02czrrl55k2s0da6375js24c426iqar9dzf17";
     };
     meta.homepage = "https://github.com/tomtom/tlib_vim/";
   };
@@ -7592,12 +7604,12 @@ final: prev:
 
   toggleterm-nvim = buildVimPluginFrom2Nix {
     pname = "toggleterm.nvim";
-    version = "2022-07-05";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "toggleterm.nvim";
-      rev = "8cba5c20c9d8517af21ac9e2afd06ad7b2dbdece";
-      sha256 = "1radhrw4byzif24nrfsbmjyqbxahh6m9w3lhwh3hnzck08kwxvbm";
+      rev = "cd12ed737d3de2757a540ddf4962a6de05881127";
+      sha256 = "032x7kmy8aqrc3lq6ns3jcicvjgwjhsfmfch3s20af48y6lp1xm7";
     };
     meta.homepage = "https://github.com/akinsho/toggleterm.nvim/";
   };
@@ -7832,12 +7844,12 @@ final: prev:
 
   vifm-vim = buildVimPluginFrom2Nix {
     pname = "vifm.vim";
-    version = "2022-07-05";
+    version = "2022-07-20";
     src = fetchFromGitHub {
       owner = "vifm";
       repo = "vifm.vim";
-      rev = "617dee975135f0981410b8369dc94dbe58a80d7c";
-      sha256 = "1dgfbgx5475zfpxv0shliyajv7568ggiwcg61azfqi52mqgyy1dp";
+      rev = "18113770f05b2a6a8b70328277099189185471e0";
+      sha256 = "13r17a8zl9gxd4d0m3gwvhsxlkaczl8mynfaba9h4akyfqrvcwj6";
     };
     meta.homepage = "https://github.com/vifm/vifm.vim/";
   };
@@ -8168,12 +8180,12 @@ final: prev:
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2022-06-28";
+    version = "2022-07-13";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "91b67e3ca2d7bc66544724f9c702265c564a1f2e";
-      sha256 = "0b007gl1j8k91h3fwxjkviikaijdhfvsq96k8pqvszaqjsszrksj";
+      rev = "ebb89a0846ff8b8bc64579155d661b825f97d3f2";
+      sha256 = "0c75m9hcyjng66j0fw60q77bqcyzqwccgfyc683gfik0qhd3k3qs";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -8192,12 +8204,12 @@ final: prev:
 
   vim-airline-themes = buildVimPluginFrom2Nix {
     pname = "vim-airline-themes";
-    version = "2021-07-13";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline-themes";
-      rev = "97cf3e6e638f936187d5f6e9b5eb1bdf0a4df256";
-      sha256 = "0cbxjb1q7xlxykzq4ab4n3ny768ysf97f7h7d9spfmw286j3c2wi";
+      rev = "55bad92d246a31e3425dfaf16b7eec657eab1fad";
+      sha256 = "1xr8h8n1vxdbl7cm6jxqb2y3ywdq53vm9vq4qbz2xpg8w5fvm3z7";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline-themes/";
   };
@@ -8264,12 +8276,12 @@ final: prev:
 
   vim-argwrap = buildVimPluginFrom2Nix {
     pname = "vim-argwrap";
-    version = "2022-02-08";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "FooSoft";
       repo = "vim-argwrap";
-      rev = "0faba07179f96cae2ab49cf2cc22ebeb922c1532";
-      sha256 = "1lb1rjp1q25gqpzbjix9anjxvx7cqw1qlacvc693f59gl8s8nbf4";
+      rev = "feaba6b8b6ca099d267c81ee2c4ba43ce6de8499";
+      sha256 = "08hjsxwm0fxgc54awzr7fmq1mrddq3rah40wnj44l4lsd73f5lba";
     };
     meta.homepage = "https://github.com/FooSoft/vim-argwrap/";
   };
@@ -8300,12 +8312,12 @@ final: prev:
 
   vim-auto-save = buildVimPluginFrom2Nix {
     pname = "vim-auto-save";
-    version = "2021-10-15";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "907th";
       repo = "vim-auto-save";
-      rev = "d8ff037621e2351278cf0892ca19ee7ce479e802";
-      sha256 = "1z075hb5wi7sv9yha4fxfxakcayymicg6av2gc9skaw8y2sx6jzn";
+      rev = "038c104f67a63d4a39bef1ce5d60716fbebf1b24";
+      sha256 = "1sm08m86l7vd9v34ba0rfmybnl5930djnmfjhcr380bpwq946vky";
     };
     meta.homepage = "https://github.com/907th/vim-auto-save/";
   };
@@ -8540,12 +8552,12 @@ final: prev:
 
   vim-clap = buildVimPluginFrom2Nix {
     pname = "vim-clap";
-    version = "2022-07-08";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "liuchengxu";
       repo = "vim-clap";
-      rev = "01405e75aaedaddee9f26f3491dc22683c43f0ff";
-      sha256 = "1gi3f9zbqzd88fydgzhd9cl47x263cnqhkhdwr18v7rh32056ik3";
+      rev = "141fb556f43ea4a50a406d855b6339f037075c75";
+      sha256 = "0c2q61i4pcfbsizk54npdnzdrg6g3v5cfhcvj4rh87scj6sapp27";
     };
     meta.homepage = "https://github.com/liuchengxu/vim-clap/";
   };
@@ -8600,12 +8612,12 @@ final: prev:
 
   vim-code-dark = buildVimPluginFrom2Nix {
     pname = "vim-code-dark";
-    version = "2022-06-15";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "tomasiser";
       repo = "vim-code-dark";
-      rev = "caf254ffa59b91c41851024a58d1eaa806a81bc9";
-      sha256 = "0ympd38yf9wlm37sgamyxi8nal0k7imd173xxfp617sj7lrnnx5q";
+      rev = "08eea24ec8c9a713e53ec47b7dd2c1d5a2dd7027";
+      sha256 = "1y9y37l55qx1yqpksj38di41rbxr498rcxf9dnczk2mp7hcssi0b";
     };
     meta.homepage = "https://github.com/tomasiser/vim-code-dark/";
   };
@@ -8900,12 +8912,12 @@ final: prev:
 
   vim-dirvish = buildVimPluginFrom2Nix {
     pname = "vim-dirvish";
-    version = "2022-04-26";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "justinmk";
       repo = "vim-dirvish";
-      rev = "7e41cd7628d9844b4e66b45104f3abc326aa1a00";
-      sha256 = "16q979l3zjh4ly0rr74y3g3q0csabs8v5k6dxkyymvg3bycrpg4y";
+      rev = "81b40878f286f370df2a2b3a52c4d860643d2142";
+      sha256 = "19wmp9bx3sgf4vjvq504ah12hh6zm7hvqjyq07sccy2z7ld87bd5";
     };
     meta.homepage = "https://github.com/justinmk/vim-dirvish/";
   };
@@ -9068,12 +9080,12 @@ final: prev:
 
   vim-endwise = buildVimPluginFrom2Nix {
     pname = "vim-endwise";
-    version = "2022-07-01";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-endwise";
-      rev = "79a3397f7799cb211a7fb803388b96a5f28fd778";
-      sha256 = "1fhs01k6nmnik54inx7jq4yxsfpxiawvw7abwxwwd6fshss57k66";
+      rev = "210bec5b5306023ba7b04a4e5b0824755ea51d5d";
+      sha256 = "1f51nv2ffqp0sg6fv5x8hm94mc1l4pmmnc05ghbahzn8z6042b52";
     };
     meta.homepage = "https://github.com/tpope/vim-endwise/";
   };
@@ -9128,12 +9140,12 @@ final: prev:
 
   vim-eunuch = buildVimPluginFrom2Nix {
     pname = "vim-eunuch";
-    version = "2022-05-06";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-eunuch";
-      rev = "39e0232f490322c5a2d9e24275872f28da496a93";
-      sha256 = "1wp5x5vximysab4c97d7x7y0hnnmycfm9h8mxxzz291ra5yrbbr2";
+      rev = "74e0e1662cc9ed3d58ba3e3de20eb30ac4039956";
+      sha256 = "0c9in0y32glddwzv6d9720qhm5fhh4l0kxfv6griaxp8707pbnm3";
     };
     meta.homepage = "https://github.com/tpope/vim-eunuch/";
   };
@@ -9320,12 +9332,12 @@ final: prev:
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2022-07-08";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "ff04324bffd86f9c146cc5fc2c0a2f95a1509643";
-      sha256 = "0g0sj9j8nsln2q8msp1qy2139pvi949gyyh64qy3jafa5bxg6gcn";
+      rev = "9a13fc87c4ab83ea81e71ccad9b846a5eb31a998";
+      sha256 = "0k8zyj0pjnzknbw758gamg0hqn5bl3c3qasaxqk9fmsb10hky4hr";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -9464,12 +9476,12 @@ final: prev:
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2022-06-09";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "b7506c6da8ea3a88e268a91aa6630be3e26a20a9";
-      sha256 = "1n0b5057q41d32gdlvcxv01xgj7m30428fyqrr6la2maixvv77zw";
+      rev = "7ec0a19a78a453686cb5c9776e506375562f9a1f";
+      sha256 = "17aq08q5ymc7460lf02wfw7wl3dsnazm504m45w6f6i3zhzbwqnq";
     };
     meta.homepage = "https://github.com/fatih/vim-go/";
   };
@@ -9765,12 +9777,12 @@ final: prev:
 
   vim-illuminate = buildVimPluginFrom2Nix {
     pname = "vim-illuminate";
-    version = "2022-04-10";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "vim-illuminate";
-      rev = "c82e6d04f27a41d7fdcad9be0bce5bb59fcb78e5";
-      sha256 = "192a6il56r4cfkqq67vh5kbdfa7vzwmh33sb8zy6zlri0a0h7dw8";
+      rev = "6bfa5dc069bd4aa8513a3640d0b73392094749be";
+      sha256 = "0jwqmp8zx9iv80rlz24xvp62jnrhq7m8jamnk7s2x1cw2ik83gjl";
     };
     meta.homepage = "https://github.com/RRethy/vim-illuminate/";
   };
@@ -10006,12 +10018,12 @@ final: prev:
 
   vim-kitty-navigator = buildVimPluginFrom2Nix {
     pname = "vim-kitty-navigator";
-    version = "2022-03-27";
+    version = "2022-07-25";
     src = fetchFromGitHub {
       owner = "knubie";
       repo = "vim-kitty-navigator";
-      rev = "7bf84bc1253bebb86cbf63efa274a656e1faadc6";
-      sha256 = "126z01zqrpnkhi7kprl8kqwkr5ahxyrnx3pvzzmfqb9320v98d18";
+      rev = "e48aae3c7e3136682b3f4c6cfd85867b392f7f1a";
+      sha256 = "06caj10yw71rbksf0cjdxak3c1qm7qcby7jrc26llk5qhfpwgh2a";
     };
     meta.homepage = "https://github.com/knubie/vim-kitty-navigator/";
   };
@@ -10186,12 +10198,12 @@ final: prev:
 
   vim-lsp = buildVimPluginFrom2Nix {
     pname = "vim-lsp";
-    version = "2022-07-01";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "prabirshrestha";
       repo = "vim-lsp";
-      rev = "68c018eb1a79e0bbeb496f7040f7205b57cf3750";
-      sha256 = "0ykacf1zkiqh66ikfkv9md1qhylyz7n7fb2ql1g2ikc428lh22vc";
+      rev = "eb542a379fbb8147ac8ae346f50217df655acc1d";
+      sha256 = "0ka3dqdmj9h3ld7xnh3vfgpjs9l0d651gz0zr76spf7xdgrn59y7";
     };
     meta.homepage = "https://github.com/prabirshrestha/vim-lsp/";
   };
@@ -10234,24 +10246,24 @@ final: prev:
 
   vim-manpager = buildVimPluginFrom2Nix {
     pname = "vim-manpager";
-    version = "2022-01-28";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "lambdalisue";
       repo = "vim-manpager";
-      rev = "194607a8d1bd122ad811ef601eb04a3df7786d59";
-      sha256 = "0qnm4k0frki3p9fpb6h4xnv1dxijk9aqcd7glq28c216gh395a5d";
+      rev = "ba60d59a79c096775f5c7f7d76fdffa396efdfca";
+      sha256 = "115sm2hxbc0jyf0wx6nh6249pmvv9rm3wa3wixggakv2lj9hddjl";
     };
     meta.homepage = "https://github.com/lambdalisue/vim-manpager/";
   };
 
   vim-markbar = buildVimPluginFrom2Nix {
     pname = "vim-markbar";
-    version = "2022-07-02";
+    version = "2022-07-10";
     src = fetchFromGitHub {
       owner = "Yilin-Yang";
       repo = "vim-markbar";
-      rev = "20d5555ff854d89493b8f434ba619cae0b0268d9";
-      sha256 = "027ridkx2akvq7n17ad6xrwdc9bm2avhgdsfhh31p3iyxhs7g8da";
+      rev = "8da283528c36a3e1c25d7c40c259f3a8082d1467";
+      sha256 = "1dfvi3afqxi5142n2j9zz78mjxcnsh77v83247ax15y679ww9h64";
     };
     meta.homepage = "https://github.com/Yilin-Yang/vim-markbar/";
   };
@@ -10295,12 +10307,12 @@ final: prev:
 
   vim-matchup = buildVimPluginFrom2Nix {
     pname = "vim-matchup";
-    version = "2022-05-29";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "andymass";
       repo = "vim-matchup";
-      rev = "976ebfe61b407d0a75d87b4a507bf9ae4ffffbaa";
-      sha256 = "182lzlbjfplvhzw36rsizjhjcnhkddswm0yydbqg3gjdxs7y5wdf";
+      rev = "3cebd218a7b85a75df3f4f7867adc79b8624a217";
+      sha256 = "0n7hhiws3i0dckk8jmb9bb6qqm43h1l39v6f1m3z918lgjmlx5rw";
     };
     meta.homepage = "https://github.com/andymass/vim-matchup/";
   };
@@ -10319,12 +10331,12 @@ final: prev:
 
   vim-merginal = buildVimPluginFrom2Nix {
     pname = "vim-merginal";
-    version = "2022-06-25";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "idanarye";
       repo = "vim-merginal";
-      rev = "0fab5c23255902f975c52e65fbb6dff9be8ed64d";
-      sha256 = "0ia7nmhipghw4d7azbgsrdmdd8dc36cqdj9grg5g2xlvfmfj15pv";
+      rev = "436076b9f2daa805948fa054a24e3b519f6fc089";
+      sha256 = "1gcc35pp44sm632nqa14hg9d8ymfrfs9sd62gzjkygjbyz9c8nc1";
     };
     meta.homepage = "https://github.com/idanarye/vim-merginal/";
   };
@@ -10415,12 +10427,12 @@ final: prev:
 
   vim-mundo = buildVimPluginFrom2Nix {
     pname = "vim-mundo";
-    version = "2022-06-20";
+    version = "2022-07-17";
     src = fetchFromGitHub {
       owner = "simnalamburt";
       repo = "vim-mundo";
-      rev = "b9a6adbcfacc1ffe42ef3aa888f7c828a0b63746";
-      sha256 = "0x0xjijadzk3z3f4bs0k3rbhb760qcdczvn0c8m9gx678wfjshyd";
+      rev = "3c7e008a9922702be979dbfe3c5280313f53618b";
+      sha256 = "0gjsv7abpdiv4x199057404xhimlgy6r2f5y22q4p574mq66mg2k";
     };
     meta.homepage = "https://github.com/simnalamburt/vim-mundo/";
   };
@@ -10571,12 +10583,12 @@ final: prev:
 
   vim-ocaml = buildVimPluginFrom2Nix {
     pname = "vim-ocaml";
-    version = "2022-06-24";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "ocaml";
       repo = "vim-ocaml";
-      rev = "47fb78a015d3ea185dd26cfc162d81dc564aec76";
-      sha256 = "08ip8g4b6q5ivfgvrgjs4p0f4x6qj1gsyjrr1vshqg3b1z06877z";
+      rev = "95e1947766a1496f31ee501828375ed30d06edf3";
+      sha256 = "1p4s7gbxwj81ywycm51b23a9pkfb117bjvkg8m6yknap26sx0wml";
     };
     meta.homepage = "https://github.com/ocaml/vim-ocaml/";
   };
@@ -10751,12 +10763,12 @@ final: prev:
 
   vim-pandoc-syntax = buildVimPluginFrom2Nix {
     pname = "vim-pandoc-syntax";
-    version = "2022-06-01";
+    version = "2022-07-23";
     src = fetchFromGitHub {
       owner = "vim-pandoc";
       repo = "vim-pandoc-syntax";
-      rev = "ff52ed9296715988fc3269b64a903415c3bdf322";
-      sha256 = "08p51a7alj173j0n8qlg4lpyyr4m2i6jfm7wqxl0k4qnfw3lpyx9";
+      rev = "2baeabb9584bb948618806f22bc4cef5685535fc";
+      sha256 = "095hsn5vm0s8ky84l85cshn9hsa3cmyy27r9n9cdq28x373nabdr";
     };
     meta.homepage = "https://github.com/vim-pandoc/vim-pandoc-syntax/";
   };
@@ -11075,12 +11087,12 @@ final: prev:
 
   vim-quickrun = buildVimPluginFrom2Nix {
     pname = "vim-quickrun";
-    version = "2022-07-06";
+    version = "2022-07-10";
     src = fetchFromGitHub {
       owner = "thinca";
       repo = "vim-quickrun";
-      rev = "e76078886f944a2ec83ead3aa749895d31dd45e1";
-      sha256 = "10azmn46bi9rc8jdbxd3gbakp9p3cn5mcs9dkf4dbfkq6929mlf0";
+      rev = "50f9ced186cf2651f4356aa3548c2306e181ec3b";
+      sha256 = "1wv498ikprc8cmvlmyspw3mll9na5aa8w3yni8vzrdlca6zy3l0q";
     };
     meta.homepage = "https://github.com/thinca/vim-quickrun/";
   };
@@ -11183,12 +11195,12 @@ final: prev:
 
   vim-rsi = buildVimPluginFrom2Nix {
     pname = "vim-rsi";
-    version = "2021-01-16";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-rsi";
-      rev = "e181883a0932d9315cceb96b5fffb5e2ec67068e";
-      sha256 = "1pfg3y1hf840pr7f6vcwldbraj2w4c2pnf7ampbgyric0q3f4708";
+      rev = "4c673fb6c70652a09682c50a0e308184731ca70b";
+      sha256 = "1vfgb6ip8rnwxvjayv4lxar274bx3wykax3ms07wyna9p9pp5qfj";
     };
     meta.homepage = "https://github.com/tpope/vim-rsi/";
   };
@@ -11219,12 +11231,12 @@ final: prev:
 
   vim-sandwich = buildVimPluginFrom2Nix {
     pname = "vim-sandwich";
-    version = "2022-07-03";
+    version = "2022-07-22";
     src = fetchFromGitHub {
       owner = "machakann";
       repo = "vim-sandwich";
-      rev = "59f95e614f1363be7d00523189d70011ecf477ec";
-      sha256 = "0jwmsnd0wck7w0y52vy0ky20dr15v1x0hs5g5nv4p35csafm0w0r";
+      rev = "74898e6f5c5ea37e17163f00bf4981049f785eed";
+      sha256 = "09zx0081bmprvf1zv3wxjnl0j4viks9w3yysbwgg1qqi38fls5rg";
     };
     meta.homepage = "https://github.com/machakann/vim-sandwich/";
   };
@@ -11399,12 +11411,12 @@ final: prev:
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2022-07-08";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "f5828b076771551dee9ea09cd735bea019d9596c";
-      sha256 = "047b7zbhrp1k2b2h2s0bawiwgyny2czk4vy36kmlzizrp3jl0bd8";
+      rev = "36153404daeb4c9b0f8db0be1ee6aae7ef73fee3";
+      sha256 = "1chq7ppyv7djjsamj7a05dx3zs5ic3nr0wvvc8qfswx1i9lrjhys";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -11483,12 +11495,12 @@ final: prev:
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2022-06-10";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "222cf7b44bb569c9a046a9891000c898bd4c43c9";
-      sha256 = "0xksa854c8rjp9y2xvhk78z5ha9p8c3pvpzvddii2aay22cfkn8h";
+      rev = "c5d977c49211883b9241086874fe89c72ae378ca";
+      sha256 = "0sqy26xicaxsx7ii74j9z5inc6nnlxp05dssy1c5ilf6pk2npb44";
     };
     meta.homepage = "https://github.com/honza/vim-snippets/";
   };
@@ -11567,12 +11579,12 @@ final: prev:
 
   vim-startuptime = buildVimPluginFrom2Nix {
     pname = "vim-startuptime";
-    version = "2022-06-17";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "dstein64";
       repo = "vim-startuptime";
-      rev = "82c8a5491e13fa307fb2cb47182a30560f930377";
-      sha256 = "05bj0cs5m829bdcm9zgmla2ha2nwg5cn1qs9r75haway42dza3s6";
+      rev = "dcdba2cd6713b48d86cf828f4752273a8b6eaaef";
+      sha256 = "0zr6pvw3jimjzlxjg2mjbr6kpdkihxai388b8492zp48ixv01hh0";
     };
     meta.homepage = "https://github.com/dstein64/vim-startuptime/";
   };
@@ -11736,12 +11748,12 @@ final: prev:
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2022-06-27";
+    version = "2022-07-21";
     src = fetchFromGitHub {
       owner = "vim-test";
       repo = "vim-test";
-      rev = "dfbf93d71b63699d54accd37f12ba328b8ac311a";
-      sha256 = "1s5m1d37r10l24x5n0dr6pa7hfb5n0s1kw77vfd04k8jf1w2sphb";
+      rev = "a5b122e8c5eb47db5a034908172ccbee44f4e520";
+      sha256 = "0mwlmmf7fikrfjq0m2bn9dwmgky0mp0w7lll7fw4lqdmphvk8kd5";
     };
     meta.homepage = "https://github.com/vim-test/vim-test/";
   };
@@ -11820,12 +11832,12 @@ final: prev:
 
   vim-textobj-variable-segment = buildVimPluginFrom2Nix {
     pname = "vim-textobj-variable-segment";
-    version = "2021-08-29";
+    version = "2022-07-16";
     src = fetchFromGitHub {
       owner = "Julian";
       repo = "vim-textobj-variable-segment";
-      rev = "30f7bc94bc8a87d923631f5e440200b662becb1a";
-      sha256 = "1168qylhs0f0xzvy68kh07p8w01ypc78h2cb4pklv8079c869k30";
+      rev = "51c323dca5c44f7a8e5a689b9156ef818d02188e";
+      sha256 = "1fvy3il883b7czwsai1pq80hslra23c7ff23ydhvzxgfip9qrkxc";
     };
     meta.homepage = "https://github.com/Julian/vim-textobj-variable-segment/";
   };
@@ -11916,12 +11928,12 @@ final: prev:
 
   vim-tpipeline = buildVimPluginFrom2Nix {
     pname = "vim-tpipeline";
-    version = "2022-06-25";
+    version = "2022-07-19";
     src = fetchFromGitHub {
       owner = "vimpostor";
       repo = "vim-tpipeline";
-      rev = "af7fe78523c7c860d00b79383908322fcb5e6133";
-      sha256 = "1wazgrvywmr6hc32l4vbqdd8cjq73fy2pnaiifwcjbpxzxj6qasw";
+      rev = "45969a8510894b0f8ff4468361c18897dd524b98";
+      sha256 = "0wdvdxrphix46kbaaqqsarvg161xrb8r0s3c0q29k1kzajnygxpm";
     };
     meta.homepage = "https://github.com/vimpostor/vim-tpipeline/";
   };
@@ -12216,12 +12228,12 @@ final: prev:
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2022-04-11";
+    version = "2022-07-09";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "a0a7dd335189c5ba0c6afee875c6713d70e6e3fc";
-      sha256 = "09lpivh5a6n61ypw0n31ncy5bj4cpzvvn4s6666yjnpsmi2phsix";
+      rev = "3dc0c735bd031a9302177762ec6b608e450a1564";
+      sha256 = "19zbf82sflkvh9qw9prha1lxc8ryqmr1n3fflxfmd7xfvv3n336m";
     };
     meta.homepage = "https://github.com/lyokha/vim-xkbswitch/";
   };
@@ -12408,12 +12420,12 @@ final: prev:
 
   vimspector = buildVimPluginFrom2Nix {
     pname = "vimspector";
-    version = "2022-06-28";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "bdfa7471ec63e49b7712a8f16ee7d1f96f3783d8";
-      sha256 = "0phxs1gkw61g29fcn6ry9v282a6i8dlgkjgnp0nb7r69zrqcigrr";
+      rev = "794c11f2dc3d943183fc04b6b9f82d3a0207ce02";
+      sha256 = "152rj4vf0hi0am2qg31mgsrvma1k7nx3gnai35jycv0wyqrxvnlb";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -12421,12 +12433,12 @@ final: prev:
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2022-07-08";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "2ebf0aea386c2fa82161b2cb533a49273933e025";
-      sha256 = "16qn4g2sy0q7m1q8axg4n6ax1g4ympq0iss95mjz4g672zylkbb9";
+      rev = "b9ad861cd7ab1a55eb5f64b3e2e0043d2b835946";
+      sha256 = "03lybgm2wbncdy578zqd05nsihg3y7b3mj9cd5jr2q46iih6rzkq";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -12710,12 +12722,12 @@ final: prev:
 
   zk-nvim = buildVimPluginFrom2Nix {
     pname = "zk-nvim";
-    version = "2022-06-30";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "mickael-menu";
       repo = "zk-nvim";
-      rev = "fab4bb7fd95edd9eaab7cd7bb517a291351e0574";
-      sha256 = "009mnwbn2g58apcvi3s11w1q0pcxfnw25rb023n6vy107qfszncz";
+      rev = "73affbc95fba3655704e4993a8929675bc9942a1";
+      sha256 = "0rw72y6h19dq67ncrfyc4y2743czh8j735ihrqykfj2mr3rwa2h5";
     };
     meta.homepage = "https://github.com/mickael-menu/zk-nvim/";
   };
@@ -12746,36 +12758,36 @@ final: prev:
 
   catppuccin-nvim = buildVimPluginFrom2Nix {
     pname = "catppuccin-nvim";
-    version = "2022-06-24";
+    version = "2022-07-26";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "ffd6f3e10445cb2c92401b75d4eccb75faf8b6b1";
-      sha256 = "0970426myaybar4aqf3lz468057q2b88bmr4skmmfy2a2xq3cddc";
+      rev = "484c7d741176f471ae4425af40e3c0cd97da188e";
+      sha256 = "15r7r8pb2gdbhlm8zvm92fa6fapns2gpzfj1h4py0h62cdgy4qq5";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
 
   catppuccin-vim = buildVimPluginFrom2Nix {
     pname = "catppuccin-vim";
-    version = "2022-07-02";
+    version = "2022-07-18";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "vim";
-      rev = "4f4d11c9c6bd9dec003cad2162ba25fbb20180e4";
-      sha256 = "0f9vf7p22n4sl4qa7km5pg62dcnn30d63ghhbcipm21777xws8a9";
+      rev = "ee1c14bd00fd6edcf158fab340c42622690fd859";
+      sha256 = "057gafifcp5gx2bw3gcij1yq3w2ikll1ka7gs4y0sm5dq7czpff0";
     };
     meta.homepage = "https://github.com/catppuccin/vim/";
   };
 
   chad = buildVimPluginFrom2Nix {
     pname = "chad";
-    version = "2022-07-08";
+    version = "2022-07-27";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "2560bdee3ca186fc6fe3426b29741f9657125fff";
-      sha256 = "0vwqb3xy5krzz0gvl1a18kgls8kyhlf8hw5i29lj5lj3g6nzs6j2";
+      rev = "e15a5faf6d321df8f93c61d3ed346315233668cc";
+      sha256 = "092vmylxd916li71vscx0d52r8qfwnrkmq4a9r4jpx1pa982gjw2";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -12794,24 +12806,24 @@ final: prev:
 
   embark-vim = buildVimPluginFrom2Nix {
     pname = "embark-vim";
-    version = "2022-04-08";
+    version = "2022-07-12";
     src = fetchFromGitHub {
       owner = "embark-theme";
       repo = "vim";
-      rev = "d231d6f6ddb9c405ccf9ec2331deaf1d0b2c8d2a";
-      sha256 = "0pbzjmywkxsfr3dw1gvaisnq87ryzk9565s4gj77yr8qrbjh1k1j";
+      rev = "1dcf15351622964ab7e35f3e780e7a1c581ebd2d";
+      sha256 = "1hc5grwn5xxrswm7yz7dn2fjddvngvy09bhjdgldpxw45m9kpdd9";
     };
     meta.homepage = "https://github.com/embark-theme/vim/";
   };
 
   gruvbox-community = buildVimPluginFrom2Nix {
     pname = "gruvbox-community";
-    version = "2022-04-29";
+    version = "2022-07-14";
     src = fetchFromGitHub {
       owner = "gruvbox-community";
       repo = "gruvbox";
-      rev = "34ad436b234c5095d46bb065c5b32780618df83f";
-      sha256 = "11zp3w4n2iq97rx7fp7rlvykmx4k7swbbqpjphrx0il0fmghv6q8";
+      rev = "7e1b1bcab96149224738664a9ddd7cb1b3acf90a";
+      sha256 = "1hrr0lcj93iwlzzawvg183d0zz3phlnnx70gfhsv83csnj04r1vz";
     };
     meta.homepage = "https://github.com/gruvbox-community/gruvbox/";
   };
@@ -12842,12 +12854,12 @@ final: prev:
 
   rose-pine = buildVimPluginFrom2Nix {
     pname = "rose-pine";
-    version = "2022-06-16";
+    version = "2022-07-17";
     src = fetchFromGitHub {
       owner = "rose-pine";
       repo = "neovim";
-      rev = "3f0a6c06da29c7b0f3fa49a313ae4d56f0dc58b8";
-      sha256 = "01r34bkfs8kvaw72852sfk5jr1ngg2qf6a3dlpsppkb8l4lwi1k3";
+      rev = "9aff7f7602614f4f0046db639f07cf2bed4c321a";
+      sha256 = "0wrqhb2j5hfg4vvs7xacy8vszyn40ygjsfi9f2i5p7h682vbz5ad";
     };
     meta.homepage = "https://github.com/rose-pine/neovim/";
   };
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index f7e1645d707..b2477665ec9 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -824,6 +824,10 @@ self: super: {
     meta.platforms = lib.platforms.all;
   });
 
+  telescope-media-files-nvim = super.telescope-media-files-nvim.overrideAttrs (old: {
+    dependencies = with self; [ telescope-nvim popup-nvim plenary-nvim ];
+  });
+
   telescope-nvim = super.telescope-nvim.overrideAttrs (old: {
     dependencies = with self; [ plenary-nvim ];
   });
@@ -974,7 +978,7 @@ self: super: {
             libiconv
           ];
 
-          cargoSha256 = "sha256-9Vr1gpggfAQlMgM/s8j6FTTYFppHql2PQ7cPtg1wNmo=";
+          cargoSha256 = "sha256-prqS4cx5T+EiilXf3v7ResNBtgst0Kpgvayknf0QDXA=";
         };
       in
       ''
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index 844740160e4..b75fa4b2801 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -614,6 +614,7 @@ https://github.com/nvim-telescope/telescope-fzf-writer.nvim/,,
 https://github.com/nvim-telescope/telescope-fzy-native.nvim/,,
 https://github.com/nvim-telescope/telescope-github.nvim/,,
 https://github.com/gbrlsnchs/telescope-lsp-handlers.nvim/,,
+https://github.com/nvim-telescope/telescope-media-files.nvim/,HEAD,
 https://github.com/nvim-telescope/telescope-project.nvim/,,
 https://github.com/nvim-telescope/telescope-symbols.nvim/,,
 https://github.com/nvim-telescope/telescope-ui-select.nvim/,,
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index 06e80e56c6e..ba827944210 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -34,11 +34,16 @@ let
         mktplcRef = {
           publisher = "1Password";
           name = "op-vscode";
-          version = "1.0.0";
-          sha256 = "sha256-ZeKTP3WKjyuR/ryBdJRHXJT+l2gbY4QnWNTsN9+4nOA=";
+          version = "1.0.1";
+          sha256 = "sha256-0SsHf1zZgmrb7oIsRU6Xpa3AvR8bSfANz5ZlRogjiS0=";
         };
-        meta = {
-          license = lib.licenses.mit;
+        meta = with lib; {
+          changelog = "https://github.com/1Password/op-vscode/releases";
+          description = "A VSCode extension that integrates your development workflow with 1Password service";
+          downloadPage = "https://marketplace.visualstudio.com/items?itemName=1Password.op-vscode";
+          homepage = "https://github.com/1Password/op-vscode";
+          license = licenses.mit;
+          maintainers = with maintainers; [ _2gn ];
         };
       };
 
diff --git a/pkgs/applications/graphics/pineapple-pictures/default.nix b/pkgs/applications/graphics/pineapple-pictures/default.nix
index 7a730cbda93..04677a3982a 100644
--- a/pkgs/applications/graphics/pineapple-pictures/default.nix
+++ b/pkgs/applications/graphics/pineapple-pictures/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pineapple-pictures";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "BLumia";
     repo = "pineapple-pictures";
     rev = version;
-    sha256 = "sha256-KTYwe6fS/rUHBbC2B9OdK95mFm3zvgDdGODkg7VQ27M=";
+    sha256 = "sha256-1fsEHyepmoZfNOFEnW6RQJyccOlQr5LTp8TjRqyXkcw";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/cluster/argocd-autopilot/default.nix b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
index 7023e94f0a2..1447288038d 100644
--- a/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
+++ b/pkgs/applications/networking/cluster/argocd-autopilot/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "argocd-autopilot";
-  version = "0.3.9";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "argoproj-labs";
     repo = "argocd-autopilot";
     rev = "v${version}";
-    sha256 = "sha256-LX/26fOvQYnzCbVuMxsuD/3bdZx/mVD47v8l4DppUPA=";
+    sha256 = "sha256-xwcETaeoxnfZqW48IJRpJkONuPNuFR5ngUYAMDKWMtk=";
   };
 
-  vendorSha256 = "sha256-UYTEQ3RvSJB+9zduw0xCDU71Zp54ilZzNucuzTMKEHA=";
+  vendorSha256 = "sha256-rJj9GFNX9OUMzkdr9D9dzucSZe10iW2LpqybhXD0m6s=";
 
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/cluster/cilium/default.nix b/pkgs/applications/networking/cluster/cilium/default.nix
index f9b66041d40..cfa1f787527 100644
--- a/pkgs/applications/networking/cluster/cilium/default.nix
+++ b/pkgs/applications/networking/cluster/cilium/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cilium-cli";
-  version = "0.11.11";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "cilium";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-IZMtkTKslFvbk/qwfZpFZAV6VUj66JKGFewXH1Ujxbw=";
+    sha256 = "sha256-/fVPo9aO2UhX/qsyjFUykFz4am7R2USmdvYqhQcT7q8=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/cluster/kn/default.nix b/pkgs/applications/networking/cluster/kn/default.nix
index 25363e7789e..b8e34871dd7 100644
--- a/pkgs/applications/networking/cluster/kn/default.nix
+++ b/pkgs/applications/networking/cluster/kn/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kn";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "knative";
     repo = "client";
     rev = "knative-v${version}";
-    sha256 = "sha256-etENW/zP9xy0pyUT2UoFXrzgkSXrfp8dxl35bD2t/Yc=";
+    sha256 = "sha256-3qH7L0tOsAnAAPIzTd5MIVMPM/M2SJAkxXfyMijHuRs=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/applications/networking/irc/senpai/default.nix b/pkgs/applications/networking/irc/senpai/default.nix
index d12ee05d4e2..a76a27607b4 100644
--- a/pkgs/applications/networking/irc/senpai/default.nix
+++ b/pkgs/applications/networking/irc/senpai/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "senpai";
-  version = "unstable-2022-05-10";
+  version = "unstable-2022-07-25";
 
   src = fetchFromSourcehut {
     owner = "~taiite";
     repo = "senpai";
-    rev = "7a9fe74fdfb3f334b97434df0aa74b2b32e3582e";
-    sha256 = "sha256-uagdJG+YVryzsaZfkg5W2F8mQSc1bpflL77tqMHp1Ck=";
+    rev = "f13aa044de9d7b8922a12e895f3ff3f86b60e939";
+    sha256 = "sha256-siQoRgbJIVtBXqrxJzdVABnDgdHqW5FLSJpBrL0iVuU=";
   };
 
   vendorSha256 = "sha256-hgojB1D0/SZWLEzJ48EBoT/InYYmqD/1qoTknfk/aTo=";
diff --git a/pkgs/applications/video/clapper/default.nix b/pkgs/applications/video/clapper/default.nix
index 1600b1b4d8b..9e8e88ecfbf 100644
--- a/pkgs/applications/video/clapper/default.nix
+++ b/pkgs/applications/video/clapper/default.nix
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clapper";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchFromGitHub {
     owner  = "Rafostar";
     repo   = pname;
     rev    = version;
-    sha256 = "sha256-o68IdI20gSwWCPI0g/BhUGF5ro6srXMy0JD1EgmY5ck=";
+    sha256 = "sha256-s+qdTq3/pHHstwr1W3Hs2Zje++iJFHM6hQTFoZD43bY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index 37ae9808bdd..4daa7b639b7 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "155a57bcfc019c9972a44be54a407d0329dfb436",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/155a57bcfc019c9972a44be54a407d0329dfb436.tar.gz",
-  "sha256": "17pqq15b936gf8vm1lb1kmnnlmjd61a5bfld9v3cs7ydz764kg8w",
-  "msg": "Update from Hackage at 2022-07-21T21:13:45Z"
+  "commit": "c58387b71e19d6dd43bbade8f84d6a44b6418e24",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/c58387b71e19d6dd43bbade8f84d6a44b6418e24.tar.gz",
+  "sha256": "0xdvqn4392l65ns4wm47c8nyp1s7al4i506927dmkzz85m3hvyn0",
+  "msg": "Update from Hackage at 2022-07-26T16:57:53Z"
 }
diff --git a/pkgs/development/compilers/ghc/9.4.1.nix b/pkgs/development/compilers/ghc/9.4.1.nix
new file mode 100644
index 00000000000..f883796452c
--- /dev/null
+++ b/pkgs/development/compilers/ghc/9.4.1.nix
@@ -0,0 +1,381 @@
+# Preliminary GHC 9.4.1 expression using the make build system.
+# TODO(@sternenseemann): port to hadrian, so we are prepared for 9.6
+# where make support will be dropped.
+{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
+
+# build-tools
+, bootPkgs
+, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
+, xattr, autoSignDarwinBinariesHook
+, bash
+
+, libiconv ? null, ncurses
+, glibcLocales ? null
+
+, # GHC can be built with system libffi or a bundled one.
+  libffi ? null
+
+, useLLVM ? !(stdenv.targetPlatform.isx86
+              || stdenv.targetPlatform.isPower
+              || stdenv.targetPlatform.isSparc
+              || (stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin))
+, # LLVM is conceptually a run-time-only depedendency, but for
+  # non-x86, we need LLVM to bootstrap later stages, so it becomes a
+  # build-time dependency too.
+  buildTargetLlvmPackages, llvmPackages
+
+, # If enabled, GHC will be built with the GPL-free but slightly slower native
+  # bignum backend instead of the faster but GPLed gmp backend.
+  enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp)
+, gmp
+
+, # If enabled, use -fPIC when compiling static libs.
+  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
+
+  # aarch64 outputs otherwise exceed 2GB limit
+, enableProfiledLibs ? !stdenv.targetPlatform.isAarch64
+
+, # Whether to build dynamic libs for the standard library (on the target
+  # platform). Static libs are always built.
+  enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
+
+, # Whether to build terminfo.
+  enableTerminfo ? !stdenv.targetPlatform.isWindows
+
+, # What flavour to build. An empty string indicates no
+  # specific flavour and falls back to ghc default values.
+  ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
+    (if useLLVM then "perf-cross" else "perf-cross-ncg")
+
+, #  Whether to build sphinx documentation.
+  enableDocs ? (
+    # Docs disabled for musl and cross because it's a large task to keep
+    # all `sphinx` dependencies building in those environments.
+    # `sphinx` pulls in among others:
+    # Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+    && !stdenv.hostPlatform.isMusl
+  )
+
+, enableHaddockProgram ?
+    # Disabled for cross; see note [HADDOCK_DOCS].
+    (stdenv.targetPlatform == stdenv.hostPlatform)
+
+, # Whether to disable the large address space allocator
+  # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
+}:
+
+assert !enableNativeBignum -> gmp != null;
+
+# Cross cannot currently build the `haddock` program for silly reasons,
+# see note [HADDOCK_DOCS].
+assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
+
+let
+  inherit (stdenv) buildPlatform hostPlatform targetPlatform;
+
+  inherit (bootPkgs) ghc;
+
+  # TODO(@Ericson2314) Make unconditional
+  targetPrefix = lib.optionalString
+    (targetPlatform != hostPlatform)
+    "${targetPlatform.config}-";
+
+  buildMK = ''
+    BuildFlavour = ${ghcFlavour}
+    ifneq \"\$(BuildFlavour)\" \"\"
+    include mk/flavours/\$(BuildFlavour).mk
+    endif
+    BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
+    BUILD_SPHINX_PDF = NO
+  '' +
+  # Note [HADDOCK_DOCS]:
+  # Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
+  # program is built (which we generally always want to have a complete GHC install)
+  # and whether it is run on the GHC sources to generate hyperlinked source code
+  # (which is impossible for cross-compilation); see:
+  # https://gitlab.haskell.org/ghc/ghc/-/issues/20077
+  # This implies that currently a cross-compiled GHC will never have a `haddock`
+  # program, so it can never generate haddocks for any packages.
+  # If this is solved in the future, we'd like to unconditionally
+  # build the haddock program (removing the `enableHaddockProgram` option).
+  ''
+    HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
+    # Build haddocks for boot packages with hyperlinking
+    EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
+
+    DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
+    BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
+  '' + lib.optionalString (targetPlatform != hostPlatform) ''
+    Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
+    CrossCompilePrefix = ${targetPrefix}
+  '' + lib.optionalString (!enableProfiledLibs) ''
+    GhcLibWays = "v dyn"
+  '' +
+  # -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
+  # makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
+  # This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
+  lib.optionalString enableRelocatedStaticLibs ''
+    GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
+    GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
+  '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    EXTRA_CC_OPTS += -std=gnu99
+  '';
+
+  # Splicer will pull out correct variations
+  libDeps = platform: lib.optional enableTerminfo ncurses
+    ++ [libffi]
+    ++ lib.optional (!enableNativeBignum) gmp
+    ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
+
+  # TODO(@sternenseemann): is buildTarget LLVM unnecessary?
+  # GHC doesn't seem to have {LLC,OPT}_HOST
+  toolsForTarget = [
+    pkgsBuildTarget.targetPackages.stdenv.cc
+  ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
+
+  targetCC = builtins.head toolsForTarget;
+
+  # Sometimes we have to dispatch between the bintools wrapper and the unwrapped
+  # derivation for certain tools depending on the platform.
+  bintoolsFor = {
+    # GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
+    # part of the bintools wrapper (due to codesigning requirements), but not on
+    # x86_64-darwin.
+    install_name_tool =
+      if stdenv.targetPlatform.isAarch64
+      then targetCC.bintools
+      else targetCC.bintools.bintools;
+    # Same goes for strip.
+    strip =
+      # TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
+      if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
+      then targetCC.bintools
+      else targetCC.bintools.bintools;
+  };
+
+  # Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
+  # But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
+  # see #84670 and #49071 for more background.
+  useLdGold = targetPlatform.linker == "gold" ||
+    (targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
+
+  # Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
+  variantSuffix = lib.concatStrings [
+    (lib.optionalString stdenv.hostPlatform.isMusl "-musl")
+    (lib.optionalString enableNativeBignum "-native-bignum")
+  ];
+
+in
+
+# C compiler, bintools and LLVM are used at build time, but will also leak into
+# the resulting GHC's settings file and used at runtime. This means that we are
+# currently only able to build GHC if hostPlatform == buildPlatform.
+assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
+assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
+assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
+
+stdenv.mkDerivation (rec {
+  version = "9.4.0.20220721";
+  pname = "${targetPrefix}ghc${variantSuffix}";
+
+  src = fetchurl {
+    url = "https://downloads.haskell.org/ghc/9.4.1-rc1/ghc-${version}-src.tar.xz";
+    sha256 = "bca8c52f76d8747a66291181de2de7bdf9ff80093808fe39bf5cbff0f116c426";
+  };
+
+  enableParallelBuilding = true;
+
+  outputs = [ "out" "doc" ];
+
+  patches = [
+    # fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
+    (fetchpatch {
+      url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/1482.patch";
+      sha256 = "sha256-8w8QUCsODaTvknCDGgTfFNZa8ZmvIKaKS+2ZJZ9foYk=";
+      extraPrefix = "utils/haddock/";
+      stripLen = 1;
+    })
+  ];
+
+  postPatch = "patchShebangs .";
+
+  # GHC needs the locale configured during the Haddock phase.
+  LANG = "en_US.UTF-8";
+
+  # GHC is a bit confused on its cross terminology.
+  # TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
+  preConfigure = ''
+    for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
+      export "''${env#TARGET_}=''${!env}"
+    done
+    # GHC is a bit confused on its cross terminology, as these would normally be
+    # the *host* tools.
+    export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
+    export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
+    # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
+    export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
+    export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
+    export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
+    export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
+    export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
+    export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
+    export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
+  '' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
+    export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
+    export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
+  '' + lib.optionalString useLLVM ''
+    export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
+    export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
+  '' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
+    # LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
+    export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
+  '' + ''
+
+    echo -n "${buildMK}" > mk/build.mk
+    # GHC 9.4.1-rc1 tarball is not properly prepared, also the boot script has been renamed
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/21626#note_444654
+    # TODO(@sternenseemann): make source-dist rules include all boot-generated files
+    ./boot.source
+
+    # Too restrictive upper bound on Cabal the make build system chokes on
+    # XXX(@sternenseemann): this should be upstreamed
+    substituteInPlace utils/ghc-cabal/ghc-cabal.cabal --replace "3.8" "3.9"
+
+    sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+  '' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
+    export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
+  '' + lib.optionalString (!stdenv.isDarwin) ''
+    export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
+  '' + lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS+=" -no_dtrace_dof"
+
+    # GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
+    export XATTR=${lib.getBin xattr}/bin/xattr
+  '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
+    sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
+  '' + lib.optionalString targetPlatform.isMusl ''
+      echo "patching llvm-targets for musl targets..."
+      echo "Cloning these existing '*-linux-gnu*' targets:"
+      grep linux-gnu llvm-targets | sed 's/^/  /'
+      echo "(go go gadget sed)"
+      sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
+      echo "llvm-targets now contains these '*-linux-musl*' targets:"
+      grep linux-musl llvm-targets | sed 's/^/  /'
+
+      echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
+      # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
+      for x in configure aclocal.m4; do
+        substituteInPlace $x \
+          --replace '*-android*|*-gnueabi*)' \
+                    '*-android*|*-gnueabi*|*-musleabi*)'
+      done
+  '';
+
+  # TODO(@Ericson2314): Always pass "--target" and always prefix.
+  configurePlatforms = [ "build" "host" ]
+    ++ lib.optional (targetPlatform != hostPlatform) "target";
+
+  # `--with` flags for libraries needed for RTS linker
+  configureFlags = [
+    "--datadir=$doc/share/doc/ghc"
+    "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
+  ] ++ lib.optionals (libffi != null) [
+    "--with-system-libffi"
+    "--with-ffi-includes=${targetPackages.libffi.dev}/include"
+    "--with-ffi-libraries=${targetPackages.libffi.out}/lib"
+  ] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
+    "--with-gmp-includes=${targetPackages.gmp.dev}/include"
+    "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
+  ] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
+    "--with-iconv-includes=${libiconv}/include"
+    "--with-iconv-libraries=${libiconv}/lib"
+  ] ++ lib.optionals (targetPlatform != hostPlatform) [
+    "--enable-bootstrap-with-devel-snapshot"
+  ] ++ lib.optionals useLdGold [
+    "CFLAGS=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+  ] ++ lib.optionals (disableLargeAddressSpace) [
+    "--disable-large-address-space"
+  ];
+
+  # Make sure we never relax`$PATH` and hooks support for compatibility.
+  strictDeps = true;
+
+  # Don’t add -liconv to LDFLAGS automatically so that GHC will add it itself.
+  dontAddExtraLibs = true;
+
+  nativeBuildInputs = [
+    perl autoconf automake m4 python3
+    ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
+  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+    autoSignDarwinBinariesHook
+  ] ++ lib.optionals enableDocs [
+    sphinx
+  ];
+
+  # For building runtime libs
+  depsBuildTarget = toolsForTarget;
+
+  buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
+
+  depsTargetTarget = map lib.getDev (libDeps targetPlatform);
+  depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
+
+  # required, because otherwise all symbols from HSffi.o are stripped, and
+  # that in turn causes GHCi to abort
+  stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
+
+  checkTarget = "test";
+
+  hardeningDisable =
+    [ "format" ]
+    # In nixpkgs, musl based builds currently enable `pie` hardening by default
+    # (see `defaultHardeningFlags` in `make-derivation.nix`).
+    # But GHC cannot currently produce outputs that are ready for `-pie` linking.
+    # Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
+    # See:
+    # * https://github.com/NixOS/nixpkgs/issues/129247
+    # * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
+    ++ lib.optional stdenv.targetPlatform.isMusl "pie";
+
+  # big-parallel allows us to build with more than 2 cores on
+  # Hydra which already warrants a significant speedup
+  requiredSystemFeatures = [ "big-parallel" ];
+
+  postInstall = ''
+    # Install the bash completion file.
+    install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
+  '';
+
+  passthru = {
+    inherit bootPkgs targetPrefix;
+
+    inherit llvmPackages;
+    inherit enableShared;
+
+    # This is used by the haskell builder to query
+    # the presence of the haddock program.
+    hasHaddock = enableHaddockProgram;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-${version}";
+  };
+
+  meta = {
+    homepage = "http://haskell.org/ghc";
+    description = "The Glasgow Haskell Compiler";
+    maintainers = with lib.maintainers; [
+      guibou
+    ] ++ lib.teams.haskell.members;
+    timeout = 24 * 3600;
+    inherit (ghc.meta) license platforms;
+  };
+
+} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
+  dontStrip = true;
+  dontPatchELF = true;
+  noAuditTmpdir = true;
+})
diff --git a/pkgs/development/haskell-modules/cabal2nix-unstable.nix b/pkgs/development/haskell-modules/cabal2nix-unstable.nix
index e21c3e1629a..0c12426434c 100644
--- a/pkgs/development/haskell-modules/cabal2nix-unstable.nix
+++ b/pkgs/development/haskell-modules/cabal2nix-unstable.nix
@@ -8,10 +8,10 @@
 }:
 mkDerivation {
   pname = "cabal2nix";
-  version = "unstable-2022-07-17";
+  version = "unstable-2022-07-22";
   src = fetchzip {
-    url = "https://github.com/NixOS/cabal2nix/archive/6c6fa480dd535a8a6909b60e1130a6b5bfc2a2c4.tar.gz";
-    sha256 = "19dagxhj1aflhf19xab8yss5mia6kfpghn4h0na8zshqab8xxgrd";
+    url = "https://github.com/NixOS/cabal2nix/archive/e00ab24821be85cb025432f8e9c4ff56dbb00a81.tar.gz";
+    sha256 = "11a5l0fdj67bpqv30af4v5zxr3c7n9p81pfs4c0d3w65bmr9sa1y";
   };
   isLibrary = true;
   isExecutable = true;
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 9d4876533a1..6194bd2ea6c 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -99,7 +99,7 @@ self: super: {
       name = "git-annex-${super.git-annex.version}-src";
       url = "git://git-annex.branchable.com/";
       rev = "refs/tags/" + super.git-annex.version;
-      sha256 = "0pr2fnaq3fa6lcly39xssl89v65h0wa26ikv5g30fm8y6z5rkqqd";
+      sha256 = "0p9qd7yasdji5kwxn4d0hrv9hnxbzfsczknldh8jav3ynhg8k6c9";
       # delete android and Android directories which cause issues on
       # darwin (case insensitive directory). Since we don't need them
       # during the build process, we can delete it to prevent a hash
@@ -2404,26 +2404,13 @@ self: super: {
   # https://github.com/system-f/validation/issues/57
   validation = doJailbreak super.validation;
 
-  # aws upstream seems to lack the necessary maintenance at the moment, luckily
-  # Joey Hess seems to have already looked into building git-annex with aeson 2.0
-  # https://github.com/aristidb/aws/issues/275
-  aws = overrideCabal (drv: {
-    patches = drv.patches or [] ++ [
-      (fetchpatch {
-        name = "aws-aeson-2.0-compat.patch";
-        url = "https://github.com/aristidb/aws/pull/277/commits/7af7586c5d244d07f77d49e5fdc739e6e8e54816.patch";
-        sha256 = "1bsiyk1k671rwlyflka2whq972h72cwscrxkr9n2wzhxp70ap3g3";
-        excludes = [ "aws.cabal" ];
-      })
-    ];
-    # needs aws credentials, jailbreak for base16-bytestring
-    doCheck = false;
-    jailbreak = true;
-  }) super.aws;
-
   # 2022-03-16: strict upper bounds https://github.com/monadfix/shower/issues/18
   shower = doJailbreak (dontCheck super.shower);
 
+  # Doesn't compile with HTF 0.15
+  # https://github.com/andrewufrank/uniform-error/issues/1
+  uniform-error = dontCheck super.uniform-error;
+
   # The shipped Setup.hs file is broken.
   csv = overrideCabal (drv: { preCompileBuildDriver = "rm Setup.hs"; }) super.csv;
 
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix
new file mode 100644
index 00000000000..6b78a528a05
--- /dev/null
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix
@@ -0,0 +1,51 @@
+{ pkgs, haskellLib }:
+
+let
+  inherit (pkgs) fetchpatch lib;
+  inherit (lib) throwIfNot versionOlder;
+in
+
+self: super: {
+  llvmPackages = lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
+
+  # Disable GHC core libraries.
+  array = null;
+  base = null;
+  binary = null;
+  bytestring = null;
+  Cabal = null;
+  Cabal-syntax = null;
+  containers = null;
+  deepseq = null;
+  directory = null;
+  exceptions = null;
+  filepath = null;
+  ghc-bignum = null;
+  ghc-boot = null;
+  ghc-boot-th = null;
+  ghc-compact = null;
+  ghc-heap = null;
+  ghc-prim = null;
+  ghci = null;
+  haskeline = null;
+  hpc = null;
+  integer-gmp = null;
+  libiserv = null;
+  mtl = null;
+  parsec = null;
+  pretty = null;
+  process = null;
+  rts = null;
+  stm = null;
+  system-cxx-std-lib = null;
+  template-haskell = null;
+  # GHC only builds terminfo if it is a native compiler
+  terminfo = if pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform then null else self.terminfo_0_4_1_5;
+  text = null;
+  time = null;
+  transformers = null;
+  unix = null;
+  # GHC only bundles the xhtml library if haddock is enabled, check if this is
+  # still the case when updating: https://gitlab.haskell.org/ghc/ghc/-/blob/0198841877f6f04269d6050892b98b5c3807ce4c/ghc.mk#L463
+  xhtml = if self.ghc.hasHaddock or true then null else self.xhtml_3000_2_2_1;
+}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index d2832752465..33eacf69ff5 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -543,6 +543,7 @@ broken-packages:
   - cabalgraph
   - cabal-graphdeps
   - cabal-helper
+  - cabal-hoogle
   - Cabal-ide-backend
   - cabal-info
   - cabal-install-bundle
@@ -1259,6 +1260,7 @@ broken-packages:
   - ebnf-bff
   - eccrypto
   - ecma262
+  - ecta
   - ecu
   - eddie
   - ede
@@ -1304,6 +1306,7 @@ broken-packages:
   - emailaddress
   - email-header
   - email-postmark
+  - embed-config
   - embla
   - emgm
   - Emping
@@ -1502,7 +1505,6 @@ broken-packages:
   - fix-symbols-gitit
   - fizzbuzz
   - fizzbuzz-as-a-service
-  - flac
   - flaccuraterip
   - flamethrower
   - flamingra
@@ -2867,6 +2869,7 @@ broken-packages:
   - koellner-phonetic
   - koneko
   - Konf
+  - konnakol
   - kontra-config
   - koofr-client
   - korea-holidays
@@ -3537,7 +3540,6 @@ broken-packages:
   - newtype-th
   - next-ref
   - nextstep-plist
-  - nfc
   - NGrams
   - niagra
   - nibblestring
@@ -4015,6 +4017,7 @@ broken-packages:
   - postgres-embedded
   - PostgreSQL
   - postgresql-lo-stream
+  - postgresql-ltree
   - postgresql-named
   - postgresql-query
   - postgresql-resilient
@@ -5492,6 +5495,7 @@ broken-packages:
   - validated-types
   - Validation
   - validations
+  - validity-network-uri
   - valid-names
   - value-supply
   - vampire
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index fb0aacb4ef4..3fefcc56b46 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -165,6 +165,8 @@ package-maintainers:
     - spago
     - stack
     - termonad
+  centromere:
+    - nfc
   dalpd:
     - ghc-vis
     - svgcairo
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index 060f0dc0b27..7d5891c00c1 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -304,6 +304,7 @@ dont-distribute-packages:
  - PlslTools
  - Printf-TH
  - ProbabilityMonads
+ - PropaFP
  - Pugs
  - Pup-Events
  - Pup-Events-Demo
@@ -844,6 +845,7 @@ dont-distribute-packages:
  - bricks-rendering
  - bricks-syntax
  - bronyradiogermany-streaming
+ - btc-lsp
  - btree
  - buchhaltung
  - buildbox-tools
@@ -1316,6 +1318,7 @@ dont-distribute-packages:
  - ekg-carbon
  - ekg-cloudwatch
  - ekg-wai
+ - electrs-client
  - elerea-examples
  - elliptic-curve
  - elsa
@@ -1452,7 +1455,6 @@ dont-distribute-packages:
  - fixed-point-vector-space
  - fixed-precision
  - fixhs
- - flac-picture
  - flashblast
  - flatbuffers
  - flexiwrap
@@ -1550,6 +1552,7 @@ dont-distribute-packages:
  - geniconvert
  - geniserver
  - genvalidity-mergeful
+ - genvalidity-network-uri
  - genvalidity-sydtest
  - genvalidity-sydtest-aeson
  - genvalidity-sydtest-hashable
@@ -3120,6 +3123,7 @@ dont-distribute-packages:
  - poseidon
  - poseidon-postgis
  - postgresql-pure
+ - postgresql-simple-ltree
  - postgresql-simple-queue
  - postgresql-simple-typed
  - postgresql-tx-query
@@ -3194,6 +3198,7 @@ dont-distribute-packages:
  - pvd
  - qd-vec
  - qhs
+ - qhull
  - qr-imager
  - qr-repa
  - qtah-examples
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index c39a4d59d1a..2b11f4a8ebe 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -948,6 +948,10 @@ self: super: builtins.intersectAttrs super {
     ] ++ (drv.patches or []);
   }) super.graphviz;
 
+  # Test suite requires AWS access which requires both a network
+  # connection and payment.
+  aws = dontCheck super.aws;
+
   # Test case tries to contact the network
   http-api-data-qq = overrideCabal (drv: {
     testFlags = [
@@ -973,6 +977,13 @@ self: super: builtins.intersectAttrs super {
     '';
   }) super.jacinda;
 
+  nfc = overrideCabal (drv: {
+    isExecutable = true;
+    executableHaskellDepends = with self; drv.executableHaskellDepends or [] ++ [ base base16-bytestring bytestring ];
+    configureFlags = drv.configureFlags or [] ++ [ "-fbuild-examples" ];
+    enableSeparateBinOutput = true;
+  }) super.nfc;
+
 # haskell-language-server plugins all use the same test harness so we give them what we want in this loop.
 } // pkgs.lib.mapAttrs
   (_: overrideCabal (drv: {
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index e1d8c5b6464..7be9cc0fce2 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -16683,6 +16683,38 @@ self: {
        mainProgram = "program";
      }) {};
 
+  "PropaFP" = callPackage
+    ({ mkDerivation, aern2-mfun, aern2-mp, base, binary, bytestring
+     , collect-errors, containers, directory, extra, ghc
+     , mixed-types-num, optparse-applicative, process, QuickCheck
+     , regex-tdfa, scientific, temporary
+     }:
+     mkDerivation {
+       pname = "PropaFP";
+       version = "0.1.0.0";
+       sha256 = "1rq39yciyqrzc2ky9w0phg6m00m106mng6vf586rl3yd9v83makg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aern2-mfun aern2-mp base binary bytestring collect-errors
+         containers directory extra ghc mixed-types-num optparse-applicative
+         process QuickCheck regex-tdfa scientific temporary
+       ];
+       executableHaskellDepends = [
+         aern2-mfun aern2-mp base binary bytestring collect-errors
+         containers directory extra ghc mixed-types-num optparse-applicative
+         process QuickCheck regex-tdfa scientific temporary
+       ];
+       testHaskellDepends = [
+         aern2-mfun aern2-mp base binary bytestring collect-errors
+         containers directory extra ghc mixed-types-num optparse-applicative
+         process QuickCheck regex-tdfa scientific temporary
+       ];
+       description = "Auto-active verification of floating-point programs";
+       license = lib.licenses.mpl20;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "Proper" = callPackage
     ({ mkDerivation, base, containers, HUnit, parsec, syb }:
      mkDerivation {
@@ -21638,8 +21670,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "WeakSets";
-       version = "1.2.0.0";
-       sha256 = "0zq7dxw050bj13mb7ayz144lxpwwhd424wzafnypn5i3vpmgldd6";
+       version = "1.2.3.0";
+       sha256 = "0skz318p0irm8nld2raqh61s127mav7cppbwi1iyjm7mwiw3x22g";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base ];
        description = "Simple set types. Useful to create sets of arbitrary types and nested sets.";
@@ -25714,8 +25746,8 @@ self: {
     ({ mkDerivation, aeson, base, inspection-testing }:
      mkDerivation {
        pname = "aeson-modern-tojson";
-       version = "0.1.1.0";
-       sha256 = "0x1798k4kyndilnm7fpkl8cc4fgn2f3jc1f9x8j2dc8kjkhv1fv7";
+       version = "0.2.0.0";
+       sha256 = "00jpkmij67xamzdg71gsiykx24x51ksphmprqxzbm5q7ifqfmfah";
        libraryHaskellDepends = [ aeson base ];
        testHaskellDepends = [ aeson base inspection-testing ];
        description = "Provide a handy way for derving ToJSON proprely";
@@ -26085,8 +26117,8 @@ self: {
      }:
      mkDerivation {
        pname = "aeson-tiled";
-       version = "0.0.1.0";
-       sha256 = "1szlwkww2sbqrz6d8mbq20nzkba70a41if33bcka0vhfq5lrp224";
+       version = "0.0.2.0";
+       sha256 = "1akmvr6638rwmyqfs43clxbswdnpwrwb94zzq8whs4j01hkcly7w";
        libraryHaskellDepends = [
          aeson base bytestring containers text vector
        ];
@@ -37328,8 +37360,8 @@ self: {
      }:
      mkDerivation {
        pname = "autodocodec";
-       version = "0.1.0.3";
-       sha256 = "1vj4klvkzh0ahvpwjgcsvxmcgnbcy0z06fpjbgpl0g9g54pv8fhj";
+       version = "0.2.0.0";
+       sha256 = "0dxn8p0r3qbpym809rbl75bclrkrqbfs8d57gkz9r5r4g4bvwfmg";
        libraryHaskellDepends = [
          aeson base bytestring containers hashable mtl scientific text time
          unordered-containers validity validity-scientific vector
@@ -37345,8 +37377,8 @@ self: {
      }:
      mkDerivation {
        pname = "autodocodec-openapi3";
-       version = "0.2.1.0";
-       sha256 = "1nd1r7r258dxhrdjwc7m8byrv99b1zqapvj8021yq8j1nad8mjvg";
+       version = "0.2.1.1";
+       sha256 = "0klk2xxj4mwlfg4irxsc98av5grp5g1jv1qkivlzfhxrnviyfkqw";
        libraryHaskellDepends = [
          aeson autodocodec base insert-ordered-containers lens mtl openapi3
          scientific text unordered-containers
@@ -37362,8 +37394,8 @@ self: {
      }:
      mkDerivation {
        pname = "autodocodec-schema";
-       version = "0.1.0.1";
-       sha256 = "1nzwbj3r5gps2lnriig38h1y51m4pd997z65kpsmxzcbyakdxjnd";
+       version = "0.1.0.2";
+       sha256 = "0vvwjz8abn6qmk2801p7vyrbjkqcxdqjlc82ha8l9xvb6mmvqy3i";
        libraryHaskellDepends = [
          aeson autodocodec base containers mtl text unordered-containers
          validity validity-aeson validity-containers validity-text
@@ -37375,14 +37407,15 @@ self: {
   "autodocodec-swagger2" = callPackage
     ({ mkDerivation, aeson, autodocodec, base
      , insert-ordered-containers, scientific, swagger2, text
+     , unordered-containers
      }:
      mkDerivation {
        pname = "autodocodec-swagger2";
-       version = "0.0.1.0";
-       sha256 = "1h5866568wksnj8khpn50v8c2pysri668l0y4x1pawn92cq5brn4";
+       version = "0.0.1.1";
+       sha256 = "1a8nfacp23v943hz7n3vi4viglqj128z22yq64lb7mk46rd2zlm6";
        libraryHaskellDepends = [
          aeson autodocodec base insert-ordered-containers scientific
-         swagger2 text
+         swagger2 text unordered-containers
        ];
        description = "Autodocodec interpreters for swagger2";
        license = lib.licenses.mit;
@@ -37395,8 +37428,8 @@ self: {
      }:
      mkDerivation {
        pname = "autodocodec-yaml";
-       version = "0.2.0.0";
-       sha256 = "0wqc0gxyakz5vqa99kj684mnxfdgr3qz2prwabynr1lqs08krw1i";
+       version = "0.2.0.2";
+       sha256 = "164nrmpxrwyr49f0gczi2sixzrs3sv2pn8j293s9avw684aq2prx";
        libraryHaskellDepends = [
          autodocodec autodocodec-schema base bytestring containers path
          path-io safe-coloured-text scientific text unordered-containers
@@ -37992,10 +38025,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws";
-       version = "0.22";
-       sha256 = "1l3f94mpih7slz37ikyjkyrwvlf110w87997d8sbnbd8glwlcb8r";
-       revision = "3";
-       editedCabalFile = "0k9xk07mviyvh5cxri7z923f5wfylmbrg63l1hqrnkd8hxk9w14y";
+       version = "0.22.1";
+       sha256 = "0zz8f144rsd7bpl4xfxw3wbp9s1a300c8i6vifh2yfhi798j76n4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -42189,6 +42220,8 @@ self: {
        pname = "bifunctors";
        version = "5.5.12";
        sha256 = "0pbidsv1w3bvzs8w6sv8g1iqf0l9r1y0b1fmvd67cwlp01r7f1n6";
+       revision = "1";
+       editedCabalFile = "1sf3nbcsbj5m5gw26kv036a1v4zmn91rw7x2iamxwx1ji668a3xy";
        libraryHaskellDepends = [
          base base-orphans comonad containers tagged template-haskell
          th-abstraction transformers
@@ -42667,8 +42700,8 @@ self: {
        pname = "binary-instances";
        version = "1.0.2";
        sha256 = "10z29k35clq74ma2f0yrkbyf14wdax1zzgb6mn26ja4vp9f5wc14";
-       revision = "3";
-       editedCabalFile = "1jfhn6nqqg8hz3d2j7zyhpqv74165jf69dycjr6vzbxmvvn03wil";
+       revision = "4";
+       editedCabalFile = "157519fj5900sylbx8m38w5gy9la1795529wpsfj21ak1qfv74gn";
        libraryHaskellDepends = [
          aeson base binary binary-orphans case-insensitive hashable
          scientific tagged text text-binary time-compat unordered-containers
@@ -46151,13 +46184,13 @@ self: {
      }) {};
 
   "blizzard-html" = callPackage
-    ({ mkDerivation, base, blaze-html, clay, text }:
+    ({ mkDerivation, base, blaze-html, text }:
      mkDerivation {
        pname = "blizzard-html";
-       version = "0.1.0.0";
-       sha256 = "0q77g1apkjy6vfks1734cx6y11v5l7qksfs1g2axp2lmsymkd28v";
-       libraryHaskellDepends = [ base blaze-html clay text ];
-       description = "An HTML and CSS renderer for Haskell";
+       version = "0.4.0.1";
+       sha256 = "11k9pdr5f8vxypk05c2aysqkl3199ywvkh2dk9jf5rgkpf2j221p";
+       libraryHaskellDepends = [ base blaze-html text ];
+       description = "An HTML renderer for Haskell";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
        broken = true;
@@ -48736,6 +48769,57 @@ self: {
        broken = true;
      }) {};
 
+  "btc-lsp" = callPackage
+    ({ mkDerivation, aeson, async, base, base16-bytestring
+     , base64-bytestring, binary, bytestring, case-insensitive, casing
+     , chronos, classy-prelude-yesod, containers, cryptonite, envparse
+     , errors, esqueleto, extra, fast-logger, file-embed, format-numbers
+     , generic-pretty-instances, GenericPretty, hjsmin, hspec
+     , http-client-tls, http2, http2-client, http2-client-grpc
+     , http2-grpc-proto-lens, http2-grpc-types, iso8601-time, katip
+     , lnd-client, memory, microlens, monad-logger, network-bitcoin
+     , persistent, persistent-migration, persistent-postgresql, pretty
+     , proto-lens, proto-lens-runtime, qrcode-core, qrcode-juicypixels
+     , QuickCheck, resource-pool, scientific, secp256k1-haskell, SHA
+     , shakespeare, stm, template-haskell, text, time, transformers
+     , unbounded-delays, universum, unliftio, uuid, vector, wai
+     , wai-extra, warp, warp-grpc, warp-tls, witch, yaml, yesod
+     , yesod-auth, yesod-core, yesod-form, yesod-static
+     }:
+     mkDerivation {
+       pname = "btc-lsp";
+       version = "0.1.0.0";
+       sha256 = "08lwm518gysncw2wa9b1b3fsdfy5mk6g1fgzjskd73j03xa5zvq3";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base base16-bytestring base64-bytestring binary
+         bytestring case-insensitive casing chronos classy-prelude-yesod
+         containers cryptonite envparse errors esqueleto extra fast-logger
+         file-embed format-numbers generic-pretty-instances GenericPretty
+         hjsmin http-client-tls http2 http2-client http2-client-grpc
+         http2-grpc-proto-lens http2-grpc-types iso8601-time katip
+         lnd-client memory microlens monad-logger network-bitcoin persistent
+         persistent-migration persistent-postgresql pretty proto-lens
+         proto-lens-runtime qrcode-core qrcode-juicypixels resource-pool
+         scientific secp256k1-haskell SHA shakespeare stm template-haskell
+         text time transformers unbounded-delays universum unliftio uuid
+         vector wai wai-extra warp warp-grpc warp-tls witch yaml yesod
+         yesod-auth yesod-core yesod-form yesod-static
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring envparse hspec lnd-client network-bitcoin
+         proto-lens QuickCheck unliftio vector witch
+       ];
+       testHaskellDepends = [
+         aeson base bytestring envparse hspec lnd-client network-bitcoin
+         proto-lens QuickCheck unliftio vector witch
+       ];
+       description = "Lightning service provider";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "btree" = callPackage
     ({ mkDerivation, base, clock, containers, ghc-prim, hashable
      , initialize, MonadRandom, primitive, smallcheck, tasty
@@ -50037,6 +50121,8 @@ self: {
        pname = "bytesmith";
        version = "0.3.9.0";
        sha256 = "0jmx4flf3j5a4gyrw79cxiybp6f7y0rm9ifmrxypxpwrwc220zjg";
+       revision = "1";
+       editedCabalFile = "0ly247yj2ay0fpj5v3dqp0hava1wrllqhphf7k3hcifpi5zfr8i0";
        libraryHaskellDepends = [
          base byteslice bytestring contiguous primitive run-st text-short
          wide-word
@@ -51248,8 +51334,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-debian";
-       version = "5.1";
-       sha256 = "14kh2s61m7wm9h0ms4dlpfvqr2gd8fv0w44ar3c3dg5053hwrvny";
+       version = "5.2";
+       sha256 = "0vin5nj673l5gyg2q3jjz8vxh6ajja5mh6k81j1ppihwscwmmz4p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -51553,6 +51639,34 @@ self: {
        broken = true;
      }) {};
 
+  "cabal-hoogle" = callPackage
+    ({ mkDerivation, base, Cabal, containers, directory, extra
+     , filepath, hoogle, optparse-applicative, regex-tdfa, silently
+     , string-interpolate, tasty, tasty-discover, tasty-hunit, text
+     , transformers, typed-process
+     }:
+     mkDerivation {
+       pname = "cabal-hoogle";
+       version = "0.1.0.0";
+       sha256 = "0k37r2wismimnj10cclvs1aikzz1c90d40l19hkrk0a47k274yi1";
+       revision = "2";
+       editedCabalFile = "0a46rwql5r9iv42n32vzpmlci2zchkr93c23yg69k82q90j0zw2h";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base Cabal containers directory extra filepath optparse-applicative
+         regex-tdfa string-interpolate text transformers typed-process
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base silently tasty tasty-hunit ];
+       testToolDepends = [ hoogle tasty-discover ];
+       description = "generate hoogle database for cabal project and dependencies";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "cabal-hoogle";
+       broken = true;
+     }) {};
+
   "cabal-info" = callPackage
     ({ mkDerivation, base, Cabal, directory, filepath
      , optparse-applicative
@@ -53175,6 +53289,29 @@ self: {
        broken = true;
      }) {};
 
+  "call-alloy_0_3_0_3" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, extra
+     , file-embed, filepath, hashable, hspec, mtl, process, split
+     , trifecta, unix
+     }:
+     mkDerivation {
+       pname = "call-alloy";
+       version = "0.3.0.3";
+       sha256 = "1clzw0sk13gzwk2ikxlz7p0f70pb2246pnd01ggjm0nrfykri18p";
+       libraryHaskellDepends = [
+         base bytestring containers directory extra file-embed filepath
+         hashable mtl process split trifecta unix
+       ];
+       testHaskellDepends = [
+         base bytestring containers directory extra file-embed filepath
+         hashable hspec mtl process split trifecta unix
+       ];
+       description = "A simple library to call Alloy given a specification";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "call-haskell-from-anything" = callPackage
     ({ mkDerivation, base, bytestring, data-msgpack, mtl
      , storable-endian, template-haskell
@@ -57447,8 +57584,8 @@ self: {
        pname = "chronos";
        version = "1.1.4";
        sha256 = "1v7h0qlckliid2zd3ff2l9l4xrdxacaw8my8bjj8grysj4vvyn5q";
-       revision = "1";
-       editedCabalFile = "1238mgjk7v0qf7n3c9qrzp7c6gmdcmx80x1ndgsy2nvzsdn5xklg";
+       revision = "2";
+       editedCabalFile = "0ixc0ng425lgsrj95zfnm2jazk19b8py845s3b02dfz7zid9q7n5";
        libraryHaskellDepends = [
          aeson attoparsec base bytebuild byteslice bytesmith bytestring
          deepseq hashable natural-arithmetic primitive semigroups text
@@ -59513,19 +59650,17 @@ self: {
   "cli-extras" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring, containers
      , exceptions, io-streams, lens, logging-effect, monad-logger
-     , monad-loops, mtl, process, terminal-size, text, time
-     , transformers, which
+     , monad-loops, mtl, process, shell-escape, terminal-size, text
+     , time, transformers, utf8-string, which
      }:
      mkDerivation {
        pname = "cli-extras";
-       version = "0.1.0.2";
-       sha256 = "1qcvphbimcclvy7qkqrz9djg4650axwqjfyq6nlbvmpivh14m9vq";
-       revision = "1";
-       editedCabalFile = "1zf7win72j7gmr8srvmn8y23636z5ga817cg3lkfsm5mwhi9k0zw";
+       version = "0.2.0.0";
+       sha256 = "1xzpg8i06jix4dnbjanp85dgjhf4xf7am50k550d88nsnxi93byn";
        libraryHaskellDepends = [
          aeson ansi-terminal base bytestring containers exceptions
          io-streams lens logging-effect monad-logger monad-loops mtl process
-         terminal-size text time transformers which
+         shell-escape terminal-size text time transformers utf8-string which
        ];
        description = "Miscellaneous utilities for building and working with command line interfaces";
        license = lib.licenses.bsd3;
@@ -66594,13 +66729,13 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "containers_0_6_5_1" = callPackage
-    ({ mkDerivation, array, base, deepseq }:
+  "containers_0_6_6" = callPackage
+    ({ mkDerivation, array, base, deepseq, template-haskell }:
      mkDerivation {
        pname = "containers";
-       version = "0.6.5.1";
-       sha256 = "1zlyvkamzc87hr7r3ckyvgwhszdk9i18jrsv2cmkh9v093gvl7ni";
-       libraryHaskellDepends = [ array base deepseq ];
+       version = "0.6.6";
+       sha256 = "1s1a1d8hvlgarmajf3p8ars1cqxyaw1ncmw0793g7m82y78hw6dq";
+       libraryHaskellDepends = [ array base deepseq template-haskell ];
        description = "Assorted concrete container types";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -67872,7 +68007,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "core-program_0_5_1_0" = callPackage
+  "core-program_0_5_1_1" = callPackage
     ({ mkDerivation, async, base, bytestring, core-data, core-text
      , directory, exceptions, filepath, fsnotify, hashable, hourglass
      , mtl, prettyprinter, safe-exceptions, stm, template-haskell
@@ -67881,10 +68016,8 @@ self: {
      }:
      mkDerivation {
        pname = "core-program";
-       version = "0.5.1.0";
-       sha256 = "0h9iw9kdj947zlzjd9gi4xlnldrqpgw80vla31c0zhl4dmib6a22";
-       revision = "1";
-       editedCabalFile = "1920jl5yxwgj64wacgx929b054icq7bz73p06rqfm38wkj87bqa3";
+       version = "0.5.1.1";
+       sha256 = "08hnal9lv92aigivfcz25rap64bl8zbpin1ln61irp0zw13sq6s8";
        libraryHaskellDepends = [
          async base bytestring core-data core-text directory exceptions
          filepath fsnotify hashable hourglass mtl prettyprinter
@@ -70956,6 +71089,19 @@ self: {
        broken = true;
      }) {};
 
+  "css-simple" = callPackage
+    ({ mkDerivation, base, criterion, mtl, text, text-builder }:
+     mkDerivation {
+       pname = "css-simple";
+       version = "0.1.0.1";
+       sha256 = "0s51i9g6kz9lrn5a2ngdv0sh2rc61ynipp5ksbbsxrqpzslbm7jv";
+       libraryHaskellDepends = [ base mtl text text-builder ];
+       testHaskellDepends = [ base mtl text text-builder ];
+       benchmarkHaskellDepends = [ base criterion mtl text text-builder ];
+       description = "eDSL for CSS";
+       license = lib.licenses.gpl3Only;
+     }) {};
+
   "css-syntax" = callPackage
     ({ mkDerivation, base, criterion, deepseq, directory, hspec
      , QuickCheck, scientific, text
@@ -75913,8 +76059,8 @@ self: {
      }:
      mkDerivation {
        pname = "dear-imgui";
-       version = "2.0.0";
-       sha256 = "0x1lx34zdgaga6xgq1axdf39wxz6av7h8vna1d702v09n67hpac3";
+       version = "2.1.0";
+       sha256 = "1nj0796zy10q29w5f0f3fjyf6hvhdv12yv96lg0rdlyl1mfpgm4d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -75958,6 +76104,36 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "debian_4_0_4" = callPackage
+    ({ mkDerivation, base, bytestring, bz2, Cabal, containers
+     , directory, either, exceptions, filepath, hostname, HUnit, lens
+     , ListLike, mtl, network-uri, old-locale, parsec, pretty, process
+     , process-extras, pureMD5, QuickCheck, regex-compat, regex-tdfa
+     , SHA, syb, template-haskell, temporary, text, th-lift, th-orphans
+     , time, unix, utf8-string, zlib
+     }:
+     mkDerivation {
+       pname = "debian";
+       version = "4.0.4";
+       sha256 = "11510xb7a9nlvaygrmwbx9imagj8517iz2am6jv88934m0l5iy1n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring bz2 Cabal containers directory either exceptions
+         filepath hostname HUnit lens ListLike mtl network-uri old-locale
+         parsec pretty process process-extras pureMD5 QuickCheck
+         regex-compat regex-tdfa SHA syb template-haskell temporary text
+         th-lift th-orphans time unix utf8-string zlib
+       ];
+       executableHaskellDepends = [ base directory filepath process ];
+       testHaskellDepends = [
+         base Cabal HUnit parsec pretty regex-tdfa text
+       ];
+       description = "Modules for working with the Debian package system";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "debian-binary" = callPackage
     ({ mkDerivation, base, directory, filepath, HSH }:
      mkDerivation {
@@ -77664,6 +77840,8 @@ self: {
        pname = "deriving-compat";
        version = "0.6.1";
        sha256 = "09lxms6220saycra4kpxihwa7zh253zmv1zpa41dbnhgffxs3zbb";
+       revision = "1";
+       editedCabalFile = "0m3ywfvj96yqrdyv6mgnmdhlsvjjn89wl0n1n7v2m60zaan14cgh";
        libraryHaskellDepends = [
          base containers ghc-boot-th ghc-prim template-haskell
          th-abstraction transformers transformers-compat
@@ -77695,8 +77873,8 @@ self: {
      }:
      mkDerivation {
        pname = "deriving-trans";
-       version = "0.4.0.0";
-       sha256 = "1d7p7np8jadiynih2a271q67hxbd352lvf4pzspd4nvr6npa1ipc";
+       version = "0.5.0.0";
+       sha256 = "0gbrlq02pyrjlsnpb96y5rv9zvip33zfqv865hmjzyj3ig938i1r";
        libraryHaskellDepends = [
          base monad-control monad-control-identity mtl transformers
          transformers-base
@@ -80901,14 +81079,12 @@ self: {
        broken = true;
      }) {};
 
-  "directory_1_3_7_0" = callPackage
+  "directory_1_3_7_1" = callPackage
     ({ mkDerivation, base, filepath, time, unix }:
      mkDerivation {
        pname = "directory";
-       version = "1.3.7.0";
-       sha256 = "041dnqqnc1dadasqyhivpa7rnhw3i08gq5bwj1kfz7lhlihbv1lz";
-       revision = "2";
-       editedCabalFile = "13krvs6zfswr3xndysq1bg7mz9n8mm1w7p4zcx8xjs0jqkm8hiyl";
+       version = "1.3.7.1";
+       sha256 = "1z8frwbr0kdk47x3xasq7ifzcrwl7ryh1aqgf202xv4cakb8a9yw";
        libraryHaskellDepends = [ base filepath time unix ];
        testHaskellDepends = [ base filepath time unix ];
        description = "Platform-agnostic library for filesystem operations";
@@ -85355,8 +85531,8 @@ self: {
        pname = "dual-game";
        version = "0.1.0.1";
        sha256 = "1w69d7d2xbpi82n41gq08qdmldh834ka7qwvy159vsac556wwcfg";
-       revision = "7";
-       editedCabalFile = "04hi455i82y7nf30chnkbvgfz5fzn050nb3r916abr7s205jfzkq";
+       revision = "8";
+       editedCabalFile = "1c4m2nwmnrjs8rinfa9p9vynmdr56i5ggydgnjs3d8szpbbbbrml";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -86842,6 +87018,45 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ecta" = callPackage
+    ({ mkDerivation, array, base, cmdargs, containers, criterion
+     , equivalence, extra, fgl, hashable, hashtables, hspec
+     , hspec-discover, ilist, intern, language-dot, lens, mtl, pipes
+     , pretty-simple, QuickCheck, raw-strings-qq, text, time
+     , unordered-containers, vector, vector-instances
+     }:
+     mkDerivation {
+       pname = "ecta";
+       version = "1.0.0.2";
+       sha256 = "10d0dvwd5lrla509ncx7f9i72ak4b7g4z3459nlxba904qhr0gnm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base cmdargs containers equivalence extra fgl hashable
+         hashtables ilist intern language-dot lens mtl pipes pretty-simple
+         raw-strings-qq text time unordered-containers vector
+         vector-instances
+       ];
+       executableHaskellDepends = [
+         base cmdargs containers hashable language-dot mtl pipes
+         pretty-simple text time unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base cmdargs containers equivalence hashable hspec language-dot mtl
+         pipes pretty-simple QuickCheck text time unordered-containers
+         vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         base cmdargs containers criterion hashable language-dot mtl pipes
+         pretty-simple text time unordered-containers vector
+       ];
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hectare";
+       broken = true;
+     }) {};
+
   "ecu" = callPackage
     ({ mkDerivation, base, bytestring, canlib, digest, directory
      , process, vcd
@@ -88146,6 +88361,27 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "electrs-client" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, envparse
+     , generic-pretty-instances, GenericPretty, hex-text, hspec, network
+     , network-bitcoin, SHA, text, transformers, unbounded-delays
+     , universum, unliftio
+     }:
+     mkDerivation {
+       pname = "electrs-client";
+       version = "0.1.0.0";
+       sha256 = "1ywmxc4x5p108hv7l5ymr60alk01mmgnz6dn8h4xcnfnrck6p9b1";
+       libraryHaskellDepends = [
+         aeson base bytestring envparse generic-pretty-instances
+         GenericPretty hex-text network network-bitcoin SHA text
+         transformers unbounded-delays universum unliftio
+       ];
+       testHaskellDepends = [ base hspec network-bitcoin ];
+       description = "Electrs client library for Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "electrum-mnemonic" = callPackage
     ({ mkDerivation, base, tasty, tasty-quickcheck }:
      mkDerivation {
@@ -89290,6 +89526,24 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "embed-config" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, file-embed, hspec
+     , template-haskell, yaml
+     }:
+     mkDerivation {
+       pname = "embed-config";
+       version = "0.0.0.0";
+       sha256 = "1nbr9946agi4nyignn4x5x19660v66f3lr3m0l8xk2jxikrqlw49";
+       libraryHaskellDepends = [
+         aeson base bytestring file-embed template-haskell yaml
+       ];
+       testHaskellDepends = [ aeson base hspec ];
+       description = "Reasonable conventions for embedding YAML configuration with Template Haskell";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "embeddock" = callPackage
     ({ mkDerivation, base, filepath, her-lexer, MissingH, process }:
      mkDerivation {
@@ -90540,6 +90794,26 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "equivalence_0_4_1" = callPackage
+    ({ mkDerivation, base, containers, mtl, QuickCheck, STMonadTrans
+     , template-haskell, transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "equivalence";
+       version = "0.4.1";
+       sha256 = "13q0lklm58n0l7bx0d4k1cw1i2il8hpdjp76lb79ix8lv7cxd2jr";
+       libraryHaskellDepends = [
+         base containers mtl STMonadTrans transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base containers mtl QuickCheck STMonadTrans template-haskell
+         transformers transformers-compat
+       ];
+       description = "Maintaining an equivalence relation implemented as union-find using STT";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "erd" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , gitrev, graphviz, parsec, raw-strings-qq, tasty, tasty-hunit
@@ -97226,14 +97500,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "filepath-bytestring_1_4_2_1_10" = callPackage
+  "filepath-bytestring_1_4_2_1_11" = callPackage
     ({ mkDerivation, base, bytestring, criterion, filepath, QuickCheck
      , unix
      }:
      mkDerivation {
        pname = "filepath-bytestring";
-       version = "1.4.2.1.10";
-       sha256 = "0nwfyld4ajikiinppkc0a92bbjnr1bcnpb6llg6k7av61xrv72ar";
+       version = "1.4.2.1.11";
+       sha256 = "1y906vb9p51awzgd5s1bq718kw03gpw7z8i8bdznlw7i9r40shbk";
        libraryHaskellDepends = [ base bytestring unix ];
        testHaskellDepends = [ base bytestring filepath QuickCheck ];
        benchmarkHaskellDepends = [ base criterion filepath ];
@@ -98618,7 +98892,7 @@ self: {
 
   "flac" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory
-     , exceptions, filepath, FLAC, hspec, hspec-discover, mtl, temporary
+     , exceptions, filepath, flac, hspec, hspec-discover, mtl, temporary
      , text, transformers, vector, wave
      }:
      mkDerivation {
@@ -98632,7 +98906,7 @@ self: {
          base bytestring containers directory exceptions filepath mtl text
          transformers vector wave
        ];
-       librarySystemDepends = [ FLAC ];
+       librarySystemDepends = [ flac ];
        testHaskellDepends = [
          base bytestring directory filepath hspec temporary transformers
          vector wave
@@ -98640,9 +98914,7 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Complete high-level binding to libFLAC";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
-     }) {FLAC = null;};
+     }) {inherit (pkgs) flac;};
 
   "flac-picture" = callPackage
     ({ mkDerivation, base, bytestring, directory, flac, hspec
@@ -98662,7 +98934,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Support for writing picture to FLAC metadata blocks with JuicyPixels";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "flaccuraterip" = callPackage
@@ -101644,6 +101915,8 @@ self: {
        pname = "free";
        version = "5.1.9";
        sha256 = "1vlzis9sqxh7xrmh3habbgiw3skkhkn710bhqb6fnl45804i6x9f";
+       revision = "1";
+       editedCabalFile = "133nycxnzy7sgp2vib8hpp2jgzm8pxp31ljf7b4v91jn1gqg3kpl";
        libraryHaskellDepends = [
          base comonad containers distributive exceptions indexed-traversable
          mtl profunctors semigroupoids template-haskell th-abstraction
@@ -105712,6 +105985,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "generic-deriving_1_14_2" = callPackage
+    ({ mkDerivation, base, containers, ghc-prim, hspec, hspec-discover
+     , template-haskell, th-abstraction
+     }:
+     mkDerivation {
+       pname = "generic-deriving";
+       version = "1.14.2";
+       sha256 = "0bxacg6b1vz135x93vf7jk6129m08hdyj7426ymaylfl2w8kapi6";
+       libraryHaskellDepends = [
+         base containers ghc-prim template-haskell th-abstraction
+       ];
+       testHaskellDepends = [ base hspec template-haskell ];
+       testToolDepends = [ hspec-discover ];
+       description = "Generic programming library for generalised deriving";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "generic-enum" = callPackage
     ({ mkDerivation, array, base, bytestring, hspec }:
      mkDerivation {
@@ -105983,6 +106274,30 @@ self: {
        broken = true;
      }) {};
 
+  "generic-pretty-instances" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring
+     , case-insensitive, GenericPretty, hspec, persistent, pretty
+     , pretty-simple, proto-lens, proto-lens-runtime, secp256k1-haskell
+     , text, time, universum, vector
+     }:
+     mkDerivation {
+       pname = "generic-pretty-instances";
+       version = "0.1.0.0";
+       sha256 = "01apps8kn71xbyclasra4zmk321fphj0bs2hw9j6yb5hxlldj34s";
+       libraryHaskellDepends = [
+         base base16-bytestring bytestring case-insensitive GenericPretty
+         persistent pretty pretty-simple proto-lens proto-lens-runtime
+         secp256k1-haskell text time universum vector
+       ];
+       testHaskellDepends = [
+         base base16-bytestring bytestring case-insensitive GenericPretty
+         hspec persistent pretty pretty-simple proto-lens proto-lens-runtime
+         secp256k1-haskell text time universum vector
+       ];
+       description = "GenericPretty canonical instances";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "generic-random" = callPackage
     ({ mkDerivation, base, deepseq, QuickCheck }:
      mkDerivation {
@@ -106767,6 +107082,34 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "genvalidity-network-uri" = callPackage
+    ({ mkDerivation, base, criterion, genvalidity
+     , genvalidity-criterion, genvalidity-sydtest, iproute, network-uri
+     , QuickCheck, sydtest, sydtest-discover, validity
+     , validity-network-uri
+     }:
+     mkDerivation {
+       pname = "genvalidity-network-uri";
+       version = "0.0.0.0";
+       sha256 = "0nq5qlk8c6kv6y67p01db0i0n5gsfphl1rl75dy8iwmnc0ii2mks";
+       libraryHaskellDepends = [
+         base genvalidity iproute network-uri QuickCheck validity
+         validity-network-uri
+       ];
+       testHaskellDepends = [
+         base genvalidity genvalidity-sydtest network-uri QuickCheck sydtest
+         validity-network-uri
+       ];
+       testToolDepends = [ sydtest-discover ];
+       benchmarkHaskellDepends = [
+         base criterion genvalidity genvalidity-criterion network-uri
+         QuickCheck
+       ];
+       description = "GenValidity support for URI";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "genvalidity-path" = callPackage
     ({ mkDerivation, base, criterion, genvalidity
      , genvalidity-criterion, genvalidity-hspec, hspec, path, QuickCheck
@@ -111494,8 +111837,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "10.20220624";
-       sha256 = "0a17ph8w620fmbwhm4yhdz2pwp0z8g5d4qsw2bg8k1par2n8rnmz";
+       version = "10.20220724";
+       sha256 = "0890xsfhk5k7xddqgq4qppbr169vjja76cd5cz1cslj20lmz5f28";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
          "-fnetworkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
@@ -112059,28 +112402,25 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "github_0_28" = callPackage
+  "github_0_28_0_1" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
      , binary, binary-instances, bytestring, containers, cryptohash-sha1
      , deepseq, deepseq-generics, exceptions, file-embed, hashable
      , hspec, hspec-discover, http-client, http-client-tls
      , http-link-header, http-types, iso8601-time, mtl, network-uri
      , tagged, text, time-compat, tls, transformers, transformers-compat
-     , unordered-containers, vector, vector-instances
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "github";
-       version = "0.28";
-       sha256 = "142l0zff852606hkpvkhvagp6h3ziq2z2x7x2pa77q5ymyq48089";
-       revision = "4";
-       editedCabalFile = "063plc1v50fww3kar571czk2brqdb82zm33jsfnbcfal5i2w1v73";
+       version = "0.28.0.1";
+       sha256 = "16ahq2ng52ypkkgqbbmizr486px3dh709hw3jdn7jzglgvn20712";
        libraryHaskellDepends = [
          aeson base base-compat base16-bytestring binary binary-instances
          bytestring containers cryptohash-sha1 deepseq deepseq-generics
          exceptions hashable http-client http-client-tls http-link-header
          http-types iso8601-time mtl network-uri tagged text time-compat tls
          transformers transformers-compat unordered-containers vector
-         vector-instances
        ];
        testHaskellDepends = [
          aeson base base-compat bytestring file-embed hspec tagged text
@@ -121780,8 +122120,8 @@ self: {
      }:
      mkDerivation {
        pname = "hackport";
-       version = "0.7.1.2";
-       sha256 = "0fyrbm5c0yi7a8pgrq2sgr2hml0yyklb4pcszigx4k8fhvgzqprb";
+       version = "0.7.2.1";
+       sha256 = "0b109c9m52j0idlcp5w7aqnryb2bmghf4g33jhhd3dsrr0xx6ah0";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -124490,6 +124830,35 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "happstack-server_7_8_0" = callPackage
+    ({ mkDerivation, base, base64-bytestring, blaze-html, bytestring
+     , containers, directory, exceptions, extensible-exceptions
+     , filepath, hslogger, html, HUnit, monad-control, mtl, network
+     , network-uri, old-locale, parsec, process, semigroups, sendfile
+     , syb, system-filepath, text, threads, time, transformers
+     , transformers-base, transformers-compat, unix, utf8-string, xhtml
+     , zlib
+     }:
+     mkDerivation {
+       pname = "happstack-server";
+       version = "7.8.0";
+       sha256 = "1d8fmxh5v4n5fqksprz1j374cibwihljr0515ngr5jh77lbplsim";
+       libraryHaskellDepends = [
+         base base64-bytestring blaze-html bytestring containers directory
+         exceptions extensible-exceptions filepath hslogger html
+         monad-control mtl network network-uri old-locale parsec process
+         semigroups sendfile syb system-filepath text threads time
+         transformers transformers-base transformers-compat unix utf8-string
+         xhtml zlib
+       ];
+       testHaskellDepends = [
+         base bytestring containers HUnit parsec zlib
+       ];
+       description = "Web related tools and services";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "happstack-server-tls" = callPackage
     ({ mkDerivation, base, bytestring, extensible-exceptions
      , happstack-server, hslogger, HsOpenSSL, network, openssl, sendfile
@@ -138025,6 +138394,17 @@ self: {
        broken = true;
      }) {};
 
+  "hkd-records" = callPackage
+    ({ mkDerivation, base, hkd, text }:
+     mkDerivation {
+       pname = "hkd-records";
+       version = "0.0.2";
+       sha256 = "1404c3gqrk2i0ab67v12h5khcghbkad7cyphfmp6kkn8d5smpz1m";
+       libraryHaskellDepends = [ base hkd text ];
+       description = "higher kinded record operations";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "hkdf" = callPackage
     ({ mkDerivation, base, byteable, bytestring, cryptohash, hspec }:
      mkDerivation {
@@ -150414,6 +150794,36 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "http-client_0_7_12" = callPackage
+    ({ mkDerivation, array, async, base, base64-bytestring
+     , blaze-builder, bytestring, case-insensitive, containers, cookie
+     , deepseq, directory, exceptions, filepath, ghc-prim, hspec
+     , hspec-discover, http-types, iproute, mime-types, monad-control
+     , network, network-uri, random, stm, streaming-commons, text, time
+     , transformers, zlib
+     }:
+     mkDerivation {
+       pname = "http-client";
+       version = "0.7.12";
+       sha256 = "03mfkrf2zl3jga2hihx7aq7qymzgnk31ldvbk66y70c3i1jpgxb2";
+       libraryHaskellDepends = [
+         array async base base64-bytestring blaze-builder bytestring
+         case-insensitive containers cookie deepseq exceptions filepath
+         ghc-prim http-types iproute mime-types network network-uri random
+         stm streaming-commons text time transformers
+       ];
+       testHaskellDepends = [
+         async base blaze-builder bytestring case-insensitive containers
+         cookie deepseq directory hspec http-types monad-control network
+         network-uri streaming-commons text time transformers zlib
+       ];
+       testToolDepends = [ hspec-discover ];
+       doCheck = false;
+       description = "An HTTP client engine";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "http-client-auth" = callPackage
     ({ mkDerivation, base, base64-string, blaze-builder, bytestring
      , case-insensitive, conduit, crypto-conduit, http-client
@@ -155608,8 +156018,8 @@ self: {
        pname = "identicon-style-squares";
        version = "0.1.0.1";
        sha256 = "1x456v7fb211f7ciipp2bfn9fvh5w4i34bl5mjw7bkn7hgsaa3x6";
-       revision = "3";
-       editedCabalFile = "0jri78n8xggipikhp6p4l4i2zwjn4fdydbv730w01linfg1h6w68";
+       revision = "4";
+       editedCabalFile = "0s38fp9wkzgbgd7mb4lrc4x1c3panc5sac7wrgdjqymw7339yz0b";
        libraryHaskellDepends = [
          base identicon JuicyPixels polyvariadic
        ];
@@ -158057,6 +158467,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "ini_0_4_2" = callPackage
+    ({ mkDerivation, attoparsec, base, hspec, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "ini";
+       version = "0.4.2";
+       sha256 = "0dp9c48vli8z6058yajnqg9hyf9swglk8ga4wcwl03aal7n8r7gp";
+       libraryHaskellDepends = [
+         attoparsec base text unordered-containers
+       ];
+       testHaskellDepends = [ base hspec unordered-containers ];
+       description = "Configuration files in the INI format";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "ini-qq" = callPackage
     ({ mkDerivation, base, HUnit, ini, raw-strings-qq, template-haskell
      , text
@@ -159701,6 +160128,8 @@ self: {
        pname = "invariant";
        version = "0.6";
        sha256 = "07ffgcfpacsdihcmcmx2m1gp8czlg28657bxncxjykjiiiwjlaxm";
+       revision = "1";
+       editedCabalFile = "0551ll1swnrmq09j89jqnxl4qnirbbpdpsdym23adaf36qdd7v37";
        libraryHaskellDepends = [
          array base bifunctors comonad containers contravariant ghc-prim
          profunctors StateVar stm tagged template-haskell th-abstraction
@@ -164811,6 +165240,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "jsonpath_0_3_0_0" = callPackage
+    ({ mkDerivation, aeson, aeson-casing, base, bytestring, file-embed
+     , hspec, hspec-discover, hspec-megaparsec, megaparsec, scientific
+     , text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "jsonpath";
+       version = "0.3.0.0";
+       sha256 = "10a2wbkhdg2x61qpfvb4cl89plhvwy5nc5qqqs5jnll7kg4cabyi";
+       libraryHaskellDepends = [
+         aeson base megaparsec scientific text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         aeson aeson-casing base bytestring file-embed hspec
+         hspec-megaparsec megaparsec text unordered-containers vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Library to parse and execute JSONPath";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "jsonresume" = callPackage
     ({ mkDerivation, aeson, base, bytestring, old-locale, text, time
      , unordered-containers
@@ -167203,8 +167654,8 @@ self: {
        pname = "keycode";
        version = "0.2.2";
        sha256 = "046k8d1h5wwadf5z4pppjkc3g7v2zxlzb06s1xgixc42y5y41yan";
-       revision = "7";
-       editedCabalFile = "1xfhm486mgkf744nbx94aw0b1lraj1yv29c57rbx1c2b84v2z8k2";
+       revision = "8";
+       editedCabalFile = "1a8a51sz670cfh73q9l2dckfqgv59lpxk8dg5xd9fnvi2ba7wdf1";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -167973,6 +168424,24 @@ self: {
        broken = true;
      }) {};
 
+  "konnakol" = callPackage
+    ({ mkDerivation, base, colour, containers, diagrams-lib
+     , diagrams-svg, random, split, tidal
+     }:
+     mkDerivation {
+       pname = "konnakol";
+       version = "0.1.0.0";
+       sha256 = "10hykji062b54q95yv1f0l8pxapxzyhk1l872nyjahn0ph0bkx1n";
+       libraryHaskellDepends = [
+         base colour containers diagrams-lib diagrams-svg random split tidal
+       ];
+       testHaskellDepends = [ base ];
+       description = "Formalising the rules of Konnakol, an Indian percussional art form";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "kontra-config" = callPackage
     ({ mkDerivation, base, bytestring, data-default, exceptions, text
      , transformers-base, unjson, utf8-string, yaml
@@ -171167,10 +171636,8 @@ self: {
      }:
      mkDerivation {
        pname = "large-anon";
-       version = "0.1.0.0";
-       sha256 = "15rrqpfd7jmm391lxhz2ag1sa17nw8x3wjqm0f9naidgmyv9x1z2";
-       revision = "1";
-       editedCabalFile = "1541ak37yk8431wiwjmcn0yp12f07wjhr8vsjs1hgmh124dm9295";
+       version = "0.1.1";
+       sha256 = "15fgmh1nnm3xc04sw0gk7a456fa1j8gij8av4h22g98pp4dap4wb";
        libraryHaskellDepends = [
          aeson base containers ghc ghc-tcplugin-api hashable large-generics
          mtl optics-core primitive record-hasfield sop-core syb tagged
@@ -171196,6 +171663,8 @@ self: {
        pname = "large-generics";
        version = "0.2.0.0";
        sha256 = "0pyydzwybccwaliajzaddgirrffv0sskkyf5zp84rs8kp2yqz9z1";
+       revision = "1";
+       editedCabalFile = "07hr73lv367ga0m3knrhwcafr6g7sa7p24689zfn4n1z4ja1cm8q";
        libraryHaskellDepends = [
          aeson base generics-sop primitive sop-core
        ];
@@ -171247,10 +171716,8 @@ self: {
      }:
      mkDerivation {
        pname = "large-records";
-       version = "0.2.1.0";
-       sha256 = "0gmgrkh9fsyy6ww64l4warsilxkxwfzfl43d36d8a5dcgvn49ip2";
-       revision = "1";
-       editedCabalFile = "1j366mm61j7xxy5lhppc0an8249iskhd3dqxazfwmc3vi23a044k";
+       version = "0.3";
+       sha256 = "1s11zk2bgi85q18hp01pkjvp8l3f1plb78cblyi4j0cvs6ra4q4w";
        libraryHaskellDepends = [
          base containers ghc large-generics mtl primitive record-hasfield
          syb template-haskell transformers
@@ -174949,8 +175416,8 @@ self: {
        pname = "lift-generics";
        version = "0.2.1";
        sha256 = "1qkzq8hcb6j15cslv577bmhjcxmljzsrryysdgd7r99kr3q445b4";
-       revision = "2";
-       editedCabalFile = "1q6lviqfvyis3ss9w6r6j5d35is50r2favj9lkdagcmczw9c4706";
+       revision = "3";
+       editedCabalFile = "0birp7ibzvil7m9ra0ixgaz9z0liixbw9z1j22x4r8x5r6hyaqik";
        libraryHaskellDepends = [
          base generic-deriving ghc-prim template-haskell th-compat
        ];
@@ -178061,43 +178528,39 @@ self: {
      }) {};
 
   "lnd-client" = callPackage
-    ({ mkDerivation, aeson, asn1-encoding, asn1-types, async, base
-     , base16-bytestring, base64-bytestring, bytestring, chronos
-     , containers, cryptohash-sha256, cryptonite, deepseq, envparse
-     , extra, hspec, http2, http2-client, http2-client-grpc
-     , http2-grpc-proto-lens, http2-grpc-types, JuicyPixels, katip
-     , microlens, network-bitcoin, pem, persistent, proto-lens
-     , proto-lens-runtime, qrcode-core, qrcode-juicypixels, scientific
-     , stm, template-haskell, text, unbounded-delays, universum
-     , unliftio, x509
+    ({ mkDerivation, aeson, async, base, base16-bytestring
+     , base64-bytestring, bytestring, chronos, containers
+     , cryptohash-sha256, cryptonite, envparse, extra
+     , generic-pretty-instances, GenericPretty, hspec, http2
+     , http2-client, http2-client-grpc, http2-grpc-proto-lens
+     , http2-grpc-types, JuicyPixels, katip, microlens, network-bitcoin
+     , pem, persistent, proto-lens, proto-lens-runtime, qrcode-core
+     , qrcode-juicypixels, scientific, stm, template-haskell, text, time
+     , tls, unbounded-delays, universum, unliftio, x509, x509-store
      }:
      mkDerivation {
        pname = "lnd-client";
-       version = "0.1.0.0";
-       sha256 = "0fjjm9gamj50scd9m55mv587klhn8xpj35x8abvms5pmpf0npzgq";
+       version = "0.1.0.1";
+       sha256 = "1bfkb4ryi79cxsyq7d16mgy634wq9azyganpf5ahyjfnfhsbb6ra";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [
-         aeson asn1-encoding asn1-types async base base16-bytestring
-         base64-bytestring bytestring chronos containers cryptohash-sha256
-         cryptonite deepseq envparse extra hspec http2 http2-client
-         http2-client-grpc http2-grpc-proto-lens http2-grpc-types
-         JuicyPixels katip microlens network-bitcoin pem persistent
-         proto-lens proto-lens-runtime qrcode-core qrcode-juicypixels
-         scientific stm template-haskell text unbounded-delays universum
-         unliftio x509
-       ];
-       testHaskellDepends = [
-         aeson asn1-encoding asn1-types async base base16-bytestring
-         base64-bytestring bytestring chronos containers cryptohash-sha256
-         cryptonite deepseq envparse extra hspec http2 http2-client
+         aeson async base base16-bytestring base64-bytestring bytestring
+         chronos containers cryptohash-sha256 cryptonite envparse extra
+         generic-pretty-instances GenericPretty http2 http2-client
          http2-client-grpc http2-grpc-proto-lens http2-grpc-types
          JuicyPixels katip microlens network-bitcoin pem persistent
          proto-lens proto-lens-runtime qrcode-core qrcode-juicypixels
-         scientific stm template-haskell text unbounded-delays universum
-         unliftio x509
+         scientific stm template-haskell text time tls unbounded-delays
+         universum unliftio x509 x509-store
        ];
+       executableHaskellDepends = [ async base ];
+       testHaskellDepends = [ async base containers hspec unliftio ];
+       doHaddock = false;
        description = "Lightning Network Daemon (LND) client library for Haskell";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       mainProgram = "lnd-client-prof";
      }) {};
 
   "lnurl" = callPackage
@@ -188424,17 +188887,17 @@ self: {
 
   "mit-3qvpPyAi6mH" = callPackage
     ({ mkDerivation, base, base64, containers, directory, ki
-     , optparse-applicative, parsec, process, text, text-ansi, unix
+     , optparse-applicative, parsec, process, stm, text, text-ansi, unix
      }:
      mkDerivation {
        pname = "mit-3qvpPyAi6mH";
-       version = "8";
-       sha256 = "0rknwwfysmic2x8apwah99d0lmjlgyn6wnxrvviv22903bnjlcn9";
+       version = "9";
+       sha256 = "1p0kpfpzsnp6zyhvx8mqh3lrmgl19q15lfs8q32yk08bqk63pbj9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base base64 containers directory ki optparse-applicative parsec
-         process text text-ansi unix
+         process stm text text-ansi unix
        ];
        executableHaskellDepends = [ base ];
        description = "A git wrapper with a streamlined UX";
@@ -197103,8 +197566,8 @@ self: {
     ({ mkDerivation, base, hspec, optics-core, text }:
      mkDerivation {
        pname = "nat-optics";
-       version = "1.0.0.3";
-       sha256 = "1anvn1p4zp8qwc7pasvx1xvglncjbz7p45x4i7rzj2zdz7qcs4nq";
+       version = "1.0.0.4";
+       sha256 = "0r9disaj26f17k84zkkfxj1glin2vdgfk8ss5fyag6xr6imzp17s";
        libraryHaskellDepends = [ base optics-core text ];
        testHaskellDepends = [ base hspec optics-core text ];
        description = "Refinement types for natural numbers with an optics interface";
@@ -200178,8 +200641,7 @@ self: {
        libraryToolDepends = [ c2hs ];
        description = "libnfc bindings";
        license = lib.licenses.publicDomain;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       maintainers = [ lib.maintainers.centromere ];
      }) {inherit (pkgs) libnfc;};
 
   "ngram" = callPackage
@@ -200592,8 +201054,8 @@ self: {
        pname = "nix-derivation";
        version = "1.1.2";
        sha256 = "0248xbxq4889hc3qp9z0yr21f97j3lxrjjx2isxdf8ah4hpidzy7";
-       revision = "1";
-       editedCabalFile = "06fj7rqj8g3xhwm0x0cyxp7f8k8gasm4y2ccnm8zq9bhli1hw4b0";
+       revision = "2";
+       editedCabalFile = "1n2yqwpj6n4djb9gjv2dsvbx8xp5vff5qxhaivmglwqh8v55sf9x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -201975,8 +202437,8 @@ self: {
      }:
      mkDerivation {
        pname = "notmuch";
-       version = "0.3.0.1";
-       sha256 = "0dns7h8fh5ddd77wysys5x9qialz7bqj9h76qj3fy34145d7wlq4";
+       version = "0.3.1";
+       sha256 = "1lvxrljzgpc1rgdgrb6x35k3syc9wnnh3acr8dbfj7n2giq5ganr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -204826,7 +205288,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "opaleye_0_9_3_1" = callPackage
+  "opaleye_0_9_3_2" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
      , case-insensitive, containers, contravariant, dotenv, hspec
      , hspec-discover, multiset, postgresql-simple, pretty
@@ -204836,8 +205298,8 @@ self: {
      }:
      mkDerivation {
        pname = "opaleye";
-       version = "0.9.3.1";
-       sha256 = "1mgyjg2gzs2l6941561bhk29wqv9fj81g7q4wlkkaxszg9w2lkww";
+       version = "0.9.3.2";
+       sha256 = "0lkdi2svbv64z4rnsfxbr7ijb3a5rmsx4c6igzql7ajrlwha49rx";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring case-insensitive
          contravariant postgresql-simple pretty product-profunctors
@@ -208121,22 +208583,21 @@ self: {
      }) {};
 
   "package-version" = callPackage
-    ({ mkDerivation, base, deepseq, doctest, hedgehog, prettyprinter
-     , safe-exceptions, tagged, tasty, tasty-hedgehog, tasty-hunit
-     , template-haskell, text
+    ({ mkDerivation, base, bytestring, deepseq, doctest, env-guard
+     , hedgehog, prettyprinter, safe-exceptions, tagged, tasty
+     , tasty-hedgehog, tasty-hunit, template-haskell, text
      }:
      mkDerivation {
        pname = "package-version";
-       version = "0.1.0.0";
-       sha256 = "1r1rw412f40ylnyhxjb04f2ch52wqqblm8979x92n8fd9jj3lr84";
-       revision = "1";
-       editedCabalFile = "165bhn0fv5ip5vcrnxv33i4a8mi7r0nhry1j3f7alh2mj0zck7xv";
+       version = "0.2";
+       sha256 = "0381k1s0gc5wqxx21fg3nk7cgg821qlszdnwp1gl9jrykbfqak44";
        libraryHaskellDepends = [
-         base deepseq prettyprinter safe-exceptions template-haskell text
+         base bytestring deepseq prettyprinter safe-exceptions
+         template-haskell text
        ];
        testHaskellDepends = [
-         base doctest hedgehog safe-exceptions tagged tasty tasty-hedgehog
-         tasty-hunit text
+         base doctest env-guard hedgehog safe-exceptions tagged tasty
+         tasty-hedgehog tasty-hunit text
        ];
        description = "A package for retrieving a package's version number";
        license = lib.licenses.bsd3;
@@ -218364,23 +218825,20 @@ self: {
 
   "pixiv" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, bytestring
-     , cryptohash-md5, directory, exceptions, filepath, http-client
+     , cryptohash-md5, exceptions, filepath, http-client
      , http-client-tls, lens, monad-control, mtl, process, servant
      , servant-client, servant-client-core, template-haskell, temporary
      , text, time, transformers, transformers-base, zip-archive
      }:
      mkDerivation {
        pname = "pixiv";
-       version = "0.1.0";
-       sha256 = "001pfzijh7ibcyinmw0l8yvw0kxsvmniw993qx9b6zlzf689cpp6";
-       revision = "1";
-       editedCabalFile = "03wfjj0a074n02mpa02gncfy35m53qdmij465dk8g6qjnjah8a01";
+       version = "0.1.1";
+       sha256 = "1mzcnm1y0fsx66lk09j49mdw9hv4l0zsq4wqi9jcamr0jf5ffq0y";
        libraryHaskellDepends = [
-         aeson base base16-bytestring bytestring cryptohash-md5 directory
-         exceptions filepath http-client http-client-tls lens monad-control
-         mtl process servant servant-client servant-client-core
-         template-haskell temporary text time transformers transformers-base
-         zip-archive
+         aeson base base16-bytestring bytestring cryptohash-md5 exceptions
+         filepath http-client http-client-tls lens monad-control mtl process
+         servant servant-client servant-client-core template-haskell
+         temporary text time transformers transformers-base zip-archive
        ];
        testHaskellDepends = [
          aeson base bytestring http-client http-client-tls
@@ -222260,6 +222718,24 @@ self: {
        broken = true;
      }) {};
 
+  "postgresql-ltree" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, containers, hspec
+     , QuickCheck, text, uuid
+     }:
+     mkDerivation {
+       pname = "postgresql-ltree";
+       version = "0.0.0.0";
+       sha256 = "0i3zh6bnkxfqvphyssxg8brzq20v7ladsqsq5j1m99g29bs5x77q";
+       libraryHaskellDepends = [
+         aeson attoparsec base containers text uuid
+       ];
+       testHaskellDepends = [ base hspec QuickCheck text ];
+       description = "Types and functions for representing PostgreSQL's ltree";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "postgresql-migration" = callPackage
     ({ mkDerivation, base, base64-bytestring, bytestring, cryptohash
      , directory, filepath, hspec, postgresql-simple, text, time
@@ -222553,6 +223029,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "postgresql-simple-ltree" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, hspec, monad-logger
+     , postgresql-ltree, postgresql-simple, QuickCheck, text
+     , tmp-postgres
+     }:
+     mkDerivation {
+       pname = "postgresql-simple-ltree";
+       version = "0.0.0.0";
+       sha256 = "1pm0xl7d71gvr57v15kjr7yw9v1bd4marfqi8c920jm58jh07z8m";
+       revision = "1";
+       editedCabalFile = "1csmfcgvbcjq4fssivqk5fjyv517ffar9fvwpbcax9dzpfg4his5";
+       libraryHaskellDepends = [
+         aeson base postgresql-ltree postgresql-simple text
+       ];
+       testHaskellDepends = [
+         base bytestring hspec monad-logger postgresql-ltree
+         postgresql-simple QuickCheck text tmp-postgres
+       ];
+       description = "Instances for using ltree with postgresql-simple";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "postgresql-simple-migration" = callPackage
     ({ mkDerivation, base, base64-bytestring, bytestring, cryptohash
      , directory, hspec, postgresql-simple, text, time
@@ -229443,6 +229942,35 @@ self: {
        mainProgram = "qhs";
      }) {};
 
+  "qhull" = callPackage
+    ({ mkDerivation, base, combinat, containers, data-default-class
+     , extra, hashable, ilist, insert-ordered-containers
+     , optparse-applicative, pretty-show, random, regex-base
+     , regex-compat, regex-posix, split, toysolver, Unique
+     , vector-algorithms, vector-space
+     }:
+     mkDerivation {
+       pname = "qhull";
+       version = "0.1.0.1";
+       sha256 = "0r34w9v73zly7kz4ib70m2kpm16k1ngcx36ccfzz1agqjkbcva5l";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base combinat containers data-default-class extra hashable ilist
+         insert-ordered-containers pretty-show random regex-base
+         regex-compat regex-posix split toysolver Unique vector-algorithms
+         vector-space
+       ];
+       executableHaskellDepends = [
+         base combinat containers extra ilist insert-ordered-containers
+         optparse-applicative pretty-show regex-base regex-compat
+         regex-posix
+       ];
+       description = "Delaunay triangulation, Voronoi diagrams and convex hulls";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "qhull-simple" = callPackage
     ({ mkDerivation, base, qhull, vector }:
      mkDerivation {
@@ -250814,8 +251342,8 @@ self: {
        pname = "servant-iCalendar";
        version = "0.1.0.1";
        sha256 = "15gqlb60r8msn3k1j8wjxq89qg6d790lnb751wabg2lsxybmdzas";
-       revision = "8";
-       editedCabalFile = "10ka19ga7slcv4cb2f0ncfbkz52bbrm8jkxma8qksz6hm48wxjya";
+       revision = "9";
+       editedCabalFile = "10r7kbil264vv090vhinhbb263zckjwdvp1sn1hx238yp5dzxlq0";
        libraryHaskellDepends = [
          base data-default http-media iCalendar servant
        ];
@@ -252630,8 +253158,8 @@ self: {
      }:
      mkDerivation {
        pname = "serversession-backend-persistent";
-       version = "2.0.0";
-       sha256 = "11zcncppswgx7cd9ihr6nm91574f7azsqbdcra9p2c2fqm191dvg";
+       version = "2.0.1";
+       sha256 = "1x08a5xhg2f48hjj651gchn17k7fg1n4a64vmyzy2ps2xrgqr2sy";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring cereal path-pieces
          persistent serversession tagged text time transformers
@@ -252731,8 +253259,8 @@ self: {
      }:
      mkDerivation {
        pname = "serversession-frontend-yesod";
-       version = "1.0";
-       sha256 = "0lv7gkj4inks98g44n5kqvx5s4c66lmxf7gqfdly54znggglcf86";
+       version = "1.0.1";
+       sha256 = "0wq33480mv4sjbmf7rh1yzz65apy29ap8rypwhif1f2fd6byi5m9";
        libraryHaskellDepends = [
          base bytestring containers cookie data-default path-pieces
          serversession text time transformers unordered-containers wai
@@ -259480,8 +260008,8 @@ self: {
        pname = "snap-core";
        version = "1.0.5.0";
        sha256 = "0hf671g7h4nikfvi05q3mmcxhfcsh874dkansssn0mc68k9fsak4";
-       revision = "1";
-       editedCabalFile = "17ls02j8lxk0ml3pikxqkpmivzi49n2x5xh14gnrk2j1f8g06zk5";
+       revision = "2";
+       editedCabalFile = "14cvxfyq4d0sjyyj1qxphzywgq63kxmc4bcgwfd6hphqd60h2p35";
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-builder case-insensitive
          containers directory filepath hashable HUnit io-streams lifted-base
@@ -269383,6 +269911,8 @@ self: {
        pname = "structs";
        version = "0.1.6";
        sha256 = "0wzbhsvix46aans0hdm11pvsigk1lxpdaha2sxslx0ip1xsdg0gk";
+       revision = "1";
+       editedCabalFile = "1vpi14bc8x53dxzcyya39zr287kyfrjxiy5z5lwfkf63dmsrbd28";
        libraryHaskellDepends = [
          base deepseq ghc-prim primitive template-haskell th-abstraction
        ];
@@ -269438,8 +269968,8 @@ self: {
        pname = "structured";
        version = "0.1.1";
        sha256 = "1mz02ys85z79nj24ylsmgh8v2m7zv2rixf7w0iqnwc49lax52w4q";
-       revision = "3";
-       editedCabalFile = "188vz6j28ir7c6qrch3i95p9dd98b9f4hk9yvilnwpzd5v86dm3x";
+       revision = "4";
+       editedCabalFile = "1ayq9nf0bxx960qmdckxjsyhrz4xd6ymp0cf6v3qih13k8ld74hd";
        libraryHaskellDepends = [
          aeson array base base16-bytestring binary bytestring containers
          hashable scientific tagged text time-compat transformers
@@ -270811,8 +271341,8 @@ self: {
      }:
      mkDerivation {
        pname = "sv2v";
-       version = "0.0.9";
-       sha256 = "1pb7fwq7nbwliznw14y2hw1rwg8y78kiyv41cdwcz0vlwcp0cqd9";
+       version = "0.0.10";
+       sha256 = "00h7f8dmi17r4bcyzm25d6avvxdi8fqfxmvh7ssg9kqcbbix9xkd";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -273768,8 +274298,8 @@ self: {
        pname = "tagged";
        version = "0.8.6.1";
        sha256 = "00kcc6lmj7v3xm2r3wzw5jja27m4alcw1wi8yiismd0bbzwzrq7m";
-       revision = "2";
-       editedCabalFile = "0qi63c3z40i9qm44r571yjzcpb8d473vj2km4kq0fij0ljc7vii9";
+       revision = "3";
+       editedCabalFile = "19klgkhkca9qgq2ylc41z85x7piagjh8wranriy48dcfkgraw94a";
        libraryHaskellDepends = [
          base deepseq template-haskell transformers
        ];
@@ -278919,7 +279449,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) icu;};
 
-  "text-icu_0_8_0_1" = callPackage
+  "text-icu_0_8_0_2" = callPackage
     ({ mkDerivation, array, base, bytestring, deepseq, directory
      , ghc-prim, HUnit, icu, icu-i18n, QuickCheck, random
      , test-framework, test-framework-hunit, test-framework-quickcheck2
@@ -278927,10 +279457,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-icu";
-       version = "0.8.0.1";
-       sha256 = "1bxhaxyvhag26airz870lc6rjlf14xigdx3cml13kp7bshwgl7wi";
-       revision = "2";
-       editedCabalFile = "0j9l87xg5xp33n31ln16qj6gzw4xzvs0cd3bfvjiw7x8wy8irli2";
+       version = "0.8.0.2";
+       sha256 = "0frxrsj580ipgb3pdvw1msdz8d63j02vvrqhzjja3ixlq24am69d";
        libraryHaskellDepends = [ base bytestring deepseq text time ];
        librarySystemDepends = [ icu ];
        libraryPkgconfigDepends = [ icu-i18n ];
@@ -279393,6 +279921,8 @@ self: {
        pname = "text-show";
        version = "3.9.7";
        sha256 = "1zc47qh38jmg19fdki9isjcq4v115w2q61dnmxkypahhgiaqgkb3";
+       revision = "1";
+       editedCabalFile = "0dm0ziv02wcwlgzp58kfa4i05xbq9v82ay6kjnzrf0n3z3pdpxbm";
        libraryHaskellDepends = [
          array base base-compat-batteries bifunctors bytestring
          bytestring-builder containers generic-deriving ghc-boot-th ghc-prim
@@ -279459,8 +279989,8 @@ self: {
        pname = "text-show-instances";
        version = "3.9";
        sha256 = "1bfangk4ys6pvhrv3j7i2c29xnhgin5lma2ndw051hnmmc7v2j7l";
-       revision = "1";
-       editedCabalFile = "1radrshv4flxlqsv36bz06pvw1l7nanqimfrx9rzspxcnldzv5q7";
+       revision = "2";
+       editedCabalFile = "0jmyq3pcxgwhqvhk16p7hz960f09ap2ym5iz2acnnc8ynyq6vvrf";
        libraryHaskellDepends = [
          base base-compat-batteries bifunctors binary containers directory
          ghc-boot-th haskeline hpc old-locale old-time pretty random
@@ -279859,6 +280389,21 @@ self: {
        license = lib.licenses.isc;
      }) {};
 
+  "th-abstraction_0_4_4_0" = callPackage
+    ({ mkDerivation, base, containers, ghc-prim, template-haskell }:
+     mkDerivation {
+       pname = "th-abstraction";
+       version = "0.4.4.0";
+       sha256 = "1nmgylmxgqc2hxjqcxqiws2qm8cimvc859b1fr341hn60an1d829";
+       libraryHaskellDepends = [
+         base containers ghc-prim template-haskell
+       ];
+       testHaskellDepends = [ base containers template-haskell ];
+       description = "Nicer interface for reified information about data types";
+       license = lib.licenses.isc;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "th-alpha" = callPackage
     ({ mkDerivation, base, containers, derive, mmorph, mtl, tasty
      , tasty-hunit, tasty-quickcheck, template-haskell, th-desugar
@@ -279934,6 +280479,26 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "th-compat_0_1_4" = callPackage
+    ({ mkDerivation, base, base-compat, directory, filepath, hspec
+     , hspec-discover, mtl, template-haskell
+     }:
+     mkDerivation {
+       pname = "th-compat";
+       version = "0.1.4";
+       sha256 = "1f5ssi24mnhmmi91dl5ddg2jwci6akwlznqggf56nyxl9b0pmyfq";
+       libraryHaskellDepends = [
+         base directory filepath template-haskell
+       ];
+       testHaskellDepends = [
+         base base-compat hspec mtl template-haskell
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Backward- (and forward-)compatible Quote and Code types";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "th-constraint-compat" = callPackage
     ({ mkDerivation, base, containers, template-haskell }:
      mkDerivation {
@@ -280072,6 +280637,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "th-expand-syns_0_4_10_0" = callPackage
+    ({ mkDerivation, base, containers, syb, template-haskell
+     , th-abstraction
+     }:
+     mkDerivation {
+       pname = "th-expand-syns";
+       version = "0.4.10.0";
+       sha256 = "044h1hv4b0ihpwr9wndj55fa843cbzqp1difgj9wyy3mw925higm";
+       libraryHaskellDepends = [
+         base containers syb template-haskell th-abstraction
+       ];
+       testHaskellDepends = [ base template-haskell th-abstraction ];
+       description = "Expands type synonyms in Template Haskell ASTs";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "th-extras" = callPackage
     ({ mkDerivation, base, containers, syb, template-haskell
      , th-abstraction
@@ -280238,8 +280820,8 @@ self: {
        pname = "th-lift";
        version = "0.8.2";
        sha256 = "1r2wrnrn6qwy6ysyfnlqn6xbfckw0b22h8n00pk67bhhg81jfn9s";
-       revision = "1";
-       editedCabalFile = "1l8fsxbxfsgcy6qxlgn6qxwhiqwwmmaj2vb1gbrjyb905gb3lpwm";
+       revision = "2";
+       editedCabalFile = "1s95i774zy3q8yzk18ygdzhzky6wfcr7g55hd2g8h8lc05xzcdgi";
        libraryHaskellDepends = [
          base ghc-prim template-haskell th-abstraction
        ];
@@ -289408,16 +289990,13 @@ self: {
      }) {};
 
   "typelet" = callPackage
-    ({ mkDerivation, base, cabal-doctest, containers, ghc
-     , ghc-tcplugin-api, tasty, tasty-hunit, tasty-quickcheck
+    ({ mkDerivation, base, containers, ghc, ghc-tcplugin-api, tasty
+     , tasty-hunit, tasty-quickcheck
      }:
      mkDerivation {
        pname = "typelet";
-       version = "0.1.1.0";
-       sha256 = "1mgmlly0whdgbpjqa3smjgxhrlwqq971kka36i61ldkppb6ic2kj";
-       isLibrary = true;
-       isExecutable = true;
-       setupHaskellDepends = [ base cabal-doctest ];
+       version = "0.1.2";
+       sha256 = "09vxpwiz3hf876a5ymwvcq2n5dcxkzpna5srdk817051m715ys99";
        libraryHaskellDepends = [ base containers ghc ghc-tcplugin-api ];
        testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Plugin to faciliate type-level let";
@@ -291227,39 +291806,48 @@ self: {
     ({ mkDerivation, base, numeric-prelude, test-invariant }:
      mkDerivation {
        pname = "uniform-algebras";
-       version = "0.1.2";
-       sha256 = "16dpdhgzyxvi80h6wl68ggwi5msag6l8jasn8nxa4jky4nki50x4";
+       version = "0.1.3";
+       sha256 = "0y5x89qkbmzda4xxmg9zdk573vjz89h8iqia8p555cmachf18lf7";
        libraryHaskellDepends = [ base numeric-prelude test-invariant ];
        description = "Pointless functions and a simplistic zero and monoid";
        license = lib.licenses.gpl2Only;
      }) {};
 
   "uniform-error" = callPackage
-    ({ mkDerivation, base, monads-tf, safe, uniform-strings }:
+    ({ mkDerivation, base, HTF, safe, transformers, uniform-strings }:
      mkDerivation {
        pname = "uniform-error";
-       version = "0.1.0";
-       sha256 = "1ap8wrnh08yvv9hwd92mp1g5fz4g7l0aij1h0hfl3j7ijd028pmx";
-       libraryHaskellDepends = [ base monads-tf safe uniform-strings ];
+       version = "0.1.3";
+       sha256 = "0p9gplvnhfly0whdl0b0ydjpiyg7v5r5flkg4c02yqzsdxfp7sjf";
+       libraryHaskellDepends = [ base safe transformers uniform-strings ];
+       testHaskellDepends = [
+         base HTF safe transformers uniform-strings
+       ];
        description = "Handling errors in the uniform framework";
        license = lib.licenses.gpl2Only;
      }) {};
 
   "uniform-fileio" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, directory, exceptions
-     , filepath, monads-tf, path, path-io, pipes, pureMD5, safe, text
-     , uniform-algebras, uniform-error, uniform-strings, uniform-time
-     , unix, zlib
+     , filepath, HTF, monads-tf, path, path-io, pipes, pureMD5
+     , quickcheck-text, safe, test-invariant, text, uniform-algebras
+     , uniform-error, uniform-strings, uniform-time, unix, zlib
      }:
      mkDerivation {
        pname = "uniform-fileio";
-       version = "0.1.2";
-       sha256 = "0i9lq07k9v7s119rj2xv5nz5zi7jq60bndvb9v5n6gvrn2zqfm3s";
+       version = "0.1.3";
+       sha256 = "08drclzs1g7w2cqsa16izs2nxa4pdkz5v1c2qbkwl03in9ga9v1v";
        libraryHaskellDepends = [
          base bytestring deepseq directory exceptions filepath monads-tf
          path path-io pipes pureMD5 safe text uniform-algebras uniform-error
          uniform-strings uniform-time unix zlib
        ];
+       testHaskellDepends = [
+         base bytestring deepseq directory exceptions filepath HTF monads-tf
+         path path-io pipes pureMD5 quickcheck-text safe test-invariant text
+         uniform-algebras uniform-error uniform-strings uniform-time unix
+         zlib
+       ];
        description = "Uniform file handling operations";
        license = lib.licenses.gpl2Only;
      }) {};
@@ -291301,16 +291889,22 @@ self: {
      }) {};
 
   "uniform-strings" = callPackage
-    ({ mkDerivation, base, bytestring, MissingH, monads-tf, network-uri
-     , pretty-show, safe, split, text, text-icu, uniform-algebras
+    ({ mkDerivation, base, bytestring, HTF, MissingH, monads-tf
+     , network-uri, pretty-show, quickcheck-text, safe, snap-core, split
+     , test-invariant, text, uniform-algebras
      }:
      mkDerivation {
        pname = "uniform-strings";
-       version = "0.1.2";
-       sha256 = "05x74a4mkyrpvbi4w3i0m1lj26d7mdcszdfdz4sixm69fg8jjh33";
+       version = "0.1.3.1";
+       sha256 = "1bh0n41sn0sgss85r890n2lysnb33xkf1qqxhs9498pd7gjzk5q7";
        libraryHaskellDepends = [
          base bytestring MissingH monads-tf network-uri pretty-show safe
-         split text text-icu uniform-algebras
+         snap-core split text uniform-algebras
+       ];
+       testHaskellDepends = [
+         base bytestring HTF MissingH monads-tf network-uri pretty-show
+         quickcheck-text safe snap-core split test-invariant text
+         uniform-algebras
        ];
        description = "Manipulate and convert strings of characters uniformly and consistently";
        license = lib.licenses.gpl2Only;
@@ -291322,8 +291916,8 @@ self: {
      }:
      mkDerivation {
        pname = "uniform-time";
-       version = "0.1.0";
-       sha256 = "08p40xl4zzswhax3i6j4ps0zy2m9qsbcpj4b00xvizc3g9fxnzsh";
+       version = "0.1.3";
+       sha256 = "0lygmp71933gdnydqg6p8gdnwvzh25p8dkx3jwvc3c0nh4jb1j9d";
        libraryHaskellDepends = [
          base convertible monads-tf time uniform-algebras uniform-error
          uniform-strings
@@ -291333,16 +291927,16 @@ self: {
      }) {};
 
   "uniformBase" = callPackage
-    ({ mkDerivation, base, uniform-algebras, uniform-error
-     , uniform-fileio, uniform-strings, uniform-time
+    ({ mkDerivation, base, data-default, uniform-algebras
+     , uniform-error, uniform-fileio, uniform-strings, uniform-time
      }:
      mkDerivation {
        pname = "uniformBase";
-       version = "0.1.3";
-       sha256 = "0gsms5zs28dhhn6jqdd5chb3liyp398kcyjb8z6hmyaprlc73pyl";
+       version = "0.1.4";
+       sha256 = "1j2fra8p5svb2g9fl86innfghvkvcdqa7dy2w0nszi0lvn5hf86h";
        libraryHaskellDepends = [
-         base uniform-algebras uniform-error uniform-fileio uniform-strings
-         uniform-time
+         base data-default uniform-algebras uniform-error uniform-fileio
+         uniform-strings uniform-time
        ];
        description = "A uniform base to build apps on";
        license = lib.licenses.gpl2Only;
@@ -293591,8 +294185,8 @@ self: {
        pname = "urlencoded";
        version = "0.5.0.0";
        sha256 = "0d1vj7w297cf9sk9x942za00f7ihqzcgbgjdbn7r9g0hz7qyl6nn";
-       revision = "1";
-       editedCabalFile = "0yskpdn6k4xj5qvgvqjblm6abg247ximk2kv7lswpkngbavlvyiq";
+       revision = "3";
+       editedCabalFile = "05vdcb1ffy1i2xl87w3079ckkj5l7bw1bqj25308pkw8b85amhv6";
        libraryHaskellDepends = [ base mtl network network-uri split ];
        testHaskellDepends = [ base network network-uri QuickCheck ];
        description = "Generate or process x-www-urlencoded data";
@@ -295017,6 +295611,19 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "validity-network-uri" = callPackage
+    ({ mkDerivation, base, network-uri, validity }:
+     mkDerivation {
+       pname = "validity-network-uri";
+       version = "0.0.0.0";
+       sha256 = "01ni4i1i16p20s2yx5pqlk4yw1byki04wb4vafx57n84fyd629mp";
+       libraryHaskellDepends = [ base network-uri validity ];
+       description = "Validity instances for URI";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "validity-path" = callPackage
     ({ mkDerivation, base, filepath, genvalidity-hspec, hspec, path
      , validity
@@ -295829,8 +296436,8 @@ self: {
        pname = "vector-binary-instances";
        version = "0.2.5.2";
        sha256 = "0kgmlb4rf89b18d348cf2k06xfhdpamhmvq7iz5pab5014hknbmp";
-       revision = "1";
-       editedCabalFile = "0rbjskq11wlfa97h8bidzk145lkqrv00kx1rgwgdcfbgz1l73iha";
+       revision = "2";
+       editedCabalFile = "149gn5n722r2skj5w46av3944fbw3882qkaydq7asm6zx5kc0nj6";
        libraryHaskellDepends = [ base binary vector ];
        testHaskellDepends = [ base binary tasty tasty-quickcheck vector ];
        benchmarkHaskellDepends = [
diff --git a/pkgs/development/libraries/cmark-gfm/default.nix b/pkgs/development/libraries/cmark-gfm/default.nix
index 599ac2b2e7b..ecfdda3192f 100644
--- a/pkgs/development/libraries/cmark-gfm/default.nix
+++ b/pkgs/development/libraries/cmark-gfm/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 stdenv.mkDerivation rec {
   pname = "cmark-gfm";
-  version = "0.29.0.gfm.3";
+  version = "0.29.0.gfm.4";
 
   src = fetchFromGitHub {
     owner = "github";
     repo = "cmark-gfm";
     rev = version;
-    sha256 = "sha256-V3XegSjqKLCMpfnoYHr9/r5fSC2CC7A2jXkAcHUt7eA=";
+    sha256 = "sha256-touFLrxVQvX75JXYLADq84yIuQ1kl43fVUvZ4qGYoMM=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix
index 70ea28d2315..ef3b1c01cd5 100644
--- a/pkgs/development/tools/just/default.nix
+++ b/pkgs/development/tools/just/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = version;
-    sha256 = "sha256-b0a5TaB0muojqLCxTVvD95zgGp7gz72OvxfK+QtZV8k=";
+    sha256 = "sha256-XtX71Nd+xJmBG3MfLdEMK/JWLS8p8tOPN3RAQMMi4vU=";
   };
 
-  cargoSha256 = "sha256-ka5Np7YxfYRL42ipClD9xWTYA2vynDjQqy/6IsP5Ejs=";
+  cargoSha256 = "sha256-yMRoLgbX6JyJeO6hG5+iX8jAY5YElXF/FCnO06O3bo4=";
 
   nativeBuildInputs = [ installShellFiles ];
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
diff --git a/pkgs/games/grapejuice/default.nix b/pkgs/games/grapejuice/default.nix
index 901045f750f..08df64fb0e0 100644
--- a/pkgs/games/grapejuice/default.nix
+++ b/pkgs/games/grapejuice/default.nix
@@ -18,13 +18,13 @@
 
 python3Packages.buildPythonApplication rec  {
   pname = "grapejuice";
-  version = "5.1.1";
+  version = "5.2.2";
 
   src = fetchFromGitLab {
     owner = "BrinkerVII";
     repo = "grapejuice";
     rev = "v${version}";
-    sha256 = "sha256-31pxQtKw5sLGnnNdboF7AAIFqsan5pXKHIHtKq/ErRE=";
+    sha256 = "sha256-YEAYoZF1Lf0ykB13cuRf5sOR1HIxwdcibyJLgP3g4Jk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix
index b3f13915823..c1639d09a77 100644
--- a/pkgs/os-specific/linux/kernel/zen-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix
@@ -32,7 +32,7 @@ let
 
     extraMeta = {
       branch = lib.versions.majorMinor version + "/master";
-      maintainers = with lib.maintainers; [ andresilva pedrohlc psydvl ];
+      maintainers = with lib.maintainers; [ andresilva pedrohlc ];
       description = "Built using the best configuration and kernel sources for desktop, multimedia, and gaming workloads." +
         lib.optionalString isLqx " (Same as linux_zen but less aggressive release schedule)";
     };
diff --git a/pkgs/servers/unifi/default.nix b/pkgs/servers/unifi/default.nix
index 72ba0046d29..3631cd936e8 100644
--- a/pkgs/servers/unifi/default.nix
+++ b/pkgs/servers/unifi/default.nix
@@ -66,7 +66,7 @@ in rec {
   };
 
   unifi7 = generic {
-    version = "7.1.66";
-    sha256 = "sha256-lLpudaDUWdUM3HKn8yLJJh2XrqfQv7QYwYTV21iFZ7k=";
+    version = "7.1.68";
+    sha256 = "sha256-N12/v1uUPBpU/lXOvj7AjSKo/CjWTjGr9SMIiE/ldF8=";
   };
 }
diff --git a/pkgs/tools/admin/kics/default.nix b/pkgs/tools/admin/kics/default.nix
new file mode 100644
index 00000000000..c6cc5db4027
--- /dev/null
+++ b/pkgs/tools/admin/kics/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, buildGoModule, fetchFromGitHub, lib }:
+
+buildGoModule rec {
+  pname = "kics";
+  version = "1.5.12";
+
+  src = fetchFromGitHub {
+    owner = "Checkmarx";
+    repo = "kics";
+    rev = "v${version}";
+    sha256 = "sha256-jHspStyjq5T9jzYDRYaf2gOI4F/X+h4nDn0PFUOHoBY=";
+  };
+
+  vendorSha256 = "sha256-q5NuuP04kOoLVj210s17fIW2cxrsC/tAyET8YYGai0M=";
+
+  subPackages = [ "cmd/console" ];
+
+  postInstall = ''
+    mv $out/bin/console $out/bin/kics
+  '';
+
+  ldflags = [
+    "-s" "-w"
+    "-X github.com/Checkmarx/kics/internal/constant.SCMCommits=${version}"
+    "-X github.com/Checkmarx/kics/internal/constants.Version=${version}"
+  ];
+
+  meta = with lib; {
+    description = ''
+      Find security vulnerabilities, compliance issues, and infrastructure misconfigurations early in the development
+      cycle of your infrastructure-as-code with KICS by Checkmarx.
+    '';
+    homepage = "https://github.com/Checkmarx/kics";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ patryk4815 ];
+  };
+}
diff --git a/pkgs/tools/misc/lottieconverter/default.nix b/pkgs/tools/misc/lottieconverter/default.nix
index ad2721c36e3..e7ee6e9b74f 100644
--- a/pkgs/tools/misc/lottieconverter/default.nix
+++ b/pkgs/tools/misc/lottieconverter/default.nix
@@ -1,34 +1,42 @@
-{ lib, stdenv, fetchFromGitHub, libpng, rlottie, zlib }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, libpng
+, rlottie
+, giflib
+}:
 
-stdenv.mkDerivation rec {
-  pname = "LottieConverter";
-  version = "0.1.1";
+stdenv.mkDerivation (finalAttrs: {
+  pname = "lottieconverter";
+  version = "0.2";
 
   src = fetchFromGitHub {
     owner = "sot-tech";
-    repo = pname;
-    rev = "r${version}";
-    hash = "sha256-lAGzh6B2js2zDuN+1U8CZnse09RJGZRXbtmsheGKuYU=";
+    repo = finalAttrs.pname;
+    rev = "r${finalAttrs.version}";
+    hash = "sha256-oCFQsOQbWzmzClaTOeuEtGo7uXoKYtaJuSLLgqAQP1M=";
   };
 
-  buildInputs = [ libpng rlottie zlib ];
-  makeFlags = [ "CONF=Release" ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ libpng rlottie giflib ];
+
+  cmakeFlags = [
+    "-DSYSTEM_RL=1"
+    "-DSYSTEM_GL=1"
+  ];
 
   installPhase = ''
     runHook preInstall
-
-    mkdir -p $out/bin
-    cp -v dist/Release/GNU-Linux/lottieconverter $out/bin/
-
+    install -Dm755 lottieconverter "$out/bin/lottieconverter"
     runHook postInstall
   '';
 
   meta = with lib; {
     homepage = "https://github.com/sot-tech/LottieConverter/";
     description = "Lottie converter utility";
-    license = licenses.lgpl21Plus;
+    license = licenses.bsd3;
     platforms = platforms.all;
-    maintainers = with maintainers; [ CRTified ];
-    broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/lottieconverter.x86_64-darwin
+    maintainers = with maintainers; [ CRTified nickcao ];
   };
-}
+})
diff --git a/pkgs/tools/networking/bgpq4/default.nix b/pkgs/tools/networking/bgpq4/default.nix
index e429b5a8cd2..b3dfc962632 100644
--- a/pkgs/tools/networking/bgpq4/default.nix
+++ b/pkgs/tools/networking/bgpq4/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bgpq4";
-  version = "1.4";
+  version = "1.5";
 
   src = fetchFromGitHub {
     owner = "bgp";
     repo = pname;
     rev = version;
-    sha256 = "sha256-EFxINRFrcNXGtXpNqvBIN6pE1kG3OdeDIHYOsG2celI=";
+    sha256 = "sha256-yIggx2rSi2/AVw5W9fvKQORD4TaK05TeQtErVEmcHUw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/networking/frp/default.nix b/pkgs/tools/networking/frp/default.nix
index 864893b1467..682cb3a5540 100644
--- a/pkgs/tools/networking/frp/default.nix
+++ b/pkgs/tools/networking/frp/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "frp";
-  version = "0.43.0";
+  version = "0.44.0";
 
   src = fetchFromGitHub {
     owner = "fatedier";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ked1emPx9pOz54s4ViutY41s7sQG+IjX/eZJkX15IGo=";
+    sha256 = "sha256-DH+MOMsDdW+GGrxhkXhC+5D+2IsAZwByd0FjNT+i+og=";
   };
 
   vendorSha256 = "sha256-5ljUbEvynNo1AxGpJq9B0bTFgzVfgVZbsqXcPBERLMI=";
diff --git a/pkgs/tools/package-management/deploy-rs/default.nix b/pkgs/tools/package-management/deploy-rs/default.nix
new file mode 100644
index 00000000000..d763b370603
--- /dev/null
+++ b/pkgs/tools/package-management/deploy-rs/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, fetchFromGitHub, rustPlatform, CoreServices, SystemConfiguration }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "deploy-rs-unstable";
+  version = "2022-05-26";
+
+  src = fetchFromGitHub {
+    owner = "serokell";
+    repo = "deploy-rs";
+    rev = "184349d8149436748986d1bdba087e4149e9c160";
+    sha256 = "sha256-kJ0ENmnQJ4qL2FeYKZba9kvv1KmIuB3NVpBwMeI7AJQ=";
+  };
+
+  cargoHash = "sha256-Ocb1kwNDfODGceCaCJ16CTGGTxIQacgHQ3I6HIR/EUo=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [ CoreServices SystemConfiguration ];
+
+  meta = with lib; {
+    description = " A simple multi-profile Nix-flake deploy tool. ";
+    homepage = "https://github.com/serokell/deploy-rs";
+    license = licenses.mpl20;
+    maintainers = [ maintainers.teutat3s ];
+  };
+}
diff --git a/pkgs/tools/security/semgrep/common.nix b/pkgs/tools/security/semgrep/common.nix
index 0a99ed98406..bd1bf690e5f 100644
--- a/pkgs/tools/security/semgrep/common.nix
+++ b/pkgs/tools/security/semgrep/common.nix
@@ -1,13 +1,13 @@
 { lib, fetchFromGitHub, fetchzip }:
 
 rec {
-  version = "0.103.0";
+  version = "0.106.0";
 
   src = fetchFromGitHub {
     owner = "returntocorp";
     repo = "semgrep";
     rev = "v${version}";
-    sha256 = "sha256-vk6GBgLsXRLAVu60xW4WWWhhi4b1WLceTxh/TeISIUg=";
+    sha256 = "sha256-/L8w8imvfjO3ICe0FBhfVrTivK58/9Y+j9Hc71tlpjA=";
   };
 
   # submodule dependencies
@@ -17,22 +17,22 @@ rec {
   langsSrc = fetchFromGitHub {
     owner = "returntocorp";
     repo = "semgrep-langs";
-    rev = "78e518dad1ce2a7c76854c944245434bd8426439";
-    sha256 = "sha256-t9F/OzzT6FI9G4Fxz0lUjz6TVrJlenusQNJnFpiKaQs=";
+    rev = "98e4aacb0d58539b50a642a28d916a5d749e2a42";
+    sha256 = "sha256-7w+8vLmzqBjbeV+a4Br7kLQ2bJv3aZJw8cB0R9d/D+E=";
   };
 
   interfacesSrc = fetchFromGitHub {
     owner = "returntocorp";
     repo = "semgrep-interfaces";
-    rev = "a64a45034ea428ecbe9da6bd849a4f1cfd23cdd2";
-    sha256 = "sha256-eatuyA5xyfZVHCmHvZIzQK2c5eEWUEZd9LumJQtk8+s=";
+    rev = "8bc79b2bca62c051e46a33fb65751357a71b87b6";
+    sha256 = "sha256-k/rsTGYqHnw/4bsmeg7pQ/ckNglvuA0yhuz+OayXCdw=";
   };
 
   # fetch pre-built semgrep-core since the ocaml build is complex and relies on
   # the opam package manager at some point
   coreRelease = fetchzip {
     url = "https://github.com/returntocorp/semgrep/releases/download/v${version}/semgrep-v${version}-ubuntu-16.04.tgz";
-    sha256 = "sha256-L3NbiVYmgJim7H4W1cr75WOItSiHT1YIkUEefuaCYlY=";
+    sha256 = "sha256-ARf776uOJkCBGsJI8ul3IDWI24vFQxs2jlGEA6uXG+o=";
   };
 
   meta = with lib; {
diff --git a/pkgs/tools/text/hck/default.nix b/pkgs/tools/text/hck/default.nix
index ebb66a07a8b..a888e765524 100644
--- a/pkgs/tools/text/hck/default.nix
+++ b/pkgs/tools/text/hck/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hck";
-  version = "0.7.1";
+  version = "0.7.5";
 
   src = fetchFromGitHub {
     owner = "sstadick";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6PXhFOXWplj7yEyn7hOQSPS2YDGc1nxTs6wRseRvEVk=";
+    sha256 = "sha256-29uxcbqAnWCdxKqVdrMVtorXvSLUC+jlt4YwE19Gh+A=";
   };
 
-  cargoSha256 = "sha256-VAtvc8K4282twB1MRY72+dCky3JmrTRjOPx1Ft7Oqt8=";
+  cargoSha256 = "sha256-VHuzv6Zq83byXDEEyYDtlaPC4DZ3GNJaJfO0ACrrqO8=";
 
   nativeBuildInputs = [ cmake ];
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c30cf26de46..1e42b21a231 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5667,6 +5667,8 @@ with pkgs;
     ssh = openssh;
   };
 
+  kics = callPackage ../tools/admin/kics { };
+
   kramdown-asciidoc = callPackage ../tools/typesetting/kramdown-asciidoc { };
 
   lychee = callPackage ../tools/networking/lychee { };
@@ -34668,6 +34670,10 @@ with pkgs;
 
   dell-530cdn = callPackage ../misc/drivers/dell-530cdn {};
 
+  deploy-rs = callPackage ../tools/package-management/deploy-rs {
+    inherit (darwin.apple_sdk.frameworks) CoreServices SystemConfiguration;
+  };
+
   dockutil = callPackage ../os-specific/darwin/dockutil { };
 
   eiciel = callPackage ../tools/filesystems/eiciel { };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index b0d4a7325ce..8856d412321 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -16,12 +16,14 @@ let
     "native-bignum"
     "ghc902"
     "ghc923"
+    "ghc941"
     "ghcHEAD"
   ];
 
   nativeBignumIncludes = [
     "ghc902"
     "ghc923"
+    "ghc941"
     "ghcHEAD"
   ];
 
@@ -153,6 +155,21 @@ in {
       buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
       llvmPackages = pkgs.llvmPackages_12;
     };
+    ghc941 = callPackage ../development/compilers/ghc/9.4.1.nix {
+      bootPkgs =
+        # TODO(@sternenseemann): Package 9.0.2 bindist or wait for upstream fix
+        # Need to use 902 due to
+        # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
+          packages.ghc902;
+      inherit (buildPackages.python3Packages) sphinx;
+      # Need to use apple's patched xattr until
+      # https://github.com/xattr/xattr/issues/44 and
+      # https://github.com/xattr/xattr/issues/55 are solved.
+      inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
+      # Support range >= 10 && < 14
+      buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
+      llvmPackages = pkgs.llvmPackages_12;
+    };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
       bootPkgs =
         if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
@@ -265,6 +282,11 @@ in {
       ghc = bh.compiler.ghc923;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.2.x.nix { };
     };
+    ghc941 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc941;
+      ghc = bh.compiler.ghc941;
+      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
+    };
     ghcHEAD = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghcHEAD;
       ghc = bh.compiler.ghcHEAD;